[nfft] 09/11: Imported Upstream version 3.2.3+dfsg
Ghislain Vaillant
ghisvail-guest at moszumanska.debian.org
Mon Mar 31 11:39:33 UTC 2014
This is an automated email from the git hooks/post-receive script.
ghisvail-guest pushed a commit to branch master
in repository nfft.
commit 5fed9fe7f5de9bf3deabdca3bdf1cc9eea395318
Author: Ghislain Vaillant <ghisvail at gmail.com>
Date: Mon Mar 31 12:08:15 2014 +0100
Imported Upstream version 3.2.3+dfsg
---
bootstrap.sh | 0
config/compile | 0
config/config.guess | 0
config/config.sub | 0
config/depcomp | 0
config/install-sh | 0
config/missing | 0
configure | 0
doc/api/html/accuracy_8c_source.html | 148 -
doc/api/html/annotated.html | 109 -
doc/api/html/applications_2doxygen_8c_source.html | 70 -
...applications_2fastsumS2_2doxygen_8h_source.html | 70 -
.../applications_2iterS2_2doxygen_8h_source.html | 70 -
.../html/applications_2mri_2doxygen_8c_source.html | 70 -
...pplications_2mri_2mri2d_2doxygen_8h_source.html | 70 -
...pplications_2mri_2mri3d_2doxygen_8h_source.html | 70 -
.../applications_2polarFFT_2doxygen_8h_source.html | 70 -
...lications_2quadratureS2_2doxygen_8h_source.html | 70 -
doc/api/html/bc_s.png | Bin 680 -> 0 bytes
doc/api/html/bdwn.png | Bin 147 -> 0 bytes
doc/api/html/bessel__i0_8c_source.html | 368 -
doc/api/html/classes.html | 74 -
doc/api/html/closed.png | Bin 132 -> 0 bytes
doc/api/html/config_8h_source.html | 2118 -
doc/api/html/construct__data__2d1d_8c_source.html | 176 -
doc/api/html/construct__data__2d_8c_source.html | 139 -
doc/api/html/construct__data__3d_8c_source.html | 152 -
.../html/construct__data__inh__2d1d_8c_source.html | 198 -
.../html/construct__data__inh__3d_8c_source.html | 197 -
doc/api/html/cycle_8h_source.html | 568 -
.../html/dir_0c7f2452bc84fa0fc4195fb15953ec53.html | 52 -
.../html/dir_0c9e32fd27b7f4e80ec4ebeb6c427e2d.html | 50 -
.../html/dir_224fe669cf662e4d4573ba584877a9b9.html | 50 -
.../html/dir_23ec12649285f9fabf3a6b7380226c28.html | 49 -
.../html/dir_25564cacf5a7ef2ec915d9f7b609853e.html | 53 -
.../html/dir_390363ac6c75087990c53a11ba2c3b15.html | 50 -
.../html/dir_58759e03702cf5d3134868f6de633189.html | 50 -
.../html/dir_6409bbb6ca4d9fdb6de069951c273365.html | 49 -
.../html/dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html | 55 -
.../html/dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html | 55 -
.../html/dir_7af51a00587982c04b08a156fa91c254.html | 51 -
.../html/dir_7bc5b4c2d8fedbf49abc178849c07704.html | 49 -
.../html/dir_7eb6ea3471917cbff788e1046aaeac44.html | 49 -
.../html/dir_899180af8ae9527aed19a2e763253fcc.html | 57 -
.../html/dir_8c2550e038f78045c202418cbfa07f80.html | 60 -
.../html/dir_8d4f17a3806fad624168c14bf0ea2fb4.html | 49 -
.../html/dir_8d554148c8057b12dc5cb11ef005c62c.html | 49 -
.../html/dir_8f3c7156d7272f1462551f3a6c5fabd1.html | 52 -
.../html/dir_a42734e8bce3bbae48210591d0fac63c.html | 49 -
.../html/dir_a6d8c0f9045568178601abc26c60f91f.html | 49 -
.../html/dir_a6e4fee11f07c3b70486e88fe92cbbdc.html | 60 -
.../html/dir_ac1c8221356786b534ab925d360822d4.html | 63 -
.../html/dir_d28a4824dc47e487b107a5db32ef43c4.html | 61 -
.../html/dir_d44c64559bbebec7f509842c48db8b23.html | 59 -
.../html/dir_d46f6e04c6f21c2dce6558b4c13d80de.html | 49 -
.../html/dir_d47b87128a15c0ce57cf8f363265bec1.html | 51 -
.../html/dir_dc43877d82dd332f9fb2071fcca799d6.html | 59 -
.../html/dir_deedd863ca11d55d683e9872da0f56e1.html | 50 -
.../html/dir_e198b4faa999927a1ae92d03d5f1f5e6.html | 50 -
.../html/dir_e6016a3bd4e6017d6b851aae5334ffd2.html | 53 -
.../html/dir_ea25627ea6e0d39c26e4e31bca7b94c4.html | 49 -
.../html/dir_ef5ddbf7eefb3d84d608c9a9a32f9b2e.html | 49 -
.../html/dir_fa65d2cfa17fd1e7f6091ef3f0c886ac.html | 49 -
.../html/dir_fb8678d426210fc305fe5dfd30a163a5.html | 54 -
.../html/dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html | 54 -
doc/api/html/doxygen.css | 360 -
doc/api/html/doxygen.png | Bin 3779 -> 0 bytes
doc/api/html/dynsections.js | 78 -
doc/api/html/error_8c_source.html | 213 -
doc/api/html/examples_2doxygen_8c_source.html | 70 -
.../html/examples_2solver_2doxygen_8h_source.html | 70 -
doc/api/html/fastgauss_8c_source.html | 518 -
doc/api/html/fastsumS2_8c_source.html | 884 -
doc/api/html/fastsum_8c.html | 138 -
doc/api/html/fastsum_8c_source.html | 1021 -
doc/api/html/fastsum_8h.html | 113 -
doc/api/html/fastsum_8h_source.html | 154 -
doc/api/html/fastsum__benchomp_8c_source.html | 701 -
...fastsum__benchomp__createdataset_8c_source.html | 177 -
.../html/fastsum__benchomp__detail_8c_source.html | 236 -
doc/api/html/fastsum__matlab_8c.html | 77 -
doc/api/html/fastsum__matlab_8c_source.html | 252 -
doc/api/html/fastsum__test_8c.html | 77 -
doc/api/html/fastsum__test_8c_source.html | 300 -
doc/api/html/files.html | 148 -
doc/api/html/flags_8c.html | 93 -
doc/api/html/flags_8c_source.html | 377 -
doc/api/html/float_8c_source.html | 140 -
doc/api/html/form_0.png | Bin 344 -> 0 bytes
doc/api/html/form_1.png | Bin 278 -> 0 bytes
doc/api/html/form_10.png | Bin 374 -> 0 bytes
doc/api/html/form_100.png | Bin 412 -> 0 bytes
doc/api/html/form_101.png | Bin 400 -> 0 bytes
doc/api/html/form_102.png | Bin 900 -> 0 bytes
doc/api/html/form_103.png | Bin 471 -> 0 bytes
doc/api/html/form_104.png | Bin 345 -> 0 bytes
doc/api/html/form_105.png | Bin 387 -> 0 bytes
doc/api/html/form_106.png | Bin 356 -> 0 bytes
doc/api/html/form_107.png | Bin 460 -> 0 bytes
doc/api/html/form_108.png | Bin 335 -> 0 bytes
doc/api/html/form_109.png | Bin 471 -> 0 bytes
doc/api/html/form_11.png | Bin 433 -> 0 bytes
doc/api/html/form_110.png | Bin 325 -> 0 bytes
doc/api/html/form_111.png | Bin 374 -> 0 bytes
doc/api/html/form_112.png | Bin 454 -> 0 bytes
doc/api/html/form_113.png | Bin 322 -> 0 bytes
doc/api/html/form_114.png | Bin 343 -> 0 bytes
doc/api/html/form_115.png | Bin 260 -> 0 bytes
doc/api/html/form_116.png | Bin 267 -> 0 bytes
doc/api/html/form_117.png | Bin 220 -> 0 bytes
doc/api/html/form_118.png | Bin 229 -> 0 bytes
doc/api/html/form_119.png | Bin 1182 -> 0 bytes
doc/api/html/form_12.png | Bin 664 -> 0 bytes
doc/api/html/form_120.png | Bin 225 -> 0 bytes
doc/api/html/form_121.png | Bin 233 -> 0 bytes
doc/api/html/form_122.png | Bin 720 -> 0 bytes
doc/api/html/form_123.png | Bin 523 -> 0 bytes
doc/api/html/form_124.png | Bin 556 -> 0 bytes
doc/api/html/form_125.png | Bin 576 -> 0 bytes
doc/api/html/form_126.png | Bin 717 -> 0 bytes
doc/api/html/form_127.png | Bin 357 -> 0 bytes
doc/api/html/form_128.png | Bin 306 -> 0 bytes
doc/api/html/form_129.png | Bin 1806 -> 0 bytes
doc/api/html/form_13.png | Bin 280 -> 0 bytes
doc/api/html/form_130.png | Bin 267 -> 0 bytes
doc/api/html/form_131.png | Bin 284 -> 0 bytes
doc/api/html/form_132.png | Bin 437 -> 0 bytes
doc/api/html/form_133.png | Bin 419 -> 0 bytes
doc/api/html/form_134.png | Bin 1988 -> 0 bytes
doc/api/html/form_135.png | Bin 295 -> 0 bytes
doc/api/html/form_136.png | Bin 230 -> 0 bytes
doc/api/html/form_137.png | Bin 245 -> 0 bytes
doc/api/html/form_138.png | Bin 357 -> 0 bytes
doc/api/html/form_139.png | Bin 281 -> 0 bytes
doc/api/html/form_14.png | Bin 413 -> 0 bytes
doc/api/html/form_15.png | Bin 654 -> 0 bytes
doc/api/html/form_16.png | Bin 565 -> 0 bytes
doc/api/html/form_17.png | Bin 281 -> 0 bytes
doc/api/html/form_18.png | Bin 308 -> 0 bytes
doc/api/html/form_19.png | Bin 357 -> 0 bytes
doc/api/html/form_2.png | Bin 223 -> 0 bytes
doc/api/html/form_20.png | Bin 356 -> 0 bytes
doc/api/html/form_21.png | Bin 355 -> 0 bytes
doc/api/html/form_22.png | Bin 382 -> 0 bytes
doc/api/html/form_23.png | Bin 427 -> 0 bytes
doc/api/html/form_24.png | Bin 430 -> 0 bytes
doc/api/html/form_25.png | Bin 412 -> 0 bytes
doc/api/html/form_26.png | Bin 357 -> 0 bytes
doc/api/html/form_27.png | Bin 235 -> 0 bytes
doc/api/html/form_28.png | Bin 616 -> 0 bytes
doc/api/html/form_29.png | Bin 392 -> 0 bytes
doc/api/html/form_3.png | Bin 431 -> 0 bytes
doc/api/html/form_30.png | Bin 1030 -> 0 bytes
doc/api/html/form_31.png | Bin 1936 -> 0 bytes
doc/api/html/form_32.png | Bin 421 -> 0 bytes
doc/api/html/form_33.png | Bin 421 -> 0 bytes
doc/api/html/form_34.png | Bin 597 -> 0 bytes
doc/api/html/form_35.png | Bin 582 -> 0 bytes
doc/api/html/form_36.png | Bin 360 -> 0 bytes
doc/api/html/form_37.png | Bin 322 -> 0 bytes
doc/api/html/form_38.png | Bin 321 -> 0 bytes
doc/api/html/form_39.png | Bin 290 -> 0 bytes
doc/api/html/form_4.png | Bin 223 -> 0 bytes
doc/api/html/form_40.png | Bin 449 -> 0 bytes
doc/api/html/form_41.png | Bin 377 -> 0 bytes
doc/api/html/form_42.png | Bin 302 -> 0 bytes
doc/api/html/form_43.png | Bin 279 -> 0 bytes
doc/api/html/form_44.png | Bin 411 -> 0 bytes
doc/api/html/form_45.png | Bin 215 -> 0 bytes
doc/api/html/form_46.png | Bin 420 -> 0 bytes
doc/api/html/form_47.png | Bin 416 -> 0 bytes
doc/api/html/form_48.png | Bin 396 -> 0 bytes
doc/api/html/form_49.png | Bin 347 -> 0 bytes
doc/api/html/form_5.png | Bin 225 -> 0 bytes
doc/api/html/form_50.png | Bin 433 -> 0 bytes
doc/api/html/form_51.png | Bin 423 -> 0 bytes
doc/api/html/form_52.png | Bin 1283 -> 0 bytes
doc/api/html/form_53.png | Bin 427 -> 0 bytes
doc/api/html/form_54.png | Bin 872 -> 0 bytes
doc/api/html/form_55.png | Bin 382 -> 0 bytes
doc/api/html/form_56.png | Bin 616 -> 0 bytes
doc/api/html/form_57.png | Bin 614 -> 0 bytes
doc/api/html/form_58.png | Bin 296 -> 0 bytes
doc/api/html/form_59.png | Bin 226 -> 0 bytes
doc/api/html/form_6.png | Bin 920 -> 0 bytes
doc/api/html/form_60.png | Bin 200 -> 0 bytes
doc/api/html/form_61.png | Bin 302 -> 0 bytes
doc/api/html/form_62.png | Bin 295 -> 0 bytes
doc/api/html/form_63.png | Bin 296 -> 0 bytes
doc/api/html/form_64.png | Bin 371 -> 0 bytes
doc/api/html/form_65.png | Bin 550 -> 0 bytes
doc/api/html/form_66.png | Bin 302 -> 0 bytes
doc/api/html/form_67.png | Bin 295 -> 0 bytes
doc/api/html/form_68.png | Bin 387 -> 0 bytes
doc/api/html/form_69.png | Bin 296 -> 0 bytes
doc/api/html/form_7.png | Bin 437 -> 0 bytes
doc/api/html/form_70.png | Bin 440 -> 0 bytes
doc/api/html/form_71.png | Bin 302 -> 0 bytes
doc/api/html/form_72.png | Bin 295 -> 0 bytes
doc/api/html/form_73.png | Bin 438 -> 0 bytes
doc/api/html/form_74.png | Bin 424 -> 0 bytes
doc/api/html/form_75.png | Bin 501 -> 0 bytes
doc/api/html/form_76.png | Bin 418 -> 0 bytes
doc/api/html/form_77.png | Bin 624 -> 0 bytes
doc/api/html/form_78.png | Bin 376 -> 0 bytes
doc/api/html/form_79.png | Bin 355 -> 0 bytes
doc/api/html/form_8.png | Bin 361 -> 0 bytes
doc/api/html/form_80.png | Bin 366 -> 0 bytes
doc/api/html/form_81.png | Bin 645 -> 0 bytes
doc/api/html/form_82.png | Bin 363 -> 0 bytes
doc/api/html/form_83.png | Bin 235 -> 0 bytes
doc/api/html/form_84.png | Bin 370 -> 0 bytes
doc/api/html/form_85.png | Bin 345 -> 0 bytes
doc/api/html/form_86.png | Bin 449 -> 0 bytes
doc/api/html/form_87.png | Bin 460 -> 0 bytes
doc/api/html/form_88.png | Bin 484 -> 0 bytes
doc/api/html/form_89.png | Bin 459 -> 0 bytes
doc/api/html/form_9.png | Bin 396 -> 0 bytes
doc/api/html/form_90.png | Bin 314 -> 0 bytes
doc/api/html/form_91.png | Bin 311 -> 0 bytes
doc/api/html/form_92.png | Bin 210 -> 0 bytes
doc/api/html/form_93.png | Bin 206 -> 0 bytes
doc/api/html/form_94.png | Bin 1304 -> 0 bytes
doc/api/html/form_95.png | Bin 353 -> 0 bytes
doc/api/html/form_96.png | Bin 254 -> 0 bytes
doc/api/html/form_97.png | Bin 247 -> 0 bytes
doc/api/html/form_98.png | Bin 405 -> 0 bytes
doc/api/html/form_99.png | Bin 391 -> 0 bytes
doc/api/html/formula.repository | 140 -
doc/api/html/fpt_2simple__test_8c_source.html | 213 -
doc/api/html/fpt_8c.html | 463 -
doc/api/html/fpt_8c_source.html | 1875 -
doc/api/html/fpt_8h_source.html | 123 -
doc/api/html/ftv2blank.png | Bin 86 -> 0 bytes
doc/api/html/ftv2cl.png | Bin 453 -> 0 bytes
doc/api/html/ftv2doc.png | Bin 746 -> 0 bytes
doc/api/html/ftv2folderclosed.png | Bin 616 -> 0 bytes
doc/api/html/ftv2folderopen.png | Bin 597 -> 0 bytes
doc/api/html/ftv2lastnode.png | Bin 86 -> 0 bytes
doc/api/html/ftv2link.png | Bin 746 -> 0 bytes
doc/api/html/ftv2mlastnode.png | Bin 246 -> 0 bytes
doc/api/html/ftv2mnode.png | Bin 246 -> 0 bytes
doc/api/html/ftv2mo.png | Bin 403 -> 0 bytes
doc/api/html/ftv2node.png | Bin 86 -> 0 bytes
doc/api/html/ftv2ns.png | Bin 388 -> 0 bytes
doc/api/html/ftv2plastnode.png | Bin 229 -> 0 bytes
doc/api/html/ftv2pnode.png | Bin 229 -> 0 bytes
doc/api/html/ftv2splitbar.png | Bin 314 -> 0 bytes
doc/api/html/ftv2vertline.png | Bin 86 -> 0 bytes
doc/api/html/functions.html | 90 -
doc/api/html/functions_0x61.html | 142 -
doc/api/html/functions_0x62.html | 122 -
doc/api/html/functions_0x63.html | 105 -
doc/api/html/functions_0x64.html | 212 -
doc/api/html/functions_0x65.html | 87 -
doc/api/html/functions_0x66.html | 241 -
doc/api/html/functions_0x67.html | 124 -
doc/api/html/functions_0x69.html | 102 -
doc/api/html/functions_0x6a.html | 86 -
doc/api/html/functions_0x6b.html | 104 -
doc/api/html/functions_0x6c.html | 84 -
doc/api/html/functions_0x6d.html | 245 -
doc/api/html/functions_0x6e.html | 228 -
doc/api/html/functions_0x70.html | 167 -
doc/api/html/functions_0x72.html | 103 -
doc/api/html/functions_0x73.html | 144 -
doc/api/html/functions_0x74.html | 99 -
doc/api/html/functions_0x76.html | 103 -
doc/api/html/functions_0x77.html | 116 -
doc/api/html/functions_0x78.html | 119 -
doc/api/html/functions_0x79.html | 100 -
doc/api/html/functions_0x7a.html | 98 -
doc/api/html/functions_func.html | 77 -
doc/api/html/functions_vars.html | 90 -
doc/api/html/functions_vars_0x61.html | 142 -
doc/api/html/functions_vars_0x62.html | 122 -
doc/api/html/functions_vars_0x63.html | 105 -
doc/api/html/functions_vars_0x64.html | 212 -
doc/api/html/functions_vars_0x65.html | 87 -
doc/api/html/functions_vars_0x66.html | 214 -
doc/api/html/functions_vars_0x67.html | 124 -
doc/api/html/functions_vars_0x69.html | 102 -
doc/api/html/functions_vars_0x6a.html | 86 -
doc/api/html/functions_vars_0x6b.html | 104 -
doc/api/html/functions_vars_0x6c.html | 84 -
doc/api/html/functions_vars_0x6d.html | 245 -
doc/api/html/functions_vars_0x6e.html | 228 -
doc/api/html/functions_vars_0x70.html | 167 -
doc/api/html/functions_vars_0x72.html | 103 -
doc/api/html/functions_vars_0x73.html | 144 -
doc/api/html/functions_vars_0x74.html | 99 -
doc/api/html/functions_vars_0x76.html | 103 -
doc/api/html/functions_vars_0x77.html | 116 -
doc/api/html/functions_vars_0x78.html | 119 -
doc/api/html/functions_vars_0x79.html | 100 -
doc/api/html/functions_vars_0x7a.html | 98 -
doc/api/html/glacier_8c_source.html | 280 -
doc/api/html/globals.html | 86 -
doc/api/html/globals_0x63.html | 87 -
doc/api/html/globals_0x65.html | 86 -
doc/api/html/globals_0x66.html | 116 -
doc/api/html/globals_0x69.html | 191 -
doc/api/html/globals_0x6b.html | 91 -
doc/api/html/globals_0x6c.html | 91 -
doc/api/html/globals_0x6d.html | 99 -
doc/api/html/globals_0x6e.html | 272 -
doc/api/html/globals_0x70.html | 88 -
doc/api/html/globals_0x71.html | 77 -
doc/api/html/globals_0x72.html | 90 -
doc/api/html/globals_0x73.html | 158 -
doc/api/html/globals_0x74.html | 89 -
doc/api/html/globals_0x77.html | 80 -
doc/api/html/globals_defs.html | 105 -
doc/api/html/globals_func.html | 633 -
doc/api/html/globals_type.html | 80 -
doc/api/html/globals_vars.html | 62 -
doc/api/html/group__applications.html | 55 -
doc/api/html/group__applications__fastgauss.html | 638 -
doc/api/html/group__applications__fastsum.html | 417 -
doc/api/html/group__applications__fastsumS2.html | 48 -
.../html/group__applications__fastsumS2__test.html | 381 -
.../html/group__applications__fastsum__matlab.html | 49 -
.../html/group__applications__fastsum__test.html | 49 -
doc/api/html/group__applications__iterS2.html | 48 -
.../html/group__applications__iterS2__matlab.html | 101 -
doc/api/html/group__applications__mri.html | 49 -
doc/api/html/group__applications__mri2d.html | 55 -
...__applications__mri2d__construct__data__2d.html | 52 -
...ications__mri2d__construct__data__gridding.html | 52 -
...cations__mri2d__construct__data__inh__2d1d.html | 52 -
...lications__mri2d__construct__data__inh__3d.html | 52 -
...ations__mri2d__construct__data__inh__nnfft.html | 52 -
...applications__mri2d__reconstruct__data__2d.html | 52 -
...tions__mri2d__reconstruct__data__inh__2d1d.html | 51 -
...cations__mri2d__reconstruct__data__inh__3d.html | 51 -
doc/api/html/group__applications__mri3d.html | 52 -
...applications__mri3d__construct__data__1d2d.html | 58 -
...__applications__mri3d__construct__data__3d.html | 51 -
...plications__mri3d__reconstruct__data__1d2d.html | 55 -
...applications__mri3d__reconstruct__data__3d.html | 52 -
...ations__mri3d__reconstruct__data__gridding.html | 55 -
doc/api/html/group__applications__polarFFT.html | 50 -
.../group__applications__polarFFT__linogramm.html | 71 -
.../group__applications__polarFFT__mpolar.html | 130 -
.../html/group__applications__polarFFT__polar.html | 126 -
.../html/group__applications__quadratureS2.html | 48 -
.../group__applications__quadratureS2__test.html | 130 -
doc/api/html/group__examples.html | 48 -
doc/api/html/group__examples__solver.html | 48 -
doc/api/html/group__examples__solver__glacier.html | 59 -
doc/api/html/group__nfftutil.html | 478 -
doc/api/html/group__nfsft.html | 563 -
doc/api/html/images/logo.png | Bin 2965 -> 0 bytes
doc/api/html/images/sphere.png | Bin 10243 -> 0 bytes
doc/api/html/include_2api_8h_source.html | 77 -
doc/api/html/index.html | 40 -
doc/api/html/infft_8h_source.html | 1430 -
doc/api/html/int_8c_source.html | 157 -
doc/api/html/inverse__radon_8c.html | 98 -
doc/api/html/inverse__radon_8c_source.html | 295 -
doc/api/html/iterS2_8c_source.html | 474 -
doc/api/html/jquery.js | 8 -
doc/api/html/kernel_2nfsft_2api_8h_source.html | 122 -
doc/api/html/kernels_8c.html | 96 -
doc/api/html/kernels_8c_source.html | 447 -
doc/api/html/kernels_8h.html | 92 -
doc/api/html/kernels_8h_source.html | 105 -
doc/api/html/lambda_8c_source.html | 297 -
doc/api/html/legendre_8c_source.html | 261 -
doc/api/html/legendre_8h_source.html | 92 -
doc/api/html/linogram__fft__test_8c.html | 98 -
doc/api/html/linogram__fft__test_8c_source.html | 472 -
doc/api/html/malloc_8c_source.html | 116 -
doc/api/html/modules.html | 80 -
doc/api/html/mpolar__fft__test_8c.html | 97 -
doc/api/html/mpolar__fft__test_8c_source.html | 487 -
...i2d_2reconstruct__data__gridding_8c_source.html | 153 -
...i3d_2reconstruct__data__gridding_8c_source.html | 204 -
doc/api/html/mri_8c_source.html | 316 -
doc/api/html/nav_f.png | Bin 153 -> 0 bytes
doc/api/html/nav_g.png | Bin 95 -> 0 bytes
doc/api/html/nav_h.png | Bin 98 -> 0 bytes
doc/api/html/ndft__fast_8c.html | 84 -
doc/api/html/ndft__fast_8c_source.html | 260 -
doc/api/html/nfct_2simple__test_8c_source.html | 123 -
doc/api/html/nfct_8c_source.html | 944 -
doc/api/html/nfft3_8h.html | 1543 -
doc/api/html/nfft3_8h_source.html | 853 -
doc/api/html/nfft3conf_8h_source.html | 95 -
doc/api/html/nfft3util_8h.html | 221 -
doc/api/html/nfft3util_8h_source.html | 214 -
doc/api/html/nfft_2simple__test_8c_source.html | 196 -
.../nfft_2simple__test__threads_8c_source.html | 128 -
doc/api/html/nfft_8c_source.html | 5727 ---
doc/api/html/nfft__benchomp_8c_source.html | 640 -
.../nfft__benchomp__createdataset_8c_source.html | 193 -
doc/api/html/nfft__benchomp__detail_8c_source.html | 201 -
doc/api/html/nfft__times_8c_source.html | 1070 -
doc/api/html/nfsft_2simple__test_8c_source.html | 178 -
.../nfsft_2simple__test__threads_8c_source.html | 183 -
doc/api/html/nfsft_8c.html | 125 -
doc/api/html/nfsft_8c_source.html | 1248 -
doc/api/html/nfsft__benchomp_8c_source.html | 567 -
.../nfsft__benchomp__createdataset_8c_source.html | 165 -
.../html/nfsft__benchomp__detail_8c_source.html | 267 -
doc/api/html/nfsoft_2simple__test_8c_source.html | 225 -
doc/api/html/nfsoft_8c_source.html | 747 -
doc/api/html/nfst_2simple__test_8c_source.html | 123 -
doc/api/html/nfst_8c_source.html | 1031 -
doc/api/html/nnfft_2simple__test_8c_source.html | 352 -
doc/api/html/nnfft_8c_source.html | 704 -
doc/api/html/nsfft_2simple__test_8c_source.html | 130 -
doc/api/html/nsfft_8c_source.html | 1944 -
doc/api/html/nsfft__test_8c_source.html | 260 -
doc/api/html/open.png | Bin 123 -> 0 bytes
doc/api/html/polar__fft__test_8c.html | 88 -
doc/api/html/polar__fft__test_8c_source.html | 380 -
doc/api/html/quadratureS2_8c_source.html | 1160 -
doc/api/html/radon_8c.html | 98 -
doc/api/html/radon_8c_source.html | 266 -
.../html/reconstruct__data__2d1d_8c_source.html | 255 -
doc/api/html/reconstruct__data__2d_8c_source.html | 216 -
doc/api/html/reconstruct__data__3d_8c_source.html | 214 -
.../reconstruct__data__inh__2d1d_8c_source.html | 272 -
.../html/reconstruct__data__inh__3d_8c_source.html | 266 -
.../reconstruct__data__inh__nnfft_8c_source.html | 282 -
doc/api/html/sinc_8c_source.html | 97 -
doc/api/html/solver_2simple__test_8c_source.html | 196 -
doc/api/html/solver_8c.html | 118 -
doc/api/html/solver_8c_source.html | 760 -
doc/api/html/solver__adjoint_8h.html | 1052 -
doc/api/html/solver__adjoint_8h_source.html | 133 -
doc/api/html/structfastsum__plan__.html | 229 -
doc/api/html/structfgt__plan.html | 105 -
doc/api/html/structfpt__data__.html | 306 -
doc/api/html/structfpt__set__s__.html | 151 -
doc/api/html/structfpt__step__.html | 133 -
.../html/structimri__inh__2d1d__adjoint__plan.html | 119 -
.../html/structimri__inh__3d__adjoint__plan.html | 119 -
doc/api/html/structinfct__adjoint__plan.html | 119 -
doc/api/html/structinfft__adjoint__plan.html | 119 -
doc/api/html/structinfsft__adjoint__plan.html | 120 -
doc/api/html/structinfst__adjoint__plan.html | 119 -
doc/api/html/structinnfft__adjoint__plan.html | 119 -
doc/api/html/structmri__inh__2d1d__plan.html | 87 -
doc/api/html/structmri__inh__3d__plan.html | 87 -
doc/api/html/structmrif__inh__2d1d__plan.html | 87 -
doc/api/html/structmrif__inh__3d__plan.html | 87 -
doc/api/html/structmril__inh__2d1d__plan.html | 87 -
doc/api/html/structmril__inh__3d__plan.html | 87 -
doc/api/html/structnfct__plan.html | 147 -
doc/api/html/structnfctf__plan.html | 147 -
doc/api/html/structnfctl__plan.html | 147 -
doc/api/html/structnfft__mv__plan__complex.html | 77 -
doc/api/html/structnfft__mv__plan__double.html | 77 -
doc/api/html/structnfft__plan.html | 153 -
doc/api/html/structnfftf__mv__plan__complex.html | 77 -
doc/api/html/structnfftf__mv__plan__double.html | 77 -
doc/api/html/structnfftf__plan.html | 153 -
doc/api/html/structnfftl__mv__plan__complex.html | 77 -
doc/api/html/structnfftl__mv__plan__double.html | 77 -
doc/api/html/structnfftl__plan.html | 153 -
doc/api/html/structnfsft__plan.html | 98 -
doc/api/html/structnfsft__wisdom.html | 123 -
doc/api/html/structnfsftf__plan.html | 98 -
doc/api/html/structnfsftl__plan.html | 98 -
doc/api/html/structnfsoft__plan__.html | 103 -
doc/api/html/structnfsoftf__plan__.html | 103 -
doc/api/html/structnfsoftl__plan__.html | 103 -
doc/api/html/structnfst__plan.html | 147 -
doc/api/html/structnfstf__plan.html | 147 -
doc/api/html/structnfstl__plan.html | 147 -
doc/api/html/structnnfft__plan.html | 177 -
doc/api/html/structnnfftf__plan.html | 175 -
doc/api/html/structnnfftl__plan.html | 175 -
doc/api/html/structnsfft__plan.html | 129 -
doc/api/html/structnsfftf__plan.html | 129 -
doc/api/html/structnsfftl__plan.html | 129 -
doc/api/html/structs__param.html | 93 -
doc/api/html/structs__result.html | 65 -
doc/api/html/structs__resval.html | 67 -
doc/api/html/structs__testset.html | 67 -
doc/api/html/structsolver__plan__complex.html | 113 -
doc/api/html/structsolver__plan__double.html | 113 -
doc/api/html/structsolverf__plan__complex.html | 113 -
doc/api/html/structsolverf__plan__double.html | 113 -
doc/api/html/structsolverl__plan__complex.html | 113 -
doc/api/html/structsolverl__plan__double.html | 113 -
doc/api/html/structtaylor__plan.html | 68 -
doc/api/html/structwindow__funct__plan__.html | 76 -
doc/api/html/tab_a.png | Bin 142 -> 0 bytes
doc/api/html/tab_b.png | Bin 167 -> 0 bytes
doc/api/html/tab_h.png | Bin 192 -> 0 bytes
doc/api/html/tab_s.png | Bin 184 -> 0 bytes
doc/api/html/tabs.css | 59 -
doc/api/html/taylor__nfft_8c.html | 349 -
doc/api/html/taylor__nfft_8c_source.html | 321 -
doc/api/html/ticks_8h_source.html | 84 -
doc/api/html/util_8c_source.html | 1387 -
doc/api/html/wigner_8c_source.html | 432 -
doc/api/html/wigner_8h.html | 890 -
doc/api/html/wigner_8h_source.html | 95 -
doc/api/latex/images/sphere.eps | 99 -
doc/api/latex/images/sphere.pdf | Bin 55197 -> 0 bytes
doc/logo/nfft_logo.tif | Bin 56256 -> 0 bytes
doc/tutorial/README | 9 -
doc/tutorial/acmtrans.bst | 1770 -
doc/tutorial/acmtrans2m.cls | 1460 -
doc/tutorial/answer.tex | 102 -
doc/tutorial/comments1.tex | 107 -
doc/tutorial/comments2.tex | 156 -
doc/tutorial/comments3.tex | 253 -
doc/tutorial/images/accuracy1.eps | 503 -
doc/tutorial/images/accuracy1.pdf | Bin 4369 -> 0 bytes
doc/tutorial/images/accuracy2.eps | 497 -
doc/tutorial/images/accuracy2.pdf | Bin 4312 -> 0 bytes
doc/tutorial/images/accuracy3.eps | 497 -
doc/tutorial/images/accuracy3.pdf | Bin 4342 -> 0 bytes
doc/tutorial/images/accuracy4.eps | 497 -
doc/tutorial/images/accuracy4.pdf | Bin 4337 -> 0 bytes
doc/tutorial/images/accuracy5.eps | 497 -
doc/tutorial/images/accuracy5.pdf | Bin 4330 -> 0 bytes
doc/tutorial/images/accuracy6.eps | 497 -
doc/tutorial/images/accuracy6.pdf | Bin 4317 -> 0 bytes
doc/tutorial/images/front_pic1.eps | 240 -
doc/tutorial/images/front_pic1.pdf | Bin 2821 -> 0 bytes
doc/tutorial/images/front_pic2.eps | 257 -
doc/tutorial/images/front_pic2.pdf | Bin 3453 -> 0 bytes
doc/tutorial/images/glacier1.eps | 27242 -------------
doc/tutorial/images/glacier1.pdf | Bin 38015 -> 0 bytes
doc/tutorial/images/glacier2.eps | 39895 -------------------
doc/tutorial/images/glacier2.pdf | Bin 511712 -> 0 bytes
doc/tutorial/images/interpolation_1d_0.eps | 359 -
doc/tutorial/images/interpolation_1d_0.pdf | Bin 5566 -> 0 bytes
doc/tutorial/images/interpolation_1d_1.eps | 359 -
doc/tutorial/images/interpolation_1d_1.pdf | Bin 5339 -> 0 bytes
doc/tutorial/images/interpolation_1d_2.eps | 357 -
doc/tutorial/images/interpolation_1d_2.pdf | Bin 5326 -> 0 bytes
doc/tutorial/images/interpolation_1d_3.eps | 357 -
doc/tutorial/images/interpolation_1d_3.pdf | Bin 5341 -> 0 bytes
doc/tutorial/images/interpolation_1d_4.eps | 356 -
doc/tutorial/images/interpolation_1d_4.pdf | Bin 5378 -> 0 bytes
doc/tutorial/images/interpolation_1d_5.eps | 357 -
doc/tutorial/images/interpolation_1d_5.pdf | Bin 5375 -> 0 bytes
doc/tutorial/images/linogram_grid.eps | 87 -
doc/tutorial/images/linogram_grid.pdf | Bin 153334 -> 0 bytes
doc/tutorial/images/modified_polar_grid.eps | 87 -
doc/tutorial/images/modified_polar_grid.pdf | Bin 153334 -> 0 bytes
doc/tutorial/images/nfft_times_flops.eps | 511 -
doc/tutorial/images/nfft_times_flops.pdf | Bin 5365 -> 0 bytes
doc/tutorial/images/nfft_times_frodo.txt | 39 -
doc/tutorial/images/nfft_times_frodo_flops.m | 36 -
doc/tutorial/images/nfft_times_frodo_m_2.txt | 39 -
doc/tutorial/images/nfft_times_frodo_m_2_flops.m | 36 -
doc/tutorial/images/nfft_times_frodo_show.m | 47 -
doc/tutorial/images/polar_grid.eps | 87 -
doc/tutorial/images/polar_grid.pdf | Bin 153333 -> 0 bytes
doc/tutorial/images/sparse2D_0.eps | 111 -
doc/tutorial/images/sparse2D_0.pdf | Bin 1788 -> 0 bytes
doc/tutorial/images/sparse2D_1.eps | 123 -
doc/tutorial/images/sparse2D_1.pdf | Bin 1839 -> 0 bytes
doc/tutorial/images/sparse2D_2.eps | 123 -
doc/tutorial/images/sparse2D_2.pdf | Bin 1851 -> 0 bytes
doc/tutorial/images/sparse2D_3.eps | 135 -
doc/tutorial/images/sparse2D_3.pdf | Bin 1912 -> 0 bytes
doc/tutorial/images/sphere.eps | 48 -
doc/tutorial/images/sphere.pdf | Bin 55197 -> 0 bytes
doc/tutorial/images/temperaturemap_filled.pdf | Bin 43392 -> 0 bytes
doc/tutorial/images/temperaturemap_gaps.pdf | Bin 43632 -> 0 bytes
doc/tutorial/images/window_fct1.eps | 501 -
doc/tutorial/images/window_fct1.pdf | Bin 7593 -> 0 bytes
doc/tutorial/images/window_fct2.eps | 501 -
doc/tutorial/images/window_fct2.pdf | Bin 7582 -> 0 bytes
doc/tutorial/images/window_fct3.eps | 484 -
doc/tutorial/images/window_fct3.pdf | Bin 5542 -> 0 bytes
doc/tutorial/paper.tex | 2229 --
doc/tutorial/paper_brief.tex | 2001 -
doc/tutorial/struct.tex | 59 -
doc/tutorial/summary.tex | 227 -
doc/tutorial/tree.tex | 225 -
kernel/nfsoft/nfsoft.c | 0
kernel/nfsoft/wigner.c | 0
kernel/nfsoft/wigner.h | 0
matlab/nfsft/cc.m | 0
support/rem.sed | 0
support/toc.sed | 0
586 files changed, 156607 deletions(-)
diff --git a/bootstrap.sh b/bootstrap.sh
old mode 100755
new mode 100644
diff --git a/config/compile b/config/compile
old mode 100755
new mode 100644
diff --git a/config/config.guess b/config/config.guess
old mode 100755
new mode 100644
diff --git a/config/config.sub b/config/config.sub
old mode 100755
new mode 100644
diff --git a/config/depcomp b/config/depcomp
old mode 100755
new mode 100644
diff --git a/config/install-sh b/config/install-sh
old mode 100755
new mode 100644
diff --git a/config/missing b/config/missing
old mode 100755
new mode 100644
diff --git a/configure b/configure
old mode 100755
new mode 100644
diff --git a/doc/api/html/accuracy_8c_source.html b/doc/api/html/accuracy_8c_source.html
deleted file mode 100644
index 287bfda..0000000
--- a/doc/api/html/accuracy_8c_source.html
+++ /dev/null
@@ -1,148 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - accuracy.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_0c9e32fd27b7f4e80ec4ebeb6c427e2d.html">nnfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">accuracy.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: accuracy.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keywordtype">void</span> accuracy(<span class="keywordtype">int</span> d)</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> m,t;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <a class="code" href="structnnfft__plan.html">nnfft_plan</a> my_plan;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">double</span> _Complex *slow;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">int</span> N[d],n[d];</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">int</span> M_total,N_total;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> M_total=10000;N_total=1;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> slow=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">for</span>(t=0; t<d; t++)</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> {</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> N[t]=(1<<(12/d));</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> n[t]=2*N[t];</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> N_total*=N[t];</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> }</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">for</span>(m=0; m<10; m++)</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> {</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> nnfft_init_guru(&my_plan, d, N_total, M_total, N, n, m,</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> PRE_PSI| PRE_PHI_HUT|</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> MALLOC_X| MALLOC_V| MALLOC_F_HAT| MALLOC_F);</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>, d*my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total numb [...]
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(my_plan.<a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>, d*my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of [...]
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> nnfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <a class="code" href="nfft3_8h.html#a65983eef73b9f5740214bf720f62fcd6" title="create a lookup table">nnfft_precompute_lin_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <a class="code" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9" title="computes all entries of B explicitly">nnfft_precompute_full_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <a class="code" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580" title="initialisation of direct transform">nnfft_precompute_phi_hut</a>(&my_plan);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(my_plan.<a class="code" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb99 [...]
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> nnfft_trafo_direct(&my_plan);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(my_plan.<a class="code" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,slow);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <a class="code" href="nfft3_8h.html#a994c1748ebe1371c53dd2cb437054d4f" title="user routines">nnfft_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> printf(<span class="stringliteral">"%e, %e\n"</span>,</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> X(error_l_infty_complex)(slow, my_plan.<a class="code" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, M_total),</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> X(error_l_infty_1_complex)(slow, my_plan.<a class="code" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, M_total, my_plan.<a class="code" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>));</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> nnfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> }</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> }</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> {</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">int</span> d;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">for</span>(d=1; d<4; d++)</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> accuracy(d);</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/annotated.html b/doc/api/html/annotated.html
deleted file mode 100644
index 9e54f4d..0000000
--- a/doc/api/html/annotated.html
+++ /dev/null
@@ -1,109 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Structures
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">Data Structures</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock">Here are the data structures with brief descriptions:</div><div class="directory">
-<table class="directory">
-<tr id="row_0_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structfastsum__plan__.html" target="_self">fastsum_plan_</a></td><td class="desc">Plan for fast summation algorithm</td></tr>
-<tr id="row_1_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structfgt__plan.html" target="_self">fgt_plan</a></td><td class="desc">Structure for the Gauss transform</td></tr>
-<tr id="row_2_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structfpt__data__.html" target="_self">fpt_data_</a></td><td class="desc">Holds data for a single cascade summation</td></tr>
-<tr id="row_3_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structfpt__set__s__.html" target="_self">fpt_set_s_</a></td><td class="desc">Holds data for a set of cascade summations</td></tr>
-<tr id="row_4_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structfpt__step__.html" target="_self">fpt_step_</a></td><td class="desc">Holds data for a single multiplication step in the cascade summation</td></tr>
-<tr id="row_5_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structimri__inh__2d1d__adjoint__plan.html" target="_self">imri_inh_2d1d_adjoint_plan</a></td><td class="desc">Structure for an adjoint transform plan</td></tr>
-<tr id="row_6_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structimri__inh__3d__adjoint__plan.html" target="_self">imri_inh_3d_adjoint_plan</a></td><td class="desc">Structure for an adjoint transform plan</td></tr>
-<tr id="row_7_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structinfct__adjoint__plan.html" target="_self">infct_adjoint_plan</a></td><td class="desc">Structure for an adjoint transform plan</td></tr>
-<tr id="row_8_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structinfft__adjoint__plan.html" target="_self">infft_adjoint_plan</a></td><td class="desc">Structure for an adjoint transform plan</td></tr>
-<tr id="row_9_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structinfsft__adjoint__plan.html" target="_self">infsft_adjoint_plan</a></td><td class="desc">TODO: different solvers</td></tr>
-<tr id="row_10_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structinfst__adjoint__plan.html" target="_self">infst_adjoint_plan</a></td><td class="desc">Structure for an adjoint transform plan</td></tr>
-<tr id="row_11_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structinnfft__adjoint__plan.html" target="_self">innfft_adjoint_plan</a></td><td class="desc">Structure for an adjoint transform plan</td></tr>
-<tr id="row_12_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structmri__inh__2d1d__plan.html" target="_self">mri_inh_2d1d_plan</a></td><td class="desc"></td></tr>
-<tr id="row_13_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structmri__inh__3d__plan.html" target="_self">mri_inh_3d_plan</a></td><td class="desc"></td></tr>
-<tr id="row_14_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structmrif__inh__2d1d__plan.html" target="_self">mrif_inh_2d1d_plan</a></td><td class="desc"></td></tr>
-<tr id="row_15_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structmrif__inh__3d__plan.html" target="_self">mrif_inh_3d_plan</a></td><td class="desc"></td></tr>
-<tr id="row_16_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structmril__inh__2d1d__plan.html" target="_self">mril_inh_2d1d_plan</a></td><td class="desc"></td></tr>
-<tr id="row_17_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structmril__inh__3d__plan.html" target="_self">mril_inh_3d_plan</a></td><td class="desc"></td></tr>
-<tr id="row_18_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfct__plan.html" target="_self">nfct_plan</a></td><td class="desc"></td></tr>
-<tr id="row_19_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfctf__plan.html" target="_self">nfctf_plan</a></td><td class="desc"></td></tr>
-<tr id="row_20_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfctl__plan.html" target="_self">nfctl_plan</a></td><td class="desc"></td></tr>
-<tr id="row_21_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfft__mv__plan__complex.html" target="_self">nfft_mv_plan_complex</a></td><td class="desc"></td></tr>
-<tr id="row_22_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfft__mv__plan__double.html" target="_self">nfft_mv_plan_double</a></td><td class="desc"></td></tr>
-<tr id="row_23_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfft__plan.html" target="_self">nfft_plan</a></td><td class="desc"></td></tr>
-<tr id="row_24_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfftf__mv__plan__complex.html" target="_self">nfftf_mv_plan_complex</a></td><td class="desc"></td></tr>
-<tr id="row_25_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfftf__mv__plan__double.html" target="_self">nfftf_mv_plan_double</a></td><td class="desc"></td></tr>
-<tr id="row_26_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfftf__plan.html" target="_self">nfftf_plan</a></td><td class="desc"></td></tr>
-<tr id="row_27_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfftl__mv__plan__complex.html" target="_self">nfftl_mv_plan_complex</a></td><td class="desc"></td></tr>
-<tr id="row_28_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfftl__mv__plan__double.html" target="_self">nfftl_mv_plan_double</a></td><td class="desc"></td></tr>
-<tr id="row_29_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfftl__plan.html" target="_self">nfftl_plan</a></td><td class="desc"></td></tr>
-<tr id="row_30_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfsft__plan.html" target="_self">nfsft_plan</a></td><td class="desc"></td></tr>
-<tr id="row_31_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfsft__wisdom.html" target="_self">nfsft_wisdom</a></td><td class="desc">Wisdom structure</td></tr>
-<tr id="row_32_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfsftf__plan.html" target="_self">nfsftf_plan</a></td><td class="desc"></td></tr>
-<tr id="row_33_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfsftl__plan.html" target="_self">nfsftl_plan</a></td><td class="desc"></td></tr>
-<tr id="row_34_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfsoft__plan__.html" target="_self">nfsoft_plan_</a></td><td class="desc"></td></tr>
-<tr id="row_35_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfsoftf__plan__.html" target="_self">nfsoftf_plan_</a></td><td class="desc"></td></tr>
-<tr id="row_36_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfsoftl__plan__.html" target="_self">nfsoftl_plan_</a></td><td class="desc"></td></tr>
-<tr id="row_37_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfst__plan.html" target="_self">nfst_plan</a></td><td class="desc"></td></tr>
-<tr id="row_38_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfstf__plan.html" target="_self">nfstf_plan</a></td><td class="desc"></td></tr>
-<tr id="row_39_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnfstl__plan.html" target="_self">nfstl_plan</a></td><td class="desc"></td></tr>
-<tr id="row_40_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnnfft__plan.html" target="_self">nnfft_plan</a></td><td class="desc"></td></tr>
-<tr id="row_41_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnnfftf__plan.html" target="_self">nnfftf_plan</a></td><td class="desc"></td></tr>
-<tr id="row_42_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnnfftl__plan.html" target="_self">nnfftl_plan</a></td><td class="desc"></td></tr>
-<tr id="row_43_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnsfft__plan.html" target="_self">nsfft_plan</a></td><td class="desc"></td></tr>
-<tr id="row_44_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnsfftf__plan.html" target="_self">nsfftf_plan</a></td><td class="desc"></td></tr>
-<tr id="row_45_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structnsfftl__plan.html" target="_self">nsfftl_plan</a></td><td class="desc"></td></tr>
-<tr id="row_46_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structs__param.html" target="_self">s_param</a></td><td class="desc"></td></tr>
-<tr id="row_47_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structs__result.html" target="_self">s_result</a></td><td class="desc"></td></tr>
-<tr id="row_48_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structs__resval.html" target="_self">s_resval</a></td><td class="desc"></td></tr>
-<tr id="row_49_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structs__testset.html" target="_self">s_testset</a></td><td class="desc"></td></tr>
-<tr id="row_50_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structsolver__plan__complex.html" target="_self">solver_plan_complex</a></td><td class="desc"></td></tr>
-<tr id="row_51_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structsolver__plan__double.html" target="_self">solver_plan_double</a></td><td class="desc"></td></tr>
-<tr id="row_52_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structsolverf__plan__complex.html" target="_self">solverf_plan_complex</a></td><td class="desc"></td></tr>
-<tr id="row_53_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structsolverf__plan__double.html" target="_self">solverf_plan_double</a></td><td class="desc"></td></tr>
-<tr id="row_54_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structsolverl__plan__complex.html" target="_self">solverl_plan_complex</a></td><td class="desc"></td></tr>
-<tr id="row_55_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structsolverl__plan__double.html" target="_self">solverl_plan_double</a></td><td class="desc"></td></tr>
-<tr id="row_56_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structtaylor__plan.html" target="_self">taylor_plan</a></td><td class="desc"></td></tr>
-<tr id="row_57_"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><img src="ftv2cl.png" alt="C" width="24" height="22" /><a class="el" href="structwindow__funct__plan__.html" target="_self">window_funct_plan_</a></td><td class="desc">Window_funct_plan is a plan to use the window functions independent of the nfft</td></tr>
-</table>
-</div><!-- directory -->
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/applications_2doxygen_8c_source.html b/doc/api/html/applications_2doxygen_8c_source.html
deleted file mode 100644
index ae90e09..0000000
--- a/doc/api/html/applications_2doxygen_8c_source.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - doxygen.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">applications/doxygen.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: doxygen.c 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/applications_2fastsumS2_2doxygen_8h_source.html b/doc/api/html/applications_2fastsumS2_2doxygen_8h_source.html
deleted file mode 100644
index d60ce07..0000000
--- a/doc/api/html/applications_2fastsumS2_2doxygen_8h_source.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - doxygen.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_224fe669cf662e4d4573ba584877a9b9.html">fastsumS2</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">applications/fastsumS2/doxygen.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: doxygen.c 3100 2009-03-12 08:42:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/applications_2iterS2_2doxygen_8h_source.html b/doc/api/html/applications_2iterS2_2doxygen_8h_source.html
deleted file mode 100644
index 40dcda8..0000000
--- a/doc/api/html/applications_2iterS2_2doxygen_8h_source.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - doxygen.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_e198b4faa999927a1ae92d03d5f1f5e6.html">iterS2</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">applications/iterS2/doxygen.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: doxygen.c 3100 2009-03-12 08:42:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/applications_2mri_2doxygen_8c_source.html b/doc/api/html/applications_2mri_2doxygen_8c_source.html
deleted file mode 100644
index 61a8f60..0000000
--- a/doc/api/html/applications_2mri_2doxygen_8c_source.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - doxygen.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">applications/mri/doxygen.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: doxygen.c 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/applications_2mri_2mri2d_2doxygen_8h_source.html b/doc/api/html/applications_2mri_2mri2d_2doxygen_8h_source.html
deleted file mode 100644
index c654fcd..0000000
--- a/doc/api/html/applications_2mri_2mri2d_2doxygen_8h_source.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - doxygen.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">applications/mri/mri2d/doxygen.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: doxygen.c 3100 2009-03-12 08:42:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/applications_2mri_2mri3d_2doxygen_8h_source.html b/doc/api/html/applications_2mri_2mri3d_2doxygen_8h_source.html
deleted file mode 100644
index faf1155..0000000
--- a/doc/api/html/applications_2mri_2mri3d_2doxygen_8h_source.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - doxygen.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_fb8678d426210fc305fe5dfd30a163a5.html">mri3d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">applications/mri/mri3d/doxygen.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: doxygen.c 3100 2009-03-12 08:42:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/applications_2polarFFT_2doxygen_8h_source.html b/doc/api/html/applications_2polarFFT_2doxygen_8h_source.html
deleted file mode 100644
index eb9348a..0000000
--- a/doc/api/html/applications_2polarFFT_2doxygen_8h_source.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - doxygen.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html">polarFFT</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">applications/polarFFT/doxygen.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: doxygen.c 3100 2009-03-12 08:42:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/applications_2quadratureS2_2doxygen_8h_source.html b/doc/api/html/applications_2quadratureS2_2doxygen_8h_source.html
deleted file mode 100644
index 5f9a8fe..0000000
--- a/doc/api/html/applications_2quadratureS2_2doxygen_8h_source.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - doxygen.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_deedd863ca11d55d683e9872da0f56e1.html">quadratureS2</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">applications/quadratureS2/doxygen.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: doxygen.c 3100 2009-03-12 08:42:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/bc_s.png b/doc/api/html/bc_s.png
deleted file mode 100644
index 25e3beb..0000000
Binary files a/doc/api/html/bc_s.png and /dev/null differ
diff --git a/doc/api/html/bdwn.png b/doc/api/html/bdwn.png
deleted file mode 100644
index 940a0b9..0000000
Binary files a/doc/api/html/bdwn.png and /dev/null differ
diff --git a/doc/api/html/bessel__i0_8c_source.html b/doc/api/html/bessel__i0_8c_source.html
deleted file mode 100644
index d809260..0000000
--- a/doc/api/html/bessel__i0_8c_source.html
+++ /dev/null
@@ -1,368 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - bessel_i0.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html">util</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">bessel_i0.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: util.c 3483 2010-04-23 19:02:34Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#if defined(NFFT_LDOUBLE)</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor"></span><span class="preprocessor"> #if LDBL_MANT_DIG > 64</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span> <span class="comment">/* long double 128 bit wide */</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="keyword">static</span> <span class="keyword">const</span> R P1[] =</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> {</div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> K(1.00715709113717408460589579223209941204261347125985390244049122),</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> K(0.244951997023176876020320575838917179801959212259109588711443322),</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> K(0.007157677421552158878119583351756319398653762265084335703499437),</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> K(0.000088638803372684623765617528646130117285577351082745565226135),</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> K(5.86290506716174293160891590037213629006472953235560773267e-7),</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> K(2.345957469650316879673588315314269880856753475545514611e-9),</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> K(6.128655873200031753345017339110506400750029700912053e-12),</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> K(1.0986892011606471142197070904902679807307454250063e-14),</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> K(1.3971139352985872209413265761909675621623302845e-17),</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> K(1.2871864763402201040551492995178709443354555e-20),</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> K(8.691006015934819586402366491436791599814e-24),</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> K(4.309390047550403478410330783891146603e-27),</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> K(1.555612957227921944637472907134242e-30),</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> K(3.9925388022711127965090640127e-34),</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> K(6.9368410036374068977799409e-38),</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> K(7.357454531748581565018e-42),</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> K(3.62204101214442072e-46),</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> };</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keyword">static</span> <span class="keyword">const</span> R Q1[] =</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> {</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> K(1.000007070784273109528051454385187718969110645914059499666326971665),</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> K(-0.005313926453449002844879821442805584438144938596471790433918964154),</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> K(7.070788418542362565462155969863941136682888242514039780835548e-6),</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> K(-6.26540971437695808708857953483635930152829451235344028056e-9),</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> K(4.145433773149898726789014352388133793941127788810021957e-12),</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> K(-2.175603200497645955857316018087216481968512641548262e-15),</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> K(9.38635995876117135738708302122439402494096616172e-19),</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> K(-3.40237206590514988600833435986797066144532635e-22),</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> K(1.04920116497922307284730776882365699575587e-25),</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> K(-2.7669765371483918815184949580784634161e-29),</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> K(6.231564149372584873279011515844227e-33),</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> K(-1.188050982913851622946881814029e-36),</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> K(1.88293159106694034780937099e-40),</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> K(-2.4019827304263718078055e-44),</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> K(2.329008315410200325e-48),</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> K(-1.5351885198203e-52),</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> K(5.185989964e-57),</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> };</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keyword">static</span> <span class="keyword">const</span> R P2[] =</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> {</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> K( 131.0667020533290798466779416062094395070734202211890460026693857),</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> K(-245.6303545941878773983069709370348347580041325639555236454969282),</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> K( 204.5101554148308448423458719550952945685069457114308003995567211),</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> K(-150.5327320302921153754033870344894598759293143264072490756636477),</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> K( 98.7912567249134681293252237328232822188103014960829409778733265),</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> K(-57.7019241687318590480852440271548151666166507997357208465833492),</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> K( 30.1081598594932287475081756049550869990287890532877175670317803),</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> K(-14.0088712491952531569334147267018927351724433165829632848926311),</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> K( 5.8111909743388254524987383393719023598144356156326152933831237),</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> K(-2.1414136626793476610653760169160704073350780611789294609123711),</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> K( 0.698259559703142895902111022926235616592885506170181809796723),</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> K(-0.2001189347807367129846000381714457873845590394096920427488356),</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> K( 0.049988621846192684047867347253361546337456980171441178625268),</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> K(-0.0107553807128048320349112565182564637746370430259714241685807),</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> K( 0.0019628478791093008488874963820323167136472914702684286586238),</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> K(-0.0002975064821201439959012839810796951490827490578144599267114),</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> K( 0.0000363948822068787975159479880539390140326476204059270500102),</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> K(-3.4500354506312803346122587812035952285744626406680126004e-6),</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> K( 2.389194163273735466736165111640837640682648262451843124e-7),</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> K(-1.10522228579658847710719851107420853059835206797979003e-8),</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> K( 2.998585735858447897961231663140456464729911623332484e-10),</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> K(-3.9833617558882606404645795329229040634928477778665e-12),</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> K( 1.92588438006565847602499920031655017544553574078e-14),</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> K(-1.53988141966712757209882685942469734803820881e-17)</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> };</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keyword">static</span> <span class="keyword">const</span> R Q2[] =</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> {</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> K(328.4489907350967829456654595549647170421869780143590268003242948),</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> K(-615.575319575198219705670766725559477112082560070865403723416427),</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> K(512.563661235514015228169012911053008163272899480360140632585558),</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> K(-377.3415411557897134242242685951784724031156711312221525972796826),</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> K(247.6887960380354072297631204916926385047383091206925653242453925),</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> K(-144.7079367047916629699737294050207521413589574809430211064537016),</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> K(75.5300501439366128901130531145623549019791219037305096822646727),</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> K(-35.1562871183824787711155827433330019401972267325168728838283815),</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> K(14.5900995053625141158588399870084373879991873744753473985888771),</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> K(-5.3793167684795558315535956122846115342243771791771104555817078),</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> K(1.7551860916884001665224751521627837644140913167505738803593836),</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> K(-0.5034275191915128601243198185547065251560284487106213345738464),</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> K(0.1258761177781805904401665597080296597844219207555140252667602),</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> K(-0.0271165711067811527517031577204913417520417117202287079370524),</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> K(0.0049566968097755025323253093106955508273120444565853663949773),</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> K(-0.0007529042621964042565348473109633952383792675486716081916002),</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> K(0.0000923845012025941529926888028246088283227759969619552077927),</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> K(-8.7971061636613823628316954758674029940675792754742342069e-6),</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> K(6.136252042100256280345626781919643641626278378156829218e-7),</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> K(-2.87514497545628209951433938237642236070094379906239019e-8),</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> K(7.99982739755782677965258184972152681716223485333226e-10),</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> K(-1.12250050360331111260828032356887810736651792918878e-11),</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> K(6.221827386743849038481605158298006999161167883e-14),</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> K(-8.0950402455773560717067392049638116407074069e-17)</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> };</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="preprocessor"> #elif LDBL_MANT_DIG == 64</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="preprocessor"></span> <span class="comment">/* long double 96 bit wide */</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keyword">static</span> <span class="keyword">const</span> R P1[] =</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> {</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> K(1.00696388290874250231638626673686646317801154370159972703168538),</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> K(0.243352848727738955738908687369450214577920342918851509272408866),</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> K(0.006964401160721188186398281247079919082283450941469460164590432),</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> K(0.000083047334117897959145500056901191736030823531931380263686302),</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> K(5.18256420384764810882467760619532575731801821889985626099e-7),</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> K(1.90790611016475818883461118145629029943434891680660527e-9),</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> K(4.44170587990105074420754325358582895345307949815573e-12),</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> K(6.805150196466153819995090798791966304827558189423e-15),</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> K(6.985104315031938858779570788468047860794936128e-18),</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> K(4.785507068734939741097928056648844894386614e-21),</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> K(2.117077490896605677726199140622837572025e-24),</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> K(5.52919580174986488729896702518475621e-28),</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> K(6.5666588969169003434516942087381e-32),</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> };</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keyword">static</span> <span class="keyword">const</span> R Q1[] =</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> {</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> K(1.000011863675914860400478598182318948452642744176732473923183795358),</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> K(-0.006896324225185339751945118908659032102601115341265224641280055928),</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> K(0.00001186368725103095674191039208189536570056102297912907572890034),</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> K(-1.3496696876875206170114218872940978330152830864048922600366e-8),</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> K(1.1336174449932022007831556161183407392648142591512923821e-11),</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> K(-7.422841655569707018644701823047396523966712871897812e-15),</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> K(3.893669273036094904159100761627937282479044304922e-18),</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> K(-1.651720545895290413869725701665259282787265642e-21),</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> K(5.6323805635535562808481781647661895955232e-25),</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> K(-1.50728066570923164846664348266414336373e-28),</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> K(3.006044492319661074666639642233229e-32),</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> K(-4.010148023149017379419706572721e-36),</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> K(2.70282874465984817539266054e-40),</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> };</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keyword">static</span> <span class="keyword">const</span> R P2[] =</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> {</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> K( 1.30090423521760256476093919023146864017751590623897710895862681),</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> K(-1.981041925270972574120174940817336830170017871902975653312750388),</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> K( 0.956892580228917795561363651877698243164566364537052353014543669),</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> K(-0.295476285312266394050596510402082979039773201845265239542019439),</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> K( 0.056978837924988815165935230495950981635872574537538384147033652),</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> K(-0.006299149197554616295736173514236214970859775932020376086036399),</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> K( 0.000353716966863384475462973243411450895641022763240331882363443),</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> K(-8.707624424632528381900923003415938761710942641810978203625e-6),</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> K( 7.283705999222063845686558855093093825421931939071318202e-8),</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> K(-9.7967727386492889920273780071218382357131320542055799e-11)</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> };</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="keyword">static</span> <span class="keyword">const</span> R Q2[] =</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> {</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> K( 3.257608431020108786259398271424889402309379351594793640349460063),</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> K(-4.96363276525502538609792324882976732173260916421950408693842731),</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> K( 2.400495835659089927333294199555080092801133193497330702140754591),</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> K(-0.742868968166381852162379299256973953894545292197384361382965225),</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> K( 0.143801810439830068463911726822151703498931831272162081681231077),</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> K(-0.016019224718850575023820322478614758671031103220377245057110662),</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> K( 0.000914623505897601721718970098041677534130323750396506936364887),</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> K(-0.000023411644633126949191317085153966622167096685843127825287574),</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> K( 2.17705048674331703171406080664526952334380771487046428339e-7),</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> K(-4.47580289731041130181939560179689655281441839562189718e-10)</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> };</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="preprocessor"> #else</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor"></span><span class="preprocessor"> #error Unsupported size of long double</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="preprocessor"></span><span class="preprocessor"> #endif</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="preprocessor"></span><span class="preprocessor">#elif defined(NFFT_SINGLE)</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="preprocessor"></span> <span class="comment">/* float */</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keyword">static</span> <span class="keyword">const</span> R P1[] =</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> {</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> K(1.006634511033311726164163027592274220828216885723379609007274761),</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> K(0.240606487720090757394176928596156553834296465200311569457994763),</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> K(0.006634921274522227156198202198389031672287220144321235665461021),</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> K(0.000073749622820821337100502174723273851941734199062726870961819),</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> K(4.10243517822171814488230564074819973544765129449450710122e-7),</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> K(1.262110026222369902633819303536802438120823461060572684e-9),</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> K(2.218532296437410634454463125960648541194468552527652e-12),</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> K(2.141504045536019682125761418851096299425878119158e-15),</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> K(9.19584570350722374435337612379408707845677156e-19),</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> };</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keyword">static</span> <span class="keyword">const</span> R Q1[] =</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> {</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> K(1.000022624782705275228334312456728477812835742762369533496905023937),</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> K(-0.009614857078745003693609489751018087358244444264456521971379273084),</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> K(0.000022624818652773047747424411495054891627754515915461183178099877),</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> K(-3.4080521639954323706277061786236961377055349443081338572762e-8),</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> K(3.5947512112800645225066705862453058797853924958888263259e-11),</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> K(-2.7149805873212658218594464017972758572144265290831215e-14),</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> K(1.4293388301569282795540255590126107486209476445158e-17),</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> K(-4.771887851505849942903948600229238419570937509e-21),</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> K(7.68298982666756594543081799488936861257839e-25),</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> };</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="keyword">static</span> <span class="keyword">const</span> R P2[] =</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> {</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> K( 0.400758393969643840397216812932361963736749407866811083462461),</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> K(-0.0312216150704950438088565774064329777860642477326179964345542),</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> K( 0.0001215451718646727844117193541329442989170354233955281424116)</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> };</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="keyword">static</span> <span class="keyword">const</span> R Q2[] =</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> {</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> K( 1.00043733569136882353241680221279480297575523819814430369272934),</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> K(-0.0822433017391967535749382764476705160129315137731445852657631),</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> K( 0.00043733569136882353241680221279480297575523819814430369272934)</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> };</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="preprocessor"></span> <span class="comment">/* double */</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keyword">static</span> <span class="keyword">const</span> R P1[] =</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> {</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> K(1.006897990143384859657820271920512961153421109156614230747188622),</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> K(0.242805341483041870658834102275462978674549112393424086979586278),</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> K(0.006898486035482686938510112687043665965094733332210445239567379),</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> K(0.000081165067173822070066416843139523709162208390998449005642346),</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> K(4.95896034564955471201271060753697747487292805350402943964e-7),</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> K(1.769262324717844587819564151110983803173733141412266849e-9),</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> K(3.936742942676484111899247866083681245613312522754135e-12),</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> K(5.65030097981781148787580946077568408874044779529e-15),</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> K(5.267856044117588097078633338366456262960465052e-18),</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> K(3.111192981528832405775039015470693622536939e-21),</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> K(1.071238669051606108411504195862449904664e-24),</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> K(1.66685455020362122704904175079692613e-28),</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> };</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keyword">static</span> <span class="keyword">const</span> R Q1[] =</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> {</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> K(1.000013770640886533569435896302721489503868900260448440877422679934),</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> K(-0.007438195256024963574139196893944950727405523418354136393367554385),</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> K(0.000013770655915064256304772604385297068669909609091264440116789601),</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> K(-1.6794623118559896441239590667288215019925076196457659206142e-8),</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> K(1.50285363491992136130760477001818578470292828225498818e-11),</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> K(-1.0383232801211938342796582949062551517465351830706356e-14),</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> K(5.66233115275307483428203764087829782195312564006e-18),</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> K(-2.44062252162491829675666639093292109472275754e-21),</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> K(8.15441695513966815222186223740016719597617e-25),</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> K(-2.01117218503954384746303760121365911698e-28),</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> K(3.2919820158429806312377323449729691e-32),</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> K(-2.70343047912331415988664032397e-36),</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> };</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="keyword">static</span> <span class="keyword">const</span> R P2[] =</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> {</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> K( 0.4305671332839579065931339658100499864903788418438938270811),</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> K(-0.2897224581554843285637983312103876003389911968369470222427),</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> K( 0.0299419330186508349765969995362253891383950029259740306077),</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> K(-0.0010756807437990349677633120240742396555192749710627626584),</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> K( 0.0000116485185631252780743187413946316104574410146692335443),</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> K(-1.89995137955806752293614125586568854200245376235433e-08)</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> };</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="keyword">static</span> <span class="keyword">const</span> R Q2[] =</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> {</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> K(1.0762291019783101702628805159947862543863829764738274558421),</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> K(-0.7279167074883770739509279847502106137135422309409220238564),</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> K(0.0762629142282649564822465976300194596092279190843683614797),</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> K(-0.0028345107938479082322784040228834113914746923069059932628),</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> K(0.0000338122499547862193660816352332052228449426105409056376),</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> K(-8.28850093512263912295888947693700479250899073022595e-08)</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> };</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="keyword">static</span> <span class="keyword">const</span> INT N1 = <span class="keyword">sizeof</span>(P1)/<span class="keyword">sizeof</span>(P1[0]);</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keyword">static</span> <span class="keyword">const</span> INT M1 = <span class="keyword">sizeof</span>(Q1)/<span class="keyword">sizeof</span>(Q1[0]);</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="keyword">static</span> <span class="keyword">const</span> INT N2 = <span class="keyword">sizeof</span>(P2)/<span class="keyword">sizeof</span>(P2[0]);</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="keyword">static</span> <span class="keyword">const</span> INT M2 = <span class="keyword">sizeof</span>(Q2)/<span class="keyword">sizeof</span>(Q2[0]);</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="keyword">static</span> <span class="keyword">inline</span> R evaluate_chebyshev(<span class="keyword">const</span> INT n, <span class="keyword">const</span> R *c, <span class="keyword">const</span> R x)</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> {</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> R a = c[n-2], b = c[n-1], t;</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> A(n >= 2);</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> </div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="keywordflow">for</span> (j = n - 2; j > 0; j--)</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> {</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> t = c[j-1] - b;</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> b = a + K(2.0) * x * b;</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> a = t;</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> }</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="keywordflow">return</span> a + x * b;</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> }</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> </div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> R X(bessel_i0)(R x)</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> {</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="keywordflow">if</span> (x < 0)</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> {</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="comment">/* even function */</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> x = -x;</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> }</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> </div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">if</span> (x == K(0.0))</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="keywordflow">return</span> K(1.0);</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="keywordflow">if</span> (x <= K(15.0))</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> {</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="comment">/* x in (0, 15] */</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="keyword">const</span> R y = x * x;</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="keywordflow">return</span> evaluate_chebyshev(N1, P1, y) / evaluate_chebyshev(M1, Q1, y);</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> }</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> {</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="comment">/* x in (15, \infty) */</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="keyword">const</span> R y = (K(30.0) - x) / x;</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="keywordflow">return</span> (EXP(x) / SQRT(x)) * (evaluate_chebyshev(N2, P2, y) /</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> evaluate_chebyshev(M2, Q2, y));</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> }</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/classes.html b/doc/api/html/classes.html
deleted file mode 100644
index ec08fce..0000000
--- a/doc/api/html/classes.html
+++ /dev/null
@@ -1,74 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Structure Index
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">Data Structure Index</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="qindex"><a class="qindex" href="#letter_F">F</a> | <a class="qindex" href="#letter_I">I</a> | <a class="qindex" href="#letter_M">M</a> | <a class="qindex" href="#letter_N">N</a> | <a class="qindex" href="#letter_S">S</a> | <a class="qindex" href="#letter_T">T</a> | <a class="qindex" href="#letter_W">W</a></div>
-<table style="margin: 10px; white-space: nowrap;" align="center" width="95%" border="0" cellspacing="0" cellpadding="0">
-<tr><td rowspan="2" valign="bottom"><a name="letter_F"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah"> F </div></td></tr></table>
-</td><td valign="top"><a class="el" href="structinnfft__adjoint__plan.html">innfft_adjoint_plan</a> </td><td valign="top"><a class="el" href="structnfft__mv__plan__double.html">nfft_mv_plan_double</a> </td><td valign="top"><a class="el" href="structnfst__plan.html">nfst_plan</a> </td><td valign="top"><a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> </td></tr>
-<tr><td rowspan="2" valign="bottom"><a name="letter_M"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah"> M </div></td></tr></table>
-</td><td valign="top"><a class="el" href="structnfft__plan.html">nfft_plan</a> </td><td valign="top"><a class="el" href="structnfstf__plan.html">nfstf_plan</a> </td><td valign="top"><a class="el" href="structsolver__plan__double.html">solver_plan_double</a> </td></tr>
-<tr><td valign="top"><a class="el" href="structfastsum__plan__.html">fastsum_plan_</a> </td><td valign="top"><a class="el" href="structnfftf__mv__plan__complex.html">nfftf_mv_plan_complex</a> </td><td valign="top"><a class="el" href="structnfstl__plan.html">nfstl_plan</a> </td><td valign="top"><a class="el" href="structsolverf__plan__complex.html">solverf_plan_complex</a> </td></tr>
-<tr><td valign="top"><a class="el" href="structfgt__plan.html">fgt_plan</a> </td><td valign="top"><a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> </td><td valign="top"><a class="el" href="structnfftf__mv__plan__double.html">nfftf_mv_plan_double</a> </td><td valign="top"><a class="el" href="structnnfft__plan.html">nnfft_plan</a> </td><td valign="top"><a class="el" href="structsolverf__plan__doub [...]
-<tr><td valign="top"><a class="el" href="structfpt__data__.html">fpt_data_</a> </td><td valign="top"><a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> </td><td valign="top"><a class="el" href="structnfftf__plan.html">nfftf_plan</a> </td><td valign="top"><a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> </td><td valign="top"><a class="el" href="structsolverl__plan__complex.html">solverl_pla [...]
-<tr><td valign="top"><a class="el" href="structfpt__set__s__.html">fpt_set_s_</a> </td><td valign="top"><a class="el" href="structmrif__inh__2d1d__plan.html">mrif_inh_2d1d_plan</a> </td><td valign="top"><a class="el" href="structnfftl__mv__plan__complex.html">nfftl_mv_plan_complex</a> </td><td valign="top"><a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> </td><td valign="top"><a class="el" href="structsolverl [...]
-<tr><td valign="top"><a class="el" href="structfpt__step__.html">fpt_step_</a> </td><td valign="top"><a class="el" href="structmrif__inh__3d__plan.html">mrif_inh_3d_plan</a> </td><td valign="top"><a class="el" href="structnfftl__mv__plan__double.html">nfftl_mv_plan_double</a> </td><td valign="top"><a class="el" href="structnsfft__plan.html">nsfft_plan</a> </td><td rowspan="2" valign="bottom"><a name="letter_T"></a><table [...]
-</td></tr>
-<tr><td rowspan="2" valign="bottom"><a name="letter_I"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah"> I </div></td></tr></table>
-</td><td valign="top"><a class="el" href="structmril__inh__2d1d__plan.html">mril_inh_2d1d_plan</a> </td><td valign="top"><a class="el" href="structnfftl__plan.html">nfftl_plan</a> </td><td valign="top"><a class="el" href="structnsfftf__plan.html">nsfftf_plan</a> </td></tr>
-<tr><td valign="top"><a class="el" href="structmril__inh__3d__plan.html">mril_inh_3d_plan</a> </td><td valign="top"><a class="el" href="structnfsft__plan.html">nfsft_plan</a> </td><td valign="top"><a class="el" href="structnsfftl__plan.html">nsfftl_plan</a> </td><td valign="top"><a class="el" href="structtaylor__plan.html">taylor_plan</a> </td></tr>
-<tr><td valign="top"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html">imri_inh_2d1d_adjoint_plan</a> </td><td rowspan="2" valign="bottom"><a name="letter_N"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah"> N </div></td></tr></table>
-</td><td valign="top"><a class="el" href="structnfsft__wisdom.html">nfsft_wisdom</a> </td><td rowspan="2" valign="bottom"><a name="letter_S"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah"> S </div></td></tr></table>
-</td><td rowspan="2" valign="bottom"><a name="letter_W"></a><table border="0" cellspacing="0" cellpadding="0"><tr><td><div class="ah"> W </div></td></tr></table>
-</td></tr>
-<tr><td valign="top"><a class="el" href="structimri__inh__3d__adjoint__plan.html">imri_inh_3d_adjoint_plan</a> </td><td valign="top"><a class="el" href="structnfsftf__plan.html">nfsftf_plan</a> </td></tr>
-<tr><td valign="top"><a class="el" href="structinfct__adjoint__plan.html">infct_adjoint_plan</a> </td><td valign="top"><a class="el" href="structnfct__plan.html">nfct_plan</a> </td><td valign="top"><a class="el" href="structnfsftl__plan.html">nfsftl_plan</a> </td><td valign="top"><a class="el" href="structs__param.html">s_param</a> </td><td valign="top"><a class="el" href="structwindow__funct__plan__.html">window_funct_p [...]
-<tr><td valign="top"><a class="el" href="structinfft__adjoint__plan.html">infft_adjoint_plan</a> </td><td valign="top"><a class="el" href="structnfctf__plan.html">nfctf_plan</a> </td><td valign="top"><a class="el" href="structnfsoft__plan__.html">nfsoft_plan_</a> </td><td valign="top"><a class="el" href="structs__result.html">s_result</a> </td><td></td></tr>
-<tr><td valign="top"><a class="el" href="structinfsft__adjoint__plan.html">infsft_adjoint_plan</a> </td><td valign="top"><a class="el" href="structnfctl__plan.html">nfctl_plan</a> </td><td valign="top"><a class="el" href="structnfsoftf__plan__.html">nfsoftf_plan_</a> </td><td valign="top"><a class="el" href="structs__resval.html">s_resval</a> </td><td></td></tr>
-<tr><td valign="top"><a class="el" href="structinfst__adjoint__plan.html">infst_adjoint_plan</a> </td><td valign="top"><a class="el" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a> </td><td valign="top"><a class="el" href="structnfsoftl__plan__.html">nfsoftl_plan_</a> </td><td valign="top"><a class="el" href="structs__testset.html">s_testset</a> </td><td></td></tr>
-<tr><td></td><td></td><td></td><td></td><td></td></tr>
-</table>
-<div class="qindex"><a class="qindex" href="#letter_F">F</a> | <a class="qindex" href="#letter_I">I</a> | <a class="qindex" href="#letter_M">M</a> | <a class="qindex" href="#letter_N">N</a> | <a class="qindex" href="#letter_S">S</a> | <a class="qindex" href="#letter_T">T</a> | <a class="qindex" href="#letter_W">W</a></div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/closed.png b/doc/api/html/closed.png
deleted file mode 100644
index 98cc2c9..0000000
Binary files a/doc/api/html/closed.png and /dev/null differ
diff --git a/doc/api/html/config_8h_source.html b/doc/api/html/config_8h_source.html
deleted file mode 100644
index 660474d..0000000
--- a/doc/api/html/config_8h_source.html
+++ /dev/null
@@ -1,2118 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - config.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">config.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/* include/config.h. Generated from config.h.in by configure. */</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment">/* include/config.h.in. Generated from configure.ac by autoheader. */</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> </div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment">/* Define to enable Dirac delta window function. */</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment">/* #undef B_SPLINE */</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> </div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment">/* Define to one of `_getb67', `GETB67', `getb67' for Cray-2 and Cray-YMP</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> systems. This function is required for `alloca.c' support on those systems.</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment">/* #undef CRAY_STACKSEG_END */</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> </div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment">/* Define to 1 if using `alloca.c'. */</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment">/* #undef C_ALLOCA */</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> </div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment">/* Define to enable Gaussian window function. */</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment">/* #undef GAUSSIAN */</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> </div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment">/* Define to 1 if you have the `abort' function. */</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#define HAVE_ABORT 1</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">/* Define to 1 if you have the `acos' function. */</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment">/* #undef HAVE_ACOS */</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> </div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment">/* Define to 1 if you have the `acosf' function. */</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="comment">/* #undef HAVE_ACOSF */</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment">/* Define to 1 if you have the `acosh' function. */</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment">/* #undef HAVE_ACOSH */</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> </div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment">/* Define to 1 if you have the `acoshf' function. */</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment">/* #undef HAVE_ACOSHF */</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment">/* Define to 1 if you have the `acoshl' function. */</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="comment">/* #undef HAVE_ACOSHL */</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment">/* Define to 1 if you have the `acosl' function. */</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment">/* #undef HAVE_ACOSL */</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">/* Define to 1 if you have `alloca', as a function or macro. */</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#define HAVE_ALLOCA 1</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment">/* Define to 1 if you have <alloca.h> and it should be used (not on Ultrix).</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor">#define HAVE_ALLOCA_H 1</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment">/* Define to 1 if you have the `asin' function. */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment">/* #undef HAVE_ASIN */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment">/* Define to 1 if you have the `asinf' function. */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment">/* #undef HAVE_ASINF */</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment">/* Define to 1 if you have the `asinh' function. */</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment">/* #undef HAVE_ASINH */</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment">/* Define to 1 if you have the `asinhf' function. */</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment">/* #undef HAVE_ASINHF */</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">/* Define to 1 if you have the `asinhl' function. */</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment">/* #undef HAVE_ASINHL */</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment">/* Define to 1 if you have the `asinl' function. */</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment">/* #undef HAVE_ASINL */</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment">/* Define to 1 if you have the `atan' function. */</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">/* #undef HAVE_ATAN */</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment">/* Define to 1 if you have the `atan2' function. */</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">/* #undef HAVE_ATAN2 */</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="comment">/* Define to 1 if you have the `atan2f' function. */</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="comment">/* #undef HAVE_ATAN2F */</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment">/* Define to 1 if you have the `atan2l' function. */</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment">/* #undef HAVE_ATAN2L */</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="comment">/* Define to 1 if you have the `atanf' function. */</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="comment">/* #undef HAVE_ATANF */</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment">/* Define to 1 if you have the `atanh' function. */</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="comment">/* #undef HAVE_ATANH */</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="comment">/* Define to 1 if you have the `atanhf' function. */</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="comment">/* #undef HAVE_ATANHF */</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="comment">/* Define to 1 if you have the `atanhl' function. */</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="comment">/* #undef HAVE_ATANHL */</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment">/* Define to 1 if you have the `atanl' function. */</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="comment">/* #undef HAVE_ATANL */</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">/* Define to 1 if you have the `cabs' function. */</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="comment">/* #undef HAVE_CABS */</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="comment">/* Define to 1 if you have the `cabsf' function. */</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="comment">/* #undef HAVE_CABSF */</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="comment">/* Define to 1 if you have the `cabsl' function. */</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="comment">/* #undef HAVE_CABSL */</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="comment">/* Define to 1 if you have the `cacos' function. */</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="comment">/* #undef HAVE_CACOS */</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="comment">/* Define to 1 if you have the `cacosf' function. */</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="comment">/* #undef HAVE_CACOSF */</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="comment">/* Define to 1 if you have the `cacosh' function. */</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="comment">/* #undef HAVE_CACOSH */</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="comment">/* Define to 1 if you have the `cacoshf' function. */</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="comment">/* #undef HAVE_CACOSHF */</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment">/* Define to 1 if you have the `cacoshl' function. */</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment">/* #undef HAVE_CACOSHL */</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment">/* Define to 1 if you have the `cacosl' function. */</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="comment">/* #undef HAVE_CACOSL */</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="comment">/* Define to 1 if you have the `carg' function. */</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="comment">/* #undef HAVE_CARG */</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="comment">/* Define to 1 if you have the `cargf' function. */</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment">/* #undef HAVE_CARGF */</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment">/* Define to 1 if you have the `cargl' function. */</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="comment">/* #undef HAVE_CARGL */</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="comment">/* Define to 1 if you have the `casin' function. */</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="comment">/* #undef HAVE_CASIN */</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="comment">/* Define to 1 if you have the `casinf' function. */</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="comment">/* #undef HAVE_CASINF */</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="comment">/* Define to 1 if you have the `casinh' function. */</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="comment">/* #undef HAVE_CASINH */</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="comment">/* Define to 1 if you have the `casinhf' function. */</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="comment">/* #undef HAVE_CASINHF */</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="comment">/* Define to 1 if you have the `casinhl' function. */</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="comment">/* #undef HAVE_CASINHL */</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="comment">/* Define to 1 if you have the `casinl' function. */</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="comment">/* #undef HAVE_CASINL */</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="comment">/* Define to 1 if you have the `catan' function. */</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="comment">/* #undef HAVE_CATAN */</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> </div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="comment">/* Define to 1 if you have the `catanf' function. */</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="comment">/* #undef HAVE_CATANF */</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="comment">/* Define to 1 if you have the `catanh' function. */</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="comment">/* #undef HAVE_CATANH */</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="comment">/* Define to 1 if you have the `catanhf' function. */</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="comment">/* #undef HAVE_CATANHF */</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="comment">/* Define to 1 if you have the `catanhl' function. */</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="comment">/* #undef HAVE_CATANHL */</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> </div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="comment">/* Define to 1 if you have the `catanl' function. */</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="comment">/* #undef HAVE_CATANL */</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> </div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="comment">/* Define to 1 if you have the `cbrt' function. */</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment">/* #undef HAVE_CBRT */</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> </div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment">/* Define to 1 if you have the `cbrtf' function. */</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment">/* #undef HAVE_CBRTF */</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> </div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="comment">/* Define to 1 if you have the `cbrtl' function. */</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment">/* #undef HAVE_CBRTL */</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> </div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="comment">/* Define to 1 if you have the `ccos' function. */</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="comment">/* #undef HAVE_CCOS */</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> </div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="comment">/* Define to 1 if you have the `ccosf' function. */</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="comment">/* #undef HAVE_CCOSF */</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> </div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="comment">/* Define to 1 if you have the `ccosh' function. */</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="comment">/* #undef HAVE_CCOSH */</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="comment">/* Define to 1 if you have the `ccoshf' function. */</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="comment">/* #undef HAVE_CCOSHF */</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> </div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="comment">/* Define to 1 if you have the `ccoshl' function. */</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="comment">/* #undef HAVE_CCOSHL */</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="comment">/* Define to 1 if you have the `ccosl' function. */</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment">/* #undef HAVE_CCOSL */</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> </div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment">/* Define to 1 if you have the `ceil' function. */</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment">/* #undef HAVE_CEIL */</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> </div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment">/* Define to 1 if you have the `ceilf' function. */</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment">/* #undef HAVE_CEILF */</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="comment">/* Define to 1 if you have the `ceill' function. */</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="comment">/* #undef HAVE_CEILL */</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="comment">/* Define to 1 if you have the `cexp' function. */</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="comment">/* #undef HAVE_CEXP */</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="comment">/* Define to 1 if you have the `cexpf' function. */</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="comment">/* #undef HAVE_CEXPF */</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="comment">/* Define to 1 if you have the `cexpl' function. */</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="comment">/* #undef HAVE_CEXPL */</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="comment">/* Define to 1 if you have the `cimag' function. */</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="comment">/* #undef HAVE_CIMAG */</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="comment">/* Define to 1 if you have the `cimagf' function. */</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="comment">/* #undef HAVE_CIMAGF */</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="comment">/* Define to 1 if you have the `cimagl' function. */</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="comment">/* #undef HAVE_CIMAGL */</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="comment">/* Define to 1 if you have the `clock_gettime' function. */</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="comment">/* #undef HAVE_CLOCK_GETTIME */</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> </div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="comment">/* Define to 1 if you have the `clog' function. */</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="comment">/* #undef HAVE_CLOG */</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> </div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="comment">/* Define to 1 if you have the `clogf' function. */</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="comment">/* #undef HAVE_CLOGF */</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="comment">/* Define to 1 if you have the `clogl' function. */</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="comment">/* #undef HAVE_CLOGL */</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> </div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="comment">/* Define to 1 if you have the <complex.h> header file. */</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="preprocessor">#define HAVE_COMPLEX_H 1</span></div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="comment">/* Define to 1 if you have the `conj' function. */</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="comment">/* #undef HAVE_CONJ */</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> </div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="comment">/* Define to 1 if you have the `conjf' function. */</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="comment">/* #undef HAVE_CONJF */</span></div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> </div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="comment">/* Define to 1 if you have the `conjl' function. */</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="comment">/* #undef HAVE_CONJL */</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="comment">/* Define to 1 if you have the `copysign' function. */</span></div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="preprocessor">#define HAVE_COPYSIGN 1</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="comment">/* Define to 1 if you have the `copysignf' function. */</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="comment">/* #undef HAVE_COPYSIGNF */</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> </div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="comment">/* Define to 1 if you have the `copysignl' function. */</span></div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="comment">/* #undef HAVE_COPYSIGNL */</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> </div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="comment">/* Define to 1 if you have the `cos' function. */</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="comment">/* #undef HAVE_COS */</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> </div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="comment">/* Define to 1 if you have the `cosf' function. */</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="comment">/* #undef HAVE_COSF */</span></div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> </div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="comment">/* Define to 1 if you have the `cosh' function. */</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="comment">/* #undef HAVE_COSH */</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> </div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="comment">/* Define to 1 if you have the `coshf' function. */</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="comment">/* #undef HAVE_COSHF */</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> </div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="comment">/* Define to 1 if you have the `coshl' function. */</span></div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="comment">/* #undef HAVE_COSHL */</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> </div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="comment">/* Define to 1 if you have the `cosl' function. */</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="comment">/* #undef HAVE_COSL */</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> </div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="comment">/* Define to 1 if you have the `cpow' function. */</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="comment">/* #undef HAVE_CPOW */</span></div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="comment">/* Define to 1 if you have the `cpowf' function. */</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="comment">/* #undef HAVE_CPOWF */</span></div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> </div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="comment">/* Define to 1 if you have the `cpowl' function. */</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="comment">/* #undef HAVE_CPOWL */</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> </div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="comment">/* Define to 1 if you have the `cproj' function. */</span></div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="comment">/* #undef HAVE_CPROJ */</span></div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="comment">/* Define to 1 if you have the `cprojf' function. */</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="comment">/* #undef HAVE_CPROJF */</span></div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="comment">/* Define to 1 if you have the `cprojl' function. */</span></div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="comment">/* #undef HAVE_CPROJL */</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> </div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="comment">/* Define to 1 if you have the `creal' function. */</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="comment">/* #undef HAVE_CREAL */</span></div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> </div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="comment">/* Define to 1 if you have the `crealf' function. */</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="comment">/* #undef HAVE_CREALF */</span></div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="comment">/* Define to 1 if you have the `creall' function. */</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="comment">/* #undef HAVE_CREALL */</span></div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> </div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="comment">/* Define to 1 if you have the `csin' function. */</span></div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="comment">/* #undef HAVE_CSIN */</span></div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> </div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="comment">/* Define to 1 if you have the `csinf' function. */</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment">/* #undef HAVE_CSINF */</span></div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> </div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="comment">/* Define to 1 if you have the `csinh' function. */</span></div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="comment">/* #undef HAVE_CSINH */</span></div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> </div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="comment">/* Define to 1 if you have the `csinhf' function. */</span></div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="comment">/* #undef HAVE_CSINHF */</span></div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> </div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="comment">/* Define to 1 if you have the `csinhl' function. */</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="comment">/* #undef HAVE_CSINHL */</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> </div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment">/* Define to 1 if you have the `csinl' function. */</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment">/* #undef HAVE_CSINL */</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> </div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="comment">/* Define to 1 if you have the `csqrt' function. */</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="comment">/* #undef HAVE_CSQRT */</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> </div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="comment">/* Define to 1 if you have the `csqrtf' function. */</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="comment">/* #undef HAVE_CSQRTF */</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> </div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="comment">/* Define to 1 if you have the `csqrtl' function. */</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="comment">/* #undef HAVE_CSQRTL */</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="comment">/* Define to 1 if you have the `ctan' function. */</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="comment">/* #undef HAVE_CTAN */</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> </div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="comment">/* Define to 1 if you have the `ctanf' function. */</span></div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="comment">/* #undef HAVE_CTANF */</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="comment">/* Define to 1 if you have the `ctanh' function. */</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="comment">/* #undef HAVE_CTANH */</span></div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> </div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="comment">/* Define to 1 if you have the `ctanhf' function. */</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="comment">/* #undef HAVE_CTANHF */</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> </div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="comment">/* Define to 1 if you have the `ctanhl' function. */</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="comment">/* #undef HAVE_CTANHL */</span></div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="comment">/* Define to 1 if you have the `ctanl' function. */</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="comment">/* #undef HAVE_CTANL */</span></div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> </div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="comment">/* Define to 1 if you have the <c_asm.h> header file. */</span></div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="comment">/* #undef HAVE_C_ASM_H */</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> </div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="comment">/* Define to 1 if you have the declaration of `acos', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="preprocessor">#define HAVE_DECL_ACOS 1</span></div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="comment">/* Define to 1 if you have the declaration of `acosf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="comment">/* #undef HAVE_DECL_ACOSF */</span></div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> </div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="comment">/* Define to 1 if you have the declaration of `acosh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="preprocessor">#define HAVE_DECL_ACOSH 1</span></div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="comment">/* Define to 1 if you have the declaration of `acoshf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="comment">/* #undef HAVE_DECL_ACOSHF */</span></div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> </div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="comment">/* Define to 1 if you have the declaration of `acoshl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="comment">/* #undef HAVE_DECL_ACOSHL */</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> </div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="comment">/* Define to 1 if you have the declaration of `acosl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="comment">/* #undef HAVE_DECL_ACOSL */</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> </div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="comment">/* Define to 1 if you have the declaration of `asin', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="preprocessor">#define HAVE_DECL_ASIN 1</span></div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="comment">/* Define to 1 if you have the declaration of `asinf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="comment">/* #undef HAVE_DECL_ASINF */</span></div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> </div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="comment">/* Define to 1 if you have the declaration of `asinh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="preprocessor">#define HAVE_DECL_ASINH 1</span></div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="comment">/* Define to 1 if you have the declaration of `asinhf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="comment">/* #undef HAVE_DECL_ASINHF */</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> </div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="comment">/* Define to 1 if you have the declaration of `asinhl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="comment">/* #undef HAVE_DECL_ASINHL */</span></div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> </div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="comment">/* Define to 1 if you have the declaration of `asinl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="comment">/* #undef HAVE_DECL_ASINL */</span></div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> </div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="comment">/* Define to 1 if you have the declaration of `atan', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="preprocessor">#define HAVE_DECL_ATAN 1</span></div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="comment">/* Define to 1 if you have the declaration of `atan2', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="preprocessor">#define HAVE_DECL_ATAN2 1</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="comment">/* Define to 1 if you have the declaration of `atan2f', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="comment">/* #undef HAVE_DECL_ATAN2F */</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> </div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="comment">/* Define to 1 if you have the declaration of `atan2l', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="comment">/* #undef HAVE_DECL_ATAN2L */</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> </div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="comment">/* Define to 1 if you have the declaration of `atanf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="comment">/* #undef HAVE_DECL_ATANF */</span></div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> </div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="comment">/* Define to 1 if you have the declaration of `atanh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="preprocessor">#define HAVE_DECL_ATANH 1</span></div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="comment">/* Define to 1 if you have the declaration of `atanhf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="comment">/* #undef HAVE_DECL_ATANHF */</span></div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> </div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="comment">/* Define to 1 if you have the declaration of `atanhl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="comment">/* #undef HAVE_DECL_ATANHL */</span></div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> </div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="comment">/* Define to 1 if you have the declaration of `atanl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="comment">/* #undef HAVE_DECL_ATANL */</span></div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="comment">/* Define to 1 if you have the declaration of `cabs', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="preprocessor">#define HAVE_DECL_CABS 1</span></div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="comment">/* Define to 1 if you have the declaration of `cabsl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="comment">/* #undef HAVE_DECL_CABSL */</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> </div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="comment">/* Define to 1 if you have the declaration of `cacos', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="preprocessor">#define HAVE_DECL_CACOS 1</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="comment">/* Define to 1 if you have the declaration of `cacosf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="comment">/* #undef HAVE_DECL_CACOSF */</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> </div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="comment">/* Define to 1 if you have the declaration of `cacosh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor">#define HAVE_DECL_CACOSH 1</span></div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="comment">/* Define to 1 if you have the declaration of `cacoshf', and to 0 if you</span></div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="comment">/* #undef HAVE_DECL_CACOSHF */</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> </div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="comment">/* Define to 1 if you have the declaration of `cacoshl', and to 0 if you</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="comment">/* #undef HAVE_DECL_CACOSHL */</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> </div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="comment">/* Define to 1 if you have the declaration of `cacosl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="comment">/* #undef HAVE_DECL_CACOSL */</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> </div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="comment">/* Define to 1 if you have the declaration of `carg', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor">#define HAVE_DECL_CARG 1</span></div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="comment">/* Define to 1 if you have the declaration of `cargf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="comment">/* #undef HAVE_DECL_CARGF */</span></div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> </div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="comment">/* Define to 1 if you have the declaration of `cargl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="comment">/* #undef HAVE_DECL_CARGL */</span></div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> </div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="comment">/* Define to 1 if you have the declaration of `casin', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="preprocessor">#define HAVE_DECL_CASIN 1</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="comment">/* Define to 1 if you have the declaration of `casinf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="comment">/* #undef HAVE_DECL_CASINF */</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> </div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="comment">/* Define to 1 if you have the declaration of `casinh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor">#define HAVE_DECL_CASINH 1</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="comment">/* Define to 1 if you have the declaration of `casinhf', and to 0 if you</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="comment">/* #undef HAVE_DECL_CASINHF */</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> </div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="comment">/* Define to 1 if you have the declaration of `casinhl', and to 0 if you</span></div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="comment">/* #undef HAVE_DECL_CASINHL */</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> </div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="comment">/* Define to 1 if you have the declaration of `casinl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="comment">/* #undef HAVE_DECL_CASINL */</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> </div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="comment">/* Define to 1 if you have the declaration of `catan', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="preprocessor">#define HAVE_DECL_CATAN 1</span></div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="comment">/* Define to 1 if you have the declaration of `catanf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="comment">/* #undef HAVE_DECL_CATANF */</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> </div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="comment">/* Define to 1 if you have the declaration of `catanh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="preprocessor">#define HAVE_DECL_CATANH 1</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="comment">/* Define to 1 if you have the declaration of `catanhf', and to 0 if you</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="comment">/* #undef HAVE_DECL_CATANHF */</span></div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> </div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="comment">/* Define to 1 if you have the declaration of `catanhl', and to 0 if you</span></div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="comment">/* #undef HAVE_DECL_CATANHL */</span></div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> </div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="comment">/* Define to 1 if you have the declaration of `catanl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="comment">/* #undef HAVE_DECL_CATANL */</span></div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> </div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="comment">/* Define to 1 if you have the declaration of `cbrt', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> <span class="preprocessor">#define HAVE_DECL_CBRT 1</span></div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="comment">/* Define to 1 if you have the declaration of `cbrtf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="comment">/* #undef HAVE_DECL_CBRTF */</span></div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> </div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="comment">/* Define to 1 if you have the declaration of `cbrtl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="comment">/* #undef HAVE_DECL_CBRTL */</span></div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> </div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="comment">/* Define to 1 if you have the declaration of `ccos', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="preprocessor">#define HAVE_DECL_CCOS 1</span></div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="comment">/* Define to 1 if you have the declaration of `ccosf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="comment">/* #undef HAVE_DECL_CCOSF */</span></div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> </div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="comment">/* Define to 1 if you have the declaration of `ccosh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="preprocessor">#define HAVE_DECL_CCOSH 1</span></div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="comment">/* Define to 1 if you have the declaration of `ccoshf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="comment">/* #undef HAVE_DECL_CCOSHF */</span></div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> </div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <span class="comment">/* Define to 1 if you have the declaration of `ccoshl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="comment">/* #undef HAVE_DECL_CCOSHL */</span></div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> </div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="comment">/* Define to 1 if you have the declaration of `ccosl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="comment">/* #undef HAVE_DECL_CCOSL */</span></div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> </div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="comment">/* Define to 1 if you have the declaration of `ceil', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="preprocessor">#define HAVE_DECL_CEIL 1</span></div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="comment">/* Define to 1 if you have the declaration of `ceilf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="comment">/* #undef HAVE_DECL_CEILF */</span></div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> </div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <span class="comment">/* Define to 1 if you have the declaration of `ceill', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="comment">/* #undef HAVE_DECL_CEILL */</span></div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> </div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="comment">/* Define to 1 if you have the declaration of `cexp', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="preprocessor">#define HAVE_DECL_CEXP 1</span></div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="comment">/* Define to 1 if you have the declaration of `cexpf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="comment">/* #undef HAVE_DECL_CEXPF */</span></div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> </div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="comment">/* Define to 1 if you have the declaration of `cexpl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="comment">/* #undef HAVE_DECL_CEXPL */</span></div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> </div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="comment">/* Define to 1 if you have the declaration of `cimag', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="preprocessor">#define HAVE_DECL_CIMAG 1</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="comment">/* Define to 1 if you have the declaration of `cimagf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="comment">/* #undef HAVE_DECL_CIMAGF */</span></div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> </div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="comment">/* Define to 1 if you have the declaration of `cimagl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="comment">/* #undef HAVE_DECL_CIMAGL */</span></div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> </div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="comment">/* Define to 1 if you have the declaration of `clog', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="preprocessor">#define HAVE_DECL_CLOG 1</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="comment">/* Define to 1 if you have the declaration of `clogf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="comment">/* #undef HAVE_DECL_CLOGF */</span></div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> </div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="comment">/* Define to 1 if you have the declaration of `clogl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="comment">/* #undef HAVE_DECL_CLOGL */</span></div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> </div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="comment">/* Define to 1 if you have the declaration of `conj', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="preprocessor">#define HAVE_DECL_CONJ 1</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="comment">/* Define to 1 if you have the declaration of `conjf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="comment">/* #undef HAVE_DECL_CONJF */</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> </div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="comment">/* Define to 1 if you have the declaration of `conjl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="comment">/* #undef HAVE_DECL_CONJL */</span></div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> </div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="comment">/* Define to 1 if you have the declaration of `copysign', and to 0 if you</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor">#define HAVE_DECL_COPYSIGN 1</span></div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="comment">/* Define to 1 if you have the declaration of `copysignf', and to 0 if you</span></div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="comment">/* #undef HAVE_DECL_COPYSIGNF */</span></div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> </div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="comment">/* Define to 1 if you have the declaration of `copysignl', and to 0 if you</span></div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="comment">/* #undef HAVE_DECL_COPYSIGNL */</span></div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> </div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="comment">/* Define to 1 if you have the declaration of `cos', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="preprocessor">#define HAVE_DECL_COS 1</span></div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="comment">/* Define to 1 if you have the declaration of `cosf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="comment">/* #undef HAVE_DECL_COSF */</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> </div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="comment">/* Define to 1 if you have the declaration of `cosh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="preprocessor">#define HAVE_DECL_COSH 1</span></div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="comment">/* Define to 1 if you have the declaration of `coshf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> <span class="comment">/* #undef HAVE_DECL_COSHF */</span></div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> </div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <span class="comment">/* Define to 1 if you have the declaration of `coshl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="comment">/* #undef HAVE_DECL_COSHL */</span></div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> </div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="comment">/* Define to 1 if you have the declaration of `cosl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="comment">/* #undef HAVE_DECL_COSL */</span></div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> </div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <span class="comment">/* Define to 1 if you have the declaration of `cpow', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="preprocessor">#define HAVE_DECL_CPOW 1</span></div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="comment">/* Define to 1 if you have the declaration of `cpowf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="comment">/* #undef HAVE_DECL_CPOWF */</span></div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> </div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="comment">/* Define to 1 if you have the declaration of `cpowl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="comment">/* #undef HAVE_DECL_CPOWL */</span></div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> </div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="comment">/* Define to 1 if you have the declaration of `cproj', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="preprocessor">#define HAVE_DECL_CPROJ 1</span></div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="comment">/* Define to 1 if you have the declaration of `cprojf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="comment">/* #undef HAVE_DECL_CPROJF */</span></div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> </div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> <span class="comment">/* Define to 1 if you have the declaration of `cprojl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="comment">/* #undef HAVE_DECL_CPROJL */</span></div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> </div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="comment">/* Define to 1 if you have the declaration of `creal', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="preprocessor">#define HAVE_DECL_CREAL 1</span></div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="comment">/* Define to 1 if you have the declaration of `crealf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="comment">/* #undef HAVE_DECL_CREALF */</span></div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> </div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> <span class="comment">/* Define to 1 if you have the declaration of `creall', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="comment">/* #undef HAVE_DECL_CREALL */</span></div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> </div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="comment">/* Define to 1 if you have the declaration of `csin', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor">#define HAVE_DECL_CSIN 1</span></div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> <span class="comment">/* Define to 1 if you have the declaration of `csinf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="comment">/* #undef HAVE_DECL_CSINF */</span></div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> </div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="comment">/* Define to 1 if you have the declaration of `csinh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> <span class="preprocessor">#define HAVE_DECL_CSINH 1</span></div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="comment">/* Define to 1 if you have the declaration of `csinhf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> <span class="comment">/* #undef HAVE_DECL_CSINHF */</span></div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> </div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> <span class="comment">/* Define to 1 if you have the declaration of `csinhl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> <span class="comment">/* #undef HAVE_DECL_CSINHL */</span></div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> </div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> <span class="comment">/* Define to 1 if you have the declaration of `csinl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> <span class="comment">/* #undef HAVE_DECL_CSINL */</span></div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> </div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> <span class="comment">/* Define to 1 if you have the declaration of `csqrt', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> <span class="preprocessor">#define HAVE_DECL_CSQRT 1</span></div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="comment">/* Define to 1 if you have the declaration of `csqrtf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> <span class="comment">/* #undef HAVE_DECL_CSQRTF */</span></div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> </div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> <span class="comment">/* Define to 1 if you have the declaration of `csqrtl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> <span class="comment">/* #undef HAVE_DECL_CSQRTL */</span></div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> </div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> <span class="comment">/* Define to 1 if you have the declaration of `ctan', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="preprocessor">#define HAVE_DECL_CTAN 1</span></div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> <span class="comment">/* Define to 1 if you have the declaration of `ctanf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> <span class="comment">/* #undef HAVE_DECL_CTANF */</span></div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> </div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> <span class="comment">/* Define to 1 if you have the declaration of `ctanh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> <span class="preprocessor">#define HAVE_DECL_CTANH 1</span></div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> <span class="comment">/* Define to 1 if you have the declaration of `ctanhf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> <span class="comment">/* #undef HAVE_DECL_CTANHF */</span></div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> </div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> <span class="comment">/* Define to 1 if you have the declaration of `ctanhl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> <span class="comment">/* #undef HAVE_DECL_CTANHL */</span></div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> </div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> <span class="comment">/* Define to 1 if you have the declaration of `ctanl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> <span class="comment">/* #undef HAVE_DECL_CTANL */</span></div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> </div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> <span class="comment">/* Define to 1 if you have the declaration of `drand48', and to 0 if you</span></div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> <span class="preprocessor">#define HAVE_DECL_DRAND48 1</span></div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> <span class="comment">/* Define to 1 if you have the declaration of `erf', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> <span class="preprocessor">#define HAVE_DECL_ERF 1</span></div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> <span class="comment">/* Define to 1 if you have the declaration of `erfc', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> <span class="preprocessor">#define HAVE_DECL_ERFC 1</span></div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> <span class="comment">/* Define to 1 if you have the declaration of `erfcf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> <span class="comment">/* #undef HAVE_DECL_ERFCF */</span></div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> </div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> <span class="comment">/* Define to 1 if you have the declaration of `erfcl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="comment">/* #undef HAVE_DECL_ERFCL */</span></div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> </div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="comment">/* Define to 1 if you have the declaration of `erff', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="comment">/* #undef HAVE_DECL_ERFF */</span></div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> </div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> <span class="comment">/* Define to 1 if you have the declaration of `erfl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> <span class="comment">/* #undef HAVE_DECL_ERFL */</span></div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> </div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> <span class="comment">/* Define to 1 if you have the declaration of `exp', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> <span class="preprocessor">#define HAVE_DECL_EXP 1</span></div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> <span class="comment">/* Define to 1 if you have the declaration of `exp2', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="preprocessor">#define HAVE_DECL_EXP2 1</span></div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> <span class="comment">/* Define to 1 if you have the declaration of `exp2f', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> <span class="comment">/* #undef HAVE_DECL_EXP2F */</span></div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> </div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> <span class="comment">/* Define to 1 if you have the declaration of `exp2l', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> <span class="comment">/* #undef HAVE_DECL_EXP2L */</span></div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> </div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> <span class="comment">/* Define to 1 if you have the declaration of `expf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="comment">/* #undef HAVE_DECL_EXPF */</span></div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> </div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="comment">/* Define to 1 if you have the declaration of `expl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> <span class="comment">/* #undef HAVE_DECL_EXPL */</span></div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> </div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> <span class="comment">/* Define to 1 if you have the declaration of `expm1', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> <span class="preprocessor">#define HAVE_DECL_EXPM1 1</span></div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> <span class="comment">/* Define to 1 if you have the declaration of `expm1f', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> <span class="comment">/* #undef HAVE_DECL_EXPM1F */</span></div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> </div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="comment">/* Define to 1 if you have the declaration of `expm1l', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> <span class="comment">/* #undef HAVE_DECL_EXPM1L */</span></div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> </div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> <span class="comment">/* Define to 1 if you have the declaration of `fabs', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> <span class="preprocessor">#define HAVE_DECL_FABS 1</span></div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> <span class="comment">/* Define to 1 if you have the declaration of `fabsf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> <span class="comment">/* #undef HAVE_DECL_FABSF */</span></div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> </div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> <span class="comment">/* Define to 1 if you have the declaration of `fabsl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> <span class="comment">/* #undef HAVE_DECL_FABSL */</span></div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> </div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> <span class="comment">/* Define to 1 if you have the declaration of `fdim', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> <span class="preprocessor">#define HAVE_DECL_FDIM 1</span></div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> <span class="comment">/* Define to 1 if you have the declaration of `fdimf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <span class="comment">/* #undef HAVE_DECL_FDIMF */</span></div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> </div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> <span class="comment">/* Define to 1 if you have the declaration of `fdiml', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> <span class="comment">/* #undef HAVE_DECL_FDIML */</span></div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> </div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> <span class="comment">/* Define to 1 if you have the declaration of `floor', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> <span class="preprocessor">#define HAVE_DECL_FLOOR 1</span></div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> <span class="comment">/* Define to 1 if you have the declaration of `floorf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> <span class="comment">/* #undef HAVE_DECL_FLOORF */</span></div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> </div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="comment">/* Define to 1 if you have the declaration of `floorl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> <span class="comment">/* #undef HAVE_DECL_FLOORL */</span></div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> </div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> <span class="comment">/* Define to 1 if you have the declaration of `fma', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> <span class="preprocessor">#define HAVE_DECL_FMA 1</span></div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> <span class="comment">/* Define to 1 if you have the declaration of `fmaf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="comment">/* #undef HAVE_DECL_FMAF */</span></div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> </div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> <span class="comment">/* Define to 1 if you have the declaration of `fmal', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> <span class="comment">/* #undef HAVE_DECL_FMAL */</span></div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> </div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> <span class="comment">/* Define to 1 if you have the declaration of `fmax', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> <span class="preprocessor">#define HAVE_DECL_FMAX 1</span></div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> <span class="comment">/* Define to 1 if you have the declaration of `fmaxf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> <span class="comment">/* #undef HAVE_DECL_FMAXF */</span></div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> </div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> <span class="comment">/* Define to 1 if you have the declaration of `fmaxl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> <span class="comment">/* #undef HAVE_DECL_FMAXL */</span></div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> </div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> <span class="comment">/* Define to 1 if you have the declaration of `fmin', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <span class="preprocessor">#define HAVE_DECL_FMIN 1</span></div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> <span class="comment">/* Define to 1 if you have the declaration of `fminf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> <span class="comment">/* #undef HAVE_DECL_FMINF */</span></div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> </div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> <span class="comment">/* Define to 1 if you have the declaration of `fminl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> <span class="comment">/* #undef HAVE_DECL_FMINL */</span></div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> </div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> <span class="comment">/* Define to 1 if you have the declaration of `fmod', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> <span class="preprocessor">#define HAVE_DECL_FMOD 1</span></div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> <span class="comment">/* Define to 1 if you have the declaration of `fmodf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> <span class="comment">/* #undef HAVE_DECL_FMODF */</span></div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> </div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> <span class="comment">/* Define to 1 if you have the declaration of `fmodl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> <span class="comment">/* #undef HAVE_DECL_FMODL */</span></div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> </div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> <span class="comment">/* Define to 1 if you have the declaration of `frexp', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> <span class="preprocessor">#define HAVE_DECL_FREXP 1</span></div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> <span class="comment">/* Define to 1 if you have the declaration of `frexpf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> <span class="comment">/* #undef HAVE_DECL_FREXPF */</span></div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> </div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> <span class="comment">/* Define to 1 if you have the declaration of `frexpl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> <span class="comment">/* #undef HAVE_DECL_FREXPL */</span></div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> </div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> <span class="comment">/* Define to 1 if you have the declaration of `hypot', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> <span class="preprocessor">#define HAVE_DECL_HYPOT 1</span></div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> <span class="comment">/* Define to 1 if you have the declaration of `hypotf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="comment">/* #undef HAVE_DECL_HYPOTF */</span></div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> </div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> <span class="comment">/* Define to 1 if you have the declaration of `hypotl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> <span class="comment">/* #undef HAVE_DECL_HYPOTL */</span></div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> </div>
-<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> <span class="comment">/* Define to 1 if you have the declaration of `ilogb', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> <span class="preprocessor">#define HAVE_DECL_ILOGB 1</span></div>
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> <span class="comment">/* Define to 1 if you have the declaration of `ilogbf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> <span class="comment">/* #undef HAVE_DECL_ILOGBF */</span></div>
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> </div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> <span class="comment">/* Define to 1 if you have the declaration of `ilogbl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> <span class="comment">/* #undef HAVE_DECL_ILOGBL */</span></div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> </div>
-<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> <span class="comment">/* Define to 1 if you have the declaration of `j0', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00928"></a><span class="lineno"> 928</span> <span class="preprocessor">#define HAVE_DECL_J0 1</span></div>
-<div class="line"><a name="l00929"></a><span class="lineno"> 929</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> <span class="comment">/* Define to 1 if you have the declaration of `j0f', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> <span class="comment">/* #undef HAVE_DECL_J0F */</span></div>
-<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> </div>
-<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> <span class="comment">/* Define to 1 if you have the declaration of `j0l', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> <span class="comment">/* #undef HAVE_DECL_J0L */</span></div>
-<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> </div>
-<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> <span class="comment">/* Define to 1 if you have the declaration of `j1', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> <span class="preprocessor">#define HAVE_DECL_J1 1</span></div>
-<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> <span class="comment">/* Define to 1 if you have the declaration of `j1f', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> <span class="comment">/* #undef HAVE_DECL_J1F */</span></div>
-<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> </div>
-<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> <span class="comment">/* Define to 1 if you have the declaration of `j1l', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> <span class="comment">/* #undef HAVE_DECL_J1L */</span></div>
-<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> </div>
-<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> <span class="comment">/* Define to 1 if you have the declaration of `jn', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> <span class="preprocessor">#define HAVE_DECL_JN 1</span></div>
-<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="comment">/* Define to 1 if you have the declaration of `jnf', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> <span class="comment">/* #undef HAVE_DECL_JNF */</span></div>
-<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> </div>
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="comment">/* Define to 1 if you have the declaration of `jnl', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="comment">/* #undef HAVE_DECL_JNL */</span></div>
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> </div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> <span class="comment">/* Define to 1 if you have the declaration of `ldexp', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> <span class="preprocessor">#define HAVE_DECL_LDEXP 1</span></div>
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> <span class="comment">/* Define to 1 if you have the declaration of `ldexpf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> <span class="comment">/* #undef HAVE_DECL_LDEXPF */</span></div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> </div>
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> <span class="comment">/* Define to 1 if you have the declaration of `ldexpl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="comment">/* #undef HAVE_DECL_LDEXPL */</span></div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> </div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="comment">/* Define to 1 if you have the declaration of `lgamma', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> <span class="preprocessor">#define HAVE_DECL_LGAMMA 1</span></div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> <span class="comment">/* Define to 1 if you have the declaration of `lgammaf', and to 0 if you</span></div>
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> <span class="comment">/* #undef HAVE_DECL_LGAMMAF */</span></div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> </div>
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> <span class="comment">/* Define to 1 if you have the declaration of `lgammal', and to 0 if you</span></div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="comment">/* #undef HAVE_DECL_LGAMMAL */</span></div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> </div>
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> <span class="comment">/* Define to 1 if you have the declaration of `llrint', and to 0 if you don't.</span></div>
-<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <span class="preprocessor">#define HAVE_DECL_LLRINT 1</span></div>
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> <span class="comment">/* Define to 1 if you have the declaration of `llrintf', and to 0 if you</span></div>
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> <span class="comment">/* #undef HAVE_DECL_LLRINTF */</span></div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> </div>
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> <span class="comment">/* Define to 1 if you have the declaration of `llrintl', and to 0 if you</span></div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> <span class="comment">/* #undef HAVE_DECL_LLRINTL */</span></div>
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> </div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="comment">/* Define to 1 if you have the declaration of `llround', and to 0 if you</span></div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> <span class="preprocessor">#define HAVE_DECL_LLROUND 1</span></div>
-<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> <span class="comment">/* Define to 1 if you have the declaration of `llroundf', and to 0 if you</span></div>
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> <span class="comment">/* #undef HAVE_DECL_LLROUNDF */</span></div>
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> </div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> <span class="comment">/* Define to 1 if you have the declaration of `llroundl', and to 0 if you</span></div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="comment">/* #undef HAVE_DECL_LLROUNDL */</span></div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> </div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="comment">/* Define to 1 if you have the declaration of `log', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> <span class="preprocessor">#define HAVE_DECL_LOG 1</span></div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> <span class="comment">/* Define to 1 if you have the declaration of `log10', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> <span class="preprocessor">#define HAVE_DECL_LOG10 1</span></div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> <span class="comment">/* Define to 1 if you have the declaration of `log10f', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> <span class="comment">/* #undef HAVE_DECL_LOG10F */</span></div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> </div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="comment">/* Define to 1 if you have the declaration of `log10l', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> <span class="comment">/* #undef HAVE_DECL_LOG10L */</span></div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> </div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> <span class="comment">/* Define to 1 if you have the declaration of `log1p', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> <span class="preprocessor">#define HAVE_DECL_LOG1P 1</span></div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> <span class="comment">/* Define to 1 if you have the declaration of `log1pf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> <span class="comment">/* #undef HAVE_DECL_LOG1PF */</span></div>
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span> </div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> <span class="comment">/* Define to 1 if you have the declaration of `log1pl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span> <span class="comment">/* #undef HAVE_DECL_LOG1PL */</span></div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> </div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> <span class="comment">/* Define to 1 if you have the declaration of `log2', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span> <span class="preprocessor">#define HAVE_DECL_LOG2 1</span></div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span> <span class="comment">/* Define to 1 if you have the declaration of `log2f', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> <span class="comment">/* #undef HAVE_DECL_LOG2F */</span></div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> </div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> <span class="comment">/* Define to 1 if you have the declaration of `log2l', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> <span class="comment">/* #undef HAVE_DECL_LOG2L */</span></div>
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span> </div>
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> <span class="comment">/* Define to 1 if you have the declaration of `logb', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span> <span class="preprocessor">#define HAVE_DECL_LOGB 1</span></div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> <span class="comment">/* Define to 1 if you have the declaration of `logbf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span> <span class="comment">/* #undef HAVE_DECL_LOGBF */</span></div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> </div>
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span> <span class="comment">/* Define to 1 if you have the declaration of `logbl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span> <span class="comment">/* #undef HAVE_DECL_LOGBL */</span></div>
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> </div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> <span class="comment">/* Define to 1 if you have the declaration of `logf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> <span class="comment">/* #undef HAVE_DECL_LOGF */</span></div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> </div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> <span class="comment">/* Define to 1 if you have the declaration of `logl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> <span class="comment">/* #undef HAVE_DECL_LOGL */</span></div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> </div>
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="comment">/* Define to 1 if you have the declaration of `lrint', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> <span class="preprocessor">#define HAVE_DECL_LRINT 1</span></div>
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> <span class="comment">/* Define to 1 if you have the declaration of `lrintf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> <span class="comment">/* #undef HAVE_DECL_LRINTF */</span></div>
-<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> </div>
-<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> <span class="comment">/* Define to 1 if you have the declaration of `lrintl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> <span class="comment">/* #undef HAVE_DECL_LRINTL */</span></div>
-<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> </div>
-<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> <span class="comment">/* Define to 1 if you have the declaration of `lround', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> <span class="preprocessor">#define HAVE_DECL_LROUND 1</span></div>
-<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> <span class="comment">/* Define to 1 if you have the declaration of `lroundf', and to 0 if you</span></div>
-<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> <span class="comment">/* #undef HAVE_DECL_LROUNDF */</span></div>
-<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span> </div>
-<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> <span class="comment">/* Define to 1 if you have the declaration of `lroundl', and to 0 if you</span></div>
-<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> <span class="comment">/* #undef HAVE_DECL_LROUNDL */</span></div>
-<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> </div>
-<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> <span class="comment">/* Define to 1 if you have the declaration of `memalign', and to 0 if you</span></div>
-<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> <span class="preprocessor">#define HAVE_DECL_MEMALIGN 0</span></div>
-<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> <span class="comment">/* Define to 1 if you have the declaration of `modf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> <span class="preprocessor">#define HAVE_DECL_MODF 1</span></div>
-<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> <span class="comment">/* Define to 1 if you have the declaration of `modff', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span> <span class="comment">/* #undef HAVE_DECL_MODFF */</span></div>
-<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> </div>
-<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> <span class="comment">/* Define to 1 if you have the declaration of `modfl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> <span class="comment">/* #undef HAVE_DECL_MODFL */</span></div>
-<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span> </div>
-<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> <span class="comment">/* Define to 1 if you have the declaration of `nan', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span> <span class="preprocessor">#define HAVE_DECL_NAN 1</span></div>
-<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> <span class="comment">/* Define to 1 if you have the declaration of `nanf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> <span class="comment">/* #undef HAVE_DECL_NANF */</span></div>
-<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span> </div>
-<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span> <span class="comment">/* Define to 1 if you have the declaration of `nanl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span> <span class="comment">/* #undef HAVE_DECL_NANL */</span></div>
-<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span> </div>
-<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span> <span class="comment">/* Define to 1 if you have the declaration of `nanosleep', and to 0 if you</span></div>
-<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span> <span class="preprocessor">#define HAVE_DECL_NANOSLEEP 1</span></div>
-<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span> <span class="comment">/* Define to 1 if you have the declaration of `nearbyint', and to 0 if you</span></div>
-<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span> <span class="preprocessor">#define HAVE_DECL_NEARBYINT 1</span></div>
-<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span> <span class="comment">/* Define to 1 if you have the declaration of `nearbyintf', and to 0 if you</span></div>
-<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span> <span class="comment">/* #undef HAVE_DECL_NEARBYINTF */</span></div>
-<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span> </div>
-<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span> <span class="comment">/* Define to 1 if you have the declaration of `nearbyintl', and to 0 if you</span></div>
-<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span> <span class="comment">/* #undef HAVE_DECL_NEARBYINTL */</span></div>
-<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span> </div>
-<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span> <span class="comment">/* Define to 1 if you have the declaration of `nextafter', and to 0 if you</span></div>
-<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span> <span class="preprocessor">#define HAVE_DECL_NEXTAFTER 1</span></div>
-<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span> <span class="comment">/* Define to 1 if you have the declaration of `nextafterf', and to 0 if you</span></div>
-<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span> <span class="comment">/* #undef HAVE_DECL_NEXTAFTERF */</span></div>
-<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span> </div>
-<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span> <span class="comment">/* Define to 1 if you have the declaration of `nextafterl', and to 0 if you</span></div>
-<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span> <span class="comment">/* #undef HAVE_DECL_NEXTAFTERL */</span></div>
-<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span> </div>
-<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span> <span class="comment">/* Define to 1 if you have the declaration of `posix_memalign', and to 0 if</span></div>
-<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span> <span class="comment"> you don't. */</span></div>
-<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span> <span class="preprocessor">#define HAVE_DECL_POSIX_MEMALIGN 1</span></div>
-<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span> <span class="comment">/* Define to 1 if you have the declaration of `pow', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span> <span class="preprocessor">#define HAVE_DECL_POW 1</span></div>
-<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span> <span class="comment">/* Define to 1 if you have the declaration of `powf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span> <span class="comment">/* #undef HAVE_DECL_POWF */</span></div>
-<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span> </div>
-<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span> <span class="comment">/* Define to 1 if you have the declaration of `powl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span> <span class="comment">/* #undef HAVE_DECL_POWL */</span></div>
-<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span> </div>
-<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span> <span class="comment">/* Define to 1 if you have the declaration of `remainder', and to 0 if you</span></div>
-<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> <span class="preprocessor">#define HAVE_DECL_REMAINDER 1</span></div>
-<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span> <span class="comment">/* Define to 1 if you have the declaration of `remainderf', and to 0 if you</span></div>
-<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> <span class="comment">/* #undef HAVE_DECL_REMAINDERF */</span></div>
-<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> </div>
-<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> <span class="comment">/* Define to 1 if you have the declaration of `remainderl', and to 0 if you</span></div>
-<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> <span class="comment">/* #undef HAVE_DECL_REMAINDERL */</span></div>
-<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span> </div>
-<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span> <span class="comment">/* Define to 1 if you have the declaration of `remquo', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> <span class="preprocessor">#define HAVE_DECL_REMQUO 1</span></div>
-<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span> <span class="comment">/* Define to 1 if you have the declaration of `remquof', and to 0 if you</span></div>
-<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> <span class="comment">/* #undef HAVE_DECL_REMQUOF */</span></div>
-<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> </div>
-<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span> <span class="comment">/* Define to 1 if you have the declaration of `remquol', and to 0 if you</span></div>
-<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> <span class="comment">/* #undef HAVE_DECL_REMQUOL */</span></div>
-<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> </div>
-<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span> <span class="comment">/* Define to 1 if you have the declaration of `rint', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> <span class="preprocessor">#define HAVE_DECL_RINT 1</span></div>
-<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> <span class="comment">/* Define to 1 if you have the declaration of `rintf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> <span class="comment">/* #undef HAVE_DECL_RINTF */</span></div>
-<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> </div>
-<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> <span class="comment">/* Define to 1 if you have the declaration of `rintl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> <span class="comment">/* #undef HAVE_DECL_RINTL */</span></div>
-<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> </div>
-<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> <span class="comment">/* Define to 1 if you have the declaration of `round', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> <span class="preprocessor">#define HAVE_DECL_ROUND 1</span></div>
-<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> <span class="comment">/* Define to 1 if you have the declaration of `roundf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> <span class="comment">/* #undef HAVE_DECL_ROUNDF */</span></div>
-<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> </div>
-<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span> <span class="comment">/* Define to 1 if you have the declaration of `roundl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span> <span class="comment">/* #undef HAVE_DECL_ROUNDL */</span></div>
-<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span> </div>
-<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> <span class="comment">/* Define to 1 if you have the declaration of `scalbln', and to 0 if you</span></div>
-<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span> <span class="preprocessor">#define HAVE_DECL_SCALBLN 1</span></div>
-<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span> <span class="comment">/* Define to 1 if you have the declaration of `scalblnf', and to 0 if you</span></div>
-<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span> <span class="comment">/* #undef HAVE_DECL_SCALBLNF */</span></div>
-<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span> </div>
-<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> <span class="comment">/* Define to 1 if you have the declaration of `scalblnl', and to 0 if you</span></div>
-<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> <span class="comment">/* #undef HAVE_DECL_SCALBLNL */</span></div>
-<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> </div>
-<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> <span class="comment">/* Define to 1 if you have the declaration of `scalbn', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span> <span class="preprocessor">#define HAVE_DECL_SCALBN 1</span></div>
-<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> <span class="comment">/* Define to 1 if you have the declaration of `scalbnf', and to 0 if you</span></div>
-<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span> <span class="comment">/* #undef HAVE_DECL_SCALBNF */</span></div>
-<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span> </div>
-<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span> <span class="comment">/* Define to 1 if you have the declaration of `scalbnl', and to 0 if you</span></div>
-<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span> <span class="comment">/* #undef HAVE_DECL_SCALBNL */</span></div>
-<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span> </div>
-<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span> <span class="comment">/* Define to 1 if you have the declaration of `sin', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span> <span class="preprocessor">#define HAVE_DECL_SIN 1</span></div>
-<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span> <span class="comment">/* Define to 1 if you have the declaration of `sinf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span> <span class="comment">/* #undef HAVE_DECL_SINF */</span></div>
-<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span> </div>
-<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span> <span class="comment">/* Define to 1 if you have the declaration of `sinh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span> <span class="preprocessor">#define HAVE_DECL_SINH 1</span></div>
-<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span> <span class="comment">/* Define to 1 if you have the declaration of `sinhf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span> <span class="comment">/* #undef HAVE_DECL_SINHF */</span></div>
-<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span> </div>
-<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span> <span class="comment">/* Define to 1 if you have the declaration of `sinhl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span> <span class="comment">/* #undef HAVE_DECL_SINHL */</span></div>
-<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span> </div>
-<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> <span class="comment">/* Define to 1 if you have the declaration of `sinl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> <span class="comment">/* #undef HAVE_DECL_SINL */</span></div>
-<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span> </div>
-<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span> <span class="comment">/* Define to 1 if you have the declaration of `sleep', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span> <span class="preprocessor">#define HAVE_DECL_SLEEP 1</span></div>
-<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span> <span class="comment">/* Define to 1 if you have the declaration of `sqrt', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> <span class="preprocessor">#define HAVE_DECL_SQRT 1</span></div>
-<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span> <span class="comment">/* Define to 1 if you have the declaration of `sqrtf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span> <span class="comment">/* #undef HAVE_DECL_SQRTF */</span></div>
-<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span> </div>
-<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span> <span class="comment">/* Define to 1 if you have the declaration of `sqrtl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span> <span class="comment">/* #undef HAVE_DECL_SQRTL */</span></div>
-<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span> </div>
-<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span> <span class="comment">/* Define to 1 if you have the declaration of `srand48', and to 0 if you</span></div>
-<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> <span class="preprocessor">#define HAVE_DECL_SRAND48 1</span></div>
-<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span> <span class="comment">/* Define to 1 if you have the declaration of `tan', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span> <span class="preprocessor">#define HAVE_DECL_TAN 1</span></div>
-<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span> <span class="comment">/* Define to 1 if you have the declaration of `tanf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span> <span class="comment">/* #undef HAVE_DECL_TANF */</span></div>
-<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span> </div>
-<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span> <span class="comment">/* Define to 1 if you have the declaration of `tanh', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span> <span class="preprocessor">#define HAVE_DECL_TANH 1</span></div>
-<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span> <span class="comment">/* Define to 1 if you have the declaration of `tanhf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span> <span class="comment">/* #undef HAVE_DECL_TANHF */</span></div>
-<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span> </div>
-<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> <span class="comment">/* Define to 1 if you have the declaration of `tanhl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span> <span class="comment">/* #undef HAVE_DECL_TANHL */</span></div>
-<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span> </div>
-<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span> <span class="comment">/* Define to 1 if you have the declaration of `tanl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span> <span class="comment">/* #undef HAVE_DECL_TANL */</span></div>
-<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span> </div>
-<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span> <span class="comment">/* Define to 1 if you have the declaration of `tgamma', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span> <span class="preprocessor">#define HAVE_DECL_TGAMMA 1</span></div>
-<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span> <span class="comment">/* Define to 1 if you have the declaration of `tgammaf', and to 0 if you</span></div>
-<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span> <span class="comment">/* #undef HAVE_DECL_TGAMMAF */</span></div>
-<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span> </div>
-<div class="line"><a name="l01301"></a><span class="lineno"> 1301</span> <span class="comment">/* Define to 1 if you have the declaration of `tgammal', and to 0 if you</span></div>
-<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span> <span class="comment"> don't. */</span></div>
-<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span> <span class="comment">/* #undef HAVE_DECL_TGAMMAL */</span></div>
-<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> </div>
-<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> <span class="comment">/* Define to 1 if you have the declaration of `trunc', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span> <span class="preprocessor">#define HAVE_DECL_TRUNC 1</span></div>
-<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span> <span class="comment">/* Define to 1 if you have the declaration of `truncf', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span> <span class="comment">/* #undef HAVE_DECL_TRUNCF */</span></div>
-<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span> </div>
-<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span> <span class="comment">/* Define to 1 if you have the declaration of `truncl', and to 0 if you don't.</span></div>
-<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span> <span class="comment">/* #undef HAVE_DECL_TRUNCL */</span></div>
-<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span> </div>
-<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span> <span class="comment">/* Define to 1 if you have the declaration of `y0', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span> <span class="preprocessor">#define HAVE_DECL_Y0 1</span></div>
-<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span> <span class="comment">/* Define to 1 if you have the declaration of `y0f', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span> <span class="comment">/* #undef HAVE_DECL_Y0F */</span></div>
-<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span> </div>
-<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span> <span class="comment">/* Define to 1 if you have the declaration of `y0l', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span> <span class="comment">/* #undef HAVE_DECL_Y0L */</span></div>
-<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span> </div>
-<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span> <span class="comment">/* Define to 1 if you have the declaration of `y1', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01327"></a><span class="lineno"> 1327</span> <span class="preprocessor">#define HAVE_DECL_Y1 1</span></div>
-<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> <span class="comment">/* Define to 1 if you have the declaration of `y1f', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span> <span class="comment">/* #undef HAVE_DECL_Y1F */</span></div>
-<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> </div>
-<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> <span class="comment">/* Define to 1 if you have the declaration of `y1l', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span> <span class="comment">/* #undef HAVE_DECL_Y1L */</span></div>
-<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span> </div>
-<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span> <span class="comment">/* Define to 1 if you have the declaration of `yn', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span> <span class="preprocessor">#define HAVE_DECL_YN 1</span></div>
-<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span> <span class="comment">/* Define to 1 if you have the declaration of `ynf', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span> <span class="comment">/* #undef HAVE_DECL_YNF */</span></div>
-<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span> </div>
-<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span> <span class="comment">/* Define to 1 if you have the declaration of `ynl', and to 0 if you don't. */</span></div>
-<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span> <span class="comment">/* #undef HAVE_DECL_YNL */</span></div>
-<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span> </div>
-<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span> <span class="comment">/* Define to 1 if you have the <dlfcn.h> header file. */</span></div>
-<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> <span class="preprocessor">#define HAVE_DLFCN_H 1</span></div>
-<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span> <span class="comment">/* Define to 1 if you don't have `vprintf' but do have `_doprnt.' */</span></div>
-<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span> <span class="comment">/* #undef HAVE_DOPRNT */</span></div>
-<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span> </div>
-<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span> <span class="comment">/* Define to 1 if you have the `drand48' function. */</span></div>
-<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span> <span class="preprocessor">#define HAVE_DRAND48 1</span></div>
-<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span> <span class="comment">/* Define to 1 if you have the `erf' function. */</span></div>
-<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span> <span class="comment">/* #undef HAVE_ERF */</span></div>
-<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> </div>
-<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span> <span class="comment">/* Define to 1 if you have the `erfc' function. */</span></div>
-<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span> <span class="comment">/* #undef HAVE_ERFC */</span></div>
-<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span> </div>
-<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span> <span class="comment">/* Define to 1 if you have the `erfcf' function. */</span></div>
-<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span> <span class="comment">/* #undef HAVE_ERFCF */</span></div>
-<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span> </div>
-<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span> <span class="comment">/* Define to 1 if you have the `erfcl' function. */</span></div>
-<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span> <span class="comment">/* #undef HAVE_ERFCL */</span></div>
-<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span> </div>
-<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span> <span class="comment">/* Define to 1 if you have the `erff' function. */</span></div>
-<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span> <span class="comment">/* #undef HAVE_ERFF */</span></div>
-<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span> </div>
-<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span> <span class="comment">/* Define to 1 if you have the `erfl' function. */</span></div>
-<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span> <span class="comment">/* #undef HAVE_ERFL */</span></div>
-<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span> </div>
-<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span> <span class="comment">/* Define to 1 if you have the `exp' function. */</span></div>
-<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> <span class="comment">/* #undef HAVE_EXP */</span></div>
-<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> </div>
-<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> <span class="comment">/* Define to 1 if you have the `exp2' function. */</span></div>
-<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span> <span class="comment">/* #undef HAVE_EXP2 */</span></div>
-<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span> </div>
-<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span> <span class="comment">/* Define to 1 if you have the `exp2f' function. */</span></div>
-<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span> <span class="comment">/* #undef HAVE_EXP2F */</span></div>
-<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span> </div>
-<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span> <span class="comment">/* Define to 1 if you have the `exp2l' function. */</span></div>
-<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span> <span class="comment">/* #undef HAVE_EXP2L */</span></div>
-<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span> </div>
-<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span> <span class="comment">/* Define to 1 if you have the `expf' function. */</span></div>
-<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span> <span class="comment">/* #undef HAVE_EXPF */</span></div>
-<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span> </div>
-<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span> <span class="comment">/* Define to 1 if you have the `expl' function. */</span></div>
-<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span> <span class="comment">/* #undef HAVE_EXPL */</span></div>
-<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span> </div>
-<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span> <span class="comment">/* Define to 1 if you have the `expm1' function. */</span></div>
-<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span> <span class="comment">/* #undef HAVE_EXPM1 */</span></div>
-<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span> </div>
-<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span> <span class="comment">/* Define to 1 if you have the `expm1f' function. */</span></div>
-<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span> <span class="comment">/* #undef HAVE_EXPM1F */</span></div>
-<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span> </div>
-<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span> <span class="comment">/* Define to 1 if you have the `expm1l' function. */</span></div>
-<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span> <span class="comment">/* #undef HAVE_EXPM1L */</span></div>
-<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span> </div>
-<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span> <span class="comment">/* Define to 1 if you have the `fabs' function. */</span></div>
-<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span> <span class="comment">/* #undef HAVE_FABS */</span></div>
-<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span> </div>
-<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span> <span class="comment">/* Define to 1 if you have the `fabsf' function. */</span></div>
-<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span> <span class="comment">/* #undef HAVE_FABSF */</span></div>
-<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span> </div>
-<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span> <span class="comment">/* Define to 1 if you have the `fabsl' function. */</span></div>
-<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span> <span class="comment">/* #undef HAVE_FABSL */</span></div>
-<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span> </div>
-<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span> <span class="comment">/* Define to 1 if you have the `fdim' function. */</span></div>
-<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span> <span class="comment">/* #undef HAVE_FDIM */</span></div>
-<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span> </div>
-<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span> <span class="comment">/* Define to 1 if you have the `fdimf' function. */</span></div>
-<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span> <span class="comment">/* #undef HAVE_FDIMF */</span></div>
-<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span> </div>
-<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span> <span class="comment">/* Define to 1 if you have the `fdiml' function. */</span></div>
-<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span> <span class="comment">/* #undef HAVE_FDIML */</span></div>
-<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span> </div>
-<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span> <span class="comment">/* Define to 1 if you have the <float.h> header file. */</span></div>
-<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span> <span class="preprocessor">#define HAVE_FLOAT_H 1</span></div>
-<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span> <span class="comment">/* Define to 1 if you have the `floor' function. */</span></div>
-<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span> <span class="comment">/* #undef HAVE_FLOOR */</span></div>
-<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span> </div>
-<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span> <span class="comment">/* Define to 1 if you have the `floorf' function. */</span></div>
-<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span> <span class="comment">/* #undef HAVE_FLOORF */</span></div>
-<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span> </div>
-<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span> <span class="comment">/* Define to 1 if you have the `floorl' function. */</span></div>
-<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span> <span class="comment">/* #undef HAVE_FLOORL */</span></div>
-<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span> </div>
-<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span> <span class="comment">/* Define to 1 if you have the `fma' function. */</span></div>
-<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span> <span class="comment">/* #undef HAVE_FMA */</span></div>
-<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span> </div>
-<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span> <span class="comment">/* Define to 1 if you have the `fmaf' function. */</span></div>
-<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span> <span class="comment">/* #undef HAVE_FMAF */</span></div>
-<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span> </div>
-<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span> <span class="comment">/* Define to 1 if you have the `fmal' function. */</span></div>
-<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span> <span class="comment">/* #undef HAVE_FMAL */</span></div>
-<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span> </div>
-<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span> <span class="comment">/* Define to 1 if you have the `fmax' function. */</span></div>
-<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span> <span class="comment">/* #undef HAVE_FMAX */</span></div>
-<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span> </div>
-<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span> <span class="comment">/* Define to 1 if you have the `fmaxf' function. */</span></div>
-<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span> <span class="comment">/* #undef HAVE_FMAXF */</span></div>
-<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span> </div>
-<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span> <span class="comment">/* Define to 1 if you have the `fmaxl' function. */</span></div>
-<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span> <span class="comment">/* #undef HAVE_FMAXL */</span></div>
-<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span> </div>
-<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span> <span class="comment">/* Define to 1 if you have the `fmin' function. */</span></div>
-<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span> <span class="comment">/* #undef HAVE_FMIN */</span></div>
-<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span> </div>
-<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span> <span class="comment">/* Define to 1 if you have the `fminf' function. */</span></div>
-<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span> <span class="comment">/* #undef HAVE_FMINF */</span></div>
-<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span> </div>
-<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span> <span class="comment">/* Define to 1 if you have the `fminl' function. */</span></div>
-<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span> <span class="comment">/* #undef HAVE_FMINL */</span></div>
-<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span> </div>
-<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span> <span class="comment">/* Define to 1 if you have the `fmod' function. */</span></div>
-<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span> <span class="comment">/* #undef HAVE_FMOD */</span></div>
-<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span> </div>
-<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span> <span class="comment">/* Define to 1 if you have the `fmodf' function. */</span></div>
-<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span> <span class="comment">/* #undef HAVE_FMODF */</span></div>
-<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span> </div>
-<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span> <span class="comment">/* Define to 1 if you have the `fmodl' function. */</span></div>
-<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span> <span class="comment">/* #undef HAVE_FMODL */</span></div>
-<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span> </div>
-<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span> <span class="comment">/* Define to 1 if you have the `frexp' function. */</span></div>
-<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span> <span class="preprocessor">#define HAVE_FREXP 1</span></div>
-<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span> <span class="comment">/* Define to 1 if you have the `frexpf' function. */</span></div>
-<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span> <span class="comment">/* #undef HAVE_FREXPF */</span></div>
-<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span> </div>
-<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span> <span class="comment">/* Define to 1 if you have the `frexpl' function. */</span></div>
-<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span> <span class="comment">/* #undef HAVE_FREXPL */</span></div>
-<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span> </div>
-<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span> <span class="comment">/* Define to 1 if you have the `gethrtime' function. */</span></div>
-<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span> <span class="comment">/* #undef HAVE_GETHRTIME */</span></div>
-<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span> </div>
-<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span> <span class="comment">/* Define to 1 if hrtime_t is defined in <sys/time.h> */</span></div>
-<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span> <span class="comment">/* #undef HAVE_HRTIME_T */</span></div>
-<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span> </div>
-<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span> <span class="comment">/* Define to 1 if you have the `hypot' function. */</span></div>
-<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> <span class="comment">/* #undef HAVE_HYPOT */</span></div>
-<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span> </div>
-<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span> <span class="comment">/* Define to 1 if you have the `hypotf' function. */</span></div>
-<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span> <span class="comment">/* #undef HAVE_HYPOTF */</span></div>
-<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span> </div>
-<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span> <span class="comment">/* Define to 1 if you have the `hypotl' function. */</span></div>
-<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span> <span class="comment">/* #undef HAVE_HYPOTL */</span></div>
-<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span> </div>
-<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span> <span class="comment">/* Define to 1 if you have the `ilogb' function. */</span></div>
-<div class="line"><a name="l01489"></a><span class="lineno"> 1489</span> <span class="comment">/* #undef HAVE_ILOGB */</span></div>
-<div class="line"><a name="l01490"></a><span class="lineno"> 1490</span> </div>
-<div class="line"><a name="l01491"></a><span class="lineno"> 1491</span> <span class="comment">/* Define to 1 if you have the `ilogbf' function. */</span></div>
-<div class="line"><a name="l01492"></a><span class="lineno"> 1492</span> <span class="comment">/* #undef HAVE_ILOGBF */</span></div>
-<div class="line"><a name="l01493"></a><span class="lineno"> 1493</span> </div>
-<div class="line"><a name="l01494"></a><span class="lineno"> 1494</span> <span class="comment">/* Define to 1 if you have the `ilogbl' function. */</span></div>
-<div class="line"><a name="l01495"></a><span class="lineno"> 1495</span> <span class="comment">/* #undef HAVE_ILOGBL */</span></div>
-<div class="line"><a name="l01496"></a><span class="lineno"> 1496</span> </div>
-<div class="line"><a name="l01497"></a><span class="lineno"> 1497</span> <span class="comment">/* Define to 1 if you have the <intrinsics.h> header file. */</span></div>
-<div class="line"><a name="l01498"></a><span class="lineno"> 1498</span> <span class="comment">/* #undef HAVE_INTRINSICS_H */</span></div>
-<div class="line"><a name="l01499"></a><span class="lineno"> 1499</span> </div>
-<div class="line"><a name="l01500"></a><span class="lineno"> 1500</span> <span class="comment">/* Define to 1 if you have the <inttypes.h> header file. */</span></div>
-<div class="line"><a name="l01501"></a><span class="lineno"> 1501</span> <span class="preprocessor">#define HAVE_INTTYPES_H 1</span></div>
-<div class="line"><a name="l01502"></a><span class="lineno"> 1502</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01503"></a><span class="lineno"> 1503</span> <span class="comment">/* Define to 1 if you have the `j0' function. */</span></div>
-<div class="line"><a name="l01504"></a><span class="lineno"> 1504</span> <span class="comment">/* #undef HAVE_J0 */</span></div>
-<div class="line"><a name="l01505"></a><span class="lineno"> 1505</span> </div>
-<div class="line"><a name="l01506"></a><span class="lineno"> 1506</span> <span class="comment">/* Define to 1 if you have the `j0f' function. */</span></div>
-<div class="line"><a name="l01507"></a><span class="lineno"> 1507</span> <span class="comment">/* #undef HAVE_J0F */</span></div>
-<div class="line"><a name="l01508"></a><span class="lineno"> 1508</span> </div>
-<div class="line"><a name="l01509"></a><span class="lineno"> 1509</span> <span class="comment">/* Define to 1 if you have the `j0l' function. */</span></div>
-<div class="line"><a name="l01510"></a><span class="lineno"> 1510</span> <span class="comment">/* #undef HAVE_J0L */</span></div>
-<div class="line"><a name="l01511"></a><span class="lineno"> 1511</span> </div>
-<div class="line"><a name="l01512"></a><span class="lineno"> 1512</span> <span class="comment">/* Define to 1 if you have the `j1' function. */</span></div>
-<div class="line"><a name="l01513"></a><span class="lineno"> 1513</span> <span class="comment">/* #undef HAVE_J1 */</span></div>
-<div class="line"><a name="l01514"></a><span class="lineno"> 1514</span> </div>
-<div class="line"><a name="l01515"></a><span class="lineno"> 1515</span> <span class="comment">/* Define to 1 if you have the `j1f' function. */</span></div>
-<div class="line"><a name="l01516"></a><span class="lineno"> 1516</span> <span class="comment">/* #undef HAVE_J1F */</span></div>
-<div class="line"><a name="l01517"></a><span class="lineno"> 1517</span> </div>
-<div class="line"><a name="l01518"></a><span class="lineno"> 1518</span> <span class="comment">/* Define to 1 if you have the `j1l' function. */</span></div>
-<div class="line"><a name="l01519"></a><span class="lineno"> 1519</span> <span class="comment">/* #undef HAVE_J1L */</span></div>
-<div class="line"><a name="l01520"></a><span class="lineno"> 1520</span> </div>
-<div class="line"><a name="l01521"></a><span class="lineno"> 1521</span> <span class="comment">/* Define to 1 if you have the `jn' function. */</span></div>
-<div class="line"><a name="l01522"></a><span class="lineno"> 1522</span> <span class="comment">/* #undef HAVE_JN */</span></div>
-<div class="line"><a name="l01523"></a><span class="lineno"> 1523</span> </div>
-<div class="line"><a name="l01524"></a><span class="lineno"> 1524</span> <span class="comment">/* Define to 1 if you have the `jnf' function. */</span></div>
-<div class="line"><a name="l01525"></a><span class="lineno"> 1525</span> <span class="comment">/* #undef HAVE_JNF */</span></div>
-<div class="line"><a name="l01526"></a><span class="lineno"> 1526</span> </div>
-<div class="line"><a name="l01527"></a><span class="lineno"> 1527</span> <span class="comment">/* Define to 1 if you have the `jnl' function. */</span></div>
-<div class="line"><a name="l01528"></a><span class="lineno"> 1528</span> <span class="comment">/* #undef HAVE_JNL */</span></div>
-<div class="line"><a name="l01529"></a><span class="lineno"> 1529</span> </div>
-<div class="line"><a name="l01530"></a><span class="lineno"> 1530</span> <span class="comment">/* Define to 1 if you have the `ldexp' function. */</span></div>
-<div class="line"><a name="l01531"></a><span class="lineno"> 1531</span> <span class="preprocessor">#define HAVE_LDEXP 1</span></div>
-<div class="line"><a name="l01532"></a><span class="lineno"> 1532</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01533"></a><span class="lineno"> 1533</span> <span class="comment">/* Define to 1 if you have the `ldexpf' function. */</span></div>
-<div class="line"><a name="l01534"></a><span class="lineno"> 1534</span> <span class="comment">/* #undef HAVE_LDEXPF */</span></div>
-<div class="line"><a name="l01535"></a><span class="lineno"> 1535</span> </div>
-<div class="line"><a name="l01536"></a><span class="lineno"> 1536</span> <span class="comment">/* Define to 1 if you have the `ldexpl' function. */</span></div>
-<div class="line"><a name="l01537"></a><span class="lineno"> 1537</span> <span class="comment">/* #undef HAVE_LDEXPL */</span></div>
-<div class="line"><a name="l01538"></a><span class="lineno"> 1538</span> </div>
-<div class="line"><a name="l01539"></a><span class="lineno"> 1539</span> <span class="comment">/* Define to 1 if you have the `lgamma' function. */</span></div>
-<div class="line"><a name="l01540"></a><span class="lineno"> 1540</span> <span class="comment">/* #undef HAVE_LGAMMA */</span></div>
-<div class="line"><a name="l01541"></a><span class="lineno"> 1541</span> </div>
-<div class="line"><a name="l01542"></a><span class="lineno"> 1542</span> <span class="comment">/* Define to 1 if you have the `lgammaf' function. */</span></div>
-<div class="line"><a name="l01543"></a><span class="lineno"> 1543</span> <span class="comment">/* #undef HAVE_LGAMMAF */</span></div>
-<div class="line"><a name="l01544"></a><span class="lineno"> 1544</span> </div>
-<div class="line"><a name="l01545"></a><span class="lineno"> 1545</span> <span class="comment">/* Define to 1 if you have the `lgammal' function. */</span></div>
-<div class="line"><a name="l01546"></a><span class="lineno"> 1546</span> <span class="comment">/* #undef HAVE_LGAMMAL */</span></div>
-<div class="line"><a name="l01547"></a><span class="lineno"> 1547</span> </div>
-<div class="line"><a name="l01548"></a><span class="lineno"> 1548</span> <span class="comment">/* Define to 1 if you have the `fftw3' library (-lfftw3). */</span></div>
-<div class="line"><a name="l01549"></a><span class="lineno"> 1549</span> <span class="preprocessor">#define HAVE_LIBFFTW3 1</span></div>
-<div class="line"><a name="l01550"></a><span class="lineno"> 1550</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01551"></a><span class="lineno"> 1551</span> <span class="comment">/* Define to 1 if you have the `m' library (-lm). */</span></div>
-<div class="line"><a name="l01552"></a><span class="lineno"> 1552</span> <span class="preprocessor">#define HAVE_LIBM 1</span></div>
-<div class="line"><a name="l01553"></a><span class="lineno"> 1553</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01554"></a><span class="lineno"> 1554</span> <span class="comment">/* Define to 1 if you have the <limits.h> header file. */</span></div>
-<div class="line"><a name="l01555"></a><span class="lineno"> 1555</span> <span class="preprocessor">#define HAVE_LIMITS_H 1</span></div>
-<div class="line"><a name="l01556"></a><span class="lineno"> 1556</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01557"></a><span class="lineno"> 1557</span> <span class="comment">/* Define to 1 if you have the `llrint' function. */</span></div>
-<div class="line"><a name="l01558"></a><span class="lineno"> 1558</span> <span class="comment">/* #undef HAVE_LLRINT */</span></div>
-<div class="line"><a name="l01559"></a><span class="lineno"> 1559</span> </div>
-<div class="line"><a name="l01560"></a><span class="lineno"> 1560</span> <span class="comment">/* Define to 1 if you have the `llrintf' function. */</span></div>
-<div class="line"><a name="l01561"></a><span class="lineno"> 1561</span> <span class="comment">/* #undef HAVE_LLRINTF */</span></div>
-<div class="line"><a name="l01562"></a><span class="lineno"> 1562</span> </div>
-<div class="line"><a name="l01563"></a><span class="lineno"> 1563</span> <span class="comment">/* Define to 1 if you have the `llrintl' function. */</span></div>
-<div class="line"><a name="l01564"></a><span class="lineno"> 1564</span> <span class="comment">/* #undef HAVE_LLRINTL */</span></div>
-<div class="line"><a name="l01565"></a><span class="lineno"> 1565</span> </div>
-<div class="line"><a name="l01566"></a><span class="lineno"> 1566</span> <span class="comment">/* Define to 1 if you have the `llround' function. */</span></div>
-<div class="line"><a name="l01567"></a><span class="lineno"> 1567</span> <span class="comment">/* #undef HAVE_LLROUND */</span></div>
-<div class="line"><a name="l01568"></a><span class="lineno"> 1568</span> </div>
-<div class="line"><a name="l01569"></a><span class="lineno"> 1569</span> <span class="comment">/* Define to 1 if you have the `llroundf' function. */</span></div>
-<div class="line"><a name="l01570"></a><span class="lineno"> 1570</span> <span class="comment">/* #undef HAVE_LLROUNDF */</span></div>
-<div class="line"><a name="l01571"></a><span class="lineno"> 1571</span> </div>
-<div class="line"><a name="l01572"></a><span class="lineno"> 1572</span> <span class="comment">/* Define to 1 if you have the `llroundl' function. */</span></div>
-<div class="line"><a name="l01573"></a><span class="lineno"> 1573</span> <span class="comment">/* #undef HAVE_LLROUNDL */</span></div>
-<div class="line"><a name="l01574"></a><span class="lineno"> 1574</span> </div>
-<div class="line"><a name="l01575"></a><span class="lineno"> 1575</span> <span class="comment">/* Define to 1 if you have the `log' function. */</span></div>
-<div class="line"><a name="l01576"></a><span class="lineno"> 1576</span> <span class="comment">/* #undef HAVE_LOG */</span></div>
-<div class="line"><a name="l01577"></a><span class="lineno"> 1577</span> </div>
-<div class="line"><a name="l01578"></a><span class="lineno"> 1578</span> <span class="comment">/* Define to 1 if you have the `log10' function. */</span></div>
-<div class="line"><a name="l01579"></a><span class="lineno"> 1579</span> <span class="comment">/* #undef HAVE_LOG10 */</span></div>
-<div class="line"><a name="l01580"></a><span class="lineno"> 1580</span> </div>
-<div class="line"><a name="l01581"></a><span class="lineno"> 1581</span> <span class="comment">/* Define to 1 if you have the `log10f' function. */</span></div>
-<div class="line"><a name="l01582"></a><span class="lineno"> 1582</span> <span class="comment">/* #undef HAVE_LOG10F */</span></div>
-<div class="line"><a name="l01583"></a><span class="lineno"> 1583</span> </div>
-<div class="line"><a name="l01584"></a><span class="lineno"> 1584</span> <span class="comment">/* Define to 1 if you have the `log10l' function. */</span></div>
-<div class="line"><a name="l01585"></a><span class="lineno"> 1585</span> <span class="comment">/* #undef HAVE_LOG10L */</span></div>
-<div class="line"><a name="l01586"></a><span class="lineno"> 1586</span> </div>
-<div class="line"><a name="l01587"></a><span class="lineno"> 1587</span> <span class="comment">/* Define to 1 if you have the `log1p' function. */</span></div>
-<div class="line"><a name="l01588"></a><span class="lineno"> 1588</span> <span class="comment">/* #undef HAVE_LOG1P */</span></div>
-<div class="line"><a name="l01589"></a><span class="lineno"> 1589</span> </div>
-<div class="line"><a name="l01590"></a><span class="lineno"> 1590</span> <span class="comment">/* Define to 1 if you have the `log1pf' function. */</span></div>
-<div class="line"><a name="l01591"></a><span class="lineno"> 1591</span> <span class="comment">/* #undef HAVE_LOG1PF */</span></div>
-<div class="line"><a name="l01592"></a><span class="lineno"> 1592</span> </div>
-<div class="line"><a name="l01593"></a><span class="lineno"> 1593</span> <span class="comment">/* Define to 1 if you have the `log1pl' function. */</span></div>
-<div class="line"><a name="l01594"></a><span class="lineno"> 1594</span> <span class="comment">/* #undef HAVE_LOG1PL */</span></div>
-<div class="line"><a name="l01595"></a><span class="lineno"> 1595</span> </div>
-<div class="line"><a name="l01596"></a><span class="lineno"> 1596</span> <span class="comment">/* Define to 1 if you have the `log2' function. */</span></div>
-<div class="line"><a name="l01597"></a><span class="lineno"> 1597</span> <span class="comment">/* #undef HAVE_LOG2 */</span></div>
-<div class="line"><a name="l01598"></a><span class="lineno"> 1598</span> </div>
-<div class="line"><a name="l01599"></a><span class="lineno"> 1599</span> <span class="comment">/* Define to 1 if you have the `log2f' function. */</span></div>
-<div class="line"><a name="l01600"></a><span class="lineno"> 1600</span> <span class="comment">/* #undef HAVE_LOG2F */</span></div>
-<div class="line"><a name="l01601"></a><span class="lineno"> 1601</span> </div>
-<div class="line"><a name="l01602"></a><span class="lineno"> 1602</span> <span class="comment">/* Define to 1 if you have the `log2l' function. */</span></div>
-<div class="line"><a name="l01603"></a><span class="lineno"> 1603</span> <span class="comment">/* #undef HAVE_LOG2L */</span></div>
-<div class="line"><a name="l01604"></a><span class="lineno"> 1604</span> </div>
-<div class="line"><a name="l01605"></a><span class="lineno"> 1605</span> <span class="comment">/* Define to 1 if you have the `logb' function. */</span></div>
-<div class="line"><a name="l01606"></a><span class="lineno"> 1606</span> <span class="comment">/* #undef HAVE_LOGB */</span></div>
-<div class="line"><a name="l01607"></a><span class="lineno"> 1607</span> </div>
-<div class="line"><a name="l01608"></a><span class="lineno"> 1608</span> <span class="comment">/* Define to 1 if you have the `logbf' function. */</span></div>
-<div class="line"><a name="l01609"></a><span class="lineno"> 1609</span> <span class="comment">/* #undef HAVE_LOGBF */</span></div>
-<div class="line"><a name="l01610"></a><span class="lineno"> 1610</span> </div>
-<div class="line"><a name="l01611"></a><span class="lineno"> 1611</span> <span class="comment">/* Define to 1 if you have the `logbl' function. */</span></div>
-<div class="line"><a name="l01612"></a><span class="lineno"> 1612</span> <span class="comment">/* #undef HAVE_LOGBL */</span></div>
-<div class="line"><a name="l01613"></a><span class="lineno"> 1613</span> </div>
-<div class="line"><a name="l01614"></a><span class="lineno"> 1614</span> <span class="comment">/* Define to 1 if you have the `logf' function. */</span></div>
-<div class="line"><a name="l01615"></a><span class="lineno"> 1615</span> <span class="comment">/* #undef HAVE_LOGF */</span></div>
-<div class="line"><a name="l01616"></a><span class="lineno"> 1616</span> </div>
-<div class="line"><a name="l01617"></a><span class="lineno"> 1617</span> <span class="comment">/* Define to 1 if you have the `logl' function. */</span></div>
-<div class="line"><a name="l01618"></a><span class="lineno"> 1618</span> <span class="comment">/* #undef HAVE_LOGL */</span></div>
-<div class="line"><a name="l01619"></a><span class="lineno"> 1619</span> </div>
-<div class="line"><a name="l01620"></a><span class="lineno"> 1620</span> <span class="comment">/* Define to 1 if the compiler supports 'long double' */</span></div>
-<div class="line"><a name="l01621"></a><span class="lineno"> 1621</span> <span class="preprocessor">#define HAVE_LONG_DOUBLE 1</span></div>
-<div class="line"><a name="l01622"></a><span class="lineno"> 1622</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01623"></a><span class="lineno"> 1623</span> <span class="comment">/* Define to 1 if you have the `lrint' function. */</span></div>
-<div class="line"><a name="l01624"></a><span class="lineno"> 1624</span> <span class="comment">/* #undef HAVE_LRINT */</span></div>
-<div class="line"><a name="l01625"></a><span class="lineno"> 1625</span> </div>
-<div class="line"><a name="l01626"></a><span class="lineno"> 1626</span> <span class="comment">/* Define to 1 if you have the `lrintf' function. */</span></div>
-<div class="line"><a name="l01627"></a><span class="lineno"> 1627</span> <span class="comment">/* #undef HAVE_LRINTF */</span></div>
-<div class="line"><a name="l01628"></a><span class="lineno"> 1628</span> </div>
-<div class="line"><a name="l01629"></a><span class="lineno"> 1629</span> <span class="comment">/* Define to 1 if you have the `lrintl' function. */</span></div>
-<div class="line"><a name="l01630"></a><span class="lineno"> 1630</span> <span class="comment">/* #undef HAVE_LRINTL */</span></div>
-<div class="line"><a name="l01631"></a><span class="lineno"> 1631</span> </div>
-<div class="line"><a name="l01632"></a><span class="lineno"> 1632</span> <span class="comment">/* Define to 1 if you have the `lround' function. */</span></div>
-<div class="line"><a name="l01633"></a><span class="lineno"> 1633</span> <span class="comment">/* #undef HAVE_LROUND */</span></div>
-<div class="line"><a name="l01634"></a><span class="lineno"> 1634</span> </div>
-<div class="line"><a name="l01635"></a><span class="lineno"> 1635</span> <span class="comment">/* Define to 1 if you have the `lroundf' function. */</span></div>
-<div class="line"><a name="l01636"></a><span class="lineno"> 1636</span> <span class="comment">/* #undef HAVE_LROUNDF */</span></div>
-<div class="line"><a name="l01637"></a><span class="lineno"> 1637</span> </div>
-<div class="line"><a name="l01638"></a><span class="lineno"> 1638</span> <span class="comment">/* Define to 1 if you have the `lroundl' function. */</span></div>
-<div class="line"><a name="l01639"></a><span class="lineno"> 1639</span> <span class="comment">/* #undef HAVE_LROUNDL */</span></div>
-<div class="line"><a name="l01640"></a><span class="lineno"> 1640</span> </div>
-<div class="line"><a name="l01641"></a><span class="lineno"> 1641</span> <span class="comment">/* Define to 1 if you have the `mach_absolute_time' function. */</span></div>
-<div class="line"><a name="l01642"></a><span class="lineno"> 1642</span> <span class="comment">/* #undef HAVE_MACH_ABSOLUTE_TIME */</span></div>
-<div class="line"><a name="l01643"></a><span class="lineno"> 1643</span> </div>
-<div class="line"><a name="l01644"></a><span class="lineno"> 1644</span> <span class="comment">/* Define to 1 if you have the <mach/mach_time.h> header file. */</span></div>
-<div class="line"><a name="l01645"></a><span class="lineno"> 1645</span> <span class="comment">/* #undef HAVE_MACH_MACH_TIME_H */</span></div>
-<div class="line"><a name="l01646"></a><span class="lineno"> 1646</span> </div>
-<div class="line"><a name="l01647"></a><span class="lineno"> 1647</span> <span class="comment">/* Define to 1 if you have the <malloc.h> header file. */</span></div>
-<div class="line"><a name="l01648"></a><span class="lineno"> 1648</span> <span class="preprocessor">#define HAVE_MALLOC_H 1</span></div>
-<div class="line"><a name="l01649"></a><span class="lineno"> 1649</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01650"></a><span class="lineno"> 1650</span> <span class="comment">/* Define to 1 if you have the <math.h> header file. */</span></div>
-<div class="line"><a name="l01651"></a><span class="lineno"> 1651</span> <span class="preprocessor">#define HAVE_MATH_H 1</span></div>
-<div class="line"><a name="l01652"></a><span class="lineno"> 1652</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01653"></a><span class="lineno"> 1653</span> <span class="comment">/* Define to 1 if compilation of Matlab interface only succeeds when macro</span></div>
-<div class="line"><a name="l01654"></a><span class="lineno"> 1654</span> <span class="comment"> __STDC_UTF_16__ not defined. */</span></div>
-<div class="line"><a name="l01655"></a><span class="lineno"> 1655</span> <span class="comment">/* #undef HAVE_MATLAB_GCC_REQUIRE_UNDEF_STDC_UTF_16 */</span></div>
-<div class="line"><a name="l01656"></a><span class="lineno"> 1656</span> </div>
-<div class="line"><a name="l01657"></a><span class="lineno"> 1657</span> <span class="comment">/* Define to 1 if you have the `memalign' function. */</span></div>
-<div class="line"><a name="l01658"></a><span class="lineno"> 1658</span> <span class="preprocessor">#define HAVE_MEMALIGN 1</span></div>
-<div class="line"><a name="l01659"></a><span class="lineno"> 1659</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01660"></a><span class="lineno"> 1660</span> <span class="comment">/* Define to 1 if you have the <memory.h> header file. */</span></div>
-<div class="line"><a name="l01661"></a><span class="lineno"> 1661</span> <span class="preprocessor">#define HAVE_MEMORY_H 1</span></div>
-<div class="line"><a name="l01662"></a><span class="lineno"> 1662</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01663"></a><span class="lineno"> 1663</span> <span class="comment">/* Define to 1 if you have the `memset' function. */</span></div>
-<div class="line"><a name="l01664"></a><span class="lineno"> 1664</span> <span class="preprocessor">#define HAVE_MEMSET 1</span></div>
-<div class="line"><a name="l01665"></a><span class="lineno"> 1665</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01666"></a><span class="lineno"> 1666</span> <span class="comment">/* Define to have the file mexversion.c */</span></div>
-<div class="line"><a name="l01667"></a><span class="lineno"> 1667</span> <span class="comment">/* #undef HAVE_MEXVERSION_C */</span></div>
-<div class="line"><a name="l01668"></a><span class="lineno"> 1668</span> </div>
-<div class="line"><a name="l01669"></a><span class="lineno"> 1669</span> <span class="comment">/* Define to enable use of MIPS ZBus cycle-counter. */</span></div>
-<div class="line"><a name="l01670"></a><span class="lineno"> 1670</span> <span class="comment">/* #undef HAVE_MIPS_ZBUS_TIMER */</span></div>
-<div class="line"><a name="l01671"></a><span class="lineno"> 1671</span> </div>
-<div class="line"><a name="l01672"></a><span class="lineno"> 1672</span> <span class="comment">/* Define to 1 if you have the `modf' function. */</span></div>
-<div class="line"><a name="l01673"></a><span class="lineno"> 1673</span> <span class="preprocessor">#define HAVE_MODF 1</span></div>
-<div class="line"><a name="l01674"></a><span class="lineno"> 1674</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01675"></a><span class="lineno"> 1675</span> <span class="comment">/* Define to 1 if you have the `modff' function. */</span></div>
-<div class="line"><a name="l01676"></a><span class="lineno"> 1676</span> <span class="comment">/* #undef HAVE_MODFF */</span></div>
-<div class="line"><a name="l01677"></a><span class="lineno"> 1677</span> </div>
-<div class="line"><a name="l01678"></a><span class="lineno"> 1678</span> <span class="comment">/* Define to 1 if you have the `modfl' function. */</span></div>
-<div class="line"><a name="l01679"></a><span class="lineno"> 1679</span> <span class="comment">/* #undef HAVE_MODFL */</span></div>
-<div class="line"><a name="l01680"></a><span class="lineno"> 1680</span> </div>
-<div class="line"><a name="l01681"></a><span class="lineno"> 1681</span> <span class="comment">/* Define to 1 if you have the `nan' function. */</span></div>
-<div class="line"><a name="l01682"></a><span class="lineno"> 1682</span> <span class="comment">/* #undef HAVE_NAN */</span></div>
-<div class="line"><a name="l01683"></a><span class="lineno"> 1683</span> </div>
-<div class="line"><a name="l01684"></a><span class="lineno"> 1684</span> <span class="comment">/* Define to 1 if you have the `nanf' function. */</span></div>
-<div class="line"><a name="l01685"></a><span class="lineno"> 1685</span> <span class="comment">/* #undef HAVE_NANF */</span></div>
-<div class="line"><a name="l01686"></a><span class="lineno"> 1686</span> </div>
-<div class="line"><a name="l01687"></a><span class="lineno"> 1687</span> <span class="comment">/* Define to 1 if you have the `nanl' function. */</span></div>
-<div class="line"><a name="l01688"></a><span class="lineno"> 1688</span> <span class="comment">/* #undef HAVE_NANL */</span></div>
-<div class="line"><a name="l01689"></a><span class="lineno"> 1689</span> </div>
-<div class="line"><a name="l01690"></a><span class="lineno"> 1690</span> <span class="comment">/* Define to 1 if you have the `nanosleep' function. */</span></div>
-<div class="line"><a name="l01691"></a><span class="lineno"> 1691</span> <span class="preprocessor">#define HAVE_NANOSLEEP 1</span></div>
-<div class="line"><a name="l01692"></a><span class="lineno"> 1692</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01693"></a><span class="lineno"> 1693</span> <span class="comment">/* Define to 1 if you have the `nearbyint' function. */</span></div>
-<div class="line"><a name="l01694"></a><span class="lineno"> 1694</span> <span class="comment">/* #undef HAVE_NEARBYINT */</span></div>
-<div class="line"><a name="l01695"></a><span class="lineno"> 1695</span> </div>
-<div class="line"><a name="l01696"></a><span class="lineno"> 1696</span> <span class="comment">/* Define to 1 if you have the `nearbyintf' function. */</span></div>
-<div class="line"><a name="l01697"></a><span class="lineno"> 1697</span> <span class="comment">/* #undef HAVE_NEARBYINTF */</span></div>
-<div class="line"><a name="l01698"></a><span class="lineno"> 1698</span> </div>
-<div class="line"><a name="l01699"></a><span class="lineno"> 1699</span> <span class="comment">/* Define to 1 if you have the `nearbyintl' function. */</span></div>
-<div class="line"><a name="l01700"></a><span class="lineno"> 1700</span> <span class="comment">/* #undef HAVE_NEARBYINTL */</span></div>
-<div class="line"><a name="l01701"></a><span class="lineno"> 1701</span> </div>
-<div class="line"><a name="l01702"></a><span class="lineno"> 1702</span> <span class="comment">/* Define to 1 if you have the `nextafter' function. */</span></div>
-<div class="line"><a name="l01703"></a><span class="lineno"> 1703</span> <span class="comment">/* #undef HAVE_NEXTAFTER */</span></div>
-<div class="line"><a name="l01704"></a><span class="lineno"> 1704</span> </div>
-<div class="line"><a name="l01705"></a><span class="lineno"> 1705</span> <span class="comment">/* Define to 1 if you have the `nextafterf' function. */</span></div>
-<div class="line"><a name="l01706"></a><span class="lineno"> 1706</span> <span class="comment">/* #undef HAVE_NEXTAFTERF */</span></div>
-<div class="line"><a name="l01707"></a><span class="lineno"> 1707</span> </div>
-<div class="line"><a name="l01708"></a><span class="lineno"> 1708</span> <span class="comment">/* Define to 1 if you have the `nextafterl' function. */</span></div>
-<div class="line"><a name="l01709"></a><span class="lineno"> 1709</span> <span class="comment">/* #undef HAVE_NEXTAFTERL */</span></div>
-<div class="line"><a name="l01710"></a><span class="lineno"> 1710</span> </div>
-<div class="line"><a name="l01711"></a><span class="lineno"> 1711</span> <span class="comment">/* Define if OpenMP is enabled */</span></div>
-<div class="line"><a name="l01712"></a><span class="lineno"> 1712</span> <span class="preprocessor">#define HAVE_OPENMP 1</span></div>
-<div class="line"><a name="l01713"></a><span class="lineno"> 1713</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01714"></a><span class="lineno"> 1714</span> <span class="comment">/* Define to 1 if you have the `posix_memalign' function. */</span></div>
-<div class="line"><a name="l01715"></a><span class="lineno"> 1715</span> <span class="preprocessor">#define HAVE_POSIX_MEMALIGN 1</span></div>
-<div class="line"><a name="l01716"></a><span class="lineno"> 1716</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01717"></a><span class="lineno"> 1717</span> <span class="comment">/* Define to 1 if you have the `pow' function. */</span></div>
-<div class="line"><a name="l01718"></a><span class="lineno"> 1718</span> <span class="comment">/* #undef HAVE_POW */</span></div>
-<div class="line"><a name="l01719"></a><span class="lineno"> 1719</span> </div>
-<div class="line"><a name="l01720"></a><span class="lineno"> 1720</span> <span class="comment">/* Define to 1 if you have the `powf' function. */</span></div>
-<div class="line"><a name="l01721"></a><span class="lineno"> 1721</span> <span class="comment">/* #undef HAVE_POWF */</span></div>
-<div class="line"><a name="l01722"></a><span class="lineno"> 1722</span> </div>
-<div class="line"><a name="l01723"></a><span class="lineno"> 1723</span> <span class="comment">/* Define to 1 if you have the `powl' function. */</span></div>
-<div class="line"><a name="l01724"></a><span class="lineno"> 1724</span> <span class="comment">/* #undef HAVE_POWL */</span></div>
-<div class="line"><a name="l01725"></a><span class="lineno"> 1725</span> </div>
-<div class="line"><a name="l01726"></a><span class="lineno"> 1726</span> <span class="comment">/* Define to 1 if you have the `read_real_time' function. */</span></div>
-<div class="line"><a name="l01727"></a><span class="lineno"> 1727</span> <span class="comment">/* #undef HAVE_READ_REAL_TIME */</span></div>
-<div class="line"><a name="l01728"></a><span class="lineno"> 1728</span> </div>
-<div class="line"><a name="l01729"></a><span class="lineno"> 1729</span> <span class="comment">/* Define to 1 if you have the `remainder' function. */</span></div>
-<div class="line"><a name="l01730"></a><span class="lineno"> 1730</span> <span class="comment">/* #undef HAVE_REMAINDER */</span></div>
-<div class="line"><a name="l01731"></a><span class="lineno"> 1731</span> </div>
-<div class="line"><a name="l01732"></a><span class="lineno"> 1732</span> <span class="comment">/* Define to 1 if you have the `remainderf' function. */</span></div>
-<div class="line"><a name="l01733"></a><span class="lineno"> 1733</span> <span class="comment">/* #undef HAVE_REMAINDERF */</span></div>
-<div class="line"><a name="l01734"></a><span class="lineno"> 1734</span> </div>
-<div class="line"><a name="l01735"></a><span class="lineno"> 1735</span> <span class="comment">/* Define to 1 if you have the `remainderl' function. */</span></div>
-<div class="line"><a name="l01736"></a><span class="lineno"> 1736</span> <span class="comment">/* #undef HAVE_REMAINDERL */</span></div>
-<div class="line"><a name="l01737"></a><span class="lineno"> 1737</span> </div>
-<div class="line"><a name="l01738"></a><span class="lineno"> 1738</span> <span class="comment">/* Define to 1 if you have the `remquo' function. */</span></div>
-<div class="line"><a name="l01739"></a><span class="lineno"> 1739</span> <span class="comment">/* #undef HAVE_REMQUO */</span></div>
-<div class="line"><a name="l01740"></a><span class="lineno"> 1740</span> </div>
-<div class="line"><a name="l01741"></a><span class="lineno"> 1741</span> <span class="comment">/* Define to 1 if you have the `remquof' function. */</span></div>
-<div class="line"><a name="l01742"></a><span class="lineno"> 1742</span> <span class="comment">/* #undef HAVE_REMQUOF */</span></div>
-<div class="line"><a name="l01743"></a><span class="lineno"> 1743</span> </div>
-<div class="line"><a name="l01744"></a><span class="lineno"> 1744</span> <span class="comment">/* Define to 1 if you have the `remquol' function. */</span></div>
-<div class="line"><a name="l01745"></a><span class="lineno"> 1745</span> <span class="comment">/* #undef HAVE_REMQUOL */</span></div>
-<div class="line"><a name="l01746"></a><span class="lineno"> 1746</span> </div>
-<div class="line"><a name="l01747"></a><span class="lineno"> 1747</span> <span class="comment">/* Define to 1 if you have the `rint' function. */</span></div>
-<div class="line"><a name="l01748"></a><span class="lineno"> 1748</span> <span class="comment">/* #undef HAVE_RINT */</span></div>
-<div class="line"><a name="l01749"></a><span class="lineno"> 1749</span> </div>
-<div class="line"><a name="l01750"></a><span class="lineno"> 1750</span> <span class="comment">/* Define to 1 if you have the `rintf' function. */</span></div>
-<div class="line"><a name="l01751"></a><span class="lineno"> 1751</span> <span class="comment">/* #undef HAVE_RINTF */</span></div>
-<div class="line"><a name="l01752"></a><span class="lineno"> 1752</span> </div>
-<div class="line"><a name="l01753"></a><span class="lineno"> 1753</span> <span class="comment">/* Define to 1 if you have the `rintl' function. */</span></div>
-<div class="line"><a name="l01754"></a><span class="lineno"> 1754</span> <span class="comment">/* #undef HAVE_RINTL */</span></div>
-<div class="line"><a name="l01755"></a><span class="lineno"> 1755</span> </div>
-<div class="line"><a name="l01756"></a><span class="lineno"> 1756</span> <span class="comment">/* Define to 1 if you have the `round' function. */</span></div>
-<div class="line"><a name="l01757"></a><span class="lineno"> 1757</span> <span class="comment">/* #undef HAVE_ROUND */</span></div>
-<div class="line"><a name="l01758"></a><span class="lineno"> 1758</span> </div>
-<div class="line"><a name="l01759"></a><span class="lineno"> 1759</span> <span class="comment">/* Define to 1 if you have the `roundf' function. */</span></div>
-<div class="line"><a name="l01760"></a><span class="lineno"> 1760</span> <span class="comment">/* #undef HAVE_ROUNDF */</span></div>
-<div class="line"><a name="l01761"></a><span class="lineno"> 1761</span> </div>
-<div class="line"><a name="l01762"></a><span class="lineno"> 1762</span> <span class="comment">/* Define to 1 if you have the `roundl' function. */</span></div>
-<div class="line"><a name="l01763"></a><span class="lineno"> 1763</span> <span class="comment">/* #undef HAVE_ROUNDL */</span></div>
-<div class="line"><a name="l01764"></a><span class="lineno"> 1764</span> </div>
-<div class="line"><a name="l01765"></a><span class="lineno"> 1765</span> <span class="comment">/* Define to 1 if you have the `scalbln' function. */</span></div>
-<div class="line"><a name="l01766"></a><span class="lineno"> 1766</span> <span class="comment">/* #undef HAVE_SCALBLN */</span></div>
-<div class="line"><a name="l01767"></a><span class="lineno"> 1767</span> </div>
-<div class="line"><a name="l01768"></a><span class="lineno"> 1768</span> <span class="comment">/* Define to 1 if you have the `scalblnf' function. */</span></div>
-<div class="line"><a name="l01769"></a><span class="lineno"> 1769</span> <span class="comment">/* #undef HAVE_SCALBLNF */</span></div>
-<div class="line"><a name="l01770"></a><span class="lineno"> 1770</span> </div>
-<div class="line"><a name="l01771"></a><span class="lineno"> 1771</span> <span class="comment">/* Define to 1 if you have the `scalblnl' function. */</span></div>
-<div class="line"><a name="l01772"></a><span class="lineno"> 1772</span> <span class="comment">/* #undef HAVE_SCALBLNL */</span></div>
-<div class="line"><a name="l01773"></a><span class="lineno"> 1773</span> </div>
-<div class="line"><a name="l01774"></a><span class="lineno"> 1774</span> <span class="comment">/* Define to 1 if you have the `scalbn' function. */</span></div>
-<div class="line"><a name="l01775"></a><span class="lineno"> 1775</span> <span class="preprocessor">#define HAVE_SCALBN 1</span></div>
-<div class="line"><a name="l01776"></a><span class="lineno"> 1776</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01777"></a><span class="lineno"> 1777</span> <span class="comment">/* Define to 1 if you have the `scalbnf' function. */</span></div>
-<div class="line"><a name="l01778"></a><span class="lineno"> 1778</span> <span class="comment">/* #undef HAVE_SCALBNF */</span></div>
-<div class="line"><a name="l01779"></a><span class="lineno"> 1779</span> </div>
-<div class="line"><a name="l01780"></a><span class="lineno"> 1780</span> <span class="comment">/* Define to 1 if you have the `scalbnl' function. */</span></div>
-<div class="line"><a name="l01781"></a><span class="lineno"> 1781</span> <span class="comment">/* #undef HAVE_SCALBNL */</span></div>
-<div class="line"><a name="l01782"></a><span class="lineno"> 1782</span> </div>
-<div class="line"><a name="l01783"></a><span class="lineno"> 1783</span> <span class="comment">/* Define to 1 if you have the `sin' function. */</span></div>
-<div class="line"><a name="l01784"></a><span class="lineno"> 1784</span> <span class="comment">/* #undef HAVE_SIN */</span></div>
-<div class="line"><a name="l01785"></a><span class="lineno"> 1785</span> </div>
-<div class="line"><a name="l01786"></a><span class="lineno"> 1786</span> <span class="comment">/* Define to 1 if you have the `sinf' function. */</span></div>
-<div class="line"><a name="l01787"></a><span class="lineno"> 1787</span> <span class="comment">/* #undef HAVE_SINF */</span></div>
-<div class="line"><a name="l01788"></a><span class="lineno"> 1788</span> </div>
-<div class="line"><a name="l01789"></a><span class="lineno"> 1789</span> <span class="comment">/* Define to 1 if you have the `sinh' function. */</span></div>
-<div class="line"><a name="l01790"></a><span class="lineno"> 1790</span> <span class="comment">/* #undef HAVE_SINH */</span></div>
-<div class="line"><a name="l01791"></a><span class="lineno"> 1791</span> </div>
-<div class="line"><a name="l01792"></a><span class="lineno"> 1792</span> <span class="comment">/* Define to 1 if you have the `sinhf' function. */</span></div>
-<div class="line"><a name="l01793"></a><span class="lineno"> 1793</span> <span class="comment">/* #undef HAVE_SINHF */</span></div>
-<div class="line"><a name="l01794"></a><span class="lineno"> 1794</span> </div>
-<div class="line"><a name="l01795"></a><span class="lineno"> 1795</span> <span class="comment">/* Define to 1 if you have the `sinhl' function. */</span></div>
-<div class="line"><a name="l01796"></a><span class="lineno"> 1796</span> <span class="comment">/* #undef HAVE_SINHL */</span></div>
-<div class="line"><a name="l01797"></a><span class="lineno"> 1797</span> </div>
-<div class="line"><a name="l01798"></a><span class="lineno"> 1798</span> <span class="comment">/* Define to 1 if you have the `sinl' function. */</span></div>
-<div class="line"><a name="l01799"></a><span class="lineno"> 1799</span> <span class="comment">/* #undef HAVE_SINL */</span></div>
-<div class="line"><a name="l01800"></a><span class="lineno"> 1800</span> </div>
-<div class="line"><a name="l01801"></a><span class="lineno"> 1801</span> <span class="comment">/* Define to 1 if you have the `sleep' function. */</span></div>
-<div class="line"><a name="l01802"></a><span class="lineno"> 1802</span> <span class="preprocessor">#define HAVE_SLEEP 1</span></div>
-<div class="line"><a name="l01803"></a><span class="lineno"> 1803</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01804"></a><span class="lineno"> 1804</span> <span class="comment">/* Define to 1 if you have the `snprintf' function. */</span></div>
-<div class="line"><a name="l01805"></a><span class="lineno"> 1805</span> <span class="preprocessor">#define HAVE_SNPRINTF 1</span></div>
-<div class="line"><a name="l01806"></a><span class="lineno"> 1806</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01807"></a><span class="lineno"> 1807</span> <span class="comment">/* Define to 1 if you have the `sqrt' function. */</span></div>
-<div class="line"><a name="l01808"></a><span class="lineno"> 1808</span> <span class="comment">/* #undef HAVE_SQRT */</span></div>
-<div class="line"><a name="l01809"></a><span class="lineno"> 1809</span> </div>
-<div class="line"><a name="l01810"></a><span class="lineno"> 1810</span> <span class="comment">/* Define to 1 if you have the `sqrtf' function. */</span></div>
-<div class="line"><a name="l01811"></a><span class="lineno"> 1811</span> <span class="comment">/* #undef HAVE_SQRTF */</span></div>
-<div class="line"><a name="l01812"></a><span class="lineno"> 1812</span> </div>
-<div class="line"><a name="l01813"></a><span class="lineno"> 1813</span> <span class="comment">/* Define to 1 if you have the `sqrtl' function. */</span></div>
-<div class="line"><a name="l01814"></a><span class="lineno"> 1814</span> <span class="comment">/* #undef HAVE_SQRTL */</span></div>
-<div class="line"><a name="l01815"></a><span class="lineno"> 1815</span> </div>
-<div class="line"><a name="l01816"></a><span class="lineno"> 1816</span> <span class="comment">/* Define to 1 if you have the `srand48' function. */</span></div>
-<div class="line"><a name="l01817"></a><span class="lineno"> 1817</span> <span class="preprocessor">#define HAVE_SRAND48 1</span></div>
-<div class="line"><a name="l01818"></a><span class="lineno"> 1818</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01819"></a><span class="lineno"> 1819</span> <span class="comment">/* Define to 1 if you have the <stdarg.h> header file. */</span></div>
-<div class="line"><a name="l01820"></a><span class="lineno"> 1820</span> <span class="preprocessor">#define HAVE_STDARG_H 1</span></div>
-<div class="line"><a name="l01821"></a><span class="lineno"> 1821</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01822"></a><span class="lineno"> 1822</span> <span class="comment">/* Define to 1 if you have the <stdbool.h> header file. */</span></div>
-<div class="line"><a name="l01823"></a><span class="lineno"> 1823</span> <span class="preprocessor">#define HAVE_STDBOOL_H 1</span></div>
-<div class="line"><a name="l01824"></a><span class="lineno"> 1824</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01825"></a><span class="lineno"> 1825</span> <span class="comment">/* Define to 1 if you have the <stddef.h> header file. */</span></div>
-<div class="line"><a name="l01826"></a><span class="lineno"> 1826</span> <span class="preprocessor">#define HAVE_STDDEF_H 1</span></div>
-<div class="line"><a name="l01827"></a><span class="lineno"> 1827</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01828"></a><span class="lineno"> 1828</span> <span class="comment">/* Define to 1 if you have the <stdint.h> header file. */</span></div>
-<div class="line"><a name="l01829"></a><span class="lineno"> 1829</span> <span class="preprocessor">#define HAVE_STDINT_H 1</span></div>
-<div class="line"><a name="l01830"></a><span class="lineno"> 1830</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01831"></a><span class="lineno"> 1831</span> <span class="comment">/* Define to 1 if you have the <stdio.h> header file. */</span></div>
-<div class="line"><a name="l01832"></a><span class="lineno"> 1832</span> <span class="preprocessor">#define HAVE_STDIO_H 1</span></div>
-<div class="line"><a name="l01833"></a><span class="lineno"> 1833</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01834"></a><span class="lineno"> 1834</span> <span class="comment">/* Define to 1 if you have the <stdlib.h> header file. */</span></div>
-<div class="line"><a name="l01835"></a><span class="lineno"> 1835</span> <span class="preprocessor">#define HAVE_STDLIB_H 1</span></div>
-<div class="line"><a name="l01836"></a><span class="lineno"> 1836</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01837"></a><span class="lineno"> 1837</span> <span class="comment">/* Define to 1 if you have the <strings.h> header file. */</span></div>
-<div class="line"><a name="l01838"></a><span class="lineno"> 1838</span> <span class="preprocessor">#define HAVE_STRINGS_H 1</span></div>
-<div class="line"><a name="l01839"></a><span class="lineno"> 1839</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01840"></a><span class="lineno"> 1840</span> <span class="comment">/* Define to 1 if you have the <string.h> header file. */</span></div>
-<div class="line"><a name="l01841"></a><span class="lineno"> 1841</span> <span class="preprocessor">#define HAVE_STRING_H 1</span></div>
-<div class="line"><a name="l01842"></a><span class="lineno"> 1842</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01843"></a><span class="lineno"> 1843</span> <span class="comment">/* Define to 1 if you have the `sysctl' function. */</span></div>
-<div class="line"><a name="l01844"></a><span class="lineno"> 1844</span> <span class="preprocessor">#define HAVE_SYSCTL 1</span></div>
-<div class="line"><a name="l01845"></a><span class="lineno"> 1845</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01846"></a><span class="lineno"> 1846</span> <span class="comment">/* Define to 1 if you have the <sys/stat.h> header file. */</span></div>
-<div class="line"><a name="l01847"></a><span class="lineno"> 1847</span> <span class="preprocessor">#define HAVE_SYS_STAT_H 1</span></div>
-<div class="line"><a name="l01848"></a><span class="lineno"> 1848</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01849"></a><span class="lineno"> 1849</span> <span class="comment">/* Define to 1 if you have the <sys/time.h> header file. */</span></div>
-<div class="line"><a name="l01850"></a><span class="lineno"> 1850</span> <span class="preprocessor">#define HAVE_SYS_TIME_H 1</span></div>
-<div class="line"><a name="l01851"></a><span class="lineno"> 1851</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01852"></a><span class="lineno"> 1852</span> <span class="comment">/* Define to 1 if you have the <sys/types.h> header file. */</span></div>
-<div class="line"><a name="l01853"></a><span class="lineno"> 1853</span> <span class="preprocessor">#define HAVE_SYS_TYPES_H 1</span></div>
-<div class="line"><a name="l01854"></a><span class="lineno"> 1854</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01855"></a><span class="lineno"> 1855</span> <span class="comment">/* Define to 1 if you have the `tan' function. */</span></div>
-<div class="line"><a name="l01856"></a><span class="lineno"> 1856</span> <span class="comment">/* #undef HAVE_TAN */</span></div>
-<div class="line"><a name="l01857"></a><span class="lineno"> 1857</span> </div>
-<div class="line"><a name="l01858"></a><span class="lineno"> 1858</span> <span class="comment">/* Define to 1 if you have the `tanf' function. */</span></div>
-<div class="line"><a name="l01859"></a><span class="lineno"> 1859</span> <span class="comment">/* #undef HAVE_TANF */</span></div>
-<div class="line"><a name="l01860"></a><span class="lineno"> 1860</span> </div>
-<div class="line"><a name="l01861"></a><span class="lineno"> 1861</span> <span class="comment">/* Define to 1 if you have the `tanh' function. */</span></div>
-<div class="line"><a name="l01862"></a><span class="lineno"> 1862</span> <span class="comment">/* #undef HAVE_TANH */</span></div>
-<div class="line"><a name="l01863"></a><span class="lineno"> 1863</span> </div>
-<div class="line"><a name="l01864"></a><span class="lineno"> 1864</span> <span class="comment">/* Define to 1 if you have the `tanhf' function. */</span></div>
-<div class="line"><a name="l01865"></a><span class="lineno"> 1865</span> <span class="comment">/* #undef HAVE_TANHF */</span></div>
-<div class="line"><a name="l01866"></a><span class="lineno"> 1866</span> </div>
-<div class="line"><a name="l01867"></a><span class="lineno"> 1867</span> <span class="comment">/* Define to 1 if you have the `tanhl' function. */</span></div>
-<div class="line"><a name="l01868"></a><span class="lineno"> 1868</span> <span class="comment">/* #undef HAVE_TANHL */</span></div>
-<div class="line"><a name="l01869"></a><span class="lineno"> 1869</span> </div>
-<div class="line"><a name="l01870"></a><span class="lineno"> 1870</span> <span class="comment">/* Define to 1 if you have the `tanl' function. */</span></div>
-<div class="line"><a name="l01871"></a><span class="lineno"> 1871</span> <span class="comment">/* #undef HAVE_TANL */</span></div>
-<div class="line"><a name="l01872"></a><span class="lineno"> 1872</span> </div>
-<div class="line"><a name="l01873"></a><span class="lineno"> 1873</span> <span class="comment">/* Define to 1 if you have the `tgamma' function. */</span></div>
-<div class="line"><a name="l01874"></a><span class="lineno"> 1874</span> <span class="comment">/* #undef HAVE_TGAMMA */</span></div>
-<div class="line"><a name="l01875"></a><span class="lineno"> 1875</span> </div>
-<div class="line"><a name="l01876"></a><span class="lineno"> 1876</span> <span class="comment">/* Define to 1 if you have the `tgammaf' function. */</span></div>
-<div class="line"><a name="l01877"></a><span class="lineno"> 1877</span> <span class="comment">/* #undef HAVE_TGAMMAF */</span></div>
-<div class="line"><a name="l01878"></a><span class="lineno"> 1878</span> </div>
-<div class="line"><a name="l01879"></a><span class="lineno"> 1879</span> <span class="comment">/* Define to 1 if you have the `tgammal' function. */</span></div>
-<div class="line"><a name="l01880"></a><span class="lineno"> 1880</span> <span class="comment">/* #undef HAVE_TGAMMAL */</span></div>
-<div class="line"><a name="l01881"></a><span class="lineno"> 1881</span> </div>
-<div class="line"><a name="l01882"></a><span class="lineno"> 1882</span> <span class="comment">/* Define to 1 if you have the `time_base_to_time' function. */</span></div>
-<div class="line"><a name="l01883"></a><span class="lineno"> 1883</span> <span class="comment">/* #undef HAVE_TIME_BASE_TO_TIME */</span></div>
-<div class="line"><a name="l01884"></a><span class="lineno"> 1884</span> </div>
-<div class="line"><a name="l01885"></a><span class="lineno"> 1885</span> <span class="comment">/* Define to 1 if you have the <time.h> header file. */</span></div>
-<div class="line"><a name="l01886"></a><span class="lineno"> 1886</span> <span class="preprocessor">#define HAVE_TIME_H 1</span></div>
-<div class="line"><a name="l01887"></a><span class="lineno"> 1887</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01888"></a><span class="lineno"> 1888</span> <span class="comment">/* Define to 1 if you have the `trunc' function. */</span></div>
-<div class="line"><a name="l01889"></a><span class="lineno"> 1889</span> <span class="comment">/* #undef HAVE_TRUNC */</span></div>
-<div class="line"><a name="l01890"></a><span class="lineno"> 1890</span> </div>
-<div class="line"><a name="l01891"></a><span class="lineno"> 1891</span> <span class="comment">/* Define to 1 if you have the `truncf' function. */</span></div>
-<div class="line"><a name="l01892"></a><span class="lineno"> 1892</span> <span class="comment">/* #undef HAVE_TRUNCF */</span></div>
-<div class="line"><a name="l01893"></a><span class="lineno"> 1893</span> </div>
-<div class="line"><a name="l01894"></a><span class="lineno"> 1894</span> <span class="comment">/* Define to 1 if you have the `truncl' function. */</span></div>
-<div class="line"><a name="l01895"></a><span class="lineno"> 1895</span> <span class="comment">/* #undef HAVE_TRUNCL */</span></div>
-<div class="line"><a name="l01896"></a><span class="lineno"> 1896</span> </div>
-<div class="line"><a name="l01897"></a><span class="lineno"> 1897</span> <span class="comment">/* Define to 1 if the system has the type `uintptr_t'. */</span></div>
-<div class="line"><a name="l01898"></a><span class="lineno"> 1898</span> <span class="preprocessor">#define HAVE_UINTPTR_T 1</span></div>
-<div class="line"><a name="l01899"></a><span class="lineno"> 1899</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01900"></a><span class="lineno"> 1900</span> <span class="comment">/* Define to 1 if you have the <unistd.h> header file. */</span></div>
-<div class="line"><a name="l01901"></a><span class="lineno"> 1901</span> <span class="preprocessor">#define HAVE_UNISTD_H 1</span></div>
-<div class="line"><a name="l01902"></a><span class="lineno"> 1902</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01903"></a><span class="lineno"> 1903</span> <span class="comment">/* Define to 1 if you have the `usleep' function. */</span></div>
-<div class="line"><a name="l01904"></a><span class="lineno"> 1904</span> <span class="preprocessor">#define HAVE_USLEEP 1</span></div>
-<div class="line"><a name="l01905"></a><span class="lineno"> 1905</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01906"></a><span class="lineno"> 1906</span> <span class="comment">/* Define to 1 if you have the `vprintf' function. */</span></div>
-<div class="line"><a name="l01907"></a><span class="lineno"> 1907</span> <span class="preprocessor">#define HAVE_VPRINTF 1</span></div>
-<div class="line"><a name="l01908"></a><span class="lineno"> 1908</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01909"></a><span class="lineno"> 1909</span> <span class="comment">/* Define to 1 if you have the `y0' function. */</span></div>
-<div class="line"><a name="l01910"></a><span class="lineno"> 1910</span> <span class="comment">/* #undef HAVE_Y0 */</span></div>
-<div class="line"><a name="l01911"></a><span class="lineno"> 1911</span> </div>
-<div class="line"><a name="l01912"></a><span class="lineno"> 1912</span> <span class="comment">/* Define to 1 if you have the `y0f' function. */</span></div>
-<div class="line"><a name="l01913"></a><span class="lineno"> 1913</span> <span class="comment">/* #undef HAVE_Y0F */</span></div>
-<div class="line"><a name="l01914"></a><span class="lineno"> 1914</span> </div>
-<div class="line"><a name="l01915"></a><span class="lineno"> 1915</span> <span class="comment">/* Define to 1 if you have the `y0l' function. */</span></div>
-<div class="line"><a name="l01916"></a><span class="lineno"> 1916</span> <span class="comment">/* #undef HAVE_Y0L */</span></div>
-<div class="line"><a name="l01917"></a><span class="lineno"> 1917</span> </div>
-<div class="line"><a name="l01918"></a><span class="lineno"> 1918</span> <span class="comment">/* Define to 1 if you have the `y1' function. */</span></div>
-<div class="line"><a name="l01919"></a><span class="lineno"> 1919</span> <span class="comment">/* #undef HAVE_Y1 */</span></div>
-<div class="line"><a name="l01920"></a><span class="lineno"> 1920</span> </div>
-<div class="line"><a name="l01921"></a><span class="lineno"> 1921</span> <span class="comment">/* Define to 1 if you have the `y1f' function. */</span></div>
-<div class="line"><a name="l01922"></a><span class="lineno"> 1922</span> <span class="comment">/* #undef HAVE_Y1F */</span></div>
-<div class="line"><a name="l01923"></a><span class="lineno"> 1923</span> </div>
-<div class="line"><a name="l01924"></a><span class="lineno"> 1924</span> <span class="comment">/* Define to 1 if you have the `y1l' function. */</span></div>
-<div class="line"><a name="l01925"></a><span class="lineno"> 1925</span> <span class="comment">/* #undef HAVE_Y1L */</span></div>
-<div class="line"><a name="l01926"></a><span class="lineno"> 1926</span> </div>
-<div class="line"><a name="l01927"></a><span class="lineno"> 1927</span> <span class="comment">/* Define to 1 if you have the `yn' function. */</span></div>
-<div class="line"><a name="l01928"></a><span class="lineno"> 1928</span> <span class="comment">/* #undef HAVE_YN */</span></div>
-<div class="line"><a name="l01929"></a><span class="lineno"> 1929</span> </div>
-<div class="line"><a name="l01930"></a><span class="lineno"> 1930</span> <span class="comment">/* Define to 1 if you have the `ynf' function. */</span></div>
-<div class="line"><a name="l01931"></a><span class="lineno"> 1931</span> <span class="comment">/* #undef HAVE_YNF */</span></div>
-<div class="line"><a name="l01932"></a><span class="lineno"> 1932</span> </div>
-<div class="line"><a name="l01933"></a><span class="lineno"> 1933</span> <span class="comment">/* Define to 1 if you have the `ynl' function. */</span></div>
-<div class="line"><a name="l01934"></a><span class="lineno"> 1934</span> <span class="comment">/* #undef HAVE_YNL */</span></div>
-<div class="line"><a name="l01935"></a><span class="lineno"> 1935</span> </div>
-<div class="line"><a name="l01936"></a><span class="lineno"> 1936</span> <span class="comment">/* Define to 1 if you have the `_mm_free' function. */</span></div>
-<div class="line"><a name="l01937"></a><span class="lineno"> 1937</span> <span class="comment">/* #undef HAVE__MM_FREE */</span></div>
-<div class="line"><a name="l01938"></a><span class="lineno"> 1938</span> </div>
-<div class="line"><a name="l01939"></a><span class="lineno"> 1939</span> <span class="comment">/* Define to 1 if you have the `_mm_malloc' function. */</span></div>
-<div class="line"><a name="l01940"></a><span class="lineno"> 1940</span> <span class="comment">/* #undef HAVE__MM_MALLOC */</span></div>
-<div class="line"><a name="l01941"></a><span class="lineno"> 1941</span> </div>
-<div class="line"><a name="l01942"></a><span class="lineno"> 1942</span> <span class="comment">/* Define if you have the UNICOS _rtc() intrinsic. */</span></div>
-<div class="line"><a name="l01943"></a><span class="lineno"> 1943</span> <span class="comment">/* #undef HAVE__RTC */</span></div>
-<div class="line"><a name="l01944"></a><span class="lineno"> 1944</span> </div>
-<div class="line"><a name="l01945"></a><span class="lineno"> 1945</span> <span class="comment">/* Define to enable Kaiser-Bessel window function. */</span></div>
-<div class="line"><a name="l01946"></a><span class="lineno"> 1946</span> <span class="preprocessor">#define KAISER_BESSEL 1</span></div>
-<div class="line"><a name="l01947"></a><span class="lineno"> 1947</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01948"></a><span class="lineno"> 1948</span> <span class="comment">/* Define to the sub-directory in which libtool stores uninstalled libraries.</span></div>
-<div class="line"><a name="l01949"></a><span class="lineno"> 1949</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01950"></a><span class="lineno"> 1950</span> <span class="preprocessor">#define LT_OBJDIR ".libs/"</span></div>
-<div class="line"><a name="l01951"></a><span class="lineno"> 1951</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01952"></a><span class="lineno"> 1952</span> <span class="comment">/* Define to enable Matlab argument checks. */</span></div>
-<div class="line"><a name="l01953"></a><span class="lineno"> 1953</span> <span class="preprocessor">#define MATLAB_ARGCHECKS 1</span></div>
-<div class="line"><a name="l01954"></a><span class="lineno"> 1954</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01955"></a><span class="lineno"> 1955</span> <span class="comment">/* Define to enable runtime time measurements. */</span></div>
-<div class="line"><a name="l01956"></a><span class="lineno"> 1956</span> <span class="comment">/* #undef MEASURE_TIME */</span></div>
-<div class="line"><a name="l01957"></a><span class="lineno"> 1957</span> </div>
-<div class="line"><a name="l01958"></a><span class="lineno"> 1958</span> <span class="comment">/* Define to enable time measurements for FFTW transforms. */</span></div>
-<div class="line"><a name="l01959"></a><span class="lineno"> 1959</span> <span class="comment">/* #undef MEASURE_TIME_FFTW */</span></div>
-<div class="line"><a name="l01960"></a><span class="lineno"> 1960</span> </div>
-<div class="line"><a name="l01961"></a><span class="lineno"> 1961</span> <span class="comment">/* Define to enable extra debugging code. */</span></div>
-<div class="line"><a name="l01962"></a><span class="lineno"> 1962</span> <span class="comment">/* #undef NFFT_DEBUG */</span></div>
-<div class="line"><a name="l01963"></a><span class="lineno"> 1963</span> </div>
-<div class="line"><a name="l01964"></a><span class="lineno"> 1964</span> <span class="comment">/* Define to 1 if your C compiler doesn't accept -c and -o together. */</span></div>
-<div class="line"><a name="l01965"></a><span class="lineno"> 1965</span> <span class="comment">/* #undef NO_MINUS_C_MINUS_O */</span></div>
-<div class="line"><a name="l01966"></a><span class="lineno"> 1966</span> </div>
-<div class="line"><a name="l01967"></a><span class="lineno"> 1967</span> <span class="comment">/* Name of package */</span></div>
-<div class="line"><a name="l01968"></a><span class="lineno"> 1968</span> <span class="preprocessor">#define PACKAGE "nfft"</span></div>
-<div class="line"><a name="l01969"></a><span class="lineno"> 1969</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01970"></a><span class="lineno"> 1970</span> <span class="comment">/* Define to the address where bug reports for this package should be sent. */</span></div>
-<div class="line"><a name="l01971"></a><span class="lineno"> 1971</span> <span class="preprocessor">#define PACKAGE_BUGREPORT "bugs at nfft.org"</span></div>
-<div class="line"><a name="l01972"></a><span class="lineno"> 1972</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01973"></a><span class="lineno"> 1973</span> <span class="comment">/* Define to the full name of this package. */</span></div>
-<div class="line"><a name="l01974"></a><span class="lineno"> 1974</span> <span class="preprocessor">#define PACKAGE_NAME "NFFT"</span></div>
-<div class="line"><a name="l01975"></a><span class="lineno"> 1975</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01976"></a><span class="lineno"> 1976</span> <span class="comment">/* Define to the full name and version of this package. */</span></div>
-<div class="line"><a name="l01977"></a><span class="lineno"> 1977</span> <span class="preprocessor">#define PACKAGE_STRING "NFFT 3.2.3"</span></div>
-<div class="line"><a name="l01978"></a><span class="lineno"> 1978</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01979"></a><span class="lineno"> 1979</span> <span class="comment">/* Define to the one symbol short name of this package. */</span></div>
-<div class="line"><a name="l01980"></a><span class="lineno"> 1980</span> <span class="preprocessor">#define PACKAGE_TARNAME "nfft"</span></div>
-<div class="line"><a name="l01981"></a><span class="lineno"> 1981</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01982"></a><span class="lineno"> 1982</span> <span class="comment">/* Define to the home page for this package. */</span></div>
-<div class="line"><a name="l01983"></a><span class="lineno"> 1983</span> <span class="preprocessor">#define PACKAGE_URL ""</span></div>
-<div class="line"><a name="l01984"></a><span class="lineno"> 1984</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01985"></a><span class="lineno"> 1985</span> <span class="comment">/* Define to the version of this package. */</span></div>
-<div class="line"><a name="l01986"></a><span class="lineno"> 1986</span> <span class="preprocessor">#define PACKAGE_VERSION "3.2.3"</span></div>
-<div class="line"><a name="l01987"></a><span class="lineno"> 1987</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01988"></a><span class="lineno"> 1988</span> <span class="comment">/* Define to enable sinc power window function. */</span></div>
-<div class="line"><a name="l01989"></a><span class="lineno"> 1989</span> <span class="comment">/* #undef SINC_POWER */</span></div>
-<div class="line"><a name="l01990"></a><span class="lineno"> 1990</span> </div>
-<div class="line"><a name="l01991"></a><span class="lineno"> 1991</span> <span class="comment">/* The size of `double', as computed by sizeof. */</span></div>
-<div class="line"><a name="l01992"></a><span class="lineno"> 1992</span> <span class="preprocessor">#define SIZEOF_DOUBLE 8</span></div>
-<div class="line"><a name="l01993"></a><span class="lineno"> 1993</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01994"></a><span class="lineno"> 1994</span> <span class="comment">/* The size of `float', as computed by sizeof. */</span></div>
-<div class="line"><a name="l01995"></a><span class="lineno"> 1995</span> <span class="preprocessor">#define SIZEOF_FLOAT 4</span></div>
-<div class="line"><a name="l01996"></a><span class="lineno"> 1996</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01997"></a><span class="lineno"> 1997</span> <span class="comment">/* The size of `int', as computed by sizeof. */</span></div>
-<div class="line"><a name="l01998"></a><span class="lineno"> 1998</span> <span class="preprocessor">#define SIZEOF_INT 4</span></div>
-<div class="line"><a name="l01999"></a><span class="lineno"> 1999</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02000"></a><span class="lineno"> 2000</span> <span class="comment">/* The size of `long', as computed by sizeof. */</span></div>
-<div class="line"><a name="l02001"></a><span class="lineno"> 2001</span> <span class="preprocessor">#define SIZEOF_LONG 8</span></div>
-<div class="line"><a name="l02002"></a><span class="lineno"> 2002</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02003"></a><span class="lineno"> 2003</span> <span class="comment">/* The size of `long double', as computed by sizeof. */</span></div>
-<div class="line"><a name="l02004"></a><span class="lineno"> 2004</span> <span class="preprocessor">#define SIZEOF_LONG_DOUBLE 16</span></div>
-<div class="line"><a name="l02005"></a><span class="lineno"> 2005</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02006"></a><span class="lineno"> 2006</span> <span class="comment">/* The size of `long long', as computed by sizeof. */</span></div>
-<div class="line"><a name="l02007"></a><span class="lineno"> 2007</span> <span class="preprocessor">#define SIZEOF_LONG_LONG 8</span></div>
-<div class="line"><a name="l02008"></a><span class="lineno"> 2008</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02009"></a><span class="lineno"> 2009</span> <span class="comment">/* The size of `ptrdiff_t', as computed by sizeof. */</span></div>
-<div class="line"><a name="l02010"></a><span class="lineno"> 2010</span> <span class="preprocessor">#define SIZEOF_PTRDIFF_T 8</span></div>
-<div class="line"><a name="l02011"></a><span class="lineno"> 2011</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02012"></a><span class="lineno"> 2012</span> <span class="comment">/* The size of `size_t', as computed by sizeof. */</span></div>
-<div class="line"><a name="l02013"></a><span class="lineno"> 2013</span> <span class="preprocessor">#define SIZEOF_SIZE_T 8</span></div>
-<div class="line"><a name="l02014"></a><span class="lineno"> 2014</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02015"></a><span class="lineno"> 2015</span> <span class="comment">/* The size of `unsigned int', as computed by sizeof. */</span></div>
-<div class="line"><a name="l02016"></a><span class="lineno"> 2016</span> <span class="preprocessor">#define SIZEOF_UNSIGNED_INT 4</span></div>
-<div class="line"><a name="l02017"></a><span class="lineno"> 2017</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02018"></a><span class="lineno"> 2018</span> <span class="comment">/* The size of `unsigned long', as computed by sizeof. */</span></div>
-<div class="line"><a name="l02019"></a><span class="lineno"> 2019</span> <span class="preprocessor">#define SIZEOF_UNSIGNED_LONG 8</span></div>
-<div class="line"><a name="l02020"></a><span class="lineno"> 2020</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02021"></a><span class="lineno"> 2021</span> <span class="comment">/* The size of `unsigned long long', as computed by sizeof. */</span></div>
-<div class="line"><a name="l02022"></a><span class="lineno"> 2022</span> <span class="preprocessor">#define SIZEOF_UNSIGNED_LONG_LONG 8</span></div>
-<div class="line"><a name="l02023"></a><span class="lineno"> 2023</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02024"></a><span class="lineno"> 2024</span> <span class="comment">/* The size of `void *', as computed by sizeof. */</span></div>
-<div class="line"><a name="l02025"></a><span class="lineno"> 2025</span> <span class="comment">/* #undef SIZEOF_VOID_P */</span></div>
-<div class="line"><a name="l02026"></a><span class="lineno"> 2026</span> </div>
-<div class="line"><a name="l02027"></a><span class="lineno"> 2027</span> <span class="comment">/* If using the C implementation of alloca, define if you know the</span></div>
-<div class="line"><a name="l02028"></a><span class="lineno"> 2028</span> <span class="comment"> direction of stack growth for your system; otherwise it will be</span></div>
-<div class="line"><a name="l02029"></a><span class="lineno"> 2029</span> <span class="comment"> automatically deduced at runtime.</span></div>
-<div class="line"><a name="l02030"></a><span class="lineno"> 2030</span> <span class="comment"> STACK_DIRECTION > 0 => grows toward higher addresses</span></div>
-<div class="line"><a name="l02031"></a><span class="lineno"> 2031</span> <span class="comment"> STACK_DIRECTION < 0 => grows toward lower addresses</span></div>
-<div class="line"><a name="l02032"></a><span class="lineno"> 2032</span> <span class="comment"> STACK_DIRECTION = 0 => direction of growth unknown */</span></div>
-<div class="line"><a name="l02033"></a><span class="lineno"> 2033</span> <span class="comment">/* #undef STACK_DIRECTION */</span></div>
-<div class="line"><a name="l02034"></a><span class="lineno"> 2034</span> </div>
-<div class="line"><a name="l02035"></a><span class="lineno"> 2035</span> <span class="comment">/* Define to 1 if you have the ANSI C header files. */</span></div>
-<div class="line"><a name="l02036"></a><span class="lineno"> 2036</span> <span class="preprocessor">#define STDC_HEADERS 1</span></div>
-<div class="line"><a name="l02037"></a><span class="lineno"> 2037</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02038"></a><span class="lineno"> 2038</span> <span class="comment">/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */</span></div>
-<div class="line"><a name="l02039"></a><span class="lineno"> 2039</span> <span class="preprocessor">#define TIME_WITH_SYS_TIME 1</span></div>
-<div class="line"><a name="l02040"></a><span class="lineno"> 2040</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02041"></a><span class="lineno"> 2041</span> <span class="comment">/* Version number of package */</span></div>
-<div class="line"><a name="l02042"></a><span class="lineno"> 2042</span> <span class="preprocessor">#define VERSION "3.2.3"</span></div>
-<div class="line"><a name="l02043"></a><span class="lineno"> 2043</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02044"></a><span class="lineno"> 2044</span> <span class="comment">/* Define to empty if `const' does not conform to ANSI C. */</span></div>
-<div class="line"><a name="l02045"></a><span class="lineno"> 2045</span> <span class="comment">/* #undef const */</span></div>
-<div class="line"><a name="l02046"></a><span class="lineno"> 2046</span> </div>
-<div class="line"><a name="l02047"></a><span class="lineno"> 2047</span> <span class="comment">/* Define to `__inline__' or `__inline' if that's what the C compiler</span></div>
-<div class="line"><a name="l02048"></a><span class="lineno"> 2048</span> <span class="comment"> calls it, or to nothing if 'inline' is not supported under any name. */</span></div>
-<div class="line"><a name="l02049"></a><span class="lineno"> 2049</span> <span class="preprocessor">#ifndef __cplusplus</span></div>
-<div class="line"><a name="l02050"></a><span class="lineno"> 2050</span> <span class="preprocessor"></span><span class="comment">/* #undef inline */</span></div>
-<div class="line"><a name="l02051"></a><span class="lineno"> 2051</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02052"></a><span class="lineno"> 2052</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02053"></a><span class="lineno"> 2053</span> <span class="comment">/* Define to the equivalent of the C99 'restrict' keyword, or to</span></div>
-<div class="line"><a name="l02054"></a><span class="lineno"> 2054</span> <span class="comment"> nothing if this is not supported. Do not define if restrict is</span></div>
-<div class="line"><a name="l02055"></a><span class="lineno"> 2055</span> <span class="comment"> supported directly. */</span></div>
-<div class="line"><a name="l02056"></a><span class="lineno"> 2056</span> <span class="preprocessor">#define restrict __restrict</span></div>
-<div class="line"><a name="l02057"></a><span class="lineno"> 2057</span> <span class="preprocessor"></span><span class="comment">/* Work around a bug in Sun C++: it does not support _Restrict or</span></div>
-<div class="line"><a name="l02058"></a><span class="lineno"> 2058</span> <span class="comment"> __restrict__, even though the corresponding Sun C compiler ends up with</span></div>
-<div class="line"><a name="l02059"></a><span class="lineno"> 2059</span> <span class="comment"> "#define restrict _Restrict" or "#define restrict __restrict__" in the</span></div>
-<div class="line"><a name="l02060"></a><span class="lineno"> 2060</span> <span class="comment"> previous line. Perhaps some future version of Sun C++ will work with</span></div>
-<div class="line"><a name="l02061"></a><span class="lineno"> 2061</span> <span class="comment"> restrict; if so, hopefully it defines __RESTRICT like Sun C does. */</span></div>
-<div class="line"><a name="l02062"></a><span class="lineno"> 2062</span> <span class="preprocessor">#if defined __SUNPRO_CC && !defined __RESTRICT</span></div>
-<div class="line"><a name="l02063"></a><span class="lineno"> 2063</span> <span class="preprocessor"></span><span class="preprocessor"># define _Restrict</span></div>
-<div class="line"><a name="l02064"></a><span class="lineno"> 2064</span> <span class="preprocessor"></span><span class="preprocessor"># define __restrict__</span></div>
-<div class="line"><a name="l02065"></a><span class="lineno"> 2065</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02066"></a><span class="lineno"> 2066</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02067"></a><span class="lineno"> 2067</span> <span class="comment">/* Define to `unsigned int' if <sys/types.h> does not define. */</span></div>
-<div class="line"><a name="l02068"></a><span class="lineno"> 2068</span> <span class="comment">/* #undef size_t */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/construct__data__2d1d_8c_source.html b/doc/api/html/construct__data__2d1d_8c_source.html
deleted file mode 100644
index 724e602..0000000
--- a/doc/api/html/construct__data__2d1d_8c_source.html
+++ /dev/null
@@ -1,176 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_2d1d.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_fb8678d426210fc305fe5dfd30a163a5.html">mri3d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">construct_data_2d1d.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: construct_data_2d1d.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="code" href="group__applications__mri3d__construct__data__1d2d.html#ga3b7e53294d00c663429518cb2f7c7791"> 40</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri3d__construct__data__1d2d.html#ga3b7e53294d00c663429518cb2f7c7791" title="construct makes an 2d-nfft for every slice">construct</a>(<span class="keywordtype">char</span> * file, [...]
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">int</span> j,z; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">double</span> tmp; <span class="comment">/* a placeholder */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_plan; <span class="comment">/* plan for the two dimensional nfft */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> FILE* fp;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment">/* initialise my_plan */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> nfft_init_2d(&my_plan,N,N,M/Z);</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> fp=fopen(<span class="stringliteral">"knots.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> {</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> fscanf(fp,<span class="stringliteral">"%le %le %le"</span>,&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1],&tmp);</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> }</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> fclose(fp);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> fp=fopen(file,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">for</span>(z=0;z<Z;z++) {</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> tmp = (double) z;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> my_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j] = mem[(z*N*N+N*N*Z/2+j)%(N*N*Z)];</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> nfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> fprintf(fp,<span class="stringliteral">"%le %le %le %le %le\n"</span>,my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1],tmp/Z-0.5,</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> creal(my_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]),cimag(my_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]));</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> }</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> }</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> fclose(fp);</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> nfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> }</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00086"></a><span class="lineno"><a class="code" href="group__applications__mri3d__construct__data__1d2d.html#gafa82bf5df93804a1760082b88492b8d5"> 86</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri3d__construct__data__1d2d.html#gafa82bf5df93804a1760082b88492b8d5" title="fft makes an 1D-ftt for every knot through all layers">fft</a>(<span class="keywordtype">int</span> N,< [...]
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> {</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> fftw_plan plan;</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> plan = fftw_plan_many_dft(1, &Z, N*N,</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> mem, NULL,</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> N*N, 1,</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> mem, NULL,</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> N*N,1 ,</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> FFTW_FORWARD, FFTW_ESTIMATE);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> fftw_execute(plan); <span class="comment">/* execute the fft */</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> fftw_destroy_plan(plan);</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> }</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"><a class="code" href="group__applications__mri3d__construct__data__1d2d.html#ga324751353a7eefbe2ad622201dd52d5f"> 104</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri3d__construct__data__1d2d.html#ga324751353a7eefbe2ad622201dd52d5f" title="read fills the memory with the file input_data_f.dat as the real part of f and with zeros for the ima.. [...]
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> {</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordtype">int</span> i,z;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordtype">double</span> real;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> FILE* fin;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> fin=fopen(<span class="stringliteral">"input_f.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">for</span>(z=0;z<Z;z++)</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> {</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">for</span>(i=0;i<N*N;i++)</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> {</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> fscanf(fin,<span class="stringliteral">"%le "</span>,&real );</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> mem[(z*N*N+N*N*Z/2+i)%(N*N*Z)]=real;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> }</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> }</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> fclose(fin);</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> }</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> {</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> fftw_complex *mem;</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordflow">if</span> (argc <= 4) {</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> printf(<span class="stringliteral">"usage: ./construct_data FILENAME N M Z\n"</span>);</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> }</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> mem = (fftw_complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex) * atoi(argv[2]) * atoi(argv[2]) * atoi(argv[4]));</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <a class="code" href="group__applications__mri3d__construct__data__1d2d.html#ga324751353a7eefbe2ad622201dd52d5f" title="read fills the memory with the file input_data_f.dat as the real part of f and with zeros for the ima...">read_data</a>(atoi(argv[2]),atoi(argv[3]),atoi(argv[4]), mem);</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <a class="code" href="group__applications__mri3d__construct__data__1d2d.html#gafa82bf5df93804a1760082b88492b8d5" title="fft makes an 1D-ftt for every knot through all layers">fft</a>(atoi(argv[2]),atoi(argv[3]),atoi(argv[4]), mem);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <a class="code" href="group__applications__mri3d__construct__data__1d2d.html#ga3b7e53294d00c663429518cb2f7c7791" title="construct makes an 2d-nfft for every slice">construct</a>(argv[1],atoi(argv[2]),atoi(argv[3]),atoi(argv[4]), mem);</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(mem);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/construct__data__2d_8c_source.html b/doc/api/html/construct__data__2d_8c_source.html
deleted file mode 100644
index 4bbd354..0000000
--- a/doc/api/html/construct__data__2d_8c_source.html
+++ /dev/null
@@ -1,139 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_2d.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">construct_data_2d.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: construct_data_2d.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"><a class="code" href="group__applications__mri2d__construct__data__2d.html#ga7cad9b408cf07cdd4fa31da9c325dac5"> 41</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri2d__construct__data__2d.html#ga7cad9b408cf07cdd4fa31da9c325dac5" title="construct makes an 2d-nfft">construct</a>(<span class="keywordtype">char</span> * file, <span class="keywor [...]
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> {</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">int</span> j,k; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">double</span> real;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_plan; <span class="comment">/* plan for the two dimensional nfft */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> FILE* fp;</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> FILE* fk;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> FILE* fi;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment">/* initialise my_plan */</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> nfft_init_2d(&my_plan,N,N,M);</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> fp=fopen(<span class="stringliteral">"knots.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> {</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> fscanf(fp,<span class="stringliteral">"%le %le "</span>,&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]);</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> }</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> fclose(fp);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> fi=fopen(<span class="stringliteral">"input_f.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> fk=fopen(file,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">for</span>(j=0;j<N;j++)</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> {</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">for</span>(k=0;k<N;k++) {</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> fscanf(fi,<span class="stringliteral">"%le "</span>,&real);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> my_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[(N*j+k)] = real;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> }</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> }</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> nfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> {</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> fprintf(fk,<span class="stringliteral">"%le %le %le %le\n"</span>,my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1],creal(my_plan.<a class [...]
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> }</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> fclose(fk);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> fclose(fi);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> nfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> }</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> {</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">if</span> (argc <= 3) {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> printf(<span class="stringliteral">"usage: ./construct_data FILENAME N M\n"</span>);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> }</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <a class="code" href="group__applications__mri2d__construct__data__2d.html#ga7cad9b408cf07cdd4fa31da9c325dac5" title="construct makes an 2d-nfft">construct</a>(argv[1],atoi(argv[2]),atoi(argv[3]));</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> }</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/construct__data__3d_8c_source.html b/doc/api/html/construct__data__3d_8c_source.html
deleted file mode 100644
index 7fc65cf..0000000
--- a/doc/api/html/construct__data__3d_8c_source.html
+++ /dev/null
@@ -1,152 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_3d.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_fb8678d426210fc305fe5dfd30a163a5.html">mri3d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">construct_data_3d.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: construct_data_3d.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri2d__construct__data__2d.html#ga7cad9b408cf07cdd4fa31da9c325dac5" title="construct makes an 2d-nfft">construct</a>(<span class="keywordtype">char</span> * file, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> Z)</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> {</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">int</span> j,k,l; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">double</span> real;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_plan; <span class="comment">/* plan for the three dimensional nfft */</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> FILE* fp,*fk;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">int</span> my_N[3],my_n[3]; <span class="comment">/* to init the nfft */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment">/* initialise my_plan */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment">//nfft_init_3d(&my_plan,Z,N,N,M);</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> my_N[0]=Z; my_n[0]=ceil(Z*1.2);</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> my_N[1]=N; my_n[1]=ceil(N*1.2);</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> my_N[2]=N; my_n[2]=ceil(N*1.2);</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> nfft_init_guru(&my_plan, 3, my_N, M, my_n, 6,</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> PRE_PHI_HUT| PRE_PSI |MALLOC_X| MALLOC_F_HAT|</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> MALLOC_F| FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> fp=fopen(<span class="stringliteral">"knots.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">for</span>(j=0;j<M;j++)</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> fscanf(fp,<span class="stringliteral">"%le %le %le"</span>,&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*(j)+1],</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> &my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*(j)+2],&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*(j)+0]);</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> fclose(fp);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> fp=fopen(<span class="stringliteral">"input_f.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> fk=fopen(file,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">for</span>(l=0;l<Z;l++) {</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">for</span>(j=0;j<N;j++)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> {</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">for</span>(k=0;k<N;k++)</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> {</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="comment">//fscanf(fp,"%le ",&my_plan.f_hat[(N*N*(Z-l)+N*j+k+N*N*Z/2)%(N*N*Z)][0]);</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> fscanf(fp,<span class="stringliteral">"%le "</span>,&real);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> my_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[(N*N*l+N*j+k)] = real;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> }</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> }</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> }</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> nfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> fprintf(fk,<span class="stringliteral">"%le %le %le %le %le\n"</span>,my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1],</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2],my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0],creal(my_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" tit [...]
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> fclose(fk);</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> fclose(fp);</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> nfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> }</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> {</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">if</span> (argc <= 4) {</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> printf(<span class="stringliteral">"usage: ./construct_data FILENAME N M Z\n"</span>);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <a class="code" href="group__applications__mri2d__construct__data__2d.html#ga7cad9b408cf07cdd4fa31da9c325dac5" title="construct makes an 2d-nfft">construct</a>(argv[1], atoi(argv[2]),atoi(argv[3]),atoi(argv[4]));</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/construct__data__inh__2d1d_8c_source.html b/doc/api/html/construct__data__inh__2d1d_8c_source.html
deleted file mode 100644
index 8651639..0000000
--- a/doc/api/html/construct__data__inh__2d1d_8c_source.html
+++ /dev/null
@@ -1,198 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_inh_2d1d.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">construct_data_inh_2d1d.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: construct_data_inh_2d1d.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <limits.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"><a class="code" href="group__applications__mri2d__construct__data__inh__2d1d.html#ga7cad9b408cf07cdd4fa31da9c325dac5"> 41</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri2d__construct__data__inh__2d1d.html#ga7cad9b408cf07cdd4fa31da9c325dac5" title="construct">construct</a>(<span class="keywordtype">char</span> * file, <span class="keywordty [...]
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> {</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">int</span> j; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">double</span> real;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">double</span> w;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">double</span> time,min_time,max_time,min_inh,max_inh;</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <a class="code" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> my_plan;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> FILE *fp,*fout,*fi,*finh,*ftime;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordtype">int</span> my_N[3],my_n[3];</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">int</span> flags = PRE_PHI_HUT| PRE_PSI |MALLOC_X| MALLOC_F_HAT|</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> MALLOC_F| FFTW_INIT| FFT_OUT_OF_PLACE|</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> FFTW_MEASURE| FFTW_DESTROY_INPUT;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">double</span> Ts;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">double</span> W,T;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordtype">int</span> N3;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">int</span> m=2;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">double</span> sigma = 1.25;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> ftime=fopen(<span class="stringliteral">"readout_time.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> finh=fopen(<span class="stringliteral">"inh.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> min_time=INT_MAX; max_time=INT_MIN;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">for</span>(j=0;j<M;j++)</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> {</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> fscanf(ftime,<span class="stringliteral">"%le "</span>,&time);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">if</span>(time<min_time)</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> min_time = time;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">if</span>(time>max_time)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> max_time = time;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> }</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> fclose(ftime);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> Ts=(min_time+max_time)/2.0;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> min_inh=INT_MAX; max_inh=INT_MIN;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> {</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> fscanf(finh,<span class="stringliteral">"%le "</span>,&w);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">if</span>(w<min_inh)</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> min_inh = w;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">if</span>(w>max_inh)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> max_inh = w;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> }</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> fclose(finh);</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> N3=ceil((<a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(fabs(min_inh),fabs(max_inh))*(max_time-min_time)/2.0+m/(2*sigma))*4*sigma);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> T=((max_time-min_time)/2.0)/(0.5-((double) m)/N3);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> W=N3/T;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> my_N[0]=N; my_n[0]=ceil(N*sigma);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> my_N[1]=N; my_n[1]=ceil(N*sigma);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> my_N[2]=N3; my_n[2]=N3;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="comment">/* initialise nfft */</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> mri_inh_2d1d_init_guru(&my_plan, my_N, M, my_n, m, sigma, flags,</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> ftime=fopen(<span class="stringliteral">"readout_time.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> fp=fopen(<span class="stringliteral">"knots.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> {</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> fscanf(fp,<span class="stringliteral">"%le %le "</span>,&my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],&my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> fscanf(ftime,<span class="stringliteral">"%le "</span>,&my_plan.t[j]);</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> my_plan.t[j] = (my_plan.t[j]-Ts)/T;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> }</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> fclose(fp);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> fclose(ftime);</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> finh=fopen(<span class="stringliteral">"inh.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> {</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> fscanf(finh,<span class="stringliteral">"%le "</span>,&my_plan.w[j]);</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> my_plan.w[j]/=W;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> }</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> fclose(finh);</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> fi=fopen(<span class="stringliteral">"input_f.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> {</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> fscanf(fi,<span class="stringliteral">"%le "</span>,&real);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> my_plan.<a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j] = real*cexp(2.0*_Complex_I*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*Ts*my_plan.w[j]*W);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> }</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">if</span>(my_plan.plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> nfft_precompute_psi(&my_plan.plan);</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> mri_inh_2d1d_trafo(&my_plan);</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> fout=fopen(file,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> {</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> fprintf(fout,<span class="stringliteral">"%le %le %le %le\n"</span>,my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1],creal(my_p [...]
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> }</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> fclose(fout);</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> </div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> mri_inh_2d1d_finalize(&my_plan);</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> {</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="keywordflow">if</span> (argc <= 3) {</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> printf(<span class="stringliteral">"usage: ./construct_data_inh_2d1d FILENAME N M\n"</span>);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> }</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <a class="code" href="group__applications__mri2d__construct__data__inh__2d1d.html#ga7cad9b408cf07cdd4fa31da9c325dac5" title="construct">construct</a>(argv[1],atoi(argv[2]),atoi(argv[3]));</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> </div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> }</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/construct__data__inh__3d_8c_source.html b/doc/api/html/construct__data__inh__3d_8c_source.html
deleted file mode 100644
index 25c807f..0000000
--- a/doc/api/html/construct__data__inh__3d_8c_source.html
+++ /dev/null
@@ -1,197 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_inh_3d.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">construct_data_inh_3d.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: construct_data_inh_3d.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <limits.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"><a class="code" href="group__applications__mri2d__construct__data__inh__3d.html#ga7cad9b408cf07cdd4fa31da9c325dac5"> 41</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri2d__construct__data__inh__3d.html#ga7cad9b408cf07cdd4fa31da9c325dac5" title="construct">construct</a>(<span class="keywordtype">char</span> * file, <span class="keywordtype"> [...]
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> {</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">int</span> j; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">double</span> real;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">double</span> w;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">double</span> time,min_time,max_time,min_inh,max_inh;</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <a class="code" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> my_plan;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> FILE *fp,*fout,*fi,*finh,*ftime;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordtype">int</span> my_N[3],my_n[3];</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">int</span> flags = PRE_PHI_HUT| PRE_PSI |MALLOC_X| MALLOC_F_HAT|</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> MALLOC_F| FFTW_INIT| FFT_OUT_OF_PLACE|</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> FFTW_MEASURE| FFTW_DESTROY_INPUT;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">double</span> Ts;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">double</span> W;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordtype">int</span> N3;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">int</span> m=2;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">double</span> sigma = 1.25;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> ftime=fopen(<span class="stringliteral">"readout_time.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> finh=fopen(<span class="stringliteral">"inh.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> min_time=INT_MAX; max_time=INT_MIN;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">for</span>(j=0;j<M;j++)</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> {</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> fscanf(ftime,<span class="stringliteral">"%le "</span>,&time);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">if</span>(time<min_time)</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> min_time = time;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">if</span>(time>max_time)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> max_time = time;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> }</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> fclose(ftime);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> Ts=(min_time+max_time)/2.0;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> min_inh=INT_MAX; max_inh=INT_MIN;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> {</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> fscanf(finh,<span class="stringliteral">"%le "</span>,&w);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">if</span>(w<min_inh)</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> min_inh = w;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">if</span>(w>max_inh)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> max_inh = w;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> }</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> fclose(finh);</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> N3=ceil((<a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(fabs(min_inh),fabs(max_inh))*(max_time-min_time)/2.0+m/(2*sigma))*4*sigma);</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> W= <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(fabs(min_inh),fabs(max_inh))/(0.5-((double)m)/N3);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> my_N[0]=N; my_n[0]=ceil(N*sigma);</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> my_N[1]=N; my_n[1]=ceil(N*sigma);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> my_N[2]=N3; my_n[2]=ceil(N3*sigma);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="comment">/* initialise nfft */</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> mri_inh_3d_init_guru(&my_plan, my_N, M, my_n, m, sigma, flags,</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> ftime=fopen(<span class="stringliteral">"readout_time.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> fp=fopen(<span class="stringliteral">"knots.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structmri__inh__3d__plan.html#ae90c4e1c541956b5902e7aafc193ad8b" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> {</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> fscanf(fp,<span class="stringliteral">"%le %le"</span>,&my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0],&my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]);</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> fscanf(ftime,<span class="stringliteral">"%le "</span>,&my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2] = (my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]-Ts)*W/N3;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> }</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> fclose(fp);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> fclose(ftime);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> finh=fopen(<span class="stringliteral">"inh.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> {</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> fscanf(finh,<span class="stringliteral">"%le "</span>,&my_plan.w[j]);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> my_plan.w[j]/=W;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> }</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> fclose(finh);</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> </div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> fi=fopen(<span class="stringliteral">"input_f.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> {</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> fscanf(fi,<span class="stringliteral">"%le "</span>,&real);</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> my_plan.<a class="code" href="structmri__inh__3d__plan.html#a91ed30b213dea4954d2d27c4d1334a50" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j] = real*cexp(2.0*_Complex_I*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*Ts*my_plan.w[j]*W);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> }</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordflow">if</span>(my_plan.plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> nfft_precompute_psi(&my_plan.plan);</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> mri_inh_3d_trafo(&my_plan);</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> fout=fopen(file,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structmri__inh__3d__plan.html#ae90c4e1c541956b5902e7aafc193ad8b" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> {</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> fprintf(fout,<span class="stringliteral">"%le %le %le %le\n"</span>,my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0],my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1],creal(my_p [...]
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> }</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> fclose(fout);</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> mri_inh_3d_finalize(&my_plan);</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> }</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> {</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">if</span> (argc <= 3) {</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> printf(<span class="stringliteral">"usage: ./construct_data_inh_3d FILENAME N M\n"</span>);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> }</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <a class="code" href="group__applications__mri2d__construct__data__inh__3d.html#ga7cad9b408cf07cdd4fa31da9c325dac5" title="construct">construct</a>(argv[1],atoi(argv[2]),atoi(argv[3]));</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> }</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/cycle_8h_source.html b/doc/api/html/cycle_8h_source.html
deleted file mode 100644
index 6177f5a..0000000
--- a/doc/api/html/cycle_8h_source.html
+++ /dev/null
@@ -1,568 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - cycle.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">cycle.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2003, 2007-8 Matteo Frigo</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> * Copyright (c) 2003, 2007-8 Massachusetts Institute of Technology</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * Permission is hereby granted, free of charge, to any person obtaining</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * a copy of this software and associated documentation files (the</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * "Software"), to deal in the Software without restriction, including</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> * without limitation the rights to use, copy, modify, merge, publish,</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * distribute, sublicense, and/or sell copies of the Software, and to</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * permit persons to whom the Software is furnished to do so, subject to</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * the following conditions:</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> * The above copyright notice and this permission notice shall be</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * included in all copies or substantial portions of the Software.</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="comment"> * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND</span></div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment"> * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="comment"> * LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment"> * OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment"> * WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> </div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment">/* machine-dependent cycle counters code. Needs to be inlined. */</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment">/***************************************************************************/</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment">/* To use the cycle counters in your code, simply #include "cycle.h" (this</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment"> file), and then use the functions/macros:</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment"></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment"> ticks getticks(void);</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="comment"></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment"> ticks is an opaque typedef defined below, representing the current time.</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment"> You extract the elapsed time between two calls to gettick() via:</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment"></span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment"> double elapsed(ticks t1, ticks t0);</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment"></span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment"> which returns a double-precision variable in arbitrary units. You</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment"> are not expected to convert this into human units like seconds; it</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment"> is intended only for *comparisons* of time intervals.</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment"></span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment"> (In order to use some of the OS-dependent timer routines like</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment"> Solaris' gethrtime, you need to paste the autoconf snippet below</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment"> into your configure.ac file and #include "config.h" before cycle.h,</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment"> or define the relevant macros manually if you are not using autoconf.)</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment">*/</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment">/***************************************************************************/</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment">/* This file uses macros like HAVE_GETHRTIME that are assumed to be</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment"> defined according to whether the corresponding function/type/header</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment"> is available on your system. The necessary macros are most</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment"> conveniently defined if you are using GNU autoconf, via the tests:</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment"> </span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment"> dnl ---------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment"></span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment"> AC_C_INLINE</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment"> AC_HEADER_TIME</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment"> AC_CHECK_HEADERS([sys/time.h c_asm.h intrinsics.h mach/mach_time.h])</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment"></span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment"> AC_CHECK_TYPE([hrtime_t],[AC_DEFINE(HAVE_HRTIME_T, 1, [Define to 1 if hrtime_t is defined in <sys/time.h>])],,[#if HAVE_SYS_TIME_H</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment">#include <sys/time.h></span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment">#endif])</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment"></span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="comment"> AC_CHECK_FUNCS([gethrtime read_real_time time_base_to_time clock_gettime mach_absolute_time])</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment"></span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment"> dnl Cray UNICOS _rtc() (real-time clock) intrinsic</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="comment"> AC_MSG_CHECKING([for _rtc intrinsic])</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="comment"> rtc_ok=yes</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="comment"> AC_TRY_LINK([#ifdef HAVE_INTRINSICS_H</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="comment">#include <intrinsics.h></span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment">#endif], [_rtc()], [AC_DEFINE(HAVE__RTC,1,[Define if you have the UNICOS _rtc() intrinsic.])], [rtc_ok=no])</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment"> AC_MSG_RESULT($rtc_ok)</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="comment"></span></div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="comment"> dnl ---------------------------------------------------------------------</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="comment">*/</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment">/***************************************************************************/</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="preprocessor">#if TIME_WITH_SYS_TIME</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="preprocessor"></span><span class="preprocessor"># include <sys/time.h></span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="preprocessor"># include <time.h></span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="preprocessor"></span><span class="preprocessor"># if HAVE_SYS_TIME_H</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="preprocessor"></span><span class="preprocessor"># include <sys/time.h></span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="preprocessor"># else</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="preprocessor"></span><span class="preprocessor"># include <time.h></span></div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="preprocessor"># endif</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="preprocessor">#define INLINE_ELAPSED(INL) static INL double elapsed(ticks t1, ticks t0) \</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="preprocessor"> return (double)t1 - (double)t0; \</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="preprocessor">#if 1 == 0</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="comment">/* Solaris */</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="preprocessor">#if defined(HAVE_GETHRTIME) && defined(HAVE_HRTIME_T) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="preprocessor"></span><span class="keyword">typedef</span> hrtime_t ticks;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="preprocessor">#define getticks gethrtime</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> INLINE_ELAPSED(<span class="keyword">inline</span>)</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment">/* AIX v. 4+ routines to read the real-time clock or time-base register */</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="preprocessor">#if defined(HAVE_READ_REAL_TIME) && defined(HAVE_TIME_BASE_TO_TIME) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="preprocessor"></span><span class="keyword">typedef</span> timebasestruct_t ticks;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keyword">static</span> __inline ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> {</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> ticks t;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> read_real_time(&t, TIMEBASE_SZ);</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">return</span> t;</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> }</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keyword">static</span> __inline <span class="keywordtype">double</span> elapsed(ticks t1, ticks t0) <span class="comment">/* time in nanoseconds */</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> {</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> time_base_to_time(&t1, TIMEBASE_SZ);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> time_base_to_time(&t0, TIMEBASE_SZ);</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordflow">return</span> (((<span class="keywordtype">double</span>)t1.tb_high - (<span class="keywordtype">double</span>)t0.tb_high) * 1.0e9 + </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> ((<span class="keywordtype">double</span>)t1.tb_low - (<span class="keywordtype">double</span>)t0.tb_low));</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> }</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="comment"> * PowerPC ``cycle'' counter using the time base register.</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor">#if ((((defined(__GNUC__) && (defined(__powerpc__) || defined(__ppc__))) || (defined(__MWERKS__) && defined(macintosh)))) || (defined(__IBM_GCC_ASM) && (defined(__powerpc__) || defined(__ppc__)))) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keyword">static</span> __inline__ ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> {</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> tbl, tbu0, tbu1;</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="keywordflow">do</span> {</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> __asm__ __volatile__ (<span class="stringliteral">"mftbu %0"</span> : <span class="stringliteral">"=r"</span>(tbu0));</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> __asm__ __volatile__ (<span class="stringliteral">"mftb %0"</span> : <span class="stringliteral">"=r"</span>(tbl));</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> __asm__ __volatile__ (<span class="stringliteral">"mftbu %0"</span> : <span class="stringliteral">"=r"</span>(tbu1));</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> } <span class="keywordflow">while</span> (tbu0 != tbu1);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">return</span> (((<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span>)tbu0) << 32) | tbl;</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> }</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> </div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="comment">/* MacOS/Mach (Darwin) time-base register interface (unlike UpTime,</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="comment"> from Carbon, requires no additional libraries to be linked). */</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="preprocessor">#if defined(HAVE_MACH_ABSOLUTE_TIME) && defined(HAVE_MACH_MACH_TIME_H) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="preprocessor"></span><span class="preprocessor">#include <mach/mach_time.h></span></div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="keyword">typedef</span> uint64_t ticks;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="preprocessor">#define getticks mach_absolute_time</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="preprocessor"></span>INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="comment"> * Pentium cycle counter </span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="preprocessor">#if (defined(__GNUC__) || defined(__ICC)) && defined(__i386__) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> </div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keyword">static</span> __inline__ ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> {</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> ticks ret;</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> __asm__ __volatile__(<span class="stringliteral">"rdtsc"</span>: <span class="stringliteral">"=A"</span> (ret));</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="comment">/* no input, nothing else clobbered */</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> }</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="preprocessor"></span><span class="preprocessor">#define TIME_MIN 5000.0 </span><span class="comment">/* unreliable pentium IV cycle counter */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment">/* Visual C++ -- thanks to Morten Nissov for his help with this */</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="preprocessor">#if defined(_MSC_VER) && _MSC_VER >= 1200 && _M_IX86 >= 500 && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="preprocessor"></span><span class="preprocessor">#include <windows.h></span></div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keyword">typedef</span> LARGE_INTEGER ticks;</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="preprocessor">#define RDTSC __asm __emit 0fh __asm __emit 031h </span><span class="comment">/* hack for VC++ 5.0 */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="keyword">static</span> __inline ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> {</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> ticks retval;</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> __asm {</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> RDTSC</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> mov retval.HighPart, edx</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> mov retval.LowPart, eax</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> }</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">return</span> retval;</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> }</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keyword">static</span> __inline <span class="keywordtype">double</span> elapsed(ticks t1, ticks t0)</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> { </div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="keywordflow">return</span> (<span class="keywordtype">double</span>)t1.QuadPart - (double)t0.QuadPart;</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> } </div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> </div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="preprocessor"></span><span class="preprocessor">#define TIME_MIN 5000.0 </span><span class="comment">/* unreliable pentium IV cycle counter */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="comment"> * X86-64 cycle counter</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="preprocessor">#if (defined(__GNUC__) || defined(__ICC) || defined(__SUNPRO_C)) && defined(__x86_64__) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keyword">static</span> __inline__ ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> {</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="keywordtype">unsigned</span> a, d; </div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="keyword">asm</span> <span class="keyword">volatile</span>(<span class="stringliteral">"rdtsc"</span> : <span class="stringliteral">"=a"</span> (a), <span class="stringliteral">"=d"</span> (d)); </div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="keywordflow">return</span> ((ticks)a) | (((ticks)d) << 32); </div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> }</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> </div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> </div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="comment">/* PGI compiler, courtesy Cristiano Calonaci, Andrea Tarsi, & Roberto Gori.</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="comment"> NOTE: this code will fail to link unless you use the -Masmkeyword compiler</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="comment"> option (grrr). */</span></div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="preprocessor">#if defined(__PGI) && defined(__x86_64__) && !defined(HAVE_TICK_COUNTER) </span></div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="keyword">static</span> ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> {</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="keyword">asm</span>(<span class="stringliteral">" rdtsc; shl $0x20,%rdx; mov %eax,%eax; or %rdx,%rax; "</span>);</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> }</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="comment">/* Visual C++, courtesy of Dirk Michaelis */</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="preprocessor">#if defined(_MSC_VER) && _MSC_VER >= 1400 && (defined(_M_AMD64) || defined(_M_X64)) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor">#include <intrin.h></span></div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="preprocessor">#pragma intrinsic(__rdtsc)</span></div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> __int64 ticks;</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor">#define getticks __rdtsc</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor"></span>INLINE_ELAPSED(__inline)</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> </div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="comment"> * IA64 cycle counter</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> </div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="comment">/* intel's icc/ecc compiler */</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="preprocessor">#if (defined(__EDG_VERSION) || defined(__ECC)) && defined(__ia64__) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor">#include <ia64intrin.h></span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> </div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="keyword">static</span> __inline__ ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> {</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="keywordflow">return</span> __getReg(_IA64_REG_AR_ITC);</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> }</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="comment">/* gcc */</span></div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="preprocessor">#if defined(__GNUC__) && defined(__ia64__) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> </div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="keyword">static</span> __inline__ ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> {</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> ticks ret;</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> </div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> __asm__ __volatile__ (<span class="stringliteral">"mov %0=ar.itc"</span> : <span class="stringliteral">"=r"</span>(ret));</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> }</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> </div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> </div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment">/* HP/UX IA64 compiler, courtesy Teresa L. Johnson: */</span></div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="preprocessor">#if defined(__hpux) && defined(__ia64) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="preprocessor"></span><span class="preprocessor">#include <machine/sys/inline.h></span></div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="keyword">static</span> <span class="keyword">inline</span> ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> {</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> ticks ret;</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> </div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> ret = _Asm_mov_from_ar (_AREG_ITC);</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> }</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> </div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> INLINE_ELAPSED(<span class="keyword">inline</span>)</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> </div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="comment">/* Microsoft Visual C++ */</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="preprocessor">#if defined(_MSC_VER) && defined(_M_IA64) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> __int64 ticks;</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="preprocessor"># ifdef __cplusplus</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="preprocessor"># endif</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="preprocessor"></span>ticks __getReg(<span class="keywordtype">int</span> whichReg);</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="preprocessor">#pragma intrinsic(__getReg)</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="keyword">static</span> __inline ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> {</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="keyword">volatile</span> ticks temp;</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> temp = __getReg(3116);</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="keywordflow">return</span> temp;</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> }</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> </div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> INLINE_ELAPSED(<span class="keyword">inline</span>)</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="comment"> * PA-RISC cycle counter </span></div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="preprocessor">#if defined(__hppa__) || defined(__hppa) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="preprocessor"># ifdef __GNUC__</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="preprocessor"></span><span class="keyword">static</span> __inline__ ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> {</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> ticks ret;</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> </div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> __asm__ __volatile__(<span class="stringliteral">"mfctl 16, %0"</span>: <span class="stringliteral">"=r"</span> (ret));</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="comment">/* no input, nothing else clobbered */</span></div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> }</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="preprocessor"># else</span></div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="preprocessor"></span><span class="preprocessor"># include <machine/inline.h></span></div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> {</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="keyword">register</span> ticks ret;</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> _MFCTL(16, ret);</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> }</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="preprocessor"># endif</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> INLINE_ELAPSED(<span class="keyword">inline</span>)</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> </div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="comment">/* S390, courtesy of James Treacy */</span></div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="preprocessor">#if defined(__GNUC__) && defined(__s390__) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> </div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="keyword">static</span> __inline__ ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> {</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> ticks cycles;</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> __asm__(<span class="stringliteral">"stck 0(%0)"</span> : : <span class="stringliteral">"a"</span> (&(cycles)) : <span class="stringliteral">"memory"</span>, <span class="stringliteral">"cc"</span>);</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="keywordflow">return</span> cycles;</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> }</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> </div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> </div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="preprocessor"></span><span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="preprocessor">#if defined(__GNUC__) && defined(__alpha__) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="preprocessor"></span><span class="comment">/*</span></div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="comment"> * The 32-bit cycle counter on alpha overflows pretty quickly, </span></div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="comment"> * unfortunately. A 1GHz machine overflows in 4 seconds.</span></div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> ticks;</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> </div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="keyword">static</span> __inline__ ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> {</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> cc;</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> __asm__ __volatile__ (<span class="stringliteral">"rpcc %0"</span> : <span class="stringliteral">"=r"</span>(cc));</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="keywordflow">return</span> (cc & 0xFFFFFFFF);</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> }</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> </div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> </div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="preprocessor">#if defined(__GNUC__) && defined(__sparc_v9__) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> </div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="keyword">static</span> __inline__ ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> {</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> ticks ret;</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> __asm__ __volatile__(<span class="stringliteral">"rd %%tick, %0"</span> : <span class="stringliteral">"=r"</span> (ret));</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="keywordflow">return</span> ret;</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> }</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> </div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> </div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="preprocessor">#if (defined(__DECC) || defined(__DECCXX)) && defined(__alpha) && defined(HAVE_C_ASM_H) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="preprocessor"></span><span class="preprocessor"># include <c_asm.h></span></div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> ticks;</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> </div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="keyword">static</span> __inline ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> {</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> cc;</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> cc = <span class="keyword">asm</span>(<span class="stringliteral">"rpcc %v0"</span>);</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="keywordflow">return</span> (cc & 0xFFFFFFFF);</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> }</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> </div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> INLINE_ELAPSED(__inline)</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> </div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="preprocessor"></span><span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="comment">/* SGI/Irix */</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="preprocessor">#if defined(HAVE_CLOCK_GETTIME) && defined(CLOCK_SGI_CYCLE) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keyword">struct </span>timespec ticks;</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> </div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="keyword">static</span> <span class="keyword">inline</span> ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> {</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="keyword">struct </span>timespec t;</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> clock_gettime(CLOCK_SGI_CYCLE, &t);</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="keywordflow">return</span> t;</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> }</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> </div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> elapsed(ticks t1, ticks t0)</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> {</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="keywordflow">return</span> ((<span class="keywordtype">double</span>)t1.tv_sec - (<span class="keywordtype">double</span>)t0.tv_sec) * 1.0E9 +</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> ((double)t1.tv_nsec - (<span class="keywordtype">double</span>)t0.tv_nsec);</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> }</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="comment">/* Cray UNICOS _rtc() intrinsic function */</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor">#if defined(HAVE__RTC) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor"></span><span class="preprocessor">#ifdef HAVE_INTRINSICS_H</span></div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="preprocessor"></span><span class="preprocessor"># include <intrinsics.h></span></div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="keyword">typedef</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> ticks;</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> </div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="preprocessor">#define getticks _rtc</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> INLINE_ELAPSED(<span class="keyword">inline</span>)</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> </div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="comment">/*----------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="comment">/* MIPS ZBus */</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor">#if defined(HAVE_MIPS_ZBUS_TIMER) && HAVE_MIPS_ZBUS_TIMER</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor"></span><span class="preprocessor">#if defined(__mips__) && !defined(HAVE_TICK_COUNTER)</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor"></span><span class="preprocessor">#include <sys/mman.h></span></div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor">#include <unistd.h></span></div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor">#include <fcntl.h></span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> </div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="keyword">typedef</span> uint64_t ticks;</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> </div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="keyword">static</span> <span class="keyword">inline</span> ticks getticks(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> {</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="keyword">static</span> uint64_t* addr = 0;</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> </div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="keywordflow">if</span> (addr == 0)</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> {</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> uint32_t rq_addr = 0x10030000;</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="keywordtype">int</span> fd;</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="keywordtype">int</span> pgsize;</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> </div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> pgsize = getpagesize();</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> fd = open (<span class="stringliteral">"/dev/mem"</span>, O_RDONLY | O_SYNC, 0);</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="keywordflow">if</span> (fd < 0) {</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> perror(<span class="stringliteral">"open"</span>);</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="keywordflow">return</span> NULL;</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> }</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> addr = mmap(0, pgsize, PROT_READ, MAP_SHARED, fd, rq_addr);</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> close(fd);</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="keywordflow">if</span> (addr == (uint64_t *)-1) {</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> perror(<span class="stringliteral">"mmap"</span>);</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="keywordflow">return</span> NULL;</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> }</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> }</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> </div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="keywordflow">return</span> *addr;</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> }</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> </div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> INLINE_ELAPSED(<span class="keyword">inline</span>)</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> </div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="preprocessor">#define HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* HAVE_MIPS_ZBUS_TIMER */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor">#endif</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_0c7f2452bc84fa0fc4195fb15953ec53.html b/doc/api/html/dir_0c7f2452bc84fa0fc4195fb15953ec53.html
deleted file mode 100644
index a0304ea..0000000
--- a/doc/api/html/dir_0c7f2452bc84fa0fc4195fb15953ec53.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/radon/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_0c7f2452bc84fa0fc4195fb15953ec53.html">radon</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">radon Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:inverse__radon_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="inverse__radon_8c.html">inverse_radon.c</a> <a href="inverse__radon_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:inverse__radon_8c"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based discrete inverse Radon transform. <br/></td></tr>
-<tr class="memitem:radon_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="radon_8c.html">radon.c</a> <a href="radon_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:radon_8c"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based discrete Radon transform. <br/></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_0c9e32fd27b7f4e80ec4ebeb6c427e2d.html b/doc/api/html/dir_0c9e32fd27b7f4e80ec4ebeb6c427e2d.html
deleted file mode 100644
index c44022f..0000000
--- a/doc/api/html/dir_0c9e32fd27b7f4e80ec4ebeb6c427e2d.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - examples/nnfft/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_0c9e32fd27b7f4e80ec4ebeb6c427e2d.html">nnfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nnfft Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:accuracy_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>accuracy.c</b> <a href="accuracy_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nnfft_2simple__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nnfft/simple_test.c</b> <a href="nnfft_2simple__test_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_224fe669cf662e4d4573ba584877a9b9.html b/doc/api/html/dir_224fe669cf662e4d4573ba584877a9b9.html
deleted file mode 100644
index 7ed373e..0000000
--- a/doc/api/html/dir_224fe669cf662e4d4573ba584877a9b9.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/fastsumS2/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_224fe669cf662e4d4573ba584877a9b9.html">fastsumS2</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastsumS2 Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:applications_2fastsumS2_2doxygen_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>applications/fastsumS2/doxygen.h</b> <a href="applications_2fastsumS2_2doxygen_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:fastsumS2_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>fastsumS2.c</b> <a href="fastsumS2_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_23ec12649285f9fabf3a6b7380226c28.html b/doc/api/html/dir_23ec12649285f9fabf3a6b7380226c28.html
deleted file mode 100644
index 5905d25..0000000
--- a/doc/api/html/dir_23ec12649285f9fabf3a6b7380226c28.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - util/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_23ec12649285f9fabf3a6b7380226c28.html">util</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">util Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:util_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>util.c</b> <a href="util_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_25564cacf5a7ef2ec915d9f7b609853e.html b/doc/api/html/dir_25564cacf5a7ef2ec915d9f7b609853e.html
deleted file mode 100644
index 137f617..0000000
--- a/doc/api/html/dir_25564cacf5a7ef2ec915d9f7b609853e.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/nfsft/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_25564cacf5a7ef2ec915d9f7b609853e.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsft Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:kernel_2nfsft_2api_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>kernel/nfsft/api.h</b> <a href="kernel_2nfsft_2api_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:legendre_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>legendre.c</b> <a href="legendre_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:legendre_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>legendre.h</b> <a href="legendre_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:nfsft_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="nfsft_8c.html">nfsft.c</a> <a href="nfsft_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:nfsft_8c"><td class="mdescLeft"> </td><td class="mdescRight">Implementation file for the NFSFT module. <br/></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_390363ac6c75087990c53a11ba2c3b15.html b/doc/api/html/dir_390363ac6c75087990c53a11ba2c3b15.html
deleted file mode 100644
index 1a14578..0000000
--- a/doc/api/html/dir_390363ac6c75087990c53a11ba2c3b15.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - examples/nsfft/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_390363ac6c75087990c53a11ba2c3b15.html">nsfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nsfft Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nsfft__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nsfft_test.c</b> <a href="nsfft__test_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nsfft_2simple__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nsfft/simple_test.c</b> <a href="nsfft_2simple__test_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_58759e03702cf5d3134868f6de633189.html b/doc/api/html/dir_58759e03702cf5d3134868f6de633189.html
deleted file mode 100644
index fc11062..0000000
--- a/doc/api/html/dir_58759e03702cf5d3134868f6de633189.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/solver/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_58759e03702cf5d3134868f6de633189.html">solver</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">solver Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:solver_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html">solver.c</a> <a href="solver_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:solver_8c"><td class="mdescLeft"> </td><td class="mdescRight">Implementation file for the solver module. <br/></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_6409bbb6ca4d9fdb6de069951c273365.html b/doc/api/html/dir_6409bbb6ca4d9fdb6de069951c273365.html
deleted file mode 100644
index f67f603..0000000
--- a/doc/api/html/dir_6409bbb6ca4d9fdb6de069951c273365.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/nfct/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_6409bbb6ca4d9fdb6de069951c273365.html">nfct</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfct Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nfct_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfct.c</b> <a href="nfct_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html b/doc/api/html/dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html
deleted file mode 100644
index 8f81322..0000000
--- a/doc/api/html/dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/polarFFT/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html">polarFFT</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">polarFFT Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:applications_2polarFFT_2doxygen_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>applications/polarFFT/doxygen.h</b> <a href="applications_2polarFFT_2doxygen_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:linogram__fft__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="linogram__fft__test_8c.html">linogram_fft_test.c</a> <a href="linogram__fft__test_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:linogram__fft__test_8c"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based pseudo-polar FFT and inverse. <br/></td></tr>
-<tr class="memitem:mpolar__fft__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="mpolar__fft__test_8c.html">mpolar_fft_test.c</a> <a href="mpolar__fft__test_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:mpolar__fft__test_8c"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based polar FFT and inverse on modified polar grid. <br/></td></tr>
-<tr class="memitem:polar__fft__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="polar__fft__test_8c.html">polar_fft_test.c</a> <a href="polar__fft__test_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:polar__fft__test_8c"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based polar FFT and inverse. <br/></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html b/doc/api/html/dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html
deleted file mode 100644
index b41e54f..0000000
--- a/doc/api/html/dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/util/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html">util</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">util Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:bessel__i0_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>bessel_i0.c</b> <a href="bessel__i0_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:error_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>error.c</b> <a href="error_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:float_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>float.c</b> <a href="float_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:int_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>int.c</b> <a href="int_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:lambda_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>lambda.c</b> <a href="lambda_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:malloc_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>malloc.c</b> <a href="malloc_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:sinc_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>sinc.c</b> <a href="sinc_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_7af51a00587982c04b08a156fa91c254.html b/doc/api/html/dir_7af51a00587982c04b08a156fa91c254.html
deleted file mode 100644
index 434decb..0000000
--- a/doc/api/html/dir_7af51a00587982c04b08a156fa91c254.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - examples/solver/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_7af51a00587982c04b08a156fa91c254.html">solver</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">solver Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:examples_2solver_2doxygen_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>examples/solver/doxygen.h</b> <a href="examples_2solver_2doxygen_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:glacier_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>glacier.c</b> <a href="glacier_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:solver_2simple__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>solver/simple_test.c</b> <a href="solver_2simple__test_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_7bc5b4c2d8fedbf49abc178849c07704.html b/doc/api/html/dir_7bc5b4c2d8fedbf49abc178849c07704.html
deleted file mode 100644
index 3389c09..0000000
--- a/doc/api/html/dir_7bc5b4c2d8fedbf49abc178849c07704.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - examples/fpt/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_7bc5b4c2d8fedbf49abc178849c07704.html">fpt</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fpt Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:fpt_2simple__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>fpt/simple_test.c</b> <a href="fpt_2simple__test_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_7eb6ea3471917cbff788e1046aaeac44.html b/doc/api/html/dir_7eb6ea3471917cbff788e1046aaeac44.html
deleted file mode 100644
index 76d274d..0000000
--- a/doc/api/html/dir_7eb6ea3471917cbff788e1046aaeac44.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/nfft/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_7eb6ea3471917cbff788e1046aaeac44.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nfft_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfft.c</b> <a href="nfft_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_899180af8ae9527aed19a2e763253fcc.html b/doc/api/html/dir_899180af8ae9527aed19a2e763253fcc.html
deleted file mode 100644
index 1539593..0000000
--- a/doc/api/html/dir_899180af8ae9527aed19a2e763253fcc.html
+++ /dev/null
@@ -1,57 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/mri/mri2d/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">mri2d Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:construct__data__2d_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>construct_data_2d.c</b> <a href="construct__data__2d_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:construct__data__inh__2d1d_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>construct_data_inh_2d1d.c</b> <a href="construct__data__inh__2d1d_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:construct__data__inh__3d_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>construct_data_inh_3d.c</b> <a href="construct__data__inh__3d_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:applications_2mri_2mri2d_2doxygen_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>applications/mri/mri2d/doxygen.h</b> <a href="applications_2mri_2mri2d_2doxygen_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:reconstruct__data__2d_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>reconstruct_data_2d.c</b> <a href="reconstruct__data__2d_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:mri2d_2reconstruct__data__gridding_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>mri2d/reconstruct_data_gridding.c</b> <a href="mri2d_2reconstruct__data__gridding_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:reconstruct__data__inh__2d1d_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>reconstruct_data_inh_2d1d.c</b> <a href="reconstruct__data__inh__2d1d_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:reconstruct__data__inh__3d_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>reconstruct_data_inh_3d.c</b> <a href="reconstruct__data__inh__3d_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:reconstruct__data__inh__nnfft_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>reconstruct_data_inh_nnfft.c</b> <a href="reconstruct__data__inh__nnfft_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_8c2550e038f78045c202418cbfa07f80.html b/doc/api/html/dir_8c2550e038f78045c202418cbfa07f80.html
deleted file mode 100644
index 81cc4fc..0000000
--- a/doc/api/html/dir_8c2550e038f78045c202418cbfa07f80.html
+++ /dev/null
@@ -1,60 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - examples/nfft/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:flags_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="flags_8c.html">flags.c</a> <a href="flags_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:flags_8c"><td class="mdescLeft"> </td><td class="mdescRight">Testing the nfft. <br/></td></tr>
-<tr class="memitem:ndft__fast_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="ndft__fast_8c.html">ndft_fast.c</a> <a href="ndft__fast_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:ndft__fast_8c"><td class="mdescLeft"> </td><td class="mdescRight">Testing ndft, Horner-like ndft, and fully precomputed ndft. <br/></td></tr>
-<tr class="memitem:nfft__benchomp_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfft_benchomp.c</b> <a href="nfft__benchomp_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nfft__benchomp__createdataset_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfft_benchomp_createdataset.c</b> <a href="nfft__benchomp__createdataset_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nfft__benchomp__detail_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfft_benchomp_detail.c</b> <a href="nfft__benchomp__detail_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nfft__times_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfft_times.c</b> <a href="nfft__times_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nfft_2simple__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfft/simple_test.c</b> <a href="nfft_2simple__test_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nfft_2simple__test__threads_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfft/simple_test_threads.c</b> <a href="nfft_2simple__test__threads_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:taylor__nfft_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="taylor__nfft_8c.html">taylor_nfft.c</a> <a href="taylor__nfft_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:taylor__nfft_8c"><td class="mdescLeft"> </td><td class="mdescRight">Testing the nfft againt a Taylor expansion based version. <br/></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_8d4f17a3806fad624168c14bf0ea2fb4.html b/doc/api/html/dir_8d4f17a3806fad624168c14bf0ea2fb4.html
deleted file mode 100644
index a456a48..0000000
--- a/doc/api/html/dir_8d4f17a3806fad624168c14bf0ea2fb4.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - examples/nfct/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8d4f17a3806fad624168c14bf0ea2fb4.html">nfct</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfct Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nfct_2simple__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfct/simple_test.c</b> <a href="nfct_2simple__test_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_8d554148c8057b12dc5cb11ef005c62c.html b/doc/api/html/dir_8d554148c8057b12dc5cb11ef005c62c.html
deleted file mode 100644
index 66b6c9e..0000000
--- a/doc/api/html/dir_8d554148c8057b12dc5cb11ef005c62c.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - examples/nfsoft/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8d554148c8057b12dc5cb11ef005c62c.html">nfsoft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsoft Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nfsoft_2simple__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfsoft/simple_test.c</b> <a href="nfsoft_2simple__test_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_8f3c7156d7272f1462551f3a6c5fabd1.html b/doc/api/html/dir_8f3c7156d7272f1462551f3a6c5fabd1.html
deleted file mode 100644
index c53adea..0000000
--- a/doc/api/html/dir_8f3c7156d7272f1462551f3a6c5fabd1.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/nfsoft/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_8f3c7156d7272f1462551f3a6c5fabd1.html">nfsoft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsoft Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nfsoft_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfsoft.c</b> <a href="nfsoft_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:wigner_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>wigner.c</b> <a href="wigner_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:wigner_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html">wigner.h</a> <a href="wigner_8h_source.html">[code]</a></td></tr>
-<tr class="memdesc:wigner_8h"><td class="mdescLeft"> </td><td class="mdescRight">Header file for functions related to Wigner-d/D functions. <br/></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_a42734e8bce3bbae48210591d0fac63c.html b/doc/api/html/dir_a42734e8bce3bbae48210591d0fac63c.html
deleted file mode 100644
index 9a80c89..0000000
--- a/doc/api/html/dir_a42734e8bce3bbae48210591d0fac63c.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/nsfft/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_a42734e8bce3bbae48210591d0fac63c.html">nsfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nsfft Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nsfft_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nsfft.c</b> <a href="nsfft_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_a6d8c0f9045568178601abc26c60f91f.html b/doc/api/html/dir_a6d8c0f9045568178601abc26c60f91f.html
deleted file mode 100644
index 86bc80c..0000000
--- a/doc/api/html/dir_a6d8c0f9045568178601abc26c60f91f.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/mri/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_a6d8c0f9045568178601abc26c60f91f.html">mri</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">mri Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:mri_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>mri.c</b> <a href="mri_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_a6e4fee11f07c3b70486e88fe92cbbdc.html b/doc/api/html/dir_a6e4fee11f07c3b70486e88fe92cbbdc.html
deleted file mode 100644
index 5ed8d71..0000000
--- a/doc/api/html/dir_a6e4fee11f07c3b70486e88fe92cbbdc.html
+++ /dev/null
@@ -1,60 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">applications Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="subdirs"></a>
-Directories</h2></td></tr>
-<tr class="memitem:dir_ef5ddbf7eefb3d84d608c9a9a32f9b2e"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_ef5ddbf7eefb3d84d608c9a9a32f9b2e.html">fastgauss</a></td></tr>
-<tr class="memitem:dir_ac1c8221356786b534ab925d360822d4"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></td></tr>
-<tr class="memitem:dir_224fe669cf662e4d4573ba584877a9b9"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_224fe669cf662e4d4573ba584877a9b9.html">fastsumS2</a></td></tr>
-<tr class="memitem:dir_e198b4faa999927a1ae92d03d5f1f5e6"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_e198b4faa999927a1ae92d03d5f1f5e6.html">iterS2</a></td></tr>
-<tr class="memitem:dir_fcbc4f55ac8dbf86a30b1d7535946c2d"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></td></tr>
-<tr class="memitem:dir_697d3e9fc07ca8e2f36d15eea53bc2fc"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html">polarFFT</a></td></tr>
-<tr class="memitem:dir_deedd863ca11d55d683e9872da0f56e1"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_deedd863ca11d55d683e9872da0f56e1.html">quadratureS2</a></td></tr>
-<tr class="memitem:dir_0c7f2452bc84fa0fc4195fb15953ec53"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_0c7f2452bc84fa0fc4195fb15953ec53.html">radon</a></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:applications_2doxygen_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>applications/doxygen.c</b> <a href="applications_2doxygen_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_ac1c8221356786b534ab925d360822d4.html b/doc/api/html/dir_ac1c8221356786b534ab925d360822d4.html
deleted file mode 100644
index 7b7bd82..0000000
--- a/doc/api/html/dir_ac1c8221356786b534ab925d360822d4.html
+++ /dev/null
@@ -1,63 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/fastsum/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastsum Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:fastsum_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="fastsum_8c.html">fastsum.c</a> <a href="fastsum_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:fastsum_8c"><td class="mdescLeft"> </td><td class="mdescRight">Fast NFFT-based summation algorithm. <br/></td></tr>
-<tr class="memitem:fastsum_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="fastsum_8h.html">fastsum.h</a> <a href="fastsum_8h_source.html">[code]</a></td></tr>
-<tr class="memdesc:fastsum_8h"><td class="mdescLeft"> </td><td class="mdescRight">Header file for the fast NFFT-based summation algorithm. <br/></td></tr>
-<tr class="memitem:fastsum__benchomp_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>fastsum_benchomp.c</b> <a href="fastsum__benchomp_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:fastsum__benchomp__createdataset_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>fastsum_benchomp_createdataset.c</b> <a href="fastsum__benchomp__createdataset_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:fastsum__benchomp__detail_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>fastsum_benchomp_detail.c</b> <a href="fastsum__benchomp__detail_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:fastsum__matlab_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="fastsum__matlab_8c.html">fastsum_matlab.c</a> <a href="fastsum__matlab_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:fastsum__matlab_8c"><td class="mdescLeft"> </td><td class="mdescRight">Simple test program for the fast NFFT-based summation algorithm, called by fastsum.m. <br/></td></tr>
-<tr class="memitem:fastsum__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="fastsum__test_8c.html">fastsum_test.c</a> <a href="fastsum__test_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:fastsum__test_8c"><td class="mdescLeft"> </td><td class="mdescRight">Simple test program for the fast NFFT-based summation algorithm. <br/></td></tr>
-<tr class="memitem:kernels_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="kernels_8c.html">kernels.c</a> <a href="kernels_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:kernels_8c"><td class="mdescLeft"> </td><td class="mdescRight">File with predefined kernels for the fast summation algorithm. <br/></td></tr>
-<tr class="memitem:kernels_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="kernels_8h.html">kernels.h</a> <a href="kernels_8h_source.html">[code]</a></td></tr>
-<tr class="memdesc:kernels_8h"><td class="mdescLeft"> </td><td class="mdescRight">Header file with predefined kernels for the fast summation algorithm. <br/></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_d28a4824dc47e487b107a5db32ef43c4.html b/doc/api/html/dir_d28a4824dc47e487b107a5db32ef43c4.html
deleted file mode 100644
index 6308821..0000000
--- a/doc/api/html/dir_d28a4824dc47e487b107a5db32ef43c4.html
+++ /dev/null
@@ -1,61 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - examples/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">examples Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="subdirs"></a>
-Directories</h2></td></tr>
-<tr class="memitem:dir_7bc5b4c2d8fedbf49abc178849c07704"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_7bc5b4c2d8fedbf49abc178849c07704.html">fpt</a></td></tr>
-<tr class="memitem:dir_8d4f17a3806fad624168c14bf0ea2fb4"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_8d4f17a3806fad624168c14bf0ea2fb4.html">nfct</a></td></tr>
-<tr class="memitem:dir_8c2550e038f78045c202418cbfa07f80"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></td></tr>
-<tr class="memitem:dir_e6016a3bd4e6017d6b851aae5334ffd2"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_e6016a3bd4e6017d6b851aae5334ffd2.html">nfsft</a></td></tr>
-<tr class="memitem:dir_8d554148c8057b12dc5cb11ef005c62c"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_8d554148c8057b12dc5cb11ef005c62c.html">nfsoft</a></td></tr>
-<tr class="memitem:dir_fa65d2cfa17fd1e7f6091ef3f0c886ac"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_fa65d2cfa17fd1e7f6091ef3f0c886ac.html">nfst</a></td></tr>
-<tr class="memitem:dir_0c9e32fd27b7f4e80ec4ebeb6c427e2d"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_0c9e32fd27b7f4e80ec4ebeb6c427e2d.html">nnfft</a></td></tr>
-<tr class="memitem:dir_390363ac6c75087990c53a11ba2c3b15"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_390363ac6c75087990c53a11ba2c3b15.html">nsfft</a></td></tr>
-<tr class="memitem:dir_7af51a00587982c04b08a156fa91c254"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_7af51a00587982c04b08a156fa91c254.html">solver</a></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:examples_2doxygen_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>examples/doxygen.c</b> <a href="examples_2doxygen_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_d44c64559bbebec7f509842c48db8b23.html b/doc/api/html/dir_d44c64559bbebec7f509842c48db8b23.html
deleted file mode 100644
index b594ea0..0000000
--- a/doc/api/html/dir_d44c64559bbebec7f509842c48db8b23.html
+++ /dev/null
@@ -1,59 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - include/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">include Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:include_2api_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>include/api.h</b> <a href="include_2api_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:config_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>config.h</b> <a href="config_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:cycle_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>cycle.h</b> <a href="cycle_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:infft_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>infft.h</b> <a href="infft_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:nfft3_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html">nfft3.h</a> <a href="nfft3_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:nfft3conf_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfft3conf.h</b> <a href="nfft3conf_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:nfft3util_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3util_8h.html">nfft3util.h</a> <a href="nfft3util_8h_source.html">[code]</a></td></tr>
-<tr class="memdesc:nfft3util_8h"><td class="mdescLeft"> </td><td class="mdescRight">Header file for utility functions used by the nfft3 library. <br/></td></tr>
-<tr class="memitem:solver__adjoint_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html">solver_adjoint.h</a> <a href="solver__adjoint_8h_source.html">[code]</a></td></tr>
-<tr class="memdesc:solver__adjoint_8h"><td class="mdescLeft"> </td><td class="mdescRight">Header file for adjoint solver. <br/></td></tr>
-<tr class="memitem:ticks_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>ticks.h</b> <a href="ticks_8h_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_d46f6e04c6f21c2dce6558b4c13d80de.html b/doc/api/html/dir_d46f6e04c6f21c2dce6558b4c13d80de.html
deleted file mode 100644
index 7373688..0000000
--- a/doc/api/html/dir_d46f6e04c6f21c2dce6558b4c13d80de.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/nfst/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_d46f6e04c6f21c2dce6558b4c13d80de.html">nfst</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfst Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nfst_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfst.c</b> <a href="nfst_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_d47b87128a15c0ce57cf8f363265bec1.html b/doc/api/html/dir_d47b87128a15c0ce57cf8f363265bec1.html
deleted file mode 100644
index 5f34fe8..0000000
--- a/doc/api/html/dir_d47b87128a15c0ce57cf8f363265bec1.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/fpt/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_d47b87128a15c0ce57cf8f363265bec1.html">fpt</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fpt Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:fpt_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><a class="el" href="fpt_8c.html">fpt.c</a> <a href="fpt_8c_source.html">[code]</a></td></tr>
-<tr class="memdesc:fpt_8c"><td class="mdescLeft"> </td><td class="mdescRight">Implementation file for the FPT module. <br/></td></tr>
-<tr class="memitem:fpt_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>fpt.h</b> <a href="fpt_8h_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_dc43877d82dd332f9fb2071fcca799d6.html b/doc/api/html/dir_dc43877d82dd332f9fb2071fcca799d6.html
deleted file mode 100644
index cdcd79f..0000000
--- a/doc/api/html/dir_dc43877d82dd332f9fb2071fcca799d6.html
+++ /dev/null
@@ -1,59 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">kernel Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="subdirs"></a>
-Directories</h2></td></tr>
-<tr class="memitem:dir_d47b87128a15c0ce57cf8f363265bec1"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_d47b87128a15c0ce57cf8f363265bec1.html">fpt</a></td></tr>
-<tr class="memitem:dir_a6d8c0f9045568178601abc26c60f91f"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_a6d8c0f9045568178601abc26c60f91f.html">mri</a></td></tr>
-<tr class="memitem:dir_6409bbb6ca4d9fdb6de069951c273365"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_6409bbb6ca4d9fdb6de069951c273365.html">nfct</a></td></tr>
-<tr class="memitem:dir_7eb6ea3471917cbff788e1046aaeac44"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_7eb6ea3471917cbff788e1046aaeac44.html">nfft</a></td></tr>
-<tr class="memitem:dir_25564cacf5a7ef2ec915d9f7b609853e"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_25564cacf5a7ef2ec915d9f7b609853e.html">nfsft</a></td></tr>
-<tr class="memitem:dir_8f3c7156d7272f1462551f3a6c5fabd1"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_8f3c7156d7272f1462551f3a6c5fabd1.html">nfsoft</a></td></tr>
-<tr class="memitem:dir_d46f6e04c6f21c2dce6558b4c13d80de"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_d46f6e04c6f21c2dce6558b4c13d80de.html">nfst</a></td></tr>
-<tr class="memitem:dir_ea25627ea6e0d39c26e4e31bca7b94c4"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_ea25627ea6e0d39c26e4e31bca7b94c4.html">nnfft</a></td></tr>
-<tr class="memitem:dir_a42734e8bce3bbae48210591d0fac63c"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_a42734e8bce3bbae48210591d0fac63c.html">nsfft</a></td></tr>
-<tr class="memitem:dir_58759e03702cf5d3134868f6de633189"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_58759e03702cf5d3134868f6de633189.html">solver</a></td></tr>
-<tr class="memitem:dir_7ab5cd9d6a44db3bf3b807f89e50cefe"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html">util</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_deedd863ca11d55d683e9872da0f56e1.html b/doc/api/html/dir_deedd863ca11d55d683e9872da0f56e1.html
deleted file mode 100644
index 6a1b8f1..0000000
--- a/doc/api/html/dir_deedd863ca11d55d683e9872da0f56e1.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/quadratureS2/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_deedd863ca11d55d683e9872da0f56e1.html">quadratureS2</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">quadratureS2 Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:applications_2quadratureS2_2doxygen_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>applications/quadratureS2/doxygen.h</b> <a href="applications_2quadratureS2_2doxygen_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:quadratureS2_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>quadratureS2.c</b> <a href="quadratureS2_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_e198b4faa999927a1ae92d03d5f1f5e6.html b/doc/api/html/dir_e198b4faa999927a1ae92d03d5f1f5e6.html
deleted file mode 100644
index 547c1e8..0000000
--- a/doc/api/html/dir_e198b4faa999927a1ae92d03d5f1f5e6.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/iterS2/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_e198b4faa999927a1ae92d03d5f1f5e6.html">iterS2</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">iterS2 Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:applications_2iterS2_2doxygen_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>applications/iterS2/doxygen.h</b> <a href="applications_2iterS2_2doxygen_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:iterS2_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>iterS2.c</b> <a href="iterS2_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_e6016a3bd4e6017d6b851aae5334ffd2.html b/doc/api/html/dir_e6016a3bd4e6017d6b851aae5334ffd2.html
deleted file mode 100644
index 379566d..0000000
--- a/doc/api/html/dir_e6016a3bd4e6017d6b851aae5334ffd2.html
+++ /dev/null
@@ -1,53 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - examples/nfsft/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_e6016a3bd4e6017d6b851aae5334ffd2.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsft Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nfsft__benchomp_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfsft_benchomp.c</b> <a href="nfsft__benchomp_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nfsft__benchomp__createdataset_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfsft_benchomp_createdataset.c</b> <a href="nfsft__benchomp__createdataset_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nfsft__benchomp__detail_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfsft_benchomp_detail.c</b> <a href="nfsft__benchomp__detail_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nfsft_2simple__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfsft/simple_test.c</b> <a href="nfsft_2simple__test_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:nfsft_2simple__test__threads_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfsft/simple_test_threads.c</b> <a href="nfsft_2simple__test__threads_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_ea25627ea6e0d39c26e4e31bca7b94c4.html b/doc/api/html/dir_ea25627ea6e0d39c26e4e31bca7b94c4.html
deleted file mode 100644
index fc50652..0000000
--- a/doc/api/html/dir_ea25627ea6e0d39c26e4e31bca7b94c4.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernel/nnfft/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_ea25627ea6e0d39c26e4e31bca7b94c4.html">nnfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nnfft Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nnfft_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nnfft.c</b> <a href="nnfft_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_ef5ddbf7eefb3d84d608c9a9a32f9b2e.html b/doc/api/html/dir_ef5ddbf7eefb3d84d608c9a9a32f9b2e.html
deleted file mode 100644
index 66c6099..0000000
--- a/doc/api/html/dir_ef5ddbf7eefb3d84d608c9a9a32f9b2e.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/fastgauss/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ef5ddbf7eefb3d84d608c9a9a32f9b2e.html">fastgauss</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastgauss Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:fastgauss_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>fastgauss.c</b> <a href="fastgauss_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_fa65d2cfa17fd1e7f6091ef3f0c886ac.html b/doc/api/html/dir_fa65d2cfa17fd1e7f6091ef3f0c886ac.html
deleted file mode 100644
index 91fb826..0000000
--- a/doc/api/html/dir_fa65d2cfa17fd1e7f6091ef3f0c886ac.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - examples/nfst/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_fa65d2cfa17fd1e7f6091ef3f0c886ac.html">nfst</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfst Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:nfst_2simple__test_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>nfst/simple_test.c</b> <a href="nfst_2simple__test_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_fb8678d426210fc305fe5dfd30a163a5.html b/doc/api/html/dir_fb8678d426210fc305fe5dfd30a163a5.html
deleted file mode 100644
index 21dd559..0000000
--- a/doc/api/html/dir_fb8678d426210fc305fe5dfd30a163a5.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/mri/mri3d/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_fb8678d426210fc305fe5dfd30a163a5.html">mri3d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">mri3d Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:construct__data__2d1d_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>construct_data_2d1d.c</b> <a href="construct__data__2d1d_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:construct__data__3d_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>construct_data_3d.c</b> <a href="construct__data__3d_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:applications_2mri_2mri3d_2doxygen_8h"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>applications/mri/mri3d/doxygen.h</b> <a href="applications_2mri_2mri3d_2doxygen_8h_source.html">[code]</a></td></tr>
-<tr class="memitem:reconstruct__data__2d1d_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>reconstruct_data_2d1d.c</b> <a href="reconstruct__data__2d1d_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:reconstruct__data__3d_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>reconstruct_data_3d.c</b> <a href="reconstruct__data__3d_8c_source.html">[code]</a></td></tr>
-<tr class="memitem:mri3d_2reconstruct__data__gridding_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>mri3d/reconstruct_data_gridding.c</b> <a href="mri3d_2reconstruct__data__gridding_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html b/doc/api/html/dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html
deleted file mode 100644
index a4a89ca..0000000
--- a/doc/api/html/dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html
+++ /dev/null
@@ -1,54 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - applications/mri/ Directory Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">mri Directory Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="subdirs"></a>
-Directories</h2></td></tr>
-<tr class="memitem:dir_899180af8ae9527aed19a2e763253fcc"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></td></tr>
-<tr class="memitem:dir_fb8678d426210fc305fe5dfd30a163a5"><td class="memItemLeft" align="right" valign="top">directory </td><td class="memItemRight" valign="bottom"><a class="el" href="dir_fb8678d426210fc305fe5dfd30a163a5.html">mri3d</a></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="files"></a>
-Files</h2></td></tr>
-<tr class="memitem:applications_2mri_2doxygen_8c"><td class="memItemLeft" align="right" valign="top">file </td><td class="memItemRight" valign="bottom"><b>applications/mri/doxygen.c</b> <a href="applications_2mri_2doxygen_8c_source.html">[code]</a></td></tr>
-</table>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/doxygen.css b/doc/api/html/doxygen.css
deleted file mode 100644
index c023715..0000000
--- a/doc/api/html/doxygen.css
+++ /dev/null
@@ -1,360 +0,0 @@
-BODY,H1,H2,H3,H4,H5,H6,P,CENTER,TD,TH,UL,DL,DIV
-{
- font-family: Geneva, Arial, Helvetica, sans-serif;
- color: #000000;
-}
-
-BODY,TD
-{
- font-size: 90%;
-}
-
-H1
-{
- text-align: center;
- font-size: 160%;
-}
-
-H1nc
-{
- font-size: 210%;
-}
-
-H2
-{
- font-size: 120%;
-}
-
-H3
-{
- font-size: 100%;
-}
-
-CAPTION
-{
- font-weight: bold
-}
-
-a
-{
- color: #000000;
- text-decoration: none;
-}
-
-div.qindex {
- width: 97%;
- color: #FFFFFF;
- background-color: #177665;
- border-left: 20px solid #7FACA2;
- text-align: center;
- margin: 2px;
- padding: 2px;
- line-height: 140%;
-}
-
-DIV.nav {
- width: 100%;
- background-color: #177665;
- text-align: center;
- margin: 2px;
- padding: 2px;
- line-height: 140%;
-}
-DIV.navtab {
- background-color: #177665;
- text-align: center;
- margin: 2px;
- margin-right: 15px;
- padding: 2px;
-}
-TD.navtab {
- font-size: 70%;
-}
-
-a.qindex:link
-{
- color: #FFFFFF;
- background-color: #177665;
-}
-a.qindex:visited
-{
- color: #FFFFFF;
- background-color: #177665;
-}
-a.qindex:focus
-{
- color: #7FACA2;
- background-color: #177665;
-}
-a.qindex:hover
-{
- color: #7FACA2;
- background-color: #177665;
-}
-a.qindex:active
-{
- color: #7FACA2;
- background-color: #177665;
-}
-
-a.qindexHL:link
-{
- color: #FFFFFF;
- background-color: #177665;
-}
-a.qindexHL:visited
-{
- color: #FFFFFF;
- background-color: #177665;
-}
-a.qindexHL:focus
-{
- color: #7FACA2;
- background-color: #177665;
-}
-a.qindexHL:hover
-{
- color: #7FACA2;
- background-color: #177665;
-}
-a.qindexHL:active
-{
- color: #7FACA2;
- background-color: #177665;
-}
-
-A.el { text-decoration: none; font-weight: bold }
-A.elRef { font-weight: bold }
-A.code:link { text-decoration: none; font-weight: normal; color: #0000FF}
-A.code:visited { text-decoration: none; font-weight: normal; color: #0000FF}
-A.codeRef:link { font-weight: normal; color: #0000FF}
-A.codeRef:visited { font-weight: normal; color: #0000FF}
-DL.el { margin-left: -1cm }
-.fragment {
- font-family: Fixed, monospace;
- font-size: 95%;
-}
-PRE.fragment {
- border: 1px solid #CCCCCC;
- background-color: #f5f5f5;
- margin-top: 4px;
- margin-bottom: 4px;
- margin-left: 2px;
- margin-right: 8px;
- padding-left: 6px;
- padding-right: 6px;
- padding-top: 4px;
- padding-bottom: 4px;
-}
-DIV.ah { background-color: black; font-weight: bold; color: #ffffff; margin-bottom: 3px; margin-top: 3px }
-TD.md { background-color: #F4F4FB; font-weight: bold; }
-TD.mdPrefix {
- background-color: #F4F4FB;
- color: #606060;
- font-size: 80%;
-}
-TD.mdname1 { background-color: #F4F4FB; font-weight: bold; color: #602020; }
-TD.mdname { background-color: #F4F4FB; font-weight: bold; color: #602020; width: 600px; }
-DIV.groupHeader {
- margin-left: 16px;
- margin-top: 12px;
- margin-bottom: 6px;
- font-weight: bold;
-}
-DIV.groupText { margin-left: 16px; font-style: italic; font-size: 90% }
-BODY {
- background: white;
- color: black;
- margin-right: 20px;
- margin-left: 20px;
-}
-TD.indexkey {
- background-color: #BFDCD2;
- font-weight: bold;
- padding-right : 10px;
- padding-top : 2px;
- padding-left : 10px;
- padding-bottom : 2px;
- margin-left : 0px;
- margin-right : 0px;
- margin-top : 2px;
- margin-bottom : 2px;
- border: 1px solid #7FACA2;
-}
-TD.indexvalue {
- background-color: #BFDCD2;
- font-style: italic;
- padding-right : 10px;
- padding-top : 2px;
- padding-left : 10px;
- padding-bottom : 2px;
- margin-left : 0px;
- margin-right : 0px;
- margin-top : 2px;
- margin-bottom : 2px;
- border: 1px solid #7FACA2;
-}
-TR.memlist {
- background-color: #f0f0f0;
-}
-P.formulaDsp { text-align: center; }
-IMG.formulaDsp { }
-IMG.formulaInl { vertical-align: middle; }
-SPAN.keyword { color: #008000 }
-SPAN.keywordtype { color: #604020 }
-SPAN.keywordflow { color: #e08000 }
-SPAN.comment { color: #800000 }
-SPAN.preprocessor { color: #806020 }
-SPAN.stringliteral { color: #002080 }
-SPAN.charliteral { color: #008080 }
-.mdTable {
- border: 1px solid #868686;
- background-color: #F4F4FB;
-}
-.mdRow {
- padding: 8px 10px;
-}
-.mdescLeft {
- padding: 0px 8px 4px 8px;
- font-size: 80%;
- font-style: italic;
- background-color: #FAFAFA;
- border-top: 1px none #E0E0E0;
- border-right: 1px none #E0E0E0;
- border-bottom: 1px none #E0E0E0;
- border-left: 1px none #E0E0E0;
- margin: 0px;
-}
-.mdescRight {
- padding: 0px 8px 4px 8px;
- font-size: 80%;
- font-style: italic;
- background-color: #FAFAFA;
- border-top: 1px none #E0E0E0;
- border-right: 1px none #E0E0E0;
- border-bottom: 1px none #E0E0E0;
- border-left: 1px none #E0E0E0;
- margin: 0px;
-}
-.memItemLeft {
- padding: 1px 0px 0px 8px;
- margin: 4px;
- border-top-width: 1px;
- border-right-width: 1px;
- border-bottom-width: 1px;
- border-left-width: 1px;
- border-top-color: #E0E0E0;
- border-right-color: #E0E0E0;
- border-bottom-color: #E0E0E0;
- border-left-color: #E0E0E0;
- border-top-style: solid;
- border-right-style: none;
- border-bottom-style: none;
- border-left-style: none;
- background-color: #FAFAFA;
- font-size: 80%;
-}
-.memItemRight {
- padding: 1px 8px 0px 8px;
- margin: 4px;
- border-top-width: 1px;
- border-right-width: 1px;
- border-bottom-width: 1px;
- border-left-width: 1px;
- border-top-color: #E0E0E0;
- border-right-color: #E0E0E0;
- border-bottom-color: #E0E0E0;
- border-left-color: #E0E0E0;
- border-top-style: solid;
- border-right-style: none;
- border-bottom-style: none;
- border-left-style: none;
- background-color: #FAFAFA;
- font-size: 80%;
-}
-.memTemplItemLeft {
- padding: 1px 0px 0px 8px;
- margin: 4px;
- border-top-width: 1px;
- border-right-width: 1px;
- border-bottom-width: 1px;
- border-left-width: 1px;
- border-top-color: #E0E0E0;
- border-right-color: #E0E0E0;
- border-bottom-color: #E0E0E0;
- border-left-color: #E0E0E0;
- border-top-style: none;
- border-right-style: none;
- border-bottom-style: none;
- border-left-style: none;
- background-color: #FAFAFA;
- font-size: 80%;
-}
-.memTemplItemRight {
- padding: 1px 8px 0px 8px;
- margin: 4px;
- border-top-width: 1px;
- border-right-width: 1px;
- border-bottom-width: 1px;
- border-left-width: 1px;
- border-top-color: #E0E0E0;
- border-right-color: #E0E0E0;
- border-bottom-color: #E0E0E0;
- border-left-color: #E0E0E0;
- border-top-style: none;
- border-right-style: none;
- border-bottom-style: none;
- border-left-style: none;
- background-color: #FAFAFA;
- font-size: 80%;
-}
-.memTemplParams {
- padding: 1px 0px 0px 8px;
- margin: 4px;
- border-top-width: 1px;
- border-right-width: 1px;
- border-bottom-width: 1px;
- border-left-width: 1px;
- border-top-color: #E0E0E0;
- border-right-color: #E0E0E0;
- border-bottom-color: #E0E0E0;
- border-left-color: #E0E0E0;
- border-top-style: solid;
- border-right-style: none;
- border-bottom-style: none;
- border-left-style: none;
- color: #606060;
- background-color: #FAFAFA;
- font-size: 80%;
-}
-.search { color: #003399;
- font-weight: bold;
-}
-FORM.search {
- margin-bottom: 0px;
- margin-top: 0px;
-}
-INPUT.search { font-size: 75%;
- color: #000080;
- font-weight: normal;
- background-color: #eeeeff;
-}
-TD.tiny { font-size: 75%;
-}
-.dirtab { padding: 4px;
- border-collapse: collapse;
- border: 1px solid #b0b0b0;
-}
-TH.dirtab { background: #eeeeff;
- font-weight: bold;
-}
-HR { height: 1px;
- border: none;
- border-top: 1px solid black;
-}
-
-ul {
- padding-top:0px;
- padding-bottom:0px;
- margin:0px;
-}
diff --git a/doc/api/html/doxygen.png b/doc/api/html/doxygen.png
deleted file mode 100644
index 3ff17d8..0000000
Binary files a/doc/api/html/doxygen.png and /dev/null differ
diff --git a/doc/api/html/dynsections.js b/doc/api/html/dynsections.js
deleted file mode 100644
index 116542f..0000000
--- a/doc/api/html/dynsections.js
+++ /dev/null
@@ -1,78 +0,0 @@
-function toggleVisibility(linkObj)
-{
- var base = $(linkObj).attr('id');
- var summary = $('#'+base+'-summary');
- var content = $('#'+base+'-content');
- var trigger = $('#'+base+'-trigger');
- var src=$(trigger).attr('src');
- if (content.is(':visible')===true) {
- content.hide();
- summary.show();
- $(linkObj).addClass('closed').removeClass('opened');
- $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png');
- } else {
- content.show();
- summary.hide();
- $(linkObj).removeClass('closed').addClass('opened');
- $(trigger).attr('src',src.substring(0,src.length-10)+'open.png');
- }
- return false;
-}
-
-function updateStripes()
-{
- $('table.directory tr').
- removeClass('even').filter(':visible:even').addClass('even');
-}
-function toggleLevel(level)
-{
- $('table.directory tr').each(function(){
- var l = this.id.split('_').length-1;
- var i = $('#img'+this.id.substring(3));
- var a = $('#arr'+this.id.substring(3));
- if (l<level+1) {
- i.attr('src','ftv2folderopen.png');
- a.attr('src','ftv2mnode.png');
- $(this).show();
- } else if (l==level+1) {
- i.attr('src','ftv2folderclosed.png');
- a.attr('src','ftv2pnode.png');
- $(this).show();
- } else {
- $(this).hide();
- }
- });
- updateStripes();
-}
-function toggleFolder(id)
-{
- var n = $('[id^=row_'+id+']');
- var i = $('[id^=img_'+id+']');
- var a = $('[id^=arr_'+id+']');
- var c = n.slice(1);
- if (c.filter(':first').is(':visible')===true) {
- i.attr('src','ftv2folderclosed.png');
- a.attr('src','ftv2pnode.png');
- c.hide();
- } else {
- i.attr('src','ftv2folderopen.png');
- a.attr('src','ftv2mnode.png');
- c.show();
- }
- updateStripes();
-}
-
-function toggleInherit(id)
-{
- var rows = $('tr.inherit.'+id);
- var img = $('tr.inherit_header.'+id+' img');
- var src = $(img).attr('src');
- if (rows.filter(':first').is(':visible')===true) {
- rows.css('display','none');
- $(img).attr('src',src.substring(0,src.length-8)+'closed.png');
- } else {
- rows.css('display','table-row'); // using show() causes jump in firefox
- $(img).attr('src',src.substring(0,src.length-10)+'open.png');
- }
-}
-
diff --git a/doc/api/html/error_8c_source.html b/doc/api/html/error_8c_source.html
deleted file mode 100644
index a344dcf..0000000
--- a/doc/api/html/error_8c_source.html
+++ /dev/null
@@ -1,213 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - error.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html">util</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">error.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: util.c 3483 2010-04-23 19:02:34Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="keyword">static</span> R cnrm1(<span class="keyword">const</span> C *x, <span class="keyword">const</span> INT n)</div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> {</div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> INT k;</div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> R nrm = K(0.0);</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> nrm += CABS(x[k]);</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">return</span> nrm;</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> }</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">static</span> R nrm1(<span class="keyword">const</span> R *x, <span class="keyword">const</span> INT n)</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> {</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> R nrm = K(0.0);</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> nrm += FABS(x[k]);</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordflow">return</span> nrm;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> }</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keyword">static</span> R cerr2(<span class="keyword">const</span> C *x, <span class="keyword">const</span> C *y, <span class="keyword">const</span> INT n)</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> {</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> R err = K(0.0);</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">if</span> (!y)</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> {</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> err += CONJ(x[k]) * x[k];</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> }</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> {</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> err += CONJ(x[k]-y[k]) * (x[k]-y[k]);</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> }</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keywordflow">return</span> SQRT(err);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> }</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keyword">static</span> R err2(<span class="keyword">const</span> R *x, <span class="keyword">const</span> R *y, <span class="keyword">const</span> INT n)</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> {</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> R err = K(0.0);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">if</span> (!y)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> {</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> err += x[k]*x[k];</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> }</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> {</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> err += (x[k]-y[k]) * (x[k]-y[k]);</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> }</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">return</span> SQRT(err);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> }</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> </div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keyword">static</span> R cerri(<span class="keyword">const</span> C *x, <span class="keyword">const</span> C *y, <span class="keyword">const</span> INT n)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> {</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> R err = K(0.0), t;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">if</span> (!y)</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> {</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> t = CABS(x[k]);</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> err = MAX(err, t);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> }</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> }</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> {</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> {</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> t = CABS(x[k] - y[k]);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> err = MAX(err, t);</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> }</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">return</span> err;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> }</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keyword">static</span> R erri(<span class="keyword">const</span> R *x, <span class="keyword">const</span> R *y, <span class="keyword">const</span> INT n)</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> {</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> R err = K(0.0), t;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">if</span> (!y)</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> {</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> {</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> t = FABS(x[k]);</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> err = MAX(err, t);</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> }</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> }</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> {</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> {</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> t = FABS(x[k] - y[k]);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> err = MAX(err, t);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> }</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> }</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">return</span> err;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> }</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> R X(error_l_infty_complex)(<span class="keyword">const</span> C *x, <span class="keyword">const</span> C *y, <span class="keyword">const</span> INT n)</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> {</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">return</span> (cerri(x, y, n)/cerri(x, 0, n));</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> }</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> R X(error_l_infty_double)(<span class="keyword">const</span> R *x, <span class="keyword">const</span> R *y, <span class="keyword">const</span> INT n)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> {</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">return</span> (erri(x, y, n)/erri(x, 0, n));</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> }</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> R X(error_l_infty_1_complex)(<span class="keyword">const</span> C *x, <span class="keyword">const</span> C *y, <span class="keyword">const</span> INT n,</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="keyword">const</span> C *z, <span class="keyword">const</span> INT m)</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> {</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">return</span> (cerri(x, y, n)/cnrm1(z, m));</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> }</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> </div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> R X(error_l_infty_1_double)(<span class="keyword">const</span> R *x, <span class="keyword">const</span> R *y, <span class="keyword">const</span> INT n, <span class="keyword">const</span> R *z,</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="keyword">const</span> INT m)</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> {</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">return</span> (erri(x, y, n)/nrm1(z, m));</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> }</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> </div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> R X(error_l_2_complex)(<span class="keyword">const</span> C *x, <span class="keyword">const</span> C *y, <span class="keyword">const</span> INT n)</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> {</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="keywordflow">return</span> (cerr2(x, y, n)/cerr2(x, 0, n));</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> }</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> </div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> R X(error_l_2_double)(<span class="keyword">const</span> R *x, <span class="keyword">const</span> R *y, <span class="keyword">const</span> INT n)</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> {</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">return</span> (err2(x, y, n)/err2(x, NULL, n));</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/examples_2doxygen_8c_source.html b/doc/api/html/examples_2doxygen_8c_source.html
deleted file mode 100644
index 8c0487a..0000000
--- a/doc/api/html/examples_2doxygen_8c_source.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - doxygen.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">examples/doxygen.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: doxygen.c 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/examples_2solver_2doxygen_8h_source.html b/doc/api/html/examples_2solver_2doxygen_8h_source.html
deleted file mode 100644
index 7b371ef..0000000
--- a/doc/api/html/examples_2solver_2doxygen_8h_source.html
+++ /dev/null
@@ -1,70 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - doxygen.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_7af51a00587982c04b08a156fa91c254.html">solver</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">examples/solver/doxygen.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: doxygen.c 3100 2009-03-12 08:42:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastgauss_8c_source.html b/doc/api/html/fastgauss_8c_source.html
deleted file mode 100644
index 1939c09..0000000
--- a/doc/api/html/fastgauss_8c_source.html
+++ /dev/null
@@ -1,518 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastgauss.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ef5ddbf7eefb3d84d608c9a9a32f9b2e.html">fastgauss</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastgauss.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: fastgauss.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor"></span><span class="preprocessor"> #include <complex.h></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga48aa1ec81a29b9f079701246f0b53ccc"> 48</a></span> <span class="preprocessor">#define DGT_PRE_CEXP (1U<< 0)</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga38ab7e1022ff3c5b556ce93078a05d1e"> 59</a></span> <span class="preprocessor">#define FGT_NDFT (1U<< 1)</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga39c3e544a78853e0da2b9a8c66d3054d"> 69</a></span> <span class="preprocessor">#define FGT_APPROX_B (1U<< 2)</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"><a class="code" href="structfgt__plan.html"> 72</a></span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> {</div>
-<div class="line"><a name="l00074"></a><span class="lineno"><a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87"> 74</a></span> <span class="keywordtype">int</span> <a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>; </div>
-<div class="line"><a name="l00075"></a><span class="lineno"><a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa"> 75</a></span> <span class="keywordtype">int</span> <a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>; </div>
-<div class="line"><a name="l00077"></a><span class="lineno"><a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a"> 77</a></span> <span class="keywordtype">double</span> _Complex *<a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a>; </div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1"> 78</a></span> <span class="keywordtype">double</span> _Complex *<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>; </div>
-<div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869"> 80</a></span> <span class="keywordtype">unsigned</span> flags; </div>
-<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="structfgt__plan.html#af6e97b6f971e4f89ceeac2bca9d69666"> 83</a></span> <span class="keywordtype">double</span> _Complex <a class="code" href="structfgt__plan.html#af6e97b6f971e4f89ceeac2bca9d69666" title="parameter of the Gaussian">sigma</a>; </div>
-<div class="line"><a name="l00085"></a><span class="lineno"><a class="code" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93"> 85</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93" title="source nodes in ">x</a>; </div>
-<div class="line"><a name="l00086"></a><span class="lineno"><a class="code" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056"> 86</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056" title="target nodes in ">y</a>; </div>
-<div class="line"><a name="l00088"></a><span class="lineno"><a class="code" href="structfgt__plan.html#ad7d9387df7df72e3d5d628d7e429c2a2"> 88</a></span> <span class="keywordtype">double</span> _Complex *<a class="code" href="structfgt__plan.html#ad7d9387df7df72e3d5d628d7e429c2a2" title="precomputed values for dgt">pre_cexp</a>; </div>
-<div class="line"><a name="l00090"></a><span class="lineno"><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1"> 90</a></span> <span class="keywordtype">int</span> <a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>; </div>
-<div class="line"><a name="l00091"></a><span class="lineno"><a class="code" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73"> 91</a></span> <span class="keywordtype">double</span> <a class="code" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73" title="period, at least 1">p</a>; </div>
-<div class="line"><a name="l00093"></a><span class="lineno"><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4"> 93</a></span> <span class="keywordtype">double</span> _Complex *<a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion coefficients">b</a>; </div>
-<div class="line"><a name="l00095"></a><span class="lineno"><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2"> 95</a></span> <a class="code" href="structnfft__plan.html">nfft_plan</a> *<a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>; </div>
-<div class="line"><a name="l00096"></a><span class="lineno"><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163"> 96</a></span> <a class="code" href="structnfft__plan.html">nfft_plan</a> *<a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>; </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> } <a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a>;</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00107"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga42f141fc768ced46eb2dac284b063b80"> 107</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#ga42f141fc768ced46eb2dac284b063b80" title="Executes the discrete Gauss transform.">dgt_trafo</a>(<a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a> *ths)</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> {</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">int</span> j,k,l;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">for</span>(j=0; j<ths-><a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>; j++)</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> ths-><a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>[j] = 0;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869" title="flags for precomputation and approximation type">flags</a> & <a class="code" href="group__applications__fastgauss.html#ga48aa1ec81a29b9f079701246f0b53ccc" title="If this flag is set, the whole matrix is precomputed and stored for the discrete Gauss transfrom...">DGT_PRE_CEXP</a>)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">for</span>(j=0,l=0; j<ths-><a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>; j++)</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">for</span>(k=0; k<ths-><a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>; k++,l++)</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> ths-><a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>[j] += ths-><a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a>[k]*ths-><a class="code" href="structfgt__plan.html#ad7d9387df7df72e3d5d628d7e429c2a2" title="precomputed values for dgt">pre_cexp</a>[l];</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">for</span>(j=0; j<ths->M; j++)</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">for</span>(k=0; k<ths-><a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>; k++)</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> ths-><a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>[j] += ths-><a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a>[k]*cexp(-ths-><a class="code" href="structfgt__plan.html#af6e97b6f971e4f89ceeac2bca9d69666" title="parameter of the Gaussian">sigma</a>*(ths-><a class= [...]
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> (ths-><a class="code" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056" title="target nodes in ">y</a>[j]-ths-><a class="code" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93" title="source nodes in ">x</a>[k]));</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> }</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#gab12b6f7c36927db24d8555484dcdfde0"> 132</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#gab12b6f7c36927db24d8555484dcdfde0" title="Executes the fast Gauss transform.">fgt_trafo</a>(<a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a> *ths)</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> {</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869" title="flags for precomputation and approximation type">flags</a> & <a class="code" href="group__applications__fastgauss.html#ga38ab7e1022ff3c5b556ce93078a05d1e" title="If this flag is set, the fast Gauss transform uses the discrete instead of the fast Fourier transform...">FGT_NDFT</a [...]
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> {</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> nfft_adjoint_direct(ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">for</span>(l=0; l<ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>; l++)</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[l] *= ths-><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion c [...]
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> </div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> nfft_trafo_direct(ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>);</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> {</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> nfft_adjoint(ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>);</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="keywordflow">for</span>(l=0; l<ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>; l++)</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[l] *= ths-><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion c [...]
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>);</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> }</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> </div>
-<div class="line"><a name="l00170"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga902eb9182c72c3c9293084a70523ebff"> 170</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#ga902eb9182c72c3c9293084a70523ebff" title="Initialisation of a transform plan, guru.">fgt_init_guru</a>(<a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a> *ths, <span clas [...]
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keywordtype">double</span> p, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> flags)</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> {</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordtype">int</span> j,n_fftw;</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> fftw_plan fplan;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> ths-><a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a> = M;</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> ths-><a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a> = N;</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> ths-><a class="code" href="structfgt__plan.html#af6e97b6f971e4f89ceeac2bca9d69666" title="parameter of the Gaussian">sigma</a> = sigma;</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> ths-><a class="code" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869" title="flags for precomputation and approximation type">flags</a> = flags;</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> ths-><a class="code" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93" title="source nodes in ">x</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>*<span class="keyword">sizeof</span>(<span [...]
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> ths-><a class="code" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056" title="target nodes in ">y</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>*<span class="keyword">sizeof</span>(<span [...]
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> ths-><a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a> = (<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>*<span class="keyword">siz [...]
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> ths-><a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a> = (<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>*<span class="keyword">sizeof</ [...]
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a> = n;</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> ths-><a class="code" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73" title="period, at least 1">p</a> = p;</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> </div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> ths-><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion coefficients">b</a> = (<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>*<span class="keyword">sizeof</sp [...]
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> </div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a> = (<a class="code" href="structnfft__plan.html">nfft_plan</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<a class="code" href="structnfft__plan.html">nfft_plan</a>));</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a> = (<a class="code" href="structnfft__plan.html">nfft_plan</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<a class="code" href="structnfft__plan.html">nfft_plan</a>));</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> </div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> n_fftw=X(next_power_of_2)(2*ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>);</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> nfft_init_guru(ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>, 1, &(ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>), ths-><a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>, &n_fftw, m, PRE_PH [...]
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> PRE_PSI| MALLOC_X| MALLOC_F_HAT| FFTW_INIT, FFTW_MEASURE);</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> nfft_init_guru(ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>, 1, &(ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>), ths-><a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>, &n_fftw, m, PRE_PH [...]
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> PRE_PSI| MALLOC_X| FFTW_INIT, FFTW_MEASURE);</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> </div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = ths-><a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a>;</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">npl [...]
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = ths-><a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>;</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869" title="flags for precomputation and approximation type">flags</a> & <a class="code" href="group__applications__fastgauss.html#ga39c3e544a78853e0da2b9a8c66d3054d" title="If this flag is set, the discrete Fourier coefficients of the uniformly sampled Gaussian are used ins...">FGT_APPROX_ [...]
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> {</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> fplan = fftw_plan_dft_1d(ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>, ths-><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion coefficients">b</a>, ths-><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion coefficients">b</a>, FFTW_FORWARD,</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> FFTW_MEASURE);</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordflow">for</span>(j=0; j<ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>; j++)</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> ths-><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion coefficients">b</a>[j] = cexp(-ths-><a class="code" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73" title="period, at least 1">p</a>*ths-><a class="code" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73" title="period, at least 1">p</a>*ths-><a class="code" href="structfgt_ [...]
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> ((<span class="keywordtype">double</span>)ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>*ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>)) / ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degre [...]
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <a class="code" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770" title="Swaps each half over N[d]/2.">nfft_fftshift_complex</a>(ths-><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion coefficients">b</a>, 1, &ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>);</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> fftw_execute(fplan);</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <a class="code" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770" title="Swaps each half over N[d]/2.">nfft_fftshift_complex</a>(ths-><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion coefficients">b</a>, 1, &ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>);</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> </div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> fftw_destroy_plan(fplan);</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> }</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> {</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="keywordflow">for</span>(j=0; j<ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>; j++)</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> ths-><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion coefficients">b</a>[j] = 1.0/ths-><a class="code" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73" title="period, at least 1">p</a> * csqrt(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>/ths-><a class [...]
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> cexp(-<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*(j-ths-><a class="code" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1" title="expansion degree">n</a>/2)*(j-ths- [...]
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> (ths-><a class="code" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73" title="period, at least 1">p</a>*ths-><a class="code" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73" title="period, at least 1">p</a>*ths-><a class="code" href="structfgt__plan.html#af6e97b6f971e4f89ceeac2bca9d69666" title="parameter of the Gaussian">sigma</a>));</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> }</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> }</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> </div>
-<div class="line"><a name="l00240"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga44cf9a6fb0a16df875f613f343fd5c65"> 240</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#ga44cf9a6fb0a16df875f613f343fd5c65" title="Initialisation of a transform plan, simple.">fgt_init</a>(<a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a> *ths, <span class=" [...]
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> {</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="keywordtype">double</span> p;</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="keywordtype">int</span> n;</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> </div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> p=0.5+sqrt(-log(eps)/creal(sigma));</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="keywordflow">if</span>(p<1)</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> p=1;</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> </div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> n=2*((int)ceil(p*cabs(sigma)/<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a> * sqrt(-log(eps)/creal(sigma))));</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> </div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="keywordflow">if</span>(N*M<=((<span class="keywordtype">int</span>)(1U<<20)))</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <a class="code" href="group__applications__fastgauss.html#ga902eb9182c72c3c9293084a70523ebff" title="Initialisation of a transform plan, guru.">fgt_init_guru</a>(ths, N, M, sigma, n, p, 7, <a class="code" href="group__applications__fastgauss.html#ga48aa1ec81a29b9f079701246f0b53ccc" title="If this flag is set, the whole matrix is precomputed and stored for the discrete Gauss transfrom...">DGT_PRE_CEXP</a>);</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <a class="code" href="group__applications__fastgauss.html#ga902eb9182c72c3c9293084a70523ebff" title="Initialisation of a transform plan, guru.">fgt_init_guru</a>(ths, N, M, sigma, n, p, 7, 0);</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> }</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> </div>
-<div class="line"><a name="l00263"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga9d8f6229d33bc49f618838b21b3dd7fc"> 263</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#ga9d8f6229d33bc49f618838b21b3dd7fc" title="Initialisation of a transform plan, depends on source and target nodes.">fgt_init_node_dependent</a>(<a class="code" href="structfgt__plan.html" title="Structure for the Gauss t [...]
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> {</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="keywordtype">int</span> j,k,l;</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869" title="flags for precomputation and approximation type">flags</a> & <a class="code" href="group__applications__fastgauss.html#ga48aa1ec81a29b9f079701246f0b53ccc" title="If this flag is set, the whole matrix is precomputed and stored for the discrete Gauss transfrom...">DGT_PRE_CEXP</a>)</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> {</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> ths-><a class="code" href="structfgt__plan.html#ad7d9387df7df72e3d5d628d7e429c2a2" title="precomputed values for dgt">pre_cexp</a>=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>*ths-><a cla [...]
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> </div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="keywordflow">for</span>(j=0,l=0; j<ths-><a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>; j++)</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="keywordflow">for</span>(k=0; k<ths-><a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>; k++,l++)</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> ths-><a class="code" href="structfgt__plan.html#ad7d9387df7df72e3d5d628d7e429c2a2" title="precomputed values for dgt">pre_cexp</a>[l]=cexp(-ths-><a class="code" href="structfgt__plan.html#af6e97b6f971e4f89ceeac2bca9d69666" title="parameter of the Gaussian">sigma</a>*(ths-><a class="code" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056" title="target nodes in ">y</a>[j]-ths-><a [...]
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> (ths-><a class="code" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056" title="target nodes in ">y</a>[j]-ths-><a class="code" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93" title="source nodes in ">x</a>[k]));</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> }</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="keywordflow">for</span>(j=0; j<ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] = ths-><a class="code" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93" title="source nodes in ">x</a>[j]/ths-><a class=" [...]
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="keywordflow">for</span>(j=0; j<ths->nplan2->M_total; j++)</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] = ths-><a class="code" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056" title="target nodes in ">y</a>[j]/ths-><a class=" [...]
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> nfft_precompute_psi(ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>);</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> nfft_precompute_psi(ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>);</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> }</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> </div>
-<div class="line"><a name="l00295"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga4634fe28b9e1be61106871cf0e61ef83"> 295</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#ga4634fe28b9e1be61106871cf0e61ef83" title="Destroys the transform plan.">fgt_finalize</a>(<a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a> *ths)</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> {</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> nfft_finalize(ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>);</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> nfft_finalize(ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>);</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> </div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163" title="target nfft plan">nplan2</a>);</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2" title="source nfft plan">nplan1</a>);</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> </div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4" title="expansion coefficients">b</a>);</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>);</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056" title="target nodes in ">y</a>);</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> </div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a>);</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93" title="source nodes in ">x</a>);</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> }</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> </div>
-<div class="line"><a name="l00318"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga317a464dbf2df948bb94ef5748710e57"> 318</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#ga317a464dbf2df948bb94ef5748710e57" title="Random initialisation of a fgt plan.">fgt_test_init_rand</a>(<a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a> *ths)</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> {</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="keywordtype">int</span> j,k;</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordflow">for</span>(k=0; k<ths-><a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>; k++)</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> ths-><a class="code" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93" title="source nodes in ">x</a>[k] = (<span class="keywordtype">double</span>)rand()/(2.0*RAND_MAX)-1.0/4.0;</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> </div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="keywordflow">for</span>(j=0; j<ths-><a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>; j++)</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> ths-><a class="code" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056" title="target nodes in ">y</a>[j] = (<span class="keywordtype">double</span>)rand()/(2.0*RAND_MAX)-1.0/4.0;</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="keywordflow">for</span>(k=0; k<ths-><a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>; k++)</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> ths-><a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a>[k] = (<span class="keywordtype">double</span>)rand()/(RAND_MAX)-1.0/2.0</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> + _Complex_I*(<span class="keywordtype">double</span>)rand()/(RAND_MAX)-I/2.0;</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> }</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> </div>
-<div class="line"><a name="l00341"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#gabebca8cc0714b36c3b47e2a5d0317960"> 341</a></span> <span class="keywordtype">double</span> <a class="code" href="group__applications__fastgauss.html#gabebca8cc0714b36c3b47e2a5d0317960" title="Compares execution times for the fast and discrete Gauss transform.">fgt_test_measure_time</a>(<a class="code" href="structfgt__plan.html" title="Structure for the Gauss trans [...]
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> {</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> ticks t0, t1;</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="keywordtype">double</span> t_out;</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="keywordtype">double</span> tau=0.01;</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> </div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> t_out=0;</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> r=0;</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="keywordflow">while</span>(t_out<tau)</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> {</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> r++;</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> t0 = getticks();</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="keywordflow">if</span> (dgt)</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <a class="code" href="group__applications__fastgauss.html#ga42f141fc768ced46eb2dac284b063b80" title="Executes the discrete Gauss transform.">dgt_trafo</a>(ths);</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <a class="code" href="group__applications__fastgauss.html#gab12b6f7c36927db24d8555484dcdfde0" title="Executes the fast Gauss transform.">fgt_trafo</a>(ths);</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> t1 = getticks();</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> t_out += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> }</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> t_out/=r;</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> </div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="keywordflow">return</span> t_out;</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> }</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> </div>
-<div class="line"><a name="l00375"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga74b5dd8d6f593462a2b37b290ad4d227"> 375</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#ga74b5dd8d6f593462a2b37b290ad4d227" title="Simple example that computes fast and discrete Gauss transforms.">fgt_test_simple</a>(<span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class [...]
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> {</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a> my_plan;</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="keywordtype">double</span> _Complex *swap_dgt;</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> </div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <a class="code" href="group__applications__fastgauss.html#ga44cf9a6fb0a16df875f613f343fd5c65" title="Initialisation of a transform plan, simple.">fgt_init</a>(&my_plan, N, M, sigma, eps);</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> swap_dgt = (<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(my_plan.<a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> </div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <a class="code" href="group__applications__fastgauss.html#ga317a464dbf2df948bb94ef5748710e57" title="Random initialisation of a fgt plan.">fgt_test_init_rand</a>(&my_plan);</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <a class="code" href="group__applications__fastgauss.html#ga9d8f6229d33bc49f618838b21b3dd7fc" title="Initialisation of a transform plan, depends on source and target nodes.">fgt_init_node_dependent</a>(&my_plan);</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> </div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(swap_dgt,my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>);</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <a class="code" href="group__applications__fastgauss.html#ga42f141fc768ced46eb2dac284b063b80" title="Executes the discrete Gauss transform.">dgt_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>,my_plan.<a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>,<span class="stringliteral [...]
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(swap_dgt,my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>);</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> </div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <a class="code" href="group__applications__fastgauss.html#gab12b6f7c36927db24d8555484dcdfde0" title="Executes the fast Gauss transform.">fgt_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>,my_plan.<a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>,<span class="stringliteral [...]
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> </div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> printf(<span class="stringliteral">"\n relative error: %1.3e\n"</span>, X(error_l_infty_1_complex)(swap_dgt,</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>, my_plan.<a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>, my_plan.<a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a>, my_plan.<a class="code" href="struct [...]
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> </div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swap_dgt);</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <a class="code" href="group__applications__fastgauss.html#ga4634fe28b9e1be61106871cf0e61ef83" title="Destroys the transform plan.">fgt_finalize</a>(&my_plan);</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> }</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> </div>
-<div class="line"><a name="l00410"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#gaac05fa78924012be74e54ddbd098892f"> 410</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#gaac05fa78924012be74e54ddbd098892f" title="Compares accuracy and execution time of the fast Gauss transform with increasing expansion degree...">fgt_test_andersson</a>(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> {</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a> my_plan;</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="keywordtype">double</span> _Complex *swap_dgt;</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="keywordtype">int</span> N;</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> </div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="keywordtype">double</span> _Complex sigma=4*(138+ _Complex_I*100);</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="keywordtype">int</span> n=128;</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="keywordtype">int</span> N_dgt_pre_exp=(int)(1U<<11);</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="keywordtype">int</span> N_dgt=(int)(1U<<19);</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> </div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> printf(<span class="stringliteral">"n=%d, sigma=%1.3e+i%1.3e\n"</span>,n,creal(sigma),cimag(sigma));</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> </div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="keywordflow">for</span>(N=((<span class="keywordtype">int</span>)(1U<<6)); N<((int)(1U<<22)); N=N<<1)</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> {</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> printf(<span class="stringliteral">"$%d$\t & "</span>,N);</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="keywordflow">if</span>(N<N_dgt_pre_exp)</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <a class="code" href="group__applications__fastgauss.html#ga902eb9182c72c3c9293084a70523ebff" title="Initialisation of a transform plan, guru.">fgt_init_guru</a>(&my_plan, N, N, sigma, n, 1, 7, <a class="code" href="group__applications__fastgauss.html#ga48aa1ec81a29b9f079701246f0b53ccc" title="If this flag is set, the whole matrix is precomputed and stored for the discrete Gauss transfrom...">DGT_PR [...]
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <a class="code" href="group__applications__fastgauss.html#ga902eb9182c72c3c9293084a70523ebff" title="Initialisation of a transform plan, guru.">fgt_init_guru</a>(&my_plan, N, N, sigma, n, 1, 7, 0);</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> </div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> swap_dgt = (<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(my_plan.<a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>*</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> </div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <a class="code" href="group__applications__fastgauss.html#ga317a464dbf2df948bb94ef5748710e57" title="Random initialisation of a fgt plan.">fgt_test_init_rand</a>(&my_plan);</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> </div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <a class="code" href="group__applications__fastgauss.html#ga9d8f6229d33bc49f618838b21b3dd7fc" title="Initialisation of a transform plan, depends on source and target nodes.">fgt_init_node_dependent</a>(&my_plan);</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> </div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="keywordflow">if</span>(N<N_dgt)</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> {</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(swap_dgt,my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>);</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="keywordflow">if</span>(N<N_dgt_pre_exp)</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> my_plan.<a class="code" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869" title="flags for precomputation and approximation type">flags</a>^=<a class="code" href="group__applications__fastgauss.html#ga48aa1ec81a29b9f079701246f0b53ccc" title="If this flag is set, the whole matrix is precomputed and stored for the discrete Gauss transfrom...">DGT_PRE_CEXP</a>;</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> </div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> printf(<span class="stringliteral">"$%1.1e$\t & "</span>,<a class="code" href="group__applications__fastgauss.html#gabebca8cc0714b36c3b47e2a5d0317960" title="Compares execution times for the fast and discrete Gauss transform.">fgt_test_measure_time</a>(&my_plan, 1));</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="keywordflow">if</span>(N<N_dgt_pre_exp)</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> my_plan.<a class="code" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869" title="flags for precomputation and approximation type">flags</a>^=<a class="code" href="group__applications__fastgauss.html#ga48aa1ec81a29b9f079701246f0b53ccc" title="If this flag is set, the whole matrix is precomputed and stored for the discrete Gauss transfrom...">DGT_PRE_CEXP</a>;</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(swap_dgt,my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>);</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> }</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> printf(<span class="stringliteral">"\t\t & "</span>);</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> </div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="keywordflow">if</span>(N<N_dgt_pre_exp)</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> printf(<span class="stringliteral">"$%1.1e$\t & "</span>,<a class="code" href="group__applications__fastgauss.html#gabebca8cc0714b36c3b47e2a5d0317960" title="Compares execution times for the fast and discrete Gauss transform.">fgt_test_measure_time</a>(&my_plan, 1));</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> printf(<span class="stringliteral">"\t\t & "</span>);</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> </div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> my_plan.<a class="code" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869" title="flags for precomputation and approximation type">flags</a>^=<a class="code" href="group__applications__fastgauss.html#ga38ab7e1022ff3c5b556ce93078a05d1e" title="If this flag is set, the fast Gauss transform uses the discrete instead of the fast Fourier transform...">FGT_NDFT</a>;</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> printf(<span class="stringliteral">"$%1.1e$\t & "</span>,<a class="code" href="group__applications__fastgauss.html#gabebca8cc0714b36c3b47e2a5d0317960" title="Compares execution times for the fast and discrete Gauss transform.">fgt_test_measure_time</a>(&my_plan, 0));</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> my_plan.<a class="code" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869" title="flags for precomputation and approximation type">flags</a>^=<a class="code" href="group__applications__fastgauss.html#ga38ab7e1022ff3c5b556ce93078a05d1e" title="If this flag is set, the fast Gauss transform uses the discrete instead of the fast Fourier transform...">FGT_NDFT</a>;</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> </div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> printf(<span class="stringliteral">"$%1.1e$\t & "</span>,<a class="code" href="group__applications__fastgauss.html#gabebca8cc0714b36c3b47e2a5d0317960" title="Compares execution times for the fast and discrete Gauss transform.">fgt_test_measure_time</a>(&my_plan, 0));</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> </div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> printf(<span class="stringliteral">"$%1.1e$\t \\\\ \n"</span>,</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> X(error_l_infty_1_complex)(swap_dgt, my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>, my_plan.<a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>,</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> my_plan.<a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a>, my_plan.<a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>));</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> fflush(stdout);</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> </div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swap_dgt);</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <a class="code" href="group__applications__fastgauss.html#ga4634fe28b9e1be61106871cf0e61ef83" title="Destroys the transform plan.">fgt_finalize</a>(&my_plan);</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> fftw_cleanup();</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> }</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> }</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> </div>
-<div class="line"><a name="l00481"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#gaab0a7e29242524d33269448fc4612946"> 481</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#gaab0a7e29242524d33269448fc4612946" title="Compares accuracy of the fast Gauss transform with increasing expansion degree.">fgt_test_error</a>(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> {</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a> my_plan;</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="keywordtype">double</span> _Complex *swap_dgt;</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="keywordtype">int</span> n,mi;</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> </div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="keywordtype">double</span> _Complex sigma=4*(138+ _Complex_I*100);</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="keywordtype">int</span> N=1000;</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="keywordtype">int</span> M=1000;</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="keywordtype">int</span> m[2]={7,3};</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> </div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> printf(<span class="stringliteral">"N=%d;\tM=%d;\nsigma=%1.3e+i*%1.3e;\n"</span>,N,M,creal(sigma),cimag(sigma));</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> printf(<span class="stringliteral">"error=[\n"</span>);</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> </div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> swap_dgt = (<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> </div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="keywordflow">for</span>(n=8; n<=128; n+=4)</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> {</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> printf(<span class="stringliteral">"%d\t"</span>,n);</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="keywordflow">for</span>(mi=0;mi<2;mi++)</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> {</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <a class="code" href="group__applications__fastgauss.html#ga902eb9182c72c3c9293084a70523ebff" title="Initialisation of a transform plan, guru.">fgt_init_guru</a>(&my_plan, N, M, sigma, n, 1, m[mi], 0);</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <a class="code" href="group__applications__fastgauss.html#ga317a464dbf2df948bb94ef5748710e57" title="Random initialisation of a fgt plan.">fgt_test_init_rand</a>(&my_plan);</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <a class="code" href="group__applications__fastgauss.html#ga9d8f6229d33bc49f618838b21b3dd7fc" title="Initialisation of a transform plan, depends on source and target nodes.">fgt_init_node_dependent</a>(&my_plan);</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> </div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(swap_dgt,my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>);</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <a class="code" href="group__applications__fastgauss.html#ga42f141fc768ced46eb2dac284b063b80" title="Executes the discrete Gauss transform.">dgt_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(swap_dgt,my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>);</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> </div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <a class="code" href="group__applications__fastgauss.html#gab12b6f7c36927db24d8555484dcdfde0" title="Executes the fast Gauss transform.">fgt_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> </div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> printf(<span class="stringliteral">"%1.3e\t"</span>, X(error_l_infty_1_complex)(swap_dgt, my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>,</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> my_plan.<a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>, my_plan.<a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a>, my_plan.<a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>));</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> fflush(stdout);</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> </div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <a class="code" href="group__applications__fastgauss.html#ga4634fe28b9e1be61106871cf0e61ef83" title="Destroys the transform plan.">fgt_finalize</a>(&my_plan);</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> fftw_cleanup();</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> }</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> }</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> printf(<span class="stringliteral">"];\n"</span>);</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> </div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swap_dgt);</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> }</div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> </div>
-<div class="line"><a name="l00532"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#gab68ea529a033a478a391243d8dacf61b"> 532</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastgauss.html#gab68ea529a033a478a391243d8dacf61b" title="Compares accuracy of the fast Gauss transform with increasing expansion degree and different periodis...">fgt_test_error_p</a>(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> {</div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <a class="code" href="structfgt__plan.html" title="Structure for the Gauss transform.">fgt_plan</a> my_plan;</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="keywordtype">double</span> _Complex *swap_dgt;</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="keywordtype">int</span> n,pi;</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> </div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="keywordtype">double</span> _Complex sigma=20+40*_Complex_I;</div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="keywordtype">int</span> N=1000;</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="keywordtype">int</span> M=1000;</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="keywordtype">double</span> p[3]={1,1.5,2};</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> </div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> printf(<span class="stringliteral">"N=%d;\tM=%d;\nsigma=%1.3e+i*%1.3e;\n"</span>,N,M,creal(sigma),cimag(sigma));</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> printf(<span class="stringliteral">"error=[\n"</span>);</div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> </div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> swap_dgt = (<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> </div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="keywordflow">for</span>(n=8; n<=128; n+=4)</div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> {</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> printf(<span class="stringliteral">"%d\t"</span>,n);</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="keywordflow">for</span>(pi=0;pi<3;pi++)</div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> {</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <a class="code" href="group__applications__fastgauss.html#ga902eb9182c72c3c9293084a70523ebff" title="Initialisation of a transform plan, guru.">fgt_init_guru</a>(&my_plan, N, M, sigma, n, p[pi], 7, 0);</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <a class="code" href="group__applications__fastgauss.html#ga317a464dbf2df948bb94ef5748710e57" title="Random initialisation of a fgt plan.">fgt_test_init_rand</a>(&my_plan);</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <a class="code" href="group__applications__fastgauss.html#ga9d8f6229d33bc49f618838b21b3dd7fc" title="Initialisation of a transform plan, depends on source and target nodes.">fgt_init_node_dependent</a>(&my_plan);</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> </div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(swap_dgt,my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>);</div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <a class="code" href="group__applications__fastgauss.html#ga42f141fc768ced46eb2dac284b063b80" title="Executes the discrete Gauss transform.">dgt_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(swap_dgt,my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>);</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> </div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <a class="code" href="group__applications__fastgauss.html#gab12b6f7c36927db24d8555484dcdfde0" title="Executes the fast Gauss transform.">fgt_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> </div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> printf(<span class="stringliteral">"%1.3e\t"</span>, X(error_l_infty_1_complex)(swap_dgt, my_plan.<a class="code" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1" title="target evaluations">f</a>,</div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> my_plan.<a class="code" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa" title="number of target nodes">M</a>, my_plan.<a class="code" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a" title="source coefficients">alpha</a>, my_plan.<a class="code" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87" title="number of source nodes">N</a>));</div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> fflush(stdout);</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> </div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <a class="code" href="group__applications__fastgauss.html#ga4634fe28b9e1be61106871cf0e61ef83" title="Destroys the transform plan.">fgt_finalize</a>(&my_plan);</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> fftw_cleanup();</div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> }</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> }</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> printf(<span class="stringliteral">"];\n"</span>);</div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> }</div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> </div>
-<div class="line"><a name="l00580"></a><span class="lineno"><a class="code" href="group__applications__fastgauss.html#ga3c04138a5bfe5d72780bb7e82a18e627"> 580</a></span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> {</div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="keywordflow">if</span>(argc!=2)</div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> {</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> fprintf(stderr,<span class="stringliteral">"fastgauss type\n"</span>);</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> fprintf(stderr,<span class="stringliteral">" type\n"</span>);</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> fprintf(stderr,<span class="stringliteral">" 0 - Simple test.\n"</span>);</div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> fprintf(stderr,<span class="stringliteral">" 1 - Compares accuracy and execution time.\n"</span>);</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> fprintf(stderr,<span class="stringliteral">" Pipe to output_andersson.tex\n"</span>);</div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> fprintf(stderr,<span class="stringliteral">" 2 - Compares accuracy.\n"</span>);</div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> fprintf(stderr,<span class="stringliteral">" Pipe to output_error.m\n"</span>);</div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> fprintf(stderr,<span class="stringliteral">" 3 - Compares accuracy.\n"</span>);</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> fprintf(stderr,<span class="stringliteral">" Pipe to output_error_p.m\n"</span>);</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> }</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> </div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="keywordflow">if</span>(atoi(argv[1])==0)</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <a class="code" href="group__applications__fastgauss.html#ga74b5dd8d6f593462a2b37b290ad4d227" title="Simple example that computes fast and discrete Gauss transforms.">fgt_test_simple</a>(10, 10, 5+3*_Complex_I, 0.001);</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> </div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="keywordflow">if</span>(atoi(argv[1])==1)</div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <a class="code" href="group__applications__fastgauss.html#gaac05fa78924012be74e54ddbd098892f" title="Compares accuracy and execution time of the fast Gauss transform with increasing expansion degree...">fgt_test_andersson</a>();</div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> </div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="keywordflow">if</span>(atoi(argv[1])==2)</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <a class="code" href="group__applications__fastgauss.html#gaab0a7e29242524d33269448fc4612946" title="Compares accuracy of the fast Gauss transform with increasing expansion degree.">fgt_test_error</a>();</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> </div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="keywordflow">if</span>(atoi(argv[1])==3)</div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <a class="code" href="group__applications__fastgauss.html#gab68ea529a033a478a391243d8dacf61b" title="Compares accuracy of the fast Gauss transform with increasing expansion degree and different periodis...">fgt_test_error_p</a>();</div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> </div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> }</div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsumS2_8c_source.html b/doc/api/html/fastsumS2_8c_source.html
deleted file mode 100644
index b051acc..0000000
--- a/doc/api/html/fastsumS2_8c_source.html
+++ /dev/null
@@ -1,884 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsumS2.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_224fe669cf662e4d4573ba584877a9b9.html">fastsumS2</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastsumS2.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: fastsumS2.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment">/* standard headers */</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <float.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment">/* NFFT3 header */</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">/* NFFT3 utilities */</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment">/* Fourier-Legendre coefficients for Abel-Poisson kernel */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor">#define SYMBOL_ABEL_POISSON(k,h) (pow(h,k))</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment">/* Fourier-Legendre coefficients for singularity kernel */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor">#define SYMBOL_SINGULARITY(k,h) ((2.0/(2*k+1))*pow(h,k))</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment">/* Flags for the different kernel functions */</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#ga0452118afd292fc346ed8116915d001e"> 53</a></span> <span class="preprocessor">#define KT_ABEL_POISSON (0)</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#ga814ba1b58f017f7a67a85f68d4719814"> 55</a></span> <span class="preprocessor">#define KT_SINGULARITY (1)</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#gae2a54d1d59448d9f02697f89a6ec7306"> 57</a></span> <span class="preprocessor">#define KT_LOC_SUPP (2)</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#ga3a03d7fde39f1ba22a4549e72c8cbf39"> 59</a></span> <span class="preprocessor">#define KT_GAUSSIAN (3)</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#gad09943f93b91eb526d8081a4963eead8"> 62</a></span> <span class="keyword">enum</span> <a class="code" href="group__applications__fastsumS2__test.html#gad09943f93b91eb526d8081a4963eead8" title="Enumeration type for yes/no/both-type parameters.">pvalue</a> {NO = 0, YES = 1, BOTH = 2};</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#ga764f956ac40df99e776155bfa8da2e93"> 78</a></span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__applications__fastsumS2__test.html#ga764f956ac40df99e776155bfa8da2e93" title="Computes the standard inner product between two vectors on the unit sphere given in spher [...]
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keyword">const</span> <span class="keywordtype">double</span> phi2, <span class="keyword">const</span> <span class="keywordtype">double</span> theta2)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> {</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordtype">double</span> pi2theta1 = PI2*theta1, pi2theta2 = PI2*theta2;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">return</span> (cos(pi2theta1)*cos(pi2theta2)</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> + sin(pi2theta1)*sin(pi2theta2)*cos(PI2*(phi1-phi2)));</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> }</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#ga6db9bf5c4ee6ca573d6d08a8202a5314"> 97</a></span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__applications__fastsumS2__test.html#ga6db9bf5c4ee6ca573d6d08a8202a5314" title="Evaluates the Poisson kernel at a node .">poissonKernel</a>(<span class="keyword">const</s [...]
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> {</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">return</span> (1.0/(PI4))*((1.0-h)*(1.0+h))/pow(sqrt(1.0-2.0*h*x+h*h),3.0);</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> }</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00113"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#ga3f82140c739f6fcf9bc17a03a09f580d"> 113</a></span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__applications__fastsumS2__test.html#ga3f82140c739f6fcf9bc17a03a09f580d" title="Evaluates the singularity kernel at a node .">singularityKernel</a>(<span class="keyword"> [...]
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> {</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">return</span> (1.0/(PI2))/sqrt(1.0-2.0*h*x+h*h);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> }</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#ga226aec741614e0a2d2a9305bc2c28063"> 131</a></span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__applications__fastsumS2__test.html#ga226aec741614e0a2d2a9305bc2c28063" title="Evaluates the locally supported kernel at a node .">locallySupportedKernel</a>(<span class [...]
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keyword">const</span> <span class="keywordtype">double</span> lambda)</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> {</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">return</span> (x<=h)?(0.0):(pow((x-h),lambda));</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> }</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
-<div class="line"><a name="l00149"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#ga22bfa09881115e4c4f8fef59538d1ce7"> 149</a></span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> <a class="code" href="group__applications__fastsumS2__test.html#ga22bfa09881115e4c4f8fef59538d1ce7" title="Evaluates the spherical Gaussian kernel at a node .">gaussianKernel</a>(<span class="keywo [...]
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> {</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="keywordflow">return</span> exp(2.0*sigma*(x-1.0));</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> }</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div>
-<div class="line"><a name="l00164"></a><span class="lineno"><a class="code" href="group__applications__fastsumS2__test.html#ga3c04138a5bfe5d72780bb7e82a18e627"> 164</a></span> <span class="keywordtype">int</span> main (<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> {</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="keywordtype">double</span> **p; <span class="comment">/* The array containing the parameter sets *</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment"> * for the kernel functions */</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordtype">int</span> *m; <span class="comment">/* The array containing the cut-off degrees M */</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="keywordtype">int</span> **ld; <span class="comment">/* The array containing the numbers of source *</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment"> * and target nodes, L and D */</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keywordtype">int</span> ip; <span class="comment">/* Index variable for p */</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="keywordtype">int</span> im; <span class="comment">/* Index variable for m */</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordtype">int</span> ild; <span class="comment">/* Index variable for l */</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="keywordtype">int</span> ipp; <span class="comment">/* Index for kernel parameters */</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="keywordtype">int</span> ip_max; <span class="comment">/* The maximum index for p */</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="keywordtype">int</span> im_max; <span class="comment">/* The maximum index for m */</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordtype">int</span> ild_max; <span class="comment">/* The maximum index for l */</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="keywordtype">int</span> ipp_max; <span class="comment">/* The maximum index for ip */</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="keywordtype">int</span> tc_max; <span class="comment">/* The number of testcases */</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="keywordtype">int</span> m_max; <span class="comment">/* The maximum cut-off degree M for the *</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="comment"> * current dataset */</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="keywordtype">int</span> l_max; <span class="comment">/* The maximum number of source nodes L for *</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="comment"> * the current dataset */</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="keywordtype">int</span> d_max; <span class="comment">/* The maximum number of target nodes D for *</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="comment"> * the current dataset */</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="keywordtype">long</span> ld_max_prec; <span class="comment">/* The maximum number of source and target *</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="comment"> * nodes for precomputation multiplied */</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="keywordtype">long</span> l_max_prec; <span class="comment">/* The maximum number of source nodes for *</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment"> * precomputation */</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="keywordtype">int</span> tc; <span class="comment">/* Index variable for testcases */</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keywordtype">int</span> kt; <span class="comment">/* The kernel function */</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="keywordtype">int</span> cutoff; <span class="comment">/* The current NFFT cut-off parameter */</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordtype">double</span> threshold; <span class="comment">/* The current NFSFT threshold parameter */</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordtype">double</span> t_d; <span class="comment">/* Time for direct algorithm in seconds */</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordtype">double</span> t_dp; <span class="comment">/* Time for direct algorithm with *</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="comment"> precomputation in seconds */</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keywordtype">double</span> t_fd; <span class="comment">/* Time for fast direct algorithm in seconds */</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="keywordtype">double</span> t_f; <span class="comment">/* Time for fast algorithm in seconds */</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordtype">double</span> temp; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="keywordtype">double</span> err_f; <span class="comment">/* Error E_infty for fast algorithm */</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordtype">double</span> err_fd; <span class="comment">/* Error E_\infty for fast direct algorithm */</span></div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> ticks t0, t1; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="keywordtype">int</span> precompute = NO; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> fftw_complex *ptr; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordtype">double</span>* steed; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> fftw_complex *b; <span class="comment">/* The weights (b_l)_{l=0}^{L-1} */</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> fftw_complex *f_hat; <span class="comment">/* The spherical Fourier coefficients */</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> fftw_complex *a; <span class="comment">/* The Fourier-Legendre coefficients */</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="keywordtype">double</span> *xi; <span class="comment">/* Target nodes */</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordtype">double</span> *eta; <span class="comment">/* Source nodes */</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> fftw_complex *f_m; <span class="comment">/* Approximate function values */</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> fftw_complex *f; <span class="comment">/* Exact function values */</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> fftw_complex *prec = NULL; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan; <span class="comment">/* NFSFT plan */</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan_adjoint; <span class="comment">/* adjoint NFSFT plan */</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="keywordtype">int</span> i; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="keywordtype">int</span> k; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="keywordtype">int</span> n; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="keywordtype">int</span> d; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordtype">int</span> l; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordtype">int</span> use_nfsft; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="keywordtype">int</span> use_nfft; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordtype">int</span> use_fpt; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="keywordtype">int</span> rinc; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="keywordtype">double</span> constant; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> </div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="comment">/* Read the number of testcases. */</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> fscanf(stdin,<span class="stringliteral">"testcases=%d\n"</span>,&tc_max);</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,tc_max);</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> </div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="comment">/* Process each testcase. */</span></div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="keywordflow">for</span> (tc = 0; tc < tc_max; tc++)</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> {</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="comment">/* Check if the fast transform shall be used. */</span></div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> fscanf(stdin,<span class="stringliteral">"nfsft=%d\n"</span>,&use_nfsft);</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,use_nfsft);</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> {</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="comment">/* Check if the NFFT shall be used. */</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> fscanf(stdin,<span class="stringliteral">"nfft=%d\n"</span>,&use_nfft);</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,use_nfft);</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">if</span> (use_nfft != NO)</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> {</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="comment">/* Read the cut-off parameter. */</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> fscanf(stdin,<span class="stringliteral">"cutoff=%d\n"</span>,&cutoff);</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,cutoff);</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> }</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> {</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="comment">/* TODO remove this */</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="comment">/* Initialize unused variable with dummy value. */</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> cutoff = 1;</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> }</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="comment">/* Check if the fast polynomial transform shall be used. */</span></div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> fscanf(stdin,<span class="stringliteral">"fpt=%d\n"</span>,&use_fpt);</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,use_fpt);</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="comment">/* Read the NFSFT threshold parameter. */</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> fscanf(stdin,<span class="stringliteral">"threshold=%lf\n"</span>,&threshold);</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> fprintf(stdout,<span class="stringliteral">"%lf\n"</span>,threshold);</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> }</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> {</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="comment">/* TODO remove this */</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="comment">/* Set dummy values. */</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> cutoff = 3;</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> threshold = 1000000000000.0;</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> }</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> </div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="comment">/* Initialize bandwidth bound. */</span></div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> m_max = 0;</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="comment">/* Initialize source nodes bound. */</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> l_max = 0;</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="comment">/* Initialize target nodes bound. */</span></div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> d_max = 0;</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="comment">/* Initialize source nodes bound for precomputation. */</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> l_max_prec = 0;</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="comment">/* Initialize source and target nodes bound for precomputation. */</span></div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> ld_max_prec = 0;</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="comment">/* Read the kernel type. This is one of KT_ABEL_POISSON, KT_SINGULARITY,</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="comment"> * KT_LOC_SUPP and KT_GAUSSIAN. */</span></div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> fscanf(stdin,<span class="stringliteral">"kernel=%d\n"</span>,&kt);</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,kt);</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> </div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="comment">/* Read the number of parameter sets. */</span></div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> fscanf(stdin,<span class="stringliteral">"parameter_sets=%d\n"</span>,&ip_max);</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,ip_max);</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> </div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="comment">/* Allocate memory for pointers to parameter sets. */</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> p = (<span class="keywordtype">double</span>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ip_max*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>*));</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="comment">/* We now read in the parameter sets. */</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> </div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="comment">/* Read number of parameters. */</span></div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> fscanf(stdin,<span class="stringliteral">"parameters=%d\n"</span>,&ipp_max);</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,ipp_max);</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> </div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="keywordflow">for</span> (ip = 0; ip < ip_max; ip++)</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> {</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment">/* Allocate memory for the parameters. */</span></div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> p[ip] = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ipp_max*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> </div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="comment">/* Read the parameters. */</span></div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="keywordflow">for</span> (ipp = 0; ipp < ipp_max; ipp++)</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> {</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="comment">/* Read the next parameter. */</span></div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> fscanf(stdin,<span class="stringliteral">"%lf\n"</span>,&p[ip][ipp]);</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> fprintf(stdout,<span class="stringliteral">"%lf\n"</span>,p[ip][ipp]);</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> }</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> }</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> </div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="comment">/* Read the number of cut-off degrees. */</span></div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> fscanf(stdin,<span class="stringliteral">"bandwidths=%d\n"</span>,&im_max);</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,im_max);</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> m = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(im_max*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> </div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="comment">/* Read the cut-off degrees. */</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="keywordflow">for</span> (im = 0; im < im_max; im++)</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> {</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="comment">/* Read cut-off degree. */</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> fscanf(stdin,<span class="stringliteral">"%d\n"</span>,&m[im]);</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,m[im]);</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> m_max = <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(m_max,m[im]);</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> }</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> </div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="comment">/* Read number of node specifications. */</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> fscanf(stdin,<span class="stringliteral">"node_sets=%d\n"</span>,&ild_max);</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,ild_max);</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> ld = (<span class="keywordtype">int</span>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ild_max*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>*));</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> </div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="comment">/* Read the run specification. */</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="keywordflow">for</span> (ild = 0; ild < ild_max; ild++)</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> {</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="comment">/* Allocate memory for the run parameters. */</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> ld[ild] = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="comment">/* Read number of source nodes. */</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> fscanf(stdin,<span class="stringliteral">"L=%d "</span>,&ld[ild][0]);</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,ld[ild][0]);</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> l_max = <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(l_max,ld[ild][0]);</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> </div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="comment">/* Read number of target nodes. */</span></div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> fscanf(stdin,<span class="stringliteral">"D=%d "</span>,&ld[ild][1]);</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,ld[ild][1]);</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> d_max = <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(d_max,ld[ild][1]);</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="comment">/* Determine whether direct and fast algorithm shall be compared. */</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> fscanf(stdin,<span class="stringliteral">"compare=%d "</span>,&ld[ild][2]);</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,ld[ild][2]);</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> </div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="comment">/* Check if precomputation for the direct algorithm is used. */</span></div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="keywordflow">if</span> (ld[ild][2] == YES)</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> {</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="comment">/* Read whether the precomputed version shall also be used. */</span></div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> fscanf(stdin,<span class="stringliteral">"precomputed=%d\n"</span>,&ld[ild][3]);</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,ld[ild][3]);</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> </div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="comment">/* Read the number of repetitions over which measurements are</span></div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="comment"> * averaged. */</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> fscanf(stdin,<span class="stringliteral">"repetitions=%d\n"</span>,&ld[ild][4]);</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,ld[ild][4]);</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> </div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="comment">/* Update ld_max_prec and l_max_prec. */</span></div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="keywordflow">if</span> (ld[ild][3] == YES)</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> {</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="comment">/* Update ld_max_prec. */</span></div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> ld_max_prec = <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(ld_max_prec,ld[ild][0]*ld[ild][1]);</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="comment">/* Update l_max_prec. */</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> l_max_prec = <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(l_max_prec,ld[ild][0]);</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment">/* Turn on the precomputation for the direct algorithm. */</span></div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> precompute = YES;</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> }</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> }</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> {</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="comment">/* Set default value for the number of repetitions. */</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> ld[ild][4] = 1;</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> }</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> }</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> </div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="comment">/* Allocate memory for data structures. */</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> b = (fftw_complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(l_max*<span class="keyword">sizeof</span>(fftw_complex));</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> eta = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*l_max*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> f_hat = (fftw_complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(NFSFT_F_HAT_SIZE(m_max)*<span class="keyword">sizeof</span>(fftw_complex));</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> a = (fftw_complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((m_max+1)*<span class="keyword">sizeof</span>(fftw_complex));</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> xi = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*d_max*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> f_m = (fftw_complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(d_max*<span class="keyword">sizeof</span>(fftw_complex));</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> f = (fftw_complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(d_max*<span class="keyword">sizeof</span>(fftw_complex));</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> </div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="comment">/* Allocate memory for precomputed data. */</span></div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="keywordflow">if</span> (precompute == YES)</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> {</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> prec = (fftw_complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ld_max_prec*<span class="keyword">sizeof</span>(fftw_complex));</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> }</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> </div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="comment">/* Generate random source nodes and weights. */</span></div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="keywordflow">for</span> (l = 0; l < l_max; l++)</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> {</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> b[l] = (((double)rand())/RAND_MAX) - 0.5;</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> eta[2*l] = (((double)rand())/RAND_MAX) - 0.5;</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> eta[2*l+1] = acos(2.0*(((<span class="keywordtype">double</span>)rand())/RAND_MAX) - 1.0)/(PI2);</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> }</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> </div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="comment">/* Generate random target nodes. */</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="keywordflow">for</span> (d = 0; d < d_max; d++)</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> {</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> xi[2*d] = (((double)rand())/RAND_MAX) - 0.5;</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> xi[2*d+1] = acos(2.0*(((<span class="keywordtype">double</span>)rand())/RAND_MAX) - 1.0)/(PI2);</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> }</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> </div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="comment">/* Do precomputation. */</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> nfsft_precompute(m_max,threshold,</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> ((use_nfsft==NO)?(NFSFT_NO_FAST_ALGORITHM):(0U<span class="comment">/*NFSFT_NO_DIRECT_ALGORITHM*/</span>)), 0U);</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> </div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="comment">/* Process all parameter sets. */</span></div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="keywordflow">for</span> (ip = 0; ip < ip_max; ip++)</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> {</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="comment">/* Compute kernel coeffcients up to the maximum cut-off degree m_max. */</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="keywordflow">switch</span> (kt)</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> {</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#ga0452118afd292fc346ed8116915d001e" title="Abel-Poisson kernel.">KT_ABEL_POISSON</a>:</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="comment">/* Compute Fourier-Legendre coefficients for the Poisson kernel. */</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="keywordflow">for</span> (k = 0; k <= m_max; k++)</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> a[k] = SYMBOL_ABEL_POISSON(k,p[ip][0]);</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#ga814ba1b58f017f7a67a85f68d4719814" title="Singularity kernel.">KT_SINGULARITY</a>:</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="comment">/* Compute Fourier-Legendre coefficients for the singularity</span></div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="comment"> * kernel. */</span></div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="keywordflow">for</span> (k = 0; k <= m_max; k++)</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> a[k] = SYMBOL_SINGULARITY(k,p[ip][0]);</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> </div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#gae2a54d1d59448d9f02697f89a6ec7306" title="Locally supported kernel.">KT_LOC_SUPP</a>:</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="comment">/* Compute Fourier-Legendre coefficients for the locally supported</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="comment"> * kernel. */</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> a[0] = 1.0;</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="keywordflow">if</span> (1 <= m_max)</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> a[1] = ((p[ip][1]+1+p[ip][0])/(p[ip][1]+2.0))*a[0];</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="keywordflow">for</span> (k = 2; k <= m_max; k++)</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> a[k] = (1.0/(k+p[ip][1]+1))*((2*k-1)*p[ip][0]*a[k-1] -</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> (k-p[ip][1]-2)*a[k-2]);</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> </div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#ga3a03d7fde39f1ba22a4549e72c8cbf39" title="Gaussian kernel.">KT_GAUSSIAN</a>:</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="comment">/* Fourier-Legendre coefficients */</span></div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> steed = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((m_max+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <a class="code" href="group__nfftutil.html#ga2decee6fe50d50797a82737ba82cf97a" title="Calculates the modified bessel function , possibly scaled by , for real non-negative with ...">nfft_smbi</a>(2.0*p[ip][0],0.5,m_max+1,2,steed);</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="keywordflow">for</span> (k = 0; k <= m_max; k++)</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> a[k] = PI2*(sqrt(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>/p[ip][0]))*steed[k];</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> </div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(steed);</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> }</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> </div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="comment">/* Normalize Fourier-Legendre coefficients. */</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="keywordflow">for</span> (k = 0; k <= m_max; k++)</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> a[k] *= (2*k+1)/(PI4);</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> </div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="comment">/* Process all node sets. */</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="keywordflow">for</span> (ild = 0; ild < ild_max; ild++)</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> {</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="comment">/* Check if the fast algorithm shall be used. */</span></div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="keywordflow">if</span> (ld[ild][2] != NO)</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> {</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="comment">/* Check if the direct algorithm with precomputation should be</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="comment"> * tested. */</span></div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="keywordflow">if</span> (ld[ild][3] != NO)</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> {</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="comment">/* Get pointer to start of data. */</span></div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> ptr = prec;</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="comment">/* Calculate increment from one row to the next. */</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> rinc = l_max_prec-ld[ild][0];</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> </div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="comment">/* Process al target nodes. */</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="keywordflow">for</span> (d = 0; d < ld[ild][1]; d++)</div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> {</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="comment">/* Process all source nodes. */</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="keywordflow">for</span> (l = 0; l < ld[ild][0]; l++)</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> {</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="comment">/* Compute inner product between current source and target</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="comment"> * node. */</span></div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> temp = <a class="code" href="group__applications__fastsumS2__test.html#ga764f956ac40df99e776155bfa8da2e93" title="Computes the standard inner product between two vectors on the unit sphere given in spherical coord...">innerProduct</a>(eta[2*l],eta[2*l+1],xi[2*d],xi[2*d+1]);</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> </div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="comment">/* Switch by the kernel type. */</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="keywordflow">switch</span> (kt)</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> {</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#ga0452118afd292fc346ed8116915d001e" title="Abel-Poisson kernel.">KT_ABEL_POISSON</a>:</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="comment">/* Evaluate the Poisson kernel for the current value. */</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> *ptr++ = <a class="code" href="group__applications__fastsumS2__test.html#ga6db9bf5c4ee6ca573d6d08a8202a5314" title="Evaluates the Poisson kernel at a node .">poissonKernel</a>(temp,p[ip][0]);</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> </div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#ga814ba1b58f017f7a67a85f68d4719814" title="Singularity kernel.">KT_SINGULARITY</a>:</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="comment">/* Evaluate the singularity kernel for the current</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="comment"> * value. */</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> *ptr++ = <a class="code" href="group__applications__fastsumS2__test.html#ga3f82140c739f6fcf9bc17a03a09f580d" title="Evaluates the singularity kernel at a node .">singularityKernel</a>(temp,p[ip][0]);</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> </div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#gae2a54d1d59448d9f02697f89a6ec7306" title="Locally supported kernel.">KT_LOC_SUPP</a>:</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="comment">/* Evaluate the localized kernel for the current</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="comment"> * value. */</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> *ptr++ = <a class="code" href="group__applications__fastsumS2__test.html#ga226aec741614e0a2d2a9305bc2c28063" title="Evaluates the locally supported kernel at a node .">locallySupportedKernel</a>(temp,p[ip][0],p[ip][1]);</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> </div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#ga3a03d7fde39f1ba22a4549e72c8cbf39" title="Gaussian kernel.">KT_GAUSSIAN</a>:</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="comment">/* Evaluate the spherical Gaussian kernel for the current</span></div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="comment"> * value. */</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> *ptr++ = <a class="code" href="group__applications__fastsumS2__test.html#ga22bfa09881115e4c4f8fef59538d1ce7" title="Evaluates the spherical Gaussian kernel at a node .">gaussianKernel</a>(temp,p[ip][0]);</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> }</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> }</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="comment">/* Increment pointer for next row. */</span></div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> ptr += rinc;</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> }</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> </div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="comment">/* Initialize cumulative time variable. */</span></div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> t_dp = 0.0;</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> </div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="comment">/* Initialize time measurement. */</span></div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> t0 = getticks();</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> </div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="comment">/* Cycle through all runs. */</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="keywordflow">for</span> (i = 0; i < ld[ild][4]; i++)</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> {</div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> </div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="comment">/* Reset pointer to start of precomputed data. */</span></div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> ptr = prec;</div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="comment">/* Calculate increment from one row to the next. */</span></div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> rinc = l_max_prec-ld[ild][0];</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> </div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="comment">/* Check if the localized kernel is used. */</span></div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="keywordflow">if</span> (kt == <a class="code" href="group__applications__fastsumS2__test.html#gae2a54d1d59448d9f02697f89a6ec7306" title="Locally supported kernel.">KT_LOC_SUPP</a>)</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> {</div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="comment">/* Perform final summation */</span></div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> </div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="comment">/* Calculate the multiplicative constant. */</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> constant = ((p[ip][1]+1)/(PI2*pow(1-p[ip][0],p[ip][1]+1)));</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> </div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="comment">/* Process all target nodes. */</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="keywordflow">for</span> (d = 0; d < ld[ild][1]; d++)</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> {</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="comment">/* Initialize function value. */</span></div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> f[d] = 0.0;</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> </div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="comment">/* Process all source nodes. */</span></div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="keywordflow">for</span> (l = 0; l < ld[ild][0]; l++)</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> f[d] += b[l]*(*ptr++);</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> </div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="comment">/* Multiply with the constant. */</span></div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> f[d] *= constant;</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> </div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="comment">/* Proceed to next row. */</span></div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> ptr += rinc;</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> }</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> }</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> {</div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="comment">/* Process all target nodes. */</span></div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="keywordflow">for</span> (d = 0; d < ld[ild][1]; d++)</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> {</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="comment">/* Initialize function value. */</span></div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> f[d] = 0.0;</div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> </div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="comment">/* Process all source nodes. */</span></div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="keywordflow">for</span> (l = 0; l < ld[ild][0]; l++)</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> f[d] += b[l]*(*ptr++);</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> </div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="comment">/* Proceed to next row. */</span></div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> ptr += rinc;</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> }</div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> }</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> }</div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> </div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> <span class="comment">/* Calculate the time needed. */</span></div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> t1 = getticks();</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> t_dp = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> </div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <span class="comment">/* Calculate average time needed. */</span></div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> t_dp = t_dp/((double)ld[ild][4]);</div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> }</div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> {</div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="comment">/* Initialize cumulative time variable with dummy value. */</span></div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> t_dp = -1.0;</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> }</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> </div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="comment">/* Initialize cumulative time variable. */</span></div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> t_d = 0.0;</div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> </div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="comment">/* Initialize time measurement. */</span></div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> t0 = getticks();</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> </div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="comment">/* Cycle through all runs. */</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="keywordflow">for</span> (i = 0; i < ld[ild][4]; i++)</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> {</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="comment">/* Switch by the kernel type. */</span></div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="keywordflow">switch</span> (kt)</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> {</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#ga0452118afd292fc346ed8116915d001e" title="Abel-Poisson kernel.">KT_ABEL_POISSON</a>:</div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> </div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="comment">/* Process all target nodes. */</span></div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="keywordflow">for</span> (d = 0; d < ld[ild][1]; d++)</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> {</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="comment">/* Initialize function value. */</span></div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> f[d] = 0.0;</div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> </div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="comment">/* Process all source nodes. */</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="keywordflow">for</span> (l = 0; l < ld[ild][0]; l++)</div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> {</div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="comment">/* Compute the inner product for the current source and</span></div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="comment"> * target nodes. */</span></div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> temp = <a class="code" href="group__applications__fastsumS2__test.html#ga764f956ac40df99e776155bfa8da2e93" title="Computes the standard inner product between two vectors on the unit sphere given in spherical coord...">innerProduct</a>(eta[2*l],eta[2*l+1],xi[2*d],xi[2*d+1]);</div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> </div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="comment">/* Evaluate the Poisson kernel for the current value and add</span></div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="comment"> * to the result. */</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> f[d] += b[l]*<a class="code" href="group__applications__fastsumS2__test.html#ga6db9bf5c4ee6ca573d6d08a8202a5314" title="Evaluates the Poisson kernel at a node .">poissonKernel</a>(temp,p[ip][0]);</div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> }</div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> }</div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> </div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#ga814ba1b58f017f7a67a85f68d4719814" title="Singularity kernel.">KT_SINGULARITY</a>:</div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="comment">/* Process all target nodes. */</span></div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="keywordflow">for</span> (d = 0; d < ld[ild][1]; d++)</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> {</div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="comment">/* Initialize function value. */</span></div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> f[d] = 0.0;</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> </div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="comment">/* Process all source nodes. */</span></div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="keywordflow">for</span> (l = 0; l < ld[ild][0]; l++)</div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> {</div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="comment">/* Compute the inner product for the current source and</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="comment"> * target nodes. */</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> temp = <a class="code" href="group__applications__fastsumS2__test.html#ga764f956ac40df99e776155bfa8da2e93" title="Computes the standard inner product between two vectors on the unit sphere given in spherical coord...">innerProduct</a>(eta[2*l],eta[2*l+1],xi[2*d],xi[2*d+1]);</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> </div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> <span class="comment">/* Evaluate the Poisson kernel for the current value and add</span></div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="comment"> * to the result. */</span></div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> f[d] += b[l]*<a class="code" href="group__applications__fastsumS2__test.html#ga3f82140c739f6fcf9bc17a03a09f580d" title="Evaluates the singularity kernel at a node .">singularityKernel</a>(temp,p[ip][0]);</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> }</div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> }</div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> </div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#gae2a54d1d59448d9f02697f89a6ec7306" title="Locally supported kernel.">KT_LOC_SUPP</a>:</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="comment">/* Calculate the multiplicative constant. */</span></div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> constant = ((p[ip][1]+1)/(PI2*pow(1-p[ip][0],p[ip][1]+1)));</div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> </div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="comment">/* Process all target nodes. */</span></div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> <span class="keywordflow">for</span> (d = 0; d < ld[ild][1]; d++)</div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> {</div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="comment">/* Initialize function value. */</span></div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> f[d] = 0.0;</div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> </div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="comment">/* Process all source nodes. */</span></div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="keywordflow">for</span> (l = 0; l < ld[ild][0]; l++)</div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> {</div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="comment">/* Compute the inner product for the current source and</span></div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="comment"> * target nodes. */</span></div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> temp = <a class="code" href="group__applications__fastsumS2__test.html#ga764f956ac40df99e776155bfa8da2e93" title="Computes the standard inner product between two vectors on the unit sphere given in spherical coord...">innerProduct</a>(eta[2*l],eta[2*l+1],xi[2*d],xi[2*d+1]);</div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> </div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <span class="comment">/* Evaluate the Poisson kernel for the current value and add</span></div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="comment"> * to the result. */</span></div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> f[d] += b[l]*<a class="code" href="group__applications__fastsumS2__test.html#ga226aec741614e0a2d2a9305bc2c28063" title="Evaluates the locally supported kernel at a node .">locallySupportedKernel</a>(temp,p[ip][0],p[ip][1]);</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> }</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> </div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="comment">/* Multiply result with constant. */</span></div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> f[d] *= constant;</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> }</div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> </div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <span class="keywordflow">case</span> <a class="code" href="group__applications__fastsumS2__test.html#ga3a03d7fde39f1ba22a4549e72c8cbf39" title="Gaussian kernel.">KT_GAUSSIAN</a>:</div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> <span class="comment">/* Process all target nodes. */</span></div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> <span class="keywordflow">for</span> (d = 0; d < ld[ild][1]; d++)</div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> {</div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="comment">/* Initialize function value. */</span></div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> f[d] = 0.0;</div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> </div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="comment">/* Process all source nodes. */</span></div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> <span class="keywordflow">for</span> (l = 0; l < ld[ild][0]; l++)</div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> {</div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <span class="comment">/* Compute the inner product for the current source and</span></div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="comment"> * target nodes. */</span></div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> temp = <a class="code" href="group__applications__fastsumS2__test.html#ga764f956ac40df99e776155bfa8da2e93" title="Computes the standard inner product between two vectors on the unit sphere given in spherical coord...">innerProduct</a>(eta[2*l],eta[2*l+1],xi[2*d],xi[2*d+1]);</div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> <span class="comment">/* Evaluate the Poisson kernel for the current value and add</span></div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> <span class="comment"> * to the result. */</span></div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> f[d] += b[l]*<a class="code" href="group__applications__fastsumS2__test.html#ga22bfa09881115e4c4f8fef59538d1ce7" title="Evaluates the spherical Gaussian kernel at a node .">gaussianKernel</a>(temp,p[ip][0]);</div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> }</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> }</div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> }</div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> }</div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> </div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="comment">/* Calculate and add the time needed. */</span></div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> t1 = getticks();</div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> t_d = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="comment">/* Calculate average time needed. */</span></div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> t_d = t_d/((double)ld[ild][4]);</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> }</div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> {</div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="comment">/* Initialize cumulative time variable with dummy value. */</span></div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> t_d = -1.0;</div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> t_dp = -1.0;</div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> }</div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> </div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> <span class="comment">/* Initialize error and cumulative time variables for the fast</span></div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="comment"> * algorithm. */</span></div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> err_fd = -1.0;</div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> err_f = -1.0;</div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> t_fd = -1.0;</div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> t_f = -1.0;</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> </div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> <span class="comment">/* Process all cut-off bandwidths. */</span></div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> <span class="keywordflow">for</span> (im = 0; im < im_max; im++)</div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> {</div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="comment">/* Init transform plans. */</span></div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> nfsft_init_guru(&plan_adjoint, m[im],ld[ild][0],</div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> ((use_nfft!=0)?(0U):(NFSFT_USE_NDFT)) |</div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> ((use_fpt!=0)?(0U):(NFSFT_USE_DPT)),</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> PRE_PHI_HUT | PRE_PSI | FFTW_INIT |</div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> FFT_OUT_OF_PLACE, cutoff);</div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> nfsft_init_guru(&plan,m[im],ld[ild][1],</div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> ((use_nfft!=0)?(0U):(NFSFT_USE_NDFT)) |</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> ((use_fpt!=0)?(0U):(NFSFT_USE_DPT)),</div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> PRE_PHI_HUT | PRE_PSI | FFTW_INIT |</div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> cutoff);</div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> plan_adjoint.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = f_hat;</div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> plan_adjoint.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a> = eta;</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> plan_adjoint.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = b;</div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = f_hat;</div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a> = xi;</div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = f_m;</div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> nfsft_precompute_x(&plan_adjoint);</div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> nfsft_precompute_x(&plan);</div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> </div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> <span class="comment">/* Check if direct algorithm shall also be tested. */</span></div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> <span class="keywordflow">if</span> (use_nfsft == BOTH)</div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> {</div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> <span class="comment">/* Initialize cumulative time variable. */</span></div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> t_fd = 0.0;</div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> </div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> <span class="comment">/* Initialize time measurement. */</span></div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> t0 = getticks();</div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> </div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> <span class="comment">/* Cycle through all runs. */</span></div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> <span class="keywordflow">for</span> (i = 0; i < ld[ild][4]; i++)</div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> {</div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> </div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> <span class="comment">/* Execute adjoint direct NDSFT transformation. */</span></div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> nfsft_adjoint_direct(&plan_adjoint);</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> </div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> <span class="comment">/* Multiplication with the Fourier-Legendre coefficients. */</span></div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> <span class="keywordflow">for</span> (k = 0; k <= m[im]; k++)</div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> f_hat[NFSFT_INDEX(k,n,&plan_adjoint)] *= a[k];</div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> </div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> <span class="comment">/* Execute direct NDSFT transformation. */</span></div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> nfsft_trafo_direct(&plan);</div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> </div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> }</div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> </div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> <span class="comment">/* Calculate and add the time needed. */</span></div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> t1 = getticks();</div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> t_fd = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> </div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="comment">/* Calculate average time needed. */</span></div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> t_fd = t_fd/((double)ld[ild][4]);</div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> </div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> <span class="comment">/* Check if error E_infty should be computed. */</span></div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> <span class="keywordflow">if</span> (ld[ild][2] != NO)</div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> {</div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> <span class="comment">/* Compute the error E_infinity. */</span></div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> err_fd = X(error_l_infty_1_complex)(f, f_m, ld[ild][1], b,</div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> ld[ild][0]);</div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> }</div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> }</div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> </div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> <span class="comment">/* Check if the fast NFSFT algorithm shall also be tested. */</span></div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> {</div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> <span class="comment">/* Initialize cumulative time variable for the NFSFT algorithm. */</span></div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> t_f = 0.0;</div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> }</div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> {</div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> <span class="comment">/* Initialize cumulative time variable for the direct NDSFT</span></div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> <span class="comment"> * algorithm. */</span></div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> t_fd = 0.0;</div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> }</div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> </div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="comment">/* Initialize time measurement. */</span></div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> t0 = getticks();</div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> </div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <span class="comment">/* Cycle through all runs. */</span></div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> <span class="keywordflow">for</span> (i = 0; i < ld[ild][4]; i++)</div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> {</div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> <span class="comment">/* Check if the fast NFSFT algorithm shall also be tested. */</span></div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> {</div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> <span class="comment">/* Execute the adjoint NFSFT transformation. */</span></div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> nfsft_adjoint(&plan_adjoint);</div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> }</div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> {</div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="comment">/* Execute the adjoint direct NDSFT transformation. */</span></div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> nfsft_adjoint_direct(&plan_adjoint);</div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> }</div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> </div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> <span class="comment">/* Multiplication with the Fourier-Legendre coefficients. */</span></div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> <span class="keywordflow">for</span> (k = 0; k <= m[im]; k++)</div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> f_hat[NFSFT_INDEX(k,n,&plan_adjoint)] *= a[k];</div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> </div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> <span class="comment">/* Check if the fast NFSFT algorithm shall also be tested. */</span></div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> {</div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> <span class="comment">/* Execute the NFSFT transformation. */</span></div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> nfsft_trafo(&plan);</div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> }</div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> {</div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> <span class="comment">/* Execute the NDSFT transformation. */</span></div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> nfsft_trafo_direct(&plan);</div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> }</div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> }</div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> </div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <span class="comment">/* Check if the fast NFSFT algorithm has been used. */</span></div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> t1 = getticks();</div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> </div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> t_f = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> t_fd = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> </div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> <span class="comment">/* Check if the fast NFSFT algorithm has been used. */</span></div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> {</div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="comment">/* Calculate average time needed. */</span></div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> t_f = t_f/((double)ld[ild][4]);</div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> }</div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> {</div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> <span class="comment">/* Calculate average time needed. */</span></div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> t_fd = t_fd/((double)ld[ild][4]);</div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> }</div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> </div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="comment">/* Check if error E_infty should be computed. */</span></div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> <span class="keywordflow">if</span> (ld[ild][2] != NO)</div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> {</div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="comment">/* Check if the fast NFSFT algorithm has been used. */</span></div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> {</div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="comment">/* Compute the error E_infinity. */</span></div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> err_f = X(error_l_infty_1_complex)(f, f_m, ld[ild][1], b,</div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> ld[ild][0]);</div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> }</div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> {</div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="comment">/* Compute the error E_infinity. */</span></div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> err_fd = X(error_l_infty_1_complex)(f, f_m, ld[ild][1], b,</div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> ld[ild][0]);</div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> }</div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> }</div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> </div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="comment">/* Print out the error measurements. */</span></div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> fprintf(stdout,<span class="stringliteral">"%e\n%e\n%e\n%e\n%e\n%e\n\n"</span>,t_d,t_dp,t_fd,t_f,err_fd,</div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> err_f);</div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> </div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <span class="comment">/* Finalize the NFSFT plans */</span></div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> nfsft_finalize(&plan_adjoint);</div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> nfsft_finalize(&plan);</div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> } <span class="comment">/* for (im = 0; im < im_max; im++) - Process all cut-off</span></div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> <span class="comment"> * bandwidths.*/</span></div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> } <span class="comment">/* for (ild = 0; ild < ild_max; ild++) - Process all node sets. */</span></div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> } <span class="comment">/* for (ip = 0; ip < ip_max; ip++) - Process all parameter sets. */</span></div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> </div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> <span class="comment">/* Delete precomputed data. */</span></div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> nfsft_forget();</div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> </div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> <span class="comment">/* Check if memory for precomputed data of the matrix K has been</span></div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> <span class="comment"> * allocated. */</span></div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> <span class="keywordflow">if</span> (precompute == YES)</div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> {</div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> <span class="comment">/* Free memory for precomputed matrix K. */</span></div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(prec);</div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> }</div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> <span class="comment">/* Free data arrays. */</span></div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_m);</div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(xi);</div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(eta);</div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(a);</div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(b);</div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> </div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> <span class="comment">/* Free memory for node sets. */</span></div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="keywordflow">for</span> (ild = 0; ild < ild_max; ild++)</div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ld[ild]);</div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ld);</div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> </div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> <span class="comment">/* Free memory for cut-off bandwidths. */</span></div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(m);</div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> </div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> <span class="comment">/* Free memory for parameter sets. */</span></div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> <span class="keywordflow">for</span> (ip = 0; ip < ip_max; ip++)</div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(p[ip]);</div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(p);</div>
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> } <span class="comment">/* for (tc = 0; tc < tc_max; tc++) - Process each testcase. */</span></div>
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> </div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="comment">/* Return exit code for successful run. */</span></div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> }</div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum_8c.html b/doc/api/html/fastsum_8c.html
deleted file mode 100644
index 1398953..0000000
--- a/doc/api/html/fastsum_8c.html
+++ /dev/null
@@ -1,138 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">fastsum.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Fast NFFT-based summation algorithm.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include <math.h></code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-<code>#include "<a class="el" href="fastsum_8h_source.html">fastsum.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-<code>#include "<a class="el" href="kernels_8h_source.html">kernels.h</a>"</code><br/>
-</div>
-<p><a href="fastsum_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga37a2a7cb4fb162d6e6e46ea614318a4e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga37a2a7cb4fb162d6e6e46ea614318a4e"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">max_i</a> (int a, int b)</td></tr>
-<tr class="memdesc:ga37a2a7cb4fb162d6e6e46ea614318a4e"><td class="mdescLeft"> </td><td class="mdescRight">max <br/></td></tr>
-<tr class="memitem:ga6fd3e84b794684dd1c6236619437bf09"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6fd3e84b794684dd1c6236619437bf09"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09">fak</a> (int n)</td></tr>
-<tr class="memdesc:ga6fd3e84b794684dd1c6236619437bf09"><td class="mdescLeft"> </td><td class="mdescRight">factorial <br/></td></tr>
-<tr class="memitem:gae767db8af0cbe9244cfbd0580b0bb9f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae767db8af0cbe9244cfbd0580b0bb9f4"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gae767db8af0cbe9244cfbd0580b0bb9f4">binom</a> (int n, int m)</td></tr>
-<tr class="memdesc:gae767db8af0cbe9244cfbd0580b0bb9f4"><td class="mdescLeft"> </td><td class="mdescRight">binomial coefficient <br/></td></tr>
-<tr class="memitem:ga0c4b940daf11ebe201355f43f26cddd0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0c4b940daf11ebe201355f43f26cddd0"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0">BasisPoly</a> (int m, int r, double xx)</td></tr>
-<tr class="memdesc:ga0c4b940daf11ebe201355f43f26cddd0"><td class="mdescLeft"> </td><td class="mdescRight">basis polynomial for regularized kernel <br/></td></tr>
-<tr class="memitem:ga247527ab67657107225fa69882f0208c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga247527ab67657107225fa69882f0208c"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c">regkern</a> (kernel k, double xx, int p, const double *param, double a, double b)</td></tr>
-<tr class="memdesc:ga247527ab67657107225fa69882f0208c"><td class="mdescLeft"> </td><td class="mdescRight">regularized kernel with K_I arbitrary and K_B smooth to zero <br/></td></tr>
-<tr class="memitem:gaf022589be0533270b476edc9b78928f1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf022589be0533270b476edc9b78928f1"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gaf022589be0533270b476edc9b78928f1">regkern1</a> (kernel k, double xx, int p, const double *param, double a, double b)</td></tr>
-<tr class="memdesc:gaf022589be0533270b476edc9b78928f1"><td class="mdescLeft"> </td><td class="mdescRight">regularized kernel with K_I arbitrary and K_B periodized (used in 1D) <br/></td></tr>
-<tr class="memitem:ga461376a86ecb935b74e7bfa4c86275d9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga461376a86ecb935b74e7bfa4c86275d9"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga461376a86ecb935b74e7bfa4c86275d9">regkern2</a> (kernel k, double xx, int p, const double *param, double a, double b)</td></tr>
-<tr class="memdesc:ga461376a86ecb935b74e7bfa4c86275d9"><td class="mdescLeft"> </td><td class="mdescRight">regularized kernel for even kernels with K_I even and K_B mirrored <br/></td></tr>
-<tr class="memitem:ga2077aec7b505fd6bf082c28cc5d59468"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2077aec7b505fd6bf082c28cc5d59468"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga2077aec7b505fd6bf082c28cc5d59468">regkern3</a> (kernel k, double xx, int p, const double *param, double a, double b)</td></tr>
-<tr class="memdesc:ga2077aec7b505fd6bf082c28cc5d59468"><td class="mdescLeft"> </td><td class="mdescRight">regularized kernel for even kernels with K_I even and K_B mirrored smooth to K(1/2) (used in dD, d>1) <br/></td></tr>
-<tr class="memitem:gae23df7b1c09c2955895545e164bc9e99"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae23df7b1c09c2955895545e164bc9e99"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gae23df7b1c09c2955895545e164bc9e99">linintkern</a> (const double x, const double _Complex *Add, const int Ad, const double a)</td></tr>
-<tr class="memdesc:gae23df7b1c09c2955895545e164bc9e99"><td class="mdescLeft"> </td><td class="mdescRight">linear spline interpolation in near field with even kernels <br/></td></tr>
-<tr class="memitem:gabad684b95fbab7d2c039bec72bff712e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gabad684b95fbab7d2c039bec72bff712e"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>quadrintkern</b> (const double x, const double _Complex *Add, const int Ad, const double a)</td></tr>
-<tr class="memitem:ga67103860c05f7296f7c302e7f0dbfe79"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga67103860c05f7296f7c302e7f0dbfe79"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79">kubintkern</a> (const double x, const double _Complex *Add, const int Ad, const double a)</td></tr>
-<tr class="memdesc:ga67103860c05f7296f7c302e7f0dbfe79"><td class="mdescLeft"> </td><td class="mdescRight">cubic spline interpolation in near field with even kernels <br/></td></tr>
-<tr class="memitem:gad527763b180de164610e55a704c69116"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad527763b180de164610e55a704c69116"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gad527763b180de164610e55a704c69116">kubintkern1</a> (const double x, const double _Complex *Add, const int Ad, const double a)</td></tr>
-<tr class="memdesc:gad527763b180de164610e55a704c69116"><td class="mdescLeft"> </td><td class="mdescRight">cubic spline interpolation in near field with arbitrary kernels <br/></td></tr>
-<tr class="memitem:ga7d3d3786f2e799dc1fa1704281f4a3fe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7d3d3786f2e799dc1fa1704281f4a3fe"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga7d3d3786f2e799dc1fa1704281f4a3fe">quicksort</a> (int d, int t, double *x, double _Complex *alpha, int N)</td></tr>
-<tr class="memdesc:ga7d3d3786f2e799dc1fa1704281f4a3fe"><td class="mdescLeft"> </td><td class="mdescRight">quicksort algorithm for source knots and associated coefficients <br/></td></tr>
-<tr class="memitem:ga8237ee0c81a2518c4849e71317a479d0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8237ee0c81a2518c4849e71317a479d0"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga8237ee0c81a2518c4849e71317a479d0">BuildBox</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:ga8237ee0c81a2518c4849e71317a479d0"><td class="mdescLeft"> </td><td class="mdescRight">initialize box-based search data structures <br/></td></tr>
-<tr class="memitem:ga15df6167d1d2dd375cb81e81a969cf9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga15df6167d1d2dd375cb81e81a969cf9d"></a>
-static double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga15df6167d1d2dd375cb81e81a969cf9d">calc_SearchBox</a> (int d, double *y, double *x, double _Complex *alpha, int start, int end_lt, const double _Complex *Add, const int Ad, int p, double a, const kernel k, const double *param, const unsigned flags)</td></tr>
-<tr class="memdesc:ga15df6167d1d2dd375cb81e81a969cf9d"><td class="mdescLeft"> </td><td class="mdescRight">inner computation function for box-based near field correction <br/></td></tr>
-<tr class="memitem:gae5d00a6d73390cc05d73aeca17028fc5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae5d00a6d73390cc05d73aeca17028fc5"></a>
-static double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gae5d00a6d73390cc05d73aeca17028fc5">SearchBox</a> (double *y, <a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gae5d00a6d73390cc05d73aeca17028fc5"><td class="mdescLeft"> </td><td class="mdescRight">box-based near field correction <br/></td></tr>
-<tr class="memitem:ga61bae6836e2c586b9de245b664853174"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga61bae6836e2c586b9de245b664853174"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga61bae6836e2c586b9de245b664853174">BuildTree</a> (int d, int t, double *x, double _Complex *alpha, int N)</td></tr>
-<tr class="memdesc:ga61bae6836e2c586b9de245b664853174"><td class="mdescLeft"> </td><td class="mdescRight">recursive sort of source knots dimension by dimension to get tree structure <br/></td></tr>
-<tr class="memitem:gab5a71f2cd5581bfa121b77aa6c981104"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab5a71f2cd5581bfa121b77aa6c981104"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gab5a71f2cd5581bfa121b77aa6c981104">SearchTree</a> (const int d, const int t, const double *x, const double _Complex *alpha, const double *xmin, const double *xmax, const int N, const kernel k, const double *param, const int Ad, const double _Complex *Add, const int p, const unsigned flags)</td></tr>
-<tr class="memdesc:gab5a71f2cd5581bfa121b77aa6c981104"><td class="mdescLeft"> </td><td class="mdescRight">fast search in tree of source knots for near field computation <br/></td></tr>
-<tr class="memitem:ga9a053d513b2eb19c5f1c70f16e0ae149"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149">fastsum_init_guru</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths, int d, int N_total, int M_total, kernel k, double *param, unsigned flags, int nn, int m, int p, double e [...]
-<tr class="memdesc:ga9a053d513b2eb19c5f1c70f16e0ae149"><td class="mdescLeft"> </td><td class="mdescRight">initialization of fastsum plan <a href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149"></a><br/></td></tr>
-<tr class="memitem:gab989ea4659fe681bd4c025e82756f769"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769">fastsum_finalize</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gab989ea4659fe681bd4c025e82756f769"><td class="mdescLeft"> </td><td class="mdescRight">finalization of fastsum plan <a href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769"></a><br/></td></tr>
-<tr class="memitem:gaaee3dd954ffc99e4330fabe16ccad0fd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd">fastsum_exact</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gaaee3dd954ffc99e4330fabe16ccad0fd"><td class="mdescLeft"> </td><td class="mdescRight">direct computation of sums <a href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd"></a><br/></td></tr>
-<tr class="memitem:ga197c16fcec7935886fc97d140f2b20ff"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff">fastsum_precompute</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:ga197c16fcec7935886fc97d140f2b20ff"><td class="mdescLeft"> </td><td class="mdescRight">precomputation for fastsum <a href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff"></a><br/></td></tr>
-<tr class="memitem:gaab2cc691ba59064c18d439c9fd2185e8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8">fastsum_trafo</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gaab2cc691ba59064c18d439c9fd2185e8"><td class="mdescLeft"> </td><td class="mdescRight">fast NFFT-based summation <a href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8"></a><br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Fast NFFT-based summation algorithm. </p>
-<dl class="section author"><dt>Author:</dt><dd>Markus Fenn </dd></dl>
-<dl class="section date"><dt>Date:</dt><dd>2003-2006 </dd></dl>
-
-<p>Definition in file <a class="el" href="fastsum_8c_source.html">fastsum.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum_8c_source.html b/doc/api/html/fastsum_8c_source.html
deleted file mode 100644
index 9f5e7c4..0000000
--- a/doc/api/html/fastsum_8c_source.html
+++ /dev/null
@@ -1,1021 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastsum.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="fastsum_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: fastsum.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include "<a class="code" href="fastsum_8h.html" title="Header file for the fast NFFT-based summation algorithm.">fastsum.h</a>"</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#include "<a class="code" href="kernels_8h.html" title="Header file with predefined kernels for the fast summation algorithm.">kernels.h</a>"</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e"> 49</a></span> <span class="keywordtype">int</span> <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>(<span class="keywordtype">int</span> a, <span class="keywordtype">int</span> b)</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> {</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">return</span> a >= b ? a : b;</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> }</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09"> 55</a></span> <span class="keywordtype">double</span> <a class="code" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09" title="factorial">fak</a>(<span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> {</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">if</span> (n<=1) <span class="keywordflow">return</span> 1.0;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">else</span> <span class="keywordflow">return</span> (<span class="keywordtype">double</span>)n*<a class="code" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09" title="factorial">fak</a>(n-1);</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> }</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gae767db8af0cbe9244cfbd0580b0bb9f4"> 62</a></span> <span class="keywordtype">double</span> <a class="code" href="group__applications__fastsum.html#gae767db8af0cbe9244cfbd0580b0bb9f4" title="binomial coefficient">binom</a>(<span class="keywordtype">int</span> n, <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> {</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">return</span> <a class="code" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09" title="factorial">fak</a>(n)/<a class="code" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09" title="factorial">fak</a>(m)/<a class="code" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09" title="factorial">fak</a>(n-m);</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> }</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0"> 68</a></span> <span class="keywordtype">double</span> <a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(<span class="keywordtype">int</span> m, <span class="keywordtype">int</span> r, <span class="keywordtype">double</span> xx)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> {</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordtype">double</span> sum=0.0;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">for</span> (k=0; k<=m-r; k++) {</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> sum+=<a class="code" href="group__applications__fastsum.html#gae767db8af0cbe9244cfbd0580b0bb9f4" title="binomial coefficient">binom</a>(m+k,k)*pow((xx+1.0)/2.0,(<span class="keywordtype">double</span>)k);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> }</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">return</span> sum*pow((xx+1.0),(<span class="keywordtype">double</span>)r)*pow(1.0-xx,(<span class="keywordtype">double</span>)(m+1))/(1<<(m+1))/<a class="code" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09" title="factorial">fak</a>(r); <span class="comment">/* 1<<(m+1) = 2^(m+1) */</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> }</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c"> 80</a></span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c" title="regularized kernel with K_I arbitrary and K_B smooth to zero">regkern</a>(kernel k, <span class="keywordtype">double</span> xx, <span class="keywordtype">int</span> p, <s [...]
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> {</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordtype">double</span> _Complex sum=0.0;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">if</span> (xx<-0.5)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> xx=-0.5;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">if</span> (xx>0.5)</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> xx=0.5;</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">if</span> ((xx>=-0.5+b && xx<=-a) || (xx>=a && xx<=0.5-b)) {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">return</span> k(xx,0,param);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> }</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (xx<-0.5+b) {</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> sum=(k(-0.5,0,param)+k(0.5,0,param))/2.0</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> *<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,0,2.0*xx/b+(1.0-b)/b);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> sum+=pow(-b/2.0,(<span class="keywordtype">double</span>)r)</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> *k(-0.5+b,r,param)</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> *<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,-2.0*xx/b+(b-1.0)/b);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> }</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((xx>-a) && (xx<a)) {</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> sum+=pow(a,(<span class="keywordtype">double</span>)r)</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> *( k(-a,r,param)*<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,xx/a)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> +k( a,r,param)*<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,-xx/a)*(r & 1 ? -1 : 1));</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> }</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (xx>0.5-b) {</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> sum=(k(-0.5,0,param)+k(0.5,0,param))/2.0</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> *<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,0,-2.0*xx/b+(1.0-b)/b);</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> sum+=pow(b/2.0,(<span class="keywordtype">double</span>)r)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> *k(0.5-b,r,param)</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> *<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,2.0*xx/b-(1.0-b)/b);</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> }</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> }</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">return</span> k(xx,0,param);</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> }</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
-<div class="line"><a name="l00126"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gaf022589be0533270b476edc9b78928f1"> 126</a></span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#gaf022589be0533270b476edc9b78928f1" title="regularized kernel with K_I arbitrary and K_B periodized (used in 1D)">regkern1</a>(kernel k, <span class="keywordtype">double</span> xx, <span class="keywordtype">int</s [...]
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> {</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordtype">double</span> _Complex sum=0.0;</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordflow">if</span> (xx<-0.5)</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> xx=-0.5;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="keywordflow">if</span> (xx>0.5)</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> xx=0.5;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">if</span> ((xx>=-0.5+b && xx<=-a) || (xx>=a && xx<=0.5-b))</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> {</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">return</span> k(xx,0,param);</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> }</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((xx>-a) && (xx<a))</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> {</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> sum+=pow(a,(<span class="keywordtype">double</span>)r)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> *( k(-a,r,param)*<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,xx/a)</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> +k( a,r,param)*<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,-xx/a)*(r & 1 ? -1 : 1));</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> }</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> }</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (xx<-0.5+b)</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> {</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> sum+=pow(b,(<span class="keywordtype">double</span>)r)</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> *( k(0.5-b,r,param)*<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,(xx+0.5)/b)</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> +k(-0.5+b,r,param)*<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,-(xx+0.5)/b)*(r & 1 ? -1 : 1));</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> }</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (xx>0.5-b)</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> {</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> sum+=pow(b,(<span class="keywordtype">double</span>)r)</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> *( k(0.5-b,r,param)*<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,(xx-0.5)/b)</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> +k(-0.5+b,r,param)*<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,-(xx-0.5)/b)*(r & 1 ? -1 : 1));</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> }</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> }</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="keywordflow">return</span> k(xx,0,param);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> }</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> </div>
-<div class="line"><a name="l00170"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga461376a86ecb935b74e7bfa4c86275d9"> 170</a></span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#ga461376a86ecb935b74e7bfa4c86275d9" title="regularized kernel for even kernels with K_I even and K_B mirrored">regkern2</a>(kernel k, <span class="keywordtype">double</span> xx, <span class="keywordtype">int</span [...]
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> {</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordtype">double</span> _Complex sum=0.0;</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> </div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> xx=fabs(xx);</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> </div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">if</span> (xx>0.5) {</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> sum+=pow(b,(<span class="keywordtype">double</span>)r)*k(0.5-b,r,param)</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> *(<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,0)+<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,0));</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> }</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> }</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((a<=xx) && (xx<=0.5-b)) {</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">return</span> k(xx,0,param);</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> }</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (xx<a) {</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> sum+=pow(-a,(<span class="keywordtype">double</span>)r)*k(a,r,param)</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> *(<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,xx/a)+<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,-xx/a));</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> }</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> }</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((0.5-b<xx) && (xx<=0.5)) {</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> sum+=pow(b,(<span class="keywordtype">double</span>)r)*k(0.5-b,r,param)</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> *(<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,(xx-0.5)/b)+<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,-(xx-0.5)/b));</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> }</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> }</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">return</span> 0.0;</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> }</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div>
-<div class="line"><a name="l00207"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga2077aec7b505fd6bf082c28cc5d59468"> 207</a></span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#ga2077aec7b505fd6bf082c28cc5d59468" title="regularized kernel for even kernels with K_I even and K_B mirrored smooth to K(1/2) (used in dD...">regkern3</a>(kernel k, <span class="keywordtype">double</span> xx, <sp [...]
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> {</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordtype">double</span> _Complex sum=0.0;</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> </div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> xx=fabs(xx);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="keywordflow">if</span> (xx>=0.5) {</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="comment">/*return kern(typ,c,0,0.5);*/</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> xx=0.5;</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> }</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="comment">/* else */</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="keywordflow">if</span> ((a<=xx) && (xx<=0.5-b)) {</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordflow">return</span> k(xx,0,param);</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> }</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (xx<a) {</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> sum+=pow(-a,(<span class="keywordtype">double</span>)r)*k(a,r,param)</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> *(<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,xx/a)+<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,-xx/a));</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> }</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="comment">/*sum=kern(typ,c,0,xx); */</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> }</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((0.5-b<xx) && (xx<=0.5)) {</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> sum=k(0.5,0,param)*<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,0,-2.0*xx/b+(1.0-b)/b);</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="comment">/* sum=regkern2(typ,c,p,a,b, 0.5)*BasisPoly(p-1,0,-2.0*xx/b+(1.0-b)/b); */</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="keywordflow">for</span> (r=0; r<p; r++) {</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> sum+=pow(b/2.0,(<span class="keywordtype">double</span>)r)</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> *k(0.5-b,r,param)</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> *<a class="code" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0" title="basis polynomial for regularized kernel">BasisPoly</a>(p-1,r,2.0*xx/b-(1.0-b)/b);</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> }</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> }</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="keywordflow">return</span> 0.0;</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> }</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> </div>
-<div class="line"><a name="l00244"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gae23df7b1c09c2955895545e164bc9e99"> 244</a></span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#gae23df7b1c09c2955895545e164bc9e99" title="linear spline interpolation in near field with even kernels">linintkern</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> x, <span class="key [...]
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="keyword">const</span> <span class="keywordtype">int</span> Ad, <span class="keyword">const</span> <span class="keywordtype">double</span> a)</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> {</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="keywordtype">double</span> c,c1,c3;</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="keywordtype">double</span> _Complex f1,f2;</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> </div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> c=x*Ad/a;</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> r=c; r=abs(r);</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> f1=Add[r];f2=Add[r+1];</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> c=fabs(c);</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> c1=c-r;</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> c3=c1-1.0;</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordflow">return</span> (-f1*c3+f2*c1);</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> }</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> </div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="keywordtype">double</span> _Complex quadrintkern(<span class="keyword">const</span> <span class="keywordtype">double</span> x, <span class="keyword">const</span> <span class="keywordtype">double</span> _Complex *Add,</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="keyword">const</span> <span class="keywordtype">int</span> Ad, <span class="keyword">const</span> <span class="keywordtype">double</span> a)</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> {</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keywordtype">double</span> c,c1,c2,c3;</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="keywordtype">double</span> _Complex f0,f1,f2;</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> c=x*Ad/a;</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> r=c; r=abs(r);</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="keywordflow">if</span> (r==0) {f0=Add[r+1];f1=Add[r];f2=Add[r+1];}</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="keywordflow">else</span> { f0=Add[r-1];f1=Add[r];f2=Add[r+1];}</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> c=fabs(c);</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> c1=c-r;</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> c2=c1+1.0;</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> c3=c1-1.0;</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="keywordflow">return</span> (f0*c1*c3/2.0-f1*c2*c3+f2*c2*c1/2.0);</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> }</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00279"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79"> 279</a></span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79" title="cubic spline interpolation in near field with even kernels">kubintkern</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> x, <span class="keyw [...]
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="keyword">const</span> <span class="keywordtype">int</span> Ad, <span class="keyword">const</span> <span class="keywordtype">double</span> a)</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> {</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="keywordtype">double</span> c,c1,c2,c3,c4;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="keywordtype">double</span> _Complex f0,f1,f2,f3;</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> c=x*Ad/a;</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> r=c; r=abs(r);</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="keywordflow">if</span> (r==0) {f0=Add[r+1];f1=Add[r];f2=Add[r+1];f3=Add[r+2];}</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="keywordflow">else</span> { f0=Add[r-1];f1=Add[r];f2=Add[r+1];f3=Add[r+2];}</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> c=fabs(c);</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> c1=c-r;</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> c2=c1+1.0;</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> c3=c1-1.0;</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> c4=c1-2.0;</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="comment">/* return(-f0*(c-r)*(c-r-1.0)*(c-r-2.0)/6.0+f1*(c-r+1.0)*(c-r-1.0)*(c-r-2.0)/2-</span></div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="comment"> f2*(c-r+1.0)*(c-r)*(c-r-2.0)/2+f3*(c-r+1.0)*(c-r)*(c-r-1.0)/6.0); */</span></div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="keywordflow">return</span>(-f0*c1*c3*c4/6.0+f1*c2*c3*c4/2.0-f2*c2*c1*c4/2.0+f3*c2*c1*c3/6.0);</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> }</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> </div>
-<div class="line"><a name="l00300"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gad527763b180de164610e55a704c69116"> 300</a></span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#gad527763b180de164610e55a704c69116" title="cubic spline interpolation in near field with arbitrary kernels">kubintkern1</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> x, <span class [...]
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="keyword">const</span> <span class="keywordtype">int</span> Ad, <span class="keyword">const</span> <span class="keywordtype">double</span> a)</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> {</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="keywordtype">double</span> c,c1,c2,c3,c4;</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="keywordtype">double</span> _Complex f0,f1,f2,f3;</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> Add+=2;</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> c=(x+a)*Ad/2/a;</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> r=c; r=abs(r);</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="comment">/*if (r==0) {f0=Add[r];f1=Add[r];f2=Add[r+1];f3=Add[r+2];}</span></div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment"> else */</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> { f0=Add[r-1];f1=Add[r];f2=Add[r+1];f3=Add[r+2];}</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> c=fabs(c);</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> c1=c-r;</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> c2=c1+1.0;</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> c3=c1-1.0;</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> c4=c1-2.0;</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="comment">/* return(-f0*(c-r)*(c-r-1.0)*(c-r-2.0)/6.0+f1*(c-r+1.0)*(c-r-1.0)*(c-r-2.0)/2-</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="comment"> f2*(c-r+1.0)*(c-r)*(c-r-2.0)/2+f3*(c-r+1.0)*(c-r)*(c-r-1.0)/6.0); */</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="keywordflow">return</span>(-f0*c1*c3*c4/6.0+f1*c2*c3*c4/2.0-f2*c2*c1*c4/2.0+f3*c2*c1*c3/6.0);</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> }</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
-<div class="line"><a name="l00323"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga7d3d3786f2e799dc1fa1704281f4a3fe"> 323</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#ga7d3d3786f2e799dc1fa1704281f4a3fe" title="quicksort algorithm for source knots and associated coefficients">quicksort</a>(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> t, <span class="keywordt [...]
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> {</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="keywordtype">int</span> lpos=0;</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="keywordtype">int</span> rpos=N-1;</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="comment">/*double pivot=x[((N-1)/2)*d+t];*/</span></div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="keywordtype">double</span> pivot=x[(N/2)*d+t];</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> </div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="keywordtype">double</span> temp1;</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="keywordtype">double</span> _Complex temp2;</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> </div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="keywordflow">while</span> (lpos<=rpos)</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> {</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="keywordflow">while</span> (x[lpos*d+t]<pivot)</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> lpos++;</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="keywordflow">while</span> (x[rpos*d+t]>pivot)</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> rpos--;</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="keywordflow">if</span> (lpos<=rpos)</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> {</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="keywordflow">for</span> (k=0; k<d; k++)</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> {</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> temp1=x[lpos*d+k];</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> x[lpos*d+k]=x[rpos*d+k];</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> x[rpos*d+k]=temp1;</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> }</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> temp2=alpha[lpos];</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> alpha[lpos]=alpha[rpos];</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> alpha[rpos]=temp2;</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> </div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> lpos++;</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> rpos--;</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> }</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> }</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="keywordflow">if</span> (0<rpos)</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <a class="code" href="group__applications__fastsum.html#ga7d3d3786f2e799dc1fa1704281f4a3fe" title="quicksort algorithm for source knots and associated coefficients">quicksort</a>(d,t,x,alpha,rpos+1);</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="keywordflow">if</span> (lpos<N-1)</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <a class="code" href="group__applications__fastsum.html#ga7d3d3786f2e799dc1fa1704281f4a3fe" title="quicksort algorithm for source knots and associated coefficients">quicksort</a>(d,t,x+lpos*d,alpha+lpos,N-lpos);</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> }</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> </div>
-<div class="line"><a name="l00363"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga8237ee0c81a2518c4849e71317a479d0"> 363</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#ga8237ee0c81a2518c4849e71317a479d0" title="initialize box-based search data structures">BuildBox</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algori [...]
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> {</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="keywordtype">int</span> t, l;</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="keywordtype">int</span> *box_index;</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="keywordtype">double</span> val[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>];</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> </div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> box_index = (<span class="keywordtype">int</span> *) malloc(ths->box_count * <span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="keywordflow">for</span> (t=0; t < ths->box_count; t++)</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> box_index[t] = 0;</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> </div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="keywordflow">for</span> (l=0; l < ths-><a class="code" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976" title="number of source knots">N_total</a>; l++)</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> {</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="keywordtype">int</span> ind = 0;</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="keywordflow">for</span> (t=0; t < ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>; t++)</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> {</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> val[t] = ths-><a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a> * l + t] + 0.25 - ths-><a class="code" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46" title="outer boundary">eps [...]
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> ind *= ths->box_count_per_dim;</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> ind += (int) (val[t] / ths-><a class="code" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6" title="inner boundary">eps_I</a>);</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> }</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> box_index[ind]++;</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> }</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> </div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> ths->box_offset[0] = 0;</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="keywordflow">for</span> (t=1; t<=ths->box_count; t++)</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> {</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> ths->box_offset[t] = ths->box_offset[t-1] + box_index[t-1];</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> box_index[t-1] = ths->box_offset[t-1];</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> }</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> </div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="keywordflow">for</span> (l=0; l < ths-><a class="code" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976" title="number of source knots">N_total</a>; l++)</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> {</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="keywordtype">int</span> ind = 0;</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="keywordflow">for</span> (t=0; t < ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>; t++)</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> {</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> val[t] = ths-><a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a> * l + t] + 0.25 - ths-><a class="code" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46" title="outer boundary">eps [...]
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> ind *= ths->box_count_per_dim;</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> ind += (int) (val[t] / ths-><a class="code" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6" title="inner boundary">eps_I</a>);</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> }</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> </div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> ths->box_alpha[box_index[ind]] = ths-><a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087" title="source coefficients">alpha</a>[l];</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> </div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="keywordflow">for</span> (t=0; t < ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>; t++)</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> {</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> ths->box_x[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a> * box_index[ind] + t] = ths-><a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</ [...]
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> }</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> box_index[ind]++;</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> }</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> free(box_index);</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> }</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> </div>
-<div class="line"><a name="l00414"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga15df6167d1d2dd375cb81e81a969cf9d"> 414</a></span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#ga15df6167d1d2dd375cb81e81a969cf9d" title="inner computation function for box-based near field correction">calc_SearchBox</a>(<span class="ke [...]
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> {</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="keywordtype">double</span> _Complex result = 0.0;</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> </div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="keywordtype">int</span> m, l;</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="keywordtype">double</span> r;</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> </div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="keywordflow">for</span> (m = start; m < end_lt; m++)</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> {</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="keywordflow">if</span> (d==1)</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> {</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> r = y[0]-x[m];</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> }</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> {</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> r=0.0;</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="keywordflow">for</span> (l=0; l<d; l++)</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> r+=(y[l]-x[m*d+l])*(y[l]-x[m*d+l]);</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> r=sqrt(r);</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> }</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="keywordflow">if</span> (fabs(r)<a)</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> {</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> result += alpha[m]*k(r,0,param); <span class="comment">/* alpha*(kern-regkern) */</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="keywordflow">if</span> (d==1)</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> {</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="keywordflow">if</span> (flags & <a class="code" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d" title="Constant symbols.">EXACT_NEARFIELD</a>)</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> result -= alpha[m]*<a class="code" href="group__applications__fastsum.html#gaf022589be0533270b476edc9b78928f1" title="regularized kernel with K_I arbitrary and K_B periodized (used in 1D)">regkern1</a>(k,r,p,param,a,1.0/16.0); <span class="comment">/* exact value (in 1D) */</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> result -= alpha[m]*<a class="code" href="group__applications__fastsum.html#gad527763b180de164610e55a704c69116" title="cubic spline interpolation in near field with arbitrary kernels">kubintkern1</a>(r,Add,Ad,a); <span class="comment">/* spline approximation */</span></div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> }</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> {</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="keywordflow">if</span> (flags & <a class="code" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d" title="Constant symbols.">EXACT_NEARFIELD</a>)</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> result -= alpha[m]*<a class="code" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c" title="regularized kernel with K_I arbitrary and K_B smooth to zero">regkern</a>(k,r,p,param,a,1.0/16.0); <span class="comment">/* exact value (in dD) */</span></div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor">#if defined(NF_KUB)</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="preprocessor"></span> result -= alpha[m]*<a class="code" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79" title="cubic spline interpolation in near field with even kernels">kubintkern</a>(r,Add,Ad,a); <span class="comment">/* spline approximation */</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="preprocessor">#elif defined(NF_QUADR)</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor"></span> result -= alpha[m]*quadrintkern(r,Add,Ad,a); <span class="comment">/* spline approximation */</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor">#elif defined(NF_LIN)</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="preprocessor"></span> result -= alpha[m]*<a class="code" href="group__applications__fastsum.html#gae23df7b1c09c2955895545e164bc9e99" title="linear spline interpolation in near field with even kernels">linintkern</a>(r,Add,Ad,a); <span class="comment">/* spline approximation */</span></div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="preprocessor"></span><span class="preprocessor"> #error define interpolation method</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> }</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> }</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="keywordflow">return</span> result;</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> }</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> </div>
-<div class="line"><a name="l00465"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gae5d00a6d73390cc05d73aeca17028fc5"> 465</a></span> <span class="keyword">static</span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#gae5d00a6d73390cc05d73aeca17028fc5" title="box-based near field correction">SearchBox</a>(<span class="keywordtype">double</span> *y, <a class="code" href="structfastsum__plan__ [...]
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> {</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="keywordtype">double</span> _Complex val = 0.0;</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="keywordtype">int</span> t, l;</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="keywordtype">int</span> y_multiind[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>];</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="keywordtype">int</span> multiindex[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>];</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="keywordtype">int</span> y_ind;</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> </div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="keywordflow">for</span> (t=0; t < ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>; t++)</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> {</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> y_multiind[t] = ((y[t] + 0.25 - ths-><a class="code" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46" title="outer boundary">eps_B</a>/2.0) / ths-><a class="code" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6" title="inner boundary">eps_I</a>);</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> }</div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> </div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>==1)</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> {</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="keywordflow">for</span> (y_ind = <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>(0, y_multiind[0]-1); y_ind < ths->box_count_per_dim && y_ind <= y_multiind[0]+1; y_ind++){</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> val += <a class="code" href="group__applications__fastsum.html#ga15df6167d1d2dd375cb81e81a969cf9d" title="inner computation function for box-based near field correction">calc_SearchBox</a>(ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>, y, ths->box_x, ths->box_alpha, ths->box_offset[y_ind], ths->box_offset[y_ind+1], ths-><a clas [...]
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> }</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> }</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>==2)</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> {</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="keywordflow">for</span> (multiindex[0] = <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>(0, y_multiind[0]-1); multiindex[0] < ths->box_count_per_dim && multiindex[0] <= y_multiind[0]+1; multiindex[0]++)</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="keywordflow">for</span> (multiindex[1] = <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>(0, y_multiind[1]-1); multiindex[1] < ths->box_count_per_dim && multiindex[1] <= y_multiind[1]+1; multiindex[1]++)</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> {</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> y_ind = (ths->box_count_per_dim * multiindex[0]) + multiindex[1];</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> val += <a class="code" href="group__applications__fastsum.html#ga15df6167d1d2dd375cb81e81a969cf9d" title="inner computation function for box-based near field correction">calc_SearchBox</a>(ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>, y, ths->box_x, ths->box_alpha, ths->box_offset[y_ind], ths->box_offset[y_ind+1], ths-><a cl [...]
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> }</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> }</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>==3)</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> {</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="keywordflow">for</span> (multiindex[0] = <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>(0, y_multiind[0]-1); multiindex[0] < ths->box_count_per_dim && multiindex[0] <= y_multiind[0]+1; multiindex[0]++)</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="keywordflow">for</span> (multiindex[1] = <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>(0, y_multiind[1]-1); multiindex[1] < ths->box_count_per_dim && multiindex[1] <= y_multiind[1]+1; multiindex[1]++)</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="keywordflow">for</span> (multiindex[2] = <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>(0, y_multiind[2]-1); multiindex[2] < ths->box_count_per_dim && multiindex[2] <= y_multiind[2]+1; multiindex[2]++)</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> {</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> y_ind = ((ths->box_count_per_dim * multiindex[0]) + multiindex[1]) * ths->box_count_per_dim + multiindex[2];</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> val += <a class="code" href="group__applications__fastsum.html#ga15df6167d1d2dd375cb81e81a969cf9d" title="inner computation function for box-based near field correction">calc_SearchBox</a>(ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>, y, ths->box_x, ths->box_alpha, ths->box_offset[y_ind], ths->box_offset[y_ind+1], ths-><a [...]
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> }</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> }</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="keywordflow">else</span> {</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> exit(-1);</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> }</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="keywordflow">return</span> val;</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> }</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> </div>
-<div class="line"><a name="l00510"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga61bae6836e2c586b9de245b664853174"> 510</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#ga61bae6836e2c586b9de245b664853174" title="recursive sort of source knots dimension by dimension to get tree structure">BuildTree</a>(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> t, <span clas [...]
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> {</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="keywordflow">if</span> (N>1)</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> {</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="keywordtype">int</span> m=N/2;</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> </div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <a class="code" href="group__applications__fastsum.html#ga7d3d3786f2e799dc1fa1704281f4a3fe" title="quicksort algorithm for source knots and associated coefficients">quicksort</a>(d,t,x,alpha,N);</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> </div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <a class="code" href="group__applications__fastsum.html#ga61bae6836e2c586b9de245b664853174" title="recursive sort of source knots dimension by dimension to get tree structure">BuildTree</a>(d, (t+1)%d, x, alpha, m);</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <a class="code" href="group__applications__fastsum.html#ga61bae6836e2c586b9de245b664853174" title="recursive sort of source knots dimension by dimension to get tree structure">BuildTree</a>(d, (t+1)%d, x+(m+1)*d, alpha+(m+1), N-m-1);</div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> }</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> }</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> </div>
-<div class="line"><a name="l00524"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gab5a71f2cd5581bfa121b77aa6c981104"> 524</a></span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#gab5a71f2cd5581bfa121b77aa6c981104" title="fast search in tree of source knots for near field computation">SearchTree</a>(<span class="keyword">const</span> <span class="keywordtype">int</span> d, <span class="key [...]
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="keyword">const</span> <span class="keywordtype">double</span> _Complex *alpha, <span class="keyword">const</span> <span class="keywordtype">double</span> *xmin, <span class="keyword">const</span> <span class="keywordtype">double</span> *xmax,</div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> kernel k, <span class="keyword">const</span> <span class="keywordtype">double</span> *param, <span class="keyword">const</span> <span class="keywordtype">int</span> Ad,</div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="keyword">const</span> <span class="keywordtype">double</span> _Complex *Add, <span class="keyword">const</span> <span class="keywordtype">int</span> p, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> flags)</div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> {</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="keywordtype">int</span> m=N/2;</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="keywordtype">double</span> Min=xmin[t], Max=xmax[t], Median=x[m*d+t];</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="keywordtype">double</span> a=fabs(Max-Min)/2;</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="keywordtype">int</span> E=0;</div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="keywordtype">double</span> r;</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> </div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="keywordflow">if</span> (N==0)</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="keywordflow">return</span> 0.0;</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="keywordflow">if</span> (Min>Median)</div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="keywordflow">return</span> <a class="code" href="group__applications__fastsum.html#gab5a71f2cd5581bfa121b77aa6c981104" title="fast search in tree of source knots for near field computation">SearchTree</a>(d,(t+1)%d,x+(m+1)*d,alpha+(m+1),xmin,xmax,N-m-1,k,param,Ad,Add,p,flags);</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (Max<Median)</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="keywordflow">return</span> <a class="code" href="group__applications__fastsum.html#gab5a71f2cd5581bfa121b77aa6c981104" title="fast search in tree of source knots for near field computation">SearchTree</a>(d,(t+1)%d,x,alpha,xmin,xmax,m,k,param,Ad,Add,p,flags);</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> {</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="keywordtype">double</span> _Complex result = 0.0;</div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> E=0;</div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> </div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <span class="keywordflow">for</span> (l=0; l<d; l++)</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> {</div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="keywordflow">if</span> ( x[m*d+l]>xmin[l] && x[m*d+l]<xmax[l] )</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> E++;</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> }</div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> </div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="keywordflow">if</span> (E==d)</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> {</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="keywordflow">if</span> (d==1)</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> {</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> r = xmin[0]+a-x[m]; <span class="comment">/* remember: xmin+a = y */</span></div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> }</div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> {</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> r=0.0;</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="keywordflow">for</span> (l=0; l<d; l++)</div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> r+=(xmin[l]+a-x[m*d+l])*(xmin[l]+a-x[m*d+l]); <span class="comment">/* remember: xmin+a = y */</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> r=sqrt(r);</div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> }</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="keywordflow">if</span> (fabs(r)<a)</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> {</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> result += alpha[m]*k(r,0,param); <span class="comment">/* alpha*(kern-regkern) */</span></div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="keywordflow">if</span> (d==1)</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> {</div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="keywordflow">if</span> (flags & <a class="code" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d" title="Constant symbols.">EXACT_NEARFIELD</a>)</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> result -= alpha[m]*<a class="code" href="group__applications__fastsum.html#gaf022589be0533270b476edc9b78928f1" title="regularized kernel with K_I arbitrary and K_B periodized (used in 1D)">regkern1</a>(k,r,p,param,a,1.0/16.0); <span class="comment">/* exact value (in 1D) */</span></div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> result -= alpha[m]*<a class="code" href="group__applications__fastsum.html#gad527763b180de164610e55a704c69116" title="cubic spline interpolation in near field with arbitrary kernels">kubintkern1</a>(r,Add,Ad,a); <span class="comment">/* spline approximation */</span></div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> }</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> {</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <span class="keywordflow">if</span> (flags & <a class="code" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d" title="Constant symbols.">EXACT_NEARFIELD</a>)</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> result -= alpha[m]*<a class="code" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c" title="regularized kernel with K_I arbitrary and K_B smooth to zero">regkern</a>(k,r,p,param,a,1.0/16.0); <span class="comment">/* exact value (in dD) */</span></div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="preprocessor">#if defined(NF_KUB)</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="preprocessor"></span> result -= alpha[m]*<a class="code" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79" title="cubic spline interpolation in near field with even kernels">kubintkern</a>(r,Add,Ad,a); <span class="comment">/* spline approximation */</span></div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="preprocessor">#elif defined(NF_QUADR)</span></div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="preprocessor"></span> result -= alpha[m]*quadrintkern(r,Add,Ad,a); <span class="comment">/* spline approximation */</span></div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="preprocessor">#elif defined(NF_LIN)</span></div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="preprocessor"></span> result -= alpha[m]*<a class="code" href="group__applications__fastsum.html#gae23df7b1c09c2955895545e164bc9e99" title="linear spline interpolation in near field with even kernels">linintkern</a>(r,Add,Ad,a); <span class="comment">/* spline approximation */</span></div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="preprocessor"></span><span class="preprocessor"> #error define interpolation method</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> }</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> }</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> result += <a class="code" href="group__applications__fastsum.html#gab5a71f2cd5581bfa121b77aa6c981104" title="fast search in tree of source knots for near field computation">SearchTree</a>(d,(t+1)%d,x+(m+1)*d,alpha+(m+1),xmin,xmax,N-m-1,k,param,Ad,Add,p,flags)</div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> + <a class="code" href="group__applications__fastsum.html#gab5a71f2cd5581bfa121b77aa6c981104" title="fast search in tree of source knots for near field computation">SearchTree</a>(d,(t+1)%d,x,alpha,xmin,xmax,m,k,param,Ad,Add,p,flags);</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="keywordflow">return</span> result;</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> }</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> }</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> </div>
-<div class="line"><a name="l00600"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149"> 600</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149" title="initialization of fastsum plan">fastsum_init_guru</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> *ths, <span class= [...]
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> {</div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="keywordtype">int</span> N[d], n[d];</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="keywordtype">int</span> n_total;</div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="keywordtype">int</span> sort_flags_trafo = 0;</div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="keywordtype">int</span> sort_flags_adjoint = 0;</div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> nthreads = nfft_get_omp_num_threads();</div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="keywordflow">if</span> (d > 1)</div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> {</div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> sort_flags_trafo = NFFT_SORT_NODES;</div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="preprocessor"></span> sort_flags_adjoint = NFFT_SORT_NODES | NFFT_OMP_BLOCKWISE_ADJOINT;</div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor"></span> sort_flags_adjoint = NFFT_SORT_NODES;</div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> </div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a> = d;</div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> </div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> ths-><a class="code" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976" title="number of source knots">N_total</a> = N_total;</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> ths-><a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f" title="number of target knots">M_total</a> = M_total;</div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> </div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> ths-><a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a> = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(d*N_total*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> ths-><a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087" title="source coefficients">alpha</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(N_total*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex)));</div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> </div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> ths-><a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a> = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(d*M_total*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> ths-><a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M_total*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex)));</div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> </div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> ths-><a class="code" href="structfastsum__plan__.html#aaf4ea39f8bed50a000d83eec53ee42b8" title="kernel function">k</a> = k;</div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> ths-><a class="code" href="structfastsum__plan__.html#a37cbe7b34fce3f90419fb45ab74aaa34" title="parameters for kernel function">kernel_param</a> = param;</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> </div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> ths-><a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa" title="flags precomp.">flags</a> = flags;</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> </div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> ths-><a class="code" href="structfastsum__plan__.html#a236982e68b9354c7edb47eeff18e05bf" title="degree of smoothness of regularization">p</a> = p;</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> ths-><a class="code" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6" title="inner boundary">eps_I</a> = eps_I; <span class="comment">/* =(double)ths->p/(double)nn; */</span> </div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> ths-><a class="code" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46" title="outer boundary">eps_B</a> = eps_B; <span class="comment">/* =1.0/16.0; */</span> </div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <span class="keywordflow">if</span> (!(ths-><a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa" title="flags precomp.">flags</a> & <a class="code" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d" title="Constant symbols.">EXACT_NEARFIELD</a>))</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> {</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>==1)</div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> {</div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a> = 4*(ths-><a class="code" href="structfastsum__plan__.html#a236982e68b9354c7edb47eeff18e05bf" title="degree of smoothness of regularization">p</a>)*(ths-><a class="code" href="structfastsum__plan__.html#a236982e68b9354c7edb47eeff18e05bf" title="degree of smoothness of regularization" [...]
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> ths-><a class="code" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc" title="spline values">Add</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a>+5)*(<span class="keyword"> [...]
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> }</div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> {</div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#aaf4ea39f8bed50a000d83eec53ee42b8" title="kernel function">k</a> == one_over_x)</div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> {</div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="keywordtype">double</span> delta = 1e-8;</div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="keywordflow">switch</span>(p)</div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> {</div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="keywordflow">case</span> 2: delta = 1e-3;</div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="keywordflow">case</span> 3: delta = 1e-4;</div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="keywordflow">case</span> 4: delta = 1e-5;</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="keywordflow">case</span> 5: delta = 1e-6;</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="keywordflow">case</span> 6: delta = 1e-6;</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="keywordflow">case</span> 7: delta = 1e-7;</div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="keywordflow">default</span>: delta = 1e-8;</div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> }</div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> </div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> <span class="preprocessor">#if defined(NF_KUB)</span></div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="preprocessor"></span> ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a> = <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>(10, (<span class="keywordtype">int</span>) ceil(1.4/pow(delta,1.0/4.0)));</div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> ths-><a class="code" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc" title="spline values">Add</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a>+3)*(<span class="keyword [...]
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="preprocessor">#elif defined(NF_QUADR)</span></div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <span class="preprocessor"></span> ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a> = (int) ceil(2.2/pow(delta,1.0/3.0));</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> ths-><a class="code" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc" title="spline values">Add</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a>+3)*(<span class="keyword [...]
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> <span class="preprocessor">#elif defined(NF_LIN)</span></div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="preprocessor"></span> ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a> = (int) ceil(1.7/pow(delta,1.0/2.0));</div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> ths-><a class="code" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc" title="spline values">Add</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a>+3)*(<span class="keyword [...]
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> <span class="preprocessor"></span><span class="preprocessor"> #error define NF_LIN or NF_QUADR or NF_KUB</span></div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> {</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a> = 2*(ths-><a class="code" href="structfastsum__plan__.html#a236982e68b9354c7edb47eeff18e05bf" title="degree of smoothness of regularization">p</a>)*(ths-><a class="code" href="structfastsum__plan__.html#a236982e68b9354c7edb47eeff18e05bf" title="degree of smoothness of regularizatio [...]
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> ths-><a class="code" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc" title="spline values">Add</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a>+3)*(<span class="keyword [...]
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> }</div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> }</div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> }</div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> </div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> ths-><a class="code" href="structfastsum__plan__.html#a271a9a4e952484997e902c5cbd5ff084" title="FS__ - fast summation.">n</a> = nn;</div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> {</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> N[t] = nn;</div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> n[t] = 2*nn;</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> }</div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> nfft_init_guru(&(ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>), d, N, N_total, n, m,</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> sort_flags_adjoint |</div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> nfft_init_guru(&(ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>), d, N, M_total, n, m,</div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> sort_flags_trafo |</div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> </div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> n_total = 1;</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> n_total *= nn;</div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> </div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a> = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(n_total*<span class="keyword">sizeof</span>(fftw_complex));</div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="preprocessor"></span><span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> <span class="preprocessor"></span>{</div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> fftw_plan_with_nthreads(nthreads);</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> ths->fft_plan = fftw_plan_dft(d,N,ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a>,ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a>,FFTW_FORWARD,FFTW_ESTIMATE);</div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> </div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa" title="flags precomp.">flags</a> & NEARFIELD_BOXES)</div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> {</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> ths->box_count_per_dim = floor((0.5 - ths-><a class="code" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46" title="outer boundary">eps_B</a>) / ths-><a class="code" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6" title="inner boundary">eps_I</a>) + 1;</div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> ths->box_count = 1;</div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>; t++)</div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> ths->box_count *= ths->box_count_per_dim;</div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> </div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> ths->box_offset = (<span class="keywordtype">int</span> *) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((ths->box_count+1) * <span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> </div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> ths->box_alpha = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976" title="number of source knots">N_total</a>*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex)));</div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> </div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> ths->box_x = (<span class="keywordtype">double</span> *) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a> * ths-><a class="code" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976" title="number of source knots">N_total</a> * <span class=" [...]
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> }</div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> }</div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> </div>
-<div class="line"><a name="l00742"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769"> 742</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769" title="finalization of fastsum plan">fastsum_finalize</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> *ths)</div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> {</div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>);</div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087" title="source coefficients">alpha</a>);</div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>);</div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>);</div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> </div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> <span class="keywordflow">if</span> (!(ths-><a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa" title="flags precomp.">flags</a> & <a class="code" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d" title="Constant symbols.">EXACT_NEARFIELD</a>))</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc" title="spline values">Add</a>);</div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> </div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> nfft_finalize(&(ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>));</div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> nfft_finalize(&(ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>));</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> </div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> <span class="preprocessor"></span><span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> <span class="preprocessor"></span>{</div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> <span class="preprocessor"></span> fftw_destroy_plan(ths->fft_plan);</div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a>);</div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> </div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa" title="flags precomp.">flags</a> & NEARFIELD_BOXES)</div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> {</div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->box_offset);</div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->box_alpha);</div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->box_x);</div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> }</div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> }</div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> </div>
-<div class="line"><a name="l00775"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd"> 775</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd" title="direct computation of sums">fastsum_exact</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> *ths)</div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> {</div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> <span class="keywordtype">int</span> j,k;</div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="keywordtype">double</span> r;</div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> </div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(j,k,t,r)</span></div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (j=0; j<ths-><a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f" title="number of target knots">M_total</a>; j++)</div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> {</div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> ths-><a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j]=0.0;</div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> <span class="keywordflow">for</span> (k=0; k<ths-><a class="code" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976" title="number of source knots">N_total</a>; k++)</div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> {</div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>==1)</div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> r = ths-><a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>[j] - ths-><a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>[k];</div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> {</div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> r=0.0;</div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>; t++)</div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> r += (ths-><a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>[j*ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>+t]-ths-><a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with rad [...]
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> r=sqrt(r);</div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> }</div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> ths-><a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j] += ths-><a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087" title="source coefficients">alpha</a>[k] * ths-><a class="code" href="structfastsum__plan__.html#aaf4ea39f8bed50a000d83eec53ee42b8" title="kernel function">k</a>(r,0,ths-><a class [...]
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> }</div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> }</div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> }</div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> </div>
-<div class="line"><a name="l00802"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff"> 802</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff" title="precomputation for fastsum">fastsum_precompute</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> *ths)</div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> {</div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="keywordtype">int</span> j,k,t;</div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> <span class="keywordtype">int</span> n_total;</div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> ticks t0, t1;</div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> </div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = 0.0;</div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = 0.0;</div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = 0.0;</div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[3] = 0.0;</div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> </div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> </div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa" title="flags precomp.">flags</a> & NEARFIELD_BOXES)</div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> {</div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> <a class="code" href="group__applications__fastsum.html#ga8237ee0c81a2518c4849e71317a479d0" title="initialize box-based search data structures">BuildBox</a>(ths);</div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> }</div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> {</div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> <a class="code" href="group__applications__fastsum.html#ga61bae6836e2c586b9de245b664853174" title="recursive sort of source knots dimension by dimension to get tree structure">BuildTree</a>(ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>,0,ths-><a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source kn [...]
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> }</div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> </div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[3] += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> </div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> <span class="keywordflow">if</span> (!(ths-><a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa" title="flags precomp.">flags</a> & <a class="code" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d" title="Constant symbols.">EXACT_NEARFIELD</a>))</div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> {</div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>==1)</div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k=-ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a>/2-2; k <= ths->Ad/2+2; k++)</div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> ths-><a class="code" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc" title="spline values">Add</a>[k+ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a>/2+2] = <a class="code" href="group__applications__fastsum.html#gaf022589be0533270b476edc9b78928f1" title="regularized kernel with K_I arbitrary and K_B periodized ( [...]
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k=0; k <= ths-><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a>+2; k++)</div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> ths-><a class="code" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc" title="spline values">Add</a>[k] = <a class="code" href="group__applications__fastsum.html#ga2077aec7b505fd6bf082c28cc5d59468" title="regularized kernel for even kernels with K_I even and K_B mirrored smooth to K(1/2) (used in dD...">regkern3</a>(ths-><a class="code" href="structfastsum__plan__.html#aaf4ea39f8 [...]
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> }</div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> </div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> <span class="keywordflow">for</span> (k=0; k<ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" h [...]
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> </div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&(ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>));</div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> </div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> nfft_precompute_psi(&(ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>));</div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> </div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> nfft_precompute_full_psi(&(ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>));</div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> <span class="keywordflow">for</span>(k=0; k<ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;k++)</div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[k] = ths-><a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087" title="source coefficients">alpha</ [...]
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> </div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> #ifdef MEASURE_TIME</div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> t0 = getticks();</div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> <span class="keywordflow">for</span> (j=0; j<ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" h [...]
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> </div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&(ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>));</div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> </div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> nfft_precompute_psi(&(ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>));</div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> </div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> nfft_precompute_full_psi(&(ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>));</div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> </div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> n_total = 1;</div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>; t++)</div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> n_total *= ths-><a class="code" href="structfastsum__plan__.html#a271a9a4e952484997e902c5cbd5ff084" title="FS__ - fast summation.">n</a>;</div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> </div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> #pragma omp parallel <span class="keywordflow">for</span> <span class="keywordflow">default</span>(shared) <span class="keyword">private</span>(j,k,t)</div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> <span class="keywordflow">for</span> (j=0; j<n_total; j++)</div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> {</div>
-<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>==1)</div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a>[j] = <a class="code" href="group__applications__fastsum.html#gaf022589be0533270b476edc9b78928f1" title="regularized kernel with K_I arbitrary and K_B periodized (used in 1D)">regkern1</a>(ths-><a class="code" href="structfastsum__plan__.html#aaf4ea39f8bed50a000d83eec53ee42b8" [...]
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> {</div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> k=j;</div>
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a>[j]=0.0;</div>
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>; t++)</div>
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> {</div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a>[j] += ((double)(k % (ths-><a class="code" href="structfastsum__plan__.html#a271a9a4e952484997e902c5cbd5ff084" title="FS__ - fast summation.">n</a>)) / (ths-><a class="code" href="structfastsum__plan__.html#a271a9a4e952484997e902c5cbd5ff084" title="FS__ - fast summation." [...]
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> k = k / (ths-><a class="code" href="structfastsum__plan__.html#a271a9a4e952484997e902c5cbd5ff084" title="FS__ - fast summation.">n</a>);</div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> }</div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a>[j] = <a class="code" href="group__applications__fastsum.html#ga2077aec7b505fd6bf082c28cc5d59468" title="regularized kernel for even kernels with K_I even and K_B mirrored smooth to K(1/2) (used in dD...">regkern3</a>(ths-><a class="code" href="structfastsum__plan__.html#aaf4e [...]
-<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> }</div>
-<div class="line"><a name="l00928"></a><span class="lineno"> 928</span> }</div>
-<div class="line"><a name="l00929"></a><span class="lineno"> 929</span> </div>
-<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> <a class="code" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770" title="Swaps each half over N[d]/2.">nfft_fftshift_complex</a>(ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a>, ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" [...]
-<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> fftw_execute(ths->fft_plan);</div>
-<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <a class="code" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770" title="Swaps each half over N[d]/2.">nfft_fftshift_complex</a>(ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a>, ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" [...]
-<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> </div>
-<div class="line"><a name="l00940"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8"> 940</a></span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8" title="fast NFFT-based summation">fastsum_trafo</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> *ths)</div>
-<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> {</div>
-<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> <span class="keywordtype">int</span> j,k,t;</div>
-<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> ticks t0, t1;</div>
-<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> </div>
-<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[4] = 0.0; </div>
-<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[5] = 0.0;</div>
-<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[6] = 0.0;</div>
-<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[7] = 0.0;</div>
-<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> </div>
-<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> nfft_adjoint(&(ths-><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>));</div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[4] += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> </div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k=0; k<ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k++)</div>
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = ths-><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion c [...]
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> #ifdef MEASURE_TIME</div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> t1 = getticks();</div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[5] += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> </div>
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&(ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>));</div>
-<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[6] += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> </div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(j,k,t)</span></div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (j=0; j<ths-><a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f" title="number of target knots">M_total</a>; j++)</div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> {</div>
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> <span class="keywordtype">double</span> ymin[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>], ymax[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>]; </div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa" title="flags precomp.">flags</a> & NEARFIELD_BOXES)</div>
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> {</div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> ths-><a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j] = ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[ [...]
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> }</div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> {</div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>; t++)</div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> {</div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> ymin[t] = ths-><a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>*j+t] - ths-><a class="code" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6" title="inner boundary">eps_I</a>;</div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> ymax[t] = ths-><a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>[ths-><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>*j+t] + ths-><a class="code" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6" title="inner boundary">eps_I</a>;</div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> }</div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> ths-><a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j] = ths-><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[ [...]
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> }</div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> <span class="comment">/* ths->f[j] = ths->mv2.f[j]; */</span></div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> <span class="comment">/* ths->f[j] = SearchTree(ths->d,0, ths->x, ths->alpha, ymin, ymax, ths->N_total, ths->k, ths->kernel_param, ths->Ad, ths->Add, ths->p, ths->flags); */</span></div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> }</div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> </div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> ths-><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[7] += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> <span class="comment">/* \} */</span></div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> </div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> <span class="comment">/* fastsum.c */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum_8h.html b/doc/api/html/fastsum_8h.html
deleted file mode 100644
index 16953ac..0000000
--- a/doc/api/html/fastsum_8h.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum.h File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#nested-classes">Data Structures</a> |
-<a href="#define-members">Macros</a> |
-<a href="#typedef-members">Typedefs</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">fastsum.h File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Header file for the fast NFFT-based summation algorithm.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-</div>
-<p><a href="fastsum_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html">fastsum_plan_</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">plan for fast summation algorithm <a href="structfastsum__plan__.html#details">More...</a><br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:gafa2dd15778c93b2eaa42de608fb4d1a8"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gafa2dd15778c93b2eaa42de608fb4d1a8">NF_KUB</a></td></tr>
-<tr class="memdesc:gafa2dd15778c93b2eaa42de608fb4d1a8"><td class="mdescLeft"> </td><td class="mdescRight">Include header for C99 complex datatype. <a href="group__applications__fastsum.html#gafa2dd15778c93b2eaa42de608fb4d1a8"></a><br/></td></tr>
-<tr class="memitem:gac22376cb30edef9131c592a355d1030d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac22376cb30edef9131c592a355d1030d"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d">EXACT_NEARFIELD</a> (1U<< 0)</td></tr>
-<tr class="memdesc:gac22376cb30edef9131c592a355d1030d"><td class="mdescLeft"> </td><td class="mdescRight">Constant symbols. <br/></td></tr>
-<tr class="memitem:ga90e3c393cc832eec83e9da3b207edb8c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga90e3c393cc832eec83e9da3b207edb8c"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NEARFIELD_BOXES</b> (1U<< 1)</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga9227ba3791b3360dc4a0d6fbf82034c6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9227ba3791b3360dc4a0d6fbf82034c6"></a>
-typedef double _Complex(* </td><td class="memItemRight" valign="bottom"><b>kernel</b> )(double, int, const double *)</td></tr>
-<tr class="memitem:gad953252f6b309404991c4afc7b98b34b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad953252f6b309404991c4afc7b98b34b"></a>
-typedef struct <a class="el" href="structfastsum__plan__.html">fastsum_plan_</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a></td></tr>
-<tr class="memdesc:gad953252f6b309404991c4afc7b98b34b"><td class="mdescLeft"> </td><td class="mdescRight">plan for fast summation algorithm <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga9a053d513b2eb19c5f1c70f16e0ae149"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149">fastsum_init_guru</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths, int d, int N_total, int M_total, kernel k, double *param, unsigned flags, int nn, int m, int p, double e [...]
-<tr class="memdesc:ga9a053d513b2eb19c5f1c70f16e0ae149"><td class="mdescLeft"> </td><td class="mdescRight">initialization of fastsum plan <a href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149"></a><br/></td></tr>
-<tr class="memitem:gab989ea4659fe681bd4c025e82756f769"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769">fastsum_finalize</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gab989ea4659fe681bd4c025e82756f769"><td class="mdescLeft"> </td><td class="mdescRight">finalization of fastsum plan <a href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769"></a><br/></td></tr>
-<tr class="memitem:gaaee3dd954ffc99e4330fabe16ccad0fd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd">fastsum_exact</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gaaee3dd954ffc99e4330fabe16ccad0fd"><td class="mdescLeft"> </td><td class="mdescRight">direct computation of sums <a href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd"></a><br/></td></tr>
-<tr class="memitem:ga197c16fcec7935886fc97d140f2b20ff"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff">fastsum_precompute</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:ga197c16fcec7935886fc97d140f2b20ff"><td class="mdescLeft"> </td><td class="mdescRight">precomputation for fastsum <a href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff"></a><br/></td></tr>
-<tr class="memitem:gaab2cc691ba59064c18d439c9fd2185e8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8">fastsum_trafo</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gaab2cc691ba59064c18d439c9fd2185e8"><td class="mdescLeft"> </td><td class="mdescRight">fast NFFT-based summation <a href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8"></a><br/></td></tr>
-<tr class="memitem:ga247527ab67657107225fa69882f0208c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga247527ab67657107225fa69882f0208c"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c">regkern</a> (kernel k, double xx, int p, const double *param, double a, double b)</td></tr>
-<tr class="memdesc:ga247527ab67657107225fa69882f0208c"><td class="mdescLeft"> </td><td class="mdescRight">regularized kernel with K_I arbitrary and K_B smooth to zero <br/></td></tr>
-<tr class="memitem:ga67103860c05f7296f7c302e7f0dbfe79"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga67103860c05f7296f7c302e7f0dbfe79"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79">kubintkern</a> (const double x, const double _Complex *Add, const int Ad, const double a)</td></tr>
-<tr class="memdesc:ga67103860c05f7296f7c302e7f0dbfe79"><td class="mdescLeft"> </td><td class="mdescRight">cubic spline interpolation in near field with even kernels <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Header file for the fast NFFT-based summation algorithm. </p>
-<p>reference: M. Fenn, G. Steidl, Fast NFFT based summation of radial functions. Sampl. Theory Signal Image Process., 3, 1-28, 2004.</p>
-<dl class="section author"><dt>Author:</dt><dd>Markus Fenn </dd></dl>
-<dl class="section date"><dt>Date:</dt><dd>2003-2006 </dd></dl>
-
-<p>Definition in file <a class="el" href="fastsum_8h_source.html">fastsum.h</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum_8h_source.html b/doc/api/html/fastsum_8h_source.html
deleted file mode 100644
index 513efa2..0000000
--- a/doc/api/html/fastsum_8h_source.html
+++ /dev/null
@@ -1,154 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastsum.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="fastsum_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: fastsum.h 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#ifndef fastsum_h_inc</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor"></span><span class="preprocessor">#define fastsum_h_inc</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor">#if !(defined(NF_LIN) || defined(NF_QUADR) || defined(NF_KUB))</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gafa2dd15778c93b2eaa42de608fb4d1a8"> 53</a></span> <span class="preprocessor"></span><span class="preprocessor"> #define NF_KUB</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> {</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keyword">typedef</span> <span class="keywordtype">double</span> _Complex (*kernel)(double , int , <span class="keyword">const</span> <span class="keywordtype">double</span> *);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00066"></a><span class="lineno"><a class="code" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d"> 66</a></span> <span class="preprocessor">#define EXACT_NEARFIELD (1U<< 0)</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="preprocessor">#define NEARFIELD_BOXES (1U<< 1)</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html"> 71</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan_</a></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {</div>
-<div class="line"><a name="l00075"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307"> 75</a></span> <span class="keywordtype">int</span> <a class="code" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307" title="api">d</a>; </div>
-<div class="line"><a name="l00077"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976"> 77</a></span> <span class="keywordtype">int</span> <a class="code" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976" title="number of source knots">N_total</a>; </div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f"> 78</a></span> <span class="keywordtype">int</span> <a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f" title="number of target knots">M_total</a>; </div>
-<div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087"> 80</a></span> <span class="keywordtype">double</span> _Complex *<a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087" title="source coefficients">alpha</a>; </div>
-<div class="line"><a name="l00081"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a"> 81</a></span> <span class="keywordtype">double</span> _Complex *<a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>; </div>
-<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91"> 83</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>; </div>
-<div class="line"><a name="l00084"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51"> 84</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>; </div>
-<div class="line"><a name="l00086"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#aaf4ea39f8bed50a000d83eec53ee42b8"> 86</a></span> kernel <a class="code" href="structfastsum__plan__.html#aaf4ea39f8bed50a000d83eec53ee42b8" title="kernel function">k</a>; </div>
-<div class="line"><a name="l00087"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a37cbe7b34fce3f90419fb45ab74aaa34"> 87</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfastsum__plan__.html#a37cbe7b34fce3f90419fb45ab74aaa34" title="parameters for kernel function">kernel_param</a>; </div>
-<div class="line"><a name="l00089"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa"> 89</a></span> <span class="keywordtype">unsigned</span> <a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa" title="flags precomp.">flags</a>; </div>
-<div class="line"><a name="l00094"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a2ac8e8bdf57c75a916b1f4ef36ca513e"> 94</a></span> <span class="keywordtype">double</span> _Complex *<a class="code" href="structfastsum__plan__.html#a2ac8e8bdf57c75a916b1f4ef36ca513e" title="internal">pre_K</a>; </div>
-<div class="line"><a name="l00097"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a271a9a4e952484997e902c5cbd5ff084"> 97</a></span> <span class="keywordtype">int</span> <a class="code" href="structfastsum__plan__.html#a271a9a4e952484997e902c5cbd5ff084" title="FS__ - fast summation.">n</a>; </div>
-<div class="line"><a name="l00098"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972"> 98</a></span> fftw_complex *<a class="code" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972" title="expansion coefficients">b</a>; </div>
-<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a236982e68b9354c7edb47eeff18e05bf"> 100</a></span> <span class="keywordtype">int</span> <a class="code" href="structfastsum__plan__.html#a236982e68b9354c7edb47eeff18e05bf" title="degree of smoothness of regularization">p</a>; </div>
-<div class="line"><a name="l00101"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6"> 101</a></span> <span class="keywordtype">double</span> <a class="code" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6" title="inner boundary">eps_I</a>; <span class="comment">/* fixed to p/n so far */</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46"> 102</a></span> <span class="keywordtype">double</span> <a class="code" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46" title="outer boundary">eps_B</a>; <span class="comment">/* fixed to 1/16 so far */</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766"> 104</a></span> <a class="code" href="structnfft__plan.html">nfft_plan</a> <a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>; </div>
-<div class="line"><a name="l00105"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78"> 105</a></span> <a class="code" href="structnfft__plan.html">nfft_plan</a> <a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>; </div>
-<div class="line"><a name="l00108"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef"> 108</a></span> <span class="keywordtype">int</span> <a class="code" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef" title="near field">Ad</a>; </div>
-<div class="line"><a name="l00109"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc"> 109</a></span> <span class="keywordtype">double</span> _Complex *<a class="code" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc" title="spline values">Add</a>; </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment">/* things for computing *b - are they used only once?? */</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> fftw_plan fft_plan;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordtype">int</span> box_count;</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">int</span> box_count_per_dim;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">int</span> *box_offset;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordtype">double</span> *box_x;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">double</span> _Complex *box_alpha;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> </div>
-<div class="line"><a name="l00120"></a><span class="lineno"><a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d"> 120</a></span> <span class="keywordtype">double</span> <a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[8]; </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> } <a class="code" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b" title="plan for fast summation algorithm">fastsum_plan</a>;</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149" title="initialization of fastsum plan">fastsum_init_guru</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N_total, <span class="keywordty [...]
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769" title="finalization of fastsum plan">fastsum_finalize</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> *ths);</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd" title="direct computation of sums">fastsum_exact</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> *ths);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff" title="precomputation for fastsum">fastsum_precompute</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> *ths);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8" title="fast NFFT-based summation">fastsum_trafo</a>(<a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> *ths);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment">/* \} */</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> </div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c" title="regularized kernel with K_I arbitrary and K_B smooth to zero">regkern</a>(kernel k, <span class="keywordtype">double</span> xx, <span class="keywordtype">int</span> p, <span class="keyword">const</span> <span class="keywordtype">double</span> *param, <span class="ke [...]
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="keywordtype">double</span> _Complex <a class="code" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79" title="cubic spline interpolation in near field with even kernels">kubintkern</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> x, <span class="keyword">const</span> <span class="keywordtype">double</span> _Complex *Add,</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keyword">const</span> <span class="keywordtype">int</span> Ad, <span class="keyword">const</span> <span class="keywordtype">double</span> a);</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> </div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="preprocessor"></span>} <span class="comment">/* extern "C" */</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="preprocessor"></span><span class="comment">/* fastsum.h */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum__benchomp_8c_source.html b/doc/api/html/fastsum__benchomp_8c_source.html
deleted file mode 100644
index 3cd856c..0000000
--- a/doc/api/html/fastsum__benchomp_8c_source.html
+++ /dev/null
@@ -1,701 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum_benchomp.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastsum_benchomp.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <unistd.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <<a class="code" href="nfft3_8h.html">nfft3.h</a>></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#define NREPEAT 5</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">static</span> FILE* file_out_tex = NULL;</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keywordtype">int</span> get_nthreads_array(<span class="keywordtype">int</span> **arr)</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> {</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">int</span> max_threads = nfft_get_omp_num_threads();</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> alloc_num = 2;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">int</span> ret_number = 0;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keywordtype">int</span> max_threads_pw2 = (max_threads / 2) * 2 == max_threads ? 1 : 0;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordflow">if</span> (max_threads <= 5)</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> *arr = (<span class="keywordtype">int</span>*) malloc(max_threads*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">for</span> (k = 0; k < max_threads; k++)</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> *(*arr + k) = k+1;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">return</span> max_threads;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> }</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">for</span> (k = 1; k <= max_threads; k*=2, alloc_num++);</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> *arr = (<span class="keywordtype">int</span>*) malloc(alloc_num*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">for</span> (k = 1; k <= max_threads; k*=2)</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> {</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">if</span> (k != max_threads && 2*k > max_threads && max_threads_pw2)</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> {</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> *(*arr + ret_number) = max_threads/2;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> ret_number++;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> }</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> *(*arr + ret_number) = k;</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> ret_number++;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">if</span> (k != max_threads && 2*k > max_threads)</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> {</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> *(*arr + ret_number) = max_threads;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> ret_number++;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> }</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> }</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">return</span> ret_number;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> } </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">void</span> check_result_value(<span class="keyword">const</span> <span class="keywordtype">int</span> val, <span class="keyword">const</span> <span class="keywordtype">int</span> ok, <span class="keyword">const</span> <span class="keywordtype">char</span> *msg)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> {</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">if</span> (val != ok)</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> {</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> fprintf(stderr, <span class="stringliteral">"ERROR %s: %d not %d\n"</span>, msg, val, ok);</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> exit(1);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> }</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">void</span> run_test_create(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> L, <span class="keywordtype">int</span> M)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> {</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">char</span> cmd[1025];</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> snprintf(cmd, 1024, <span class="stringliteral">"./fastsum_benchomp_createdataset %d %d %d > fastsum_benchomp_test.data"</span>, d, L, M);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> fprintf(stderr, <span class="stringliteral">"%s\n"</span>, cmd);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> check_result_value(system(cmd), 0, <span class="stringliteral">"createdataset"</span>);</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> }</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keywordtype">void</span> run_test_init_output()</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> {</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> FILE *f = fopen(<span class="stringliteral">"fastsum_benchomp_test.result"</span>, <span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">if</span> (f!= NULL)</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> fclose(f);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> }</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> {</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">int</span> d;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordtype">int</span> L;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordtype">int</span> M;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordtype">int</span> n;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordtype">int</span> m;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordtype">int</span> p;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">char</span> *kernel_name;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordtype">double</span> c;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordtype">double</span> eps_I;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordtype">double</span> eps_B;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> } <a class="code" href="structs__param.html">s_param</a>;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> {</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordtype">double</span> avg;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">double</span> min;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="keywordtype">double</span> max;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> } <a class="code" href="structs__resval.html">s_resval</a>;</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> {</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keywordtype">int</span> nthreads;</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <a class="code" href="structs__resval.html">s_resval</a> resval[16];</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> } <a class="code" href="structs__result.html">s_result</a>;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> {</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <a class="code" href="structs__param.html">s_param</a> param;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <a class="code" href="structs__result.html">s_result</a> *results;</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordtype">int</span> nresults;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> } <a class="code" href="structs__testset.html">s_testset</a>;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordtype">void</span> run_test(<a class="code" href="structs__resval.html">s_resval</a> *res, <span class="keywordtype">int</span> nrepeat, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> p, <span class="keywordtype">char</span> *kernel_name, <span class="keywordtype">double</span> c, <span class="keywordtype">double</span> eps [...]
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> {</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordtype">char</span> cmd[1025];</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordtype">int</span> r,t;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">for</span> (t = 0; t < 16; t++)</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> {</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> res[t].avg = 0.0; res[t].min = 1.0/0.0; res[t].max = 0.0;</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> }</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">if</span> (nthreads < 2)</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> snprintf(cmd, 1024, <span class="stringliteral">"./fastsum_benchomp_detail_single %d %d %d %s %lg %lg %lg < fastsum_benchomp_test.data > fastsum_benchomp_test.out"</span>, n, m, p, kernel_name, c, eps_I, eps_B);</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> snprintf(cmd, 1024, <span class="stringliteral">"./fastsum_benchomp_detail_threads %d %d %d %s %lg %lg %lg %d < fastsum_benchomp_test.data > fastsum_benchomp_test.out"</span>, n, m, p, kernel_name, c, eps_I, eps_B, nthreads);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> fprintf(stderr, <span class="stringliteral">"%s\n"</span>, cmd);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> check_result_value(system(cmd), 0, cmd);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">for</span> (r = 0; r < nrepeat; r++)</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> {</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keywordtype">int</span> retval;</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="keywordtype">double</span> v[16];</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> FILE *f;</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> check_result_value(system(cmd), 0, cmd);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> f = fopen(<span class="stringliteral">"fastsum_benchomp_test.out"</span>, <span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> retval = fscanf(f, <span class="stringliteral">"%lg %lg %lg %lg %lg %lg %lg %lg %lg %lg %lg %lg %lg %lg %lg %lg"</span>, v, v+1, v+2, v+3, v+4, v+5, v+6, v+7, v+8, v+9, v+10, v+11, v+12, v+13, v+14, v+15);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> check_result_value(retval, 16, <span class="stringliteral">"read fastsum_benchomp_test.out"</span>);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> fclose(f);</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> </div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordflow">for</span> (t = 0; t < 16; t++)</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> {</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> res[t].avg += v[t];</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="keywordflow">if</span> (res[t].min > v[t])</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> res[t].min = v[t];</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">if</span> (res[t].max < v[t])</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> res[t].max = v[t];</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> }</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> }</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">for</span> (t = 0; t < 16; t++)</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> res[t].avg /= nrepeat;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> fprintf(stderr, <span class="stringliteral">"%d %d: "</span>, nthreads, nrepeat);</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">for</span> (t = 0; t < 16; t++)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> fprintf(stderr, <span class="stringliteral">"%.3e %.3e %.3e | "</span>, res[t].avg, res[t].min, res[t].max);</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> fprintf(stderr, <span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> }</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *get_psi_string(<span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> {</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="keywordflow">if</span> (flags & PRE_PSI)</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">return</span> <span class="stringliteral">"prepsi"</span>;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (flags & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">return</span> <span class="stringliteral">"unknownPSI"</span>;</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> </div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">return</span> <span class="stringliteral">"nopsi"</span>;</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> }</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *get_sort_string(<span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> {</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">if</span> (flags & NFFT_OMP_BLOCKWISE_ADJOINT)</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordflow">return</span> <span class="stringliteral">""</span>;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">if</span> (flags & NFFT_SORT_NODES)</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">return</span> <span class="stringliteral">"sorted"</span>;</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordflow">return</span> <span class="stringliteral">"unsorted"</span>;</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> }</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *get_adjoint_omp_string(<span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> {</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">if</span> (flags & NFFT_OMP_BLOCKWISE_ADJOINT)</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">return</span> <span class="stringliteral">"blockwise"</span>;</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> </div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">return</span> <span class="stringliteral">""</span>;</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> }</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="preprocessor">#define MASK_FSUM_D (1U<<0)</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FSUM_L (1U<<1)</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FSUM_M (1U<<2)</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FSUM_MULTIBW (1U<<3)</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FSUM_WINM (1U<<4)</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FSUM_P (1U<<5)</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FSUM_KERNEL (1U<<6)</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FSUM_EPSI (1U<<7)</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FSUM_EPSB (1U<<8)</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fastsum_determine_different_parameters(<a class="code" href="structs__testset.html">s_testset</a> *testsets, <span class="keywordtype">int</span> ntestsets)</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> {</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> mask = 0;</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> </div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">if</span> (ntestsets < 2)</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="keywordflow">for</span> (t = 1; t < ntestsets; t++)</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> {</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="keywordflow">if</span> (testsets[t-1].param.d != testsets[t].param.d)</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> mask |= MASK_FSUM_D;</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="keywordflow">if</span> (testsets[t-1].param.L != testsets[t].param.L)</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> mask |= MASK_FSUM_L;</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="keywordflow">if</span> (testsets[t-1].param.M != testsets[t].param.M)</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> mask |= MASK_FSUM_M;</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="keywordflow">if</span> (testsets[t-1].param.n != testsets[t].param.n)</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> mask |= MASK_FSUM_MULTIBW;</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keywordflow">if</span> (testsets[t-1].param.m != testsets[t].param.m)</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> mask |= MASK_FSUM_WINM;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="keywordflow">if</span> (testsets[t-1].param.p != testsets[t].param.p)</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> mask |= MASK_FSUM_P;</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">if</span> (strcmp(testsets[t-1].param.kernel_name, testsets[t].param.kernel_name) != 0)</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> mask |= MASK_FSUM_KERNEL;</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="keywordflow">if</span> (testsets[t-1].param.eps_I != testsets[t].param.eps_I)</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> mask |= MASK_FSUM_EPSI;</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="keywordflow">if</span> (testsets[t-1].param.eps_B != testsets[t].param.eps_B)</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> mask |= MASK_FSUM_EPSB;</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> }</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> </div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="keywordflow">return</span> mask;</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> }</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> </div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="keywordtype">void</span> strEscapeUnderscore(<span class="keywordtype">char</span> *dst, <span class="keywordtype">char</span> *src, <span class="keywordtype">int</span> maxlen)</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> {</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="keywordtype">int</span> i = 0;</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="keywordtype">int</span> len;</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordtype">int</span> offset = 0;</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> </div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="keywordflow">while</span> (src[i] != <span class="charliteral">'\0'</span> && len + offset < maxlen - 1)</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> {</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="keywordflow">if</span> (src[i] == <span class="charliteral">'_'</span>)</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> len = snprintf(dst+offset, maxlen-offset, <span class="stringliteral">"\\_{}"</span>);</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> len = snprintf(dst+offset, maxlen-offset, <span class="stringliteral">"%c"</span>, src[i]);</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> offset += len;</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> i++;</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> }</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> }</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="keywordtype">void</span> fastsum_get_plot_title_minus_indep(<span class="keywordtype">char</span> *outstr, <span class="keywordtype">int</span> maxlen, <span class="keywordtype">char</span> *hostname, <a class="code" href="structs__param.html">s_param</a> param, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> diff_mask)</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> {</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> mask = ~diff_mask;</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="keywordtype">int</span> offset = 0;</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordtype">int</span> len;</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> </div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> len = snprintf(outstr, maxlen, <span class="stringliteral">"%s"</span>, hostname);</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> offset += len;</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="keywordflow">if</span> (mask & MASK_FSUM_D)</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> {</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" %dd fastsum"</span>, param.d);</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> offset += len;</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> }</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> </div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="keywordflow">if</span> ((mask & (MASK_FSUM_L | MASK_FSUM_M)) && param.L == param.M)</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> {</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" L=M=%d"</span>, param.L);</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> offset += len;</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> }</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> {</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="keywordflow">if</span> (mask & MASK_FSUM_L)</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> {</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" L=%d"</span>, param.L);</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> offset += len;</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> }</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> </div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">if</span> (mask & MASK_FSUM_M)</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> {</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" M=%d"</span>, param.M);</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> offset += len;</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> }</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> }</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> </div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="keywordflow">if</span> (mask & MASK_FSUM_MULTIBW)</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> {</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" n=%d"</span>, param.n);</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> offset += len;</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> }</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> </div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="keywordflow">if</span> (mask & MASK_FSUM_WINM)</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> {</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" m=%d"</span>, param.m);</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> offset += len;</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> }</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> </div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="keywordflow">if</span> (mask & MASK_FSUM_P)</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> {</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" p=%d"</span>, param.p);</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> offset += len;</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> }</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> </div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="keywordflow">if</span> (mask & MASK_FSUM_KERNEL)</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> {</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="keywordtype">char</span> tmp[maxlen];</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> strEscapeUnderscore(tmp, param.kernel_name, maxlen);</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> </div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" %s"</span>, tmp);</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> offset += len;</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> }</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> </div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="keywordflow">if</span> ((mask & (MASK_FSUM_EPSI | MASK_FSUM_EPSB)) && param.eps_I == param.eps_B)</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> {</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" $\\varepsilon_\\mathrm{I}$=$\\varepsilon_\\mathrm{B}$=%g"</span>, param.eps_I);</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> offset += len;</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> }</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> {</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="keywordflow">if</span> (mask & MASK_FSUM_EPSI)</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> {</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" $\\varepsilon_\\mathrm{I}$=%g"</span>, param.eps_I);</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> offset += len;</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> }</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> </div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="keywordflow">if</span> (mask & MASK_FSUM_EPSB)</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> {</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" $\\varepsilon_\\mathrm{B}$=%g"</span>, param.eps_B);</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> offset += len;</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> }</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> }</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> }</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> </div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="keywordtype">void</span> nfft_adjoint_print_output_histo_DFBRT(FILE *out, <a class="code" href="structs__testset.html">s_testset</a> testset)</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> {</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="keywordtype">int</span> i, size = testset.nresults;</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="keywordtype">char</span> hostname[1025];</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> </div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="keywordflow">if</span> (gethostname(hostname, 1024) != 0)</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> strncpy(hostname, <span class="stringliteral">"unnamed"</span>, 1024);</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> </div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> fprintf(out, <span class="stringliteral">"\\begin{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> fprintf(out, <span class="stringliteral">"\\begin{axis}["</span>);</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> fprintf(out, <span class="stringliteral">"width=0.9\\textwidth, height=0.6\\textwidth, "</span>);</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> fprintf(out, <span class="stringliteral">"symbolic x coords={"</span>);</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="keywordflow">if</span> (i > 0)</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> fprintf(out, <span class="stringliteral">",%d"</span>, testset.results[i].nthreads);</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> fprintf(out, <span class="stringliteral">"%d"</span>, testset.results[i].nthreads);</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> </div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> fprintf(out, <span class="stringliteral">"}, x tick label style={ /pgf/number format/1000 sep=}, xlabel=Number of threads, ylabel=Time in s, xtick=data, legend style={legend columns=-1}, ybar, bar width=7pt, ymajorgrids=true, yminorgrids=true, minor y tick num=1, "</span>);</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> fprintf(out, <span class="stringliteral">" title={%s %dd $\\textrm{NFFT}^\\top$ N=%d $\\sigma$=2 M=%d m=%d prepsi sorted}"</span>, hostname, testset.param.d, testset.param.n, testset.param.M, testset.param.m);</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> fprintf(out, <span class="stringliteral">" ]\n"</span>);</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[10].avg);</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> </div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[11].avg);</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> </div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[12].avg);</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> </div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[1].avg);</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> </div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[4].avg + testset.results[i].resval[1].avg);</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> fprintf(out, <span class="stringliteral">"\\legend{D,$\\textrm{F}^\\top$,$\\textrm{B}^\\top$,prepsi,total}\n"</span>);</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> fprintf(out, <span class="stringliteral">"\\end{axis}\n"</span>);</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> fprintf(out, <span class="stringliteral">"\\end{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> fprintf(out, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> </div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> fflush(out);</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> }</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> </div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="keywordtype">void</span> nfft_trafo_print_output_histo_DFBRT(FILE *out, <a class="code" href="structs__testset.html">s_testset</a> testset)</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> {</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="keywordtype">int</span> i, size = testset.nresults;</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="keywordtype">char</span> hostname[1025];</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> </div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="keywordflow">if</span> (gethostname(hostname, 1024) != 0)</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> strncpy(hostname, <span class="stringliteral">"unnamed"</span>, 1024);</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> </div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> fprintf(out, <span class="stringliteral">"\\begin{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> fprintf(out, <span class="stringliteral">"\\begin{axis}["</span>);</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> fprintf(out, <span class="stringliteral">"width=0.9\\textwidth, height=0.6\\textwidth, "</span>);</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> fprintf(out, <span class="stringliteral">"symbolic x coords={"</span>);</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="keywordflow">if</span> (i > 0)</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> fprintf(out, <span class="stringliteral">",%d"</span>, testset.results[i].nthreads);</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> fprintf(out, <span class="stringliteral">"%d"</span>, testset.results[i].nthreads);</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> </div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> fprintf(out, <span class="stringliteral">"}, x tick label style={ /pgf/number format/1000 sep=}, xlabel=Number of threads, ylabel=Time in s, xtick=data, legend style={legend columns=-1}, ybar, bar width=7pt, ymajorgrids=true, yminorgrids=true, minor y tick num=1, "</span>);</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> fprintf(out, <span class="stringliteral">" title={%s %dd $\\textrm{NFFT}$ N=%d $\\sigma$=2 M=%d m=%d prepsi sorted}"</span>, hostname, testset.param.d, testset.param.n, testset.param.M, testset.param.m);</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> fprintf(out, <span class="stringliteral">" ]\n"</span>);</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[13].avg);</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> </div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[14].avg);</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[15].avg);</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> </div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[2].avg);</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> </div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[6].avg + testset.results[i].resval[2].avg);</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> fprintf(out, <span class="stringliteral">"\\legend{D,F,B,prepsi,total}\n"</span>);</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> fprintf(out, <span class="stringliteral">"\\end{axis}\n"</span>);</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> fprintf(out, <span class="stringliteral">"\\end{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> fprintf(out, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> </div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> fflush(out);</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> }</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> </div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="keywordtype">void</span> fastsum_print_output_histo_PreRfNfT(FILE *out, <a class="code" href="structs__testset.html">s_testset</a> testset)</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> {</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="keywordtype">int</span> i, size = testset.nresults;</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="keywordtype">char</span> hostname[1025];</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="keywordtype">char</span> plottitle[1025];</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> </div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="keywordflow">if</span> (gethostname(hostname, 1024) != 0)</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> strncpy(hostname, <span class="stringliteral">"unnamed"</span>, 1024);</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> </div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> fastsum_get_plot_title_minus_indep(plottitle, 1024, hostname, testset.param, 0);</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> </div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> fprintf(out, <span class="stringliteral">"\\begin{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> fprintf(out, <span class="stringliteral">"\\begin{axis}["</span>);</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> fprintf(out, <span class="stringliteral">"width=0.9\\textwidth, height=0.6\\textwidth, "</span>);</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> fprintf(out, <span class="stringliteral">"symbolic x coords={"</span>);</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="keywordflow">if</span> (i > 0)</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> fprintf(out, <span class="stringliteral">",%d"</span>, testset.results[i].nthreads);</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> fprintf(out, <span class="stringliteral">"%d"</span>, testset.results[i].nthreads);</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> </div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> fprintf(out, <span class="stringliteral">"}, x tick label style={ /pgf/number format/1000 sep=}, xlabel=Number of threads, ylabel=Time in s, xtick=data, legend style={legend columns=1}, ybar, bar width=7pt, ymajorgrids=true, yminorgrids=true, minor y tick num=1, "</span>);</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> fprintf(out, <span class="stringliteral">" title={%s}"</span>, plottitle);</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> fprintf(out, <span class="stringliteral">" ]\n"</span>);</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[1].avg+testset.results[i].resval[2].avg);</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> </div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[3].avg);</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> </div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[4].avg + testset.results[i].resval[5].avg + testset.results[i].resval[6].avg);</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> </div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[7].avg);</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> </div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[9].avg - testset.results[i].resval[0].avg);</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> fprintf(out, <span class="stringliteral">"\\legend{prepsi (step 1b),init nearfield (step 1c),far field (steps 2a-c),nearfield (step 2d),total $-$ step 1a}\n"</span>);</div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> fprintf(out, <span class="stringliteral">"\\end{axis}\n"</span>);</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> fprintf(out, <span class="stringliteral">"\\end{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> fprintf(out, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> </div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> fflush(out);</div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> }</div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> </div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="keywordtype">void</span> fastsum_print_output_speedup_total_minus_indep(FILE *out, <a class="code" href="structs__testset.html">s_testset</a> *testsets, <span class="keywordtype">int</span> ntestsets)</div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> {</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="keywordtype">int</span> i, t;</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="keywordtype">char</span> hostname[1025];</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="keywordtype">char</span> plottitle[1025];</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> diff_mask = fastsum_determine_different_parameters(testsets, ntestsets);</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> </div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="keywordflow">if</span> (gethostname(hostname, 1024) != 0)</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> strncpy(hostname, <span class="stringliteral">"unnamed"</span>, 1024);</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> </div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> fastsum_get_plot_title_minus_indep(plottitle, 1024, hostname, testsets[0].param, diff_mask | MASK_FSUM_WINM);</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> </div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> fprintf(out, <span class="stringliteral">"\\begin{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> fprintf(out, <span class="stringliteral">"\\begin{axis}["</span>);</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> fprintf(out, <span class="stringliteral">"width=0.9\\textwidth, height=0.6\\textwidth, x tick label style={ /pgf/number format/1000 sep=}, xlabel=Number of threads, ylabel=Speedup, xtick=data, legend style={ legend pos = north west, legend columns=1}, ymajorgrids=true, yminorgrids=true, minor y tick num=4, "</span>);</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> fprintf(out, <span class="stringliteral">" title={%s}"</span>, plottitle);</div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> fprintf(out, <span class="stringliteral">" ]\n"</span>);</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> </div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="keywordflow">for</span> (t = 0; t < ntestsets; t++)</div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> {</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <a class="code" href="structs__testset.html">s_testset</a> testset = testsets[t];</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> </div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="keywordtype">double</span> tref = 0.0;</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> <span class="keywordflow">for</span> (i = 0; i < testset.nresults; i++)</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="keywordflow">if</span> (testset.results[i].nthreads == 1)</div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> tref = testset.results[i].resval[9].avg - testset.results[i].resval[0].avg;</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> </div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="keywordflow">for</span> (i = 0; i < testset.nresults; i++)</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, tref/(testset.results[i].resval[9].avg - testset.results[i].resval[0].avg));</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> </div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="keywordflow">for</span> (i = 0; i < testset.nresults; i++)</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> {</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> fprintf(stderr, <span class="stringliteral">"%d:%.3f "</span>, testset.results[i].nthreads, tref/(testset.results[i].resval[9].avg - testset.results[i].resval[0].avg));</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> }</div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> fprintf(stderr, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> }</div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> </div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> fprintf(out, <span class="stringliteral">"\\legend{{"</span>);</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="keywordflow">for</span> (t = 0; t < ntestsets; t++)</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> {</div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="keywordtype">char</span> title[256];</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="keywordflow">if</span> (t > 0)</div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> fprintf(out, <span class="stringliteral">"},{"</span>);</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> fastsum_get_plot_title_minus_indep(title, 255, <span class="stringliteral">""</span>, testsets[t].param, ~(diff_mask | MASK_FSUM_WINM));</div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> fprintf(out, <span class="stringliteral">"%s"</span>, title);</div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> }</div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> fprintf(out, <span class="stringliteral">"}}\n"</span>);</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> fprintf(out, <span class="stringliteral">"\\end{axis}\n"</span>);</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> fprintf(out, <span class="stringliteral">"\\end{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> fprintf(out, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> </div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> fflush(out);</div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> }</div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> </div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="keywordtype">void</span> run_testset(<a class="code" href="structs__testset.html">s_testset</a> *testset, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> L, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> p, <span class="keywordtype">char</span> *kernel_name, <sp [...]
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> {</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="keywordtype">int</span> i;</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> testset->param.d = d;</div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> testset->param.L = L;</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> testset->param.M = M;</div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> testset->param.n = n;</div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> testset->param.m = m;</div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> testset->param.p = p;</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> testset->param.kernel_name = kernel_name;</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> testset->param.c = c;</div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> testset->param.eps_I = eps_I;</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> testset->param.eps_B = eps_B;</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> </div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> testset->results = (<a class="code" href="structs__result.html">s_result</a>*) malloc(n_threads_array_size*<span class="keyword">sizeof</span>(<a class="code" href="structs__result.html">s_result</a>));</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> testset->nresults = n_threads_array_size;</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> </div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> run_test_create(testset->param.d, testset->param.L, testset->param.M);</div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="keywordflow">for</span> (i = 0; i < n_threads_array_size; i++)</div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> {</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> testset->results[i].nthreads = nthreads_array[i];</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> run_test(testset->results[i].resval, NREPEAT, testset->param.n, testset->param.m, testset->param.p, testset->param.kernel_name, testset->param.c, testset->param.eps_I, testset->param.eps_B, testset->results[i].nthreads);</div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> }</div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> </div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> }</div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> </div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="keywordtype">void</span> test1(<span class="keywordtype">int</span> *nthreads_array, <span class="keywordtype">int</span> n_threads_array_size)</div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> {</div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <a class="code" href="structs__testset.html">s_testset</a> testsets[1];</div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> </div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="preprocessor"></span> run_testset(&testsets[0], 3, 100000, 100000, 128, 4, 7, <span class="stringliteral">"one_over_x"</span>, 0.0, 0.03125, 0.03125, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> </div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> fastsum_print_output_speedup_total_minus_indep(file_out_tex, testsets, 1);</div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> </div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> fastsum_print_output_histo_PreRfNfT(file_out_tex, testsets[0]);</div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> </div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> nfft_adjoint_print_output_histo_DFBRT(file_out_tex, testsets[0]);</div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> </div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> nfft_trafo_print_output_histo_DFBRT(file_out_tex, testsets[0]);</div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> </div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>** argv)</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> {</div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="keywordtype">int</span> *nthreads_array;</div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="keywordtype">int</span> n_threads_array_size = get_nthreads_array(&nthreads_array);</div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> </div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="preprocessor">#if !(defined MEASURE_TIME && defined MEASURE_TIME_FFTW)</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="preprocessor"></span> fprintf(stderr, <span class="stringliteral">"WARNING: Detailed time measurements are not activated.\n"</span>);</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> fprintf(stderr, <span class="stringliteral">"Please re-run the configure script with options\n"</span>);</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> fprintf(stderr, <span class="stringliteral">"--enable-measure-time --enable-measure-time-fftw --enable-openmp\n"</span>);</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> fprintf(stderr, <span class="stringliteral">"and run \"make clean all\"\n\n"</span>);</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="keywordflow">for</span> (k = 0; k < n_threads_array_size; k++)</div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> fprintf(stderr, <span class="stringliteral">"%d "</span>, nthreads_array[k]);</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> fprintf(stderr, <span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> </div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> file_out_tex = fopen(<span class="stringliteral">"fastsum_benchomp_results_plots.tex"</span>, <span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> </div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> test1(nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> </div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> fclose(file_out_tex);</div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> </div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> }</div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum__benchomp__createdataset_8c_source.html b/doc/api/html/fastsum__benchomp__createdataset_8c_source.html
deleted file mode 100644
index 76b93c1..0000000
--- a/doc/api/html/fastsum__benchomp__createdataset_8c_source.html
+++ /dev/null
@@ -1,177 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum_benchomp_createdataset.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastsum_benchomp_createdataset.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3372 2009-10-21 06:04:05Z skunis $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keywordtype">void</span> fastsum_benchomp_createdataset(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> L, <span class="keywordtype">int</span> M)</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> t, j, k;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> R *x;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> R *y;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> C *alpha;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> x = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(d*L*<span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> y = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(d*L*<span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> alpha = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(L*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> k = 0;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordflow">while</span> (k < L)</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> {</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">double</span> r_max = 1.0;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordtype">double</span> r2 = 0.0;</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> </div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">for</span> (j=0; j<d; j++)</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> x[k*d+j] = 2.0 * r_max * (<span class="keywordtype">double</span>)rand()/(double)RAND_MAX - r_max;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">for</span> (j=0; j<d; j++)</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> r2 += x[k*d+j] * x[k*d+j];</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">if</span> (r2 >= r_max * r_max)</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> k++;</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> }</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(alpha,L);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> k = 0;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">while</span> (k < M)</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> {</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordtype">double</span> r_max = 1.0;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordtype">double</span> r2 = 0.0;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">for</span> (j=0; j<d; j++)</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> y[k*d+j] = 2.0 * r_max * (<span class="keywordtype">double</span>)rand()/(double)RAND_MAX - r_max;</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">for</span> (j=0; j<d; j++)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> r2 += y[k*d+j] * y[k*d+j];</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">if</span> (r2 >= r_max * r_max)</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> k++;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> printf(<span class="stringliteral">"%d %d %d\n"</span>, d, L, M);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">for</span> (j=0; j < L; j++)</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> {</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">for</span> (t=0; t < d; t++)</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> printf(<span class="stringliteral">"%.16e "</span>, x[d*j+t]);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> }</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">for</span> (j=0; j < L; j++)</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> printf(<span class="stringliteral">"%.16e %.16e\n"</span>, creal(alpha[j]), cimag(alpha[j]));</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">for</span> (j=0; j < M; j++)</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> {</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">for</span> (t=0; t < d; t++)</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> printf(<span class="stringliteral">"%.16e "</span>, y[d*j+t]);</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(y);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(alpha);</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> }</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> {</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordtype">int</span> d;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordtype">int</span> L;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordtype">int</span> M;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">if</span> (argc < 4) {</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> fprintf(stderr, <span class="stringliteral">"usage: d L M\n"</span>);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> }</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> d = atoi(argv[1]);</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> L = atoi(argv[2]);</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> M = atoi(argv[3]);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> fprintf(stderr, <span class="stringliteral">"d=%d, L=%d, M=%d\n"</span>, d, L, M);</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> fastsum_benchomp_createdataset(d, L, M);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> }</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum__benchomp__detail_8c_source.html b/doc/api/html/fastsum__benchomp__detail_8c_source.html
deleted file mode 100644
index 1a68568..0000000
--- a/doc/api/html/fastsum__benchomp__detail_8c_source.html
+++ /dev/null
@@ -1,236 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum_benchomp_detail.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastsum_benchomp_detail.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3372 2009-10-21 06:04:05Z skunis $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="fastsum_8h.html" title="Header file for the fast NFFT-based summation algorithm.">fastsum.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="kernels_8h.html" title="Header file with predefined kernels for the fast summation algorithm.">kernels.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor"></span><span class="preprocessor">#include <omp.h></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">int</span> bench_openmp(FILE *infile, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> p, <span class="keywordtype">double</span> _Complex (*kernel)(<span class="keywordtype">double</span> , <span class="keywordtype">int</span> , <span class="keyword">const</span> <span class="keywordtype">double</span> *), <span class [...]
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> {</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> my_fastsum_plan;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">int</span> d, L, M;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">int</span> t, j;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordtype">double</span> re,im;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">double</span> r_max = 0.25 - my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46" title="outer boundary">eps_B</a>/2.0;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> ticks t0, t1;</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">double</span> tt_total;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> fscanf(infile, <span class="stringliteral">"%d %d %d"</span>, &d, &L, &M);</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor"></span> fftw_import_wisdom_from_filename(<span class="stringliteral">"fastsum_benchomp_detail_threads.plan"</span>);</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor"></span> fftw_import_wisdom_from_filename(<span class="stringliteral">"fastsum_benchomp_detail_single.plan"</span>);</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <a class="code" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149" title="initialization of fastsum plan">fastsum_init_guru</a>(&my_fastsum_plan, d, L, M, kernel, &c, NEARFIELD_BOXES, n, m, p, eps_I, eps_B);</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor"></span> fftw_export_wisdom_to_filename(<span class="stringliteral">"fastsum_benchomp_detail_threads.plan"</span>);</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor"></span> fftw_export_wisdom_to_filename(<span class="stringliteral">"fastsum_benchomp_detail_single.plan"</span>);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">for</span> (j=0; j < L; j++)</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> {</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">for</span> (t=0; t < d; t++)</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> {</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">double</span> v;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> fscanf(infile, <span class="stringliteral">"%lg"</span>, &v);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>[d*j+t] = v * r_max;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> }</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> }</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">for</span> (j=0; j < L; j++)</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> {</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> fscanf(infile, <span class="stringliteral">"%lg %lg"</span>, &re, &im);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087" title="source coefficients">alpha</a>[j] = re + _Complex_I * im;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> }</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">for</span> (j=0; j < M; j++)</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> {</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">for</span> (t=0; t < d; t++)</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> {</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordtype">double</span> v;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> fscanf(infile, <span class="stringliteral">"%lg"</span>, &v);</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>[d*j+t] = v * r_max;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> }</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> }</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> t0 = getticks();</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <a class="code" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff" title="precomputation for fastsum">fastsum_precompute</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <a class="code" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8" title="fast NFFT-based summation">fastsum_trafo</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> t1 = getticks();</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> tt_total = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="preprocessor">#ifndef MEASURE_TIME</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="preprocessor"></span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = 0.0;</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = 0.0;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = 0.0;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[3] = 0.0;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[4] = 0.0;</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[5] = 0.0;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[6] = 0.0;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[7] = 0.0;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = 0.0;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = 0.0;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = 0.0;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = 0.0;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="preprocessor"></span><span class="preprocessor">#ifndef MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="preprocessor"></span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766" title="source nfft plan">mv1</a>.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = 0.0;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78" title="target nfft plan">mv2</a>.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = 0.0;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> printf(<span class="stringliteral">"%.6e %.6e %.6e %6e %.6e %.6e %.6e %.6e %.6e %6e %.6e %.6e %6e %.6e %.6e %6e\n"</span>, my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0], my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e [...]
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <a class="code" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769" title="finalization of fastsum plan">fastsum_finalize</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> </div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> }</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> {</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordtype">int</span> n; </div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordtype">int</span> m; </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordtype">int</span> p; </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">char</span> *s; </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordtype">double</span> _Complex (*kernel)(double , int , <span class="keyword">const</span> <span class="keywordtype">double</span> *); </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordtype">double</span> c; </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordtype">double</span> eps_I; </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordtype">double</span> eps_B; </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> nthreads;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">if</span> (argc != 9)</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> nthreads = atoi(argv[8]);</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> fftw_init_threads();</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> omp_set_num_threads(nthreads);</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="preprocessor"></span> <span class="keywordflow">if</span> (argc != 8)</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> n=atoi(argv[1]);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> m=atoi(argv[2]);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> p=atoi(argv[3]);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> s=argv[4];</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> c=atof(argv[5]);</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> eps_I=atof(argv[6]);</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> eps_B=atof(argv[7]);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"gaussian"</span>)==0)</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> kernel = gaussian;</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"multiquadric"</span>)==0)</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> kernel = multiquadric;</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"inverse_multiquadric"</span>)==0)</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> kernel = inverse_multiquadric;</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"logarithm"</span>)==0)</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> kernel = logarithm;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"thinplate_spline"</span>)==0)</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> kernel = thinplate_spline;</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"one_over_square"</span>)==0)</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> kernel = one_over_square;</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"one_over_modulus"</span>)==0)</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> kernel = one_over_modulus;</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"one_over_x"</span>)==0)</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> kernel = one_over_x;</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"inverse_multiquadric3"</span>)==0)</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> kernel = inverse_multiquadric3;</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"sinc_kernel"</span>)==0)</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> kernel = sinc_kernel;</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"cosc"</span>)==0)</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> kernel = cosc;</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"cot"</span>)==0)</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> kernel = kcot;</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> {</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> s=<span class="stringliteral">"multiquadric"</span>;</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> kernel = multiquadric;</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> }</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> bench_openmp(stdin, n, m, p, kernel, c, eps_I, eps_B);</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> }</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum__matlab_8c.html b/doc/api/html/fastsum__matlab_8c.html
deleted file mode 100644
index be08e57..0000000
--- a/doc/api/html/fastsum__matlab_8c.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum_matlab.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">fastsum_matlab.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Simple test program for the fast NFFT-based summation algorithm, called by fastsum.m.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include <stdio.h></code><br/>
-<code>#include <string.h></code><br/>
-<code>#include <math.h></code><br/>
-<code>#include "<a class="el" href="fastsum_8h_source.html">fastsum.h</a>"</code><br/>
-<code>#include "<a class="el" href="kernels_8h_source.html">kernels.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-</div>
-<p><a href="fastsum__matlab_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Simple test program for the fast NFFT-based summation algorithm, called by fastsum.m. </p>
-<dl class="section author"><dt>Author:</dt><dd>Markus Fenn </dd></dl>
-<dl class="section date"><dt>Date:</dt><dd>2006 </dd></dl>
-
-<p>Definition in file <a class="el" href="fastsum__matlab_8c_source.html">fastsum_matlab.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum__matlab_8c_source.html b/doc/api/html/fastsum__matlab_8c_source.html
deleted file mode 100644
index f0e654f..0000000
--- a/doc/api/html/fastsum__matlab_8c_source.html
+++ /dev/null
@@ -1,252 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum_matlab.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastsum_matlab.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="fastsum__matlab_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: fastsum_matlab.c 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span><span class="preprocessor"> #include <complex.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include "<a class="code" href="fastsum_8h.html" title="Header file for the fast NFFT-based summation algorithm.">fastsum.h</a>"</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include "<a class="code" href="kernels_8h.html" title="Header file with predefined kernels for the fast summation algorithm.">kernels.h</a>"</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> {</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordtype">int</span> j,k,t; </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">int</span> d; </div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">int</span> N; </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordtype">int</span> M; </div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordtype">int</span> n; </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">int</span> m; </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">int</span> p; </div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordtype">char</span> *s; </div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">double</span> _Complex (*kernel)(double , int , <span class="keyword">const</span> <span class="keywordtype">double</span> *); </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">double</span> c; </div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> my_fastsum_plan; </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keywordtype">double</span> _Complex *direct; </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> ticks t0, t1; </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">double</span> time; </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordtype">double</span> error=0.0; </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">double</span> eps_I; </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">double</span> eps_B; </div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> FILE *fid1, *fid2;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordtype">double</span> temp;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">if</span> (argc!=11)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> {</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> printf(<span class="stringliteral">"\nfastsum_test d N M n m p kernel c\n\n"</span>);</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> printf(<span class="stringliteral">" d dimension \n"</span>);</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> printf(<span class="stringliteral">" N number of source nodes \n"</span>);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> printf(<span class="stringliteral">" M number of target nodes \n"</span>);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> printf(<span class="stringliteral">" n expansion degree \n"</span>);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> printf(<span class="stringliteral">" m cut-off parameter \n"</span>);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> printf(<span class="stringliteral">" p degree of smoothness \n"</span>);</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> printf(<span class="stringliteral">" kernel kernel function (e.g., gaussian)\n"</span>);</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> printf(<span class="stringliteral">" c kernel parameter \n"</span>);</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> printf(<span class="stringliteral">" eps_I inner boundary \n"</span>);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> printf(<span class="stringliteral">" eps_B outer boundary \n\n"</span>);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> exit(-1);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> }</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> {</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> d=atoi(argv[1]);</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> N=atoi(argv[2]); c=1.0/pow((<span class="keywordtype">double</span>)N,1.0/(<span class="keywordtype">double</span>)d);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> M=atoi(argv[3]);</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> n=atoi(argv[4]);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> m=atoi(argv[5]);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> p=atoi(argv[6]);</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> s=argv[7];</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> c=atof(argv[8]);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> eps_I=atof(argv[9]);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> eps_B=atof(argv[10]);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"gaussian"</span>)==0)</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> kernel = gaussian;</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"multiquadric"</span>)==0)</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> kernel = multiquadric;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"inverse_multiquadric"</span>)==0)</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> kernel = inverse_multiquadric;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"logarithm"</span>)==0)</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> kernel = logarithm;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"thinplate_spline"</span>)==0)</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> kernel = thinplate_spline;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"one_over_square"</span>)==0)</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> kernel = one_over_square;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"one_over_modulus"</span>)==0)</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> kernel = one_over_modulus;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"one_over_x"</span>)==0)</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> kernel = one_over_x;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"inverse_multiquadric3"</span>)==0)</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> kernel = inverse_multiquadric3;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"sinc_kernel"</span>)==0)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> kernel = sinc_kernel;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"cosc"</span>)==0)</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> kernel = cosc;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"cot"</span>)==0)</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> kernel = kcot;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> {</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> s=<span class="stringliteral">"multiquadric"</span>;</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> kernel = multiquadric;</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> }</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> }</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> printf(<span class="stringliteral">"d=%d, N=%d, M=%d, n=%d, m=%d, p=%d, kernel=%s, c=%g, eps_I=%g, eps_B=%g \n"</span>,d,N,M,n,m,p,s,c,eps_I,eps_B);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <a class="code" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149" title="initialization of fastsum plan">fastsum_init_guru</a>(&my_fastsum_plan, d, N, M, kernel, &c, 0, n, m, p, eps_I, eps_B);</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="comment">/*fastsum_init_guru(&my_fastsum_plan, d, N, M, kernel, &c, EXACT_NEARFIELD, n, m, p);*/</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> fid1=fopen(<span class="stringliteral">"x.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> fid2=fopen(<span class="stringliteral">"alpha.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">for</span> (k=0; k<N; k++)</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> {</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> {</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> fscanf(fid1,<span class="stringliteral">"%le"</span>,&my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>[k*d+t]);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> }</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> fscanf(fid2,<span class="stringliteral">"%le"</span>,&temp); my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087" title="source coefficients">alpha</a>[k] = temp;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> fscanf(fid2,<span class="stringliteral">"%le"</span>,&temp); my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087" title="source coefficients">alpha</a>[k] += temp*_Complex_I;</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> }</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> fclose(fid1);</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> fclose(fid2);</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> fid1=fopen(<span class="stringliteral">"y.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> {</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> {</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> fscanf(fid1,<span class="stringliteral">"%le"</span>,&my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>[j*d+t]);</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> }</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> fclose(fid1);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> printf(<span class="stringliteral">"direct computation: "</span>); fflush(NULL);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> t0 = getticks();</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <a class="code" href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd" title="direct computation of sums">fastsum_exact</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> t1 = getticks();</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> time=nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> printf(<span class="stringliteral">"%fsec\n"</span>,time);</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> </div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> direct = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f" title="number of target knots">M_total</a>*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex)));</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">for</span> (j=0; j<my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f" title="number of target knots">M_total</a>; j++)</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> direct[j]=my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j];</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> </div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> printf(<span class="stringliteral">"pre-computation: "</span>); fflush(NULL);</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> t0 = getticks();</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <a class="code" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff" title="precomputation for fastsum">fastsum_precompute</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> t1 = getticks();</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> time=nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> printf(<span class="stringliteral">"%fsec\n"</span>,time);</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> printf(<span class="stringliteral">"fast computation: "</span>); fflush(NULL);</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> t0 = getticks();</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <a class="code" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8" title="fast NFFT-based summation">fastsum_trafo</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> t1 = getticks();</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> time=nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> printf(<span class="stringliteral">"%fsec\n"</span>,time);</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> error=0.0;</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">for</span> (j=0; j<my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f" title="number of target knots">M_total</a>; j++)</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> {</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keywordflow">if</span> (cabs(direct[j]-my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j])/cabs(direct[j])>error)</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> error=cabs(direct[j]-my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j])/cabs(direct[j]);</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> }</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> printf(<span class="stringliteral">"max relative error: %e\n"</span>,error);</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> fid1=fopen(<span class="stringliteral">"f.dat"</span>,<span class="stringliteral">"w+"</span>);</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> fid2=fopen(<span class="stringliteral">"f_direct.dat"</span>,<span class="stringliteral">"w+"</span>);</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordflow">if</span> (fid1==NULL)</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> {</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> printf(<span class="stringliteral">"Fehler!\n"</span>);</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> exit(-1);</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> }</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> {</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> temp=creal(my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j]);</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> fprintf(fid1,<span class="stringliteral">" % .16e"</span>,temp);</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> temp=cimag(my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j]);</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> fprintf(fid1,<span class="stringliteral">" % .16e\n"</span>,temp);</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> temp=creal(direct[j]);</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> fprintf(fid2,<span class="stringliteral">" % .16e"</span>,temp);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> temp=cimag(direct[j]);</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> fprintf(fid2,<span class="stringliteral">" % .16e\n"</span>,temp);</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> }</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> fclose(fid1);</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> fclose(fid2);</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> </div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <a class="code" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769" title="finalization of fastsum plan">fastsum_finalize</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> </div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> }</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum__test_8c.html b/doc/api/html/fastsum__test_8c.html
deleted file mode 100644
index 8fd6c93..0000000
--- a/doc/api/html/fastsum__test_8c.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum_test.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">fastsum_test.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Simple test program for the fast NFFT-based summation algorithm.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include <stdio.h></code><br/>
-<code>#include <string.h></code><br/>
-<code>#include <math.h></code><br/>
-<code>#include "<a class="el" href="fastsum_8h_source.html">fastsum.h</a>"</code><br/>
-<code>#include "<a class="el" href="kernels_8h_source.html">kernels.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-</div>
-<p><a href="fastsum__test_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Simple test program for the fast NFFT-based summation algorithm. </p>
-<dl class="section author"><dt>Author:</dt><dd>Markus Fenn </dd></dl>
-<dl class="section date"><dt>Date:</dt><dd>2006 </dd></dl>
-
-<p>Definition in file <a class="el" href="fastsum__test_8c_source.html">fastsum_test.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fastsum__test_8c_source.html b/doc/api/html/fastsum__test_8c_source.html
deleted file mode 100644
index 3d19918..0000000
--- a/doc/api/html/fastsum__test_8c_source.html
+++ /dev/null
@@ -1,300 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fastsum_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="fastsum__test_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: fastsum_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span><span class="preprocessor"> #include <complex.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor"></span><span class="preprocessor"> #include <omp.h></span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#include "<a class="code" href="fastsum_8h.html" title="Header file for the fast NFFT-based summation algorithm.">fastsum.h</a>"</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#include "<a class="code" href="kernels_8h.html" title="Header file with predefined kernels for the fast summation algorithm.">kernels.h</a>"</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> {</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordtype">int</span> j,k,t; </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">int</span> d; </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">int</span> N; </div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordtype">int</span> M; </div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">int</span> n; </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">int</span> m; </div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">int</span> p; </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keywordtype">char</span> *s; </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keywordtype">double</span> _Complex (*kernel)(double , int , <span class="keyword">const</span> <span class="keywordtype">double</span> *); </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">double</span> c; </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <a class="code" href="structfastsum__plan__.html" title="plan for fast summation algorithm">fastsum_plan</a> my_fastsum_plan; </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">double</span> _Complex *direct; </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> ticks t0, t1; </div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">double</span> time; </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordtype">double</span> error=0.0; </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordtype">double</span> eps_I; </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordtype">double</span> eps_B; </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">if</span> (argc!=11)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> printf(<span class="stringliteral">"\nfastsum_test d N M n m p kernel c eps_I eps_B\n\n"</span>);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> printf(<span class="stringliteral">" d dimension \n"</span>);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> printf(<span class="stringliteral">" N number of source nodes \n"</span>);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> printf(<span class="stringliteral">" M number of target nodes \n"</span>);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> printf(<span class="stringliteral">" n expansion degree \n"</span>);</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> printf(<span class="stringliteral">" m cut-off parameter \n"</span>);</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> printf(<span class="stringliteral">" p degree of smoothness \n"</span>);</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> printf(<span class="stringliteral">" kernel kernel function (e.g., gaussian)\n"</span>);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> printf(<span class="stringliteral">" c kernel parameter \n"</span>);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> printf(<span class="stringliteral">" eps_I inner boundary \n"</span>);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> printf(<span class="stringliteral">" eps_B outer boundary \n\n"</span>);</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> exit(-1);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> }</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> {</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> d=atoi(argv[1]);</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> N=atoi(argv[2]); c=1.0/pow((<span class="keywordtype">double</span>)N,1.0/(<span class="keywordtype">double</span>)d);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> M=atoi(argv[3]);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> n=atoi(argv[4]);</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> m=atoi(argv[5]);</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> p=atoi(argv[6]);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> s=argv[7];</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> c=atof(argv[8]);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> eps_I=atof(argv[9]);</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> eps_B=atof(argv[10]);</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"gaussian"</span>)==0)</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> kernel = gaussian;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"multiquadric"</span>)==0)</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> kernel = multiquadric;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"inverse_multiquadric"</span>)==0)</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> kernel = inverse_multiquadric;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"logarithm"</span>)==0)</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> kernel = logarithm;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"thinplate_spline"</span>)==0)</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> kernel = thinplate_spline;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"one_over_square"</span>)==0)</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> kernel = one_over_square;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"one_over_modulus"</span>)==0)</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> kernel = one_over_modulus;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"one_over_x"</span>)==0)</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> kernel = one_over_x;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"inverse_multiquadric3"</span>)==0)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> kernel = inverse_multiquadric3;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"sinc_kernel"</span>)==0)</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> kernel = sinc_kernel;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"cosc"</span>)==0)</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> kernel = cosc;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (strcmp(s,<span class="stringliteral">"cot"</span>)==0)</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> kernel = kcot;</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> {</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> s=<span class="stringliteral">"multiquadric"</span>;</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> kernel = multiquadric;</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> }</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> }</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> printf(<span class="stringliteral">"d=%d, N=%d, M=%d, n=%d, m=%d, p=%d, kernel=%s, c=%g, eps_I=%g, eps_B=%g \n"</span>,d,N,M,n,m,p,s,c,eps_I,eps_B);</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="preprocessor">#ifdef NF_KUB</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="preprocessor"></span> printf(<span class="stringliteral">"nearfield correction using piecewise cubic Lagrange interpolation\n"</span>);</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="preprocessor">#elif defined(NF_QUADR)</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="preprocessor"></span> printf(<span class="stringliteral">"nearfield correction using piecewise quadratic Lagrange interpolation\n"</span>);</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="preprocessor">#elif defined(NF_LIN)</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="preprocessor"></span> printf(<span class="stringliteral">"nearfield correction using piecewise linear Lagrange interpolation\n"</span>);</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor"> #pragma omp single</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> printf(<span class="stringliteral">"nthreads=%d\n"</span>, omp_get_max_threads());</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> }</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> fftw_init_threads();</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <a class="code" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149" title="initialization of fastsum plan">fastsum_init_guru</a>(&my_fastsum_plan, d, N, M, kernel, &c, 0, n, m, p, eps_I, eps_B);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="comment">//fastsum_init_guru(&my_fastsum_plan, d, N, M, kernel, &c, NEARFIELD_BOXES, n, m, p, eps_I, eps_B);</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">if</span> (my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa" title="flags precomp.">flags</a> & NEARFIELD_BOXES)</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> printf(<span class="stringliteral">"determination of nearfield candidates based on partitioning into boxes\n"</span>);</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> printf(<span class="stringliteral">"determination of nearfield candidates based on search tree\n"</span>);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> k = 0;</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">while</span> (k < N)</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> {</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordtype">double</span> r_max = 0.25 - my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46" title="outer boundary">eps_B</a>/2.0;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordtype">double</span> r2 = 0.0;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">for</span> (j=0; j<d; j++)</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>[k*d+j] = 2.0 * r_max * (<span class="keywordtype">double</span>)rand()/(double)RAND_MAX - r_max;</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">for</span> (j=0; j<d; j++)</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> r2 += my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>[k*d+j] * my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91" title="source knots in d-ball with radius 1/4-eps_b/2">x</a>[k*d+j];</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> </div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> if (r2 >= r_max * r_max)</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> </div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> k++;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> }</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> </div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">for</span> (k=0; k<N; k++)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> {</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="comment">/* double r=(0.25-my_fastsum_plan.eps_B/2.0)*pow((double)rand()/(double)RAND_MAX,1.0/d);</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="comment"> my_fastsum_plan.x[k*d+0] = r;</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="comment"> for (j=1; j<d; j++)</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="comment"> double phi=2.0*PI*(double)rand()/(double)RAND_MAX;</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="comment"> my_fastsum_plan.x[k*d+j] = r;</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="comment"> for (t=0; t<j; t++)</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="comment"> my_fastsum_plan.x[k*d+t] *= cos(phi);</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment"> }</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment"> my_fastsum_plan.x[k*d+j] *= sin(phi);</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment"> }</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment">*/</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087" title="source coefficients">alpha</a>[k] = (double)rand()/(double)RAND_MAX + _Complex_I*(<span class="keywordtype">double</span>)rand()/(double)RAND_MAX;</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> }</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> k = 0;</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">while</span> (k < M)</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> {</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordtype">double</span> r_max = 0.25 - my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46" title="outer boundary">eps_B</a>/2.0;</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="keywordtype">double</span> r2 = 0.0;</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="keywordflow">for</span> (j=0; j<d; j++)</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>[k*d+j] = 2.0 * r_max * (<span class="keywordtype">double</span>)rand()/(double)RAND_MAX - r_max;</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">for</span> (j=0; j<d; j++)</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> r2 += my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>[k*d+j] * my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51" title="target knots in d-ball with radius 1/4-eps_b/2">y</a>[k*d+j];</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> if (r2 >= r_max * r_max)</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> k++;</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> }</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="comment">/* for (k=0; k<M; k++)</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="comment"> double r=(0.25-my_fastsum_plan.eps_B/2.0)*pow((double)rand()/(double)RAND_MAX,1.0/d);</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="comment"> my_fastsum_plan.y[k*d+0] = r;</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="comment"> for (j=1; j<d; j++)</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="comment"> double phi=2.0*PI*(double)rand()/(double)RAND_MAX;</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="comment"> my_fastsum_plan.y[k*d+j] = r;</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="comment"> for (t=0; t<j; t++)</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="comment"> my_fastsum_plan.y[k*d+t] *= cos(phi);</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="comment"> }</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="comment"> my_fastsum_plan.y[k*d+j] *= sin(phi);</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="comment"> }</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="comment"> } */</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> </div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> printf(<span class="stringliteral">"direct computation: "</span>); fflush(NULL);</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> t0 = getticks();</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <a class="code" href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd" title="direct computation of sums">fastsum_exact</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> t1 = getticks();</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> time=nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> printf(<span class="stringliteral">"%fsec\n"</span>,time);</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> </div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> direct = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f" title="number of target knots">M_total</a>*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex)));</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">for</span> (j=0; j<my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f" title="number of target knots">M_total</a>; j++)</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> direct[j]=my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j];</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> </div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> printf(<span class="stringliteral">"pre-computation: "</span>); fflush(NULL);</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> t0 = getticks();</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <a class="code" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff" title="precomputation for fastsum">fastsum_precompute</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> t1 = getticks();</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> time=nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> printf(<span class="stringliteral">"%fsec\n"</span>,time);</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> </div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> printf(<span class="stringliteral">"fast computation: "</span>); fflush(NULL);</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> t0 = getticks();</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <a class="code" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8" title="fast NFFT-based summation">fastsum_trafo</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> t1 = getticks();</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> time=nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> printf(<span class="stringliteral">"%fsec\n"</span>,time);</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> </div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> error=0.0;</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="keywordflow">for</span> (j=0; j<my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f" title="number of target knots">M_total</a>; j++)</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> {</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="keywordflow">if</span> (cabs(direct[j]-my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j])/cabs(direct[j])>error)</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> error=cabs(direct[j]-my_fastsum_plan.<a class="code" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a" title="target evaluations">f</a>[j])/cabs(direct[j]);</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> }</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> printf(<span class="stringliteral">"max relative error: %e\n"</span>,error);</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <a class="code" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769" title="finalization of fastsum plan">fastsum_finalize</a>(&my_fastsum_plan);</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> }</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/files.html b/doc/api/html/files.html
deleted file mode 100644
index 680fb49..0000000
--- a/doc/api/html/files.html
+++ /dev/null
@@ -1,148 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - File List
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">File List</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock">Here is a list of all documented files with brief descriptions:</div><div class="directory">
-<table class="directory">
-<tr id="row_0_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="accuracy_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>accuracy.c</b></td><td class="desc"></td></tr>
-<tr id="row_1_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="include_2api_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>include/api.h</b></td><td class="desc"></td></tr>
-<tr id="row_2_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="kernel_2nfsft_2api_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>kernel/nfsft/api.h</b></td><td class="desc"></td></tr>
-<tr id="row_3_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="bessel__i0_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>bessel_i0.c</b></td><td class="desc"></td></tr>
-<tr id="row_4_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="config_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>config.h</b></td><td class="desc"></td></tr>
-<tr id="row_5_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="construct__data__2d_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>construct_data_2d.c</b></td><td class="desc"></td></tr>
-<tr id="row_6_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="construct__data__2d1d_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>construct_data_2d1d.c</b></td><td class="desc"></td></tr>
-<tr id="row_7_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="construct__data__3d_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>construct_data_3d.c</b></td><td class="desc"></td></tr>
-<tr id="row_8_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="construct__data__inh__2d1d_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>construct_data_inh_2d1d.c</b></td><td class="desc"></td></tr>
-<tr id="row_9_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="construct__data__inh__3d_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>construct_data_inh_3d.c</b></td><td class="desc"></td></tr>
-<tr id="row_10_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="cycle_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>cycle.h</b></td><td class="desc"></td></tr>
-<tr id="row_11_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="examples_2doxygen_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>examples/doxygen.c</b></td><td class="desc"></td></tr>
-<tr id="row_12_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="applications_2doxygen_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>applications/doxygen.c</b></td><td class="desc"></td></tr>
-<tr id="row_13_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="applications_2mri_2doxygen_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>applications/mri/doxygen.c</b></td><td class="desc"></td></tr>
-<tr id="row_14_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="examples_2solver_2doxygen_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>examples/solver/doxygen.h</b></td><td class="desc"></td></tr>
-<tr id="row_15_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="applications_2fastsumS2_2doxygen_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>applications/fastsumS2/doxygen.h</b></td><td class="desc"></td></tr>
-<tr id="row_16_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="applications_2iterS2_2doxygen_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>applications/iterS2/doxygen.h</b></td><td class="desc"></td></tr>
-<tr id="row_17_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="applications_2mri_2mri2d_2doxygen_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>applications/mri/mri2d/doxygen.h</b></td><td class="desc"></td></tr>
-<tr id="row_18_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="applications_2mri_2mri3d_2doxygen_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>applications/mri/mri3d/doxygen.h</b></td><td class="desc"></td></tr>
-<tr id="row_19_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="applications_2polarFFT_2doxygen_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>applications/polarFFT/doxygen.h</b></td><td class="desc"></td></tr>
-<tr id="row_20_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="applications_2quadratureS2_2doxygen_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>applications/quadratureS2/doxygen.h</b></td><td class="desc"></td></tr>
-<tr id="row_21_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="error_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>error.c</b></td><td class="desc"></td></tr>
-<tr id="row_22_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fastgauss_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>fastgauss.c</b></td><td class="desc"></td></tr>
-<tr id="row_23_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fastsum_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="fastsum_8c.html" target="_self">fastsum.c</a></td><td class="desc">Fast NFFT-based summation algorithm</td></tr>
-<tr id="row_24_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fastsum_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="fastsum_8h.html" target="_self">fastsum.h</a></td><td class="desc">Header file for the fast NFFT-based summation algorithm</td></tr>
-<tr id="row_25_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fastsum__benchomp_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>fastsum_benchomp.c</b></td><td class="desc"></td></tr>
-<tr id="row_26_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fastsum__benchomp__createdataset_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>fastsum_benchomp_createdataset.c</b></td><td class="desc"></td></tr>
-<tr id="row_27_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fastsum__benchomp__detail_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>fastsum_benchomp_detail.c</b></td><td class="desc"></td></tr>
-<tr id="row_28_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fastsum__matlab_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="fastsum__matlab_8c.html" target="_self">fastsum_matlab.c</a></td><td class="desc">Simple test program for the fast NFFT-based summation algorithm, called by fastsum.m</td></tr>
-<tr id="row_29_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fastsum__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="fastsum__test_8c.html" target="_self">fastsum_test.c</a></td><td class="desc">Simple test program for the fast NFFT-based summation algorithm</td></tr>
-<tr id="row_30_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fastsumS2_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>fastsumS2.c</b></td><td class="desc"></td></tr>
-<tr id="row_31_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="flags_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="flags_8c.html" target="_self">flags.c</a></td><td class="desc">Testing the nfft</td></tr>
-<tr id="row_32_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="float_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>float.c</b></td><td class="desc"></td></tr>
-<tr id="row_33_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fpt_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="fpt_8c.html" target="_self">fpt.c</a></td><td class="desc">Implementation file for the FPT module</td></tr>
-<tr id="row_34_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fpt_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>fpt.h</b></td><td class="desc"></td></tr>
-<tr id="row_35_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="glacier_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>glacier.c</b></td><td class="desc"></td></tr>
-<tr id="row_36_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="infft_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>infft.h</b></td><td class="desc"></td></tr>
-<tr id="row_37_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="int_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>int.c</b></td><td class="desc"></td></tr>
-<tr id="row_38_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="inverse__radon_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="inverse__radon_8c.html" target="_self">inverse_radon.c</a></td><td class="desc">NFFT-based discrete inverse Radon transform</td></tr>
-<tr id="row_39_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="iterS2_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>iterS2.c</b></td><td class="desc"></td></tr>
-<tr id="row_40_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="kernels_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="kernels_8c.html" target="_self">kernels.c</a></td><td class="desc">File with predefined kernels for the fast summation algorithm</td></tr>
-<tr id="row_41_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="kernels_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="kernels_8h.html" target="_self">kernels.h</a></td><td class="desc">Header file with predefined kernels for the fast summation algorithm</td></tr>
-<tr id="row_42_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="lambda_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>lambda.c</b></td><td class="desc"></td></tr>
-<tr id="row_43_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="legendre_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>legendre.c</b></td><td class="desc"></td></tr>
-<tr id="row_44_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="legendre_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>legendre.h</b></td><td class="desc"></td></tr>
-<tr id="row_45_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="linogram__fft__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="linogram__fft__test_8c.html" target="_self">linogram_fft_test.c</a></td><td class="desc">NFFT-based pseudo-polar FFT and inverse</td></tr>
-<tr id="row_46_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="malloc_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>malloc.c</b></td><td class="desc"></td></tr>
-<tr id="row_47_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="mpolar__fft__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="mpolar__fft__test_8c.html" target="_self">mpolar_fft_test.c</a></td><td class="desc">NFFT-based polar FFT and inverse on modified polar grid</td></tr>
-<tr id="row_48_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="mri_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>mri.c</b></td><td class="desc"></td></tr>
-<tr id="row_49_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="ndft__fast_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="ndft__fast_8c.html" target="_self">ndft_fast.c</a></td><td class="desc">Testing ndft, Horner-like ndft, and fully precomputed ndft</td></tr>
-<tr id="row_50_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfct_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfct.c</b></td><td class="desc"></td></tr>
-<tr id="row_51_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfft_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfft.c</b></td><td class="desc"></td></tr>
-<tr id="row_52_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfft3_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="nfft3_8h.html" target="_self">nfft3.h</a></td><td class="desc"></td></tr>
-<tr id="row_53_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfft3conf_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfft3conf.h</b></td><td class="desc"></td></tr>
-<tr id="row_54_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfft3util_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="nfft3util_8h.html" target="_self">nfft3util.h</a></td><td class="desc">Header file for utility functions used by the nfft3 library</td></tr>
-<tr id="row_55_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfft__benchomp_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfft_benchomp.c</b></td><td class="desc"></td></tr>
-<tr id="row_56_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfft__benchomp__createdataset_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfft_benchomp_createdataset.c</b></td><td class="desc"></td></tr>
-<tr id="row_57_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfft__benchomp__detail_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfft_benchomp_detail.c</b></td><td class="desc"></td></tr>
-<tr id="row_58_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfft__times_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfft_times.c</b></td><td class="desc"></td></tr>
-<tr id="row_59_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfsft_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="nfsft_8c.html" target="_self">nfsft.c</a></td><td class="desc">Implementation file for the NFSFT module</td></tr>
-<tr id="row_60_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfsft__benchomp_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfsft_benchomp.c</b></td><td class="desc"></td></tr>
-<tr id="row_61_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfsft__benchomp__createdataset_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfsft_benchomp_createdataset.c</b></td><td class="desc"></td></tr>
-<tr id="row_62_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfsft__benchomp__detail_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfsft_benchomp_detail.c</b></td><td class="desc"></td></tr>
-<tr id="row_63_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfsoft_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfsoft.c</b></td><td class="desc"></td></tr>
-<tr id="row_64_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfst_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfst.c</b></td><td class="desc"></td></tr>
-<tr id="row_65_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nnfft_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nnfft.c</b></td><td class="desc"></td></tr>
-<tr id="row_66_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nsfft_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nsfft.c</b></td><td class="desc"></td></tr>
-<tr id="row_67_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nsfft__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nsfft_test.c</b></td><td class="desc"></td></tr>
-<tr id="row_68_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="polar__fft__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="polar__fft__test_8c.html" target="_self">polar_fft_test.c</a></td><td class="desc">NFFT-based polar FFT and inverse</td></tr>
-<tr id="row_69_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="quadratureS2_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>quadratureS2.c</b></td><td class="desc"></td></tr>
-<tr id="row_70_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="radon_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="radon_8c.html" target="_self">radon.c</a></td><td class="desc">NFFT-based discrete Radon transform</td></tr>
-<tr id="row_71_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="reconstruct__data__2d_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>reconstruct_data_2d.c</b></td><td class="desc"></td></tr>
-<tr id="row_72_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="reconstruct__data__2d1d_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>reconstruct_data_2d1d.c</b></td><td class="desc"></td></tr>
-<tr id="row_73_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="reconstruct__data__3d_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>reconstruct_data_3d.c</b></td><td class="desc"></td></tr>
-<tr id="row_74_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="mri2d_2reconstruct__data__gridding_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>mri2d/reconstruct_data_gridding.c</b></td><td class="desc"></td></tr>
-<tr id="row_75_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="mri3d_2reconstruct__data__gridding_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>mri3d/reconstruct_data_gridding.c</b></td><td class="desc"></td></tr>
-<tr id="row_76_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="reconstruct__data__inh__2d1d_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>reconstruct_data_inh_2d1d.c</b></td><td class="desc"></td></tr>
-<tr id="row_77_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="reconstruct__data__inh__3d_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>reconstruct_data_inh_3d.c</b></td><td class="desc"></td></tr>
-<tr id="row_78_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="reconstruct__data__inh__nnfft_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>reconstruct_data_inh_nnfft.c</b></td><td class="desc"></td></tr>
-<tr id="row_79_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="fpt_2simple__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>fpt/simple_test.c</b></td><td class="desc"></td></tr>
-<tr id="row_80_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfct_2simple__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfct/simple_test.c</b></td><td class="desc"></td></tr>
-<tr id="row_81_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfft_2simple__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfft/simple_test.c</b></td><td class="desc"></td></tr>
-<tr id="row_82_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfsft_2simple__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfsft/simple_test.c</b></td><td class="desc"></td></tr>
-<tr id="row_83_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfsoft_2simple__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfsoft/simple_test.c</b></td><td class="desc"></td></tr>
-<tr id="row_84_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfst_2simple__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfst/simple_test.c</b></td><td class="desc"></td></tr>
-<tr id="row_85_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nnfft_2simple__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nnfft/simple_test.c</b></td><td class="desc"></td></tr>
-<tr id="row_86_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nsfft_2simple__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nsfft/simple_test.c</b></td><td class="desc"></td></tr>
-<tr id="row_87_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="solver_2simple__test_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>solver/simple_test.c</b></td><td class="desc"></td></tr>
-<tr id="row_88_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfft_2simple__test__threads_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfft/simple_test_threads.c</b></td><td class="desc"></td></tr>
-<tr id="row_89_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="nfsft_2simple__test__threads_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>nfsft/simple_test_threads.c</b></td><td class="desc"></td></tr>
-<tr id="row_90_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="sinc_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>sinc.c</b></td><td class="desc"></td></tr>
-<tr id="row_91_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="solver_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="solver_8c.html" target="_self">solver.c</a></td><td class="desc">Implementation file for the solver module</td></tr>
-<tr id="row_92_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="solver__adjoint_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="solver__adjoint_8h.html" target="_self">solver_adjoint.h</a></td><td class="desc">Header file for adjoint solver</td></tr>
-<tr id="row_93_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="taylor__nfft_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="taylor__nfft_8c.html" target="_self">taylor_nfft.c</a></td><td class="desc">Testing the nfft againt a Taylor expansion based version</td></tr>
-<tr id="row_94_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="ticks_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>ticks.h</b></td><td class="desc"></td></tr>
-<tr id="row_95_"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="util_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>util.c</b></td><td class="desc"></td></tr>
-<tr id="row_96_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a href="wigner_8c_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><b>wigner.c</b></td><td class="desc"></td></tr>
-<tr id="row_97_"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a href="wigner_8h_source.html"><img src="ftv2doc.png" alt="*" width="24" height="22" /></a><a class="el" href="wigner_8h.html" target="_self">wigner.h</a></td><td class="desc">Header file for functions related to Wigner-d/D functions</td></tr>
-</table>
-</div><!-- directory -->
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/flags_8c.html b/doc/api/html/flags_8c.html
deleted file mode 100644
index ad67bac..0000000
--- a/doc/api/html/flags_8c.html
+++ /dev/null
@@ -1,93 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - flags.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> |
-<a href="#var-members">Variables</a> </div>
- <div class="headertitle">
-<div class="title">flags.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Testing the nfft.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <stdio.h></code><br/>
-<code>#include <math.h></code><br/>
-<code>#include <string.h></code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-</div>
-<p><a href="flags_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ae9b8a68139d23c0923435caccc456d97"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae9b8a68139d23c0923435caccc456d97"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>flags_cp</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *dst, <a class="el" href="structnfft__plan.html">nfft_plan</a> *src)</td></tr>
-<tr class="memitem:a8a97c72294cf18ba58a3bef876afa38c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8a97c72294cf18ba58a3bef876afa38c"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>time_accuracy</b> (int d, int N, int M, int n, int m, unsigned test_ndft, unsigned test_pre_full_psi)</td></tr>
-<tr class="memitem:a550dfff6dd252731bf204932e537658e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a550dfff6dd252731bf204932e537658e"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>accuracy_pre_lin_psi</b> (int d, int N, int M, int n, int m, int K)</td></tr>
-<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="var-members"></a>
-Variables</h2></td></tr>
-<tr class="memitem:a5d625f0503d2fb7e7a4a2fcb18b80801"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d625f0503d2fb7e7a4a2fcb18b80801"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><b>test_fg</b> = 0</td></tr>
-<tr class="memitem:a923a2c2945ee7b6a8358d4eb5eb46749"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a923a2c2945ee7b6a8358d4eb5eb46749"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><b>test_fftw</b> = 0</td></tr>
-<tr class="memitem:a780207296bf31c1ca10a59fb1990a52d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a780207296bf31c1ca10a59fb1990a52d"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><b>test</b> = 0</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Testing the nfft. </p>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis</dd></dl>
-<p>References: Time and Memory Requirements of the Nonequispaced FFT </p>
-
-<p>Definition in file <a class="el" href="flags_8c_source.html">flags.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/flags_8c_source.html b/doc/api/html/flags_8c_source.html
deleted file mode 100644
index feb0f12..0000000
--- a/doc/api/html/flags_8c_source.html
+++ /dev/null
@@ -1,377 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - flags.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">flags.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="flags_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: flags.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor">#ifdef GAUSSIAN</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor"></span> <span class="keywordtype">unsigned</span> test_fg=1;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor"></span> <span class="keywordtype">unsigned</span> test_fg=0;</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor">#ifdef MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor"></span> <span class="keywordtype">unsigned</span> test_fftw=1;</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor"></span> <span class="keywordtype">unsigned</span> test_fftw=0;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor"></span> <span class="keywordtype">unsigned</span> test=1;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor"></span> <span class="keywordtype">unsigned</span> test=0;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keyword">static</span> <span class="keywordtype">void</span> flags_cp(<a class="code" href="structnfft__plan.html">nfft_plan</a> *dst, <a class="code" href="structnfft__plan.html">nfft_plan</a> *src)</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> {</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> dst-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>=src-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> dst-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=src-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> dst-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>=src-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> dst-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>=src-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> dst-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>=src-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> dst->my_fftw_plan1=src->my_fftw_plan1;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> dst->my_fftw_plan2=src->my_fftw_plan2;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> }</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keyword">static</span> <span class="keywordtype">void</span> time_accuracy(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> test_ndft,</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordtype">unsigned</span> test_pre_full_psi)</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> {</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">int</span> r, NN[d], nn[d];</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordtype">double</span> t_ndft, t, e;</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordtype">double</span> _Complex *swapndft = NULL;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> ticks t0, t1;</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p_pre_phi_hut;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p_fg_psi;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p_pre_lin_psi;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p_pre_fg_psi;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p_pre_psi;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p_pre_full_psi;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> printf(<span class="stringliteral">"%d\t%d\t"</span>, d, N);</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">for</span>(r=0; r<d; r++)</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> {</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> NN[r]=N;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> nn[r]=n;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> }</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> swapndft=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> nfft_init_guru(&p, d, NN, M, nn, m,</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> MALLOC_X| MALLOC_F_HAT| MALLOC_F|</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka [...]
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> nfft_init_guru(&p_pre_phi_hut, d, NN, M, nn, m, PRE_PHI_HUT,0);</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> flags_cp(&p_pre_phi_hut, &p);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> nfft_precompute_one_psi(&p_pre_phi_hut);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">if</span>(test_fg)</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> {</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> nfft_init_guru(&p_fg_psi, d, NN, M, nn, m, FG_PSI,0);</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> flags_cp(&p_fg_psi, &p);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> nfft_precompute_one_psi(&p_fg_psi);</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> }</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> nfft_init_guru(&p_pre_lin_psi, d, NN, M, nn, m, PRE_LIN_PSI,0);</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> flags_cp(&p_pre_lin_psi, &p);</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> nfft_precompute_one_psi(&p_pre_lin_psi);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">if</span>(test_fg)</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> {</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> nfft_init_guru(&p_pre_fg_psi, d, NN, M, nn, m, PRE_FG_PSI,0);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> flags_cp(&p_pre_fg_psi, &p);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> nfft_precompute_one_psi(&p_pre_fg_psi);</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> }</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> nfft_init_guru(&p_pre_psi, d, NN, M, nn, m, PRE_PSI,0);</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> flags_cp(&p_pre_psi, &p);</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> nfft_precompute_one_psi(&p_pre_psi);</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">if</span>(test_pre_full_psi)</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> {</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> nfft_init_guru(&p_pre_full_psi, d, NN, M, nn, m, PRE_FULL_PSI,0);</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> flags_cp(&p_pre_full_psi, &p);</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> nfft_precompute_one_psi(&p_pre_full_psi);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> }</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d2 [...]
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> {</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> t_ndft=0;</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> r=0;</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="keywordflow">while</span>(t_ndft<0.01)</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> {</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> r++;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> t0 = getticks();</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> nfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> t1 = getticks();</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> t_ndft+=t;</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> }</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> t_ndft/=r;</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> }</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> t_ndft=nan(<span class="stringliteral">""</span>);</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> </div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p_pre_phi_hut);</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">if</span>(test_fg)</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p_fg_psi);</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> p_fg_psi.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2]=nan(<span class="stringliteral">""</span>);</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p_pre_lin_psi);</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="keywordflow">if</span>(test_fg)</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p_pre_fg_psi);</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> p_pre_fg_psi.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2]=nan(<span class="stringliteral">""</span>);</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p_pre_psi);</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="keywordflow">if</span>(test_pre_full_psi)</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p_pre_full_psi);</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> p_pre_full_psi.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2]=nan(<span class="stringliteral">""</span>);</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> </div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">if</span>(test_fftw==0)</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> p.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1]=nan(<span class="stringliteral">""</span>);</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> e=X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> e=nan(<span class="stringliteral">""</span>);</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> </div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> printf(<span class="stringliteral">"%.2e\t%d\t%.2e\t%.2e\t%.2e\t%.2e\t%.2e\t%.2e\t%.2e\t%.2e\t%.2e\t%.2e\n"</span>,</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> t_ndft,</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> m,</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> e,</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> p.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0],</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> p_pre_phi_hut.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0],</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> p.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1],</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> p.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2],</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> p_fg_psi.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2],</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> p_pre_lin_psi.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2],</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> p_pre_fg_psi.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2],</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> p_pre_psi.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2],</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> p_pre_full_psi.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2]);</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> fflush(stdout);</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="keywordflow">if</span>(test_pre_full_psi)</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> nfft_finalize(&p_pre_full_psi);</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> nfft_finalize(&p_pre_psi);</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="keywordflow">if</span>(test_fg)</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> nfft_finalize(&p_pre_fg_psi);</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> nfft_finalize(&p_pre_lin_psi);</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="keywordflow">if</span>(test_fg)</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> nfft_finalize(&p_fg_psi);</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> nfft_finalize(&p_pre_phi_hut);</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> </div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swapndft);</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> }</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> </div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="keyword">static</span> <span class="keywordtype">void</span> accuracy_pre_lin_psi(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> n, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> K)</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> {</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="keywordtype">int</span> r, NN[d], nn[d];</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="keywordtype">double</span> e;</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="keywordtype">double</span> _Complex *swapndft;</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> </div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> </div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="keywordflow">for</span>(r=0; r<d; r++)</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> {</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> NN[r]=N;</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> nn[r]=n;</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> }</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> swapndft=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> </div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> nfft_init_guru(&p, d, NN, M, nn, m,</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> MALLOC_X| MALLOC_F_HAT| MALLOC_F|</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> PRE_PHI_HUT| PRE_LIN_PSI|</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> </div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(p.<a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>);</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> p.<a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>=K;</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> p.<a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>=(<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((p.<a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equisp [...]
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> </div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka [...]
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> </div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d2 [...]
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> </div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> nfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> </div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> e=X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> </div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="comment">// printf("%d\t%d\t%d\t%d\t%.2e\n",d,N,m,K,e);</span></div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> printf(<span class="stringliteral">"$%.1e$&\t"</span>,e);</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> </div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> fflush(stdout);</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swapndft);</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> }</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> </div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> {</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="keywordtype">int</span> l,m,d,trial,N;</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> </div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="keywordflow">if</span>(argc<=2)</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> {</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> fprintf(stderr,<span class="stringliteral">"flags type first last trials d m\n"</span>);</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> }</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> </div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">if</span>((test==0)&&(atoi(argv[1])<2))</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> {</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> fprintf(stderr,<span class="stringliteral">"MEASURE_TIME in nfft3util.h not set\n"</span>);</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> }</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> </div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> fprintf(stderr,<span class="stringliteral">"Testing different precomputation schemes for the nfft.\n"</span>);</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> fprintf(stderr,<span class="stringliteral">"Columns: d, N=M, t_ndft, e_nfft, t_D, t_pre_phi_hut, "</span>);</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> fprintf(stderr,<span class="stringliteral">"t_fftw, t_B, t_fg_psi, t_pre_lin_psi, t_pre_fg_psi, "</span>);</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> fprintf(stderr,<span class="stringliteral">"t_pre_psi, t_pre_full_psi\n\n"</span>);</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> d=atoi(argv[5]);</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> m=atoi(argv[6]);</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> </div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="comment">/* time vs. N=M */</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="keywordflow">if</span>(atoi(argv[1])==0)</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="keywordflow">for</span>(l=atoi(argv[2]); l<=atoi(argv[3]); l++)</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="keywordflow">for</span>(trial=0; trial<atoi(argv[4]); trial++)</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> {</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="keywordflow">if</span>(l<=20)</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> time_accuracy(d, (1U<< l), (1U<< (d*l)), (1U<< (l+1)), m, 0, 0);</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> time_accuracy(d, (1U<< l), (1U<< (d*l)), (1U<< (l+1)), m, 0, 0);</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> }</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> </div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> d=atoi(argv[5]);</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> N=atoi(argv[6]);</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="comment">/* accuracy vs. time */</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="keywordflow">if</span>(atoi(argv[1])==1)</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="keywordflow">for</span>(m=atoi(argv[2]); m<=atoi(argv[3]); m++)</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="keywordflow">for</span>(trial=0; trial<atoi(argv[4]); trial++)</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> time_accuracy(d, N, (<span class="keywordtype">int</span>)pow(N,d), 2*N, m, 1, 1);</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> d=atoi(argv[5]);</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> N=atoi(argv[6]);</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> m=atoi(argv[7]);</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> </div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="comment">/* accuracy vs. K for linear interpolation, assumes (m+1)|K */</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="keywordflow">if</span>(atoi(argv[1])==2)</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> {</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> printf(<span class="stringliteral">"$\\log_2(K/(m+1))$&\t"</span>);</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="keywordflow">for</span>(l=atoi(argv[2]); l<atoi(argv[3]); l++)</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> printf(<span class="stringliteral">"$%d$&\t"</span>,l);</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> </div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> printf(<span class="stringliteral">"$%d$\\\\\n"</span>,atoi(argv[3]));</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> </div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> printf(<span class="stringliteral">"$\\tilde E_2$&\t"</span>);</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="keywordflow">for</span>(l=atoi(argv[2]); l<=atoi(argv[3]); l++)</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> accuracy_pre_lin_psi(d, N, (<span class="keywordtype">int</span>)pow(N,d), 2*N, m, (m+1)*(1U<< l));</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> </div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> }</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> </div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/float_8c_source.html b/doc/api/html/float_8c_source.html
deleted file mode 100644
index 132eab5..0000000
--- a/doc/api/html/float_8c_source.html
+++ /dev/null
@@ -1,140 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - float.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html">util</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">float.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: util.c 3483 2010-04-23 19:02:34Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> R X(float_property)(<span class="keyword">const</span> float_property p)</div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> {</div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="keyword">const</span> R base = FLT_RADIX;</div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="keyword">const</span> R eps = EPSILON;</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="keyword">const</span> R t = MANT_DIG;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="keyword">const</span> R emin = MIN_EXP;</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">const</span> R emax = MAX_EXP;</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">const</span> R prec = eps * base;</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="keyword">static</span> R rmin = K(1.0);</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keyword">static</span> R rmax = K(1.0);</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keyword">const</span> R rnd = FLTROUND;</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">static</span> R sfmin = K(-1.0);</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keyword">static</span> <span class="keywordtype">short</span> first = TRUE;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">if</span> (first)</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> {</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">/* Compute rmin */</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> {</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keyword">const</span> INT n = 1 - MIN_EXP;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> INT i;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">for</span> (i = 0; i < n; i++)</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> rmin /= base;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> }</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment">/* Compute rmax */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> {</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> INT i;</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> rmax -= eps;</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">for</span> (i = 0; i < emax; i++)</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> rmax *= base;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> }</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment">/* Compute sfmin */</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> {</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> R small = K(1.0) / rmax;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> sfmin = rmin;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">if</span> (small >= sfmin)</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> sfmin = small * (eps + K(1.0));</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> }</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> first = FALSE;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> }</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">if</span> (p == NFFT_EPSILON)</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">return</span> eps;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p == NFFT_SAFE_MIN)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">return</span> sfmin;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p == NFFT_BASE)</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">return</span> base;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p == NFFT_PRECISION)</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">return</span> prec;</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p == NFFT_MANT_DIG)</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">return</span> t;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p == NFFT_FLTROUND)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">return</span> rnd;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p == NFFT_E_MIN)</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">return</span> emin;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p == NFFT_R_MIN)</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">return</span> rmin;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p == NFFT_E_MAX)</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">return</span> emax;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (p == NFFT_R_MAX)</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">return</span> rmax;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> CK(0 <span class="comment">/* cannot happen */</span>);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">return</span> K(-1.0);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> } <span class="comment">/* dlamch_ */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/form_0.png b/doc/api/html/form_0.png
deleted file mode 100644
index f06b1e7..0000000
Binary files a/doc/api/html/form_0.png and /dev/null differ
diff --git a/doc/api/html/form_1.png b/doc/api/html/form_1.png
deleted file mode 100644
index 7258515..0000000
Binary files a/doc/api/html/form_1.png and /dev/null differ
diff --git a/doc/api/html/form_10.png b/doc/api/html/form_10.png
deleted file mode 100644
index e2a158f..0000000
Binary files a/doc/api/html/form_10.png and /dev/null differ
diff --git a/doc/api/html/form_100.png b/doc/api/html/form_100.png
deleted file mode 100644
index 3b75231..0000000
Binary files a/doc/api/html/form_100.png and /dev/null differ
diff --git a/doc/api/html/form_101.png b/doc/api/html/form_101.png
deleted file mode 100644
index 438264f..0000000
Binary files a/doc/api/html/form_101.png and /dev/null differ
diff --git a/doc/api/html/form_102.png b/doc/api/html/form_102.png
deleted file mode 100644
index 5e0a536..0000000
Binary files a/doc/api/html/form_102.png and /dev/null differ
diff --git a/doc/api/html/form_103.png b/doc/api/html/form_103.png
deleted file mode 100644
index 996f73a..0000000
Binary files a/doc/api/html/form_103.png and /dev/null differ
diff --git a/doc/api/html/form_104.png b/doc/api/html/form_104.png
deleted file mode 100644
index 20ee68c..0000000
Binary files a/doc/api/html/form_104.png and /dev/null differ
diff --git a/doc/api/html/form_105.png b/doc/api/html/form_105.png
deleted file mode 100644
index 519da32..0000000
Binary files a/doc/api/html/form_105.png and /dev/null differ
diff --git a/doc/api/html/form_106.png b/doc/api/html/form_106.png
deleted file mode 100644
index a11640d..0000000
Binary files a/doc/api/html/form_106.png and /dev/null differ
diff --git a/doc/api/html/form_107.png b/doc/api/html/form_107.png
deleted file mode 100644
index b259813..0000000
Binary files a/doc/api/html/form_107.png and /dev/null differ
diff --git a/doc/api/html/form_108.png b/doc/api/html/form_108.png
deleted file mode 100644
index d7b488b..0000000
Binary files a/doc/api/html/form_108.png and /dev/null differ
diff --git a/doc/api/html/form_109.png b/doc/api/html/form_109.png
deleted file mode 100644
index f85e586..0000000
Binary files a/doc/api/html/form_109.png and /dev/null differ
diff --git a/doc/api/html/form_11.png b/doc/api/html/form_11.png
deleted file mode 100644
index 8d74f29..0000000
Binary files a/doc/api/html/form_11.png and /dev/null differ
diff --git a/doc/api/html/form_110.png b/doc/api/html/form_110.png
deleted file mode 100644
index d58b824..0000000
Binary files a/doc/api/html/form_110.png and /dev/null differ
diff --git a/doc/api/html/form_111.png b/doc/api/html/form_111.png
deleted file mode 100644
index 4742c70..0000000
Binary files a/doc/api/html/form_111.png and /dev/null differ
diff --git a/doc/api/html/form_112.png b/doc/api/html/form_112.png
deleted file mode 100644
index 97fe23b..0000000
Binary files a/doc/api/html/form_112.png and /dev/null differ
diff --git a/doc/api/html/form_113.png b/doc/api/html/form_113.png
deleted file mode 100644
index 9be9b6c..0000000
Binary files a/doc/api/html/form_113.png and /dev/null differ
diff --git a/doc/api/html/form_114.png b/doc/api/html/form_114.png
deleted file mode 100644
index 3667f26..0000000
Binary files a/doc/api/html/form_114.png and /dev/null differ
diff --git a/doc/api/html/form_115.png b/doc/api/html/form_115.png
deleted file mode 100644
index 35809eb..0000000
Binary files a/doc/api/html/form_115.png and /dev/null differ
diff --git a/doc/api/html/form_116.png b/doc/api/html/form_116.png
deleted file mode 100644
index 1c65677..0000000
Binary files a/doc/api/html/form_116.png and /dev/null differ
diff --git a/doc/api/html/form_117.png b/doc/api/html/form_117.png
deleted file mode 100644
index cca2cb8..0000000
Binary files a/doc/api/html/form_117.png and /dev/null differ
diff --git a/doc/api/html/form_118.png b/doc/api/html/form_118.png
deleted file mode 100644
index 67b4970..0000000
Binary files a/doc/api/html/form_118.png and /dev/null differ
diff --git a/doc/api/html/form_119.png b/doc/api/html/form_119.png
deleted file mode 100644
index cc84aa1..0000000
Binary files a/doc/api/html/form_119.png and /dev/null differ
diff --git a/doc/api/html/form_12.png b/doc/api/html/form_12.png
deleted file mode 100644
index 2f2d622..0000000
Binary files a/doc/api/html/form_12.png and /dev/null differ
diff --git a/doc/api/html/form_120.png b/doc/api/html/form_120.png
deleted file mode 100644
index 61172b7..0000000
Binary files a/doc/api/html/form_120.png and /dev/null differ
diff --git a/doc/api/html/form_121.png b/doc/api/html/form_121.png
deleted file mode 100644
index bfcd3dd..0000000
Binary files a/doc/api/html/form_121.png and /dev/null differ
diff --git a/doc/api/html/form_122.png b/doc/api/html/form_122.png
deleted file mode 100644
index ec5f7c9..0000000
Binary files a/doc/api/html/form_122.png and /dev/null differ
diff --git a/doc/api/html/form_123.png b/doc/api/html/form_123.png
deleted file mode 100644
index 2159692..0000000
Binary files a/doc/api/html/form_123.png and /dev/null differ
diff --git a/doc/api/html/form_124.png b/doc/api/html/form_124.png
deleted file mode 100644
index 95670aa..0000000
Binary files a/doc/api/html/form_124.png and /dev/null differ
diff --git a/doc/api/html/form_125.png b/doc/api/html/form_125.png
deleted file mode 100644
index ca4e040..0000000
Binary files a/doc/api/html/form_125.png and /dev/null differ
diff --git a/doc/api/html/form_126.png b/doc/api/html/form_126.png
deleted file mode 100644
index 52b5e8b..0000000
Binary files a/doc/api/html/form_126.png and /dev/null differ
diff --git a/doc/api/html/form_127.png b/doc/api/html/form_127.png
deleted file mode 100644
index 8fd0afc..0000000
Binary files a/doc/api/html/form_127.png and /dev/null differ
diff --git a/doc/api/html/form_128.png b/doc/api/html/form_128.png
deleted file mode 100644
index 632378b..0000000
Binary files a/doc/api/html/form_128.png and /dev/null differ
diff --git a/doc/api/html/form_129.png b/doc/api/html/form_129.png
deleted file mode 100644
index b13b40a..0000000
Binary files a/doc/api/html/form_129.png and /dev/null differ
diff --git a/doc/api/html/form_13.png b/doc/api/html/form_13.png
deleted file mode 100644
index b2c64c3..0000000
Binary files a/doc/api/html/form_13.png and /dev/null differ
diff --git a/doc/api/html/form_130.png b/doc/api/html/form_130.png
deleted file mode 100644
index 4e59b05..0000000
Binary files a/doc/api/html/form_130.png and /dev/null differ
diff --git a/doc/api/html/form_131.png b/doc/api/html/form_131.png
deleted file mode 100644
index eb402b0..0000000
Binary files a/doc/api/html/form_131.png and /dev/null differ
diff --git a/doc/api/html/form_132.png b/doc/api/html/form_132.png
deleted file mode 100644
index 437ca9d..0000000
Binary files a/doc/api/html/form_132.png and /dev/null differ
diff --git a/doc/api/html/form_133.png b/doc/api/html/form_133.png
deleted file mode 100644
index 4cbf872..0000000
Binary files a/doc/api/html/form_133.png and /dev/null differ
diff --git a/doc/api/html/form_134.png b/doc/api/html/form_134.png
deleted file mode 100644
index 8b80a7f..0000000
Binary files a/doc/api/html/form_134.png and /dev/null differ
diff --git a/doc/api/html/form_135.png b/doc/api/html/form_135.png
deleted file mode 100644
index 774e523..0000000
Binary files a/doc/api/html/form_135.png and /dev/null differ
diff --git a/doc/api/html/form_136.png b/doc/api/html/form_136.png
deleted file mode 100644
index b56c675..0000000
Binary files a/doc/api/html/form_136.png and /dev/null differ
diff --git a/doc/api/html/form_137.png b/doc/api/html/form_137.png
deleted file mode 100644
index 8fa4de3..0000000
Binary files a/doc/api/html/form_137.png and /dev/null differ
diff --git a/doc/api/html/form_138.png b/doc/api/html/form_138.png
deleted file mode 100644
index fa9b2fc..0000000
Binary files a/doc/api/html/form_138.png and /dev/null differ
diff --git a/doc/api/html/form_139.png b/doc/api/html/form_139.png
deleted file mode 100644
index e343fef..0000000
Binary files a/doc/api/html/form_139.png and /dev/null differ
diff --git a/doc/api/html/form_14.png b/doc/api/html/form_14.png
deleted file mode 100644
index 289ae1b..0000000
Binary files a/doc/api/html/form_14.png and /dev/null differ
diff --git a/doc/api/html/form_15.png b/doc/api/html/form_15.png
deleted file mode 100644
index 8943508..0000000
Binary files a/doc/api/html/form_15.png and /dev/null differ
diff --git a/doc/api/html/form_16.png b/doc/api/html/form_16.png
deleted file mode 100644
index 13842bb..0000000
Binary files a/doc/api/html/form_16.png and /dev/null differ
diff --git a/doc/api/html/form_17.png b/doc/api/html/form_17.png
deleted file mode 100644
index 25ddedf..0000000
Binary files a/doc/api/html/form_17.png and /dev/null differ
diff --git a/doc/api/html/form_18.png b/doc/api/html/form_18.png
deleted file mode 100644
index 87da112..0000000
Binary files a/doc/api/html/form_18.png and /dev/null differ
diff --git a/doc/api/html/form_19.png b/doc/api/html/form_19.png
deleted file mode 100644
index c564494..0000000
Binary files a/doc/api/html/form_19.png and /dev/null differ
diff --git a/doc/api/html/form_2.png b/doc/api/html/form_2.png
deleted file mode 100644
index a6bbbc7..0000000
Binary files a/doc/api/html/form_2.png and /dev/null differ
diff --git a/doc/api/html/form_20.png b/doc/api/html/form_20.png
deleted file mode 100644
index 5107265..0000000
Binary files a/doc/api/html/form_20.png and /dev/null differ
diff --git a/doc/api/html/form_21.png b/doc/api/html/form_21.png
deleted file mode 100644
index fe59754..0000000
Binary files a/doc/api/html/form_21.png and /dev/null differ
diff --git a/doc/api/html/form_22.png b/doc/api/html/form_22.png
deleted file mode 100644
index bceb5f9..0000000
Binary files a/doc/api/html/form_22.png and /dev/null differ
diff --git a/doc/api/html/form_23.png b/doc/api/html/form_23.png
deleted file mode 100644
index d3b0a60..0000000
Binary files a/doc/api/html/form_23.png and /dev/null differ
diff --git a/doc/api/html/form_24.png b/doc/api/html/form_24.png
deleted file mode 100644
index c999cbe..0000000
Binary files a/doc/api/html/form_24.png and /dev/null differ
diff --git a/doc/api/html/form_25.png b/doc/api/html/form_25.png
deleted file mode 100644
index 1e27259..0000000
Binary files a/doc/api/html/form_25.png and /dev/null differ
diff --git a/doc/api/html/form_26.png b/doc/api/html/form_26.png
deleted file mode 100644
index ce4366d..0000000
Binary files a/doc/api/html/form_26.png and /dev/null differ
diff --git a/doc/api/html/form_27.png b/doc/api/html/form_27.png
deleted file mode 100644
index f4928c6..0000000
Binary files a/doc/api/html/form_27.png and /dev/null differ
diff --git a/doc/api/html/form_28.png b/doc/api/html/form_28.png
deleted file mode 100644
index e0a1be3..0000000
Binary files a/doc/api/html/form_28.png and /dev/null differ
diff --git a/doc/api/html/form_29.png b/doc/api/html/form_29.png
deleted file mode 100644
index ff81525..0000000
Binary files a/doc/api/html/form_29.png and /dev/null differ
diff --git a/doc/api/html/form_3.png b/doc/api/html/form_3.png
deleted file mode 100644
index b0e94c7..0000000
Binary files a/doc/api/html/form_3.png and /dev/null differ
diff --git a/doc/api/html/form_30.png b/doc/api/html/form_30.png
deleted file mode 100644
index 2fbfaf8..0000000
Binary files a/doc/api/html/form_30.png and /dev/null differ
diff --git a/doc/api/html/form_31.png b/doc/api/html/form_31.png
deleted file mode 100644
index 95283dc..0000000
Binary files a/doc/api/html/form_31.png and /dev/null differ
diff --git a/doc/api/html/form_32.png b/doc/api/html/form_32.png
deleted file mode 100644
index a1b8abc..0000000
Binary files a/doc/api/html/form_32.png and /dev/null differ
diff --git a/doc/api/html/form_33.png b/doc/api/html/form_33.png
deleted file mode 100644
index 570f79b..0000000
Binary files a/doc/api/html/form_33.png and /dev/null differ
diff --git a/doc/api/html/form_34.png b/doc/api/html/form_34.png
deleted file mode 100644
index 292158a..0000000
Binary files a/doc/api/html/form_34.png and /dev/null differ
diff --git a/doc/api/html/form_35.png b/doc/api/html/form_35.png
deleted file mode 100644
index 60bd34c..0000000
Binary files a/doc/api/html/form_35.png and /dev/null differ
diff --git a/doc/api/html/form_36.png b/doc/api/html/form_36.png
deleted file mode 100644
index 388f9ff..0000000
Binary files a/doc/api/html/form_36.png and /dev/null differ
diff --git a/doc/api/html/form_37.png b/doc/api/html/form_37.png
deleted file mode 100644
index f2266aa..0000000
Binary files a/doc/api/html/form_37.png and /dev/null differ
diff --git a/doc/api/html/form_38.png b/doc/api/html/form_38.png
deleted file mode 100644
index 3408b36..0000000
Binary files a/doc/api/html/form_38.png and /dev/null differ
diff --git a/doc/api/html/form_39.png b/doc/api/html/form_39.png
deleted file mode 100644
index 12d5096..0000000
Binary files a/doc/api/html/form_39.png and /dev/null differ
diff --git a/doc/api/html/form_4.png b/doc/api/html/form_4.png
deleted file mode 100644
index 4d6582a..0000000
Binary files a/doc/api/html/form_4.png and /dev/null differ
diff --git a/doc/api/html/form_40.png b/doc/api/html/form_40.png
deleted file mode 100644
index ae095b2..0000000
Binary files a/doc/api/html/form_40.png and /dev/null differ
diff --git a/doc/api/html/form_41.png b/doc/api/html/form_41.png
deleted file mode 100644
index e967111..0000000
Binary files a/doc/api/html/form_41.png and /dev/null differ
diff --git a/doc/api/html/form_42.png b/doc/api/html/form_42.png
deleted file mode 100644
index 0641e64..0000000
Binary files a/doc/api/html/form_42.png and /dev/null differ
diff --git a/doc/api/html/form_43.png b/doc/api/html/form_43.png
deleted file mode 100644
index 75cf1af..0000000
Binary files a/doc/api/html/form_43.png and /dev/null differ
diff --git a/doc/api/html/form_44.png b/doc/api/html/form_44.png
deleted file mode 100644
index 513f9c9..0000000
Binary files a/doc/api/html/form_44.png and /dev/null differ
diff --git a/doc/api/html/form_45.png b/doc/api/html/form_45.png
deleted file mode 100644
index db2aece..0000000
Binary files a/doc/api/html/form_45.png and /dev/null differ
diff --git a/doc/api/html/form_46.png b/doc/api/html/form_46.png
deleted file mode 100644
index 650f65e..0000000
Binary files a/doc/api/html/form_46.png and /dev/null differ
diff --git a/doc/api/html/form_47.png b/doc/api/html/form_47.png
deleted file mode 100644
index c832bb5..0000000
Binary files a/doc/api/html/form_47.png and /dev/null differ
diff --git a/doc/api/html/form_48.png b/doc/api/html/form_48.png
deleted file mode 100644
index 9f63a36..0000000
Binary files a/doc/api/html/form_48.png and /dev/null differ
diff --git a/doc/api/html/form_49.png b/doc/api/html/form_49.png
deleted file mode 100644
index 96c5f0b..0000000
Binary files a/doc/api/html/form_49.png and /dev/null differ
diff --git a/doc/api/html/form_5.png b/doc/api/html/form_5.png
deleted file mode 100644
index f558ccf..0000000
Binary files a/doc/api/html/form_5.png and /dev/null differ
diff --git a/doc/api/html/form_50.png b/doc/api/html/form_50.png
deleted file mode 100644
index 5c4a9ba..0000000
Binary files a/doc/api/html/form_50.png and /dev/null differ
diff --git a/doc/api/html/form_51.png b/doc/api/html/form_51.png
deleted file mode 100644
index d156539..0000000
Binary files a/doc/api/html/form_51.png and /dev/null differ
diff --git a/doc/api/html/form_52.png b/doc/api/html/form_52.png
deleted file mode 100644
index f8a9456..0000000
Binary files a/doc/api/html/form_52.png and /dev/null differ
diff --git a/doc/api/html/form_53.png b/doc/api/html/form_53.png
deleted file mode 100644
index 83b29ec..0000000
Binary files a/doc/api/html/form_53.png and /dev/null differ
diff --git a/doc/api/html/form_54.png b/doc/api/html/form_54.png
deleted file mode 100644
index 70259d8..0000000
Binary files a/doc/api/html/form_54.png and /dev/null differ
diff --git a/doc/api/html/form_55.png b/doc/api/html/form_55.png
deleted file mode 100644
index 2be1e8d..0000000
Binary files a/doc/api/html/form_55.png and /dev/null differ
diff --git a/doc/api/html/form_56.png b/doc/api/html/form_56.png
deleted file mode 100644
index 8ae7d2c..0000000
Binary files a/doc/api/html/form_56.png and /dev/null differ
diff --git a/doc/api/html/form_57.png b/doc/api/html/form_57.png
deleted file mode 100644
index eb53520..0000000
Binary files a/doc/api/html/form_57.png and /dev/null differ
diff --git a/doc/api/html/form_58.png b/doc/api/html/form_58.png
deleted file mode 100644
index 3d4805a..0000000
Binary files a/doc/api/html/form_58.png and /dev/null differ
diff --git a/doc/api/html/form_59.png b/doc/api/html/form_59.png
deleted file mode 100644
index e73edbb..0000000
Binary files a/doc/api/html/form_59.png and /dev/null differ
diff --git a/doc/api/html/form_6.png b/doc/api/html/form_6.png
deleted file mode 100644
index dcfadbc..0000000
Binary files a/doc/api/html/form_6.png and /dev/null differ
diff --git a/doc/api/html/form_60.png b/doc/api/html/form_60.png
deleted file mode 100644
index f1c8800..0000000
Binary files a/doc/api/html/form_60.png and /dev/null differ
diff --git a/doc/api/html/form_61.png b/doc/api/html/form_61.png
deleted file mode 100644
index a433cfa..0000000
Binary files a/doc/api/html/form_61.png and /dev/null differ
diff --git a/doc/api/html/form_62.png b/doc/api/html/form_62.png
deleted file mode 100644
index 1f26d0e..0000000
Binary files a/doc/api/html/form_62.png and /dev/null differ
diff --git a/doc/api/html/form_63.png b/doc/api/html/form_63.png
deleted file mode 100644
index 3d4805a..0000000
Binary files a/doc/api/html/form_63.png and /dev/null differ
diff --git a/doc/api/html/form_64.png b/doc/api/html/form_64.png
deleted file mode 100644
index f756cd5..0000000
Binary files a/doc/api/html/form_64.png and /dev/null differ
diff --git a/doc/api/html/form_65.png b/doc/api/html/form_65.png
deleted file mode 100644
index 03438b4..0000000
Binary files a/doc/api/html/form_65.png and /dev/null differ
diff --git a/doc/api/html/form_66.png b/doc/api/html/form_66.png
deleted file mode 100644
index a433cfa..0000000
Binary files a/doc/api/html/form_66.png and /dev/null differ
diff --git a/doc/api/html/form_67.png b/doc/api/html/form_67.png
deleted file mode 100644
index 1f26d0e..0000000
Binary files a/doc/api/html/form_67.png and /dev/null differ
diff --git a/doc/api/html/form_68.png b/doc/api/html/form_68.png
deleted file mode 100644
index 9afa409..0000000
Binary files a/doc/api/html/form_68.png and /dev/null differ
diff --git a/doc/api/html/form_69.png b/doc/api/html/form_69.png
deleted file mode 100644
index 3d4805a..0000000
Binary files a/doc/api/html/form_69.png and /dev/null differ
diff --git a/doc/api/html/form_7.png b/doc/api/html/form_7.png
deleted file mode 100644
index ff0b031..0000000
Binary files a/doc/api/html/form_7.png and /dev/null differ
diff --git a/doc/api/html/form_70.png b/doc/api/html/form_70.png
deleted file mode 100644
index d021395..0000000
Binary files a/doc/api/html/form_70.png and /dev/null differ
diff --git a/doc/api/html/form_71.png b/doc/api/html/form_71.png
deleted file mode 100644
index a433cfa..0000000
Binary files a/doc/api/html/form_71.png and /dev/null differ
diff --git a/doc/api/html/form_72.png b/doc/api/html/form_72.png
deleted file mode 100644
index 1f26d0e..0000000
Binary files a/doc/api/html/form_72.png and /dev/null differ
diff --git a/doc/api/html/form_73.png b/doc/api/html/form_73.png
deleted file mode 100644
index 435935a..0000000
Binary files a/doc/api/html/form_73.png and /dev/null differ
diff --git a/doc/api/html/form_74.png b/doc/api/html/form_74.png
deleted file mode 100644
index a3bd77f..0000000
Binary files a/doc/api/html/form_74.png and /dev/null differ
diff --git a/doc/api/html/form_75.png b/doc/api/html/form_75.png
deleted file mode 100644
index 025d0ab..0000000
Binary files a/doc/api/html/form_75.png and /dev/null differ
diff --git a/doc/api/html/form_76.png b/doc/api/html/form_76.png
deleted file mode 100644
index a28a592..0000000
Binary files a/doc/api/html/form_76.png and /dev/null differ
diff --git a/doc/api/html/form_77.png b/doc/api/html/form_77.png
deleted file mode 100644
index d3d8884..0000000
Binary files a/doc/api/html/form_77.png and /dev/null differ
diff --git a/doc/api/html/form_78.png b/doc/api/html/form_78.png
deleted file mode 100644
index 53a4820..0000000
Binary files a/doc/api/html/form_78.png and /dev/null differ
diff --git a/doc/api/html/form_79.png b/doc/api/html/form_79.png
deleted file mode 100644
index 29e0831..0000000
Binary files a/doc/api/html/form_79.png and /dev/null differ
diff --git a/doc/api/html/form_8.png b/doc/api/html/form_8.png
deleted file mode 100644
index b426d20..0000000
Binary files a/doc/api/html/form_8.png and /dev/null differ
diff --git a/doc/api/html/form_80.png b/doc/api/html/form_80.png
deleted file mode 100644
index 485518b..0000000
Binary files a/doc/api/html/form_80.png and /dev/null differ
diff --git a/doc/api/html/form_81.png b/doc/api/html/form_81.png
deleted file mode 100644
index 76a84c7..0000000
Binary files a/doc/api/html/form_81.png and /dev/null differ
diff --git a/doc/api/html/form_82.png b/doc/api/html/form_82.png
deleted file mode 100644
index eeeeda9..0000000
Binary files a/doc/api/html/form_82.png and /dev/null differ
diff --git a/doc/api/html/form_83.png b/doc/api/html/form_83.png
deleted file mode 100644
index 393ceb2..0000000
Binary files a/doc/api/html/form_83.png and /dev/null differ
diff --git a/doc/api/html/form_84.png b/doc/api/html/form_84.png
deleted file mode 100644
index 6209553..0000000
Binary files a/doc/api/html/form_84.png and /dev/null differ
diff --git a/doc/api/html/form_85.png b/doc/api/html/form_85.png
deleted file mode 100644
index aecc315..0000000
Binary files a/doc/api/html/form_85.png and /dev/null differ
diff --git a/doc/api/html/form_86.png b/doc/api/html/form_86.png
deleted file mode 100644
index 24a2c21..0000000
Binary files a/doc/api/html/form_86.png and /dev/null differ
diff --git a/doc/api/html/form_87.png b/doc/api/html/form_87.png
deleted file mode 100644
index 9716cb9..0000000
Binary files a/doc/api/html/form_87.png and /dev/null differ
diff --git a/doc/api/html/form_88.png b/doc/api/html/form_88.png
deleted file mode 100644
index 7dd4b01..0000000
Binary files a/doc/api/html/form_88.png and /dev/null differ
diff --git a/doc/api/html/form_89.png b/doc/api/html/form_89.png
deleted file mode 100644
index 06f32bc..0000000
Binary files a/doc/api/html/form_89.png and /dev/null differ
diff --git a/doc/api/html/form_9.png b/doc/api/html/form_9.png
deleted file mode 100644
index 0063477..0000000
Binary files a/doc/api/html/form_9.png and /dev/null differ
diff --git a/doc/api/html/form_90.png b/doc/api/html/form_90.png
deleted file mode 100644
index 9d9379f..0000000
Binary files a/doc/api/html/form_90.png and /dev/null differ
diff --git a/doc/api/html/form_91.png b/doc/api/html/form_91.png
deleted file mode 100644
index 21ea066..0000000
Binary files a/doc/api/html/form_91.png and /dev/null differ
diff --git a/doc/api/html/form_92.png b/doc/api/html/form_92.png
deleted file mode 100644
index 00cb9f0..0000000
Binary files a/doc/api/html/form_92.png and /dev/null differ
diff --git a/doc/api/html/form_93.png b/doc/api/html/form_93.png
deleted file mode 100644
index 26d8933..0000000
Binary files a/doc/api/html/form_93.png and /dev/null differ
diff --git a/doc/api/html/form_94.png b/doc/api/html/form_94.png
deleted file mode 100644
index d07654a..0000000
Binary files a/doc/api/html/form_94.png and /dev/null differ
diff --git a/doc/api/html/form_95.png b/doc/api/html/form_95.png
deleted file mode 100644
index 0d1c013..0000000
Binary files a/doc/api/html/form_95.png and /dev/null differ
diff --git a/doc/api/html/form_96.png b/doc/api/html/form_96.png
deleted file mode 100644
index bb0ccb9..0000000
Binary files a/doc/api/html/form_96.png and /dev/null differ
diff --git a/doc/api/html/form_97.png b/doc/api/html/form_97.png
deleted file mode 100644
index 5ead9ef..0000000
Binary files a/doc/api/html/form_97.png and /dev/null differ
diff --git a/doc/api/html/form_98.png b/doc/api/html/form_98.png
deleted file mode 100644
index d99570e..0000000
Binary files a/doc/api/html/form_98.png and /dev/null differ
diff --git a/doc/api/html/form_99.png b/doc/api/html/form_99.png
deleted file mode 100644
index 08d72f1..0000000
Binary files a/doc/api/html/form_99.png and /dev/null differ
diff --git a/doc/api/html/formula.repository b/doc/api/html/formula.repository
deleted file mode 100644
index 5c3eb05..0000000
--- a/doc/api/html/formula.repository
+++ /dev/null
@@ -1,140 +0,0 @@
-\form#0:$2\le\sigma<4$
-\form#1:$dM$
-\form#2:$D$
-\form#3:$N_0+\hdots+N_{d-1}$
-\form#4:$B$
-\form#5:$N$
-\form#6:$\mathbf{x}(m) = \left(x_1,x_2\right) \in [-\frac{1}{2},\frac{1}{2}) \times [0,\frac{1}{2}]$
-\form#7:$m=0,\ldots, M-1$
-\form#8:$M \in \mathbb{N},$
-\form#9:$M_{k,0}\left(x\right)$
-\form#10:$\prod_{t=0}^{d-1} v_t$
-\form#11:$\prod_{t=0}^{d-1} v_t-a$
-\form#12:$\sum_{t=0}^{d-1} i_t \prod_{t'=t+1}^{d-1} N_{t'}$
-\form#13:$x^H x$
-\form#14:$x^H (w \odot x)$
-\form#15:$x^H (w1\odot w2\odot w2 \odot x)$
-\form#16:$x^H (w2\odot w2 \odot x)$
-\form#17:$x \leftarrow y$
-\form#18:$x \leftarrow a y$
-\form#19:$x \leftarrow w\odot y$
-\form#20:$x \leftarrow a x + y$
-\form#21:$x \leftarrow x + a y$
-\form#22:$x \leftarrow a x + b y$
-\form#23:$x \leftarrow x + a w\odot y$
-\form#24:$x \leftarrow a x + w\odot y$
-\form#25:$[0,1]\times[0,1]{\rm i}$
-\form#26:$[-1/2,1/2]$
-\form#27:$x_j$
-\form#28:$\frac{2}{N}\left(1-\frac{\left|2k+1\right|}{N}\right)$
-\form#29:$P_k : \mathbb{R} \rightarrow \mathbb{R}$
-\form#30:\[ f(x) = \sum_{k=0}^N a_k P_k(x) \quad (N \in \mathbb{N}_0) \]
-\form#31:\[ P_{k+1}(x) = (alpha_k * x + beta_k)*P_{k}(x) + gamma_k P_{k-1}(x) \quad (alpha_k, beta_k, gamma_k \in \mathbb{R},\; k \ge 0) \]
-\form#32:$P_{-1}(x) := 0$
-\form#33:$P_0(x) := \lambda$
-\form#34:$\left(a_k\right)_{k=0}^N \in \mathbb{C}^{N+1}$
-\form#35:$\left(x_j\right)_{j=0}^M \in \mathbb{R}^{M+1}$
-\form#36:$M \in \mathbb{N}_0$
-\form#37:$B, B^{\rm T}$
-\form#38:$D, D^T$
-\form#39:$\alpha_{k-1}^n$
-\form#40:$k,n = 0,1,\ldots,N$
-\form#41:$(N+1)^2$
-\form#42:$\beta_{k-1}^n$
-\form#43:$\gamma_{k-1}^n$
-\form#44:$P_k^n(x,c)$
-\form#45:$k$
-\form#46:$\alpha_c^n,\ldots,\alpha_{c+k}^n$
-\form#47:$\beta_c^n,\ldots,\beta_{c+k}^n$
-\form#48:$\gamma_c^n,\ldots,\gamma_{c+k}^n$
-\form#49:$N \in \mathbb{N}_0$
-\form#50:$\left(b_k^n\right)_{k=0}^M$
-\form#51:$-M \le n \le M$
-\form#52:\[ f(\cos\vartheta) = \sum_{k=0}^{2\lfloor\frac{M}{2}\rfloor} a_k (\sin\vartheta)^{n\;\mathrm{mod}\;2} T_k(\cos\vartheta) \]
-\form#53:$\left(c_k^n\right)_{k=0}^M$
-\form#54:\[ f(\cos\vartheta) = \sum_{k=-M}^{M} c_k \mathrm{e}^{\mathrm{i}k\vartheta} \]
-\form#55:$n=-M,\ldots,M$
-\form#56:$\left(b_k^n\right)_{k=0,\ldots,M;n=-M,\ldots,M}$
-\form#57:$\left(c_k^n\right)_{k=-M,\ldots,M;n=-M,\ldots,M}$
-\form#58:$\alpha_l^{km}$
-\form#59:$m$
-\form#60:$l$
-\form#61:$\beta_l^{km}$
-\form#62:$\gamma_l^{km}$
-\form#63:$ \alpha_{l}^{km}$
-\form#64:$ l= 0,\ldots,N $
-\form#65:$(2N+1)^2(N+1)$
-\form#66:$ \beta_{l}^{km}$
-\form#67:$ \gamma_{l}^{km}$
-\form#68:$ m = -N,\ldots,N $
-\form#69:$\alpha_{l}^{km}$
-\form#70:$ k,m = -N,\ldots,N $
-\form#71:$\beta_{l}^{km}$
-\form#72:$\gamma_{l}^{km}$
-\form#73:$d_l^{km}(x,c)$
-\form#74:$\alpha_c^{km},\ldots,\alpha_{c+l}^{km}$
-\form#75:$\beta_c^{km},\ldots,\beta_{c+l}^{km}$
-\form#76:$\gamma_c^{km},\ldots,\gamma_{c+l}^{km}$
-\form#77:$ d^{km}_l(cos(theta)) $
-\form#78:$\frac{\|x-y\|_{\infty}}{\|x\|_{\infty}} $
-\form#79:$\frac{\|x-y\|_{\infty}}{\|z\|_1} $
-\form#80:$\frac{\|x-y\|_2}{\|x\|_2} $
-\form#81:$x^H (w\odot w2\odot w2 \odot x)$
-\form#82:$I_{n+\alpha}(x)$
-\form#83:$\mathrm{e}^{-x}$
-\form#84:$x,alpha$
-\form#85:$0 \le \alpha < 1$
-\form#86:$n=0,1,\ldots,nb-1$
-\form#87:$|x| \ge exparg$
-\form#88:$\min(nb,0)-1$
-\form#89:$n=0,1,\ldots,ncalc$
-\form#90:$J_{\nu}(x)$
-\form#91:$I_{\nu}(x)$
-\form#92:$x$
-\form#93:$\nu$
-\form#94:\[ f(g_q)=\sum^{N}_{l=0}\sum_{m,n=-l}^l \hat f^{mn}_l D_{mn}^l(\alpha_q,\beta_q,\gamma_q) \]
-\form#95:$[-1/4,1/4]$
-\form#96:$\mathbb{R}^3$
-\form#97:$\mathbb{S}^2$
-\form#98:$\varphi_1 \in [-\pi,\pi)$
-\form#99:$\vartheta_1 \in [0,\pi]$
-\form#100:$\varphi_2 \in [-\pi,\pi)$
-\form#101:$\vartheta_2 \in [0,\pi]$
-\form#102:$\cos \vartheta_1 \cos \vartheta_2 + \sin \vartheta_1 \sin(\vartheta_2 \cos(\varphi_1 - \varphi_2)$
-\form#103:$Q_h: [-1,1] \rightarrow \mathbb{R}$
-\form#104:$x \in [-1,1]$
-\form#105:$h \in (0,1)$
-\form#106:$Q_h(x)$
-\form#107:$S_h: [-1,1] \rightarrow \mathbb{R}$
-\form#108:$S_h(x)$
-\form#109:$L_{h,\lambda}: [-1,1] \rightarrow \mathbb{R}$
-\form#110:$\lambda \in \mathbb{N}_0$
-\form#111:$L_{h,\lambda}(x)$
-\form#112:$G_\sigma: [-1,1] \rightarrow \mathbb{R}$
-\form#113:$\sigma \in \mathbb{R}_+$
-\form#114:$G_\sigma(x)$
-\form#115:$x_{t,j}$
-\form#116:$w_{t,j}$
-\form#117:$T$
-\form#118:$R$
-\form#119:\[ x_{t,j} := r_j\left(\cos\theta_t, \sin\theta_t\right)^{\top}\,,\qquad (j,t)^{\top}\in I_{\sqrt{2}R}\times I_T\,. \]
-\form#120:$r_j$
-\form#121:$\theta_t$
-\form#122:$M \approx \frac{4}{\pi}\log(1+\sqrt{2}) T R$
-\form#123:$(j,t)^{\top}\in I_R\times I_T$
-\form#124:$r_j := \frac{j}{R} \in [-\frac{1}{2},\frac{1}{2})$
-\form#125:$\theta_t := \frac{\pi t}{T} \in [-\frac{\pi}{2},\frac{\pi}{2})$
-\form#126:\[ x_{t,j} := r_j\left(\cos\theta_t, \sin\theta_t\right)^{\top}\,. \]
-\form#127:$M=TR$
-\form#128:$j \ne 0$
-\form#129:\[ w_{t,j} = \frac{\pi}{2TR^2}\left(\left(|j|+\frac{1}{2}\right)^2- \left(|j|-\frac{1}{2}\right)^2\right) = \frac{\pi |j| }{TR^2}\, . \]
-\form#130:$\frac{1}{2R}$
-\form#131:$\frac{\pi}{4R^2}$
-\form#132:$w_{t,0} := \frac{\pi}{4TR^2}$
-\form#133:$\frac{\pi}{4}(1+\frac{1}{R^2})$
-\form#134:\[ R_{\theta_t} f\left(\frac{s}{R}\right) = \sum_{r \in I_R} w_r \; \sum_{k \in I_N^2} f_{k} \mathrm{e}^{-2\pi\mathrm{I} k \; (\frac{r}{R}\theta_t)} \, \mathrm{e}^{2\pi\mathrm{i} r s / R} \qquad(t \in I_T, s \in I_R). \]
-\form#135:$\frac{r}{R}\theta_t$
-\form#136:$w_r$
-\form#137:$f_k$
-\form#138:$k \in I_N^2$
-\form#139:$t \in T$
diff --git a/doc/api/html/fpt_2simple__test_8c_source.html b/doc/api/html/fpt_2simple__test_8c_source.html
deleted file mode 100644
index 976a6e8..0000000
--- a/doc/api/html/fpt_2simple__test_8c_source.html
+++ /dev/null
@@ -1,213 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_7bc5b4c2d8fedbf49abc178849c07704.html">fpt</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fpt/simple_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">/* standard headers */</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment">/* It is important to include complex.h before nfft3.h. */</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include <fftw3.h></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> </div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment">/* NFFT3 header */</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">/* Two times Pi */</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#define KPI2 6.2831853071795864769252867665590057683943387987502</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> {</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment">/* This example shows the use of the fast polynomial transform to evaluate a</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment"> * finite expansion in Legendre polynomials,</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment"> * f(x) = a_0 P_0(x) + a_1 P_1(x) + ... + a_N P_N(x) (1)</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment"> * at the Chebyshev nodes x_j = cos(j*pi/N), j=0,1,...,N. */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N = 8;</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment">/* An fpt_set is a data structure that contains precomputed data for a number</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment"> * of different polynomial transforms. Here, we need only one transform. the</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment"> * second parameter (t) is the exponent of the maximum transform size desired</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment"> * (2^t), i.e., t = 3 means that N in (1) can be at most N = 8. */</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span> = fpt_init(1,lrint(ceil(log2((<span class="keywordtype">double</span>)N))),0U);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">/* Three-term recurrence coefficients for Legendre polynomials */</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a> = malloc((N+2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)),</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a> = malloc((N+2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)),</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a> = malloc((N+2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment">/* alpha[0] and beta[0] are not referenced. */</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> alpha[0] = <a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>[0] = 0.0;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">/* gamma[0] contains the value of P_0(x) (which is a constant). */</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>[0] = 1.0;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">/* Actual three-term recurrence coefficients for Legendre polynomials */</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> {</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span> (k = 0; k <= N; k++)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> alpha[k+1] = ((double)(2*k+1))/((<span class="keywordtype">double</span>)(k+1));</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>[k+1] = 0.0;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>[k+1] = -((double)(k))/((<span class="keywordtype">double</span>)(k+1));</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> }</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> }</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> printf(</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="stringliteral">"Computing a fast polynomial transform (FPT) and a fast discrete cosine \n"</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="stringliteral">"transform (DCT) to evaluate\n\n"</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="stringliteral">" f_j = a_0 P_0(x_j) + a_1 P_1(x_j) + ... + a_N P_N(x_j), j=0,1,...,N,\n\n"</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="stringliteral">"with N=%d, x_j = cos(j*pi/N), j=0,1,...N, the Chebyshev nodes, a_k,\n"</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="stringliteral">"k=0,1,...,N, random Fourier coefficients in [-1,1]x[-1,1]*I, and P_k,\n"</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="stringliteral">"k=0,1,...,N, the Legendre polynomials."</span>,N</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> );</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment">/* Random seed, makes things reproducible. */</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> nfft_srand48(314);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">/* The function fpt_repcompute actually does the precomputation for a single</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="comment"> * transform. It needs arrays alpha, beta, and gamma, containing the three-</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="comment"> * term recurrence coefficients, here of the Legendre polynomials. The format</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="comment"> * is explained above. The sixth parameter (k_start) is where the index in the</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="comment"> * linear combination (1) starts, here k_start=0. The seventh parameter</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="comment"> * (kappa) is the threshold which has an influence on the accuracy of the fast</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="comment"> * polynomial transform. Usually, kappa = 1000 is a good choice. */</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> fpt_precompute(<span class="keyword">set</span>,0,alpha,<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>,<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coeffic [...]
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> {</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="comment">/* Arrays for Fourier coefficients and function values. */</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">double</span> _Complex *a = malloc((N+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordtype">double</span> _Complex *b = malloc((N+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordtype">double</span> *f = malloc((N+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="comment">/* Plan for discrete cosine transform */</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keyword">const</span> <span class="keywordtype">int</span> NP1 = N + 1;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> fftw_r2r_kind kind = FFTW_REDFT00;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> fftw_plan p = fftw_plan_many_r2r(1, &NP1, 1, (<span class="keywordtype">double</span>*)b, NULL, 2, 1,</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> (<span class="keywordtype">double</span>*)f, NULL, 1, 1, &kind, 0U);</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment">/* random Fourier coefficients */</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> {</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> printf(<span class="stringliteral">"\n2) Random Fourier coefficients a_k, k=0,1,...,N:\n"</span>);</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordflow">for</span> (k = 0; k <= N; k++)</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> {</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> a[k] = 2.0*nfft_drand48() - 1.0; <span class="comment">/* for debugging: use k+1 */</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> printf(<span class="stringliteral">" a_%-2d = %+5.3lE\n"</span>,k,creal(a[k]));</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> }</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> }</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment">/* fast polynomial transform */</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> fpt_trafo(<span class="keyword">set</span>,0,a,b,N,0U);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="comment">/* Renormalize coefficients b_j, j=1,2,...,N-1 owing to how FFTW defines a</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="comment"> * DCT-I; see</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="comment"> * http://www.fftw.org/fftw3_doc/1d-Real_002deven-DFTs-_0028DCTs_0029.html</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="comment"> * for details */</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> {</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="keywordflow">for</span> (j = 1; j < N; j++)</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> b[j] *= 0.5;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> }</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="comment">/* discrete cosine transform */</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> fftw_execute(p);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> {</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> printf(<span class="stringliteral">"\n3) Function values f_j, j=1,1,...,M:\n"</span>);</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordflow">for</span> (j = 0; j <= N; j++)</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> printf(<span class="stringliteral">" f_%-2d = %+5.3lE\n"</span>,j,f[j]);</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> }</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="comment">/* cleanup */</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> free(a);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> free(b);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> free(f);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="comment">/* cleanup */</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> fftw_destroy_plan(p);</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> </div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="comment">/* cleanup */</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> fpt_finalize(<span class="keyword">set</span>);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> free(alpha);</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> free(<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> free(<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fpt_8c.html b/doc/api/html/fpt_8c.html
deleted file mode 100644
index 4e0e168..0000000
--- a/doc/api/html/fpt_8c.html
+++ /dev/null
@@ -1,463 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fpt.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_d47b87128a15c0ce57cf8f363265bec1.html">fpt</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#nested-classes">Data Structures</a> |
-<a href="#define-members">Macros</a> |
-<a href="#typedef-members">Typedefs</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">fpt.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Implementation file for the FPT module.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include <string.h></code><br/>
-<code>#include <stdbool.h></code><br/>
-<code>#include <math.h></code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-</div>
-<p><a href="fpt_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__step__.html">fpt_step_</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Holds data for a single multiplication step in the cascade summation. <a href="structfpt__step__.html#details">More...</a><br/></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html">fpt_data_</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Holds data for a single cascade summation. <a href="structfpt__data__.html#details">More...</a><br/></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html">fpt_set_s_</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Holds data for a set of cascade summations. <a href="structfpt__set__s__.html#details">More...</a><br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:a58f899926cc6e95ea54dd68d131979b8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a58f899926cc6e95ea54dd68d131979b8"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fpt_8c.html#a58f899926cc6e95ea54dd68d131979b8">K_START_TILDE</a>(x, y) (<a class="el" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3">NFFT_MAX</a>(<a class="el" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308">NFFT_MIN</a>(x,y-2),0))</td></tr>
-<tr class="memdesc:a58f899926cc6e95ea54dd68d131979b8"><td class="mdescLeft"> </td><td class="mdescRight">Minimum degree at top of a cascade. <br/></td></tr>
-<tr class="memitem:a769119c8ae45f2a30a62ba802d83139f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a769119c8ae45f2a30a62ba802d83139f"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fpt_8c.html#a769119c8ae45f2a30a62ba802d83139f">K_END_TILDE</a>(x, y) <a class="el" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308">NFFT_MIN</a>(x,y-1)</td></tr>
-<tr class="memdesc:a769119c8ae45f2a30a62ba802d83139f"><td class="mdescLeft"> </td><td class="mdescRight">Maximum degree at top of a cascade. <br/></td></tr>
-<tr class="memitem:ac81f7eac1a01b06e91817857f47b9804"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac81f7eac1a01b06e91817857f47b9804"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fpt_8c.html#ac81f7eac1a01b06e91817857f47b9804">FIRST_L</a>(x, y) (LRINT(floor((x)/(double)y)))</td></tr>
-<tr class="memdesc:ac81f7eac1a01b06e91817857f47b9804"><td class="mdescLeft"> </td><td class="mdescRight">Index of first block of four functions at level. <br/></td></tr>
-<tr class="memitem:ac9f7e1529d635e3357d1e081ddf7e349"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9f7e1529d635e3357d1e081ddf7e349"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="fpt_8c.html#ac9f7e1529d635e3357d1e081ddf7e349">LAST_L</a>(x, y) (LRINT(ceil(((x)+1)/(double)y))-1)</td></tr>
-<tr class="memdesc:ac9f7e1529d635e3357d1e081ddf7e349"><td class="mdescLeft"> </td><td class="mdescRight">Index of last block of four functions at level. <br/></td></tr>
-<tr class="memitem:a3861f1554af7a46ab4788955bff82e16"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3861f1554af7a46ab4788955bff82e16"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>N_TILDE</b>(y) (y-1)</td></tr>
-<tr class="memitem:a2a3d2e8d45a563c618a6c2b6a292cc64"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2a3d2e8d45a563c618a6c2b6a292cc64"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>IS_SYMMETRIC</b>(x, y, z) (x >= ((y-1.0)/z))</td></tr>
-<tr class="memitem:a81f8de5e3b3597d325e47d05d9f1213c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a81f8de5e3b3597d325e47d05d9f1213c"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_BREAK_EVEN</b> 4</td></tr>
-<tr class="memitem:a0afca80d182fb1abd524bc0a1378dc25"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><b>ABUVXPWY_SYMMETRIC</b>(NAME, S1, S2)</td></tr>
-<tr class="memitem:a18db89dcff6fae9720e01a0be56fc8f7"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><b>ABUVXPWY_SYMMETRIC_1</b>(NAME, S1)</td></tr>
-<tr class="memitem:ad301783a6575cd0fc132ebaa12d3cf60"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><b>ABUVXPWY_SYMMETRIC_2</b>(NAME, S1)</td></tr>
-<tr class="memitem:a9fe176f7a67aa76e7d5c101ff5aefe68"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9fe176f7a67aa76e7d5c101ff5aefe68"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_DO_STEP</b>(NAME, M1_FUNCTION, M2_FUNCTION)</td></tr>
-<tr class="memitem:a8cb478c4a27a921310d57427c1e94aa4"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><b>FPT_DO_STEP_TRANSPOSED</b>(NAME, M1_FUNCTION, M2_FUNCTION)</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:a4c7f62127651d301d4604b3a6519458d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c7f62127651d301d4604b3a6519458d"></a>
-typedef struct <a class="el" href="structfpt__step__.html">fpt_step_</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="fpt_8c.html#a4c7f62127651d301d4604b3a6519458d">fpt_step</a></td></tr>
-<tr class="memdesc:a4c7f62127651d301d4604b3a6519458d"><td class="mdescLeft"> </td><td class="mdescRight">Holds data for a single multiplication step in the cascade summation. <br/></td></tr>
-<tr class="memitem:a5141ba7ff5b14b5fbf7ee769943f1c10"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5141ba7ff5b14b5fbf7ee769943f1c10"></a>
-typedef struct <a class="el" href="structfpt__data__.html">fpt_data_</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="fpt_8c.html#a5141ba7ff5b14b5fbf7ee769943f1c10">fpt_data</a></td></tr>
-<tr class="memdesc:a5141ba7ff5b14b5fbf7ee769943f1c10"><td class="mdescLeft"> </td><td class="mdescRight">Holds data for a single cascade summation. <br/></td></tr>
-<tr class="memitem:a06f7c65536489b0602c70a616e9f1fe8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06f7c65536489b0602c70a616e9f1fe8"></a>
-typedef struct <a class="el" href="structfpt__set__s__.html">fpt_set_s_</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="fpt_8c.html#a06f7c65536489b0602c70a616e9f1fe8">fpt_set_s</a></td></tr>
-<tr class="memdesc:a06f7c65536489b0602c70a616e9f1fe8"><td class="mdescLeft"> </td><td class="mdescRight">Holds data for a set of cascade summations. <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a736cbc7c2da6a04952583fd49e25e4e3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a736cbc7c2da6a04952583fd49e25e4e3"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>abuvxpwy</b> (double a, double b, double _Complex *u, double _Complex *x, double *v, double _Complex *y, double *w, int n)</td></tr>
-<tr class="memitem:aad216e28422c530c4ee4fbf95fd33e1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad216e28422c530c4ee4fbf95fd33e1b"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>abuvxpwy_symmetric1</b> (double a, double b, double _Complex *u, double _Complex *x, double *v, double _Complex *y, double *w, int n)</td></tr>
-<tr class="memitem:a83f9840e24ce540950b72434c661fde0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83f9840e24ce540950b72434c661fde0"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>abuvxpwy_symmetric2</b> (double a, double b, double _Complex *u, double _Complex *x, double *v, double _Complex *y, double *w, int n)</td></tr>
-<tr class="memitem:a3b79087d7b531639c88b9e63663d0001"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b79087d7b531639c88b9e63663d0001"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>abuvxpwy_symmetric1_1</b> (double a, double b, double _Complex *u, double _Complex *x, double *v, double _Complex *y, int n, double *xx)</td></tr>
-<tr class="memitem:a8144ba83b6da484aef595c3d9dacc138"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8144ba83b6da484aef595c3d9dacc138"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>abuvxpwy_symmetric1_2</b> (double a, double b, double _Complex *u, double _Complex *x, double *v, double _Complex *y, int n, double *xx)</td></tr>
-<tr class="memitem:ab0f8ee56f80660ec5e0f203389d736cc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab0f8ee56f80660ec5e0f203389d736cc"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>abuvxpwy_symmetric2_1</b> (double a, double b, double _Complex *u, double _Complex *x, double _Complex *y, double *w, int n, double *xx)</td></tr>
-<tr class="memitem:a0ef6c4c0b701e19dc21041d62882f375"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ef6c4c0b701e19dc21041d62882f375"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>abuvxpwy_symmetric2_2</b> (double a, double b, double _Complex *u, double _Complex *x, double _Complex *y, double *w, int n, double *xx)</td></tr>
-<tr class="memitem:ab1fe68d8531716c8a5e036baca7a182b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab1fe68d8531716c8a5e036baca7a182b"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>auvxpwy</b> (double a, double _Complex *u, double _Complex *x, double *v, double _Complex *y, double *w, int n)</td></tr>
-<tr class="memitem:afef4734728c0be3266b66352674602e6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afef4734728c0be3266b66352674602e6"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>auvxpwy_symmetric</b> (double a, double _Complex *u, double _Complex *x, double *v, double _Complex *y, double *w, int n)</td></tr>
-<tr class="memitem:a8c808df9f2681afd90495d0440773474"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8c808df9f2681afd90495d0440773474"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>auvxpwy_symmetric_1</b> (double a, double _Complex *u, double _Complex *x, double *v, double _Complex *y, double *w, int n, double *xx)</td></tr>
-<tr class="memitem:ab68e898834538d04a587fb3b47ca9e77"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab68e898834538d04a587fb3b47ca9e77"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>auvxpwy_symmetric_2</b> (double a, double _Complex *u, double _Complex *x, double *v, double _Complex *y, double *w, int n, double *xx)</td></tr>
-<tr class="memitem:a6eb07ec910d75702e7407e7c33cf3817"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6eb07ec910d75702e7407e7c33cf3817"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>fpt_do_step</b> (double _Complex *a, double _Complex *b, double *a11, double *a12, double *a21, double *a22, double g, int tau, <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set)</td></tr>
-<tr class="memitem:a37851bd35e077d1e38b83030e711640c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a37851bd35e077d1e38b83030e711640c"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>fpt_do_step_symmetric</b> (double _Complex *a, double _Complex *b, double *a11, double *a12, double *a21, double *a22, double g, int tau, <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set)</td></tr>
-<tr class="memitem:a2b4990ee477f2cbfecae8c2d10d45ad0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b4990ee477f2cbfecae8c2d10d45ad0"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>fpt_do_step_symmetric_u</b> (double _Complex *a, double _Complex *b, double *a11, double *a12, double *a21, double *a22, double *x, double gam, int tau, <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set)</td></tr>
-<tr class="memitem:a80c9f8e8cef9c53fced32b54d9db0527"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80c9f8e8cef9c53fced32b54d9db0527"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>fpt_do_step_symmetric_l</b> (double _Complex *a, double _Complex *b, double *a11, double *a12, double *a21, double *a22, double *x, double gam, int tau, <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set)</td></tr>
-<tr class="memitem:aef54b179ce562d67ede119727d18dfbf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aef54b179ce562d67ede119727d18dfbf"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>fpt_do_step_t</b> (double _Complex *a, double _Complex *b, double *a11, double *a12, double *a21, double *a22, double g, int tau, <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set)</td></tr>
-<tr class="memitem:a672e9251669c82c40fab19a2c66bd04f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a672e9251669c82c40fab19a2c66bd04f"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>fpt_do_step_t_symmetric</b> (double _Complex *a, double _Complex *b, double *a11, double *a12, double *a21, double *a22, double g, int tau, <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set)</td></tr>
-<tr class="memitem:af140e4b95bdb5718b30dccb254f4c98e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af140e4b95bdb5718b30dccb254f4c98e"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>fpt_do_step_t_symmetric_u</b> (double _Complex *a, double _Complex *b, double *a11, double *a12, double *x, double gam, int tau, <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set)</td></tr>
-<tr class="memitem:a5882ba5488023dbb43a37d69799f9054"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5882ba5488023dbb43a37d69799f9054"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>fpt_do_step_t_symmetric_l</b> (double _Complex *a, double _Complex *b, double *a21, double *a22, double *x, double gam, int tau, <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set)</td></tr>
-<tr class="memitem:acf8cc85f60664acaf217f3546ccb0cdb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf8cc85f60664acaf217f3546ccb0cdb"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>eval_clenshaw</b> (const double *x, double *y, int size, int k, const double *alpha, const double *beta, const double *gam)</td></tr>
-<tr class="memitem:aa240495a95de302ce4a8da517fbeef6e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa240495a95de302ce4a8da517fbeef6e"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>eval_clenshaw2</b> (const double *x, double *z, double *y, int size1, int size, int k, const double *alpha, const double *beta, const double *gam)</td></tr>
-<tr class="memitem:a7286ea3559feea24b14c2905c5ec0a9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7286ea3559feea24b14c2905c5ec0a9d"></a>
-static int </td><td class="memItemRight" valign="bottom"><b>eval_clenshaw_thresh2</b> (const double *x, double *z, double *y, int size, int k, const double *alpha, const double *beta, const double *gam, const double threshold)</td></tr>
-<tr class="memitem:a2e7a261a047fe617e987e83e40032ecf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e7a261a047fe617e987e83e40032ecf"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>eval_sum_clenshaw_fast</b> (const int N, const int M, const double _Complex *a, const double *x, double _Complex *y, const double *alpha, const double *beta, const double *gam, const double lambda)</td></tr>
-<tr class="memitem:a509209ea5b6e210805a37cd80579c2c5"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="fpt_8c.html#a509209ea5b6e210805a37cd80579c2c5">eval_sum_clenshaw_transposed</a> (int N, int M, double _Complex *a, double *x, double _Complex *y, double _Complex *temp, double *alpha, double *beta, double *gam, double lambda)</td></tr>
-<tr class="memdesc:a509209ea5b6e210805a37cd80579c2c5"><td class="mdescLeft"> </td><td class="mdescRight">Clenshaw algorithm. <a href="#a509209ea5b6e210805a37cd80579c2c5"></a><br/></td></tr>
-<tr class="memitem:ad103ad18c75ee5dd048392dfd1ca7305"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad103ad18c75ee5dd048392dfd1ca7305"></a>
-<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> </td><td class="memItemRight" valign="bottom"><b>fpt_init</b> (const int M, const int t, const unsigned int flags)</td></tr>
-<tr class="memitem:ad3c3b30fda57364c92958cc7390b6378"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3c3b30fda57364c92958cc7390b6378"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_precompute</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, const int m, double *alpha, double *beta, double *gam, int k_start, const double threshold)</td></tr>
-<tr class="memitem:ade78830b02dc8b789992d6c3009c3f6f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade78830b02dc8b789992d6c3009c3f6f"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_trafo_direct</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, const int m, const double _Complex *x, double _Complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a41f2c9ddd39779e60f0431efa67bb560"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a41f2c9ddd39779e60f0431efa67bb560"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_trafo</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, const int m, const double _Complex *x, double _Complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a51ede94663119ef8153dfbd07456badc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a51ede94663119ef8153dfbd07456badc"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_transposed_direct</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, const int m, double _Complex *x, double _Complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:aa2084b56c851ff0c58d10bf34a084a38"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa2084b56c851ff0c58d10bf34a084a38"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_transposed</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, const int m, double _Complex *x, double _Complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a7f2a1b915af8d0e7f2eb2f37ddb6772c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7f2a1b915af8d0e7f2eb2f37ddb6772c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_finalize</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Implementation file for the FPT module. </p>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition in file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-</div><hr/><h2>Macro Definition Documentation</h2>
-<a class="anchor" id="a0afca80d182fb1abd524bc0a1378dc25"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define ABUVXPWY_SYMMETRIC</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">NAME, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">S1, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">S2 </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> NAME(<span class="keywordtype">double</span> a, <span class="keywordtype">double</span> b, <span class="keywordtype">double</span> _Complex* u, <span class="keywordtype">double</span> _Complex* x, \</div>
-<div class="line"> <span class="keywordtype">double</span>* v, <span class="keywordtype">double</span> _Complex* y, <span class="keywordtype">double</span>* w, <span class="keywordtype">int</span> n) \</div>
-<div class="line">{ \</div>
-<div class="line"> const <span class="keywordtype">int</span> n2 = n>>1; \</div>
-<div class="line"> int l; <span class="keywordtype">double</span> _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y; \</div>
-<div class="line"> double *v_ptr = v, *w_ptr = w; \</div>
-<div class="line"> for (l = 0; l < n2; l++) \</div>
-<div class="line"> *u_ptr++ = a * (b * (*v_ptr++) * (*x_ptr++) + (*w_ptr++) * (*y_ptr++)); \</div>
-<div class="line"> v_ptr--; w_ptr--; \</div>
-<div class="line"> for (l = 0; l < n2; l++) \</div>
-<div class="line"> *u_ptr++ = a * (b * S1 * (*v_ptr--) * (*x_ptr++) + S2 * (*w_ptr--) * (*y_ptr++)); \</div>
-<div class="line">}</div>
-</div><!-- fragment -->
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00139">139</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a18db89dcff6fae9720e01a0be56fc8f7"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define ABUVXPWY_SYMMETRIC_1</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">NAME, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">S1 </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> NAME(<span class="keywordtype">double</span> a, <span class="keywordtype">double</span> b, <span class="keywordtype">double</span> _Complex* u, <span class="keywordtype">double</span> _Complex* x, \</div>
-<div class="line"> <span class="keywordtype">double</span>* v, <span class="keywordtype">double</span> _Complex* y, <span class="keywordtype">int</span> n, <span class="keywordtype">double</span> *xx) \</div>
-<div class="line">{ \</div>
-<div class="line"> const <span class="keywordtype">int</span> n2 = n>>1; \</div>
-<div class="line"> int l; <span class="keywordtype">double</span> _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y; \</div>
-<div class="line"> double *v_ptr = v, *xx_ptr = xx; \</div>
-<div class="line"> for (l = 0; l < n2; l++, v_ptr++) \</div>
-<div class="line"> *u_ptr++ = a * (b * (*v_ptr) * (*x_ptr++) + ((*v_ptr)*(1.0+*xx_ptr++)) * (*y_ptr++)); \</div>
-<div class="line"> v_ptr--; \</div>
-<div class="line"> for (l = 0; l < n2; l++, v_ptr--) \</div>
-<div class="line"> *u_ptr++ = a * (b * S1 * (*v_ptr) * (*x_ptr++) + (S1 * (*v_ptr) * (1.0+*xx_ptr++)) * (*y_ptr++)); \</div>
-<div class="line">}</div>
-</div><!-- fragment -->
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00156">156</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ad301783a6575cd0fc132ebaa12d3cf60"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define ABUVXPWY_SYMMETRIC_2</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">NAME, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">S1 </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> NAME(<span class="keywordtype">double</span> a, <span class="keywordtype">double</span> b, <span class="keywordtype">double</span> _Complex* u, <span class="keywordtype">double</span> _Complex* x, \</div>
-<div class="line"> <span class="keywordtype">double</span> _Complex* y, <span class="keywordtype">double</span>* w, <span class="keywordtype">int</span> n, <span class="keywordtype">double</span> *xx) \</div>
-<div class="line">{ \</div>
-<div class="line"> const <span class="keywordtype">int</span> n2 = n>>1; \</div>
-<div class="line"> int l; <span class="keywordtype">double</span> _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y; \</div>
-<div class="line"> double *w_ptr = w, *xx_ptr = xx; \</div>
-<div class="line"> for (l = 0; l < n2; l++, w_ptr++) \</div>
-<div class="line"> *u_ptr++ = a * (b * (*w_ptr/(1.0+*xx_ptr++)) * (*x_ptr++) + (*w_ptr) * (*y_ptr++)); \</div>
-<div class="line"> w_ptr--; \</div>
-<div class="line"> for (l = 0; l < n2; l++, w_ptr--) \</div>
-<div class="line"> *u_ptr++ = a * (b * (S1 * (*w_ptr)/(1.0+*xx_ptr++) ) * (*x_ptr++) + S1 * (*w_ptr) * (*y_ptr++)); \</div>
-<div class="line">}</div>
-</div><!-- fragment -->
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00173">173</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a8cb478c4a27a921310d57427c1e94aa4"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define FPT_DO_STEP_TRANSPOSED</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">NAME, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">M1_FUNCTION, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">M2_FUNCTION </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> NAME(<span class="keywordtype">double</span> _Complex *a, <span class="keywordtype">double</span> _Complex *b, <span class="keywordtype">double</span> *a11, \</div>
-<div class="line"> <span class="keywordtype">double</span> *a12, <span class="keywordtype">double</span> *a21, <span class="keywordtype">double</span> *a22, <span class="keywordtype">double</span> g, <span class="keywordtype">int</span> tau, <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>) \</div>
-<div class="line">{ \ \</div>
-<div class="line"> int length = 1<<(tau+1); \ \</div>
-<div class="line"> double norm = 1.0/(length<<1); \</div>
-<div class="line"> \</div>
-<div class="line"> <span class="comment">/* Compute function values from Chebyshev-coefficients using a DCT-III. */</span> \</div>
-<div class="line"> fftw_execute_r2r(<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>-><a class="code" href="structfpt__set__s__.html#a5f146823d105906abf0cdc4c5f9638dc" title="Transform plans for the fftw library.">plans_dct3</a>[tau-1],(<span class="keywordtype">double</span>*)a,(<span class="keywordtype">double</span>*)a); \</div>
-<div class="line"> fftw_execute_r2r(<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>-><a class="code" href="structfpt__set__s__.html#a5f146823d105906abf0cdc4c5f9638dc" title="Transform plans for the fftw library.">plans_dct3</a>[tau-1],(<span class="keywordtype">double</span>*)b,(<span class="keywordtype">double</span>*)b); \</div>
-<div class="line"> \</div>
-<div class="line"> <span class="comment">/* Perform matrix multiplication. */</span> \</div>
-<div class="line"> M1_FUNCTION(norm,g,<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>->z,a,a11,b,a21,length); \</div>
-<div class="line"> M2_FUNCTION(norm,g,b,a,a12,b,a22,length); \</div>
-<div class="line"> memcpy(a,<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>->z,length*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex)); \</div>
-<div class="line"> \</div>
-<div class="line"> <span class="comment">/* Compute Chebyshev-coefficients using a DCT-II. */</span> \</div>
-<div class="line"> fftw_execute_r2r(<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>-><a class="code" href="structfpt__set__s__.html#aead22ae71c82ad37da07f6166bf53fbc" title="Transform plans for the fftw library.">plans_dct2</a>[tau-1],(<span class="keywordtype">double</span>*)a,(<span class="keywordtype">double</span>*)a); \</div>
-<div class="line"> fftw_execute_r2r(<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>-><a class="code" href="structfpt__set__s__.html#aead22ae71c82ad37da07f6166bf53fbc" title="Transform plans for the fftw library.">plans_dct2</a>[tau-1],(<span class="keywordtype">double</span>*)b,(<span class="keywordtype">double</span>*)b); \</div>
-<div class="line">}</div>
-</div><!-- fragment -->
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00397">397</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="a509209ea5b6e210805a37cd80579c2c5"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static void eval_sum_clenshaw_transposed </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>M</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double _Complex * </td>
- <td class="paramname"><em>a</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double _Complex * </td>
- <td class="paramname"><em>y</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double _Complex * </td>
- <td class="paramname"><em>temp</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>alpha</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>beta</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>gam</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double </td>
- <td class="paramname"><em>lambda</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Clenshaw algorithm. </p>
-<p>Evaluates a sum of real-valued functions <img class="formulaInl" alt="$P_k : \mathbb{R} \rightarrow \mathbb{R}$" src="form_29.png"/> </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ f(x) = \sum_{k=0}^N a_k P_k(x) \quad (N \in \mathbb{N}_0) \]" src="form_30.png"/>
-</p>
-<p> obeying a three-term recurrence relation </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ P_{k+1}(x) = (alpha_k * x + beta_k)*P_{k}(x) + gamma_k P_{k-1}(x) \quad (alpha_k, beta_k, gamma_k \in \mathbb{R},\; k \ge 0) \]" src="form_31.png"/>
-</p>
-<p> with initial conditions <img class="formulaInl" alt="$P_{-1}(x) := 0$" src="form_32.png"/>, <img class="formulaInl" alt="$P_0(x) := \lambda$" src="form_33.png"/> for given double _Complex coefficients <img class="formulaInl" alt="$\left(a_k\right)_{k=0}^N \in \mathbb{C}^{N+1}$" src="form_34.png"/> at given nodes <img class="formulaInl" alt="$\left(x_j\right)_{j=0}^M \in \mathbb{R}^{M+1}$" src="form_35.png"/>, <img class="formulaInl" alt="$M \in \mathbb{N}_0$" src="form_36.png"/>. </p>
-
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00715">715</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fpt_8c_source.html b/doc/api/html/fpt_8c_source.html
deleted file mode 100644
index f1991dc..0000000
--- a/doc/api/html/fpt_8c_source.html
+++ /dev/null
@@ -1,1875 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fpt.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_d47b87128a15c0ce57cf8f363265bec1.html">fpt</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fpt.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="fpt_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: fpt.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <stdbool.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">/* Macros for index calculation. */</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"><a class="code" href="fpt_8c.html#a58f899926cc6e95ea54dd68d131979b8"> 44</a></span> <span class="preprocessor">#define K_START_TILDE(x,y) (NFFT_MAX(NFFT_MIN(x,y-2),0))</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"><a class="code" href="fpt_8c.html#a769119c8ae45f2a30a62ba802d83139f"> 47</a></span> <span class="preprocessor">#define K_END_TILDE(x,y) NFFT_MIN(x,y-1)</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="fpt_8c.html#ac81f7eac1a01b06e91817857f47b9804"> 50</a></span> <span class="preprocessor">#define FIRST_L(x,y) (LRINT(floor((x)/(double)y)))</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="fpt_8c.html#ac9f7e1529d635e3357d1e081ddf7e349"> 53</a></span> <span class="preprocessor">#define LAST_L(x,y) (LRINT(ceil(((x)+1)/(double)y))-1)</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor">#define N_TILDE(y) (y-1)</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor">#define IS_SYMMETRIC(x,y,z) (x >= ((y-1.0)/z))</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor">#define FPT_BREAK_EVEN 4</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"><a class="code" href="structfpt__step__.html"> 64</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structfpt__step__.html" title="Holds data for a single multiplication step in the cascade summation.">fpt_step_</a></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> {</div>
-<div class="line"><a name="l00066"></a><span class="lineno"><a class="code" href="structfpt__step__.html#a71dc6483b4f3b958519bdafeae2c1dbf"> 66</a></span> <span class="keywordtype">bool</span> <a class="code" href="structfpt__step__.html#a71dc6483b4f3b958519bdafeae2c1dbf" title="Indicates if the values contained represent a fast or a slow stabilized step.">stable</a>; </div>
-<div class="line"><a name="l00069"></a><span class="lineno"><a class="code" href="structfpt__step__.html#ac6767b7c6935b1f2af5dd54e2e8f690b"> 69</a></span> <span class="keywordtype">int</span> <a class="code" href="structfpt__step__.html#ac6767b7c6935b1f2af5dd54e2e8f690b" title="TODO Add comment here.">Ns</a>; </div>
-<div class="line"><a name="l00070"></a><span class="lineno"><a class="code" href="structfpt__step__.html#aeb754fe2aedc1f15cbb9c75c212772fb"> 70</a></span> <span class="keywordtype">int</span> <a class="code" href="structfpt__step__.html#aeb754fe2aedc1f15cbb9c75c212772fb" title="TODO Add comment here.">ts</a>; </div>
-<div class="line"><a name="l00071"></a><span class="lineno"><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9"> 71</a></span> <span class="keywordtype">double</span> **a11,**a12,**a21,**<a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>; </div>
-<div class="line"><a name="l00072"></a><span class="lineno"><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540"> 72</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>; </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> } <a class="code" href="fpt_8c.html#a4c7f62127651d301d4604b3a6519458d" title="Holds data for a single multiplication step in the cascade summation.">fpt_step</a>;</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="structfpt__data__.html"> 78</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data_</a></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> {</div>
-<div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854"> 80</a></span> <a class="code" href="structfpt__step__.html" title="Holds data for a single multiplication step in the cascade summation.">fpt_step</a> **<a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>; </div>
-<div class="line"><a name="l00081"></a><span class="lineno"><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334"> 81</a></span> <span class="keywordtype">int</span> <a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>; </div>
-<div class="line"><a name="l00082"></a><span class="lineno"><a class="code" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519"> 82</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519" title="TODO Add comment here.">alphaN</a>; </div>
-<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d"> 83</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d" title="TODO Add comment here.">betaN</a>; </div>
-<div class="line"><a name="l00084"></a><span class="lineno"><a class="code" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a"> 84</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a" title="TODO Add comment here.">gammaN</a>; </div>
-<div class="line"><a name="l00085"></a><span class="lineno"><a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e"> 85</a></span> <span class="keywordtype">double</span> <a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e" title="TODO Add comment here.">alpha_0</a>; </div>
-<div class="line"><a name="l00086"></a><span class="lineno"><a class="code" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa"> 86</a></span> <span class="keywordtype">double</span> <a class="code" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa" title="TODO Add comment here.">beta_0</a>; </div>
-<div class="line"><a name="l00087"></a><span class="lineno"><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a"> 87</a></span> <span class="keywordtype">double</span> <a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>; </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment">/* Data for direct transform. */</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"><a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7"> 89</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7" title="< TODO Add comment here.">_alpha</a>; </div>
-<div class="line"><a name="l00090"></a><span class="lineno"><a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb"> 90</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb" title="TODO Add comment here.">_beta</a>; </div>
-<div class="line"><a name="l00091"></a><span class="lineno"><a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc"> 91</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc" title="TODO Add comment here.">_gamma</a>; </div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> } <a class="code" href="fpt_8c.html#a5141ba7ff5b14b5fbf7ee769943f1c10" title="Holds data for a single cascade summation.">fpt_data</a>;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html"> 97</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set_s_</a></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> {</div>
-<div class="line"><a name="l00099"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#ab2272294463f288c3aaa4513bfeac758"> 99</a></span> <span class="keywordtype">int</span> <a class="code" href="structfpt__set__s__.html#ab2272294463f288c3aaa4513bfeac758" title="The flags.">flags</a>; </div>
-<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#a2387122a1e670e2e61b1699458224804"> 100</a></span> <span class="keywordtype">int</span> <a class="code" href="structfpt__set__s__.html#a2387122a1e670e2e61b1699458224804" title="The number of DPT transforms.">M</a>; </div>
-<div class="line"><a name="l00101"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#aa353a04683b31bed668ee490d5df1b81"> 101</a></span> <span class="keywordtype">int</span> <a class="code" href="structfpt__set__s__.html#aa353a04683b31bed668ee490d5df1b81" title="The transform length.">N</a>; </div>
-<div class="line"><a name="l00103"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#a1d35166e05db58736e422850fe02edef"> 103</a></span> <span class="keywordtype">int</span> <a class="code" href="structfpt__set__s__.html#a1d35166e05db58736e422850fe02edef" title="The exponent of N.">t</a>; </div>
-<div class="line"><a name="l00104"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#a0509dfa979aa395a80d8f38b2f5fb760"> 104</a></span> <a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data</a> *<a class="code" href="structfpt__set__s__.html#a0509dfa979aa395a80d8f38b2f5fb760" title="The DPT transform data.">dpt</a>; </div>
-<div class="line"><a name="l00105"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#a58a8f2867286e0be19dd89e8d41c033b"> 105</a></span> <span class="keywordtype">double</span> **<a class="code" href="structfpt__set__s__.html#a58a8f2867286e0be19dd89e8d41c033b" title="Array of pointers to arrays containing the Chebyshev nodes.">xcvecs</a>; </div>
-<div class="line"><a name="l00108"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#a226e29e0f97627e77ec4fcebd0c49fdf"> 108</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__set__s__.html#a226e29e0f97627e77ec4fcebd0c49fdf" title="Array for Chebychev-nodes.">xc</a>; </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">double</span> _Complex *temp; </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordtype">double</span> _Complex *work; </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordtype">double</span> _Complex *result; </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordtype">double</span> _Complex *vec3;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordtype">double</span> _Complex *vec4;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordtype">double</span> _Complex *z;</div>
-<div class="line"><a name="l00115"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#a5f146823d105906abf0cdc4c5f9638dc"> 115</a></span> fftw_plan *<a class="code" href="structfpt__set__s__.html#a5f146823d105906abf0cdc4c5f9638dc" title="Transform plans for the fftw library.">plans_dct3</a>; </div>
-<div class="line"><a name="l00117"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#aead22ae71c82ad37da07f6166bf53fbc"> 117</a></span> fftw_plan *<a class="code" href="structfpt__set__s__.html#aead22ae71c82ad37da07f6166bf53fbc" title="Transform plans for the fftw library.">plans_dct2</a>; </div>
-<div class="line"><a name="l00119"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#a15eafd93be80eeea02173a9042e303d3"> 119</a></span> fftw_r2r_kind *<a class="code" href="structfpt__set__s__.html#a15eafd93be80eeea02173a9042e303d3" title="Transform kinds for fftw library.">kinds</a>; </div>
-<div class="line"><a name="l00121"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#afd6508cc584ac06b9f679be441b6e7f6"> 121</a></span> fftw_r2r_kind *<a class="code" href="structfpt__set__s__.html#afd6508cc584ac06b9f679be441b6e7f6" title="Transform kinds for fftw library.">kindsr</a>; </div>
-<div class="line"><a name="l00124"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#a26355113f8348c270cd02bc196fad681"> 124</a></span> <span class="keywordtype">int</span> *<a class="code" href="structfpt__set__s__.html#a26355113f8348c270cd02bc196fad681" title="Transform lengths for fftw library.">lengths</a>; </div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="comment">/* Data for slow transforms. */</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordtype">double</span> *xc_slow;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> } <a class="code" href="fpt_8c.html#a06f7c65536489b0602c70a616e9f1fe8" title="Holds data for a set of cascade summations.">fpt_set_s</a>;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> abuvxpwy(<span class="keywordtype">double</span> a, <span class="keywordtype">double</span> b, <span class="keywordtype">double</span> _Complex* u, <span class="keywordtype">double</span> _Complex* x,</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordtype">double</span>* v, <span class="keywordtype">double</span> _Complex* y, <span class="keywordtype">double</span>* w, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> {</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="keywordtype">int</span> l; <span class="keywordtype">double</span> _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordtype">double</span> *v_ptr = v, *w_ptr = w;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">for</span> (l = 0; l < n; l++)</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> *u_ptr++ = a * (b * (*v_ptr++) * (*x_ptr++) + (*w_ptr++) * (*y_ptr++));</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> }</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor">#define ABUVXPWY_SYMMETRIC(NAME,S1,S2) \</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor">static inline void NAME(double a, double b, double _Complex* u, double _Complex* x, \</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="preprocessor"> double* v, double _Complex* y, double* w, int n) \</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="preprocessor"> const int n2 = n>>1; \</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="preprocessor"> int l; double _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y; \</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="preprocessor"> double *v_ptr = v, *w_ptr = w; \</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor"> for (l = 0; l < n2; l++) \</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor"> *u_ptr++ = a * (b * (*v_ptr++) * (*x_ptr++) + (*w_ptr++) * (*y_ptr++)); \</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="preprocessor"> v_ptr--; w_ptr--; \</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="preprocessor"> for (l = 0; l < n2; l++) \</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="preprocessor"> *u_ptr++ = a * (b * S1 * (*v_ptr--) * (*x_ptr++) + S2 * (*w_ptr--) * (*y_ptr++)); \</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> ABUVXPWY_SYMMETRIC(abuvxpwy_symmetric1,1.0,-1.0)</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> ABUVXPWY_SYMMETRIC(abuvxpwy_symmetric2,-1.0,1.0)</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> </div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="preprocessor">#define ABUVXPWY_SYMMETRIC_1(NAME,S1) \</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="preprocessor">static inline void NAME(double a, double b, double _Complex* u, double _Complex* x, \</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="preprocessor"> double* v, double _Complex* y, int n, double *xx) \</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="preprocessor"> const int n2 = n>>1; \</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="preprocessor"> int l; double _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y; \</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="preprocessor"> double *v_ptr = v, *xx_ptr = xx; \</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="preprocessor"> for (l = 0; l < n2; l++, v_ptr++) \</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="preprocessor"> *u_ptr++ = a * (b * (*v_ptr) * (*x_ptr++) + ((*v_ptr)*(1.0+*xx_ptr++)) * (*y_ptr++)); \</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="preprocessor"> v_ptr--; \</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="preprocessor"> for (l = 0; l < n2; l++, v_ptr--) \</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="preprocessor"> *u_ptr++ = a * (b * S1 * (*v_ptr) * (*x_ptr++) + (S1 * (*v_ptr) * (1.0+*xx_ptr++)) * (*y_ptr++)); \</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> ABUVXPWY_SYMMETRIC_1(abuvxpwy_symmetric1_1,1.0)</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> ABUVXPWY_SYMMETRIC_1(abuvxpwy_symmetric1_2,-1.0)</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="preprocessor">#define ABUVXPWY_SYMMETRIC_2(NAME,S1) \</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="preprocessor">static inline void NAME(double a, double b, double _Complex* u, double _Complex* x, \</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="preprocessor"> double _Complex* y, double* w, int n, double *xx) \</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="preprocessor"> const int n2 = n>>1; \</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="preprocessor"> int l; double _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y; \</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="preprocessor"> double *w_ptr = w, *xx_ptr = xx; \</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="preprocessor"> for (l = 0; l < n2; l++, w_ptr++) \</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor"> *u_ptr++ = a * (b * (*w_ptr/(1.0+*xx_ptr++)) * (*x_ptr++) + (*w_ptr) * (*y_ptr++)); \</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="preprocessor"> w_ptr--; \</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="preprocessor"> for (l = 0; l < n2; l++, w_ptr--) \</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="preprocessor"> *u_ptr++ = a * (b * (S1 * (*w_ptr)/(1.0+*xx_ptr++) ) * (*x_ptr++) + S1 * (*w_ptr) * (*y_ptr++)); \</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> ABUVXPWY_SYMMETRIC_2(abuvxpwy_symmetric2_1,1.0)</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> ABUVXPWY_SYMMETRIC_2(abuvxpwy_symmetric2_2,-1.0)</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> </div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> static inline <span class="keywordtype">void</span> auvxpwy(<span class="keywordtype">double</span> a, <span class="keywordtype">double</span> _Complex* u, <span class="keywordtype">double</span> _Complex* x, <span class="keywordtype">double</span>* v,</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keywordtype">double</span> _Complex* y, <span class="keywordtype">double</span>* w, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> {</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordtype">double</span> _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordtype">double</span> *v_ptr = v, *w_ptr = w;</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">for</span> (l = n; l > 0; l--)</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> *u_ptr++ = a * ((*v_ptr++) * (*x_ptr++) + (*w_ptr++) * (*y_ptr++));</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> }</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> auvxpwy_symmetric(<span class="keywordtype">double</span> a, <span class="keywordtype">double</span> _Complex* u, <span class="keywordtype">double</span> _Complex* x,</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordtype">double</span>* v, <span class="keywordtype">double</span> _Complex* y, <span class="keywordtype">double</span>* w, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> {</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n2 = n>>1; \</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> int l;</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordtype">double</span> _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y;</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="keywordtype">double</span> *v_ptr = v, *w_ptr = w;</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">for</span> (l = n2; l > 0; l--)</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> *u_ptr++ = a * ((*v_ptr++) * (*x_ptr++) + (*w_ptr++) * (*y_ptr++));</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> v_ptr--; w_ptr--;</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordflow">for</span> (l = n2; l > 0; l--)</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> *u_ptr++ = a * ((*v_ptr--) * (*x_ptr++) - (*w_ptr--) * (*y_ptr++));</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> }</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> auvxpwy_symmetric_1(<span class="keywordtype">double</span> a, <span class="keywordtype">double</span> _Complex* u, <span class="keywordtype">double</span> _Complex* x,</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="keywordtype">double</span>* v, <span class="keywordtype">double</span> _Complex* y, <span class="keywordtype">double</span>* w, <span class="keywordtype">int</span> n, <span class="keywordtype">double</span> *xx)</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> {</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n2 = n>>1; \</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> int l;</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="keywordtype">double</span> _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y;</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordtype">double</span> *v_ptr = v, *w_ptr = w, *xx_ptr = xx;</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordflow">for</span> (l = n2; l > 0; l--, xx_ptr++)</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> *u_ptr++ = a * (((*v_ptr++)*(1.0+*xx_ptr)) * (*x_ptr++) + ((*w_ptr++)*(1.0+*xx_ptr)) * (*y_ptr++));</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> v_ptr--; w_ptr--;</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="keywordflow">for</span> (l = n2; l > 0; l--, xx_ptr++)</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> *u_ptr++ = a * (-((*v_ptr--)*(1.0+*xx_ptr)) * (*x_ptr++) + ((*w_ptr--)*(1.0+*xx_ptr)) * (*y_ptr++));</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> }</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> auvxpwy_symmetric_2(<span class="keywordtype">double</span> a, <span class="keywordtype">double</span> _Complex* u, <span class="keywordtype">double</span> _Complex* x,</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="keywordtype">double</span>* v, <span class="keywordtype">double</span> _Complex* y, <span class="keywordtype">double</span>* w, <span class="keywordtype">int</span> n, <span class="keywordtype">double</span> *xx)</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> {</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n2 = n>>1; \</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> int l;</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="keywordtype">double</span> _Complex *u_ptr = u, *x_ptr = x, *y_ptr = y;</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="keywordtype">double</span> *v_ptr = v, *w_ptr = w, *xx_ptr = xx;</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="keywordflow">for</span> (l = n2; l > 0; l--, xx_ptr++)</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> *u_ptr++ = a * (((*v_ptr++)/(1.0+*xx_ptr)) * (*x_ptr++) + ((*w_ptr++)/(1.0+*xx_ptr)) * (*y_ptr++));</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> v_ptr--; w_ptr--;</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keywordflow">for</span> (l = n2; l > 0; l--, xx_ptr++)</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> *u_ptr++ = a * (-((*v_ptr--)/(1.0+*xx_ptr)) * (*x_ptr++) + ((*w_ptr--)/(1.0+*xx_ptr)) * (*y_ptr++));</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> }</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> </div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="preprocessor">#define FPT_DO_STEP(NAME,M1_FUNCTION,M2_FUNCTION) \</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="preprocessor">static inline void NAME(double _Complex *a, double _Complex *b, double *a11, double *a12, \</span></div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="preprocessor"> double *a21, double *a22, double g, int tau, fpt_set set) \</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="preprocessor"> int length = 1<<(tau+1); \</span></div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor"> double norm = 1.0/(length<<1); \</span></div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor"> </span><span class="comment">/* Compensate for factors introduced by a raw DCT-III. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="preprocessor"> a[0] *= 2.0; \</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor"> b[0] *= 2.0; \</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="preprocessor"> </span><span class="comment">/* Compute function values from Chebyshev-coefficients using a DCT-III. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor"> fftw_execute_r2r(set->plans_dct3[tau-1],(double*)a,(double*)a); \</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor"> fftw_execute_r2r(set->plans_dct3[tau-1],(double*)b,(double*)b); \</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor"> </span><span class="comment">/*for (k = 0; k < length; k++)*/</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor"> </span><span class="comment">/*{*/</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor"> </span><span class="comment">/*fprintf(stderr,"fpt_do_step: a11 = %le, a12 = %le, a21 = %le, a22 = %le\n",*/</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor"> </span><span class="comment">/* a11[k],a12[k],a21[k],a22[k]);*/</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="preprocessor"> </span><span class="comment">/*}*/</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="preprocessor"> </span><span class="comment">/* Check, if gamma is zero. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="preprocessor"> if (g == 0.0) \</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="preprocessor"> </span><span class="comment">/*fprintf(stderr,"gamma == 0!\n");*/</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="preprocessor"> </span><span class="comment">/* Perform multiplication only for second row. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="preprocessor"> M2_FUNCTION(norm,b,b,a22,a,a21,length); \</span></div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="preprocessor"> </span><span class="comment">/*fprintf(stderr,"gamma != 0!\n");*/</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="preprocessor"> </span><span class="comment">/* Perform multiplication for both rows. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="preprocessor"> M2_FUNCTION(norm,set->z,b,a22,a,a21,length); \</span></div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="preprocessor"> M1_FUNCTION(norm*g,a,a,a11,b,a12,length); \</span></div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="preprocessor"> memcpy(b,set->z,length*sizeof(double _Complex)); \</span></div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="preprocessor"> </span><span class="comment">/* Compute Chebyshev-coefficients using a DCT-II. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="preprocessor"> fftw_execute_r2r(set->plans_dct2[tau-1],(double*)a,(double*)a); \</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="preprocessor"> </span><span class="comment">/* Compensate for factors introduced by a raw DCT-II. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="preprocessor"> a[0] *= 0.5; \</span></div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="preprocessor"> </span><span class="comment">/* Compute Chebyshev-coefficients using a DCT-II. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="preprocessor"> fftw_execute_r2r(set->plans_dct2[tau-1],(double*)b,(double*)b); \</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="preprocessor"> </span><span class="comment">/* Compensate for factors introduced by a raw DCT-II. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="preprocessor"> b[0] *= 0.5; \</span></div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> FPT_DO_STEP(fpt_do_step,auvxpwy,auvxpwy)</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> FPT_DO_STEP(fpt_do_step_symmetric,auvxpwy_symmetric,auvxpwy_symmetric)</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="comment">/*FPT_DO_STEP(fpt_do_step_symmetric_u,auvxpwy_symmetric,auvxpwy)</span></div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="comment">FPT_DO_STEP(fpt_do_step_symmetric_l,auvxpwy,auvxpwy_symmetric)*/</span></div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> </div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> static inline <span class="keywordtype">void</span> fpt_do_step_symmetric_u(<span class="keywordtype">double</span> _Complex *a, <span class="keywordtype">double</span> _Complex *b,</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="keywordtype">double</span> *a11, <span class="keywordtype">double</span> *a12, <span class="keywordtype">double</span> *a21, <span class="keywordtype">double</span> *a22, <span class="keywordtype">double</span> *x,</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="keywordtype">double</span> gam, <span class="keywordtype">int</span> tau, <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> set)</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> {</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="keywordtype">int</span> length = 1<<(tau+1);</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="keywordtype">double</span> norm = 1.0/(length<<1);</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> UNUSED(a21); UNUSED(a22);</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> </div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="comment">/* Compensate for factors introduced by a raw DCT-III. */</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> a[0] *= 2.0;</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> b[0] *= 2.0;</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> </div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment">/* Compute function values from Chebyshev-coefficients using a DCT-III. */</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> fftw_execute_r2r(set->plans_dct3[tau-1],(<span class="keywordtype">double</span>*)a,(<span class="keywordtype">double</span>*)a);</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> fftw_execute_r2r(set->plans_dct3[tau-1],(<span class="keywordtype">double</span>*)b,(<span class="keywordtype">double</span>*)b);</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> </div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="comment">/*for (k = 0; k < length; k++)*/</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="comment">/*{*/</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="comment">/*fprintf(stderr,"fpt_do_step: a11 = %le, a12 = %le, a21 = %le, a22 = %le\n",*/</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="comment">/* a11[k],a12[k],a21[k],a22[k]);*/</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="comment">/*}*/</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> </div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="comment">/* Check, if gamma is zero. */</span></div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordflow">if</span> (gam == 0.0)</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> {</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="comment">/*fprintf(stderr,"gamma == 0!\n");*/</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="comment">/* Perform multiplication only for second row. */</span></div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> auvxpwy_symmetric_1(norm,b,b,a12,a,a11,length,x);</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> }</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> {</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="comment">/*fprintf(stderr,"gamma != 0!\n");*/</span></div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="comment">/* Perform multiplication for both rows. */</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> auvxpwy_symmetric_1(norm,set->z,b,a12,a,a11,length,x);</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> auvxpwy_symmetric(norm*gam,a,a,a11,b,a12,length);</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> memcpy(b,set->z,length*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="comment">/* Compute Chebyshev-coefficients using a DCT-II. */</span></div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> fftw_execute_r2r(set->plans_dct2[tau-1],(<span class="keywordtype">double</span>*)a,(<span class="keywordtype">double</span>*)a);</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="comment">/* Compensate for factors introduced by a raw DCT-II. */</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> a[0] *= 0.5;</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> }</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> </div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="comment">/* Compute Chebyshev-coefficients using a DCT-II. */</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> fftw_execute_r2r(set->plans_dct2[tau-1],(<span class="keywordtype">double</span>*)b,(<span class="keywordtype">double</span>*)b);</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="comment">/* Compensate for factors introduced by a raw DCT-II. */</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> b[0] *= 0.5;</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> }</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> fpt_do_step_symmetric_l(<span class="keywordtype">double</span> _Complex *a, <span class="keywordtype">double</span> _Complex *b,</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="keywordtype">double</span> *a11, <span class="keywordtype">double</span> *a12, <span class="keywordtype">double</span> *a21, <span class="keywordtype">double</span> *a22, <span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> gam, <span class="keywordtype">int</span> tau, <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations [...]
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> {</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="keywordtype">int</span> length = 1<<(tau+1);</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="keywordtype">double</span> norm = 1.0/(length<<1);</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> </div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="comment">/* Compensate for factors introduced by a raw DCT-III. */</span></div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> a[0] *= 2.0;</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> b[0] *= 2.0;</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> </div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> UNUSED(a11); UNUSED(a12);</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> </div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="comment">/* Compute function values from Chebyshev-coefficients using a DCT-III. */</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> fftw_execute_r2r(set->plans_dct3[tau-1],(<span class="keywordtype">double</span>*)a,(<span class="keywordtype">double</span>*)a);</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> fftw_execute_r2r(set->plans_dct3[tau-1],(<span class="keywordtype">double</span>*)b,(<span class="keywordtype">double</span>*)b);</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> </div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="comment">/*for (k = 0; k < length; k++)*/</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="comment">/*{*/</span></div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="comment">/*fprintf(stderr,"fpt_do_step: a11 = %le, a12 = %le, a21 = %le, a22 = %le\n",*/</span></div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="comment">/* a11[k],a12[k],a21[k],a22[k]);*/</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="comment">/*}*/</span></div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> </div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="comment">/* Check, if gamma is zero. */</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="keywordflow">if</span> (gam == 0.0)</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> {</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="comment">/*fprintf(stderr,"gamma == 0!\n");*/</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="comment">/* Perform multiplication only for second row. */</span></div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> auvxpwy_symmetric(norm,b,b,a22,a,a21,length);</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> }</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> {</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="comment">/*fprintf(stderr,"gamma != 0!\n");*/</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="comment">/* Perform multiplication for both rows. */</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> auvxpwy_symmetric(norm,set->z,b,a22,a,a21,length);</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> auvxpwy_symmetric_2(norm*gam,a,a,a21,b,a22,length,x);</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> memcpy(b,set->z,length*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="comment">/* Compute Chebyshev-coefficients using a DCT-II. */</span></div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> fftw_execute_r2r(set->plans_dct2[tau-1],(<span class="keywordtype">double</span>*)a,(<span class="keywordtype">double</span>*)a);</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="comment">/* Compensate for factors introduced by a raw DCT-II. */</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> a[0] *= 0.5;</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> }</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> </div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="comment">/* Compute Chebyshev-coefficients using a DCT-II. */</span></div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> fftw_execute_r2r(set->plans_dct2[tau-1],(<span class="keywordtype">double</span>*)b,(<span class="keywordtype">double</span>*)b);</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="comment">/* Compensate for factors introduced by a raw DCT-II. */</span></div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> b[0] *= 0.5;</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> }</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> </div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="preprocessor">#define FPT_DO_STEP_TRANSPOSED(NAME,M1_FUNCTION,M2_FUNCTION) \</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="preprocessor">static inline void NAME(double _Complex *a, double _Complex *b, double *a11, \</span></div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="preprocessor"> double *a12, double *a21, double *a22, double g, int tau, fpt_set set) \</span></div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="preprocessor"> int length = 1<<(tau+1); \</span></div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="preprocessor"> double norm = 1.0/(length<<1); \</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="preprocessor"> </span><span class="comment">/* Compute function values from Chebyshev-coefficients using a DCT-III. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="preprocessor"> fftw_execute_r2r(set->plans_dct3[tau-1],(double*)a,(double*)a); \</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="preprocessor"> fftw_execute_r2r(set->plans_dct3[tau-1],(double*)b,(double*)b); \</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="preprocessor"> </span><span class="comment">/* Perform matrix multiplication. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="preprocessor"> M1_FUNCTION(norm,g,set->z,a,a11,b,a21,length); \</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="preprocessor"> M2_FUNCTION(norm,g,b,a,a12,b,a22,length); \</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="preprocessor"> memcpy(a,set->z,length*sizeof(double _Complex)); \</span></div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="preprocessor"> </span><span class="comment">/* Compute Chebyshev-coefficients using a DCT-II. */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="preprocessor"> fftw_execute_r2r(set->plans_dct2[tau-1],(double*)a,(double*)a); \</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="preprocessor"> fftw_execute_r2r(set->plans_dct2[tau-1],(double*)b,(double*)b); \</span></div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> FPT_DO_STEP_TRANSPOSED(fpt_do_step_t,abuvxpwy,abuvxpwy)</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> FPT_DO_STEP_TRANSPOSED(fpt_do_step_t_symmetric,abuvxpwy_symmetric1,abuvxpwy_symmetric2)</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="comment">/*FPT_DO_STEP_TRANSPOSED(fpt_do_step_t_symmetric_u,abuvxpwy_symmetric1_1,abuvxpwy_symmetric1_2)*/</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="comment">/*FPT_DO_STEP_TRANSPOSED(fpt_do_step_t_symmetric_l,abuvxpwy_symmetric2_2,abuvxpwy_symmetric2_1)*/</span></div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> </div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> </div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> static inline <span class="keywordtype">void</span> fpt_do_step_t_symmetric_u(<span class="keywordtype">double</span> _Complex *a,</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="keywordtype">double</span> _Complex *b, <span class="keywordtype">double</span> *a11, <span class="keywordtype">double</span> *a12, <span class="keywordtype">double</span> *x,</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="keywordtype">double</span> gam, <span class="keywordtype">int</span> tau, <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> set)</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> {</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="keywordtype">int</span> length = 1<<(tau+1);</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="keywordtype">double</span> norm = 1.0/(length<<1);</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> </div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="comment">/* Compute function values from Chebyshev-coefficients using a DCT-III. */</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> fftw_execute_r2r(set->plans_dct3[tau-1],(<span class="keywordtype">double</span>*)a,(<span class="keywordtype">double</span>*)a);</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> fftw_execute_r2r(set->plans_dct3[tau-1],(<span class="keywordtype">double</span>*)b,(<span class="keywordtype">double</span>*)b);</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> </div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="comment">/* Perform matrix multiplication. */</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> abuvxpwy_symmetric1_1(norm,gam,set->z,a,a11,b,length,x);</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> abuvxpwy_symmetric1_2(norm,gam,b,a,a12,b,length,x);</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> memcpy(a,set->z,length*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> </div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="comment">/* Compute Chebyshev-coefficients using a DCT-II. */</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> fftw_execute_r2r(set->plans_dct2[tau-1],(<span class="keywordtype">double</span>*)a,(<span class="keywordtype">double</span>*)a);</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> fftw_execute_r2r(set->plans_dct2[tau-1],(<span class="keywordtype">double</span>*)b,(<span class="keywordtype">double</span>*)b);</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> }</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> fpt_do_step_t_symmetric_l(<span class="keywordtype">double</span> _Complex *a,</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="keywordtype">double</span> _Complex *b, <span class="keywordtype">double</span> *a21, <span class="keywordtype">double</span> *a22,</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> gam, <span class="keywordtype">int</span> tau, <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>)</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> {</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="keywordtype">int</span> length = 1<<(tau+1);</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="keywordtype">double</span> norm = 1.0/(length<<1);</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> </div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="comment">/* Compute function values from Chebyshev-coefficients using a DCT-III. */</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> fftw_execute_r2r(set->plans_dct3[tau-1],(<span class="keywordtype">double</span>*)a,(<span class="keywordtype">double</span>*)a);</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> fftw_execute_r2r(set->plans_dct3[tau-1],(<span class="keywordtype">double</span>*)b,(<span class="keywordtype">double</span>*)b);</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> </div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="comment">/* Perform matrix multiplication. */</span></div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> abuvxpwy_symmetric2_2(norm,gam,set->z,a,b,a21,length,x);</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> abuvxpwy_symmetric2_1(norm,gam,b,a,b,a22,length,x);</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> memcpy(a,set->z,length*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> </div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="comment">/* Compute Chebyshev-coefficients using a DCT-II. */</span></div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> fftw_execute_r2r(set->plans_dct2[tau-1],(<span class="keywordtype">double</span>*)a,(<span class="keywordtype">double</span>*)a);</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> fftw_execute_r2r(set->plans_dct2[tau-1],(<span class="keywordtype">double</span>*)b,(<span class="keywordtype">double</span>*)b);</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> }</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> </div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> </div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="keyword">static</span> <span class="keywordtype">void</span> eval_clenshaw(<span class="keyword">const</span> <span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> size, <span class="keywordtype">int</span> k, <span class="keyword">const</span> <span class="keywordtype">double</span> *alpha,</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *beta, <span class="keyword">const</span> <span class="keywordtype">double</span> *gam)</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> {</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="comment">/* Evaluate the associated Legendre polynomial P_{k,nleg} (l,x) for the vector</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="comment"> * of knots x[0], ..., x[size-1] by the Clenshaw algorithm</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="keywordtype">int</span> i,j;</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="keywordtype">double</span> a,b,x_val_act,a_old;</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *x_act;</div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="keywordtype">double</span> *y_act;</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *alpha_act, *beta_act, *gamma_act;</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> </div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="comment">/* Traverse all nodes. */</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> x_act = x;</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> y_act = y;</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> {</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> a = 1.0;</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> b = 0.0;</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> x_val_act = *x_act;</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> </div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="keywordflow">if</span> (k == 0)</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> {</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> *y_act = 1.0;</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> }</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> {</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> alpha_act = &(alpha[k]);</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> beta_act = &(beta[k]);</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> gamma_act = &(gam[k]);</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="keywordflow">for</span> (j = k; j > 1; j--)</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> {</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> a_old = a;</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> a = b + a_old*((*alpha_act)*x_val_act+(*beta_act));</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> b = a_old*(*gamma_act);</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> alpha_act--;</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> beta_act--;</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> gamma_act--;</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> }</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> *y_act = (a*((*alpha_act)*x_val_act+(*beta_act))+b);</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> }</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> x_act++;</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> y_act++;</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> }</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> }</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> </div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="keyword">static</span> <span class="keywordtype">void</span> eval_clenshaw2(<span class="keyword">const</span> <span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *z, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> size1, <span class="keywordtype">int</span> size, <span class="keywordtype">int</span> k, <span class="keyword">const</sp [...]
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *beta, <span class="keyword">const</span> <span class="keywordtype">double</span> *gam)</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> {</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="comment">/* Evaluate the associated Legendre polynomial P_{k,nleg} (l,x) for the vector</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="comment"> * of knots x[0], ..., x[size-1] by the Clenshaw algorithm</span></div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="keywordtype">int</span> i,j;</div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="keywordtype">double</span> a,b,x_val_act,a_old;</div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *x_act;</div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="keywordtype">double</span> *y_act, *z_act;</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *alpha_act, *beta_act, *gamma_act;</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> </div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="comment">/* Traverse all nodes. */</span></div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> x_act = x;</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> y_act = y;</div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> z_act = z;</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> {</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> a = 1.0;</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> b = 0.0;</div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> x_val_act = *x_act;</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> </div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="keywordflow">if</span> (k == 0)</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> {</div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> *y_act = 1.0;</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> *z_act = 0.0;</div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> }</div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> {</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> alpha_act = &(alpha[k]);</div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> beta_act = &(beta[k]);</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> gamma_act = &(gam[k]);</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="keywordflow">for</span> (j = k; j > 1; j--)</div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> {</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> a_old = a;</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> a = b + a_old*((*alpha_act)*x_val_act+(*beta_act));</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> b = a_old*(*gamma_act);</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> alpha_act--;</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> beta_act--;</div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> gamma_act--;</div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> }</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="keywordflow">if</span> (i < size1)</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> *z_act = a;</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> *y_act = (a*((*alpha_act)*x_val_act+(*beta_act))+b);</div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> }</div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> </div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> x_act++;</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> y_act++;</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> z_act++;</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> }</div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="comment">/*gamma_act++;</span></div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="comment"> FILE *f = fopen("/Users/keiner/Desktop/nfsft_debug.txt","a");</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="comment"> fprintf(f,"size1: %10d, size: %10d\n",size1,size);</span></div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="comment"> fclose(f);*/</span></div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> }</div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> </div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="keyword">static</span> <span class="keywordtype">int</span> eval_clenshaw_thresh2(<span class="keyword">const</span> <span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *z, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> size, <span class="keywordtype">int</span> k,</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *alpha, <span class="keyword">const</span> <span class="keywordtype">double</span> *beta, <span class="keyword">const</span> <span class="keywordtype">double</span> *gam, <span class="keyword">const</span></div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="keywordtype">double</span> threshold)</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> {</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="comment">/* Evaluate the associated Legendre polynomial P_{k,nleg} (l,x) for the vector</span></div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="comment"> * of knots x[0], ..., x[size-1] by the Clenshaw algorithm</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="keywordtype">int</span> i,j;</div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="keywordtype">double</span> a,b,x_val_act,a_old;</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *x_act;</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="keywordtype">double</span> *y_act, *z_act;</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *alpha_act, *beta_act, *gamma_act;</div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> R max = -nfft_float_property(NFFT_R_MAX);</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="keyword">const</span> R t = LOG10(FABS(threshold));</div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> </div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="comment">/* Traverse all nodes. */</span></div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> x_act = x;</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> y_act = y;</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> z_act = z;</div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> {</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> a = 1.0;</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> b = 0.0;</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> x_val_act = *x_act;</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> </div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="keywordflow">if</span> (k == 0)</div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> {</div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> *y_act = 1.0;</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> *z_act = 0.0;</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> }</div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> {</div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> alpha_act = &(alpha[k]);</div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> beta_act = &(beta[k]);</div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> gamma_act = &(gam[k]);</div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="keywordflow">for</span> (j = k; j > 1; j--)</div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> {</div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> a_old = a;</div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> a = b + a_old*((*alpha_act)*x_val_act+(*beta_act));</div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> b = a_old*(*gamma_act);</div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> alpha_act--;</div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> beta_act--;</div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> gamma_act--;</div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> }</div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> *z_act = a;</div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> *y_act = (a*((*alpha_act)*x_val_act+(*beta_act))+b);</div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> max = FMAX(max,LOG10(FABS(*y_act)));</div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="keywordflow">if</span> (max > t)</div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> }</div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> x_act++;</div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> y_act++;</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> z_act++;</div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> }</div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> }</div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> </div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> eval_sum_clenshaw_fast(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> M,</div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="keyword">const</span> <span class="keywordtype">double</span> _Complex *a, <span class="keyword">const</span> <span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> _Complex *y,</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *alpha, <span class="keyword">const</span> <span class="keywordtype">double</span> *beta, <span class="keyword">const</span> <span class="keywordtype">double</span> *gam,</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> <span class="keyword">const</span> <span class="keywordtype">double</span> lambda)</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> {</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="keywordtype">int</span> j,k;</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="keywordtype">double</span> _Complex tmp1, tmp2, tmp3;</div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="keywordtype">double</span> xc;</div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> </div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> <span class="comment">/*fprintf(stderr, "Executing eval_sum_clenshaw_fast.\n"); </span></div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <span class="comment"> fprintf(stderr, "Before transform:\n"); </span></div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="comment"> for (j = 0; j < N; j++)</span></div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="comment"> fprintf(stderr, "a[%4d] = %e.\n", j, a[j]); </span></div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> <span class="comment"> for (j = 0; j <= M; j++)</span></div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="comment"> fprintf(stderr, "x[%4d] = %e, y[%4d] = %e.\n", j, x[j], j, y[j]);*/</span></div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> </div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="keywordflow">if</span> (N == 0)</div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="keywordflow">for</span> (j = 0; j <= M; j++)</div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> y[j] = a[0];</div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> {</div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="keywordflow">for</span> (j = 0; j <= M; j++)</div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> {</div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="preprocessor">#if 0</span></div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="preprocessor"></span> xc = x[j];</div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> tmp2 = a[N];</div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> tmp1 = a[N-1] + (alpha[N-1] * xc + beta[N-1])*tmp2;</div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <span class="keywordflow">for</span> (k = N-1; k > 0; k--)</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> {</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> tmp3 = a[k-1]</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> + (alpha[k-1] * xc + beta[k-1]) * tmp1</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> + gam[k] * tmp2;</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> tmp2 = tmp1;</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> tmp1 = tmp3;</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> }</div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> y[j] = lambda * tmp1;</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <span class="preprocessor"></span> xc = x[j];</div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> tmp1 = a[N-1];</div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> tmp2 = a[N];</div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="keywordflow">for</span> (k = N-1; k > 0; k--)</div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> {</div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> tmp3 = a[k-1] + tmp2 * gam[k];</div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> tmp2 *= (alpha[k] * xc + beta[k]);</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> tmp2 += tmp1;</div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> tmp1 = tmp3;</div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="comment">/*if (j == 1515) </span></div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="comment"> fprintf(stderr, "k = %d, tmp1 = %e, tmp2 = %e.\n", k, tmp1, tmp2); </span></div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> <span class="comment"> }*/</span></div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> }</div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> tmp2 *= (alpha[0] * xc + beta[0]);</div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="comment">//fprintf(stderr, "alpha[0] = %e, beta[0] = %e.\n", alpha[0], beta[0]); </span></div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> y[j] = lambda * (tmp2 + tmp1);</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="comment">//fprintf(stderr, "lambda = %e.\n", lambda); </span></div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> }</div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> <span class="comment">/*fprintf(stderr, "Before transform:\n"); </span></div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="comment"> for (j = 0; j < N; j++)</span></div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="comment"> fprintf(stderr, "a[%4d] = %e.\n", j, a[j]); </span></div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> <span class="comment"> for (j = 0; j <= M; j++)</span></div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="comment"> fprintf(stderr, "x[%4d] = %e, y[%4d] = %e.\n", j, x[j], j, y[j]); */</span></div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> }</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> </div>
-<div class="line"><a name="l00715"></a><span class="lineno"><a class="code" href="fpt_8c.html#a509209ea5b6e210805a37cd80579c2c5"> 715</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="fpt_8c.html#a509209ea5b6e210805a37cd80579c2c5" title="Clenshaw algorithm.">eval_sum_clenshaw_transposed</a>(<span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">double</span> _Complex* a, <spa [...]
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> <span class="keywordtype">double</span> _Complex *y, <span class="keywordtype">double</span> _Complex *temp, <span class="keywordtype">double</span> *alpha, <span class="keywordtype">double</span> *beta, <span class="keywordtype">double</span> *gam,</div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> <span class="keywordtype">double</span> lambda)</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> {</div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="keywordtype">int</span> j,k;</div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> <span class="keywordtype">double</span> _Complex* it1 = temp;</div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> <span class="keywordtype">double</span> _Complex* it2 = y;</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> <span class="keywordtype">double</span> _Complex aux;</div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> </div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="comment">/* Compute final result by multiplying with the constant lambda */</span></div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> a[0] = 0.0;</div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> <span class="keywordflow">for</span> (j = 0; j <= M; j++)</div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> {</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> it2[j] = lambda * y[j];</div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> a[0] += it2[j];</div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> }</div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> </div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> <span class="keywordflow">if</span> (N > 0)</div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> {</div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> <span class="comment">/* Compute final step. */</span></div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> a[1] = 0.0;</div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> <span class="keywordflow">for</span> (j = 0; j <= M; j++)</div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> {</div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> it1[j] = it2[j];</div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> it2[j] = it2[j] * (alpha[0] * x[j] + beta[0]);</div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> a[1] += it2[j];</div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> }</div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> </div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> <span class="keywordflow">for</span> (k = 2; k <= N; k++)</div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> {</div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> a[k] = 0.0;</div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> <span class="keywordflow">for</span> (j = 0; j <= M; j++)</div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> {</div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> aux = it1[j];</div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> it1[j] = it2[j];</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> it2[j] = it2[j]*(alpha[k-1] * x[j] + beta[k-1]) + gam[k-1] * aux;</div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> a[k] += it2[j];</div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> }</div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> }</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> }</div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> }</div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> </div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> </div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> fpt_init(<span class="keyword">const</span> <span class="keywordtype">int</span> M, <span class="keyword">const</span> <span class="keywordtype">int</span> t, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> {</div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> <span class="keywordtype">int</span> plength;</div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="keywordtype">int</span> tau;</div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="keywordtype">int</span> m;</div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> nthreads = nfft_get_omp_num_threads();</div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> <span class="comment">/* Allocate memory for new DPT set. */</span></div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set_s</a> *<span class="keyword">set</span> = (<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set_s</a>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<a class="code" href="s [...]
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> </div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> <span class="comment">/* Save parameters in structure. */</span></div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="keyword">set</span>->flags = flags;</div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> </div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> <span class="keyword">set</span>->M = M;</div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="keyword">set</span>->t = t;</div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="keyword">set</span>->N = 1<<t;</div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> </div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <span class="comment">/* Allocate memory for M transforms. */</span></div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> <span class="keyword">set</span>->dpt = (<a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data</a>));</div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> </div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> <span class="comment">/* Initialize with NULL pointer. */</span></div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> <span class="keywordflow">for</span> (m = 0; m < <span class="keyword">set</span>->M; m++)</div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> set->dpt[m].steps = 0;</div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> </div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> <span class="comment">/* Create arrays with Chebyshev nodes. */</span></div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> </div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="comment">/* Initialize array with Chebyshev coefficients for the polynomial x. This</span></div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> <span class="comment"> * would be trivially an array containing a 1 as second entry with all other</span></div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="comment"> * coefficients set to zero. In order to compensate for the multiplicative</span></div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <span class="comment"> * factor 2 introduced by the DCT-III, we set this coefficient to 0.5 here. */</span></div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> </div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> <span class="comment">/* Allocate memory for array of pointers to node arrays. */</span></div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> set->xcvecs = (<span class="keywordtype">double</span>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((set->t)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>*));</div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="comment">/* For each polynomial length starting with 4, compute the Chebyshev nodes</span></div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> <span class="comment"> * using a DCT-III. */</span></div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> plength = 4;</div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> <span class="keywordflow">for</span> (tau = 1; tau < t+1; tau++)</div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> {</div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> <span class="comment">/* Allocate memory for current array. */</span></div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> <span class="keyword">set</span>->xcvecs[tau-1] = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(plength*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="keywordflow">for</span> (k = 0; k < plength; k++)</div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> {</div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> <span class="keyword">set</span>->xcvecs[tau-1][k] = cos(((k+0.5)*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)/plength);</div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> }</div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> plength = plength << 1;</div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> }</div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> </div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> <span class="keyword">set</span>->work = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((2*set->N)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> <span class="keyword">set</span>->result = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((2*set->N)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> </div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> <span class="keyword">set</span>->lengths = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((set->t<span class="comment">/*-1*/</span>)*<span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> <span class="keyword">set</span>->plans_dct2 = (fftw_plan*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_plan)*(<span class="keyword">set</span>->t<span class="comment">/*-1*/</span>));</div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> <span class="keyword">set</span>->kindsr = (fftw_r2r_kind*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*<span class="keyword">sizeof</span>(fftw_r2r_kind));</div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> <span class="keyword">set</span>->kindsr[0] = FFTW_REDFT10;</div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="keyword">set</span>->kindsr[1] = FFTW_REDFT10;</div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> <span class="keywordflow">for</span> (tau = 0, plength = 4; tau < <span class="keyword">set</span>->t<span class="comment">/*-1*/</span>; tau++, plength<<=1)</div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> {</div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> <span class="keyword">set</span>->lengths[tau] = plength;</div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> <span class="preprocessor"></span><span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> <span class="preprocessor"></span>{</div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> fftw_plan_with_nthreads(nthreads);</div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> <span class="preprocessor"></span> <span class="keyword">set</span>->plans_dct2[tau] =</div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> fftw_plan_many_r2r(1, &set->lengths[tau], 2, (<span class="keywordtype">double</span>*)set->work, NULL,</div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> 2, 1, (<span class="keywordtype">double</span>*)set->result, NULL, 2, 1,set->kindsr,</div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> 0);</div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> </div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="comment">/* Check if fast transform is activated. */</span></div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> <span class="keywordflow">if</span> (!(set->flags & FPT_NO_FAST_ALGORITHM))</div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> {</div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> <span class="keyword">set</span>->vec3 = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(set->N*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> <span class="keyword">set</span>->vec4 = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(set->N*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> <span class="keyword">set</span>->z = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(set->N*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> </div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="keyword">set</span>->plans_dct3 = (fftw_plan*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_plan)*(<span class="keyword">set</span>->t<span class="comment">/*-1*/</span>));</div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> <span class="keyword">set</span>->kinds = (fftw_r2r_kind*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*<span class="keyword">sizeof</span>(fftw_r2r_kind));</div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> <span class="keyword">set</span>->kinds[0] = FFTW_REDFT01;</div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="keyword">set</span>->kinds[1] = FFTW_REDFT01;</div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="keywordflow">for</span> (tau = 0, plength = 4; tau < <span class="keyword">set</span>->t<span class="comment">/*-1*/</span>; tau++, plength<<=1)</div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> {</div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="keyword">set</span>->lengths[tau] = plength;</div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> <span class="preprocessor"></span><span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> <span class="preprocessor"></span>{</div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> fftw_plan_with_nthreads(nthreads);</div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="preprocessor"></span> <span class="keyword">set</span>->plans_dct3[tau] =</div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> fftw_plan_many_r2r(1, &set->lengths[tau], 2, (<span class="keywordtype">double</span>*)set->work, NULL,</div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> 2, 1, (<span class="keywordtype">double</span>*)set->result, NULL, 2, 1, set->kinds,</div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> 0);</div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->lengths);</div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->kinds);</div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->kindsr);</div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <span class="keyword">set</span>->lengths = NULL;</div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="keyword">set</span>->kinds = NULL;</div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> <span class="keyword">set</span>->kindsr = NULL;</div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> }</div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> </div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> <span class="keywordflow">if</span> (!(set->flags & FPT_NO_DIRECT_ALGORITHM))</div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> {</div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> <span class="keyword">set</span>->xc_slow = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((set->N+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> <span class="keyword">set</span>->temp = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((set->N+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> }</div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> </div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> <span class="comment">/* Return the newly created DPT set. */</span></div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> <span class="keywordflow">return</span> <span class="keyword">set</span>;</div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> }</div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> </div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> <span class="keywordtype">void</span> fpt_precompute(<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>, <span class="keyword">const</span> <span class="keywordtype">int</span> m, <span class="keywordtype">double</span> *alpha, <span class="keywordtype">double</span> *beta,</div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> <span class="keywordtype">double</span> *gam, <span class="keywordtype">int</span> k_start, <span class="keyword">const</span> <span class="keywordtype">double</span> threshold)</div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> {</div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> </div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> <span class="keywordtype">int</span> tau; </div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> <span class="keywordtype">int</span> l; </div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> <span class="keywordtype">int</span> plength; </div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> <span class="keywordtype">int</span> degree; </div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> <span class="keywordtype">int</span> firstl; </div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> <span class="keywordtype">int</span> lastl; </div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="keywordtype">int</span> plength_stab; </div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> <span class="keywordtype">int</span> degree_stab; </div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> <span class="keywordtype">double</span> *a11; </div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> <span class="keywordtype">double</span> *a12; </div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> <span class="keywordtype">double</span> *a21; </div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> <span class="keywordtype">double</span> *a22; </div>
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *calpha;</div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *cbeta;</div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="keyword">const</span> <span class="keywordtype">double</span> *cgamma;</div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> <span class="keywordtype">int</span> needstab = 0; </div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> <span class="keywordtype">int</span> k_start_tilde;</div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> <span class="keywordtype">int</span> N_tilde;</div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> <span class="keywordtype">int</span> clength;</div>
-<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> <span class="keywordtype">int</span> clength_1;</div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> <span class="keywordtype">int</span> clength_2;</div>
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> <span class="keywordtype">int</span> t_stab, N_stab;</div>
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> <a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data</a> *data;</div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> </div>
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> <span class="comment">/* Get pointer to DPT data. */</span></div>
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> data = &(<span class="keyword">set</span>->dpt[m]);</div>
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> </div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> <span class="comment">/* Check, if already precomputed. */</span></div>
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> <span class="keywordflow">if</span> (data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a> != NULL)</div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> </div>
-<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> <span class="comment">/* Save k_start. */</span></div>
-<div class="line"><a name="l00928"></a><span class="lineno"> 928</span> data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a> = k_start;</div>
-<div class="line"><a name="l00929"></a><span class="lineno"> 929</span> </div>
-<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a> = gam[0];</div>
-<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> </div>
-<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <span class="comment">/* Check if fast transform is activated. */</span></div>
-<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> <span class="keywordflow">if</span> (!(set->flags & FPT_NO_FAST_ALGORITHM))</div>
-<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> {</div>
-<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> <span class="comment">/* Save recursion coefficients. */</span></div>
-<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> data-><a class="code" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519" title="TODO Add comment here.">alphaN</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((set->t-1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> data-><a class="code" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d" title="TODO Add comment here.">betaN</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((set->t-1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> data-><a class="code" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a" title="TODO Add comment here.">gammaN</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((set->t-1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> </div>
-<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> <span class="keywordflow">for</span> (tau = 2; tau <= <span class="keyword">set</span>->t; tau++)</div>
-<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> {</div>
-<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> </div>
-<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> data-><a class="code" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519" title="TODO Add comment here.">alphaN</a>[tau-2] = alpha[1<<tau];</div>
-<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> data-><a class="code" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d" title="TODO Add comment here.">betaN</a>[tau-2] = beta[1<<tau];</div>
-<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> data-><a class="code" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a" title="TODO Add comment here.">gammaN</a>[tau-2] = gam[1<<tau];</div>
-<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> }</div>
-<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> </div>
-<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> data-><a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e" title="TODO Add comment here.">alpha_0</a> = alpha[1];</div>
-<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> data-><a class="code" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa" title="TODO Add comment here.">beta_0</a> = beta[1];</div>
-<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> </div>
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> k_start_tilde = <a class="code" href="fpt_8c.html#a58f899926cc6e95ea54dd68d131979b8" title="Minimum degree at top of a cascade.">K_START_TILDE</a>(data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>,X(next_power_of_2)(data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment [...]
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="comment">/*set->N*/</span>);</div>
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> N_tilde = N_TILDE(set->N);</div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> </div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> <span class="comment">/* Allocate memory for the cascade with t = log_2(N) many levels. */</span></div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a> = (<a class="code" href="structfpt__step__.html" title="Holds data for a single multiplication step in the cascade summation.">fpt_step</a>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<a class [...]
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> </div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> <span class="comment">/* For tau = 1,...t compute the matrices U_{n,tau,l}. */</span></div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> plength = 4;</div>
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> <span class="keywordflow">for</span> (tau = 1; tau < <span class="keyword">set</span>->t; tau++)</div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> {</div>
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> <span class="comment">/* Compute auxilliary values. */</span></div>
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> degree = plength>>1;</div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="comment">/* Compute first l. */</span></div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> firstl = <a class="code" href="fpt_8c.html#ac81f7eac1a01b06e91817857f47b9804" title="Index of first block of four functions at level.">FIRST_L</a>(k_start_tilde,plength);</div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="comment">/* Compute last l. */</span></div>
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> lastl = <a class="code" href="fpt_8c.html#ac9f7e1529d635e3357d1e081ddf7e349" title="Index of last block of four functions at level.">LAST_L</a>(N_tilde,plength);</div>
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> </div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> <span class="comment">/* Allocate memory for current level. This level will contain 2^{t-tau-1}</span></div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> <span class="comment"> * many matrices. */</span></div>
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau] = (<a class="code" href="structfpt__step__.html" title="Holds data for a single multiplication step in the cascade summation.">fpt_step</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<a [...]
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> * (lastl+1));</div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> </div>
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> <span class="comment">/* For l = 0,...2^{t-tau-1}-1 compute the matrices U_{n,tau,l}. */</span></div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> <span class="keywordflow">for</span> (l = firstl; l <= lastl; l++)</div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> {</div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> <span class="keywordflow">if</span> (set->flags & FPT_AL_SYMMETRY && IS_SYMMETRIC(l,m,plength))</div>
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> {</div>
-<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> <span class="comment">//fprintf(stderr,"fpt_precompute(%d): symmetric step\n",m);</span></div>
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> clength = plength/2;</div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> }</div>
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> {</div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> clength = plength;</div>
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> }</div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> </div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> <span class="comment">/* Allocate memory for the components of U_{n,tau,l}. */</span></div>
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> a11 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength);</div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> a12 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength);</div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> a21 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength);</div>
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> a22 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength);</div>
-<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> </div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> <span class="comment">/* Evaluate the associated polynomials at the 2^{tau+1} Chebyshev</span></div>
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> <span class="comment"> * nodes. */</span></div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> </div>
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> <span class="comment">/* Get the pointers to the three-term recurrence coeffcients. */</span></div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> calpha = &(alpha[plength*l+1+1]);</div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> cbeta = &(beta[plength*l+1+1]);</div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> cgamma = &(gam[plength*l+1+1]);</div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> </div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="keywordflow">if</span> (set->flags & FPT_NO_STABILIZATION)</div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> {</div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> <span class="comment">/* Evaluate P_{2^{tau}-2}^n(\cdot,2^{tau+1}l+2). */</span></div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> calpha--;</div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> cbeta--;</div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> cgamma--;</div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> eval_clenshaw2(set->xcvecs[tau-1], a11, a21, clength, clength, degree-1, calpha, cbeta,</div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> cgamma);</div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> eval_clenshaw2(set->xcvecs[tau-1], a12, a22, clength, clength, degree, calpha, cbeta,</div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> cgamma);</div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> needstab = 0;</div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> }</div>
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> {</div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> calpha--;</div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> cbeta--;</div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> cgamma--;</div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> <span class="comment">/* Evaluate P_{2^{tau}-1}^n(\cdot,2^{tau+1}l+1). */</span></div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> needstab = eval_clenshaw_thresh2(set->xcvecs[tau-1], a11, a21, clength,</div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> degree-1, calpha, cbeta, cgamma, threshold);</div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> <span class="keywordflow">if</span> (needstab == 0)</div>
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> {</div>
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span> <span class="comment">/* Evaluate P_{2^{tau}}^n(\cdot,2^{tau+1}l+1). */</span></div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> needstab = eval_clenshaw_thresh2(set->xcvecs[tau-1], a12, a22, clength,</div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> degree, calpha, cbeta, cgamma, threshold);</div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span> }</div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> }</div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> </div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> </div>
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span> <span class="comment">/* Check if stabilization needed. */</span></div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> <span class="keywordflow">if</span> (needstab == 0)</div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span> {</div>
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a11 = (<span class="keywordtype">double</span>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>*));</div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a12 = (<span class="keywordtype">double</span>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>*));</div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a21 = (<span class="keywordtype">double</span>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>*));</div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a> = (<span class="keywordtype">double</span>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span cl [...]
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<spa [...]
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> <span class="comment">/* No stabilization needed. */</span></div>
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a11[0] = a11;</div>
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a12[0] = a12;</div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a21[0] = a21;</div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0] = a22;</div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0] = gam[plength*l+1+1];</div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#a71dc6483b4f3b958519bdafeae2c1dbf" title="Indicates if the values contained represent a fast or a slow stabilized step.">stable</a> = <span class="keyword">true</span>;</div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> }</div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> {</div>
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span> <span class="comment">/* Stabilize. */</span></div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> degree_stab = degree*(2*l+1);</div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span> X(next_power_of_2_exp)((l+1)*(1<<(tau+1)),&N_stab,&t_stab);</div>
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> </div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> <span class="comment">/* Old arrays are to small. */</span></div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(a11);</div>
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(a12);</div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(a21);</div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(a22);</div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> </div>
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a11 = (<span class="keywordtype">double</span>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>*));</div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a12 = (<span class="keywordtype">double</span>**)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>*));</div>
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a21 = (<span class="keywordtype">double</span>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>*));</div>
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a> = (<span class="keywordtype">double</span>**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span cl [...]
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<spa [...]
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span> </div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> plength_stab = N_stab;</div>
-<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> </div>
-<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> <span class="keywordflow">if</span> (set->flags & FPT_AL_SYMMETRY)</div>
-<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> {</div>
-<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> <span class="keywordflow">if</span> (m <= 1)</div>
-<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> {</div>
-<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> <span class="comment">/* This should never be executed */</span></div>
-<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> clength_1 = plength_stab;</div>
-<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> clength_2 = plength_stab;</div>
-<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> <span class="comment">/* Allocate memory for arrays. */</span></div>
-<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> a11 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength_1);</div>
-<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> a12 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength_1);</div>
-<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> a21 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength_2);</div>
-<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> a22 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength_2);</div>
-<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> <span class="comment">/* Get the pointers to the three-term recurrence coeffcients. */</span></div>
-<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span> calpha = &(alpha[1]); cbeta = &(beta[1]); cgamma = &(gam[1]);</div>
-<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> eval_clenshaw2(set->xcvecs[t_stab-2], a11, a21, clength_1,</div>
-<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> clength_2, degree_stab-1, calpha, cbeta, cgamma);</div>
-<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> eval_clenshaw2(set->xcvecs[t_stab-2], a12, a22, clength_1,</div>
-<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> clength_2, degree_stab+0, calpha, cbeta, cgamma);</div>
-<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> }</div>
-<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> {</div>
-<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> clength = plength_stab/2;</div>
-<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> <span class="keywordflow">if</span> (m%2 == 0)</div>
-<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span> {</div>
-<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> a11 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength);</div>
-<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> a12 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength);</div>
-<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> a21 = 0;</div>
-<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> a22 = 0;</div>
-<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span> calpha = &(alpha[2]); cbeta = &(beta[2]); cgamma = &(gam[2]);</div>
-<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> eval_clenshaw(set->xcvecs[t_stab-2], a11, clength,</div>
-<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> degree_stab-2, calpha, cbeta, cgamma);</div>
-<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> eval_clenshaw(set->xcvecs[t_stab-2], a12, clength,</div>
-<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> degree_stab-1, calpha, cbeta, cgamma);</div>
-<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span> }</div>
-<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span> {</div>
-<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span> a11 = 0;</div>
-<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> a12 = 0;</div>
-<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> a21 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength);</div>
-<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> a22 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength);</div>
-<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span> calpha = &(alpha[1]); cbeta = &(beta[1]); cgamma = &(gam[1]);</div>
-<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span> eval_clenshaw(set->xcvecs[t_stab-2], a21, clength,</div>
-<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span> degree_stab-1,calpha, cbeta, cgamma);</div>
-<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span> eval_clenshaw(set->xcvecs[t_stab-2], a22, clength,</div>
-<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span> degree_stab+0, calpha, cbeta, cgamma);</div>
-<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span> }</div>
-<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span> }</div>
-<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span> }</div>
-<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span> {</div>
-<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span> clength_1 = plength_stab;</div>
-<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span> clength_2 = plength_stab;</div>
-<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span> a11 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength_1);</div>
-<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span> a12 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength_1);</div>
-<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span> a21 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength_2);</div>
-<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span> a22 = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)*clength_2);</div>
-<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span> calpha = &(alpha[2]);</div>
-<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span> cbeta = &(beta[2]);</div>
-<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span> cgamma = &(gam[2]);</div>
-<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span> calpha--;</div>
-<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span> cbeta--;</div>
-<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span> cgamma--;</div>
-<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span> eval_clenshaw2(set->xcvecs[t_stab-2], a11, a21, clength_1, clength_2, degree_stab-1,</div>
-<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span> calpha, cbeta, cgamma);</div>
-<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span> eval_clenshaw2(set->xcvecs[t_stab-2], a12, a22, clength_1, clength_2, degree_stab+0,</div>
-<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span> calpha, cbeta, cgamma);</div>
-<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span> </div>
-<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span> }</div>
-<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a11[0] = a11;</div>
-<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a12[0] = a12;</div>
-<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a21[0] = a21;</div>
-<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0] = a22;</div>
-<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span> </div>
-<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0] = gam[1+1];</div>
-<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#a71dc6483b4f3b958519bdafeae2c1dbf" title="Indicates if the values contained represent a fast or a slow stabilized step.">stable</a> = <span class="keyword">false</span>;</div>
-<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#aeb754fe2aedc1f15cbb9c75c212772fb" title="TODO Add comment here.">ts</a> = t_stab;</div>
-<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#ac6767b7c6935b1f2af5dd54e2e8f690b" title="TODO Add comment here.">Ns</a> = N_stab;</div>
-<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span> }</div>
-<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span> }</div>
-<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span> plength = plength << 1;</div>
-<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span> }</div>
-<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span> }</div>
-<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span> </div>
-<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span> <span class="keywordflow">if</span> (!(set->flags & FPT_NO_DIRECT_ALGORITHM))</div>
-<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span> {</div>
-<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span> <span class="comment">/* Check, if recurrence coefficients must be copied. */</span></div>
-<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span> <span class="keywordflow">if</span> (set->flags & FPT_PERSISTENT_DATA)</div>
-<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span> {</div>
-<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span> data-><a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7" title="< TODO Add comment here.">_alpha</a> = (<span class="keywordtype">double</span>*) alpha;</div>
-<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> data-><a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb" title="TODO Add comment here.">_beta</a> = (<span class="keywordtype">double</span>*) beta;</div>
-<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span> data-><a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc" title="TODO Add comment here.">_gamma</a> = (<span class="keywordtype">double</span>*) gam;</div>
-<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span> }</div>
-<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> {</div>
-<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> data-><a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7" title="< TODO Add comment here.">_alpha</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((set->N+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> data-><a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb" title="TODO Add comment here.">_beta</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((set->N+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> data-><a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc" title="TODO Add comment here.">_gamma</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((set->N+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> memcpy(data-><a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7" title="< TODO Add comment here.">_alpha</a>,alpha,(set->N+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span> memcpy(data-><a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb" title="TODO Add comment here.">_beta</a>,beta,(set->N+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span> memcpy(data-><a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc" title="TODO Add comment here.">_gamma</a>,gam,(set->N+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> }</div>
-<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> }</div>
-<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span> }</div>
-<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span> </div>
-<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span> <span class="keywordtype">void</span> fpt_trafo_direct(<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>, <span class="keyword">const</span> <span class="keywordtype">int</span> m, <span class="keyword">const</span> <span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> _Complex * [...]
-<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> <span class="keyword">const</span> <span class="keywordtype">int</span> k_end, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> {</div>
-<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> <a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data</a> *data = &(<span class="keyword">set</span>->dpt[m]);</div>
-<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> <span class="keywordtype">int</span> Nk;</div>
-<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> <span class="keywordtype">int</span> tk;</div>
-<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span> <span class="keywordtype">double</span> norm;</div>
-<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> </div>
-<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> <span class="comment">//fprintf(stderr, "Executing dpt.\n"); </span></div>
-<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> </div>
-<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> X(next_power_of_2_exp)(k_end+1,&Nk,&tk);</div>
-<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span> norm = 2.0/(Nk<<1);</div>
-<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> </div>
-<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> <span class="comment">//fprintf(stderr, "Norm = %e.\n", norm); </span></div>
-<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> </div>
-<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> <span class="keywordflow">if</span> (set->flags & FPT_NO_DIRECT_ALGORITHM)</div>
-<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> {</div>
-<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> }</div>
-<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> </div>
-<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> <span class="keywordflow">if</span> (flags & FPT_FUNCTION_VALUES)</div>
-<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span> {</div>
-<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> <span class="comment">/* Fill array with Chebyshev nodes. */</span></div>
-<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> <span class="keywordflow">for</span> (j = 0; j <= k_end; j++)</div>
-<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> {</div>
-<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> <span class="keyword">set</span>->xc_slow[j] = cos((<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*(j+0.5))/(k_end+1));</div>
-<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span> <span class="comment">//fprintf(stderr, "x[%4d] = %e.\n", j, set->xc_slow[j]); </span></div>
-<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span> }</div>
-<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span> </div>
-<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span> memset(set->result,0U,data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> memcpy(&set->result[data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>],x,(k_end-data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span> </div>
-<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span> <span class="comment">/*eval_sum_clenshaw(k_end, k_end, set->result, set->xc_slow,</span></div>
-<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> <span class="comment"> y, set->work, &data->alpha[1], &data->beta[1], &data->gamma[1],</span></div>
-<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span> <span class="comment"> data->gamma_m1);*/</span></div>
-<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span> eval_sum_clenshaw_fast(k_end, k_end, set->result, set->xc_slow,</div>
-<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span> y, &data-><a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7" title="< TODO Add comment here.">_alpha</a>[1], &data-><a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb" title="TODO Add comment here.">_beta</a>[1], &data-><a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc" title="TODO Add comment her [...]
-<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span> }</div>
-<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> {</div>
-<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> memset(set->temp,0U,data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> memcpy(&set->temp[data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>],x,(k_end-data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> </div>
-<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span> eval_sum_clenshaw_fast(k_end, Nk-1, set->temp, set->xcvecs[tk-2],</div>
-<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span> set->result, &data-><a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7" title="< TODO Add comment here.">_alpha</a>[1], &data-><a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb" title="TODO Add comment here.">_beta</a>[1], &data-><a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc" title="TODO Ad [...]
-<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>);</div>
-<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> </div>
-<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span> fftw_execute_r2r(set->plans_dct2[tk-2],(<span class="keywordtype">double</span>*)set->result,</div>
-<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span> (<span class="keywordtype">double</span>*)set->result);</div>
-<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span> </div>
-<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span> <span class="keyword">set</span>->result[0] *= 0.5;</div>
-<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span> <span class="keywordflow">for</span> (j = 0; j < Nk; j++)</div>
-<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span> {</div>
-<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span> <span class="keyword">set</span>->result[j] *= norm;</div>
-<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span> }</div>
-<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span> </div>
-<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span> memcpy(y,set->result,(k_end+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span> }</div>
-<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span> }</div>
-<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span> </div>
-<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span> <span class="keywordtype">void</span> fpt_trafo(<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>, <span class="keyword">const</span> <span class="keywordtype">int</span> m, <span class="keyword">const</span> <span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> _Complex *y,</div>
-<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span> <span class="keyword">const</span> <span class="keywordtype">int</span> k_end, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span> {</div>
-<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span> <span class="comment">/* Get transformation data. */</span></div>
-<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span> <a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data</a> *data = &(<span class="keyword">set</span>->dpt[m]);</div>
-<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span> <span class="keywordtype">int</span> Nk;</div>
-<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span> <span class="keywordtype">int</span> tk;</div>
-<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span> <span class="keywordtype">int</span> k_start_tilde;</div>
-<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span> <span class="keywordtype">int</span> k_end_tilde;</div>
-<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> </div>
-<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> <span class="keywordtype">int</span> tau;</div>
-<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span> <span class="keywordtype">int</span> firstl;</div>
-<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span> <span class="keywordtype">int</span> lastl;</div>
-<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> <span class="keywordtype">int</span> plength;</div>
-<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span> <span class="keywordtype">int</span> plength_stab;</div>
-<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span> <span class="keywordtype">int</span> t_stab;</div>
-<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span> <a class="code" href="structfpt__step__.html" title="Holds data for a single multiplication step in the cascade summation.">fpt_step</a> *step;</div>
-<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span> fftw_plan plan = 0;</div>
-<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span> <span class="keywordtype">int</span> length = k_end+1;</div>
-<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span> fftw_r2r_kind kinds[2] = {FFTW_REDFT01,FFTW_REDFT01};</div>
-<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span> </div>
-<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span> </div>
-<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span> <span class="keywordtype">double</span> _Complex *work_ptr;</div>
-<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span> <span class="keyword">const</span> <span class="keywordtype">double</span> _Complex *x_ptr;</div>
-<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span> </div>
-<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span> <span class="comment">/* Check, if slow transformation should be used due to small bandwidth. */</span></div>
-<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> <span class="keywordflow">if</span> (k_end < FPT_BREAK_EVEN)</div>
-<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span> {</div>
-<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span> <span class="comment">/* Use NDSFT. */</span></div>
-<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span> fpt_trafo_direct(<span class="keyword">set</span>, m, x, y, k_end, flags);</div>
-<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span> }</div>
-<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span> </div>
-<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span> X(next_power_of_2_exp)(k_end,&Nk,&tk);</div>
-<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span> k_start_tilde = <a class="code" href="fpt_8c.html#a58f899926cc6e95ea54dd68d131979b8" title="Minimum degree at top of a cascade.">K_START_TILDE</a>(data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>,Nk);</div>
-<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span> k_end_tilde = <a class="code" href="fpt_8c.html#a769119c8ae45f2a30a62ba802d83139f" title="Maximum degree at top of a cascade.">K_END_TILDE</a>(k_end,Nk);</div>
-<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span> </div>
-<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> <span class="comment">/* Check if fast transform is activated. */</span></div>
-<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span> <span class="keywordflow">if</span> (set->flags & FPT_NO_FAST_ALGORITHM)</div>
-<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span> </div>
-<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span> <span class="keywordflow">if</span> (flags & FPT_FUNCTION_VALUES)</div>
-<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> {</div>
-<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> nthreads = nfft_get_omp_num_threads();</div>
-<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span> <span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span> <span class="preprocessor"></span>{</div>
-<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span> fftw_plan_with_nthreads(nthreads);</div>
-<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span> <span class="preprocessor"></span> plan = fftw_plan_many_r2r(1, &length, 2, (<span class="keywordtype">double</span>*)set->work, NULL, 2, 1,</div>
-<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span> (<span class="keywordtype">double</span>*)set->work, NULL, 2, 1, kinds, 0U);</div>
-<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l01301"></a><span class="lineno"> 1301</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span> </div>
-<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> <span class="comment">/* Initialize working arrays. */</span></div>
-<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> memset(set->result,0U,2*Nk*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> </div>
-<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span> <span class="comment">/* The first step. */</span></div>
-<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span> </div>
-<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span> <span class="comment">/* Set the first 2*data->k_start coefficients to zero. */</span></div>
-<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span> memset(set->work,0U,2*data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span> </div>
-<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span> work_ptr = &<span class="keyword">set</span>->work[2*data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>];</div>
-<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span> x_ptr = x;</div>
-<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span> </div>
-<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span> <span class="keywordflow">for</span> (k = 0; k <= k_end_tilde-data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>; k++)</div>
-<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span> {</div>
-<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span> *work_ptr++ = *x_ptr++;</div>
-<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span> *work_ptr++ = K(0.0);</div>
-<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> }</div>
-<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span> </div>
-<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span> <span class="comment">/* Set the last 2*(set->N-1-k_end_tilde) coefficients to zero. */</span></div>
-<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span> memset(&set->work[2*(k_end_tilde+1)],0U,2*(Nk-1-k_end_tilde)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span> </div>
-<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span> <span class="comment">/* If k_end == Nk, use three-term recurrence to map last coefficient x_{Nk} to</span></div>
-<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span> <span class="comment"> * x_{Nk-1} and x_{Nk-2}. */</span></div>
-<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span> <span class="keywordflow">if</span> (k_end == Nk)</div>
-<div class="line"><a name="l01327"></a><span class="lineno"> 1327</span> {</div>
-<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> <span class="keyword">set</span>->work[2*(Nk-2)] += data-><a class="code" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a" title="TODO Add comment here.">gammaN</a>[tk-2]*x[Nk-data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>];</div>
-<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> set->work[2*(Nk-1)] += data-><a class="code" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d" title="TODO Add comment here.">betaN</a>[tk-2]*x[Nk-data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>];</div>
-<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span> <span class="keyword">set</span>->work[2*(Nk-1)+1] = data-><a class="code" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519" title="TODO Add comment here.">alphaN</a>[tk-2]*x[Nk-data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>];</div>
-<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> }</div>
-<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> </div>
-<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span> <span class="comment">/* Compute the remaining steps. */</span></div>
-<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span> plength = 4;</div>
-<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span> <span class="keywordflow">for</span> (tau = 1; tau < tk; tau++)</div>
-<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span> {</div>
-<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span> <span class="comment">/* Compute first l. */</span></div>
-<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span> firstl = <a class="code" href="fpt_8c.html#ac81f7eac1a01b06e91817857f47b9804" title="Index of first block of four functions at level.">FIRST_L</a>(k_start_tilde,plength);</div>
-<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span> <span class="comment">/* Compute last l. */</span></div>
-<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span> lastl = <a class="code" href="fpt_8c.html#ac9f7e1529d635e3357d1e081ddf7e349" title="Index of last block of four functions at level.">LAST_L</a>(k_end_tilde,plength);</div>
-<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span> </div>
-<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span> <span class="comment">/* Compute the multiplication steps. */</span></div>
-<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span> <span class="keywordflow">for</span> (l = firstl; l <= lastl; l++)</div>
-<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span> {</div>
-<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> <span class="comment">/* Copy vectors to multiply into working arrays zero-padded to twice the length. */</span></div>
-<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> memcpy(set->vec3,&(set->work[(plength/2)*(4*l+2)]),(plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span> memcpy(set->vec4,&(set->work[(plength/2)*(4*l+3)]),(plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span> memset(&set->vec3[plength/2],0U,(plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span> memset(&set->vec4[plength/2],0U,(plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span> </div>
-<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span> <span class="comment">/* Copy coefficients into first half. */</span></div>
-<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> memcpy(&(set->work[(plength/2)*(4*l+2)]),&(set->work[(plength/2)*(4*l+1)]),(plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span> memset(&(set->work[(plength/2)*(4*l+1)]),0U,(plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span> memset(&(set->work[(plength/2)*(4*l+3)]),0U,(plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> </div>
-<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span> <span class="comment">/* Get matrix U_{n,tau,l} */</span></div>
-<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span> step = &(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l]);</div>
-<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span> </div>
-<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span> <span class="comment">/* Check if step is stable. */</span></div>
-<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span> <span class="keywordflow">if</span> (step-><a class="code" href="structfpt__step__.html#a71dc6483b4f3b958519bdafeae2c1dbf" title="Indicates if the values contained represent a fast or a slow stabilized step.">stable</a>)</div>
-<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span> {</div>
-<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span> <span class="comment">/* Check, if we should do a symmetrizised step. */</span></div>
-<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span> <span class="keywordflow">if</span> (set->flags & FPT_AL_SYMMETRY && IS_SYMMETRIC(l,m,plength))</div>
-<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span> {</div>
-<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span> <span class="comment">/*for (k = 0; k < plength; k++)</span></div>
-<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span> <span class="comment"> fprintf(stderr,"fpt_trafo: a11 = %le, a12 = %le, a21 = %le, a22 = %le\n",</span></div>
-<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span> <span class="comment"> step->a11[0][k],step->a12[0][k],step->a21[0][k],step->a22[0][k]);</span></div>
-<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span> <span class="comment"> }*/</span></div>
-<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span> <span class="comment">/* Multiply third and fourth polynomial with matrix U. */</span></div>
-<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span> <span class="comment">//fprintf(stderr,"\nhallo\n");</span></div>
-<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> fpt_do_step_symmetric(set->vec3, set->vec4, step->a11[0],</div>
-<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> step->a12[0], step->a21[0], step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], tau, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> }</div>
-<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span> {</div>
-<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span> <span class="comment">/* Multiply third and fourth polynomial with matrix U. */</span></div>
-<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span> fpt_do_step(set->vec3, set->vec4, step->a11[0], step->a12[0],</div>
-<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span> step->a21[0], step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], tau, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span> }</div>
-<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span> </div>
-<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span> <span class="keywordflow">if</span> (step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0] != 0.0)</div>
-<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span> {</div>
-<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span> <span class="keywordflow">for</span> (k = 0; k < plength; k++)</div>
-<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span> {</div>
-<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span> <span class="keyword">set</span>->work[plength*2*l+k] += <span class="keyword">set</span>->vec3[k];</div>
-<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span> }</div>
-<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span> }</div>
-<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span> <span class="keywordflow">for</span> (k = 0; k < plength; k++)</div>
-<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span> {</div>
-<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span> <span class="keyword">set</span>->work[plength*(2*l+1)+k] += set->vec4[k];</div>
-<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span> }</div>
-<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span> }</div>
-<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span> {</div>
-<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span> <span class="comment">/* Stabilize. */</span></div>
-<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span> </div>
-<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span> <span class="comment">/* The lengh of the polynomials */</span></div>
-<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span> plength_stab = step-><a class="code" href="structfpt__step__.html#ac6767b7c6935b1f2af5dd54e2e8f690b" title="TODO Add comment here.">Ns</a>;</div>
-<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span> t_stab = step-><a class="code" href="structfpt__step__.html#aeb754fe2aedc1f15cbb9c75c212772fb" title="TODO Add comment here.">ts</a>;</div>
-<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span> </div>
-<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span> <span class="comment">/*---------*/</span></div>
-<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span> <span class="comment">/*fprintf(stderr,"\nfpt_trafo: stabilizing at tau = %d, l = %d.\n",tau,l);</span></div>
-<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span> <span class="comment"> fprintf(stderr,"\nfpt_trafo: plength_stab = %d.\n",plength_stab);</span></div>
-<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span> <span class="comment"> fprintf(stderr,"\nfpt_trafo: tk = %d.\n",tk);</span></div>
-<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span> <span class="comment"> fprintf(stderr,"\nfpt_trafo: index = %d.\n",tk-tau-1);*/</span></div>
-<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span> <span class="comment">/*---------*/</span></div>
-<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span> </div>
-<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span> <span class="comment">/* Set rest of vectors explicitely to zero */</span></div>
-<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span> <span class="comment">/*fprintf(stderr,"fpt_trafo: stabilizing: plength = %d, plength_stab = %d\n",</span></div>
-<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span> <span class="comment"> plength, plength_stab);*/</span></div>
-<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span> memset(&set->vec3[plength/2],0U,(plength_stab-plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span> memset(&set->vec4[plength/2],0U,(plength_stab-plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span> </div>
-<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span> <span class="comment">/* Multiply third and fourth polynomial with matrix U. */</span></div>
-<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span> <span class="comment">/* Check for symmetry. */</span></div>
-<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span> <span class="keywordflow">if</span> (set->flags & FPT_AL_SYMMETRY)</div>
-<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span> {</div>
-<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span> <span class="keywordflow">if</span> (m <= 1)</div>
-<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span> {</div>
-<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span> fpt_do_step_symmetric(set->vec3, set->vec4, step->a11[0], step->a12[0],</div>
-<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span> step->a21[0], step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], t_stab-1, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span> }</div>
-<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (m%2 == 0)</div>
-<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span> {</div>
-<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span> <span class="comment">/*fpt_do_step_symmetric_u(set->vec3, set->vec4, step->a11[0], step->a12[0],</span></div>
-<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span> <span class="comment"> step->a21[0], step->a22[0], step->gamma[0], t_stab-1, set);*/</span></div>
-<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span> fpt_do_step_symmetric_u(set->vec3, set->vec4, step->a11[0], step->a12[0],</div>
-<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span> step->a21[0], step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0],</div>
-<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span> set->xcvecs[t_stab-2], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], t_stab-1, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span> <span class="comment">/*fpt_do_step(set->vec3, set->vec4, step->a11[0], step->a12[0],</span></div>
-<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span> <span class="comment"> step->a21[0], step->a22[0], step->gamma[0], t_stab-1, set);*/</span></div>
-<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span> }</div>
-<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span> {</div>
-<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span> <span class="comment">/*fpt_do_step_symmetric_l(set->vec3, set->vec4, step->a11[0], step->a12[0],</span></div>
-<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span> <span class="comment"> step->a21[0], step->a22[0], step->gamma[0], t_stab-1, set);*/</span></div>
-<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span> fpt_do_step_symmetric_l(set->vec3, set->vec4,</div>
-<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span> step->a11[0], step->a12[0],</div>
-<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span> step->a21[0],</div>
-<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span> step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0], set->xcvecs[t_stab-2], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], t_stab-1, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span> <span class="comment">/*fpt_do_step(set->vec3, set->vec4, step->a11[0], step->a12[0],</span></div>
-<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span> <span class="comment"> step->a21[0], step->a22[0], step->gamma[0], t_stab-1, set);*/</span></div>
-<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span> }</div>
-<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span> }</div>
-<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span> {</div>
-<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span> fpt_do_step(set->vec3, set->vec4, step->a11[0], step->a12[0],</div>
-<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span> step->a21[0], step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], t_stab-1, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span> }</div>
-<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span> </div>
-<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span> <span class="keywordflow">if</span> (step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0] != 0.0)</div>
-<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span> {</div>
-<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span> <span class="keywordflow">for</span> (k = 0; k < plength_stab; k++)</div>
-<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span> {</div>
-<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span> <span class="keyword">set</span>->result[k] += <span class="keyword">set</span>->vec3[k];</div>
-<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span> }</div>
-<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span> }</div>
-<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span> </div>
-<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span> <span class="keywordflow">for</span> (k = 0; k < plength_stab; k++)</div>
-<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span> {</div>
-<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span> <span class="keyword">set</span>->result[Nk+k] += <span class="keyword">set</span>->vec4[k];</div>
-<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span> }</div>
-<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span> }</div>
-<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span> }</div>
-<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span> <span class="comment">/* Double length of polynomials. */</span></div>
-<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span> plength = plength<<1;</div>
-<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span> </div>
-<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span> <span class="comment">/*--------*/</span></div>
-<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span> <span class="comment">/*for (k = 0; k < 2*Nk; k++)</span></div>
-<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span> <span class="comment"> fprintf(stderr,"work[%2d] = %le + I*%le\tresult[%2d] = %le + I*%le\n",</span></div>
-<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span> <span class="comment"> k,creal(set->work[k]),cimag(set->work[k]),k,creal(set->result[k]),</span></div>
-<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span> <span class="comment"> cimag(set->result[k]));</span></div>
-<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span> <span class="comment"> }*/</span></div>
-<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span> <span class="comment">/*--------*/</span></div>
-<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span> }</div>
-<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span> </div>
-<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span> <span class="comment">/* Add the resulting cascade coeffcients to the coeffcients accumulated from</span></div>
-<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> <span class="comment"> * the stabilization steps. */</span></div>
-<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span> <span class="keywordflow">for</span> (k = 0; k < 2*Nk; k++)</div>
-<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span> {</div>
-<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span> <span class="keyword">set</span>->result[k] += <span class="keyword">set</span>->work[k];</div>
-<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span> }</div>
-<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span> </div>
-<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span> <span class="comment">/* The last step. Compute the Chebyshev coeffcients c_k^n from the</span></div>
-<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span> <span class="comment"> * polynomials in front of P_0^n and P_1^n. */</span></div>
-<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span> y[0] = data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>*(<span class="keyword">set</span>->result[0] + data-><a class="code" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa" title="TODO Add comment here.">beta_0</a>*<span class="keyword">set</span>->result[Nk] +</div>
-<div class="line"><a name="l01489"></a><span class="lineno"> 1489</span> data-><a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e" title="TODO Add comment here.">alpha_0</a>*<span class="keyword">set</span>->result[Nk+1]*0.5);</div>
-<div class="line"><a name="l01490"></a><span class="lineno"> 1490</span> y[1] = data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>*(<span class="keyword">set</span>->result[1] + data-><a class="code" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa" title="TODO Add comment here.">beta_0</a>*<span class="keyword">set</span>->result[Nk+1]+</div>
-<div class="line"><a name="l01491"></a><span class="lineno"> 1491</span> data-><a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e" title="TODO Add comment here.">alpha_0</a>*(<span class="keyword">set</span>->result[Nk]+<span class="keyword">set</span>->result[Nk+2]*0.5));</div>
-<div class="line"><a name="l01492"></a><span class="lineno"> 1492</span> y[k_end-1] = data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>*(<span class="keyword">set</span>->result[k_end-1] +</div>
-<div class="line"><a name="l01493"></a><span class="lineno"> 1493</span> data-><a class="code" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa" title="TODO Add comment here.">beta_0</a>*<span class="keyword">set</span>->result[Nk+k_end-1] +</div>
-<div class="line"><a name="l01494"></a><span class="lineno"> 1494</span> data-><a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e" title="TODO Add comment here.">alpha_0</a>*<span class="keyword">set</span>->result[Nk+k_end-2]*0.5);</div>
-<div class="line"><a name="l01495"></a><span class="lineno"> 1495</span> y[k_end] = data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>*(0.5*data-><a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e" title="TODO Add comment here.">alpha_0</a>*<span class="keyword">set</span>->result[Nk+k_end-1]);</div>
-<div class="line"><a name="l01496"></a><span class="lineno"> 1496</span> <span class="keywordflow">for</span> (k = 2; k <= k_end-2; k++)</div>
-<div class="line"><a name="l01497"></a><span class="lineno"> 1497</span> {</div>
-<div class="line"><a name="l01498"></a><span class="lineno"> 1498</span> y[k] = data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>*(<span class="keyword">set</span>->result[k] + data-><a class="code" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa" title="TODO Add comment here.">beta_0</a>*<span class="keyword">set</span>->result[Nk+k] +</div>
-<div class="line"><a name="l01499"></a><span class="lineno"> 1499</span> data-><a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e" title="TODO Add comment here.">alpha_0</a>*0.5*(<span class="keyword">set</span>->result[Nk+k-1]+<span class="keyword">set</span>->result[Nk+k+1]));</div>
-<div class="line"><a name="l01500"></a><span class="lineno"> 1500</span> }</div>
-<div class="line"><a name="l01501"></a><span class="lineno"> 1501</span> </div>
-<div class="line"><a name="l01502"></a><span class="lineno"> 1502</span> <span class="keywordflow">if</span> (flags & FPT_FUNCTION_VALUES)</div>
-<div class="line"><a name="l01503"></a><span class="lineno"> 1503</span> {</div>
-<div class="line"><a name="l01504"></a><span class="lineno"> 1504</span> y[0] *= 2.0;</div>
-<div class="line"><a name="l01505"></a><span class="lineno"> 1505</span> fftw_execute_r2r(plan,(<span class="keywordtype">double</span>*)y,(<span class="keywordtype">double</span>*)y);</div>
-<div class="line"><a name="l01506"></a><span class="lineno"> 1506</span> <span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l01507"></a><span class="lineno"> 1507</span> <span class="preprocessor"></span> fftw_destroy_plan(plan);</div>
-<div class="line"><a name="l01508"></a><span class="lineno"> 1508</span> <span class="keywordflow">for</span> (k = 0; k <= k_end; k++)</div>
-<div class="line"><a name="l01509"></a><span class="lineno"> 1509</span> {</div>
-<div class="line"><a name="l01510"></a><span class="lineno"> 1510</span> y[k] *= 0.5;</div>
-<div class="line"><a name="l01511"></a><span class="lineno"> 1511</span> }</div>
-<div class="line"><a name="l01512"></a><span class="lineno"> 1512</span> }</div>
-<div class="line"><a name="l01513"></a><span class="lineno"> 1513</span> }</div>
-<div class="line"><a name="l01514"></a><span class="lineno"> 1514</span> </div>
-<div class="line"><a name="l01515"></a><span class="lineno"> 1515</span> <span class="keywordtype">void</span> fpt_transposed_direct(<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>, <span class="keyword">const</span> <span class="keywordtype">int</span> m, <span class="keywordtype">double</span> _Complex *x,</div>
-<div class="line"><a name="l01516"></a><span class="lineno"> 1516</span> <span class="keywordtype">double</span> _Complex *y, <span class="keyword">const</span> <span class="keywordtype">int</span> k_end, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l01517"></a><span class="lineno"> 1517</span> {</div>
-<div class="line"><a name="l01518"></a><span class="lineno"> 1518</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l01519"></a><span class="lineno"> 1519</span> <a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data</a> *data = &(<span class="keyword">set</span>->dpt[m]);</div>
-<div class="line"><a name="l01520"></a><span class="lineno"> 1520</span> <span class="keywordtype">int</span> Nk;</div>
-<div class="line"><a name="l01521"></a><span class="lineno"> 1521</span> <span class="keywordtype">int</span> tk;</div>
-<div class="line"><a name="l01522"></a><span class="lineno"> 1522</span> <span class="keywordtype">double</span> norm;</div>
-<div class="line"><a name="l01523"></a><span class="lineno"> 1523</span> </div>
-<div class="line"><a name="l01524"></a><span class="lineno"> 1524</span> X(next_power_of_2_exp)(k_end+1,&Nk,&tk);</div>
-<div class="line"><a name="l01525"></a><span class="lineno"> 1525</span> norm = 2.0/(Nk<<1);</div>
-<div class="line"><a name="l01526"></a><span class="lineno"> 1526</span> </div>
-<div class="line"><a name="l01527"></a><span class="lineno"> 1527</span> <span class="keywordflow">if</span> (set->flags & FPT_NO_DIRECT_ALGORITHM)</div>
-<div class="line"><a name="l01528"></a><span class="lineno"> 1528</span> {</div>
-<div class="line"><a name="l01529"></a><span class="lineno"> 1529</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01530"></a><span class="lineno"> 1530</span> }</div>
-<div class="line"><a name="l01531"></a><span class="lineno"> 1531</span> </div>
-<div class="line"><a name="l01532"></a><span class="lineno"> 1532</span> <span class="keywordflow">if</span> (flags & FPT_FUNCTION_VALUES)</div>
-<div class="line"><a name="l01533"></a><span class="lineno"> 1533</span> {</div>
-<div class="line"><a name="l01534"></a><span class="lineno"> 1534</span> <span class="keywordflow">for</span> (j = 0; j <= k_end; j++)</div>
-<div class="line"><a name="l01535"></a><span class="lineno"> 1535</span> {</div>
-<div class="line"><a name="l01536"></a><span class="lineno"> 1536</span> <span class="keyword">set</span>->xc_slow[j] = cos((<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*(j+0.5))/(k_end+1));</div>
-<div class="line"><a name="l01537"></a><span class="lineno"> 1537</span> }</div>
-<div class="line"><a name="l01538"></a><span class="lineno"> 1538</span> </div>
-<div class="line"><a name="l01539"></a><span class="lineno"> 1539</span> <a class="code" href="fpt_8c.html#a509209ea5b6e210805a37cd80579c2c5" title="Clenshaw algorithm.">eval_sum_clenshaw_transposed</a>(k_end, k_end, set->result, set->xc_slow,</div>
-<div class="line"><a name="l01540"></a><span class="lineno"> 1540</span> y, set->work, &data-><a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7" title="< TODO Add comment here.">_alpha</a>[1], &data-><a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb" title="TODO Add comment here.">_beta</a>[1], &data-><a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc" title="TODO A [...]
-<div class="line"><a name="l01541"></a><span class="lineno"> 1541</span> data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>);</div>
-<div class="line"><a name="l01542"></a><span class="lineno"> 1542</span> </div>
-<div class="line"><a name="l01543"></a><span class="lineno"> 1543</span> memcpy(x,&set->result[data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>],(k_end-data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>+1)*</div>
-<div class="line"><a name="l01544"></a><span class="lineno"> 1544</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01545"></a><span class="lineno"> 1545</span> }</div>
-<div class="line"><a name="l01546"></a><span class="lineno"> 1546</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01547"></a><span class="lineno"> 1547</span> {</div>
-<div class="line"><a name="l01548"></a><span class="lineno"> 1548</span> memcpy(set->result,y,(k_end+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01549"></a><span class="lineno"> 1549</span> memset(&set->result[k_end+1],0U,(Nk-k_end-1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01550"></a><span class="lineno"> 1550</span> </div>
-<div class="line"><a name="l01551"></a><span class="lineno"> 1551</span> <span class="keywordflow">for</span> (j = 0; j < Nk; j++)</div>
-<div class="line"><a name="l01552"></a><span class="lineno"> 1552</span> {</div>
-<div class="line"><a name="l01553"></a><span class="lineno"> 1553</span> <span class="keyword">set</span>->result[j] *= norm;</div>
-<div class="line"><a name="l01554"></a><span class="lineno"> 1554</span> }</div>
-<div class="line"><a name="l01555"></a><span class="lineno"> 1555</span> </div>
-<div class="line"><a name="l01556"></a><span class="lineno"> 1556</span> fftw_execute_r2r(set->plans_dct3[tk-2],(<span class="keywordtype">double</span>*)set->result,</div>
-<div class="line"><a name="l01557"></a><span class="lineno"> 1557</span> (<span class="keywordtype">double</span>*)set->result);</div>
-<div class="line"><a name="l01558"></a><span class="lineno"> 1558</span> </div>
-<div class="line"><a name="l01559"></a><span class="lineno"> 1559</span> <a class="code" href="fpt_8c.html#a509209ea5b6e210805a37cd80579c2c5" title="Clenshaw algorithm.">eval_sum_clenshaw_transposed</a>(k_end, Nk-1, set->temp, set->xcvecs[tk-2],</div>
-<div class="line"><a name="l01560"></a><span class="lineno"> 1560</span> set->result, set->work, &data-><a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7" title="< TODO Add comment here.">_alpha</a>[1], &data-><a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb" title="TODO Add comment here.">_beta</a>[1], &data-><a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc" [...]
-<div class="line"><a name="l01561"></a><span class="lineno"> 1561</span> data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>);</div>
-<div class="line"><a name="l01562"></a><span class="lineno"> 1562</span> </div>
-<div class="line"><a name="l01563"></a><span class="lineno"> 1563</span> memcpy(x,&set->temp[data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>],(k_end-data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01564"></a><span class="lineno"> 1564</span> }</div>
-<div class="line"><a name="l01565"></a><span class="lineno"> 1565</span> }</div>
-<div class="line"><a name="l01566"></a><span class="lineno"> 1566</span> </div>
-<div class="line"><a name="l01567"></a><span class="lineno"> 1567</span> <span class="keywordtype">void</span> fpt_transposed(<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>, <span class="keyword">const</span> <span class="keywordtype">int</span> m, <span class="keywordtype">double</span> _Complex *x,</div>
-<div class="line"><a name="l01568"></a><span class="lineno"> 1568</span> <span class="keywordtype">double</span> _Complex *y, <span class="keyword">const</span> <span class="keywordtype">int</span> k_end, <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l01569"></a><span class="lineno"> 1569</span> {</div>
-<div class="line"><a name="l01570"></a><span class="lineno"> 1570</span> <span class="comment">/* Get transformation data. */</span></div>
-<div class="line"><a name="l01571"></a><span class="lineno"> 1571</span> <a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data</a> *data = &(<span class="keyword">set</span>->dpt[m]);</div>
-<div class="line"><a name="l01573"></a><span class="lineno"> 1573</span> <span class="keywordtype">int</span> Nk;</div>
-<div class="line"><a name="l01575"></a><span class="lineno"> 1575</span> <span class="keywordtype">int</span> tk;</div>
-<div class="line"><a name="l01577"></a><span class="lineno"> 1577</span> <span class="keywordtype">int</span> k_start_tilde;</div>
-<div class="line"><a name="l01579"></a><span class="lineno"> 1579</span> <span class="keywordtype">int</span> k_end_tilde;</div>
-<div class="line"><a name="l01580"></a><span class="lineno"> 1580</span> </div>
-<div class="line"><a name="l01582"></a><span class="lineno"> 1582</span> <span class="keywordtype">int</span> tau;</div>
-<div class="line"><a name="l01584"></a><span class="lineno"> 1584</span> <span class="keywordtype">int</span> firstl;</div>
-<div class="line"><a name="l01586"></a><span class="lineno"> 1586</span> <span class="keywordtype">int</span> lastl;</div>
-<div class="line"><a name="l01588"></a><span class="lineno"> 1588</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l01590"></a><span class="lineno"> 1590</span> <span class="keywordtype">int</span> plength;</div>
-<div class="line"><a name="l01592"></a><span class="lineno"> 1592</span> <span class="keywordtype">int</span> plength_stab;</div>
-<div class="line"><a name="l01594"></a><span class="lineno"> 1594</span> <a class="code" href="structfpt__step__.html" title="Holds data for a single multiplication step in the cascade summation.">fpt_step</a> *step;</div>
-<div class="line"><a name="l01596"></a><span class="lineno"> 1596</span> fftw_plan plan;</div>
-<div class="line"><a name="l01597"></a><span class="lineno"> 1597</span> <span class="keywordtype">int</span> length = k_end+1;</div>
-<div class="line"><a name="l01598"></a><span class="lineno"> 1598</span> fftw_r2r_kind kinds[2] = {FFTW_REDFT10,FFTW_REDFT10};</div>
-<div class="line"><a name="l01600"></a><span class="lineno"> 1600</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l01601"></a><span class="lineno"> 1601</span> <span class="keywordtype">int</span> t_stab;</div>
-<div class="line"><a name="l01602"></a><span class="lineno"> 1602</span> </div>
-<div class="line"><a name="l01603"></a><span class="lineno"> 1603</span> <span class="comment">/* Check, if slow transformation should be used due to small bandwidth. */</span></div>
-<div class="line"><a name="l01604"></a><span class="lineno"> 1604</span> <span class="keywordflow">if</span> (k_end < FPT_BREAK_EVEN)</div>
-<div class="line"><a name="l01605"></a><span class="lineno"> 1605</span> {</div>
-<div class="line"><a name="l01606"></a><span class="lineno"> 1606</span> <span class="comment">/* Use NDSFT. */</span></div>
-<div class="line"><a name="l01607"></a><span class="lineno"> 1607</span> fpt_transposed_direct(<span class="keyword">set</span>, m, x, y, k_end, flags);</div>
-<div class="line"><a name="l01608"></a><span class="lineno"> 1608</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01609"></a><span class="lineno"> 1609</span> }</div>
-<div class="line"><a name="l01610"></a><span class="lineno"> 1610</span> </div>
-<div class="line"><a name="l01611"></a><span class="lineno"> 1611</span> X(next_power_of_2_exp)(k_end,&Nk,&tk);</div>
-<div class="line"><a name="l01612"></a><span class="lineno"> 1612</span> k_start_tilde = <a class="code" href="fpt_8c.html#a58f899926cc6e95ea54dd68d131979b8" title="Minimum degree at top of a cascade.">K_START_TILDE</a>(data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>,Nk);</div>
-<div class="line"><a name="l01613"></a><span class="lineno"> 1613</span> k_end_tilde = <a class="code" href="fpt_8c.html#a769119c8ae45f2a30a62ba802d83139f" title="Maximum degree at top of a cascade.">K_END_TILDE</a>(k_end,Nk);</div>
-<div class="line"><a name="l01614"></a><span class="lineno"> 1614</span> </div>
-<div class="line"><a name="l01615"></a><span class="lineno"> 1615</span> <span class="comment">/* Check if fast transform is activated. */</span></div>
-<div class="line"><a name="l01616"></a><span class="lineno"> 1616</span> <span class="keywordflow">if</span> (set->flags & FPT_NO_FAST_ALGORITHM)</div>
-<div class="line"><a name="l01617"></a><span class="lineno"> 1617</span> {</div>
-<div class="line"><a name="l01618"></a><span class="lineno"> 1618</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01619"></a><span class="lineno"> 1619</span> }</div>
-<div class="line"><a name="l01620"></a><span class="lineno"> 1620</span> </div>
-<div class="line"><a name="l01621"></a><span class="lineno"> 1621</span> <span class="keywordflow">if</span> (flags & FPT_FUNCTION_VALUES)</div>
-<div class="line"><a name="l01622"></a><span class="lineno"> 1622</span> {</div>
-<div class="line"><a name="l01623"></a><span class="lineno"> 1623</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01624"></a><span class="lineno"> 1624</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> nthreads = nfft_get_omp_num_threads();</div>
-<div class="line"><a name="l01625"></a><span class="lineno"> 1625</span> <span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l01626"></a><span class="lineno"> 1626</span> <span class="preprocessor"></span>{</div>
-<div class="line"><a name="l01627"></a><span class="lineno"> 1627</span> fftw_plan_with_nthreads(nthreads);</div>
-<div class="line"><a name="l01628"></a><span class="lineno"> 1628</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01629"></a><span class="lineno"> 1629</span> <span class="preprocessor"></span> plan = fftw_plan_many_r2r(1, &length, 2, (<span class="keywordtype">double</span>*)set->work, NULL, 2, 1,</div>
-<div class="line"><a name="l01630"></a><span class="lineno"> 1630</span> (<span class="keywordtype">double</span>*)set->work, NULL, 2, 1, kinds, 0U);</div>
-<div class="line"><a name="l01631"></a><span class="lineno"> 1631</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01632"></a><span class="lineno"> 1632</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l01633"></a><span class="lineno"> 1633</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01634"></a><span class="lineno"> 1634</span> <span class="preprocessor"></span> fftw_execute_r2r(plan,(<span class="keywordtype">double</span>*)y,(<span class="keywordtype">double</span>*)set->result);</div>
-<div class="line"><a name="l01635"></a><span class="lineno"> 1635</span> <span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l01636"></a><span class="lineno"> 1636</span> <span class="preprocessor"></span> fftw_destroy_plan(plan);</div>
-<div class="line"><a name="l01637"></a><span class="lineno"> 1637</span> <span class="keywordflow">for</span> (k = 0; k <= k_end; k++)</div>
-<div class="line"><a name="l01638"></a><span class="lineno"> 1638</span> {</div>
-<div class="line"><a name="l01639"></a><span class="lineno"> 1639</span> <span class="keyword">set</span>->result[k] *= 0.5;</div>
-<div class="line"><a name="l01640"></a><span class="lineno"> 1640</span> }</div>
-<div class="line"><a name="l01641"></a><span class="lineno"> 1641</span> }</div>
-<div class="line"><a name="l01642"></a><span class="lineno"> 1642</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01643"></a><span class="lineno"> 1643</span> {</div>
-<div class="line"><a name="l01644"></a><span class="lineno"> 1644</span> memcpy(set->result,y,(k_end+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01645"></a><span class="lineno"> 1645</span> }</div>
-<div class="line"><a name="l01646"></a><span class="lineno"> 1646</span> </div>
-<div class="line"><a name="l01647"></a><span class="lineno"> 1647</span> <span class="comment">/* Initialize working arrays. */</span></div>
-<div class="line"><a name="l01648"></a><span class="lineno"> 1648</span> memset(set->work,0U,2*Nk*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01649"></a><span class="lineno"> 1649</span> </div>
-<div class="line"><a name="l01650"></a><span class="lineno"> 1650</span> <span class="comment">/* The last step is now the first step. */</span></div>
-<div class="line"><a name="l01651"></a><span class="lineno"> 1651</span> <span class="keywordflow">for</span> (k = 0; k <= k_end; k++)</div>
-<div class="line"><a name="l01652"></a><span class="lineno"> 1652</span> {</div>
-<div class="line"><a name="l01653"></a><span class="lineno"> 1653</span> <span class="keyword">set</span>->work[k] = data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>*<span class="keyword">set</span>->result[k];</div>
-<div class="line"><a name="l01654"></a><span class="lineno"> 1654</span> }</div>
-<div class="line"><a name="l01655"></a><span class="lineno"> 1655</span> <span class="comment">//memset(&set->work[k_end+1],0U,(Nk+1-k_end)*sizeof(double _Complex));</span></div>
-<div class="line"><a name="l01656"></a><span class="lineno"> 1656</span> </div>
-<div class="line"><a name="l01657"></a><span class="lineno"> 1657</span> <span class="keyword">set</span>->work[Nk] = data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>*(data-><a class="code" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa" title="TODO Add comment here.">beta_0</a>*<span class="keyword">set</span>->result[0] +</div>
-<div class="line"><a name="l01658"></a><span class="lineno"> 1658</span> data-><a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e" title="TODO Add comment here.">alpha_0</a>*<span class="keyword">set</span>->result[1]);</div>
-<div class="line"><a name="l01659"></a><span class="lineno"> 1659</span> <span class="keywordflow">for</span> (k = 1; k < k_end; k++)</div>
-<div class="line"><a name="l01660"></a><span class="lineno"> 1660</span> {</div>
-<div class="line"><a name="l01661"></a><span class="lineno"> 1661</span> <span class="keyword">set</span>->work[Nk+k] = data-><a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>*(data-><a class="code" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa" title="TODO Add comment here.">beta_0</a>*<span class="keyword">set</span>->result[k] +</div>
-<div class="line"><a name="l01662"></a><span class="lineno"> 1662</span> data-><a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e" title="TODO Add comment here.">alpha_0</a>*0.5*(<span class="keyword">set</span>->result[k-1]+<span class="keyword">set</span>->result[k+1]));</div>
-<div class="line"><a name="l01663"></a><span class="lineno"> 1663</span> }</div>
-<div class="line"><a name="l01664"></a><span class="lineno"> 1664</span> <span class="keywordflow">if</span> (k_end<Nk)</div>
-<div class="line"><a name="l01665"></a><span class="lineno"> 1665</span> {</div>
-<div class="line"><a name="l01666"></a><span class="lineno"> 1666</span> memset(&set->work[k_end],0U,(Nk-k_end)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01667"></a><span class="lineno"> 1667</span> }</div>
-<div class="line"><a name="l01668"></a><span class="lineno"> 1668</span> </div>
-<div class="line"><a name="l01670"></a><span class="lineno"> 1670</span> memcpy(set->result,set->work,2*Nk*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01671"></a><span class="lineno"> 1671</span> </div>
-<div class="line"><a name="l01672"></a><span class="lineno"> 1672</span> <span class="comment">/* Compute the remaining steps. */</span></div>
-<div class="line"><a name="l01673"></a><span class="lineno"> 1673</span> plength = Nk;</div>
-<div class="line"><a name="l01674"></a><span class="lineno"> 1674</span> <span class="keywordflow">for</span> (tau = tk-1; tau >= 1; tau--)</div>
-<div class="line"><a name="l01675"></a><span class="lineno"> 1675</span> {</div>
-<div class="line"><a name="l01676"></a><span class="lineno"> 1676</span> <span class="comment">/* Compute first l. */</span></div>
-<div class="line"><a name="l01677"></a><span class="lineno"> 1677</span> firstl = <a class="code" href="fpt_8c.html#ac81f7eac1a01b06e91817857f47b9804" title="Index of first block of four functions at level.">FIRST_L</a>(k_start_tilde,plength);</div>
-<div class="line"><a name="l01678"></a><span class="lineno"> 1678</span> <span class="comment">/* Compute last l. */</span></div>
-<div class="line"><a name="l01679"></a><span class="lineno"> 1679</span> lastl = <a class="code" href="fpt_8c.html#ac9f7e1529d635e3357d1e081ddf7e349" title="Index of last block of four functions at level.">LAST_L</a>(k_end_tilde,plength);</div>
-<div class="line"><a name="l01680"></a><span class="lineno"> 1680</span> </div>
-<div class="line"><a name="l01681"></a><span class="lineno"> 1681</span> <span class="comment">/* Compute the multiplication steps. */</span></div>
-<div class="line"><a name="l01682"></a><span class="lineno"> 1682</span> <span class="keywordflow">for</span> (l = firstl; l <= lastl; l++)</div>
-<div class="line"><a name="l01683"></a><span class="lineno"> 1683</span> {</div>
-<div class="line"><a name="l01684"></a><span class="lineno"> 1684</span> <span class="comment">/* Initialize second half of coefficient arrays with zeros. */</span></div>
-<div class="line"><a name="l01685"></a><span class="lineno"> 1685</span> memcpy(set->vec3,&(set->work[(plength/2)*(4*l+0)]),plength*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01686"></a><span class="lineno"> 1686</span> memcpy(set->vec4,&(set->work[(plength/2)*(4*l+2)]),plength*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01687"></a><span class="lineno"> 1687</span> </div>
-<div class="line"><a name="l01688"></a><span class="lineno"> 1688</span> memcpy(&set->work[(plength/2)*(4*l+1)],&(set->work[(plength/2)*(4*l+2)]),</div>
-<div class="line"><a name="l01689"></a><span class="lineno"> 1689</span> (plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01690"></a><span class="lineno"> 1690</span> </div>
-<div class="line"><a name="l01691"></a><span class="lineno"> 1691</span> <span class="comment">/* Get matrix U_{n,tau,l} */</span></div>
-<div class="line"><a name="l01692"></a><span class="lineno"> 1692</span> step = &(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l]);</div>
-<div class="line"><a name="l01693"></a><span class="lineno"> 1693</span> </div>
-<div class="line"><a name="l01694"></a><span class="lineno"> 1694</span> <span class="comment">/* Check if step is stable. */</span></div>
-<div class="line"><a name="l01695"></a><span class="lineno"> 1695</span> <span class="keywordflow">if</span> (step-><a class="code" href="structfpt__step__.html#a71dc6483b4f3b958519bdafeae2c1dbf" title="Indicates if the values contained represent a fast or a slow stabilized step.">stable</a>)</div>
-<div class="line"><a name="l01696"></a><span class="lineno"> 1696</span> {</div>
-<div class="line"><a name="l01697"></a><span class="lineno"> 1697</span> <span class="keywordflow">if</span> (set->flags & FPT_AL_SYMMETRY && IS_SYMMETRIC(l,m,plength))</div>
-<div class="line"><a name="l01698"></a><span class="lineno"> 1698</span> {</div>
-<div class="line"><a name="l01699"></a><span class="lineno"> 1699</span> <span class="comment">/* Multiply third and fourth polynomial with matrix U. */</span></div>
-<div class="line"><a name="l01700"></a><span class="lineno"> 1700</span> fpt_do_step_t_symmetric(set->vec3, set->vec4, step->a11[0], step->a12[0],</div>
-<div class="line"><a name="l01701"></a><span class="lineno"> 1701</span> step->a21[0], step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], tau, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01702"></a><span class="lineno"> 1702</span> }</div>
-<div class="line"><a name="l01703"></a><span class="lineno"> 1703</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01704"></a><span class="lineno"> 1704</span> {</div>
-<div class="line"><a name="l01705"></a><span class="lineno"> 1705</span> <span class="comment">/* Multiply third and fourth polynomial with matrix U. */</span></div>
-<div class="line"><a name="l01706"></a><span class="lineno"> 1706</span> fpt_do_step_t(set->vec3, set->vec4, step->a11[0], step->a12[0],</div>
-<div class="line"><a name="l01707"></a><span class="lineno"> 1707</span> step->a21[0], step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], tau, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01708"></a><span class="lineno"> 1708</span> }</div>
-<div class="line"><a name="l01709"></a><span class="lineno"> 1709</span> memcpy(&(set->vec3[plength/2]), set->vec4,(plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01710"></a><span class="lineno"> 1710</span> </div>
-<div class="line"><a name="l01711"></a><span class="lineno"> 1711</span> <span class="keywordflow">for</span> (k = 0; k < plength; k++)</div>
-<div class="line"><a name="l01712"></a><span class="lineno"> 1712</span> {</div>
-<div class="line"><a name="l01713"></a><span class="lineno"> 1713</span> <span class="keyword">set</span>->work[plength*(4*l+2)/2+k] = set->vec3[k];</div>
-<div class="line"><a name="l01714"></a><span class="lineno"> 1714</span> }</div>
-<div class="line"><a name="l01715"></a><span class="lineno"> 1715</span> }</div>
-<div class="line"><a name="l01716"></a><span class="lineno"> 1716</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01717"></a><span class="lineno"> 1717</span> {</div>
-<div class="line"><a name="l01718"></a><span class="lineno"> 1718</span> <span class="comment">/* Stabilize. */</span></div>
-<div class="line"><a name="l01719"></a><span class="lineno"> 1719</span> plength_stab = step-><a class="code" href="structfpt__step__.html#ac6767b7c6935b1f2af5dd54e2e8f690b" title="TODO Add comment here.">Ns</a>;</div>
-<div class="line"><a name="l01720"></a><span class="lineno"> 1720</span> t_stab = step-><a class="code" href="structfpt__step__.html#aeb754fe2aedc1f15cbb9c75c212772fb" title="TODO Add comment here.">ts</a>;</div>
-<div class="line"><a name="l01721"></a><span class="lineno"> 1721</span> </div>
-<div class="line"><a name="l01722"></a><span class="lineno"> 1722</span> memcpy(set->vec3,set->result,plength_stab*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01723"></a><span class="lineno"> 1723</span> memcpy(set->vec4,&(set->result[Nk]),plength_stab*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01724"></a><span class="lineno"> 1724</span> </div>
-<div class="line"><a name="l01725"></a><span class="lineno"> 1725</span> <span class="comment">/* Multiply third and fourth polynomial with matrix U. */</span></div>
-<div class="line"><a name="l01726"></a><span class="lineno"> 1726</span> <span class="keywordflow">if</span> (set->flags & FPT_AL_SYMMETRY)</div>
-<div class="line"><a name="l01727"></a><span class="lineno"> 1727</span> {</div>
-<div class="line"><a name="l01728"></a><span class="lineno"> 1728</span> <span class="keywordflow">if</span> (m <= 1)</div>
-<div class="line"><a name="l01729"></a><span class="lineno"> 1729</span> {</div>
-<div class="line"><a name="l01730"></a><span class="lineno"> 1730</span> fpt_do_step_t_symmetric(set->vec3, set->vec4, step->a11[0], step->a12[0],</div>
-<div class="line"><a name="l01731"></a><span class="lineno"> 1731</span> step->a21[0], step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], t_stab-1, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01732"></a><span class="lineno"> 1732</span> }</div>
-<div class="line"><a name="l01733"></a><span class="lineno"> 1733</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (m%2 == 0)</div>
-<div class="line"><a name="l01734"></a><span class="lineno"> 1734</span> {</div>
-<div class="line"><a name="l01735"></a><span class="lineno"> 1735</span> fpt_do_step_t_symmetric_u(set->vec3, set->vec4, step->a11[0], step->a12[0],</div>
-<div class="line"><a name="l01736"></a><span class="lineno"> 1736</span> set->xcvecs[t_stab-2], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], t_stab-1, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01737"></a><span class="lineno"> 1737</span> }</div>
-<div class="line"><a name="l01738"></a><span class="lineno"> 1738</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01739"></a><span class="lineno"> 1739</span> {</div>
-<div class="line"><a name="l01740"></a><span class="lineno"> 1740</span> fpt_do_step_t_symmetric_l(set->vec3, set->vec4,</div>
-<div class="line"><a name="l01741"></a><span class="lineno"> 1741</span> step->a21[0], step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0], set->xcvecs[t_stab-2], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], t_stab-1, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01742"></a><span class="lineno"> 1742</span> }</div>
-<div class="line"><a name="l01743"></a><span class="lineno"> 1743</span> }</div>
-<div class="line"><a name="l01744"></a><span class="lineno"> 1744</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01745"></a><span class="lineno"> 1745</span> {</div>
-<div class="line"><a name="l01746"></a><span class="lineno"> 1746</span> fpt_do_step_t(set->vec3, set->vec4, step->a11[0], step->a12[0],</div>
-<div class="line"><a name="l01747"></a><span class="lineno"> 1747</span> step->a21[0], step-><a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0], step-><a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>[0], t_stab-1, <span class="keyword">set</span>);</div>
-<div class="line"><a name="l01748"></a><span class="lineno"> 1748</span> }</div>
-<div class="line"><a name="l01749"></a><span class="lineno"> 1749</span> </div>
-<div class="line"><a name="l01750"></a><span class="lineno"> 1750</span> memcpy(&(set->vec3[plength/2]),set->vec4,(plength/2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01751"></a><span class="lineno"> 1751</span> </div>
-<div class="line"><a name="l01752"></a><span class="lineno"> 1752</span> <span class="keywordflow">for</span> (k = 0; k < plength; k++)</div>
-<div class="line"><a name="l01753"></a><span class="lineno"> 1753</span> {</div>
-<div class="line"><a name="l01754"></a><span class="lineno"> 1754</span> <span class="keyword">set</span>->work[(plength/2)*(4*l+2)+k] = <span class="keyword">set</span>->vec3[k];</div>
-<div class="line"><a name="l01755"></a><span class="lineno"> 1755</span> }</div>
-<div class="line"><a name="l01756"></a><span class="lineno"> 1756</span> }</div>
-<div class="line"><a name="l01757"></a><span class="lineno"> 1757</span> }</div>
-<div class="line"><a name="l01758"></a><span class="lineno"> 1758</span> <span class="comment">/* Half the length of polynomial arrays. */</span></div>
-<div class="line"><a name="l01759"></a><span class="lineno"> 1759</span> plength = plength>>1;</div>
-<div class="line"><a name="l01760"></a><span class="lineno"> 1760</span> }</div>
-<div class="line"><a name="l01761"></a><span class="lineno"> 1761</span> </div>
-<div class="line"><a name="l01762"></a><span class="lineno"> 1762</span> <span class="comment">/* First step */</span></div>
-<div class="line"><a name="l01763"></a><span class="lineno"> 1763</span> <span class="keywordflow">for</span> (k = 0; k <= k_end_tilde-data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>; k++)</div>
-<div class="line"><a name="l01764"></a><span class="lineno"> 1764</span> {</div>
-<div class="line"><a name="l01765"></a><span class="lineno"> 1765</span> x[k] = <span class="keyword">set</span>->work[2*(data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>+k)];</div>
-<div class="line"><a name="l01766"></a><span class="lineno"> 1766</span> }</div>
-<div class="line"><a name="l01767"></a><span class="lineno"> 1767</span> <span class="keywordflow">if</span> (k_end == Nk)</div>
-<div class="line"><a name="l01768"></a><span class="lineno"> 1768</span> {</div>
-<div class="line"><a name="l01769"></a><span class="lineno"> 1769</span> x[Nk-data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>] =</div>
-<div class="line"><a name="l01770"></a><span class="lineno"> 1770</span> data-><a class="code" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a" title="TODO Add comment here.">gammaN</a>[tk-2]*<span class="keyword">set</span>->work[2*(Nk-2)]</div>
-<div class="line"><a name="l01771"></a><span class="lineno"> 1771</span> + data-><a class="code" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d" title="TODO Add comment here.">betaN</a>[tk-2] *set->work[2*(Nk-1)]</div>
-<div class="line"><a name="l01772"></a><span class="lineno"> 1772</span> + data-><a class="code" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519" title="TODO Add comment here.">alphaN</a>[tk-2]*<span class="keyword">set</span>->work[2*(Nk-1)+1];</div>
-<div class="line"><a name="l01773"></a><span class="lineno"> 1773</span> }</div>
-<div class="line"><a name="l01774"></a><span class="lineno"> 1774</span> }</div>
-<div class="line"><a name="l01775"></a><span class="lineno"> 1775</span> </div>
-<div class="line"><a name="l01776"></a><span class="lineno"> 1776</span> <span class="keywordtype">void</span> fpt_finalize(<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>)</div>
-<div class="line"><a name="l01777"></a><span class="lineno"> 1777</span> {</div>
-<div class="line"><a name="l01778"></a><span class="lineno"> 1778</span> <span class="keywordtype">int</span> tau;</div>
-<div class="line"><a name="l01779"></a><span class="lineno"> 1779</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l01780"></a><span class="lineno"> 1780</span> <span class="keywordtype">int</span> m;</div>
-<div class="line"><a name="l01781"></a><span class="lineno"> 1781</span> <a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data</a> *data;</div>
-<div class="line"><a name="l01782"></a><span class="lineno"> 1782</span> <span class="keywordtype">int</span> k_start_tilde;</div>
-<div class="line"><a name="l01783"></a><span class="lineno"> 1783</span> <span class="keywordtype">int</span> N_tilde;</div>
-<div class="line"><a name="l01784"></a><span class="lineno"> 1784</span> <span class="keywordtype">int</span> firstl, lastl;</div>
-<div class="line"><a name="l01785"></a><span class="lineno"> 1785</span> <span class="keywordtype">int</span> plength;</div>
-<div class="line"><a name="l01786"></a><span class="lineno"> 1786</span> <span class="keyword">const</span> <span class="keywordtype">int</span> M = <span class="keyword">set</span>->M;</div>
-<div class="line"><a name="l01787"></a><span class="lineno"> 1787</span> </div>
-<div class="line"><a name="l01788"></a><span class="lineno"> 1788</span> <span class="comment">/* TODO Clean up DPT transform data structures. */</span></div>
-<div class="line"><a name="l01789"></a><span class="lineno"> 1789</span> <span class="keywordflow">for</span> (m = 0; m < M; m++)</div>
-<div class="line"><a name="l01790"></a><span class="lineno"> 1790</span> {</div>
-<div class="line"><a name="l01791"></a><span class="lineno"> 1791</span> <span class="comment">/* Check if precomputed. */</span></div>
-<div class="line"><a name="l01792"></a><span class="lineno"> 1792</span> data = &<span class="keyword">set</span>->dpt[m];</div>
-<div class="line"><a name="l01793"></a><span class="lineno"> 1793</span> <span class="keywordflow">if</span> (data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a> != (<a class="code" href="structfpt__step__.html" title="Holds data for a single multiplication step in the cascade summation.">fpt_step</a>**)NULL)</div>
-<div class="line"><a name="l01794"></a><span class="lineno"> 1794</span> {</div>
-<div class="line"><a name="l01795"></a><span class="lineno"> 1795</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519" title="TODO Add comment here.">alphaN</a>);</div>
-<div class="line"><a name="l01796"></a><span class="lineno"> 1796</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d" title="TODO Add comment here.">betaN</a>);</div>
-<div class="line"><a name="l01797"></a><span class="lineno"> 1797</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a" title="TODO Add comment here.">gammaN</a>);</div>
-<div class="line"><a name="l01798"></a><span class="lineno"> 1798</span> data-><a class="code" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519" title="TODO Add comment here.">alphaN</a> = NULL;</div>
-<div class="line"><a name="l01799"></a><span class="lineno"> 1799</span> data-><a class="code" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d" title="TODO Add comment here.">betaN</a> = NULL;</div>
-<div class="line"><a name="l01800"></a><span class="lineno"> 1800</span> data-><a class="code" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a" title="TODO Add comment here.">gammaN</a> = NULL;</div>
-<div class="line"><a name="l01801"></a><span class="lineno"> 1801</span> </div>
-<div class="line"><a name="l01802"></a><span class="lineno"> 1802</span> <span class="comment">/* Free precomputed data. */</span></div>
-<div class="line"><a name="l01803"></a><span class="lineno"> 1803</span> k_start_tilde = <a class="code" href="fpt_8c.html#a58f899926cc6e95ea54dd68d131979b8" title="Minimum degree at top of a cascade.">K_START_TILDE</a>(data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>,X(next_power_of_2)(data-><a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comme [...]
-<div class="line"><a name="l01804"></a><span class="lineno"> 1804</span> <span class="comment">/*set->N*/</span>);</div>
-<div class="line"><a name="l01805"></a><span class="lineno"> 1805</span> N_tilde = N_TILDE(set->N);</div>
-<div class="line"><a name="l01806"></a><span class="lineno"> 1806</span> plength = 4;</div>
-<div class="line"><a name="l01807"></a><span class="lineno"> 1807</span> <span class="keywordflow">for</span> (tau = 1; tau < <span class="keyword">set</span>->t; tau++)</div>
-<div class="line"><a name="l01808"></a><span class="lineno"> 1808</span> {</div>
-<div class="line"><a name="l01809"></a><span class="lineno"> 1809</span> <span class="comment">/* Compute first l. */</span></div>
-<div class="line"><a name="l01810"></a><span class="lineno"> 1810</span> firstl = <a class="code" href="fpt_8c.html#ac81f7eac1a01b06e91817857f47b9804" title="Index of first block of four functions at level.">FIRST_L</a>(k_start_tilde,plength);</div>
-<div class="line"><a name="l01811"></a><span class="lineno"> 1811</span> <span class="comment">/* Compute last l. */</span></div>
-<div class="line"><a name="l01812"></a><span class="lineno"> 1812</span> lastl = <a class="code" href="fpt_8c.html#ac9f7e1529d635e3357d1e081ddf7e349" title="Index of last block of four functions at level.">LAST_L</a>(N_tilde,plength);</div>
-<div class="line"><a name="l01813"></a><span class="lineno"> 1813</span> </div>
-<div class="line"><a name="l01814"></a><span class="lineno"> 1814</span> <span class="comment">/* For l = 0,...2^{t-tau-1}-1 compute the matrices U_{n,tau,l}. */</span></div>
-<div class="line"><a name="l01815"></a><span class="lineno"> 1815</span> <span class="keywordflow">for</span> (l = firstl; l <= lastl; l++)</div>
-<div class="line"><a name="l01816"></a><span class="lineno"> 1816</span> {</div>
-<div class="line"><a name="l01817"></a><span class="lineno"> 1817</span> <span class="comment">/* Free components. */</span></div>
-<div class="line"><a name="l01818"></a><span class="lineno"> 1818</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a11[0]);</div>
-<div class="line"><a name="l01819"></a><span class="lineno"> 1819</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a12[0]);</div>
-<div class="line"><a name="l01820"></a><span class="lineno"> 1820</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a21[0]);</div>
-<div class="line"><a name="l01821"></a><span class="lineno"> 1821</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0]);</div>
-<div class="line"><a name="l01822"></a><span class="lineno"> 1822</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a11[0] = NULL;</div>
-<div class="line"><a name="l01823"></a><span class="lineno"> 1823</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a12[0] = NULL;</div>
-<div class="line"><a name="l01824"></a><span class="lineno"> 1824</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a21[0] = NULL;</div>
-<div class="line"><a name="l01825"></a><span class="lineno"> 1825</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>[0] = NULL;</div>
-<div class="line"><a name="l01826"></a><span class="lineno"> 1826</span> <span class="comment">/* Free components. */</span></div>
-<div class="line"><a name="l01827"></a><span class="lineno"> 1827</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a11);</div>
-<div class="line"><a name="l01828"></a><span class="lineno"> 1828</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a12);</div>
-<div class="line"><a name="l01829"></a><span class="lineno"> 1829</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a21);</div>
-<div class="line"><a name="l01830"></a><span class="lineno"> 1830</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>);</div>
-<div class="line"><a name="l01831"></a><span class="lineno"> 1831</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>);</div>
-<div class="line"><a name="l01832"></a><span class="lineno"> 1832</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a11 = NULL;</div>
-<div class="line"><a name="l01833"></a><span class="lineno"> 1833</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a12 = NULL;</div>
-<div class="line"><a name="l01834"></a><span class="lineno"> 1834</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].a21 = NULL;</div>
-<div class="line"><a name="l01835"></a><span class="lineno"> 1835</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a> = NULL;</div>
-<div class="line"><a name="l01836"></a><span class="lineno"> 1836</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau][l].<a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a> = NULL;</div>
-<div class="line"><a name="l01837"></a><span class="lineno"> 1837</span> }</div>
-<div class="line"><a name="l01838"></a><span class="lineno"> 1838</span> <span class="comment">/* Free pointers for current level. */</span></div>
-<div class="line"><a name="l01839"></a><span class="lineno"> 1839</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau]);</div>
-<div class="line"><a name="l01840"></a><span class="lineno"> 1840</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>[tau] = NULL;</div>
-<div class="line"><a name="l01841"></a><span class="lineno"> 1841</span> <span class="comment">/* Double length of polynomials. */</span></div>
-<div class="line"><a name="l01842"></a><span class="lineno"> 1842</span> plength = plength<<1;</div>
-<div class="line"><a name="l01843"></a><span class="lineno"> 1843</span> }</div>
-<div class="line"><a name="l01844"></a><span class="lineno"> 1844</span> <span class="comment">/* Free steps. */</span></div>
-<div class="line"><a name="l01845"></a><span class="lineno"> 1845</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>);</div>
-<div class="line"><a name="l01846"></a><span class="lineno"> 1846</span> data-><a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a> = NULL;</div>
-<div class="line"><a name="l01847"></a><span class="lineno"> 1847</span> }</div>
-<div class="line"><a name="l01848"></a><span class="lineno"> 1848</span> </div>
-<div class="line"><a name="l01849"></a><span class="lineno"> 1849</span> <span class="keywordflow">if</span> (!(set->flags & FPT_NO_DIRECT_ALGORITHM))</div>
-<div class="line"><a name="l01850"></a><span class="lineno"> 1850</span> {</div>
-<div class="line"><a name="l01851"></a><span class="lineno"> 1851</span> <span class="comment">/* Check, if recurrence coefficients must be copied. */</span></div>
-<div class="line"><a name="l01852"></a><span class="lineno"> 1852</span> <span class="comment">//fprintf(stderr,"\nfpt_finalize: %d\n",set->flags & FPT_PERSISTENT_DATA);</span></div>
-<div class="line"><a name="l01853"></a><span class="lineno"> 1853</span> <span class="keywordflow">if</span> (!(set->flags & FPT_PERSISTENT_DATA))</div>
-<div class="line"><a name="l01854"></a><span class="lineno"> 1854</span> {</div>
-<div class="line"><a name="l01855"></a><span class="lineno"> 1855</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7" title="< TODO Add comment here.">_alpha</a>);</div>
-<div class="line"><a name="l01856"></a><span class="lineno"> 1856</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb" title="TODO Add comment here.">_beta</a>);</div>
-<div class="line"><a name="l01857"></a><span class="lineno"> 1857</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(data-><a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc" title="TODO Add comment here.">_gamma</a>);</div>
-<div class="line"><a name="l01858"></a><span class="lineno"> 1858</span> }</div>
-<div class="line"><a name="l01859"></a><span class="lineno"> 1859</span> data-><a class="code" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7" title="< TODO Add comment here.">_alpha</a> = NULL;</div>
-<div class="line"><a name="l01860"></a><span class="lineno"> 1860</span> data-><a class="code" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb" title="TODO Add comment here.">_beta</a> = NULL;</div>
-<div class="line"><a name="l01861"></a><span class="lineno"> 1861</span> data-><a class="code" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc" title="TODO Add comment here.">_gamma</a> = NULL;</div>
-<div class="line"><a name="l01862"></a><span class="lineno"> 1862</span> }</div>
-<div class="line"><a name="l01863"></a><span class="lineno"> 1863</span> }</div>
-<div class="line"><a name="l01864"></a><span class="lineno"> 1864</span> </div>
-<div class="line"><a name="l01865"></a><span class="lineno"> 1865</span> <span class="comment">/* Delete array of DPT transform data. */</span></div>
-<div class="line"><a name="l01866"></a><span class="lineno"> 1866</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->dpt);</div>
-<div class="line"><a name="l01867"></a><span class="lineno"> 1867</span> <span class="keyword">set</span>->dpt = NULL;</div>
-<div class="line"><a name="l01868"></a><span class="lineno"> 1868</span> </div>
-<div class="line"><a name="l01869"></a><span class="lineno"> 1869</span> <span class="keywordflow">for</span> (tau = 1; tau < <span class="keyword">set</span>->t+1; tau++)</div>
-<div class="line"><a name="l01870"></a><span class="lineno"> 1870</span> {</div>
-<div class="line"><a name="l01871"></a><span class="lineno"> 1871</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->xcvecs[tau-1]);</div>
-<div class="line"><a name="l01872"></a><span class="lineno"> 1872</span> <span class="keyword">set</span>->xcvecs[tau-1] = NULL;</div>
-<div class="line"><a name="l01873"></a><span class="lineno"> 1873</span> }</div>
-<div class="line"><a name="l01874"></a><span class="lineno"> 1874</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->xcvecs);</div>
-<div class="line"><a name="l01875"></a><span class="lineno"> 1875</span> <span class="keyword">set</span>->xcvecs = NULL;</div>
-<div class="line"><a name="l01876"></a><span class="lineno"> 1876</span> </div>
-<div class="line"><a name="l01877"></a><span class="lineno"> 1877</span> <span class="comment">/* Free auxilliary arrays. */</span></div>
-<div class="line"><a name="l01878"></a><span class="lineno"> 1878</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->work);</div>
-<div class="line"><a name="l01879"></a><span class="lineno"> 1879</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->result);</div>
-<div class="line"><a name="l01880"></a><span class="lineno"> 1880</span> </div>
-<div class="line"><a name="l01881"></a><span class="lineno"> 1881</span> <span class="comment">/* Check if fast transform is activated. */</span></div>
-<div class="line"><a name="l01882"></a><span class="lineno"> 1882</span> <span class="keywordflow">if</span> (!(set->flags & FPT_NO_FAST_ALGORITHM))</div>
-<div class="line"><a name="l01883"></a><span class="lineno"> 1883</span> {</div>
-<div class="line"><a name="l01884"></a><span class="lineno"> 1884</span> <span class="comment">/* Free auxilliary arrays. */</span></div>
-<div class="line"><a name="l01885"></a><span class="lineno"> 1885</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->vec3);</div>
-<div class="line"><a name="l01886"></a><span class="lineno"> 1886</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->vec4);</div>
-<div class="line"><a name="l01887"></a><span class="lineno"> 1887</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->z);</div>
-<div class="line"><a name="l01888"></a><span class="lineno"> 1888</span> <span class="keyword">set</span>->work = NULL;</div>
-<div class="line"><a name="l01889"></a><span class="lineno"> 1889</span> <span class="keyword">set</span>->result = NULL;</div>
-<div class="line"><a name="l01890"></a><span class="lineno"> 1890</span> <span class="keyword">set</span>->vec3 = NULL;</div>
-<div class="line"><a name="l01891"></a><span class="lineno"> 1891</span> <span class="keyword">set</span>->vec4 = NULL;</div>
-<div class="line"><a name="l01892"></a><span class="lineno"> 1892</span> <span class="keyword">set</span>->z = NULL;</div>
-<div class="line"><a name="l01893"></a><span class="lineno"> 1893</span> </div>
-<div class="line"><a name="l01894"></a><span class="lineno"> 1894</span> <span class="comment">/* Free FFTW plans. */</span></div>
-<div class="line"><a name="l01895"></a><span class="lineno"> 1895</span> <span class="keywordflow">for</span>(tau = 0; tau < <span class="keyword">set</span>->t<span class="comment">/*-1*/</span>; tau++)</div>
-<div class="line"><a name="l01896"></a><span class="lineno"> 1896</span> {</div>
-<div class="line"><a name="l01897"></a><span class="lineno"> 1897</span> <span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l01898"></a><span class="lineno"> 1898</span> <span class="preprocessor"></span>{</div>
-<div class="line"><a name="l01899"></a><span class="lineno"> 1899</span> fftw_destroy_plan(set->plans_dct3[tau]);</div>
-<div class="line"><a name="l01900"></a><span class="lineno"> 1900</span> fftw_destroy_plan(set->plans_dct2[tau]);</div>
-<div class="line"><a name="l01901"></a><span class="lineno"> 1901</span> }</div>
-<div class="line"><a name="l01902"></a><span class="lineno"> 1902</span> <span class="keyword">set</span>->plans_dct3[tau] = NULL;</div>
-<div class="line"><a name="l01903"></a><span class="lineno"> 1903</span> <span class="keyword">set</span>->plans_dct2[tau] = NULL;</div>
-<div class="line"><a name="l01904"></a><span class="lineno"> 1904</span> }</div>
-<div class="line"><a name="l01905"></a><span class="lineno"> 1905</span> </div>
-<div class="line"><a name="l01906"></a><span class="lineno"> 1906</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->plans_dct3);</div>
-<div class="line"><a name="l01907"></a><span class="lineno"> 1907</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->plans_dct2);</div>
-<div class="line"><a name="l01908"></a><span class="lineno"> 1908</span> <span class="keyword">set</span>->plans_dct3 = NULL;</div>
-<div class="line"><a name="l01909"></a><span class="lineno"> 1909</span> <span class="keyword">set</span>->plans_dct2 = NULL;</div>
-<div class="line"><a name="l01910"></a><span class="lineno"> 1910</span> }</div>
-<div class="line"><a name="l01911"></a><span class="lineno"> 1911</span> </div>
-<div class="line"><a name="l01912"></a><span class="lineno"> 1912</span> <span class="keywordflow">if</span> (!(set->flags & FPT_NO_DIRECT_ALGORITHM))</div>
-<div class="line"><a name="l01913"></a><span class="lineno"> 1913</span> {</div>
-<div class="line"><a name="l01914"></a><span class="lineno"> 1914</span> <span class="comment">/* Delete arrays of Chebyshev nodes. */</span></div>
-<div class="line"><a name="l01915"></a><span class="lineno"> 1915</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->xc_slow);</div>
-<div class="line"><a name="l01916"></a><span class="lineno"> 1916</span> <span class="keyword">set</span>->xc_slow = NULL;</div>
-<div class="line"><a name="l01917"></a><span class="lineno"> 1917</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(set->temp);</div>
-<div class="line"><a name="l01918"></a><span class="lineno"> 1918</span> <span class="keyword">set</span>->temp = NULL;</div>
-<div class="line"><a name="l01919"></a><span class="lineno"> 1919</span> }</div>
-<div class="line"><a name="l01920"></a><span class="lineno"> 1920</span> </div>
-<div class="line"><a name="l01921"></a><span class="lineno"> 1921</span> <span class="comment">/* Free DPT set structure. */</span></div>
-<div class="line"><a name="l01922"></a><span class="lineno"> 1922</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(<span class="keyword">set</span>);</div>
-<div class="line"><a name="l01923"></a><span class="lineno"> 1923</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/fpt_8h_source.html b/doc/api/html/fpt_8h_source.html
deleted file mode 100644
index d200a63..0000000
--- a/doc/api/html/fpt_8h_source.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fpt.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_d47b87128a15c0ce57cf8f363265bec1.html">fpt</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">fpt.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: fpt.h 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#ifndef _FPT_H_</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor"></span><span class="preprocessor">#define _FPT_H_</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structfpt__step__.html" title="Holds data for a single multiplication step in the cascade summation.">fpt_step_</a></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> {</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keywordtype">bool</span> <a class="code" href="structfpt__step__.html#a71dc6483b4f3b958519bdafeae2c1dbf" title="Indicates if the values contained represent a fast or a slow stabilized step.">stable</a>; </div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keywordtype">int</span> <a class="code" href="structfpt__step__.html#ac6767b7c6935b1f2af5dd54e2e8f690b" title="TODO Add comment here.">Ns</a>; </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keywordtype">int</span> <a class="code" href="structfpt__step__.html#aeb754fe2aedc1f15cbb9c75c212772fb" title="TODO Add comment here.">ts</a>; </div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">double</span> **a11,**a12,**a21,**<a class="code" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9" title="The matrix components.">a22</a>; </div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540" title=" ">g</a>; </div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> } <a class="code" href="fpt_8c.html#a4c7f62127651d301d4604b3a6519458d" title="Holds data for a single multiplication step in the cascade summation.">fpt_step</a>;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data_</a></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> {</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <a class="code" href="structfpt__step__.html" title="Holds data for a single multiplication step in the cascade summation.">fpt_step</a> **<a class="code" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854" title="The cascade summation steps.">steps</a>; </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">int</span> <a class="code" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334" title="TODO Add comment here.">k_start</a>; </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519" title="TODO Add comment here.">alphaN</a>; </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d" title="TODO Add comment here.">betaN</a>; </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a" title="TODO Add comment here.">gammaN</a>; </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">double</span> <a class="code" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e" title="TODO Add comment here.">alpha_0</a>; </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordtype">double</span> <a class="code" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa" title="TODO Add comment here.">beta_0</a>; </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">double</span> <a class="code" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a" title="TODO Add comment here.">gamma_m1</a>; </div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment">/* Data for direct transform. */</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"><a class="code" href="structfpt__data__.html#ad56b765b9faabb4071e844e7d1355151"> 52</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#ad56b765b9faabb4071e844e7d1355151" title="< TODO Add comment here.">alpha</a>; </div>
-<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="structfpt__data__.html#af28f490521ca26420df33a1f590363e3"> 53</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#af28f490521ca26420df33a1f590363e3" title="TODO Add comment here.">beta</a>; </div>
-<div class="line"><a name="l00054"></a><span class="lineno"><a class="code" href="structfpt__data__.html#a13aaa57c27f3ab5eab4c28d47d501723"> 54</a></span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__data__.html#a13aaa57c27f3ab5eab4c28d47d501723" title="TODO Add comment here.">gamma</a>; </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> } <a class="code" href="fpt_8c.html#a5141ba7ff5b14b5fbf7ee769943f1c10" title="Holds data for a single cascade summation.">fpt_data</a>;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set_s_</a></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> {</div>
-<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="structfpt__set__s__.html#a401070e7725566f06ae740e7e99a12a2"> 62</a></span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> <a class="code" href="structfpt__set__s__.html#a401070e7725566f06ae740e7e99a12a2" title="The flags.">flags</a>; </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordtype">int</span> <a class="code" href="structfpt__set__s__.html#a2387122a1e670e2e61b1699458224804" title="The number of DPT transforms.">M</a>; </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">int</span> <a class="code" href="structfpt__set__s__.html#aa353a04683b31bed668ee490d5df1b81" title="The transform length.">N</a>; </div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">int</span> <a class="code" href="structfpt__set__s__.html#a1d35166e05db58736e422850fe02edef" title="The exponent of N.">t</a>; </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <a class="code" href="structfpt__data__.html" title="Holds data for a single cascade summation.">fpt_data</a> *<a class="code" href="structfpt__set__s__.html#a0509dfa979aa395a80d8f38b2f5fb760" title="The DPT transform data.">dpt</a>; </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordtype">double</span> **<a class="code" href="structfpt__set__s__.html#a58a8f2867286e0be19dd89e8d41c033b" title="Array of pointers to arrays containing the Chebyshev nodes.">xcvecs</a>; </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordtype">double</span> *<a class="code" href="structfpt__set__s__.html#a226e29e0f97627e77ec4fcebd0c49fdf" title="Array for Chebychev-nodes.">xc</a>; </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keywordtype">double</span> _Complex *temp; </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordtype">double</span> _Complex *work; </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keywordtype">double</span> _Complex *result; </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">double</span> _Complex *vec3;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordtype">double</span> _Complex *vec4;</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordtype">double</span> _Complex *z;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> fftw_plan *<a class="code" href="structfpt__set__s__.html#a5f146823d105906abf0cdc4c5f9638dc" title="Transform plans for the fftw library.">plans_dct3</a>; </div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> fftw_plan *<a class="code" href="structfpt__set__s__.html#aead22ae71c82ad37da07f6166bf53fbc" title="Transform plans for the fftw library.">plans_dct2</a>; </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> fftw_r2r_kind *<a class="code" href="structfpt__set__s__.html#a15eafd93be80eeea02173a9042e303d3" title="Transform kinds for fftw library.">kinds</a>; </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> fftw_r2r_kind *<a class="code" href="structfpt__set__s__.html#afd6508cc584ac06b9f679be441b6e7f6" title="Transform kinds for fftw library.">kindsr</a>; </div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">int</span> *<a class="code" href="structfpt__set__s__.html#a26355113f8348c270cd02bc196fad681" title="Transform lengths for fftw library.">lengths</a>; </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="comment">/* Data for slow transforms. */</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">double</span> *xc_slow;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> } <a class="code" href="fpt_8c.html#a06f7c65536489b0602c70a616e9f1fe8" title="Holds data for a set of cascade summations.">fpt_set_s</a>;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="preprocessor">#endif </span><span class="comment">/*_FPT_H_*/</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/ftv2blank.png b/doc/api/html/ftv2blank.png
deleted file mode 100644
index 63c605b..0000000
Binary files a/doc/api/html/ftv2blank.png and /dev/null differ
diff --git a/doc/api/html/ftv2cl.png b/doc/api/html/ftv2cl.png
deleted file mode 100644
index 132f657..0000000
Binary files a/doc/api/html/ftv2cl.png and /dev/null differ
diff --git a/doc/api/html/ftv2doc.png b/doc/api/html/ftv2doc.png
deleted file mode 100644
index 17edabf..0000000
Binary files a/doc/api/html/ftv2doc.png and /dev/null differ
diff --git a/doc/api/html/ftv2folderclosed.png b/doc/api/html/ftv2folderclosed.png
deleted file mode 100644
index bb8ab35..0000000
Binary files a/doc/api/html/ftv2folderclosed.png and /dev/null differ
diff --git a/doc/api/html/ftv2folderopen.png b/doc/api/html/ftv2folderopen.png
deleted file mode 100644
index d6c7f67..0000000
Binary files a/doc/api/html/ftv2folderopen.png and /dev/null differ
diff --git a/doc/api/html/ftv2lastnode.png b/doc/api/html/ftv2lastnode.png
deleted file mode 100644
index 63c605b..0000000
Binary files a/doc/api/html/ftv2lastnode.png and /dev/null differ
diff --git a/doc/api/html/ftv2link.png b/doc/api/html/ftv2link.png
deleted file mode 100644
index 17edabf..0000000
Binary files a/doc/api/html/ftv2link.png and /dev/null differ
diff --git a/doc/api/html/ftv2mlastnode.png b/doc/api/html/ftv2mlastnode.png
deleted file mode 100644
index 0b63f6d..0000000
Binary files a/doc/api/html/ftv2mlastnode.png and /dev/null differ
diff --git a/doc/api/html/ftv2mnode.png b/doc/api/html/ftv2mnode.png
deleted file mode 100644
index 0b63f6d..0000000
Binary files a/doc/api/html/ftv2mnode.png and /dev/null differ
diff --git a/doc/api/html/ftv2mo.png b/doc/api/html/ftv2mo.png
deleted file mode 100644
index 4bfb80f..0000000
Binary files a/doc/api/html/ftv2mo.png and /dev/null differ
diff --git a/doc/api/html/ftv2node.png b/doc/api/html/ftv2node.png
deleted file mode 100644
index 63c605b..0000000
Binary files a/doc/api/html/ftv2node.png and /dev/null differ
diff --git a/doc/api/html/ftv2ns.png b/doc/api/html/ftv2ns.png
deleted file mode 100644
index 72e3d71..0000000
Binary files a/doc/api/html/ftv2ns.png and /dev/null differ
diff --git a/doc/api/html/ftv2plastnode.png b/doc/api/html/ftv2plastnode.png
deleted file mode 100644
index c6ee22f..0000000
Binary files a/doc/api/html/ftv2plastnode.png and /dev/null differ
diff --git a/doc/api/html/ftv2pnode.png b/doc/api/html/ftv2pnode.png
deleted file mode 100644
index c6ee22f..0000000
Binary files a/doc/api/html/ftv2pnode.png and /dev/null differ
diff --git a/doc/api/html/ftv2splitbar.png b/doc/api/html/ftv2splitbar.png
deleted file mode 100644
index fe895f2..0000000
Binary files a/doc/api/html/ftv2splitbar.png and /dev/null differ
diff --git a/doc/api/html/ftv2vertline.png b/doc/api/html/ftv2vertline.png
deleted file mode 100644
index 63c605b..0000000
Binary files a/doc/api/html/ftv2vertline.png and /dev/null differ
diff --git a/doc/api/html/functions.html b/doc/api/html/functions.html
deleted file mode 100644
index 7fd3bab..0000000
--- a/doc/api/html/functions.html
+++ /dev/null
@@ -1,90 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li class="current"><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index__"></a>- _ -</h3><ul>
-<li>_alpha
-: <a class="el" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7">fpt_data_</a>
-</li>
-<li>_beta
-: <a class="el" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb">fpt_data_</a>
-</li>
-<li>_gamma
-: <a class="el" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc">fpt_data_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x61.html b/doc/api/html/functions_0x61.html
deleted file mode 100644
index 1dd5a67..0000000
--- a/doc/api/html/functions_0x61.html
+++ /dev/null
@@ -1,142 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li class="current"><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
-<li>a
-: <a class="el" href="structnnfftf__plan.html#ab0a39deb647f2a862caf5a6cfaf4939b">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a0a30183077239e2de76e5de626dc92e9">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a41260d5c377bdd918b4952b4730b6908">nnfftl_plan</a>
-</li>
-<li>a22
-: <a class="el" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9">fpt_step_</a>
-</li>
-<li>act_nfft_plan
-: <a class="el" href="structnsfftf__plan.html#a505021fefe68002ba73c78815166a73c">nsfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a28eeabbe1dbef7ccf1c2b8c683a4b5dc">nsfftl_plan</a>
-</li>
-<li>Ad
-: <a class="el" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef">fastsum_plan_</a>
-</li>
-<li>Add
-: <a class="el" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc">fastsum_plan_</a>
-</li>
-<li>alpha
-: <a class="el" href="structfpt__data__.html#ad56b765b9faabb4071e844e7d1355151">fpt_data_</a>
-, <a class="el" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e">nfsft_wisdom</a>
-, <a class="el" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a">fgt_plan</a>
-, <a class="el" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087">fastsum_plan_</a>
-</li>
-<li>alpha_0
-: <a class="el" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e">fpt_data_</a>
-</li>
-<li>alpha_iter
-: <a class="el" href="structsolverf__plan__double.html#ae1d25f3ba1b23f7d5953991495c91ce3">solverf_plan_double</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a6e7a960d8661f6c459ebac7085e2587f">infct_adjoint_plan</a>
-, <a class="el" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#ad149f66fa5dde187b3ef7860e593de01">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a7ea0b68ab2ccfe01df7a3747a5fed15a">solverl_plan_double</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#aad358c99ea10d70c4984bf9898820865">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a9abf5757d92159acfd73366a4c4df7be">infft_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#ae202e8af2161d1d64bb32e49fc16f5f0">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#ae6e228dc1df00e0b3de8873f0de12675">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#aef3f9b375d7e43fbcbea60380c5e9f34">infst_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a740c87ac77f68578613d58e569deedb2">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structsolverf__plan__complex.html#ac2ce57e2bfbc31f9262e5ce93562d899">solverf_plan_complex</a>
-</li>
-<li>alphaN
-: <a class="el" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519">fpt_data_</a>
-</li>
-<li>aN1
-: <a class="el" href="structnnfftf__plan.html#a405914d88ec36f1bf8438ebfed59f294">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#af262dc79891366e77bb15789aa24f2cd">nnfftl_plan</a>
-, <a class="el" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb">nnfft_plan</a>
-</li>
-<li>aN1_total
-: <a class="el" href="structnnfft__plan.html#acb1a1fa5fdb73d2187e9e9d8e4415921">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#aa791fcca6424d42640020e178e8319e7">nnfftl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a4bfc7abd18935616365f7925b2994e38">nnfftf_plan</a>
-</li>
-<li>aux
-: <a class="el" href="structnfsoftf__plan__.html#a5f7c39509a2403a9bc17824be7a3c3a9">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#ae669348fbbb187c8c521f6a89c8f3720">nfsoftl_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#ae31e501405bebb72dcfe9831b34be76c">nfsoft_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x62.html b/doc/api/html/functions_0x62.html
deleted file mode 100644
index 650d74a..0000000
--- a/doc/api/html/functions_0x62.html
+++ /dev/null
@@ -1,122 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li class="current"><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
-<li>b
-: <a class="el" href="structnfftf__plan.html#a3ede2fe9c94e00ec59150ba2971facb2">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a6eb955f63212f63c0ac26894f8355caf">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#a49927bec2aa96ab8596740011fabb914">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a8378f952b6e05cd58225877eee84f2e7">nfstl_plan</a>
-, <a class="el" href="structnfct__plan.html#af1c2c2fe35f5b574a39109bb7b176270">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#adbd7faf4a853905d26899885e5ca3b38">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#aa91e909254c1beb83e2e971df50b96ca">nnfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#a80c548cbcc4defbac2b544602a5baa85">nfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a01287f3f68aff7e5d7ce35d3163021e2">nfctl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#ada085ec8f6099bfcaa7a193745689c9a">nnfftl_plan</a>
-, <a class="el" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4">fgt_plan</a>
-, <a class="el" href="structnfstf__plan.html#a2ca69cf1b6dea39e81cba93d0d1667d8">nfstf_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972">fastsum_plan_</a>
-</li>
-<li>beta
-: <a class="el" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255">nfsft_wisdom</a>
-, <a class="el" href="structfpt__data__.html#af28f490521ca26420df33a1f590363e3">fpt_data_</a>
-</li>
-<li>beta_0
-: <a class="el" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa">fpt_data_</a>
-</li>
-<li>beta_iter
-: <a class="el" href="structsolver__plan__complex.html#af13036b1a6f6edabe3fd862f77cf5000">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#aebfe38cf3b3ca344bbfbb7b1cf41eca8">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__double.html#a1c60e5fd15da3722f9b8213d1634c86a">solverl_plan_double</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a7714746a66fd3657bd247062c9c5cb24">infsft_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a0aa7b8faeab03acb6011b673882282ea">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a444f54274b78ec9162683d2cc9cb3160">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#ac622efae9216d5d4335118084c7fcbfa">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structsolverf__plan__complex.html#abd007d004fedd5bb4b9eb919d8e928d8">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#a4b53103abc562b5c603b4b656d1992fa">solverf_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#ab0f9266a50fc4a3acda9659b2c0920e3">solverl_plan_complex</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a3e6ea22841cd010652beb76f554bdf92">infct_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a09f8c30247659fc918d48521ba5ed5e8">infft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a7f3271035bca7b994475e565ab1ffb22">imri_inh_2d1d_adjoint_plan</a>
-</li>
-<li>betaN
-: <a class="el" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d">fpt_data_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x63.html b/doc/api/html/functions_0x63.html
deleted file mode 100644
index b681f20..0000000
--- a/doc/api/html/functions_0x63.html
+++ /dev/null
@@ -1,105 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li class="current"><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
-<li>c_phi_inv
-: <a class="el" href="structnfftf__plan.html#aa71f70b332bbb9868caad1db9f6cda02">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a38d2c1dec96ad6d632133bc1dcbf82cb">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#a2c42ae2c8ca95bb4c0c1dfc279bc2cab">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a7fdb409271e18f5dec1ac622af10d32a">nfstl_plan</a>
-, <a class="el" href="structnfct__plan.html#aa217dda883fc3533b95bf6ab6ccff888">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a89b1d6ef566671d479eaaf4e50f666cb">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#ab9b9f0d173b9526d60c1ae8fbec1e1f7">nnfftl_plan</a>
-, <a class="el" href="structnnfft__plan.html#a9073b3c76f70f8b9caedac7f5574ce89">nnfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#afdcd5a1259a4fb7e7271efe30a207265">nfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a2b69489da0118e06cba24db6d73ea934">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a9d59ca4338fe39f2e22f4e5d3155deba">nfstf_plan</a>
-</li>
-<li>center_nfft_plan
-: <a class="el" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e">nsfft_plan</a>
-, <a class="el" href="structnsfftf__plan.html#aa01b9e613b9847fa4cc6278fcb3ae660">nsfftf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#af26a51757ddb28c4bcb37a0426e83fc1">nsfftl_plan</a>
-</li>
-<li>cheby
-: <a class="el" href="structnfsoftf__plan__.html#a73e75b0a9f8ceebffe6923c90c04c312">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#a681110b5c15effe7ef2781249e049119">nfsoftl_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x64.html b/doc/api/html/functions_0x64.html
deleted file mode 100644
index caaa50b..0000000
--- a/doc/api/html/functions_0x64.html
+++ /dev/null
@@ -1,212 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li class="current"><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
-<li>d
-: <a class="el" href="structnfftf__plan.html#a35ff58e4549b1c5292fd03cb215debac">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a1129b984a15339cca4fbbbc2190d43af">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8">nfst_plan</a>
-, <a class="el" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307">fastsum_plan_</a>
-, <a class="el" href="structnfstl__plan.html#a66ac609113d5f8debb056f3c62f6b14b">nfstl_plan</a>
-, <a class="el" href="structnfct__plan.html#a998a428a06532646854e8add72c5ca63">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#ae6d3ce66c1d6d2fd0f507d83df91f549">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6">nnfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#a4c139d72e93078b54f4240ecd7f6454f">nfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#aa42a9c638dec4cfa622f2e3f7e7c1dc3">nfctl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a14dac9d67ed25ff370516f66668a8ec6">nnfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#a161e392c8404d11f3237350b23e8c041">nsfftf_plan</a>
-, <a class="el" href="structnfstf__plan.html#aa792b04cd0fa4f09175773aaa48f6a69">nfstf_plan</a>
-, <a class="el" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aca82cd28238f0c1a5171eabd1d301f90">nsfftl_plan</a>
-</li>
-<li>deltax0
-: <a class="el" href="structtaylor__plan.html#a09164bdbcba8f9ecc7a58904574ff07b">taylor_plan</a>
-</li>
-<li>direct_plan
-: <a class="el" href="structnnfftf__plan.html#a15fe2e694c1b999008600c1f4a5dc2be">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#aa59e9ff1ad2fe1d90e077451831c6596">nnfftl_plan</a>
-</li>
-<li>dot_p_hat_iter
-: <a class="el" href="structsolverf__plan__complex.html#a3d2a5ea538a77dc4f2da9b53beab9c01">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#a2bf2a21b09e47a883f9665b4ec38f3c2">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#a0cced7bb2f3b85b75b765d796e2c741d">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a21f781633362300a145e71ea88febbae">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#a4941cd9e60935f7e39a0c86a52202c02">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a2f43c87a598dff5b6e87960a07864148">solverl_plan_double</a>
-</li>
-<li>dot_p_iter
-: <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a00c75acfb362339a30d2809520fcd775">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#a65805c60e7d3a18d9a8952da80286032">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a108504616c4e19b53638a80710f9308c">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a2ddddb18e229f9d2d4b9eb11c36d0529">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a50526d4b81b2dd8cf90e82ad162af3c5">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a6dfb17d6feade963b31c16e6278aa6ee">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a3d20a53eb3c0158cc401d7b0d640da07">innfft_adjoint_plan</a>
-</li>
-<li>dot_r_hat_iter
-: <a class="el" href="structinfsft__adjoint__plan.html#a90e95de22380d88f23720ffca653edeb">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#af3de3b55c6ddf2e27ed9fbe7ef164b04">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#adfc3485017bb92e57c229dc7f81e438b">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a3dfbd628846af0683c8fc263f8cf6418">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#aad7bfd0f7561ec252b26b1d183622f12">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a52eec6bb5ee2ae209ed90d44739c8769">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#af456205ec418161fe20de523e423bb51">imri_inh_3d_adjoint_plan</a>
-</li>
-<li>dot_r_hat_iter_old
-: <a class="el" href="structinfsft__adjoint__plan.html#a228a2a746f7b7958efb3c4a4ef28e6ce">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a38e5e1e241a0a4a54e83266223725ab6">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a98056f05d5a45569899df80b040b9872">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#ae8dfd86274f0e3bba8c01730449d0474">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a0a0b243360667886af63d1ac26408f74">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a846d92d450d33e64996d28c2054e3181">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#acce4b5401db74c6e9896a78eccc9ca1e">imri_inh_3d_adjoint_plan</a>
-</li>
-<li>dot_r_iter
-: <a class="el" href="structsolverf__plan__complex.html#a1bb6290598f2f4f1452a2de2c27f54af">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#ae52e93514983b50204d70f660e720e04">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#aa2d90b37bc2a2ae2f9d0c90c9431abf1">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#ab12b510e093f8ccfaa4c1e51b6cd31c1">solverl_plan_double</a>
-</li>
-<li>dot_r_iter_old
-: <a class="el" href="structsolverf__plan__double.html#a2ee1d6b53c866d65aaa948afcbdd871e">solverf_plan_double</a>
-, <a class="el" href="structsolverl__plan__double.html#afa3e321968bd1773368cebe1339add7c">solverl_plan_double</a>
-, <a class="el" href="structsolverf__plan__complex.html#a861d76266b51f96c015ed6e33505978d">solverf_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#add3b6bc4149ba5371ef0b8bd91443e50">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a5d47ba554ae4d190384eaca6250f7312">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#a6d564c417ab5b11a306e489df80f4e1e">solverl_plan_complex</a>
-</li>
-<li>dot_v_hat_iter
-: <a class="el" href="structinfst__adjoint__plan.html#ab4e8f85dfe25ba2b90f86d7d39362e5c">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a5d9a12eacf094e7f9e771add0a3874d5">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aed3f646cabd7b8ab1a480d7607ea45f3">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#ae251b00724c42f9c0f906e823c9e17f8">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a990b893dd142cbc3ade6436bdd603e59">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a1a005f3e97b207a1d42cbc8e2ad3a5e1">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#ac1b772ccfa72ce8e522298aeef3b1e1b">infct_adjoint_plan</a>
-</li>
-<li>dot_v_iter
-: <a class="el" href="structsolverf__plan__double.html#aaeae6a2f28ba0ded31baca1aa8c36431">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#a0561b1d4bd014a175ef75d069cc592de">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a364a63cb093efa72e618a349a58d1890">solver_plan_double</a>
-, <a class="el" href="structsolverf__plan__complex.html#a46f2243aac9e8e4689ab7f06914d3f97">solverf_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a849c4c1c131a333885e581fec5a2dac0">solverl_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#a14f62c3118e3c1c7a92dd9bf8877250c">solverl_plan_complex</a>
-</li>
-<li>dot_z_hat_iter
-: <a class="el" href="structsolverf__plan__complex.html#adeec40c2b8450cd7486f8524c6dcc3d4">solverf_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__double.html#aefacac40db7773101ce75ba8247119b7">solverl_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#ae487ec619578f4f6d4876d7bc059f22a">solverl_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df">solver_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#a845482517a34f22d7eb39bf1747e5dd6">solverf_plan_double</a>
-</li>
-<li>dot_z_hat_iter_old
-: <a class="el" href="structsolverf__plan__double.html#aa9672016211508805091ab645b489bbf">solverf_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#af4efa34efc92f873c771df52d423f39e">solverl_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a35f2567cc25bcfce28dbb48eba5e49c9">solver_plan_double</a>
-, <a class="el" href="structsolverf__plan__complex.html#a71e2482ed0eb34229fb166d6821d1a03">solverf_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#aa991891a7df826b77fac977581f9077c">solverl_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#aadb97426a0e35fd46a65557c56b055ee">solver_plan_complex</a>
-</li>
-<li>dot_z_iter
-: <a class="el" href="structinnfft__adjoint__plan.html#aae72bba8cc1a211c1b3931c969f95a85">innfft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a6cca862303d84903e408f5a2ea02aa9c">infft_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a2309d1161fdf96711f3251e41a65eef0">infst_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#ad854541f2e09bc978461fff1c323b2a5">infsft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#af91db19db24ca1c648d97ea516367f94">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#ac3ca8cbbcd9958d69b15b4696e14a2e3">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#ab848ecc31c17b9cd639e9834ee56816d">infct_adjoint_plan</a>
-</li>
-<li>dot_z_iter_old
-: <a class="el" href="structimri__inh__3d__adjoint__plan.html#a794d80ffe20e25a4d69340d925d8624c">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#aa78f22f1c5c917f665b2f1af3e7df191">infft_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a9bdd6b4dfcb1b22bd010444ef34b5903">infst_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#ad2417d37a566a0d26dea57f6f875ca12">infct_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a92ceaf9529a44c28fd3b6d9d63c0c13f">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a669c48fd77d0d04bf0adc4ebedbd699f">innfft_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a681a3587b2e42a24f03bac812eb7a60e">infsft_adjoint_plan</a>
-</li>
-<li>dpt
-: <a class="el" href="structfpt__set__s__.html#a0509dfa979aa395a80d8f38b2f5fb760">fpt_set_s_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x65.html b/doc/api/html/functions_0x65.html
deleted file mode 100644
index 4e96c1e..0000000
--- a/doc/api/html/functions_0x65.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li class="current"><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
-<li>eps_B
-: <a class="el" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46">fastsum_plan_</a>
-</li>
-<li>eps_I
-: <a class="el" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6">fastsum_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x66.html b/doc/api/html/functions_0x66.html
deleted file mode 100644
index f4886ad..0000000
--- a/doc/api/html/functions_0x66.html
+++ /dev/null
@@ -1,241 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li class="current"><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
-<li>f
-: <a class="el" href="structnfftf__mv__plan__complex.html#ab3a2f060f60eb88cd268bc1bec2e5310">nfftf_mv_plan_complex</a>
-, <a class="el" href="structnfftf__mv__plan__double.html#a0b25cac2771ce5e3048ddc1b708e9005">nfftf_mv_plan_double</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e">nfft_mv_plan_complex</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#ae6c4a0204a54f2a37a0acf2b3f5a0c0c">nfftl_mv_plan_double</a>
-, <a class="el" href="structnnfftf__plan.html#a458403c21a1083ede0d84a6d25c8cc8c">nnfftf_plan</a>
-, <a class="el" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#a62073b403c90aa2b527d5f62f190112e">nfsoftl_plan_</a>
-, <a class="el" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb">nnfft_plan</a>
-, <a class="el" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1">fgt_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a">fastsum_plan_</a>
-, <a class="el" href="structnfftl__plan.html#a53b53a1222f4acf29c778b933c9f130e">nfftl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a6aaa7904dbee73679d86060f1842a04e">nnfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#aa2cda7d4bb129ad3dfd6b89682c28cd6">nsfftf_plan</a>
-, <a class="el" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e">nfft_mv_plan_double</a>
-, <a class="el" href="structnfctf__plan.html#a5c695490725fbd63787fb76548de2908">nfctf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#ada472d5a0fb2afc32b4d1683c98185f6">nsfftl_plan</a>
-, <a class="el" href="structnfct__plan.html#acca00284f93bd33c00a1b099a6eec8cd">nfct_plan</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#a3ab01f8b5f1b1368dbf3d7715ce46997">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#aa762bd3f11d1558e792ff34dc710bcb3">mrif_inh_3d_plan</a>
-, <a class="el" href="structnfftf__plan.html#a1c2e419705d6254801134bffe0695ae1">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5">nfft_plan</a>
-, <a class="el" href="structnfctl__plan.html#ae09e0a759e136ad020a97e6c76efbb30">nfctl_plan</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0">mri_inh_2d1d_plan</a>
-, <a class="el" href="structmri__inh__3d__plan.html#a9e51f5f4ad46d4b120c452fc962a2385">mri_inh_3d_plan</a>
-, <a class="el" href="structnfstf__plan.html#a178dae9cc4b5869ef69fd148efe14f93">nfstf_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a3e2fef5b1bb862347511209994235597">mril_inh_2d1d_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#adb03497106fd0a995b70010f9cd9684b">mril_inh_3d_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#adb5c2e9ba052f02fec78e550413aacfa">nfftl_mv_plan_complex</a>
-, <a class="el" href="structnfst__plan.html#a314e2d828775d6aa93a26d7c40b7b931">nfst_plan</a>
-, <a class="el" href="structnfsftf__plan.html#a7cfd191a4353a736bf9045c7e1d46f70">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df">nfsft_plan</a>
-, <a class="el" href="structnfstl__plan.html#ad4f7ff9f286c0203712d5f16b21e9e4e">nfstl_plan</a>
-, <a class="el" href="structnfsftl__plan.html#ad27b30233039fea75a9e1bc885324f3d">nfsftl_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a165dc6360c20f9eb19a55872cc29455a">nfsoftf_plan_</a>
-</li>
-<li>f_hat
-: <a class="el" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42">nfsft_plan</a>
-, <a class="el" href="structnfsftl__plan.html#ab9243951baccdf59de326cada1c08853">nfsftl_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#aa6990fedf1965a967f3f718dd373f543">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#ab280522456fe4f49ccb91d4aa195702d">nfsoftl_plan_</a>
-, <a class="el" href="structnfftf__mv__plan__complex.html#ad55a895ef394e9b74db36d028656b382">nfftf_mv_plan_complex</a>
-, <a class="el" href="structnfftf__mv__plan__double.html#a109229f89032f01e4b2bece93297189c">nfftf_mv_plan_double</a>
-, <a class="el" href="structnfftf__plan.html#aa967453b5ae5ba9e5b2056c884d2cda5">nfftf_plan</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52">nfft_mv_plan_complex</a>
-, <a class="el" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac">nfft_mv_plan_double</a>
-, <a class="el" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691">nfft_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#ae4b3786df2416012cf16d7ed4c097791">nfftl_mv_plan_complex</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#add804289931e55388070ee495c3e5072">nfftl_mv_plan_double</a>
-, <a class="el" href="structnfftl__plan.html#ad5cf4ad0369bdaf07f6acd801e6b9e5e">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a33bae90d163b1d848efc2c656bac6839">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#af289164b09e85f75e8ed0eb3ded40d9c">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#aede4fbbe9a7b666d5d5fbd62e62bf103">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#ab57019bf0a7274b5a6f401fe2f6bcf2b">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a8e7ed6ed137f58dea8f3871d959f8d9c">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#aa0a56037700b7a3d428c77e353dc209e">nfstl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a068de2b177ffaad5b0091b0ecd2ca211">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a97bc689ffe1f4c8eb99ee43cf408c662">nnfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#a423d4a1555477e49a7cb3c26a4a5dfd1">nsfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a93d9d361d56e03f44bc6a9d4265b9f43">nsfftl_plan</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#a18fb340e9ead654552e45033c81ac637">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#ac644cb0bbceb7ea8634ea94758da405d">mrif_inh_3d_plan</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf">mri_inh_2d1d_plan</a>
-, <a class="el" href="structmri__inh__3d__plan.html#a91ed30b213dea4954d2d27c4d1334a50">mri_inh_3d_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a70247e89a002d0e7b5c66d1e87b33645">mril_inh_2d1d_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#ae1f94471fa54c0a172ede3345d0a9a9c">mril_inh_3d_plan</a>
-, <a class="el" href="structnfsftf__plan.html#a840547e30414a41c3751e2b418f76312">nfsftf_plan</a>
-</li>
-<li>f_hat_intern
-: <a class="el" href="structnfsftf__plan.html#aa0a6fb494d6378f656c83f191cd4ed1d">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548">nfsft_plan</a>
-, <a class="el" href="structnfsftl__plan.html#ab3914490d1c4767c0127783cac5098e4">nfsftl_plan</a>
-</li>
-<li>f_hat_iter
-: <a class="el" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1">solver_plan_double</a>
-, <a class="el" href="structsolverf__plan__complex.html#abe0364fe67e48a336fca522a0cf6ee1b">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#aab9daf7841a5f6b3a059921713736e3c">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__complex.html#affba771210ad63dfce92bed9a629e19f">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a0c38937dd8ad6734e94e08a2cd700628">solverl_plan_double</a>
-</li>
-<li>f_iter
-: <a class="el" href="structinfsft__adjoint__plan.html#a9c5a261251ad90176392b2fafcd961de">infsft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#af72ea2aed94d3e789dd064776fdf2919">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a53b03057778ae78ee06efd6b135e23fb">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a74d132853f5b7e0a4b8e3918dae7fe8c">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#ae154ca7cd0d7ebc7e0db4b1f415b56fd">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#a4207ca1175efe7865d6631ae5a704632">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a0b408ac6ce2906dc57ff0c2ff9d3f0d0">infft_adjoint_plan</a>
-</li>
-<li>fftw_flags
-: <a class="el" href="structnfftf__plan.html#a880c04f5e9d485d84065b3c289cd5729">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#afd3bc700b6adca6d3dde831c9a7aae79">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#a407c06575335351e1b720b40f8b4f26c">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#afc96567eba0053563867b8e3a064902b">nfctl_plan</a>
-, <a class="el" href="structnfst__plan.html#a69d37e02b7a2868e3861c582e76e35d8">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a0ab6b3ec18b7e0685277d5f6997aa54c">nfstl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a9da018cd24e707e57ed0c8cac82f5301">nfstf_plan</a>
-, <a class="el" href="structnfftl__plan.html#a4e0df1f491a4aa8f7373d776d705095f">nfftl_plan</a>
-</li>
-<li>FFTW_MANGLE_DOUBLE()
-: <a class="el" href="structnfst__plan.html#abeeca1317cee53206b64c79f3de094c2">nfst_plan</a>
-, <a class="el" href="structnfft__plan.html#a02f777d558f0f4a3417000200472f1a9">nfft_plan</a>
-, <a class="el" href="structnsfft__plan.html#a937d2895eeeaa8aabb92359232498693">nsfft_plan</a>
-, <a class="el" href="structnfct__plan.html#af736d9e6e59e9a91276a48a50979fedb">nfct_plan</a>
-, <a class="el" href="structnfst__plan.html#ac3c18cc4dec9293352c508e9999ebf05">nfst_plan</a>
-, <a class="el" href="structnsfft__plan.html#a979134567e97bfffbc022b8267f98f6d">nsfft_plan</a>
-</li>
-<li>FFTW_MANGLE_FLOAT()
-: <a class="el" href="structnsfftf__plan.html#a5ceb97a548f5a438ad46a12133b1b5e8">nsfftf_plan</a>
-, <a class="el" href="structnfstf__plan.html#a013fbbcfb64ef4d8f0cc7345e584fa92">nfstf_plan</a>
-, <a class="el" href="structnfftf__plan.html#ae2ffec96887c5407fb31063a0139f678">nfftf_plan</a>
-, <a class="el" href="structnfctf__plan.html#a18d7721bf6d8ccbc5bb20e2dad30f9a3">nfctf_plan</a>
-, <a class="el" href="structnfstf__plan.html#ad4f44281f0c352fc630442cb40597983">nfstf_plan</a>
-, <a class="el" href="structnsfftf__plan.html#ac0a9dbecfd535a1c7b2c0cfec5b79925">nsfftf_plan</a>
-, <a class="el" href="structnfctf__plan.html#a3aef4c36c692ab0ac6e9ab69b32ac761">nfctf_plan</a>
-</li>
-<li>FFTW_MANGLE_LONG_DOUBLE()
-: <a class="el" href="structnfftl__plan.html#ab17581f82946cc39584acd6b059b7809">nfftl_plan</a>
-, <a class="el" href="structnfstl__plan.html#a6285132e89913685bc2f7366fd79e769">nfstl_plan</a>
-, <a class="el" href="structnfftl__plan.html#a2e9e81a72c786bd7ed4eef099a5f8a5e">nfftl_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aa7137e627728ebee120141e78066da51">nsfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#ad0a55579cc5f04b0af4cc28abd445083">nfctl_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a9a426f13a97f82a480413cba913b7f2b">nsfftl_plan</a>
-, <a class="el" href="structnfstl__plan.html#a2c07f20560a3969129916e3d30239227">nfstl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a59134c76d93ffd73a6fc738babf5d443">nfctl_plan</a>
-</li>
-<li>flags
-: <a class="el" href="structnfsftl__plan.html#a15d53809b4f86c20e7fd99ea1b71efcb">nfsftl_plan</a>
-, <a class="el" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4">solver_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942">solver_plan_complex</a>
-, <a class="el" href="structnfsftf__plan.html#a67898ed2ead6812358feeace004b14fe">nfsftf_plan</a>
-, <a class="el" href="structsolverf__plan__double.html#a28ce886cb705632f8f866bfb5880795b">solverf_plan_double</a>
-, <a class="el" href="structnsfftf__plan.html#acd78e2fcc4a9c29700887aee1517214c">nsfftf_plan</a>
-, <a class="el" href="structnfsoftl__plan__.html#a2f236235168535b9f9833bcc7e50e695">nfsoftl_plan_</a>
-, <a class="el" href="structsolverl__plan__double.html#aa95251443f265effb6093d63b6536431">solverl_plan_double</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#aadd41183d54818f3e8528affe40769bc">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#adea4e1650ddadc3f0f7c1d833b6b7789">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structsolverf__plan__complex.html#a2d7642432b4b627a4bf77d1c05216669">solverf_plan_complex</a>
-, <a class="el" href="structinfct__adjoint__plan.html#ad913ef9fc7d9bb8ca4f91f1abbf99949">infct_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a0d51c3ece7512b04408b5a2b94ee4a05">innfft_adjoint_plan</a>
-, <a class="el" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftf__plan__.html#a55301d3525d6457aebd0237871dee668">nfsoftf_plan_</a>
-, <a class="el" href="structsolverl__plan__complex.html#abd86575c07d53042297da1c54ebc9e1a">solverl_plan_complex</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a6795cda9e0d83c5b5c7935b75d10dc1a">infsft_adjoint_plan</a>
-, <a class="el" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694">nfsft_plan</a>
-, <a class="el" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa">fastsum_plan_</a>
-, <a class="el" href="structfpt__set__s__.html#a401070e7725566f06ae740e7e99a12a2">fpt_set_s_</a>
-, <a class="el" href="structnsfft__plan.html#a5fcea2cbb16bfdfc4a5a3f5142db3281">nsfft_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a8771c95bc65a49fe974389825f005ec9">infst_adjoint_plan</a>
-, <a class="el" href="structfpt__set__s__.html#ab2272294463f288c3aaa4513bfeac758">fpt_set_s_</a>
-, <a class="el" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869">fgt_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a83f3fc443fbf5c40336a46a8c1bdfaf8">infft_adjoint_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a5c4750f9d7a5f0dbc4d51d06d6be08d3">nsfftl_plan</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x67.html b/doc/api/html/functions_0x67.html
deleted file mode 100644
index 570a841..0000000
--- a/doc/api/html/functions_0x67.html
+++ /dev/null
@@ -1,124 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li class="current"><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
-<li>g
-: <a class="el" href="structnfftf__plan.html#a35e6b39bfe06e5a6e56cde2458cf79a7">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539">nfft_plan</a>
-, <a class="el" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540">fpt_step_</a>
-, <a class="el" href="structnfftl__plan.html#aa442607f39ed01885dbeb286b18b1b77">nfftl_plan</a>
-</li>
-<li>g1
-: <a class="el" href="structnfctf__plan.html#a44a225766135ec7d1bbe8e8e7631faa3">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#a597e9fd4dddb36748c5e33ee1f058835">nfct_plan</a>
-, <a class="el" href="structnfftf__plan.html#a01420d5d785228ee24a4819d2b0454a2">nfftf_plan</a>
-, <a class="el" href="structnfctl__plan.html#afbe6522294161b247058e61e9ef64d78">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a279687997f16d0fb839928f472307b39">nfstf_plan</a>
-, <a class="el" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda">nfft_plan</a>
-, <a class="el" href="structnfst__plan.html#a06cd5d11b13d590c9ab3a88d93b21fb2">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#ac54e606a9b0c7c6b526fb3d44d28482a">nfstl_plan</a>
-, <a class="el" href="structnfftl__plan.html#a71a99cd893a823d1a7edb139650b2afe">nfftl_plan</a>
-</li>
-<li>g2
-: <a class="el" href="structnfftl__plan.html#aea25feca0bccefe267c0a9eb75390ed6">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a4a70d593fb1704dda85e2392c77ea3bc">nfctf_plan</a>
-, <a class="el" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78">nfft_plan</a>
-, <a class="el" href="structnfct__plan.html#ac4c375e593da728a4e7477f76ff12031">nfct_plan</a>
-, <a class="el" href="structnfstf__plan.html#a11f05420be226a83aed2e8c41a1b9bd3">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a7b67e2cf657227ae46d13fa239d534f7">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a0e91b301bcd4ce83aecdda2b0f7712ed">nfstl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a365bf7b6d6fa04bfb4206f8ec647eb14">nfctl_plan</a>
-, <a class="el" href="structnfftf__plan.html#a4fda15d8d9edaa8de0636b2a458bf763">nfftf_plan</a>
-</li>
-<li>g_hat
-: <a class="el" href="structnfftf__plan.html#aad01cb28079405090eaa1fce590c0c09">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5">nfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#af708c1c479196fb4e3ded3d289085b5e">nfftl_plan</a>
-</li>
-<li>gamma
-: <a class="el" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2">nfsft_wisdom</a>
-, <a class="el" href="structfpt__data__.html#a13aaa57c27f3ab5eab4c28d47d501723">fpt_data_</a>
-</li>
-<li>gamma_m1
-: <a class="el" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a">fpt_data_</a>
-</li>
-<li>gammaN
-: <a class="el" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a">fpt_data_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x69.html b/doc/api/html/functions_0x69.html
deleted file mode 100644
index 8be316f..0000000
--- a/doc/api/html/functions_0x69.html
+++ /dev/null
@@ -1,102 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li class="current"><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
-<li>idx0
-: <a class="el" href="structtaylor__plan.html#a3d3e69bc61775fee556801bd66a47c19">taylor_plan</a>
-</li>
-<li>index_sparse_to_full
-: <a class="el" href="structnsfftf__plan.html#a3e6968100cf6a0d5950ccdcb1744788f">nsfftf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aaaf6f8d00374e91ec3baf983583b51bd">nsfftl_plan</a>
-, <a class="el" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55">nsfft_plan</a>
-</li>
-<li>index_x
-: <a class="el" href="structnfftf__plan.html#a1dadaac164fe9f9be856d47a53498335">nfftf_plan</a>
-, <a class="el" href="structnfftl__plan.html#ad98e162c23583ec8f010aacf9ec06767">nfftl_plan</a>
-, <a class="el" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735">nfft_plan</a>
-</li>
-<li>initialized
-: <a class="el" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740">nfsft_wisdom</a>
-</li>
-<li>internal_fpt_set
-: <a class="el" href="structnfsoftl__plan__.html#a8cf750d58de22209962bd9cb96f48864">nfsoftl_plan_</a>
-, <a class="el" href="structnfsoftf__plan__.html#a686809f1397b113322b77ef50c8c0ef7">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#a39a07d81bf6117dca5530d76beaf6b31">nfsoft_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x6a.html b/doc/api/html/functions_0x6a.html
deleted file mode 100644
index ce37b94..0000000
--- a/doc/api/html/functions_0x6a.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li class="current"><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_j"></a>- j -</h3><ul>
-<li>J
-: <a class="el" href="structnsfftf__plan.html#a24e51336c8b6f1814932e2bad306179b">nsfftf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a6e3abb9e765b8f40b0f398a85c07d8af">nsfftl_plan</a>
-, <a class="el" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52">nsfft_plan</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x6b.html b/doc/api/html/functions_0x6b.html
deleted file mode 100644
index 52c0651..0000000
--- a/doc/api/html/functions_0x6b.html
+++ /dev/null
@@ -1,104 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li class="current"><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
-<li>k
-: <a class="el" href="structfastsum__plan__.html#aaf4ea39f8bed50a000d83eec53ee42b8">fastsum_plan_</a>
-</li>
-<li>K
-: <a class="el" href="structnfftf__plan.html#aad0836b3e8e4a98b27729d960b593caa">nfftf_plan</a>
-, <a class="el" href="structnfftl__plan.html#ae6f8a76f202fe1816cfe1004a9ce9a0d">nfftl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a9d2bd4132187064cf5f6c301f7ce5125">nnfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4">nfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a574648230ce316a55282f362774aa615">nnfftl_plan</a>
-, <a class="el" href="structnnfft__plan.html#a4ee39bebbff40746c2701ade2e13f1f8">nnfft_plan</a>
-</li>
-<li>k_start
-: <a class="el" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334">fpt_data_</a>
-</li>
-<li>kernel_param
-: <a class="el" href="structfastsum__plan__.html#a37cbe7b34fce3f90419fb45ab74aaa34">fastsum_plan_</a>
-</li>
-<li>kinds
-: <a class="el" href="structfpt__set__s__.html#a15eafd93be80eeea02173a9042e303d3">fpt_set_s_</a>
-</li>
-<li>kindsr
-: <a class="el" href="structfpt__set__s__.html#afd6508cc584ac06b9f679be441b6e7f6">fpt_set_s_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x6c.html b/doc/api/html/functions_0x6c.html
deleted file mode 100644
index b3d245b..0000000
--- a/doc/api/html/functions_0x6c.html
+++ /dev/null
@@ -1,84 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li class="current"><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
-<li>lengths
-: <a class="el" href="structfpt__set__s__.html#a26355113f8348c270cd02bc196fad681">fpt_set_s_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x6d.html b/doc/api/html/functions_0x6d.html
deleted file mode 100644
index ac5a3f6..0000000
--- a/doc/api/html/functions_0x6d.html
+++ /dev/null
@@ -1,245 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li class="current"><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
-<li>m
-: <a class="el" href="structnfftf__plan.html#a9002bd9a063311155ae2a8c94c076e9d">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a255a1e1526bba8643690e0aa9c5b90c6">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#ac3aacf128a897c132809411ef9d41d7d">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a55a5e4a962d8e01d7c0282f916bacb8c">nfstl_plan</a>
-, <a class="el" href="structnfct__plan.html#a15e9f66b0447148fcce4af9eafa2f9ed">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#af7f40661f8b29323b5b0f1ad5a7290a4">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da">nnfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#ac4741304d0030c88a8244dd1d8171b65">nfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a0a2a679bf0d1c90511a52c31f5a537f1">nfctl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a2082f917534e3a8590d5a19b4377a256">nnfftl_plan</a>
-</li>
-<li>M
-: <a class="el" href="structfpt__set__s__.html#a2387122a1e670e2e61b1699458224804">fpt_set_s_</a>
-</li>
-<li>m
-: <a class="el" href="structnfstf__plan.html#a6d228a85b702490f205c8983c15e33fe">nfstf_plan</a>
-</li>
-<li>M
-: <a class="el" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa">fgt_plan</a>
-</li>
-<li>M_total
-: <a class="el" href="structnfftf__mv__plan__double.html#a37eb6ac713dbf1205f2dce0fa39107df">nfftf_mv_plan_double</a>
-, <a class="el" href="structnnfftl__plan.html#a74e7fb29427e5a4d9b383ab278f513a2">nnfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#a6a75a26e5d6476595bde5b03d6293a0a">nsfftf_plan</a>
-, <a class="el" href="structnfftf__plan.html#a3823921949eded81bde776f57eba8052">nfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#af95027b3922c48e54dc5e5417d3a45e8">nsfftl_plan</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#a2cb2df3ae5db867f38cb75b7c88de7fe">nfft_mv_plan_complex</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#ac9fffb187c8a840eb83939ba4d710f13">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#a03c2aa160944a42e0f3116e7545ed20f">mrif_inh_3d_plan</a>
-, <a class="el" href="structnfft__mv__plan__double.html#af540ad90ef6b30fab022c95e8a5dcd58">nfft_mv_plan_double</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09">mri_inh_2d1d_plan</a>
-, <a class="el" href="structmri__inh__3d__plan.html#ae90c4e1c541956b5902e7aafc193ad8b">mri_inh_3d_plan</a>
-, <a class="el" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6">nfft_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a241e8def5a65484080b01871c12851b3">mril_inh_2d1d_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#a9a1093b920fb4468b59c7120a7e1ceb5">mril_inh_3d_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#aa0175f63a2b2f5c80bb3153008315871">nfftl_mv_plan_complex</a>
-, <a class="el" href="structnfsftf__plan.html#a5df19929f38064f36893840388ef975e">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed">nfsft_plan</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#ac7366d2d09a0b3aed5884b50d10ef478">nfftl_mv_plan_double</a>
-, <a class="el" href="structnfsftl__plan.html#aa1b43495afe03e88e419961428769246">nfsftl_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a6fc89775998b5353b0f674b75b3638ae">nfsoftf_plan_</a>
-, <a class="el" href="structnfftl__plan.html#a95e2db75883c6586f31b8db8c8bf8cf8">nfftl_plan</a>
-, <a class="el" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#a33cddd8977c92ba6641a1c4a18318fd6">nfsoftl_plan_</a>
-, <a class="el" href="structnfctf__plan.html#a86276f6249784d5121d83453818709e9">nfctf_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f">fastsum_plan_</a>
-, <a class="el" href="structnfct__plan.html#ab201c4e89753b167954e7cb5f34a321d">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#ac4ad3000c4c3293f3d86b90a926410a9">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a936082c69e582e36fb51ae452cd08fc3">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#ae4d5aeae7ea312bf70720bafd4fb3882">nfstl_plan</a>
-, <a class="el" href="structnfftf__mv__plan__complex.html#ab437c32f06548b3728bcb2b39681acd8">nfftf_mv_plan_complex</a>
-, <a class="el" href="structnnfftf__plan.html#a6908aa62ea014b3b60e047a99f6adb2b">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c">nnfft_plan</a>
-</li>
-<li>MEASURE_TIME_t
-: <a class="el" href="structnfftf__plan.html#afb81143dbd42553ed90440afc406c909">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848">nfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#ae8cf45feec672cd7e6f42a1b6a091a5c">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a3621b32cd8ea93b2bcb8db6ce40cd5bb">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#acd69baad39feaa27f34c063960b173f0">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#a2c6b9d81be06f2e557c410310420809f">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a369d8545639fccbf73f9daf7dcb94fe8">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a74e5be807909e0a443ea9b48e0a7da4b">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a47c6a3aba310b4f18d7ba5a7107fc168">nfstl_plan</a>
-, <a class="el" href="structnfsftf__plan.html#af36dbcf3d4f12bb85ac6c167aabf8768">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db">nfsft_plan</a>
-, <a class="el" href="structnfsftl__plan.html#ae2870ad5b902cb4724c2ab47e5e012e1">nfsftl_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d">fastsum_plan_</a>
-</li>
-<li>mv
-: <a class="el" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#a3da97d0d8d896d9da6a95a68a6f65442">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a56e946ecb94fc633a9d518d347725c4c">solverl_plan_double</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a791fe047a3b45cce8049e83d422b8414">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a320424336d0f74f0d24cc67053dea7ca">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a65d97330deb4cd9de78e4b9aa85afa62">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a02395790ff1d9e7ffc2e3fae3b927df0">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#abb0996d6ed2cd627dc28fb7f5c18007a">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a18f9b22f7f221aedc3dabab2cb07e633">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#afa903e9a436fc17da89b08377a6a733e">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structsolverf__plan__complex.html#a519286afbd99d020738a92e03c320a18">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#aaa4fedc5005e075e7f707770384be114">solverf_plan_double</a>
-</li>
-<li>mv1
-: <a class="el" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766">fastsum_plan_</a>
-</li>
-<li>mv2
-: <a class="el" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78">fastsum_plan_</a>
-</li>
-<li>mv_adjoint
-: <a class="el" href="structnfsftl__plan.html#a162601fc8aa3248af806908e160d3c14">nfsftl_plan</a>
-, <a class="el" href="structnfftf__plan.html#a9f8b111e42ef7ba609879d4a6983695d">nfftf_plan</a>
-, <a class="el" href="structnfftf__mv__plan__complex.html#acbff2532fc4d66cf92321be33ef6498f">nfftf_mv_plan_complex</a>
-, <a class="el" href="structnfftf__mv__plan__double.html#a3d0e47cf55f04c89523abd46f361ef91">nfftf_mv_plan_double</a>
-, <a class="el" href="structnfsoftf__plan__.html#a858269faf194eca2137b65f2a5a8c0fb">nfsoftf_plan_</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#add14030aae4920f7ca71ecf1efde00a3">nfft_mv_plan_complex</a>
-, <a class="el" href="structnfft__mv__plan__double.html#a92e4080bcb7241befa250be9d8f9a1cd">nfft_mv_plan_double</a>
-, <a class="el" href="structnfft__plan.html#abbe724645c96ef34c3e98d821f6648a3">nfft_plan</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#a804a64f2fb25ad91487fbcc186d784e0">nfftl_mv_plan_double</a>
-, <a class="el" href="structnfftl__plan.html#a3d343b79e00dbb8cd4984143a03ddf53">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a876dda7208fd0634f426c1e5cb04b77f">nfctf_plan</a>
-, <a class="el" href="structnfsoft__plan__.html#a33d5fb830b3021ddb85320139be034b8">nfsoft_plan_</a>
-, <a class="el" href="structnfctl__plan.html#a99191484b327c3283f3aed8c3e9a3d70">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a604a83ef64c291c6f8b23d45f620f2c7">nfstf_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#a2d189c2b7f8b5bf635cce01354ef253e">mril_inh_3d_plan</a>
-, <a class="el" href="structnfst__plan.html#aedfe6da9afb5dc0457cc4f2197034fc0">nfst_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a6259dd5746b911632df1286d0654eabe">mril_inh_2d1d_plan</a>
-, <a class="el" href="structnfsoftl__plan__.html#a2f7123e0975b4a7cd693d01abf117949">nfsoftl_plan_</a>
-, <a class="el" href="structnnfftf__plan.html#adcff4592ce1838e342b92633e9f8de42">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#aa6098f51f9c69196ca782a1b0f8feeba">nnfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#a8b4c8c903e7b24610e2d2e0c9bb62705">nsfftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#a14cc99f56f6a61958aef26f80aac6f12">nfsft_plan</a>
-, <a class="el" href="structnsfft__plan.html#a9761ac166f3ec93197e8e409ba78fb4f">nsfft_plan</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#aea23a3331d423e70f2cbbeee71303906">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#afe427225384a2d226c3cb85cf9aa4042">mri_inh_2d1d_plan</a>
-, <a class="el" href="structnfstl__plan.html#a1eca782b8267b78a6effc382c0a5b9f4">nfstl_plan</a>
-, <a class="el" href="structnfsftf__plan.html#af4deec395e0a4650b1e108677b787900">nfsftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a0afd6961b8b0b24b526e034d89874c7c">nnfft_plan</a>
-, <a class="el" href="structnfct__plan.html#aab8ee071a4e254cbf94a03689ed3127f">nfct_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a658b4a71ff29aa1cc2febc66d6c175bd">nsfftl_plan</a>
-, <a class="el" href="structmri__inh__3d__plan.html#afa2e143e704b701e9a0ee1d795f46b5b">mri_inh_3d_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#a5f31b4b9a03ac8f9a503c1ae42cad758">nfftl_mv_plan_complex</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#ac765b0a8797a3fd31b58133be9ff280b">mrif_inh_3d_plan</a>
-</li>
-<li>mv_trafo
-: <a class="el" href="structnfftl__plan.html#a0f05caab33b6f473626e74f44356e3fc">nfftl_plan</a>
-, <a class="el" href="structnfsftf__plan.html#a417f0b7f48ab77d5af34ed1da9ba95c9">nfsftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#ac2beab555e72c8f10921db21dc094069">nnfft_plan</a>
-, <a class="el" href="structnfstl__plan.html#adbe7e6be1061160223c10b6567efda40">nfstl_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#a4d573c341aae7a4e034944772478658c">nfftl_mv_plan_complex</a>
-, <a class="el" href="structnfsft__plan.html#a01bf30c31f886ffa9d486c010a452051">nfsft_plan</a>
-, <a class="el" href="structnfft__mv__plan__double.html#a920771039e5cf889d6a29a243e6922e3">nfft_mv_plan_double</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#a4cad33b38f4d5bc54b8d25d90913ab44">mri_inh_2d1d_plan</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#acdbe3a414d9c87baba03db3d873b864c">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structnfftf__mv__plan__double.html#a130252f4a197b65416311097880cff4f">nfftf_mv_plan_double</a>
-, <a class="el" href="structmri__inh__3d__plan.html#a780818802d5bfdc4d4174a3637254fd5">mri_inh_3d_plan</a>
-, <a class="el" href="structnfftf__mv__plan__complex.html#a48e28caf604132d02999d1dc0f5dc9a0">nfftf_mv_plan_complex</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#a4763b4f8f1b5f574d601289ab3cbcfa8">mrif_inh_3d_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aad46757ac44a32dbb04d0e453454acac">nsfftl_plan</a>
-, <a class="el" href="structnfft__plan.html#a9ebd66f2964cca6a02fc50d640df3557">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a7a532e28539e1ac2f49413248ae76a67">nfctf_plan</a>
-, <a class="el" href="structnnfftf__plan.html#aea4c2210478af70a540da01e0c0a1c7b">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a39b1bdd9a3eacd4ff3b809eeef01f364">nnfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a42f0c32b080677a57f82ccf23d018da2">nfctl_plan</a>
-, <a class="el" href="structnfst__plan.html#a4a3b2ecc26204b3087d1c19b7857943f">nfst_plan</a>
-, <a class="el" href="structnfsoft__plan__.html#ae7c72bdbce93cb99dcbd14d764d08502">nfsoft_plan_</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#aff66252bd97fa6d73d7e137d888bb625">nfftl_mv_plan_double</a>
-, <a class="el" href="structnfsftl__plan.html#ab1a7dae6c0f2b18d4eda2e32195bba95">nfsftl_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a7dbc7cd7b733b5850a59f35aa0f959d1">mril_inh_2d1d_plan</a>
-, <a class="el" href="structnfftf__plan.html#ab09b1d93f60895791076e1e41241ecb0">nfftf_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a0291622a1f08aff56cc126ca64364d85">nfsoftf_plan_</a>
-, <a class="el" href="structnsfft__plan.html#abbab5fc009e68a329bbebee4904e53a5">nsfft_plan</a>
-, <a class="el" href="structnfct__plan.html#a5f9802e95bfc2ae69f22e91c1fe47778">nfct_plan</a>
-, <a class="el" href="structnfsoftl__plan__.html#aeab94862046b7688470f3f1d78ca927d">nfsoftl_plan_</a>
-, <a class="el" href="structnsfftf__plan.html#ac698248a376958d67a10beecfdc3aa36">nsfftf_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#a61eec020c68a2b36cff4acb6dd4dcf96">mril_inh_3d_plan</a>
-, <a class="el" href="structnfstf__plan.html#aa960f82c35501acf5237b5ed49f7fe57">nfstf_plan</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#a56bf298c03c4aaeb6b4aaf7ed5cca57e">nfft_mv_plan_complex</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x6e.html b/doc/api/html/functions_0x6e.html
deleted file mode 100644
index 4fb4754..0000000
--- a/doc/api/html/functions_0x6e.html
+++ /dev/null
@@ -1,228 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li class="current"><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
-<li>N
-: <a class="el" href="structnfftf__plan.html#a27caa84ad525683d89b5963defadc98d">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#ade6a750c99253ddfe82c08e439094507">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b">nfst_plan</a>
-, <a class="el" href="structfpt__set__s__.html#aa353a04683b31bed668ee490d5df1b81">fpt_set_s_</a>
-, <a class="el" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87">fgt_plan</a>
-, <a class="el" href="structnfstl__plan.html#a83b7013eb7ce3b1743ba45a2546a36c0">nfstl_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnfftf__plan.html#a6971ea46e4044daa773f19c8bd8d4a0b">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae">nfft_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnfct__plan.html#ad4d0600d8b0ee9d41bff22a7d63e64cf">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#aefd2c40e607f75679bb61926881d4488">nnfftf_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnfftl__plan.html#a58140f5f6ea4ca1c0305cbcec55437bd">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a9c8ffbb61c7f5ad5d0a5545bdff83270">nfctf_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7">nnfft_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnfct__plan.html#a0ad3d47d659b3641bb90eca6e56f9047">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#a6d0bd4de4d2b90c38010bb4b8d77561b">nfctl_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnfftl__plan.html#a36e045f670b95d68f5c2e04b55a1c220">nfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a4497138b087187f70d19f107b1c80204">nfctl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a7fb433be8689db7816a3667620a294f3">nnfftl_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnfstf__plan.html#ade7cdc871c9633a324774001bd809f49">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2">nfst_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnfsftf__plan.html#a09b711da345edffb8a71b5b8a8bca6d0">nfsftf_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnfstl__plan.html#a10456ed98cb22787f2469e1d20903c8c">nfstl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#ae849996a09be847a35be6c1ea018d988">nnfftf_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnfstf__plan.html#a3c13e4fbc7dba10012ac853e2cde12d0">nfstf_plan</a>
-, <a class="el" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403">nfsft_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnnfft__plan.html#a6b2de2633dd4347692e96887f98c1020">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#ad8d9bc5c5ae9f1ee6c813839ff831d97">nnfftl_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnfsftl__plan.html#a8740f26f76947fcc07a636002217a8db">nfsftl_plan</a>
-</li>
-<li>n
-: <a class="el" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1">fgt_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a271a9a4e952484997e902c5cbd5ff084">fastsum_plan_</a>
-</li>
-<li>N1
-: <a class="el" href="structnnfftf__plan.html#a9f6a5274cee5803505df5ad65d4c12fd">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a693c5d648b1781dce21d24636aac6554">nnfftl_plan</a>
-</li>
-<li>N_MAX
-: <a class="el" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51">nfsft_wisdom</a>
-</li>
-<li>N_total
-: <a class="el" href="structnnfftl__plan.html#a0e0827be03d503291f4a6d76c7b690d7">nnfftl_plan</a>
-, <a class="el" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2">nnfft_plan</a>
-, <a class="el" href="structnnfftf__plan.html#afd4cb1ff03f227c4e9e1dd9da21ec34e">nnfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505">nsfft_plan</a>
-, <a class="el" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8">nfsft_plan</a>
-, <a class="el" href="structnfsftl__plan.html#a090c82bf91f18bc68a389c06fb347cec">nfsftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#ac31afd2bc4a0fc94cd9ec08e302f84ac">nfctl_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#aa3a702dbaed1e34d090e23b75c9949d6">nfsoftf_plan_</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#afad39dcd7d77c81247bcf5e4abc1cdaa">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structnfsoftl__plan__.html#a397e113cdbedc1e964657131c9a9dea3">nfsoftl_plan_</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#a63a371e62727c804a195cf2315b79a41">nfftl_mv_plan_double</a>
-</li>
-<li>n_total
-: <a class="el" href="structnfftf__plan.html#a79aefed96e856d86d0fb74f873ae09ba">nfftf_plan</a>
-</li>
-<li>N_total
-: <a class="el" href="structnfftf__mv__plan__complex.html#a65ce9742c15bad2711e8f8151bbf941c">nfftf_mv_plan_complex</a>
-</li>
-<li>n_total
-: <a class="el" href="structnfftl__plan.html#a58ea89cc9b78b32c8c1775e8b1277ad8">nfftl_plan</a>
-</li>
-<li>N_total
-: <a class="el" href="structnfftf__mv__plan__double.html#a1df474111c1d61261d53455e05bc6c63">nfftf_mv_plan_double</a>
-, <a class="el" href="structnfftf__plan.html#a65855ec1dec6f17eb46d6762ad6ff942">nfftf_plan</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8">nfft_mv_plan_complex</a>
-, <a class="el" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41">nfft_mv_plan_double</a>
-, <a class="el" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22">nfft_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#a469c0077659dda97651e075da143a398">nfftl_mv_plan_complex</a>
-, <a class="el" href="structnfftl__plan.html#a747b6aee3ae47ad66391027bc13789af">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a618b4315972d4ef612c772649d470ff9">nfctf_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a4114df78a52f5e4a1a12a13678a9cb6c">mril_inh_2d1d_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#a79e477483b67862d2dd7fcb5432f7651">mril_inh_3d_plan</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#a7d51e6be67c5f2bc4d1a996e10228258">mrif_inh_3d_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aa0e8f48c39f40e781da203659ec018ab">nsfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#afe49ebe4fbbb3bd90b12e939c06adfab">nsfftf_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976">fastsum_plan_</a>
-, <a class="el" href="structnfstl__plan.html#a87f57bdfd9ba4415370ec796329cc1de">nfstl_plan</a>
-, <a class="el" href="structnfct__plan.html#abc66ae61c54a049868c62288623d4a6b">nfct_plan</a>
-, <a class="el" href="structnfstf__plan.html#aea7fa284fa9aaa4e264c9c07844b5442">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a5622220bff0d3174b4dcae2a91313eed">nfst_plan</a>
-</li>
-<li>n_total
-: <a class="el" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7">nfft_plan</a>
-</li>
-<li>N_total
-: <a class="el" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e">nfsoft_plan_</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b">mri_inh_2d1d_plan</a>
-, <a class="el" href="structnfsftf__plan.html#a90ee6582e535312ac761e4e6fbaad0c0">nfsftf_plan</a>
-, <a class="el" href="structmri__inh__3d__plan.html#aa1b253e912e92b252c4992eb86d92e12">mri_inh_3d_plan</a>
-</li>
-<li>nfct_flags
-: <a class="el" href="structnfctl__plan.html#a292db653f04805f907737a480f681888">nfctl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a484df328b87ae06b6c47b03298e18dbd">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#ae2a2e493b2938fe9b22b0506765f30cf">nfct_plan</a>
-</li>
-<li>nfft_flags
-: <a class="el" href="structnfftl__plan.html#a375f14a65c5686803270dbb3cfd1c371">nfftl_plan</a>
-, <a class="el" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d">nfft_plan</a>
-, <a class="el" href="structnfftf__plan.html#adaaa66e5b89d9f65ce94b56617574518">nfftf_plan</a>
-</li>
-<li>nfst_flags
-: <a class="el" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a15bb194b8a4fe39aca1b5be9f38d7175">nfstl_plan</a>
-, <a class="el" href="structnfstf__plan.html#aa23ef32254d98b76dfadbe7fa439f8c3">nfstf_plan</a>
-</li>
-<li>nnfft_flags
-: <a class="el" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a1a9bf1751caf842fb44f70a4cbab8744">nnfftl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#acebd9e667d51a5293f977642f031724e">nnfftf_plan</a>
-</li>
-<li>nplan1
-: <a class="el" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2">fgt_plan</a>
-</li>
-<li>nplan2
-: <a class="el" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163">fgt_plan</a>
-</li>
-<li>Ns
-: <a class="el" href="structfpt__step__.html#ac6767b7c6935b1f2af5dd54e2e8f690b">fpt_step_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x70.html b/doc/api/html/functions_0x70.html
deleted file mode 100644
index 1e049da..0000000
--- a/doc/api/html/functions_0x70.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li class="current"><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
-<li>p
-: <a class="el" href="structtaylor__plan.html#afd71182be8b8fcfa66155b0be4fb94ee">taylor_plan</a>
-, <a class="el" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73">fgt_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a236982e68b9354c7edb47eeff18e05bf">fastsum_plan_</a>
-</li>
-<li>p_hat_iter
-: <a class="el" href="structsolverf__plan__complex.html#ac62464d925e739f79c28059cd1e59faa">solverf_plan_complex</a>
-, <a class="el" href="structsolverl__plan__complex.html#aa7833544d06eb2d71042da5fa06b9c5c">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a803178524d842ae2944fb5f3ce9d4939">solverl_plan_double</a>
-, <a class="el" href="structsolverf__plan__double.html#a6987fb320cd6798faabe9dfd92a494f2">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677">solver_plan_double</a>
-</li>
-<li>p_iter
-: <a class="el" href="structimri__inh__3d__adjoint__plan.html#ade134a86a60d2538595acc2fafb83e41">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a6e1fc4f4d7adf8aa89cde17cf002f0f6">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#afa0571b6b2c75979bc6a8ea75dc13efc">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a6c81df2130d05bcbbcd6646cd27b671e">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a53b6ba348be2011c1cfecdb9f16829fd">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a74ee726c5c0916fde59e77ca51d319eb">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aafe496b74fca5e5d96ce258bb3da1ffc">imri_inh_2d1d_adjoint_plan</a>
-</li>
-<li>p_nfft
-: <a class="el" href="structnfsoftf__plan__.html#a1be8436a257f63ab4c27441bf714671d">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#ac1230a81665ed7aa68cb7b4bc3a0c0c1">nfsoftl_plan_</a>
-</li>
-<li>plan_nfft
-: <a class="el" href="structnfsftf__plan.html#a87927611482f2fb3421ea2279993f94a">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e">nfsft_plan</a>
-, <a class="el" href="structnfsftl__plan.html#a2c016b15b6b33c44b8218c43619ef784">nfsftl_plan</a>
-</li>
-<li>plans_dct2
-: <a class="el" href="structfpt__set__s__.html#aead22ae71c82ad37da07f6166bf53fbc">fpt_set_s_</a>
-</li>
-<li>plans_dct3
-: <a class="el" href="structfpt__set__s__.html#a5f146823d105906abf0cdc4c5f9638dc">fpt_set_s_</a>
-</li>
-<li>pre_cexp
-: <a class="el" href="structfgt__plan.html#ad7d9387df7df72e3d5d628d7e429c2a2">fgt_plan</a>
-</li>
-<li>pre_K
-: <a class="el" href="structfastsum__plan__.html#a2ac8e8bdf57c75a916b1f4ef36ca513e">fastsum_plan_</a>
-</li>
-<li>psi
-: <a class="el" href="structnfctl__plan.html#a59712f0b5712ba9020540b7bf355caea">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a96d6ede1036cae0a4df7fbf7ba7b8034">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a59c1ef7493650838cf31086a46ff2e3f">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a3fb3fd27fa2c3c907c4f1e05a183598d">nfstl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a10747f86b86f7fa64539b46914344877">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4">nnfft_plan</a>
-, <a class="el" href="structnfct__plan.html#ad3886151e655110a1c5ba71a66439e2b">nfct_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a8644e94ccefb0b3001442b4df86dae5d">nnfftl_plan</a>
-, <a class="el" href="structnfftf__plan.html#a84402b4c947d57abef20e5f2db9110e3">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c">nfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#a33955562ecf9b48f4283f869c77f96ff">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a748631060895d5106d11cdf4fce3ee60">nfctf_plan</a>
-</li>
-<li>psi_index_f
-: <a class="el" href="structnfst__plan.html#a028609e96fa5f10d4197e4b50312180c">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a46d8f0fefc63d3ba6f1811f41bc9a7d8">nfstl_plan</a>
-, <a class="el" href="structnfstf__plan.html#ad20fa3e6bdb829247c3585639a0b086d">nfstf_plan</a>
-, <a class="el" href="structnfctl__plan.html#a2ec8c4542c9fafbaf90b469ab8d06d59">nfctl_plan</a>
-, <a class="el" href="structnfft__plan.html#a2ed144cf7d6043a93c07b6f6ba7bbe2a">nfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#a713765bd7f9b488ac995de023de2ead1">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#aa33238f59c2282eea4b81d8ecbba1417">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#a59633568fd7d1cb01df5f49f08ad352c">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a3788434fa045ecd49dd89d116bb40c47">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#abf4204a1a31afd35d490ca4ef42bd596">nnfftl_plan</a>
-, <a class="el" href="structnfftf__plan.html#ac0073e7c6389e9141d555bf58e2d0b59">nfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a2ada74222958e630640e6456e9bd2a8d">nnfft_plan</a>
-</li>
-<li>psi_index_g
-: <a class="el" href="structnnfftl__plan.html#a4b53c60fb307d01e01931ef812974a3c">nnfftl_plan</a>
-, <a class="el" href="structnfct__plan.html#adcd209b5cbbfae40c5490a1141b7acda">nfct_plan</a>
-, <a class="el" href="structnnfft__plan.html#aa0b2be91e59a45c809c68398ceb41232">nnfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a60f4fbcf2fb3a48a037e5cda4608f535">nfctf_plan</a>
-, <a class="el" href="structnfstf__plan.html#a3ece0ce2dd8ad2e41852ac59df3ad481">nfstf_plan</a>
-, <a class="el" href="structnfftf__plan.html#a04f8c8d2075057efa3b41381705084c6">nfftf_plan</a>
-, <a class="el" href="structnfctl__plan.html#a2e593f732ad26f9d681797a85a7293cf">nfctl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#aa6d0ce899b41da6981f6863fc242559d">nnfftf_plan</a>
-, <a class="el" href="structnfstl__plan.html#a773fbd9160ac14e6972a4b5be1b5113d">nfstl_plan</a>
-, <a class="el" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a">nfft_plan</a>
-, <a class="el" href="structnfst__plan.html#a2d2a4a4d3c7ff12f35045b5466f41811">nfst_plan</a>
-, <a class="el" href="structnfftl__plan.html#ad3ff1d5c721f0ec4e81aa341b29abc15">nfftl_plan</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x72.html b/doc/api/html/functions_0x72.html
deleted file mode 100644
index 8f4f2a5..0000000
--- a/doc/api/html/functions_0x72.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li class="current"><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
-<li>r_act_nfft_plan
-: <a class="el" href="structnsfftf__plan.html#a844f94caf050adea11133a52dcbaccdc">nsfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a0a1b5e59c9ff83bc7b2d2894f96edd23">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#ad40799f013c6b35165c2bc76eb7cb32e">nsfftl_plan</a>
-</li>
-<li>r_hat_iter
-: <a class="el" href="structinfsft__adjoint__plan.html#a781b1438bf0c8d47f51b30551f982426">infsft_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a4739f3543d8e4e7af745c017a163516f">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a6088e9949fa966d839e8feadfb34596e">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a314c60168395a677ea88ff67dcaa2ec9">infft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#acbea7a40d34bbca7688da41378140926">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a3bb77b67c3779716d767e76b8661efbc">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#abd086bc019b356986e38f3db8039051f">infst_adjoint_plan</a>
-</li>
-<li>r_iter
-: <a class="el" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#aec8fcaf36c7ce234e76970dc4b4ec9c9">solverl_plan_complex</a>
-, <a class="el" href="structsolverf__plan__complex.html#a4ca8ff73e59386ea3d5003c1ad27459d">solverf_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a9715db1a24435d9dd2bc76371d92174e">solverl_plan_double</a>
-, <a class="el" href="structsolverf__plan__double.html#a6261a160be099d721856fab16f31cf22">solverf_plan_double</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x73.html b/doc/api/html/functions_0x73.html
deleted file mode 100644
index 8c91016..0000000
--- a/doc/api/html/functions_0x73.html
+++ /dev/null
@@ -1,144 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li class="current"><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
-<li>set
-: <a class="el" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2">nfsft_wisdom</a>
-</li>
-<li>set_nfft_plan_1d
-: <a class="el" href="structnsfftf__plan.html#aaadc0908c69e235bc60ec3c7b28bca47">nsfftf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a89a23c26f73280c5945e62f8966195fb">nsfftl_plan</a>
-, <a class="el" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc">nsfft_plan</a>
-</li>
-<li>set_nfft_plan_2d
-: <a class="el" href="structnsfftf__plan.html#a4ee3a7ef05c4fdbc161d24db51be3122">nsfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aa7ae0c8a9b2f404bd1f8ce4820d7cf43">nsfftl_plan</a>
-</li>
-<li>sigma
-: <a class="el" href="structnfftf__plan.html#a20d669812b6acf9a8bda34cb659d61dd">nfftf_plan</a>
-, <a class="el" href="structnfstl__plan.html#a3c50de01911ed86a66d15ecd79874e21">nfstl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a858114a52835ef9cae070f6017625a4c">nnfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a09340f6465c23f3d94636f4f0da30f8a">nfft_plan</a>
-, <a class="el" href="structnnfft__plan.html#a6a3e11978f1e2c6279bd12785ef56b5d">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a899c16c2e59f2566a9f17d84f64af952">nnfftl_plan</a>
-, <a class="el" href="structnfftl__plan.html#a149fdaed10fafdb3bf414110ad233b7c">nfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#ab7b68bdae0872917b559577ac2f53402">nsfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954">nsfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#acfc4ccc79c6fa50199500a790cb833b2">nfctf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aa55c79623980b8334e9fcb50fa55ecd3">nsfftl_plan</a>
-, <a class="el" href="structfgt__plan.html#af6e97b6f971e4f89ceeac2bca9d69666">fgt_plan</a>
-, <a class="el" href="structnfct__plan.html#a56c9f580f79fb7605ae21bcbb729a8b9">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#a629ae83677e311095d4c24ad4826e2ab">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a8d8b3093a73c09aac44cd8f55708ef27">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a7a8028a0e7348e5fa7717eebf07b76d1">nfst_plan</a>
-</li>
-<li>size_psi
-: <a class="el" href="structnnfftf__plan.html#a67aae8bda525717c1628aa53fca9b7de">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#aed13a1f152cb6febf2ce643c204d8b9a">nnfftl_plan</a>
-, <a class="el" href="structnnfft__plan.html#af2992b9cb57809fb90a68dbaea36d79a">nnfft_plan</a>
-, <a class="el" href="structnfstl__plan.html#a975ebfbce1679c3ad3d8cc06e81c5645">nfstl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a2a01c089b030159c77a9bdcb46d1b183">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#ab03d9f17b3fb46eb14439745e8f7994b">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#a1b8cf9260caf345c8ecb5e6de726387b">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a4c9f0923fcf290197cee1550dc9a3665">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a1780e54f9fed43e92c22a1e70274e7ad">nfst_plan</a>
-</li>
-<li>spline_coeffs
-: <a class="el" href="structnfstl__plan.html#a7abc2fedc757d9b2b5f985377f99bfe7">nfstl_plan</a>
-, <a class="el" href="structnnfft__plan.html#ac3e3c4b14a5227a96b8627faf6933652">nnfft_plan</a>
-, <a class="el" href="structnfstf__plan.html#a64c5addda16e3d789184af183900db21">nfstf_plan</a>
-, <a class="el" href="structnfftf__plan.html#a65c65de370e29b24ba0da097d20ee262">nfftf_plan</a>
-, <a class="el" href="structnnfftf__plan.html#acb221c7694859d0828bcc1f56154cd69">nnfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a3aaf44c4f0769644075d9fc5ed60afa0">nfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#a971f190366e40c729899ff71d2a60682">nfftl_plan</a>
-, <a class="el" href="structnfct__plan.html#a53242b3a71b8997bdcd173777146c427">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#a38de3cc7a337907a01ae2701ea335d75">nfctl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a25a3208574495231141c9c407658f0cf">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#a23bec4401a652efc87ee6781061c9363">nfst_plan</a>
-, <a class="el" href="structwindow__funct__plan__.html#a59ddba27ebde497ae7cfcfc2dbdd2304">window_funct_plan_</a>
-, <a class="el" href="structnnfftl__plan.html#a8f364097c04b46c203a4883af90b9eb0">nnfftl_plan</a>
-</li>
-<li>stable
-: <a class="el" href="structfpt__step__.html#a71dc6483b4f3b958519bdafeae2c1dbf">fpt_step_</a>
-</li>
-<li>steps
-: <a class="el" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854">fpt_data_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x74.html b/doc/api/html/functions_0x74.html
deleted file mode 100644
index edf7dbf..0000000
--- a/doc/api/html/functions_0x74.html
+++ /dev/null
@@ -1,99 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li class="current"><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
-<li>t
-: <a class="el" href="structnfsftf__plan.html#ad5d65a033c50d321c6affc677e4f5226">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#a59d80818cb9c0dcaccc477954720772c">nfsft_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a21641301ce6613d250e6d683c3fad9c2">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#ab0b32ee063950ce38adc6b0e5e40af02">nfsoft_plan_</a>
-, <a class="el" href="structfpt__set__s__.html#a1d35166e05db58736e422850fe02edef">fpt_set_s_</a>
-, <a class="el" href="structnfsoftl__plan__.html#acd18e8a2b89aacd8034b49033449f979">nfsoftl_plan_</a>
-, <a class="el" href="structnfsftl__plan.html#af5ba15c85f29ea8ba05a03c2f2fc2611">nfsftl_plan</a>
-</li>
-<li>T_MAX
-: <a class="el" href="structnfsft__wisdom.html#ae6c31fe1bc09d2894948358c2bea27e4">nfsft_wisdom</a>
-</li>
-<li>threshold
-: <a class="el" href="structnfsft__wisdom.html#ac367edaa1fae041e5b049cd81b44336b">nfsft_wisdom</a>
-</li>
-<li>ts
-: <a class="el" href="structfpt__step__.html#aeb754fe2aedc1f15cbb9c75c212772fb">fpt_step_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x76.html b/doc/api/html/functions_0x76.html
deleted file mode 100644
index ff13be9..0000000
--- a/doc/api/html/functions_0x76.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li class="current"><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
-<li>v
-: <a class="el" href="structnnfftf__plan.html#a62822fb1596e8eccd6d2edf62096323b">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a224d2ba2e9ba30535b394b1375ff0a88">nnfftl_plan</a>
-</li>
-<li>v_hat_iter
-: <a class="el" href="structinfsft__adjoint__plan.html#ae1911bb7b195a6cdc51fc2c9dd5663d5">infsft_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a5078575d0bf816ed68ce3c762f578887">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#af253d4b292aa7db655ca51dfdf598bf9">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a8f64e1af7dfd3cd41377d79113eb51e3">infft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#ad04d2974dedefdc45e176e5ea5399aab">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#af025d6f664c1ccdd552f61e68d58ec97">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a10da470b963e2d631f48e8eb81bad94e">infst_adjoint_plan</a>
-</li>
-<li>v_iter
-: <a class="el" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#a79c7f5b84aa9feddeafbcb9bde26de17">solverl_plan_complex</a>
-, <a class="el" href="structsolverf__plan__complex.html#a7e352320832a737577bd9ebe689a50bd">solverf_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#ab469e8fc7e7bc6c4068794cddf69ce26">solverl_plan_double</a>
-, <a class="el" href="structsolverf__plan__double.html#a6ee0cddd36b16d6b8cc09baf6db05cf9">solverf_plan_double</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x77.html b/doc/api/html/functions_0x77.html
deleted file mode 100644
index 9518549..0000000
--- a/doc/api/html/functions_0x77.html
+++ /dev/null
@@ -1,116 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li class="current"><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
-<li>w
-: <a class="el" href="structsolverf__plan__complex.html#a91f7e03dc8509952827333cc61ca9aa4">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#a63c0a528c6e9989c7b0fee6c02d1fbff">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__double.html#adc2b7cea47756753ae9f8d5731f8d500">solver_plan_double</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a67fabb54885946acaaad95a5a472b004">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#add093d84bfb7f6f5d5b5512e000efc68">infct_adjoint_plan</a>
-, <a class="el" href="structsolverl__plan__complex.html#a547382238a57e96f316bac4dd291af0d">solverl_plan_complex</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a5b64034f7c01c3ce0a7ab02fd8477bdc">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a20565dbd14d036eb348ca0276a4f411c">innfft_adjoint_plan</a>
-, <a class="el" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a0f45b9d16576986d6d6d9605f6891f3d">solverl_plan_double</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a552e0603ee92be729e052bb6028a1fb4">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#aa4cd6ea3040339a39047978a7c1f1c9d">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a9738a7ae6eb6e9ac59018d7fe0b67b32">infsft_adjoint_plan</a>
-</li>
-<li>w_hat
-: <a class="el" href="structinfst__adjoint__plan.html#a00f860d5af6ada0c99a252b5d7548f5b">infst_adjoint_plan</a>
-, <a class="el" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce">solver_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#ab1cada21b9034edfd3a1b2f77252f3be">solverf_plan_double</a>
-, <a class="el" href="structsolverf__plan__complex.html#aece5ec597b25ea28c945d2559316fad8">solverf_plan_complex</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a76ad0c6eace967391553fd4939e70662">infft_adjoint_plan</a>
-, <a class="el" href="structsolver__plan__double.html#ab16ed4ac6cf04f57c4b1f194fbc09472">solver_plan_double</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aeb6a8106c1347dc7decf42e4520f70ab">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#aa53e43e9cd65db3ba08ed275cb62d456">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structsolverl__plan__complex.html#ad4d107f6ef642a2f8173d05d73bde405">solverl_plan_complex</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a0545064b15a22a5a3ae285e6aded5f80">innfft_adjoint_plan</a>
-, <a class="el" href="structsolverl__plan__double.html#aaa9d07d5f3ec0f7f7f0a6193927e1a94">solverl_plan_double</a>
-, <a class="el" href="structinfct__adjoint__plan.html#af14d4eb49aee59948ea57d30dbf4d628">infct_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a5830886454142e4825347a703f286c0a">infsft_adjoint_plan</a>
-</li>
-<li>wig_coeffs
-: <a class="el" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#a452e16848e81fd0b072d4e3347345455">nfsoftl_plan_</a>
-, <a class="el" href="structnfsoftf__plan__.html#a1d6f6e5b95a8f0ff13add5c23b382fb9">nfsoftf_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x78.html b/doc/api/html/functions_0x78.html
deleted file mode 100644
index 4624966..0000000
--- a/doc/api/html/functions_0x78.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li class="current"><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_x"></a>- x -</h3><ul>
-<li>x
-: <a class="el" href="structnfftf__plan.html#a4bcaa307f32321459187f8633a946a7e">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#acf91ba20ce671a5d4c971465fbd33b03">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#a048ebad4f2abe3821988fa06a5e308d8">nfst_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a072fa8dcd38c95bec64c8e82af71afa7">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383">nfsoft_plan_</a>
-, <a class="el" href="structnfstl__plan.html#af663d590a277872d6e0e777cb410edbb">nfstl_plan</a>
-, <a class="el" href="structnfsoftl__plan__.html#a92211c64713d72c3d3cf45ac39601214">nfsoftl_plan_</a>
-, <a class="el" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93">fgt_plan</a>
-, <a class="el" href="structnfct__plan.html#a5635e780f4c492f087754d71f16e07ed">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#ae3c9275b5cafc753e2762406ba422378">nnfftf_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91">fastsum_plan_</a>
-, <a class="el" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d">nnfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#ad5695c30a05c03573082a1aac0394700">nfftl_plan</a>
-, <a class="el" href="structnfsftl__plan.html#a59d00d103ebc0746d9cbf2d49077dfe8">nfsftl_plan</a>
-, <a class="el" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90">nfsft_plan</a>
-, <a class="el" href="structnfsftf__plan.html#a110084c9a750d175c70caa7a24d69ae7">nfsftf_plan</a>
-, <a class="el" href="structnfctl__plan.html#a2f7f915bfefa105412cabfc368c26560">nfctl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#ad3c1a7dca6cddcecba876f1bb523e3b6">nnfftl_plan</a>
-, <a class="el" href="structnfstf__plan.html#ad0d1772e5947f4395cbfa0fc2ed39018">nfstf_plan</a>
-</li>
-<li>x_021
-: <a class="el" href="structnsfft__plan.html#aee5ad936bb790f00bf0797c94e185549">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a62e8e58fe1b84f82ac85301a091af3fa">nsfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#a0c015fd2deca4e70105f0c68a6a69586">nsfftf_plan</a>
-</li>
-<li>x_transposed
-: <a class="el" href="structnsfftf__plan.html#a4d7e0553a450636fc65816e4977914bd">nsfftf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a28eb398ae77902fd1ec2e0604d2a77ce">nsfftl_plan</a>
-, <a class="el" href="structnsfft__plan.html#aca6c9880cde07f3bc26dd7666c09a9d6">nsfft_plan</a>
-</li>
-<li>xc
-: <a class="el" href="structfpt__set__s__.html#a226e29e0f97627e77ec4fcebd0c49fdf">fpt_set_s_</a>
-</li>
-<li>xcvecs
-: <a class="el" href="structfpt__set__s__.html#a58a8f2867286e0be19dd89e8d41c033b">fpt_set_s_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x79.html b/doc/api/html/functions_0x79.html
deleted file mode 100644
index 0b644f6..0000000
--- a/doc/api/html/functions_0x79.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li class="current"><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_y"></a>- y -</h3><ul>
-<li>y
-: <a class="el" href="structsolverf__plan__complex.html#a522b2ad5b572dce6d786b26e221a14d6">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#a31aa1269dccbcfad158f31c276b0399e">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__double.html#accc401c5912fe60922d4ce2b30132e18">solver_plan_double</a>
-, <a class="el" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51">fastsum_plan_</a>
-, <a class="el" href="structsolverl__plan__complex.html#afbcb92106789225f6d54be521797b97f">solverl_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a70307c6e59216c27cb4d78e7f172ab8c">solverl_plan_double</a>
-, <a class="el" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056">fgt_plan</a>
-</li>
-<li>y_hat
-: <a class="el" href="structimri__inh__3d__adjoint__plan.html#a968843771644077babbdd687b6bbdb5d">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#ab91fa7e8fa5668148a4cba86a97e415b">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a4a98ec178d9d74dab4e617beebc419a6">infct_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#acd0758c4ed1c79b6d2f2eed33effb539">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aaed8db541ee689c5ec82bb8e18c4c8d1">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#ac21eced87cb3a6eafd0d22f27e0eac03">infsft_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a52d2b0b0d208e673eada45dff01e9c13">infst_adjoint_plan</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_0x7a.html b/doc/api/html/functions_0x7a.html
deleted file mode 100644
index 3affec2..0000000
--- a/doc/api/html/functions_0x7a.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions.html#index__"><span>_</span></a></li>
- <li><a href="functions_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_0x79.html#index_y"><span>y</span></a></li>
- <li class="current"><a href="functions_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented struct and union fields with links to the struct/union documentation for each field:</div>
-
-<h3><a class="anchor" id="index_z"></a>- z -</h3><ul>
-<li>z_hat_iter
-: <a class="el" href="structsolverf__plan__complex.html#a4c8dbe5d5a4d910b93ae7f84215482c8">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#aeee7fa961ebdf43e0caf1108e6b5ada7">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#abe468b3b489a8707538f083713962fcc">solverl_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a0816054fdb0e07f4a68fc4aa5321c977">solverl_plan_double</a>
-</li>
-<li>z_iter
-: <a class="el" href="structinfft__adjoint__plan.html#a0f6a4a61889385e975380802617ade31">infft_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a2c01ce7b85130d3069016e30b4a1685e">infsft_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a254d587d2d91f18fb55a2ccae89198a5">infst_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a2e2d8f1f1a6a7500c1689cf5021abcde">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#a0efcec4db642e9066fbc64c1c70bc079">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a5b1da212f8c15d7ca209dbe347a5ec8f">infct_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a4a4aac08b2efbcbc13545a08bb397f52">innfft_adjoint_plan</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_func.html b/doc/api/html/functions_func.html
deleted file mode 100644
index 862ddf9..0000000
--- a/doc/api/html/functions_func.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Functions
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li class="current"><a href="functions_func.html"><span>Functions</span></a></li>
- <li><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
- <ul>
-<li>FFTW_MANGLE_DOUBLE()
-: <a class="el" href="structnfft__plan.html#a2310e54f3049b94d2bf08b67f689280c">nfft_plan</a>
-, <a class="el" href="structnfct__plan.html#a5ae19fdb6ea93d515109229f419c22df">nfct_plan</a>
-, <a class="el" href="structnsfft__plan.html#a937d2895eeeaa8aabb92359232498693">nsfft_plan</a>
-, <a class="el" href="structnfst__plan.html#ac3c18cc4dec9293352c508e9999ebf05">nfst_plan</a>
-, <a class="el" href="structnfct__plan.html#af736d9e6e59e9a91276a48a50979fedb">nfct_plan</a>
-, <a class="el" href="structnfst__plan.html#abeeca1317cee53206b64c79f3de094c2">nfst_plan</a>
-, <a class="el" href="structnsfft__plan.html#a979134567e97bfffbc022b8267f98f6d">nsfft_plan</a>
-</li>
-<li>FFTW_MANGLE_FLOAT()
-: <a class="el" href="structnsfftf__plan.html#a5ceb97a548f5a438ad46a12133b1b5e8">nsfftf_plan</a>
-, <a class="el" href="structnfftf__plan.html#a17fea72bdd4f446528716400f4522dac">nfftf_plan</a>
-, <a class="el" href="structnsfftf__plan.html#ac0a9dbecfd535a1c7b2c0cfec5b79925">nsfftf_plan</a>
-, <a class="el" href="structnfftf__plan.html#ae2ffec96887c5407fb31063a0139f678">nfftf_plan</a>
-, <a class="el" href="structnfctf__plan.html#a18d7721bf6d8ccbc5bb20e2dad30f9a3">nfctf_plan</a>
-, <a class="el" href="structnfstf__plan.html#ad4f44281f0c352fc630442cb40597983">nfstf_plan</a>
-</li>
-<li>FFTW_MANGLE_LONG_DOUBLE()
-: <a class="el" href="structnfstl__plan.html#a2c07f20560a3969129916e3d30239227">nfstl_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a9a426f13a97f82a480413cba913b7f2b">nsfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#ad0a55579cc5f04b0af4cc28abd445083">nfctl_plan</a>
-, <a class="el" href="structnfftl__plan.html#ab17581f82946cc39584acd6b059b7809">nfftl_plan</a>
-, <a class="el" href="structnfstl__plan.html#a6285132e89913685bc2f7366fd79e769">nfstl_plan</a>
-, <a class="el" href="structnfftl__plan.html#a2e9e81a72c786bd7ed4eef099a5f8a5e">nfftl_plan</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars.html b/doc/api/html/functions_vars.html
deleted file mode 100644
index 3d2ae19..0000000
--- a/doc/api/html/functions_vars.html
+++ /dev/null
@@ -1,90 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li class="current"><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index__"></a>- _ -</h3><ul>
-<li>_alpha
-: <a class="el" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7">fpt_data_</a>
-</li>
-<li>_beta
-: <a class="el" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb">fpt_data_</a>
-</li>
-<li>_gamma
-: <a class="el" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc">fpt_data_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x61.html b/doc/api/html/functions_vars_0x61.html
deleted file mode 100644
index 5096185..0000000
--- a/doc/api/html/functions_vars_0x61.html
+++ /dev/null
@@ -1,142 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li class="current"><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_a"></a>- a -</h3><ul>
-<li>a
-: <a class="el" href="structnnfftf__plan.html#ab0a39deb647f2a862caf5a6cfaf4939b">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a0a30183077239e2de76e5de626dc92e9">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a41260d5c377bdd918b4952b4730b6908">nnfftl_plan</a>
-</li>
-<li>a22
-: <a class="el" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9">fpt_step_</a>
-</li>
-<li>act_nfft_plan
-: <a class="el" href="structnsfftf__plan.html#a505021fefe68002ba73c78815166a73c">nsfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a28eeabbe1dbef7ccf1c2b8c683a4b5dc">nsfftl_plan</a>
-</li>
-<li>Ad
-: <a class="el" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef">fastsum_plan_</a>
-</li>
-<li>Add
-: <a class="el" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc">fastsum_plan_</a>
-</li>
-<li>alpha
-: <a class="el" href="structfpt__data__.html#ad56b765b9faabb4071e844e7d1355151">fpt_data_</a>
-, <a class="el" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e">nfsft_wisdom</a>
-, <a class="el" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a">fgt_plan</a>
-, <a class="el" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087">fastsum_plan_</a>
-</li>
-<li>alpha_0
-: <a class="el" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e">fpt_data_</a>
-</li>
-<li>alpha_iter
-: <a class="el" href="structsolverf__plan__double.html#ae1d25f3ba1b23f7d5953991495c91ce3">solverf_plan_double</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a6e7a960d8661f6c459ebac7085e2587f">infct_adjoint_plan</a>
-, <a class="el" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#ad149f66fa5dde187b3ef7860e593de01">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a7ea0b68ab2ccfe01df7a3747a5fed15a">solverl_plan_double</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#aad358c99ea10d70c4984bf9898820865">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a9abf5757d92159acfd73366a4c4df7be">infft_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#ae202e8af2161d1d64bb32e49fc16f5f0">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#ae6e228dc1df00e0b3de8873f0de12675">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#aef3f9b375d7e43fbcbea60380c5e9f34">infst_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a740c87ac77f68578613d58e569deedb2">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structsolverf__plan__complex.html#ac2ce57e2bfbc31f9262e5ce93562d899">solverf_plan_complex</a>
-</li>
-<li>alphaN
-: <a class="el" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519">fpt_data_</a>
-</li>
-<li>aN1
-: <a class="el" href="structnnfftf__plan.html#a405914d88ec36f1bf8438ebfed59f294">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#af262dc79891366e77bb15789aa24f2cd">nnfftl_plan</a>
-, <a class="el" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb">nnfft_plan</a>
-</li>
-<li>aN1_total
-: <a class="el" href="structnnfft__plan.html#acb1a1fa5fdb73d2187e9e9d8e4415921">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#aa791fcca6424d42640020e178e8319e7">nnfftl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a4bfc7abd18935616365f7925b2994e38">nnfftf_plan</a>
-</li>
-<li>aux
-: <a class="el" href="structnfsoftf__plan__.html#a5f7c39509a2403a9bc17824be7a3c3a9">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#ae669348fbbb187c8c521f6a89c8f3720">nfsoftl_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#ae31e501405bebb72dcfe9831b34be76c">nfsoft_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x62.html b/doc/api/html/functions_vars_0x62.html
deleted file mode 100644
index 7b67780..0000000
--- a/doc/api/html/functions_vars_0x62.html
+++ /dev/null
@@ -1,122 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li class="current"><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
-<li>b
-: <a class="el" href="structnfftf__plan.html#a3ede2fe9c94e00ec59150ba2971facb2">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a6eb955f63212f63c0ac26894f8355caf">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#a49927bec2aa96ab8596740011fabb914">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a8378f952b6e05cd58225877eee84f2e7">nfstl_plan</a>
-, <a class="el" href="structnfct__plan.html#af1c2c2fe35f5b574a39109bb7b176270">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#adbd7faf4a853905d26899885e5ca3b38">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#aa91e909254c1beb83e2e971df50b96ca">nnfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#a80c548cbcc4defbac2b544602a5baa85">nfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a01287f3f68aff7e5d7ce35d3163021e2">nfctl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#ada085ec8f6099bfcaa7a193745689c9a">nnfftl_plan</a>
-, <a class="el" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4">fgt_plan</a>
-, <a class="el" href="structnfstf__plan.html#a2ca69cf1b6dea39e81cba93d0d1667d8">nfstf_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972">fastsum_plan_</a>
-</li>
-<li>beta
-: <a class="el" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255">nfsft_wisdom</a>
-, <a class="el" href="structfpt__data__.html#af28f490521ca26420df33a1f590363e3">fpt_data_</a>
-</li>
-<li>beta_0
-: <a class="el" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa">fpt_data_</a>
-</li>
-<li>beta_iter
-: <a class="el" href="structsolver__plan__complex.html#af13036b1a6f6edabe3fd862f77cf5000">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#aebfe38cf3b3ca344bbfbb7b1cf41eca8">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__double.html#a1c60e5fd15da3722f9b8213d1634c86a">solverl_plan_double</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a7714746a66fd3657bd247062c9c5cb24">infsft_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a0aa7b8faeab03acb6011b673882282ea">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a444f54274b78ec9162683d2cc9cb3160">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#ac622efae9216d5d4335118084c7fcbfa">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structsolverf__plan__complex.html#abd007d004fedd5bb4b9eb919d8e928d8">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#a4b53103abc562b5c603b4b656d1992fa">solverf_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#ab0f9266a50fc4a3acda9659b2c0920e3">solverl_plan_complex</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a3e6ea22841cd010652beb76f554bdf92">infct_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a09f8c30247659fc918d48521ba5ed5e8">infft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a7f3271035bca7b994475e565ab1ffb22">imri_inh_2d1d_adjoint_plan</a>
-</li>
-<li>betaN
-: <a class="el" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d">fpt_data_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x63.html b/doc/api/html/functions_vars_0x63.html
deleted file mode 100644
index 349461d..0000000
--- a/doc/api/html/functions_vars_0x63.html
+++ /dev/null
@@ -1,105 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li class="current"><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
-<li>c_phi_inv
-: <a class="el" href="structnfftf__plan.html#aa71f70b332bbb9868caad1db9f6cda02">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a38d2c1dec96ad6d632133bc1dcbf82cb">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#a2c42ae2c8ca95bb4c0c1dfc279bc2cab">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a7fdb409271e18f5dec1ac622af10d32a">nfstl_plan</a>
-, <a class="el" href="structnfct__plan.html#aa217dda883fc3533b95bf6ab6ccff888">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a89b1d6ef566671d479eaaf4e50f666cb">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#ab9b9f0d173b9526d60c1ae8fbec1e1f7">nnfftl_plan</a>
-, <a class="el" href="structnnfft__plan.html#a9073b3c76f70f8b9caedac7f5574ce89">nnfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#afdcd5a1259a4fb7e7271efe30a207265">nfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a2b69489da0118e06cba24db6d73ea934">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a9d59ca4338fe39f2e22f4e5d3155deba">nfstf_plan</a>
-</li>
-<li>center_nfft_plan
-: <a class="el" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e">nsfft_plan</a>
-, <a class="el" href="structnsfftf__plan.html#aa01b9e613b9847fa4cc6278fcb3ae660">nsfftf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#af26a51757ddb28c4bcb37a0426e83fc1">nsfftl_plan</a>
-</li>
-<li>cheby
-: <a class="el" href="structnfsoftf__plan__.html#a73e75b0a9f8ceebffe6923c90c04c312">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#a681110b5c15effe7ef2781249e049119">nfsoftl_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x64.html b/doc/api/html/functions_vars_0x64.html
deleted file mode 100644
index b170656..0000000
--- a/doc/api/html/functions_vars_0x64.html
+++ /dev/null
@@ -1,212 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li class="current"><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_d"></a>- d -</h3><ul>
-<li>d
-: <a class="el" href="structnfftf__plan.html#a35ff58e4549b1c5292fd03cb215debac">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a1129b984a15339cca4fbbbc2190d43af">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8">nfst_plan</a>
-, <a class="el" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307">fastsum_plan_</a>
-, <a class="el" href="structnfstl__plan.html#a66ac609113d5f8debb056f3c62f6b14b">nfstl_plan</a>
-, <a class="el" href="structnfct__plan.html#a998a428a06532646854e8add72c5ca63">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#ae6d3ce66c1d6d2fd0f507d83df91f549">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6">nnfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#a4c139d72e93078b54f4240ecd7f6454f">nfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#aa42a9c638dec4cfa622f2e3f7e7c1dc3">nfctl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a14dac9d67ed25ff370516f66668a8ec6">nnfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#a161e392c8404d11f3237350b23e8c041">nsfftf_plan</a>
-, <a class="el" href="structnfstf__plan.html#aa792b04cd0fa4f09175773aaa48f6a69">nfstf_plan</a>
-, <a class="el" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aca82cd28238f0c1a5171eabd1d301f90">nsfftl_plan</a>
-</li>
-<li>deltax0
-: <a class="el" href="structtaylor__plan.html#a09164bdbcba8f9ecc7a58904574ff07b">taylor_plan</a>
-</li>
-<li>direct_plan
-: <a class="el" href="structnnfftf__plan.html#a15fe2e694c1b999008600c1f4a5dc2be">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#aa59e9ff1ad2fe1d90e077451831c6596">nnfftl_plan</a>
-</li>
-<li>dot_p_hat_iter
-: <a class="el" href="structsolverf__plan__complex.html#a3d2a5ea538a77dc4f2da9b53beab9c01">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#a2bf2a21b09e47a883f9665b4ec38f3c2">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#a0cced7bb2f3b85b75b765d796e2c741d">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a21f781633362300a145e71ea88febbae">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#a4941cd9e60935f7e39a0c86a52202c02">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a2f43c87a598dff5b6e87960a07864148">solverl_plan_double</a>
-</li>
-<li>dot_p_iter
-: <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a00c75acfb362339a30d2809520fcd775">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#a65805c60e7d3a18d9a8952da80286032">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a108504616c4e19b53638a80710f9308c">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a2ddddb18e229f9d2d4b9eb11c36d0529">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a50526d4b81b2dd8cf90e82ad162af3c5">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a6dfb17d6feade963b31c16e6278aa6ee">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a3d20a53eb3c0158cc401d7b0d640da07">innfft_adjoint_plan</a>
-</li>
-<li>dot_r_hat_iter
-: <a class="el" href="structinfsft__adjoint__plan.html#a90e95de22380d88f23720ffca653edeb">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#af3de3b55c6ddf2e27ed9fbe7ef164b04">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#adfc3485017bb92e57c229dc7f81e438b">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a3dfbd628846af0683c8fc263f8cf6418">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#aad7bfd0f7561ec252b26b1d183622f12">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a52eec6bb5ee2ae209ed90d44739c8769">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#af456205ec418161fe20de523e423bb51">imri_inh_3d_adjoint_plan</a>
-</li>
-<li>dot_r_hat_iter_old
-: <a class="el" href="structinfsft__adjoint__plan.html#a228a2a746f7b7958efb3c4a4ef28e6ce">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a38e5e1e241a0a4a54e83266223725ab6">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a98056f05d5a45569899df80b040b9872">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#ae8dfd86274f0e3bba8c01730449d0474">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a0a0b243360667886af63d1ac26408f74">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a846d92d450d33e64996d28c2054e3181">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#acce4b5401db74c6e9896a78eccc9ca1e">imri_inh_3d_adjoint_plan</a>
-</li>
-<li>dot_r_iter
-: <a class="el" href="structsolverf__plan__complex.html#a1bb6290598f2f4f1452a2de2c27f54af">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#ae52e93514983b50204d70f660e720e04">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#aa2d90b37bc2a2ae2f9d0c90c9431abf1">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#ab12b510e093f8ccfaa4c1e51b6cd31c1">solverl_plan_double</a>
-</li>
-<li>dot_r_iter_old
-: <a class="el" href="structsolverf__plan__double.html#a2ee1d6b53c866d65aaa948afcbdd871e">solverf_plan_double</a>
-, <a class="el" href="structsolverl__plan__double.html#afa3e321968bd1773368cebe1339add7c">solverl_plan_double</a>
-, <a class="el" href="structsolverf__plan__complex.html#a861d76266b51f96c015ed6e33505978d">solverf_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#add3b6bc4149ba5371ef0b8bd91443e50">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a5d47ba554ae4d190384eaca6250f7312">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#a6d564c417ab5b11a306e489df80f4e1e">solverl_plan_complex</a>
-</li>
-<li>dot_v_hat_iter
-: <a class="el" href="structinfst__adjoint__plan.html#ab4e8f85dfe25ba2b90f86d7d39362e5c">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a5d9a12eacf094e7f9e771add0a3874d5">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aed3f646cabd7b8ab1a480d7607ea45f3">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#ae251b00724c42f9c0f906e823c9e17f8">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a990b893dd142cbc3ade6436bdd603e59">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a1a005f3e97b207a1d42cbc8e2ad3a5e1">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#ac1b772ccfa72ce8e522298aeef3b1e1b">infct_adjoint_plan</a>
-</li>
-<li>dot_v_iter
-: <a class="el" href="structsolverf__plan__double.html#aaeae6a2f28ba0ded31baca1aa8c36431">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#a0561b1d4bd014a175ef75d069cc592de">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a364a63cb093efa72e618a349a58d1890">solver_plan_double</a>
-, <a class="el" href="structsolverf__plan__complex.html#a46f2243aac9e8e4689ab7f06914d3f97">solverf_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a849c4c1c131a333885e581fec5a2dac0">solverl_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#a14f62c3118e3c1c7a92dd9bf8877250c">solverl_plan_complex</a>
-</li>
-<li>dot_z_hat_iter
-: <a class="el" href="structsolverf__plan__complex.html#adeec40c2b8450cd7486f8524c6dcc3d4">solverf_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__double.html#aefacac40db7773101ce75ba8247119b7">solverl_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#ae487ec619578f4f6d4876d7bc059f22a">solverl_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df">solver_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#a845482517a34f22d7eb39bf1747e5dd6">solverf_plan_double</a>
-</li>
-<li>dot_z_hat_iter_old
-: <a class="el" href="structsolverf__plan__double.html#aa9672016211508805091ab645b489bbf">solverf_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#af4efa34efc92f873c771df52d423f39e">solverl_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a35f2567cc25bcfce28dbb48eba5e49c9">solver_plan_double</a>
-, <a class="el" href="structsolverf__plan__complex.html#a71e2482ed0eb34229fb166d6821d1a03">solverf_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#aa991891a7df826b77fac977581f9077c">solverl_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#aadb97426a0e35fd46a65557c56b055ee">solver_plan_complex</a>
-</li>
-<li>dot_z_iter
-: <a class="el" href="structinnfft__adjoint__plan.html#aae72bba8cc1a211c1b3931c969f95a85">innfft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a6cca862303d84903e408f5a2ea02aa9c">infft_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a2309d1161fdf96711f3251e41a65eef0">infst_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#ad854541f2e09bc978461fff1c323b2a5">infsft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#af91db19db24ca1c648d97ea516367f94">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#ac3ca8cbbcd9958d69b15b4696e14a2e3">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#ab848ecc31c17b9cd639e9834ee56816d">infct_adjoint_plan</a>
-</li>
-<li>dot_z_iter_old
-: <a class="el" href="structimri__inh__3d__adjoint__plan.html#a794d80ffe20e25a4d69340d925d8624c">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#aa78f22f1c5c917f665b2f1af3e7df191">infft_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a9bdd6b4dfcb1b22bd010444ef34b5903">infst_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#ad2417d37a566a0d26dea57f6f875ca12">infct_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a92ceaf9529a44c28fd3b6d9d63c0c13f">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a669c48fd77d0d04bf0adc4ebedbd699f">innfft_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a681a3587b2e42a24f03bac812eb7a60e">infsft_adjoint_plan</a>
-</li>
-<li>dpt
-: <a class="el" href="structfpt__set__s__.html#a0509dfa979aa395a80d8f38b2f5fb760">fpt_set_s_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x65.html b/doc/api/html/functions_vars_0x65.html
deleted file mode 100644
index fd16e48..0000000
--- a/doc/api/html/functions_vars_0x65.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li class="current"><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
-<li>eps_B
-: <a class="el" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46">fastsum_plan_</a>
-</li>
-<li>eps_I
-: <a class="el" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6">fastsum_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x66.html b/doc/api/html/functions_vars_0x66.html
deleted file mode 100644
index a20f920..0000000
--- a/doc/api/html/functions_vars_0x66.html
+++ /dev/null
@@ -1,214 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li class="current"><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
-<li>f
-: <a class="el" href="structnfftf__mv__plan__complex.html#ab3a2f060f60eb88cd268bc1bec2e5310">nfftf_mv_plan_complex</a>
-, <a class="el" href="structnfftf__mv__plan__double.html#a0b25cac2771ce5e3048ddc1b708e9005">nfftf_mv_plan_double</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e">nfft_mv_plan_complex</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#ae6c4a0204a54f2a37a0acf2b3f5a0c0c">nfftl_mv_plan_double</a>
-, <a class="el" href="structnnfftf__plan.html#a458403c21a1083ede0d84a6d25c8cc8c">nnfftf_plan</a>
-, <a class="el" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#a62073b403c90aa2b527d5f62f190112e">nfsoftl_plan_</a>
-, <a class="el" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb">nnfft_plan</a>
-, <a class="el" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1">fgt_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a">fastsum_plan_</a>
-, <a class="el" href="structnfftl__plan.html#a53b53a1222f4acf29c778b933c9f130e">nfftl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a6aaa7904dbee73679d86060f1842a04e">nnfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#aa2cda7d4bb129ad3dfd6b89682c28cd6">nsfftf_plan</a>
-, <a class="el" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e">nfft_mv_plan_double</a>
-, <a class="el" href="structnfctf__plan.html#a5c695490725fbd63787fb76548de2908">nfctf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#ada472d5a0fb2afc32b4d1683c98185f6">nsfftl_plan</a>
-, <a class="el" href="structnfct__plan.html#acca00284f93bd33c00a1b099a6eec8cd">nfct_plan</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#a3ab01f8b5f1b1368dbf3d7715ce46997">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#aa762bd3f11d1558e792ff34dc710bcb3">mrif_inh_3d_plan</a>
-, <a class="el" href="structnfftf__plan.html#a1c2e419705d6254801134bffe0695ae1">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5">nfft_plan</a>
-, <a class="el" href="structnfctl__plan.html#ae09e0a759e136ad020a97e6c76efbb30">nfctl_plan</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0">mri_inh_2d1d_plan</a>
-, <a class="el" href="structmri__inh__3d__plan.html#a9e51f5f4ad46d4b120c452fc962a2385">mri_inh_3d_plan</a>
-, <a class="el" href="structnfstf__plan.html#a178dae9cc4b5869ef69fd148efe14f93">nfstf_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a3e2fef5b1bb862347511209994235597">mril_inh_2d1d_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#adb03497106fd0a995b70010f9cd9684b">mril_inh_3d_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#adb5c2e9ba052f02fec78e550413aacfa">nfftl_mv_plan_complex</a>
-, <a class="el" href="structnfst__plan.html#a314e2d828775d6aa93a26d7c40b7b931">nfst_plan</a>
-, <a class="el" href="structnfsftf__plan.html#a7cfd191a4353a736bf9045c7e1d46f70">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df">nfsft_plan</a>
-, <a class="el" href="structnfstl__plan.html#ad4f7ff9f286c0203712d5f16b21e9e4e">nfstl_plan</a>
-, <a class="el" href="structnfsftl__plan.html#ad27b30233039fea75a9e1bc885324f3d">nfsftl_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a165dc6360c20f9eb19a55872cc29455a">nfsoftf_plan_</a>
-</li>
-<li>f_hat
-: <a class="el" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42">nfsft_plan</a>
-, <a class="el" href="structnfsftl__plan.html#ab9243951baccdf59de326cada1c08853">nfsftl_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#aa6990fedf1965a967f3f718dd373f543">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#ab280522456fe4f49ccb91d4aa195702d">nfsoftl_plan_</a>
-, <a class="el" href="structnfftf__mv__plan__complex.html#ad55a895ef394e9b74db36d028656b382">nfftf_mv_plan_complex</a>
-, <a class="el" href="structnfftf__mv__plan__double.html#a109229f89032f01e4b2bece93297189c">nfftf_mv_plan_double</a>
-, <a class="el" href="structnfftf__plan.html#aa967453b5ae5ba9e5b2056c884d2cda5">nfftf_plan</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52">nfft_mv_plan_complex</a>
-, <a class="el" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac">nfft_mv_plan_double</a>
-, <a class="el" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691">nfft_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#ae4b3786df2416012cf16d7ed4c097791">nfftl_mv_plan_complex</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#add804289931e55388070ee495c3e5072">nfftl_mv_plan_double</a>
-, <a class="el" href="structnfftl__plan.html#ad5cf4ad0369bdaf07f6acd801e6b9e5e">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a33bae90d163b1d848efc2c656bac6839">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#af289164b09e85f75e8ed0eb3ded40d9c">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#aede4fbbe9a7b666d5d5fbd62e62bf103">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#ab57019bf0a7274b5a6f401fe2f6bcf2b">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a8e7ed6ed137f58dea8f3871d959f8d9c">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#aa0a56037700b7a3d428c77e353dc209e">nfstl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a068de2b177ffaad5b0091b0ecd2ca211">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b">nnfft_plan</a>
-, <a class="el" href="structnfsftf__plan.html#a840547e30414a41c3751e2b418f76312">nfsftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a97bc689ffe1f4c8eb99ee43cf408c662">nnfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#a423d4a1555477e49a7cb3c26a4a5dfd1">nsfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a93d9d361d56e03f44bc6a9d4265b9f43">nsfftl_plan</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#a18fb340e9ead654552e45033c81ac637">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#ac644cb0bbceb7ea8634ea94758da405d">mrif_inh_3d_plan</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf">mri_inh_2d1d_plan</a>
-, <a class="el" href="structmri__inh__3d__plan.html#a91ed30b213dea4954d2d27c4d1334a50">mri_inh_3d_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a70247e89a002d0e7b5c66d1e87b33645">mril_inh_2d1d_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#ae1f94471fa54c0a172ede3345d0a9a9c">mril_inh_3d_plan</a>
-</li>
-<li>f_hat_intern
-: <a class="el" href="structnfsftf__plan.html#aa0a6fb494d6378f656c83f191cd4ed1d">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548">nfsft_plan</a>
-, <a class="el" href="structnfsftl__plan.html#ab3914490d1c4767c0127783cac5098e4">nfsftl_plan</a>
-</li>
-<li>f_hat_iter
-: <a class="el" href="structsolverf__plan__complex.html#abe0364fe67e48a336fca522a0cf6ee1b">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#aab9daf7841a5f6b3a059921713736e3c">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__complex.html#affba771210ad63dfce92bed9a629e19f">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a0c38937dd8ad6734e94e08a2cd700628">solverl_plan_double</a>
-, <a class="el" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1">solver_plan_double</a>
-</li>
-<li>f_iter
-: <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#ae154ca7cd0d7ebc7e0db4b1f415b56fd">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a0b408ac6ce2906dc57ff0c2ff9d3f0d0">infft_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a9c5a261251ad90176392b2fafcd961de">infsft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#af72ea2aed94d3e789dd064776fdf2919">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a53b03057778ae78ee06efd6b135e23fb">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a74d132853f5b7e0a4b8e3918dae7fe8c">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#a4207ca1175efe7865d6631ae5a704632">imri_inh_3d_adjoint_plan</a>
-</li>
-<li>fftw_flags
-: <a class="el" href="structnfftf__plan.html#a880c04f5e9d485d84065b3c289cd5729">nfftf_plan</a>
-, <a class="el" href="structnfctf__plan.html#afd3bc700b6adca6d3dde831c9a7aae79">nfctf_plan</a>
-, <a class="el" href="structnfctl__plan.html#afc96567eba0053563867b8e3a064902b">nfctl_plan</a>
-, <a class="el" href="structnfst__plan.html#a69d37e02b7a2868e3861c582e76e35d8">nfst_plan</a>
-, <a class="el" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805">nfft_plan</a>
-, <a class="el" href="structnfct__plan.html#a407c06575335351e1b720b40f8b4f26c">nfct_plan</a>
-, <a class="el" href="structnfftl__plan.html#a4e0df1f491a4aa8f7373d776d705095f">nfftl_plan</a>
-, <a class="el" href="structnfstl__plan.html#a0ab6b3ec18b7e0685277d5f6997aa54c">nfstl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a9da018cd24e707e57ed0c8cac82f5301">nfstf_plan</a>
-</li>
-<li>flags
-: <a class="el" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa">fastsum_plan_</a>
-, <a class="el" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869">fgt_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a6795cda9e0d83c5b5c7935b75d10dc1a">infsft_adjoint_plan</a>
-, <a class="el" href="structnsfftf__plan.html#acd78e2fcc4a9c29700887aee1517214c">nsfftf_plan</a>
-, <a class="el" href="structnfsftl__plan.html#a15d53809b4f86c20e7fd99ea1b71efcb">nfsftl_plan</a>
-, <a class="el" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694">nfsft_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#aadd41183d54818f3e8528affe40769bc">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structnfsoftl__plan__.html#a2f236235168535b9f9833bcc7e50e695">nfsoftl_plan_</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a83f3fc443fbf5c40336a46a8c1bdfaf8">infft_adjoint_plan</a>
-, <a class="el" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4">solver_plan_double</a>
-, <a class="el" href="structnfsftf__plan.html#a67898ed2ead6812358feeace004b14fe">nfsftf_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a8771c95bc65a49fe974389825f005ec9">infst_adjoint_plan</a>
-, <a class="el" href="structfpt__set__s__.html#a401070e7725566f06ae740e7e99a12a2">fpt_set_s_</a>
-, <a class="el" href="structsolverf__plan__double.html#a28ce886cb705632f8f866bfb5880795b">solverf_plan_double</a>
-, <a class="el" href="structnsfft__plan.html#a5fcea2cbb16bfdfc4a5a3f5142db3281">nsfft_plan</a>
-, <a class="el" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942">solver_plan_complex</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#adea4e1650ddadc3f0f7c1d833b6b7789">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a55301d3525d6457aebd0237871dee668">nfsoftf_plan_</a>
-, <a class="el" href="structsolverl__plan__double.html#aa95251443f265effb6093d63b6536431">solverl_plan_double</a>
-, <a class="el" href="structinfct__adjoint__plan.html#ad913ef9fc7d9bb8ca4f91f1abbf99949">infct_adjoint_plan</a>
-, <a class="el" href="structsolverf__plan__complex.html#a2d7642432b4b627a4bf77d1c05216669">solverf_plan_complex</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a0d51c3ece7512b04408b5a2b94ee4a05">innfft_adjoint_plan</a>
-, <a class="el" href="structsolverl__plan__complex.html#abd86575c07d53042297da1c54ebc9e1a">solverl_plan_complex</a>
-, <a class="el" href="structfpt__set__s__.html#ab2272294463f288c3aaa4513bfeac758">fpt_set_s_</a>
-, <a class="el" href="structnsfftl__plan.html#a5c4750f9d7a5f0dbc4d51d06d6be08d3">nsfftl_plan</a>
-, <a class="el" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca">nfsoft_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x67.html b/doc/api/html/functions_vars_0x67.html
deleted file mode 100644
index 25d880e..0000000
--- a/doc/api/html/functions_vars_0x67.html
+++ /dev/null
@@ -1,124 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li class="current"><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_g"></a>- g -</h3><ul>
-<li>g
-: <a class="el" href="structnfftf__plan.html#a35e6b39bfe06e5a6e56cde2458cf79a7">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539">nfft_plan</a>
-, <a class="el" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540">fpt_step_</a>
-, <a class="el" href="structnfftl__plan.html#aa442607f39ed01885dbeb286b18b1b77">nfftl_plan</a>
-</li>
-<li>g1
-: <a class="el" href="structnfctf__plan.html#a44a225766135ec7d1bbe8e8e7631faa3">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#a597e9fd4dddb36748c5e33ee1f058835">nfct_plan</a>
-, <a class="el" href="structnfftf__plan.html#a01420d5d785228ee24a4819d2b0454a2">nfftf_plan</a>
-, <a class="el" href="structnfctl__plan.html#afbe6522294161b247058e61e9ef64d78">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a279687997f16d0fb839928f472307b39">nfstf_plan</a>
-, <a class="el" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda">nfft_plan</a>
-, <a class="el" href="structnfst__plan.html#a06cd5d11b13d590c9ab3a88d93b21fb2">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#ac54e606a9b0c7c6b526fb3d44d28482a">nfstl_plan</a>
-, <a class="el" href="structnfftl__plan.html#a71a99cd893a823d1a7edb139650b2afe">nfftl_plan</a>
-</li>
-<li>g2
-: <a class="el" href="structnfftl__plan.html#aea25feca0bccefe267c0a9eb75390ed6">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a4a70d593fb1704dda85e2392c77ea3bc">nfctf_plan</a>
-, <a class="el" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78">nfft_plan</a>
-, <a class="el" href="structnfct__plan.html#ac4c375e593da728a4e7477f76ff12031">nfct_plan</a>
-, <a class="el" href="structnfstf__plan.html#a11f05420be226a83aed2e8c41a1b9bd3">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a7b67e2cf657227ae46d13fa239d534f7">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a0e91b301bcd4ce83aecdda2b0f7712ed">nfstl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a365bf7b6d6fa04bfb4206f8ec647eb14">nfctl_plan</a>
-, <a class="el" href="structnfftf__plan.html#a4fda15d8d9edaa8de0636b2a458bf763">nfftf_plan</a>
-</li>
-<li>g_hat
-: <a class="el" href="structnfftf__plan.html#aad01cb28079405090eaa1fce590c0c09">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5">nfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#af708c1c479196fb4e3ded3d289085b5e">nfftl_plan</a>
-</li>
-<li>gamma
-: <a class="el" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2">nfsft_wisdom</a>
-, <a class="el" href="structfpt__data__.html#a13aaa57c27f3ab5eab4c28d47d501723">fpt_data_</a>
-</li>
-<li>gamma_m1
-: <a class="el" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a">fpt_data_</a>
-</li>
-<li>gammaN
-: <a class="el" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a">fpt_data_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x69.html b/doc/api/html/functions_vars_0x69.html
deleted file mode 100644
index 8735559..0000000
--- a/doc/api/html/functions_vars_0x69.html
+++ /dev/null
@@ -1,102 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li class="current"><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
-<li>idx0
-: <a class="el" href="structtaylor__plan.html#a3d3e69bc61775fee556801bd66a47c19">taylor_plan</a>
-</li>
-<li>index_sparse_to_full
-: <a class="el" href="structnsfftf__plan.html#a3e6968100cf6a0d5950ccdcb1744788f">nsfftf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aaaf6f8d00374e91ec3baf983583b51bd">nsfftl_plan</a>
-, <a class="el" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55">nsfft_plan</a>
-</li>
-<li>index_x
-: <a class="el" href="structnfftf__plan.html#a1dadaac164fe9f9be856d47a53498335">nfftf_plan</a>
-, <a class="el" href="structnfftl__plan.html#ad98e162c23583ec8f010aacf9ec06767">nfftl_plan</a>
-, <a class="el" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735">nfft_plan</a>
-</li>
-<li>initialized
-: <a class="el" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740">nfsft_wisdom</a>
-</li>
-<li>internal_fpt_set
-: <a class="el" href="structnfsoftl__plan__.html#a8cf750d58de22209962bd9cb96f48864">nfsoftl_plan_</a>
-, <a class="el" href="structnfsoftf__plan__.html#a686809f1397b113322b77ef50c8c0ef7">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#a39a07d81bf6117dca5530d76beaf6b31">nfsoft_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x6a.html b/doc/api/html/functions_vars_0x6a.html
deleted file mode 100644
index 7ec2269..0000000
--- a/doc/api/html/functions_vars_0x6a.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li class="current"><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_j"></a>- j -</h3><ul>
-<li>J
-: <a class="el" href="structnsfftf__plan.html#a24e51336c8b6f1814932e2bad306179b">nsfftf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a6e3abb9e765b8f40b0f398a85c07d8af">nsfftl_plan</a>
-, <a class="el" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52">nsfft_plan</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x6b.html b/doc/api/html/functions_vars_0x6b.html
deleted file mode 100644
index 975f3d8..0000000
--- a/doc/api/html/functions_vars_0x6b.html
+++ /dev/null
@@ -1,104 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li class="current"><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
-<li>k
-: <a class="el" href="structfastsum__plan__.html#aaf4ea39f8bed50a000d83eec53ee42b8">fastsum_plan_</a>
-</li>
-<li>K
-: <a class="el" href="structnfftf__plan.html#aad0836b3e8e4a98b27729d960b593caa">nfftf_plan</a>
-, <a class="el" href="structnfftl__plan.html#ae6f8a76f202fe1816cfe1004a9ce9a0d">nfftl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a9d2bd4132187064cf5f6c301f7ce5125">nnfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4">nfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a574648230ce316a55282f362774aa615">nnfftl_plan</a>
-, <a class="el" href="structnnfft__plan.html#a4ee39bebbff40746c2701ade2e13f1f8">nnfft_plan</a>
-</li>
-<li>k_start
-: <a class="el" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334">fpt_data_</a>
-</li>
-<li>kernel_param
-: <a class="el" href="structfastsum__plan__.html#a37cbe7b34fce3f90419fb45ab74aaa34">fastsum_plan_</a>
-</li>
-<li>kinds
-: <a class="el" href="structfpt__set__s__.html#a15eafd93be80eeea02173a9042e303d3">fpt_set_s_</a>
-</li>
-<li>kindsr
-: <a class="el" href="structfpt__set__s__.html#afd6508cc584ac06b9f679be441b6e7f6">fpt_set_s_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x6c.html b/doc/api/html/functions_vars_0x6c.html
deleted file mode 100644
index 4b09c0c..0000000
--- a/doc/api/html/functions_vars_0x6c.html
+++ /dev/null
@@ -1,84 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li class="current"><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
-<li>lengths
-: <a class="el" href="structfpt__set__s__.html#a26355113f8348c270cd02bc196fad681">fpt_set_s_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x6d.html b/doc/api/html/functions_vars_0x6d.html
deleted file mode 100644
index feb7ae2..0000000
--- a/doc/api/html/functions_vars_0x6d.html
+++ /dev/null
@@ -1,245 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li class="current"><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
-<li>m
-: <a class="el" href="structnfftf__plan.html#a9002bd9a063311155ae2a8c94c076e9d">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a255a1e1526bba8643690e0aa9c5b90c6">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#ac3aacf128a897c132809411ef9d41d7d">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a55a5e4a962d8e01d7c0282f916bacb8c">nfstl_plan</a>
-, <a class="el" href="structnfct__plan.html#a15e9f66b0447148fcce4af9eafa2f9ed">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#af7f40661f8b29323b5b0f1ad5a7290a4">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da">nnfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#ac4741304d0030c88a8244dd1d8171b65">nfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a0a2a679bf0d1c90511a52c31f5a537f1">nfctl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a2082f917534e3a8590d5a19b4377a256">nnfftl_plan</a>
-</li>
-<li>M
-: <a class="el" href="structfpt__set__s__.html#a2387122a1e670e2e61b1699458224804">fpt_set_s_</a>
-</li>
-<li>m
-: <a class="el" href="structnfstf__plan.html#a6d228a85b702490f205c8983c15e33fe">nfstf_plan</a>
-</li>
-<li>M
-: <a class="el" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa">fgt_plan</a>
-</li>
-<li>M_total
-: <a class="el" href="structnfftf__mv__plan__double.html#a37eb6ac713dbf1205f2dce0fa39107df">nfftf_mv_plan_double</a>
-, <a class="el" href="structnnfftl__plan.html#a74e7fb29427e5a4d9b383ab278f513a2">nnfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#a6a75a26e5d6476595bde5b03d6293a0a">nsfftf_plan</a>
-, <a class="el" href="structnfftf__plan.html#a3823921949eded81bde776f57eba8052">nfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#af95027b3922c48e54dc5e5417d3a45e8">nsfftl_plan</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#a2cb2df3ae5db867f38cb75b7c88de7fe">nfft_mv_plan_complex</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#ac9fffb187c8a840eb83939ba4d710f13">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#a03c2aa160944a42e0f3116e7545ed20f">mrif_inh_3d_plan</a>
-, <a class="el" href="structnfft__mv__plan__double.html#af540ad90ef6b30fab022c95e8a5dcd58">nfft_mv_plan_double</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09">mri_inh_2d1d_plan</a>
-, <a class="el" href="structmri__inh__3d__plan.html#ae90c4e1c541956b5902e7aafc193ad8b">mri_inh_3d_plan</a>
-, <a class="el" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6">nfft_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a241e8def5a65484080b01871c12851b3">mril_inh_2d1d_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#a9a1093b920fb4468b59c7120a7e1ceb5">mril_inh_3d_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#aa0175f63a2b2f5c80bb3153008315871">nfftl_mv_plan_complex</a>
-, <a class="el" href="structnfsftf__plan.html#a5df19929f38064f36893840388ef975e">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed">nfsft_plan</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#ac7366d2d09a0b3aed5884b50d10ef478">nfftl_mv_plan_double</a>
-, <a class="el" href="structnfsftl__plan.html#aa1b43495afe03e88e419961428769246">nfsftl_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a6fc89775998b5353b0f674b75b3638ae">nfsoftf_plan_</a>
-, <a class="el" href="structnfftl__plan.html#a95e2db75883c6586f31b8db8c8bf8cf8">nfftl_plan</a>
-, <a class="el" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#a33cddd8977c92ba6641a1c4a18318fd6">nfsoftl_plan_</a>
-, <a class="el" href="structnfctf__plan.html#a86276f6249784d5121d83453818709e9">nfctf_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f">fastsum_plan_</a>
-, <a class="el" href="structnfct__plan.html#ab201c4e89753b167954e7cb5f34a321d">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#ac4ad3000c4c3293f3d86b90a926410a9">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a936082c69e582e36fb51ae452cd08fc3">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#ae4d5aeae7ea312bf70720bafd4fb3882">nfstl_plan</a>
-, <a class="el" href="structnfftf__mv__plan__complex.html#ab437c32f06548b3728bcb2b39681acd8">nfftf_mv_plan_complex</a>
-, <a class="el" href="structnnfftf__plan.html#a6908aa62ea014b3b60e047a99f6adb2b">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c">nnfft_plan</a>
-</li>
-<li>MEASURE_TIME_t
-: <a class="el" href="structnfftf__plan.html#afb81143dbd42553ed90440afc406c909">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848">nfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#ae8cf45feec672cd7e6f42a1b6a091a5c">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a3621b32cd8ea93b2bcb8db6ce40cd5bb">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#acd69baad39feaa27f34c063960b173f0">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#a2c6b9d81be06f2e557c410310420809f">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a369d8545639fccbf73f9daf7dcb94fe8">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a74e5be807909e0a443ea9b48e0a7da4b">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a47c6a3aba310b4f18d7ba5a7107fc168">nfstl_plan</a>
-, <a class="el" href="structnfsftf__plan.html#af36dbcf3d4f12bb85ac6c167aabf8768">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db">nfsft_plan</a>
-, <a class="el" href="structnfsftl__plan.html#ae2870ad5b902cb4724c2ab47e5e012e1">nfsftl_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d">fastsum_plan_</a>
-</li>
-<li>mv
-: <a class="el" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#a3da97d0d8d896d9da6a95a68a6f65442">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a56e946ecb94fc633a9d518d347725c4c">solverl_plan_double</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a791fe047a3b45cce8049e83d422b8414">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a320424336d0f74f0d24cc67053dea7ca">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a65d97330deb4cd9de78e4b9aa85afa62">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a02395790ff1d9e7ffc2e3fae3b927df0">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#abb0996d6ed2cd627dc28fb7f5c18007a">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a18f9b22f7f221aedc3dabab2cb07e633">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#afa903e9a436fc17da89b08377a6a733e">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structsolverf__plan__complex.html#a519286afbd99d020738a92e03c320a18">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#aaa4fedc5005e075e7f707770384be114">solverf_plan_double</a>
-</li>
-<li>mv1
-: <a class="el" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766">fastsum_plan_</a>
-</li>
-<li>mv2
-: <a class="el" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78">fastsum_plan_</a>
-</li>
-<li>mv_adjoint
-: <a class="el" href="structnfsftl__plan.html#a162601fc8aa3248af806908e160d3c14">nfsftl_plan</a>
-, <a class="el" href="structnfftf__plan.html#a9f8b111e42ef7ba609879d4a6983695d">nfftf_plan</a>
-, <a class="el" href="structnfftf__mv__plan__complex.html#acbff2532fc4d66cf92321be33ef6498f">nfftf_mv_plan_complex</a>
-, <a class="el" href="structnfftf__mv__plan__double.html#a3d0e47cf55f04c89523abd46f361ef91">nfftf_mv_plan_double</a>
-, <a class="el" href="structnfsoftf__plan__.html#a858269faf194eca2137b65f2a5a8c0fb">nfsoftf_plan_</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#add14030aae4920f7ca71ecf1efde00a3">nfft_mv_plan_complex</a>
-, <a class="el" href="structnfft__mv__plan__double.html#a92e4080bcb7241befa250be9d8f9a1cd">nfft_mv_plan_double</a>
-, <a class="el" href="structnfft__plan.html#abbe724645c96ef34c3e98d821f6648a3">nfft_plan</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#a804a64f2fb25ad91487fbcc186d784e0">nfftl_mv_plan_double</a>
-, <a class="el" href="structnfftl__plan.html#a3d343b79e00dbb8cd4984143a03ddf53">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a876dda7208fd0634f426c1e5cb04b77f">nfctf_plan</a>
-, <a class="el" href="structnfsoft__plan__.html#a33d5fb830b3021ddb85320139be034b8">nfsoft_plan_</a>
-, <a class="el" href="structnfctl__plan.html#a99191484b327c3283f3aed8c3e9a3d70">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a604a83ef64c291c6f8b23d45f620f2c7">nfstf_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#a2d189c2b7f8b5bf635cce01354ef253e">mril_inh_3d_plan</a>
-, <a class="el" href="structnfst__plan.html#aedfe6da9afb5dc0457cc4f2197034fc0">nfst_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a6259dd5746b911632df1286d0654eabe">mril_inh_2d1d_plan</a>
-, <a class="el" href="structnfsoftl__plan__.html#a2f7123e0975b4a7cd693d01abf117949">nfsoftl_plan_</a>
-, <a class="el" href="structnnfftf__plan.html#adcff4592ce1838e342b92633e9f8de42">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#aa6098f51f9c69196ca782a1b0f8feeba">nnfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#a8b4c8c903e7b24610e2d2e0c9bb62705">nsfftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#a14cc99f56f6a61958aef26f80aac6f12">nfsft_plan</a>
-, <a class="el" href="structnsfft__plan.html#a9761ac166f3ec93197e8e409ba78fb4f">nsfft_plan</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#aea23a3331d423e70f2cbbeee71303906">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#afe427225384a2d226c3cb85cf9aa4042">mri_inh_2d1d_plan</a>
-, <a class="el" href="structnfstl__plan.html#a1eca782b8267b78a6effc382c0a5b9f4">nfstl_plan</a>
-, <a class="el" href="structnfsftf__plan.html#af4deec395e0a4650b1e108677b787900">nfsftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a0afd6961b8b0b24b526e034d89874c7c">nnfft_plan</a>
-, <a class="el" href="structnfct__plan.html#aab8ee071a4e254cbf94a03689ed3127f">nfct_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a658b4a71ff29aa1cc2febc66d6c175bd">nsfftl_plan</a>
-, <a class="el" href="structmri__inh__3d__plan.html#afa2e143e704b701e9a0ee1d795f46b5b">mri_inh_3d_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#a5f31b4b9a03ac8f9a503c1ae42cad758">nfftl_mv_plan_complex</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#ac765b0a8797a3fd31b58133be9ff280b">mrif_inh_3d_plan</a>
-</li>
-<li>mv_trafo
-: <a class="el" href="structnfftl__plan.html#a0f05caab33b6f473626e74f44356e3fc">nfftl_plan</a>
-, <a class="el" href="structnfsftf__plan.html#a417f0b7f48ab77d5af34ed1da9ba95c9">nfsftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#ac2beab555e72c8f10921db21dc094069">nnfft_plan</a>
-, <a class="el" href="structnfstl__plan.html#adbe7e6be1061160223c10b6567efda40">nfstl_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#a4d573c341aae7a4e034944772478658c">nfftl_mv_plan_complex</a>
-, <a class="el" href="structnfsft__plan.html#a01bf30c31f886ffa9d486c010a452051">nfsft_plan</a>
-, <a class="el" href="structnfft__mv__plan__double.html#a920771039e5cf889d6a29a243e6922e3">nfft_mv_plan_double</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#a4cad33b38f4d5bc54b8d25d90913ab44">mri_inh_2d1d_plan</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#acdbe3a414d9c87baba03db3d873b864c">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structnfftf__mv__plan__double.html#a130252f4a197b65416311097880cff4f">nfftf_mv_plan_double</a>
-, <a class="el" href="structmri__inh__3d__plan.html#a780818802d5bfdc4d4174a3637254fd5">mri_inh_3d_plan</a>
-, <a class="el" href="structnfftf__mv__plan__complex.html#a48e28caf604132d02999d1dc0f5dc9a0">nfftf_mv_plan_complex</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#a4763b4f8f1b5f574d601289ab3cbcfa8">mrif_inh_3d_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aad46757ac44a32dbb04d0e453454acac">nsfftl_plan</a>
-, <a class="el" href="structnfft__plan.html#a9ebd66f2964cca6a02fc50d640df3557">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a7a532e28539e1ac2f49413248ae76a67">nfctf_plan</a>
-, <a class="el" href="structnnfftf__plan.html#aea4c2210478af70a540da01e0c0a1c7b">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a39b1bdd9a3eacd4ff3b809eeef01f364">nnfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a42f0c32b080677a57f82ccf23d018da2">nfctl_plan</a>
-, <a class="el" href="structnfst__plan.html#a4a3b2ecc26204b3087d1c19b7857943f">nfst_plan</a>
-, <a class="el" href="structnfsoft__plan__.html#ae7c72bdbce93cb99dcbd14d764d08502">nfsoft_plan_</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#aff66252bd97fa6d73d7e137d888bb625">nfftl_mv_plan_double</a>
-, <a class="el" href="structnfsftl__plan.html#ab1a7dae6c0f2b18d4eda2e32195bba95">nfsftl_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a7dbc7cd7b733b5850a59f35aa0f959d1">mril_inh_2d1d_plan</a>
-, <a class="el" href="structnfftf__plan.html#ab09b1d93f60895791076e1e41241ecb0">nfftf_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a0291622a1f08aff56cc126ca64364d85">nfsoftf_plan_</a>
-, <a class="el" href="structnsfft__plan.html#abbab5fc009e68a329bbebee4904e53a5">nsfft_plan</a>
-, <a class="el" href="structnfct__plan.html#a5f9802e95bfc2ae69f22e91c1fe47778">nfct_plan</a>
-, <a class="el" href="structnfsoftl__plan__.html#aeab94862046b7688470f3f1d78ca927d">nfsoftl_plan_</a>
-, <a class="el" href="structnsfftf__plan.html#ac698248a376958d67a10beecfdc3aa36">nsfftf_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#a61eec020c68a2b36cff4acb6dd4dcf96">mril_inh_3d_plan</a>
-, <a class="el" href="structnfstf__plan.html#aa960f82c35501acf5237b5ed49f7fe57">nfstf_plan</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#a56bf298c03c4aaeb6b4aaf7ed5cca57e">nfft_mv_plan_complex</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x6e.html b/doc/api/html/functions_vars_0x6e.html
deleted file mode 100644
index b4e8522..0000000
--- a/doc/api/html/functions_vars_0x6e.html
+++ /dev/null
@@ -1,228 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li class="current"><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
-<li>N
-: <a class="el" href="structnfftf__plan.html#a27caa84ad525683d89b5963defadc98d">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#ade6a750c99253ddfe82c08e439094507">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b">nfst_plan</a>
-, <a class="el" href="structfpt__set__s__.html#aa353a04683b31bed668ee490d5df1b81">fpt_set_s_</a>
-, <a class="el" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87">fgt_plan</a>
-, <a class="el" href="structnfstl__plan.html#a83b7013eb7ce3b1743ba45a2546a36c0">nfstl_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnfftf__plan.html#a6971ea46e4044daa773f19c8bd8d4a0b">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae">nfft_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnfct__plan.html#ad4d0600d8b0ee9d41bff22a7d63e64cf">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#aefd2c40e607f75679bb61926881d4488">nnfftf_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnfftl__plan.html#a58140f5f6ea4ca1c0305cbcec55437bd">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a9c8ffbb61c7f5ad5d0a5545bdff83270">nfctf_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7">nnfft_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnfct__plan.html#a0ad3d47d659b3641bb90eca6e56f9047">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#a6d0bd4de4d2b90c38010bb4b8d77561b">nfctl_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnfftl__plan.html#a36e045f670b95d68f5c2e04b55a1c220">nfftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#a4497138b087187f70d19f107b1c80204">nfctl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a7fb433be8689db7816a3667620a294f3">nnfftl_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnfstf__plan.html#ade7cdc871c9633a324774001bd809f49">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2">nfst_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnfsftf__plan.html#a09b711da345edffb8a71b5b8a8bca6d0">nfsftf_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnfstl__plan.html#a10456ed98cb22787f2469e1d20903c8c">nfstl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#ae849996a09be847a35be6c1ea018d988">nnfftf_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnfstf__plan.html#a3c13e4fbc7dba10012ac853e2cde12d0">nfstf_plan</a>
-, <a class="el" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403">nfsft_plan</a>
-</li>
-<li>n
-: <a class="el" href="structnnfft__plan.html#a6b2de2633dd4347692e96887f98c1020">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#ad8d9bc5c5ae9f1ee6c813839ff831d97">nnfftl_plan</a>
-</li>
-<li>N
-: <a class="el" href="structnfsftl__plan.html#a8740f26f76947fcc07a636002217a8db">nfsftl_plan</a>
-</li>
-<li>n
-: <a class="el" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1">fgt_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a271a9a4e952484997e902c5cbd5ff084">fastsum_plan_</a>
-</li>
-<li>N1
-: <a class="el" href="structnnfftf__plan.html#a9f6a5274cee5803505df5ad65d4c12fd">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a693c5d648b1781dce21d24636aac6554">nnfftl_plan</a>
-</li>
-<li>N_MAX
-: <a class="el" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51">nfsft_wisdom</a>
-</li>
-<li>N_total
-: <a class="el" href="structnnfftl__plan.html#a0e0827be03d503291f4a6d76c7b690d7">nnfftl_plan</a>
-, <a class="el" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2">nnfft_plan</a>
-, <a class="el" href="structnnfftf__plan.html#afd4cb1ff03f227c4e9e1dd9da21ec34e">nnfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505">nsfft_plan</a>
-, <a class="el" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8">nfsft_plan</a>
-, <a class="el" href="structnfsftl__plan.html#a090c82bf91f18bc68a389c06fb347cec">nfsftl_plan</a>
-, <a class="el" href="structnfctl__plan.html#ac31afd2bc4a0fc94cd9ec08e302f84ac">nfctl_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#aa3a702dbaed1e34d090e23b75c9949d6">nfsoftf_plan_</a>
-, <a class="el" href="structmrif__inh__2d1d__plan.html#afad39dcd7d77c81247bcf5e4abc1cdaa">mrif_inh_2d1d_plan</a>
-, <a class="el" href="structnfsoftl__plan__.html#a397e113cdbedc1e964657131c9a9dea3">nfsoftl_plan_</a>
-, <a class="el" href="structnfftl__mv__plan__double.html#a63a371e62727c804a195cf2315b79a41">nfftl_mv_plan_double</a>
-</li>
-<li>n_total
-: <a class="el" href="structnfftf__plan.html#a79aefed96e856d86d0fb74f873ae09ba">nfftf_plan</a>
-</li>
-<li>N_total
-: <a class="el" href="structnfftf__mv__plan__complex.html#a65ce9742c15bad2711e8f8151bbf941c">nfftf_mv_plan_complex</a>
-</li>
-<li>n_total
-: <a class="el" href="structnfftl__plan.html#a58ea89cc9b78b32c8c1775e8b1277ad8">nfftl_plan</a>
-</li>
-<li>N_total
-: <a class="el" href="structnfftf__mv__plan__double.html#a1df474111c1d61261d53455e05bc6c63">nfftf_mv_plan_double</a>
-, <a class="el" href="structnfftf__plan.html#a65855ec1dec6f17eb46d6762ad6ff942">nfftf_plan</a>
-, <a class="el" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8">nfft_mv_plan_complex</a>
-, <a class="el" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41">nfft_mv_plan_double</a>
-, <a class="el" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22">nfft_plan</a>
-, <a class="el" href="structnfftl__mv__plan__complex.html#a469c0077659dda97651e075da143a398">nfftl_mv_plan_complex</a>
-, <a class="el" href="structnfftl__plan.html#a747b6aee3ae47ad66391027bc13789af">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a618b4315972d4ef612c772649d470ff9">nfctf_plan</a>
-, <a class="el" href="structmril__inh__2d1d__plan.html#a4114df78a52f5e4a1a12a13678a9cb6c">mril_inh_2d1d_plan</a>
-, <a class="el" href="structmril__inh__3d__plan.html#a79e477483b67862d2dd7fcb5432f7651">mril_inh_3d_plan</a>
-, <a class="el" href="structmrif__inh__3d__plan.html#a7d51e6be67c5f2bc4d1a996e10228258">mrif_inh_3d_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aa0e8f48c39f40e781da203659ec018ab">nsfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#afe49ebe4fbbb3bd90b12e939c06adfab">nsfftf_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976">fastsum_plan_</a>
-, <a class="el" href="structnfstl__plan.html#a87f57bdfd9ba4415370ec796329cc1de">nfstl_plan</a>
-, <a class="el" href="structnfct__plan.html#abc66ae61c54a049868c62288623d4a6b">nfct_plan</a>
-, <a class="el" href="structnfstf__plan.html#aea7fa284fa9aaa4e264c9c07844b5442">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a5622220bff0d3174b4dcae2a91313eed">nfst_plan</a>
-</li>
-<li>n_total
-: <a class="el" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7">nfft_plan</a>
-</li>
-<li>N_total
-: <a class="el" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e">nfsoft_plan_</a>
-, <a class="el" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b">mri_inh_2d1d_plan</a>
-, <a class="el" href="structnfsftf__plan.html#a90ee6582e535312ac761e4e6fbaad0c0">nfsftf_plan</a>
-, <a class="el" href="structmri__inh__3d__plan.html#aa1b253e912e92b252c4992eb86d92e12">mri_inh_3d_plan</a>
-</li>
-<li>nfct_flags
-: <a class="el" href="structnfctl__plan.html#a292db653f04805f907737a480f681888">nfctl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a484df328b87ae06b6c47b03298e18dbd">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#ae2a2e493b2938fe9b22b0506765f30cf">nfct_plan</a>
-</li>
-<li>nfft_flags
-: <a class="el" href="structnfftl__plan.html#a375f14a65c5686803270dbb3cfd1c371">nfftl_plan</a>
-, <a class="el" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d">nfft_plan</a>
-, <a class="el" href="structnfftf__plan.html#adaaa66e5b89d9f65ce94b56617574518">nfftf_plan</a>
-</li>
-<li>nfst_flags
-: <a class="el" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a15bb194b8a4fe39aca1b5be9f38d7175">nfstl_plan</a>
-, <a class="el" href="structnfstf__plan.html#aa23ef32254d98b76dfadbe7fa439f8c3">nfstf_plan</a>
-</li>
-<li>nnfft_flags
-: <a class="el" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a1a9bf1751caf842fb44f70a4cbab8744">nnfftl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#acebd9e667d51a5293f977642f031724e">nnfftf_plan</a>
-</li>
-<li>nplan1
-: <a class="el" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2">fgt_plan</a>
-</li>
-<li>nplan2
-: <a class="el" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163">fgt_plan</a>
-</li>
-<li>Ns
-: <a class="el" href="structfpt__step__.html#ac6767b7c6935b1f2af5dd54e2e8f690b">fpt_step_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x70.html b/doc/api/html/functions_vars_0x70.html
deleted file mode 100644
index 3a5af7f..0000000
--- a/doc/api/html/functions_vars_0x70.html
+++ /dev/null
@@ -1,167 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li class="current"><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
-<li>p
-: <a class="el" href="structtaylor__plan.html#afd71182be8b8fcfa66155b0be4fb94ee">taylor_plan</a>
-, <a class="el" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73">fgt_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a236982e68b9354c7edb47eeff18e05bf">fastsum_plan_</a>
-</li>
-<li>p_hat_iter
-: <a class="el" href="structsolverf__plan__complex.html#ac62464d925e739f79c28059cd1e59faa">solverf_plan_complex</a>
-, <a class="el" href="structsolverl__plan__complex.html#aa7833544d06eb2d71042da5fa06b9c5c">solverl_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a803178524d842ae2944fb5f3ce9d4939">solverl_plan_double</a>
-, <a class="el" href="structsolverf__plan__double.html#a6987fb320cd6798faabe9dfd92a494f2">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce">solver_plan_complex</a>
-, <a class="el" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677">solver_plan_double</a>
-</li>
-<li>p_iter
-: <a class="el" href="structimri__inh__3d__adjoint__plan.html#ade134a86a60d2538595acc2fafb83e41">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a6e1fc4f4d7adf8aa89cde17cf002f0f6">infsft_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#afa0571b6b2c75979bc6a8ea75dc13efc">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a6c81df2130d05bcbbcd6646cd27b671e">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a53b6ba348be2011c1cfecdb9f16829fd">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a74ee726c5c0916fde59e77ca51d319eb">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aafe496b74fca5e5d96ce258bb3da1ffc">imri_inh_2d1d_adjoint_plan</a>
-</li>
-<li>p_nfft
-: <a class="el" href="structnfsoftf__plan__.html#a1be8436a257f63ab4c27441bf714671d">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#ac1230a81665ed7aa68cb7b4bc3a0c0c1">nfsoftl_plan_</a>
-</li>
-<li>plan_nfft
-: <a class="el" href="structnfsftf__plan.html#a87927611482f2fb3421ea2279993f94a">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e">nfsft_plan</a>
-, <a class="el" href="structnfsftl__plan.html#a2c016b15b6b33c44b8218c43619ef784">nfsftl_plan</a>
-</li>
-<li>plans_dct2
-: <a class="el" href="structfpt__set__s__.html#aead22ae71c82ad37da07f6166bf53fbc">fpt_set_s_</a>
-</li>
-<li>plans_dct3
-: <a class="el" href="structfpt__set__s__.html#a5f146823d105906abf0cdc4c5f9638dc">fpt_set_s_</a>
-</li>
-<li>pre_cexp
-: <a class="el" href="structfgt__plan.html#ad7d9387df7df72e3d5d628d7e429c2a2">fgt_plan</a>
-</li>
-<li>pre_K
-: <a class="el" href="structfastsum__plan__.html#a2ac8e8bdf57c75a916b1f4ef36ca513e">fastsum_plan_</a>
-</li>
-<li>psi
-: <a class="el" href="structnfctl__plan.html#a59712f0b5712ba9020540b7bf355caea">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a96d6ede1036cae0a4df7fbf7ba7b8034">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a59c1ef7493650838cf31086a46ff2e3f">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a3fb3fd27fa2c3c907c4f1e05a183598d">nfstl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a10747f86b86f7fa64539b46914344877">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4">nnfft_plan</a>
-, <a class="el" href="structnfct__plan.html#ad3886151e655110a1c5ba71a66439e2b">nfct_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a8644e94ccefb0b3001442b4df86dae5d">nnfftl_plan</a>
-, <a class="el" href="structnfftf__plan.html#a84402b4c947d57abef20e5f2db9110e3">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c">nfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#a33955562ecf9b48f4283f869c77f96ff">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a748631060895d5106d11cdf4fce3ee60">nfctf_plan</a>
-</li>
-<li>psi_index_f
-: <a class="el" href="structnfst__plan.html#a028609e96fa5f10d4197e4b50312180c">nfst_plan</a>
-, <a class="el" href="structnfstl__plan.html#a46d8f0fefc63d3ba6f1811f41bc9a7d8">nfstl_plan</a>
-, <a class="el" href="structnfstf__plan.html#ad20fa3e6bdb829247c3585639a0b086d">nfstf_plan</a>
-, <a class="el" href="structnfctl__plan.html#a2ec8c4542c9fafbaf90b469ab8d06d59">nfctl_plan</a>
-, <a class="el" href="structnfft__plan.html#a2ed144cf7d6043a93c07b6f6ba7bbe2a">nfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#a713765bd7f9b488ac995de023de2ead1">nfftl_plan</a>
-, <a class="el" href="structnfctf__plan.html#aa33238f59c2282eea4b81d8ecbba1417">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#a59633568fd7d1cb01df5f49f08ad352c">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a3788434fa045ecd49dd89d116bb40c47">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#abf4204a1a31afd35d490ca4ef42bd596">nnfftl_plan</a>
-, <a class="el" href="structnfftf__plan.html#ac0073e7c6389e9141d555bf58e2d0b59">nfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a2ada74222958e630640e6456e9bd2a8d">nnfft_plan</a>
-</li>
-<li>psi_index_g
-: <a class="el" href="structnnfftl__plan.html#a4b53c60fb307d01e01931ef812974a3c">nnfftl_plan</a>
-, <a class="el" href="structnfct__plan.html#adcd209b5cbbfae40c5490a1141b7acda">nfct_plan</a>
-, <a class="el" href="structnnfft__plan.html#aa0b2be91e59a45c809c68398ceb41232">nnfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#a60f4fbcf2fb3a48a037e5cda4608f535">nfctf_plan</a>
-, <a class="el" href="structnfstf__plan.html#a3ece0ce2dd8ad2e41852ac59df3ad481">nfstf_plan</a>
-, <a class="el" href="structnfftf__plan.html#a04f8c8d2075057efa3b41381705084c6">nfftf_plan</a>
-, <a class="el" href="structnfctl__plan.html#a2e593f732ad26f9d681797a85a7293cf">nfctl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#aa6d0ce899b41da6981f6863fc242559d">nnfftf_plan</a>
-, <a class="el" href="structnfstl__plan.html#a773fbd9160ac14e6972a4b5be1b5113d">nfstl_plan</a>
-, <a class="el" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a">nfft_plan</a>
-, <a class="el" href="structnfst__plan.html#a2d2a4a4d3c7ff12f35045b5466f41811">nfst_plan</a>
-, <a class="el" href="structnfftl__plan.html#ad3ff1d5c721f0ec4e81aa341b29abc15">nfftl_plan</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x72.html b/doc/api/html/functions_vars_0x72.html
deleted file mode 100644
index ed2c9fe..0000000
--- a/doc/api/html/functions_vars_0x72.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li class="current"><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
-<li>r_act_nfft_plan
-: <a class="el" href="structnsfftf__plan.html#a844f94caf050adea11133a52dcbaccdc">nsfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a0a1b5e59c9ff83bc7b2d2894f96edd23">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#ad40799f013c6b35165c2bc76eb7cb32e">nsfftl_plan</a>
-</li>
-<li>r_hat_iter
-: <a class="el" href="structinfsft__adjoint__plan.html#a781b1438bf0c8d47f51b30551f982426">infsft_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a4739f3543d8e4e7af745c017a163516f">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a6088e9949fa966d839e8feadfb34596e">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a314c60168395a677ea88ff67dcaa2ec9">infft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#acbea7a40d34bbca7688da41378140926">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a3bb77b67c3779716d767e76b8661efbc">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#abd086bc019b356986e38f3db8039051f">infst_adjoint_plan</a>
-</li>
-<li>r_iter
-: <a class="el" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#aec8fcaf36c7ce234e76970dc4b4ec9c9">solverl_plan_complex</a>
-, <a class="el" href="structsolverf__plan__complex.html#a4ca8ff73e59386ea3d5003c1ad27459d">solverf_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a9715db1a24435d9dd2bc76371d92174e">solverl_plan_double</a>
-, <a class="el" href="structsolverf__plan__double.html#a6261a160be099d721856fab16f31cf22">solverf_plan_double</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x73.html b/doc/api/html/functions_vars_0x73.html
deleted file mode 100644
index d205f68..0000000
--- a/doc/api/html/functions_vars_0x73.html
+++ /dev/null
@@ -1,144 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li class="current"><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
-<li>set
-: <a class="el" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2">nfsft_wisdom</a>
-</li>
-<li>set_nfft_plan_1d
-: <a class="el" href="structnsfftf__plan.html#aaadc0908c69e235bc60ec3c7b28bca47">nsfftf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a89a23c26f73280c5945e62f8966195fb">nsfftl_plan</a>
-, <a class="el" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc">nsfft_plan</a>
-</li>
-<li>set_nfft_plan_2d
-: <a class="el" href="structnsfftf__plan.html#a4ee3a7ef05c4fdbc161d24db51be3122">nsfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aa7ae0c8a9b2f404bd1f8ce4820d7cf43">nsfftl_plan</a>
-</li>
-<li>sigma
-: <a class="el" href="structnfftf__plan.html#a20d669812b6acf9a8bda34cb659d61dd">nfftf_plan</a>
-, <a class="el" href="structnfstl__plan.html#a3c50de01911ed86a66d15ecd79874e21">nfstl_plan</a>
-, <a class="el" href="structnnfftf__plan.html#a858114a52835ef9cae070f6017625a4c">nnfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a09340f6465c23f3d94636f4f0da30f8a">nfft_plan</a>
-, <a class="el" href="structnnfft__plan.html#a6a3e11978f1e2c6279bd12785ef56b5d">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a899c16c2e59f2566a9f17d84f64af952">nnfftl_plan</a>
-, <a class="el" href="structnfftl__plan.html#a149fdaed10fafdb3bf414110ad233b7c">nfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#ab7b68bdae0872917b559577ac2f53402">nsfftf_plan</a>
-, <a class="el" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954">nsfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#acfc4ccc79c6fa50199500a790cb833b2">nfctf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#aa55c79623980b8334e9fcb50fa55ecd3">nsfftl_plan</a>
-, <a class="el" href="structfgt__plan.html#af6e97b6f971e4f89ceeac2bca9d69666">fgt_plan</a>
-, <a class="el" href="structnfct__plan.html#a56c9f580f79fb7605ae21bcbb729a8b9">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#a629ae83677e311095d4c24ad4826e2ab">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a8d8b3093a73c09aac44cd8f55708ef27">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a7a8028a0e7348e5fa7717eebf07b76d1">nfst_plan</a>
-</li>
-<li>size_psi
-: <a class="el" href="structnnfftf__plan.html#a67aae8bda525717c1628aa53fca9b7de">nnfftf_plan</a>
-, <a class="el" href="structnnfftl__plan.html#aed13a1f152cb6febf2ce643c204d8b9a">nnfftl_plan</a>
-, <a class="el" href="structnnfft__plan.html#af2992b9cb57809fb90a68dbaea36d79a">nnfft_plan</a>
-, <a class="el" href="structnfstl__plan.html#a975ebfbce1679c3ad3d8cc06e81c5645">nfstl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a2a01c089b030159c77a9bdcb46d1b183">nfctf_plan</a>
-, <a class="el" href="structnfct__plan.html#ab03d9f17b3fb46eb14439745e8f7994b">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#a1b8cf9260caf345c8ecb5e6de726387b">nfctl_plan</a>
-, <a class="el" href="structnfstf__plan.html#a4c9f0923fcf290197cee1550dc9a3665">nfstf_plan</a>
-, <a class="el" href="structnfst__plan.html#a1780e54f9fed43e92c22a1e70274e7ad">nfst_plan</a>
-</li>
-<li>spline_coeffs
-: <a class="el" href="structnfstl__plan.html#a7abc2fedc757d9b2b5f985377f99bfe7">nfstl_plan</a>
-, <a class="el" href="structnnfft__plan.html#ac3e3c4b14a5227a96b8627faf6933652">nnfft_plan</a>
-, <a class="el" href="structnfstf__plan.html#a64c5addda16e3d789184af183900db21">nfstf_plan</a>
-, <a class="el" href="structnfftf__plan.html#a65c65de370e29b24ba0da097d20ee262">nfftf_plan</a>
-, <a class="el" href="structnnfftf__plan.html#acb221c7694859d0828bcc1f56154cd69">nnfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a3aaf44c4f0769644075d9fc5ed60afa0">nfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#a971f190366e40c729899ff71d2a60682">nfftl_plan</a>
-, <a class="el" href="structnfct__plan.html#a53242b3a71b8997bdcd173777146c427">nfct_plan</a>
-, <a class="el" href="structnfctl__plan.html#a38de3cc7a337907a01ae2701ea335d75">nfctl_plan</a>
-, <a class="el" href="structnfctf__plan.html#a25a3208574495231141c9c407658f0cf">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#a23bec4401a652efc87ee6781061c9363">nfst_plan</a>
-, <a class="el" href="structwindow__funct__plan__.html#a59ddba27ebde497ae7cfcfc2dbdd2304">window_funct_plan_</a>
-, <a class="el" href="structnnfftl__plan.html#a8f364097c04b46c203a4883af90b9eb0">nnfftl_plan</a>
-</li>
-<li>stable
-: <a class="el" href="structfpt__step__.html#a71dc6483b4f3b958519bdafeae2c1dbf">fpt_step_</a>
-</li>
-<li>steps
-: <a class="el" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854">fpt_data_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x74.html b/doc/api/html/functions_vars_0x74.html
deleted file mode 100644
index 318c7ff..0000000
--- a/doc/api/html/functions_vars_0x74.html
+++ /dev/null
@@ -1,99 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li class="current"><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
-<li>t
-: <a class="el" href="structnfsftf__plan.html#ad5d65a033c50d321c6affc677e4f5226">nfsftf_plan</a>
-, <a class="el" href="structnfsft__plan.html#a59d80818cb9c0dcaccc477954720772c">nfsft_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a21641301ce6613d250e6d683c3fad9c2">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#ab0b32ee063950ce38adc6b0e5e40af02">nfsoft_plan_</a>
-, <a class="el" href="structfpt__set__s__.html#a1d35166e05db58736e422850fe02edef">fpt_set_s_</a>
-, <a class="el" href="structnfsoftl__plan__.html#acd18e8a2b89aacd8034b49033449f979">nfsoftl_plan_</a>
-, <a class="el" href="structnfsftl__plan.html#af5ba15c85f29ea8ba05a03c2f2fc2611">nfsftl_plan</a>
-</li>
-<li>T_MAX
-: <a class="el" href="structnfsft__wisdom.html#ae6c31fe1bc09d2894948358c2bea27e4">nfsft_wisdom</a>
-</li>
-<li>threshold
-: <a class="el" href="structnfsft__wisdom.html#ac367edaa1fae041e5b049cd81b44336b">nfsft_wisdom</a>
-</li>
-<li>ts
-: <a class="el" href="structfpt__step__.html#aeb754fe2aedc1f15cbb9c75c212772fb">fpt_step_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x76.html b/doc/api/html/functions_vars_0x76.html
deleted file mode 100644
index 3ce84c8..0000000
--- a/doc/api/html/functions_vars_0x76.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li class="current"><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_v"></a>- v -</h3><ul>
-<li>v
-: <a class="el" href="structnnfftf__plan.html#a62822fb1596e8eccd6d2edf62096323b">nnfftf_plan</a>
-, <a class="el" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c">nnfft_plan</a>
-, <a class="el" href="structnnfftl__plan.html#a224d2ba2e9ba30535b394b1375ff0a88">nnfftl_plan</a>
-</li>
-<li>v_hat_iter
-: <a class="el" href="structinfsft__adjoint__plan.html#ae1911bb7b195a6cdc51fc2c9dd5663d5">infsft_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a5078575d0bf816ed68ce3c762f578887">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#af253d4b292aa7db655ca51dfdf598bf9">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a8f64e1af7dfd3cd41377d79113eb51e3">infft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#ad04d2974dedefdc45e176e5ea5399aab">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#af025d6f664c1ccdd552f61e68d58ec97">infct_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a10da470b963e2d631f48e8eb81bad94e">infst_adjoint_plan</a>
-</li>
-<li>v_iter
-: <a class="el" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#a79c7f5b84aa9feddeafbcb9bde26de17">solverl_plan_complex</a>
-, <a class="el" href="structsolverf__plan__complex.html#a7e352320832a737577bd9ebe689a50bd">solverf_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#ab469e8fc7e7bc6c4068794cddf69ce26">solverl_plan_double</a>
-, <a class="el" href="structsolverf__plan__double.html#a6ee0cddd36b16d6b8cc09baf6db05cf9">solverf_plan_double</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x77.html b/doc/api/html/functions_vars_0x77.html
deleted file mode 100644
index 5a8d34c..0000000
--- a/doc/api/html/functions_vars_0x77.html
+++ /dev/null
@@ -1,116 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li class="current"><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
-<li>w
-: <a class="el" href="structsolverf__plan__complex.html#a91f7e03dc8509952827333cc61ca9aa4">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#a63c0a528c6e9989c7b0fee6c02d1fbff">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__double.html#adc2b7cea47756753ae9f8d5731f8d500">solver_plan_double</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a67fabb54885946acaaad95a5a472b004">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#add093d84bfb7f6f5d5b5512e000efc68">infct_adjoint_plan</a>
-, <a class="el" href="structsolverl__plan__complex.html#a547382238a57e96f316bac4dd291af0d">solverl_plan_complex</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a5b64034f7c01c3ce0a7ab02fd8477bdc">infst_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a20565dbd14d036eb348ca0276a4f411c">innfft_adjoint_plan</a>
-, <a class="el" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a0f45b9d16576986d6d6d9605f6891f3d">solverl_plan_double</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a552e0603ee92be729e052bb6028a1fb4">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#aa4cd6ea3040339a39047978a7c1f1c9d">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a9738a7ae6eb6e9ac59018d7fe0b67b32">infsft_adjoint_plan</a>
-</li>
-<li>w_hat
-: <a class="el" href="structinfst__adjoint__plan.html#a00f860d5af6ada0c99a252b5d7548f5b">infst_adjoint_plan</a>
-, <a class="el" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce">solver_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#ab1cada21b9034edfd3a1b2f77252f3be">solverf_plan_double</a>
-, <a class="el" href="structsolverf__plan__complex.html#aece5ec597b25ea28c945d2559316fad8">solverf_plan_complex</a>
-, <a class="el" href="structinfft__adjoint__plan.html#a76ad0c6eace967391553fd4939e70662">infft_adjoint_plan</a>
-, <a class="el" href="structsolver__plan__double.html#ab16ed4ac6cf04f57c4b1f194fbc09472">solver_plan_double</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aeb6a8106c1347dc7decf42e4520f70ab">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#aa53e43e9cd65db3ba08ed275cb62d456">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structsolverl__plan__complex.html#ad4d107f6ef642a2f8173d05d73bde405">solverl_plan_complex</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a0545064b15a22a5a3ae285e6aded5f80">innfft_adjoint_plan</a>
-, <a class="el" href="structsolverl__plan__double.html#aaa9d07d5f3ec0f7f7f0a6193927e1a94">solverl_plan_double</a>
-, <a class="el" href="structinfct__adjoint__plan.html#af14d4eb49aee59948ea57d30dbf4d628">infct_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a5830886454142e4825347a703f286c0a">infsft_adjoint_plan</a>
-</li>
-<li>wig_coeffs
-: <a class="el" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c">nfsoft_plan_</a>
-, <a class="el" href="structnfsoftl__plan__.html#a452e16848e81fd0b072d4e3347345455">nfsoftl_plan_</a>
-, <a class="el" href="structnfsoftf__plan__.html#a1d6f6e5b95a8f0ff13add5c23b382fb9">nfsoftf_plan_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x78.html b/doc/api/html/functions_vars_0x78.html
deleted file mode 100644
index 121eac6..0000000
--- a/doc/api/html/functions_vars_0x78.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li class="current"><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_x"></a>- x -</h3><ul>
-<li>x
-: <a class="el" href="structnfftf__plan.html#a4bcaa307f32321459187f8633a946a7e">nfftf_plan</a>
-, <a class="el" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0">nfft_plan</a>
-, <a class="el" href="structnfctf__plan.html#acf91ba20ce671a5d4c971465fbd33b03">nfctf_plan</a>
-, <a class="el" href="structnfst__plan.html#a048ebad4f2abe3821988fa06a5e308d8">nfst_plan</a>
-, <a class="el" href="structnfsoftf__plan__.html#a072fa8dcd38c95bec64c8e82af71afa7">nfsoftf_plan_</a>
-, <a class="el" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383">nfsoft_plan_</a>
-, <a class="el" href="structnfstl__plan.html#af663d590a277872d6e0e777cb410edbb">nfstl_plan</a>
-, <a class="el" href="structnfsoftl__plan__.html#a92211c64713d72c3d3cf45ac39601214">nfsoftl_plan_</a>
-, <a class="el" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93">fgt_plan</a>
-, <a class="el" href="structnfct__plan.html#a5635e780f4c492f087754d71f16e07ed">nfct_plan</a>
-, <a class="el" href="structnnfftf__plan.html#ae3c9275b5cafc753e2762406ba422378">nnfftf_plan</a>
-, <a class="el" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91">fastsum_plan_</a>
-, <a class="el" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d">nnfft_plan</a>
-, <a class="el" href="structnfftl__plan.html#ad5695c30a05c03573082a1aac0394700">nfftl_plan</a>
-, <a class="el" href="structnfsftl__plan.html#a59d00d103ebc0746d9cbf2d49077dfe8">nfsftl_plan</a>
-, <a class="el" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90">nfsft_plan</a>
-, <a class="el" href="structnfsftf__plan.html#a110084c9a750d175c70caa7a24d69ae7">nfsftf_plan</a>
-, <a class="el" href="structnfctl__plan.html#a2f7f915bfefa105412cabfc368c26560">nfctl_plan</a>
-, <a class="el" href="structnnfftl__plan.html#ad3c1a7dca6cddcecba876f1bb523e3b6">nnfftl_plan</a>
-, <a class="el" href="structnfstf__plan.html#ad0d1772e5947f4395cbfa0fc2ed39018">nfstf_plan</a>
-</li>
-<li>x_021
-: <a class="el" href="structnsfft__plan.html#aee5ad936bb790f00bf0797c94e185549">nsfft_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a62e8e58fe1b84f82ac85301a091af3fa">nsfftl_plan</a>
-, <a class="el" href="structnsfftf__plan.html#a0c015fd2deca4e70105f0c68a6a69586">nsfftf_plan</a>
-</li>
-<li>x_transposed
-: <a class="el" href="structnsfftf__plan.html#a4d7e0553a450636fc65816e4977914bd">nsfftf_plan</a>
-, <a class="el" href="structnsfftl__plan.html#a28eb398ae77902fd1ec2e0604d2a77ce">nsfftl_plan</a>
-, <a class="el" href="structnsfft__plan.html#aca6c9880cde07f3bc26dd7666c09a9d6">nsfft_plan</a>
-</li>
-<li>xc
-: <a class="el" href="structfpt__set__s__.html#a226e29e0f97627e77ec4fcebd0c49fdf">fpt_set_s_</a>
-</li>
-<li>xcvecs
-: <a class="el" href="structfpt__set__s__.html#a58a8f2867286e0be19dd89e8d41c033b">fpt_set_s_</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x79.html b/doc/api/html/functions_vars_0x79.html
deleted file mode 100644
index 73cea26..0000000
--- a/doc/api/html/functions_vars_0x79.html
+++ /dev/null
@@ -1,100 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li class="current"><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_y"></a>- y -</h3><ul>
-<li>y
-: <a class="el" href="structsolverf__plan__complex.html#a522b2ad5b572dce6d786b26e221a14d6">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#a31aa1269dccbcfad158f31c276b0399e">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__double.html#accc401c5912fe60922d4ce2b30132e18">solver_plan_double</a>
-, <a class="el" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51">fastsum_plan_</a>
-, <a class="el" href="structsolverl__plan__complex.html#afbcb92106789225f6d54be521797b97f">solverl_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a70307c6e59216c27cb4d78e7f172ab8c">solverl_plan_double</a>
-, <a class="el" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056">fgt_plan</a>
-</li>
-<li>y_hat
-: <a class="el" href="structimri__inh__3d__adjoint__plan.html#a968843771644077babbdd687b6bbdb5d">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfft__adjoint__plan.html#ab91fa7e8fa5668148a4cba86a97e415b">infft_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a4a98ec178d9d74dab4e617beebc419a6">infct_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#acd0758c4ed1c79b6d2f2eed33effb539">innfft_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aaed8db541ee689c5ec82bb8e18c4c8d1">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#ac21eced87cb3a6eafd0d22f27e0eac03">infsft_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a52d2b0b0d208e673eada45dff01e9c13">infst_adjoint_plan</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/functions_vars_0x7a.html b/doc/api/html/functions_vars_0x7a.html
deleted file mode 100644
index de3631a..0000000
--- a/doc/api/html/functions_vars_0x7a.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Data Fields - Variables
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li class="current"><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="functions.html"><span>All</span></a></li>
- <li><a href="functions_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="functions_vars.html"><span>Variables</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="functions_vars.html#index__"><span>_</span></a></li>
- <li><a href="functions_vars_0x61.html#index_a"><span>a</span></a></li>
- <li><a href="functions_vars_0x62.html#index_b"><span>b</span></a></li>
- <li><a href="functions_vars_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="functions_vars_0x64.html#index_d"><span>d</span></a></li>
- <li><a href="functions_vars_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="functions_vars_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="functions_vars_0x67.html#index_g"><span>g</span></a></li>
- <li><a href="functions_vars_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="functions_vars_0x6a.html#index_j"><span>j</span></a></li>
- <li><a href="functions_vars_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="functions_vars_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="functions_vars_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="functions_vars_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="functions_vars_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="functions_vars_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="functions_vars_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="functions_vars_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="functions_vars_0x76.html#index_v"><span>v</span></a></li>
- <li><a href="functions_vars_0x77.html#index_w"><span>w</span></a></li>
- <li><a href="functions_vars_0x78.html#index_x"><span>x</span></a></li>
- <li><a href="functions_vars_0x79.html#index_y"><span>y</span></a></li>
- <li class="current"><a href="functions_vars_0x7a.html#index_z"><span>z</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_z"></a>- z -</h3><ul>
-<li>z_hat_iter
-: <a class="el" href="structsolverf__plan__complex.html#a4c8dbe5d5a4d910b93ae7f84215482c8">solverf_plan_complex</a>
-, <a class="el" href="structsolverf__plan__double.html#aeee7fa961ebdf43e0caf1108e6b5ada7">solverf_plan_double</a>
-, <a class="el" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48">solver_plan_double</a>
-, <a class="el" href="structsolverl__plan__complex.html#abe468b3b489a8707538f083713962fcc">solverl_plan_complex</a>
-, <a class="el" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03">solver_plan_complex</a>
-, <a class="el" href="structsolverl__plan__double.html#a0816054fdb0e07f4a68fc4aa5321c977">solverl_plan_double</a>
-</li>
-<li>z_iter
-: <a class="el" href="structinfft__adjoint__plan.html#a0f6a4a61889385e975380802617ade31">infft_adjoint_plan</a>
-, <a class="el" href="structinfsft__adjoint__plan.html#a2c01ce7b85130d3069016e30b4a1685e">infsft_adjoint_plan</a>
-, <a class="el" href="structinfst__adjoint__plan.html#a254d587d2d91f18fb55a2ccae89198a5">infst_adjoint_plan</a>
-, <a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a2e2d8f1f1a6a7500c1689cf5021abcde">imri_inh_2d1d_adjoint_plan</a>
-, <a class="el" href="structimri__inh__3d__adjoint__plan.html#a0efcec4db642e9066fbc64c1c70bc079">imri_inh_3d_adjoint_plan</a>
-, <a class="el" href="structinfct__adjoint__plan.html#a5b1da212f8c15d7ca209dbe347a5ec8f">infct_adjoint_plan</a>
-, <a class="el" href="structinnfft__adjoint__plan.html#a4a4aac08b2efbcbc13545a08bb397f52">innfft_adjoint_plan</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/glacier_8c_source.html b/doc/api/html/glacier_8c_source.html
deleted file mode 100644
index db6c5a8..0000000
--- a/doc/api/html/glacier_8c_source.html
+++ /dev/null
@@ -1,280 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - glacier.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_7af51a00587982c04b08a156fa91c254.html">solver</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">glacier.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: glacier.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00042"></a><span class="lineno"><a class="code" href="group__examples__solver__glacier.html#gab4da467610b4e791d41de5b7501fe208"> 42</a></span> <span class="keyword">static</span> <span class="keywordtype">double</span> <a class="code" href="group__examples__solver__glacier.html#gab4da467610b4e791d41de5b7501fe208" title="Generalised Sobolev weight.">my_weight</a>(<span class="keywordtype">double</span> z,<span class="keywordtype">double</span> a,<span cl [...]
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> {</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> pow(0.25-z*z,b)/(c+pow(fabs(z),2*a));</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> }</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"><a class="code" href="group__examples__solver__glacier.html#gae32b7b49ac3d92c70301b2f96ab31e7a"> 48</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__examples__solver__glacier.html#gae32b7b49ac3d92c70301b2f96ab31e7a" title="Reconstruction routine.">glacier</a>(<span class="keywordtype">int</span> N,<span class="keywordtype">int</span> M)</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> {</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">int</span> j,k,k0,k1,l,my_N[2],my_n[2];</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">double</span> tmp_y;</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> ip;</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> FILE* fp;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment">/* initialise p */</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> my_N[0]=N; my_n[0]=X(next_power_of_2)(N);</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> my_N[1]=N; my_n[1]=X(next_power_of_2)(N);</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> nfft_init_guru(&p, 2, my_N, M, my_n, 6,</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> PRE_PHI_HUT| PRE_FULL_PSI|</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> MALLOC_X| MALLOC_F_HAT| MALLOC_F|</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">/* initialise ip, specific */</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> solver_init_advanced_complex(&ip,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&p), CGNE| PRECOMPUTE_DAMP);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> fprintf(stderr,<span class="stringliteral">"Using the generic solver!"</span>);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="comment">/* init nodes */</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> fp=fopen(<span class="stringliteral">"input_data.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span>(j=0;j<p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> fscanf(fp,<span class="stringliteral">"%le %le %le"</span>,&p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],&p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1],&tmp_y);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> ip.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j]=tmp_y;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> }</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> fclose(fp);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment">/* precompute psi */</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">if</span>(p.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="comment">/* initialise damping factors */</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">if</span>(ip.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">for</span>(k0=0;k0<p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];k0++)</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">for</span>(k1=0;k1<p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];k1++)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> ip.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[k0*p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]+k1]=</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <a class="code" href="group__examples__solver__glacier.html#gab4da467610b4e791d41de5b7501fe208" title="Generalised Sobolev weight.">my_weight</a>(((<span class="keywordtype">double</span>)(k0-p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2))/p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-band [...]
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <a class="code" href="group__examples__solver__glacier.html#gab4da467610b4e791d41de5b7501fe208" title="Generalised Sobolev weight.">my_weight</a>(((<span class="keywordtype">double</span>)(k1-p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]/2))/p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-band [...]
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="comment">/* init some guess */</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">for</span>(k=0;k<p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]=0;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="comment">/* inverse trafo */</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> solver_before_loop_complex(&ip);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">for</span>(l=0;l<40;l++)</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> {</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> fprintf(stderr,<span class="stringliteral">"Residual ||r||=%e,\n"</span>,sqrt(ip.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>));</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&ip);</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> }</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">for</span>(k=0;k<p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> printf(<span class="stringliteral">"%le %le\n"</span>,creal(ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]),cimag(ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]));</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&ip);</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"><a class="code" href="group__examples__solver__glacier.html#ga1503d05480f3e910ffae52b2e6aef34f"> 110</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__examples__solver__glacier.html#ga1503d05480f3e910ffae52b2e6aef34f" title="Reconstruction routine with cross validation.">glacier_cv</a>(<span class="keywordtype">int</span> N,<span class="keywordtype">int</span> [...]
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> {</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordtype">int</span> j,k,k0,k1,l,my_N[2],my_n[2];</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordtype">double</span> tmp_y,r;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p,cp;</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> ip;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">double</span> _Complex* cp_y;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> FILE* fp;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">int</span> M_re=M-M_cv;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> </div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment">/* initialise p for reconstruction */</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> my_N[0]=N; my_n[0]=X(next_power_of_2)(N);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> my_N[1]=N; my_n[1]=X(next_power_of_2)(N);</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> nfft_init_guru(&p, 2, my_N, M_re, my_n, 6,</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> PRE_PHI_HUT| PRE_FULL_PSI|</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> MALLOC_X| MALLOC_F_HAT| MALLOC_F|</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="comment">/* initialise ip, specific */</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> solver_init_advanced_complex(&ip,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&p), solver_flags);</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="comment">/* initialise cp for validation */</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> cp_y = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> nfft_init_guru(&cp, 2, my_N, M, my_n, 6,</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> PRE_PHI_HUT| PRE_FULL_PSI|</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> MALLOC_X| MALLOC_F|</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> cp.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> </div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="comment">/* set up data in cp and cp_y */</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> fp=fopen(<span class="stringliteral">"input_data.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">for</span>(j=0;j<cp.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> {</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> fscanf(fp,<span class="stringliteral">"%le %le %le"</span>,&cp.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],&cp.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1],&tmp_y);</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> cp_y[j]=tmp_y;</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> }</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> fclose(fp);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="comment">/* copy part of the data to p and ip */</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">for</span>(j=0;j<p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> {</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0]=cp.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0];</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]=cp.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1];</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> ip.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j]=tmp_y;</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> }</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> </div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="comment">/* precompute psi */</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="keywordflow">if</span>(p.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment">/* precompute psi */</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">if</span>(cp.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> nfft_precompute_one_psi(&cp);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment">/* initialise damping factors */</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="keywordflow">if</span>(ip.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">for</span>(k0=0;k0<p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];k0++)</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keywordflow">for</span>(k1=0;k1<p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];k1++)</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> ip.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[k0*p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]+k1]=</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <a class="code" href="group__examples__solver__glacier.html#gab4da467610b4e791d41de5b7501fe208" title="Generalised Sobolev weight.">my_weight</a>(((<span class="keywordtype">double</span>)(k0-p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2))/p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-band [...]
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <a class="code" href="group__examples__solver__glacier.html#gab4da467610b4e791d41de5b7501fe208" title="Generalised Sobolev weight.">my_weight</a>(((<span class="keywordtype">double</span>)(k1-p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]/2))/p.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-band [...]
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="comment">/* init some guess */</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">for</span>(k=0;k<p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]=0;</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> </div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="comment">/* inverse trafo */</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> solver_before_loop_complex(&ip);</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="comment">// fprintf(stderr,"iteration starts,\t");</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">for</span>(l=0;l<40;l++)</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&ip);</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="comment">//fprintf(stderr,"r=%1.2e, ",sqrt(ip.dot_r_iter)/M_re);</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterat [...]
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterat [...]
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <a class="code" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5" title="Updates .">nfft_upd_axpy_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,-1,ip.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a> [...]
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> r=sqrt(<a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,M_re)/<a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inne [...]
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> fprintf(stderr,<span class="stringliteral">"r=%1.2e, "</span>,r);</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> printf(<span class="stringliteral">"$%1.1e$ & "</span>,r);</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&cp);</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <a class="code" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5" title="Updates .">nfft_upd_axpy_complex</a>(&cp.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[M_re],-1,&cp_y[M_re],M_cv);</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> r=sqrt(<a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(&cp.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[M_re],M_cv)/<a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Compu [...]
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> fprintf(stderr,<span class="stringliteral">"r_1=%1.2e\t"</span>,r);</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> printf(<span class="stringliteral">"$%1.1e$ & "</span>,r);</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> nfft_finalize(&cp);</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&ip);</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> }</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> </div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00209"></a><span class="lineno"><a class="code" href="group__examples__solver__glacier.html#ga3c04138a5bfe5d72780bb7e82a18e627"> 209</a></span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> {</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="keywordtype">int</span> M_cv;</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> </div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="keywordflow">if</span>(argc<3)</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> {</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> fprintf(stderr,<span class="stringliteral">"Call this program from the Matlab script glacier.m!"</span>);</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> exit(-1);</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> }</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> </div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="keywordflow">if</span>(argc==3)</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <a class="code" href="group__examples__solver__glacier.html#gae32b7b49ac3d92c70301b2f96ab31e7a" title="Reconstruction routine.">glacier</a>(atoi(argv[1]),atoi(argv[2]));</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="keywordflow">for</span>(M_cv=atoi(argv[3]);M_cv<=atoi(argv[5]);M_cv+=atoi(argv[4]))</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> {</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> fprintf(stderr,<span class="stringliteral">"\nM_cv=%d,\t"</span>,M_cv);</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> printf(<span class="stringliteral">"$%d$ & "</span>,M_cv);</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> fprintf(stderr,<span class="stringliteral">"cgne+damp: "</span>);</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <a class="code" href="group__examples__solver__glacier.html#ga1503d05480f3e910ffae52b2e6aef34f" title="Reconstruction routine with cross validation.">glacier_cv</a>(atoi(argv[1]),atoi(argv[2]),M_cv,CGNE| PRECOMPUTE_DAMP);</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="comment">//fprintf(stderr,"cgne: ");</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="comment">//glacier_cv(atoi(argv[1]),atoi(argv[2]),M_cv,CGNE);</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> fprintf(stderr,<span class="stringliteral">"cgnr: "</span>);</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <a class="code" href="group__examples__solver__glacier.html#ga1503d05480f3e910ffae52b2e6aef34f" title="Reconstruction routine with cross validation.">glacier_cv</a>(atoi(argv[1]),atoi(argv[2]),M_cv,CGNR);</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> fprintf(stderr,<span class="stringliteral">"cgnr: "</span>);</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <a class="code" href="group__examples__solver__glacier.html#ga1503d05480f3e910ffae52b2e6aef34f" title="Reconstruction routine with cross validation.">glacier_cv</a>(atoi(argv[1])/4,atoi(argv[2]),M_cv,CGNR);</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> printf(<span class="stringliteral">"XXX \\\\\n"</span>);</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> }</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> </div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> fprintf(stderr,<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> </div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> }</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals.html b/doc/api/html/globals.html
deleted file mode 100644
index 27d47dc..0000000
--- a/doc/api/html/globals.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li class="current"><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
-<li>BasisPoly()
-: <a class="el" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0">fastsum.c</a>
-</li>
-<li>binom()
-: <a class="el" href="group__applications__fastsum.html#gae767db8af0cbe9244cfbd0580b0bb9f4">fastsum.c</a>
-</li>
-<li>BuildBox()
-: <a class="el" href="group__applications__fastsum.html#ga8237ee0c81a2518c4849e71317a479d0">fastsum.c</a>
-</li>
-<li>BuildTree()
-: <a class="el" href="group__applications__fastsum.html#ga61bae6836e2c586b9de245b664853174">fastsum.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x63.html b/doc/api/html/globals_0x63.html
deleted file mode 100644
index 95e04f1..0000000
--- a/doc/api/html/globals_0x63.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li class="current"><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
-<li>c2e()
-: <a class="el" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656">nfsft.c</a>
-</li>
-<li>c2e_transposed()
-: <a class="el" href="group__nfsft.html#ga0e033457136bc0ecb18bb57d3ee5aa37">nfsft.c</a>
-</li>
-<li>calc_SearchBox()
-: <a class="el" href="group__applications__fastsum.html#ga15df6167d1d2dd375cb81e81a969cf9d">fastsum.c</a>
-</li>
-<li>comparison_fft()
-: <a class="el" href="group__applications__polarFFT__linogramm.html#gac2a323224e3346e37714575d49c65432">linogram_fft_test.c</a>
-, <a class="el" href="group__applications__polarFFT__mpolar.html#ga522ff84df31c08a1f237ad0ec7ce4ac5">mpolar_fft_test.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x65.html b/doc/api/html/globals_0x65.html
deleted file mode 100644
index b2f5d4d..0000000
--- a/doc/api/html/globals_0x65.html
+++ /dev/null
@@ -1,86 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li class="current"><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
-<li>eval_sum_clenshaw_transposed()
-: <a class="el" href="fpt_8c.html#a509209ea5b6e210805a37cd80579c2c5">fpt.c</a>
-</li>
-<li>eval_wigner()
-: <a class="el" href="wigner_8h.html#a86975b8841ed9b6bb3e1484130658f19">wigner.h</a>
-</li>
-<li>eval_wigner_thresh()
-: <a class="el" href="wigner_8h.html#ae5933af03f4536a70ddfc744f16c9c55">wigner.h</a>
-</li>
-<li>EXACT_NEARFIELD
-: <a class="el" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d">fastsum.h</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x66.html b/doc/api/html/globals_0x66.html
deleted file mode 100644
index 4a00c6a..0000000
--- a/doc/api/html/globals_0x66.html
+++ /dev/null
@@ -1,116 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li class="current"><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
-<li>fak()
-: <a class="el" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09">fastsum.c</a>
-</li>
-<li>fastsum_exact()
-: <a class="el" href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd">fastsum.c</a>
-</li>
-<li>fastsum_finalize()
-: <a class="el" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769">fastsum.c</a>
-</li>
-<li>fastsum_init_guru()
-: <a class="el" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149">fastsum.c</a>
-</li>
-<li>fastsum_plan
-: <a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum.h</a>
-</li>
-<li>fastsum_precompute()
-: <a class="el" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff">fastsum.c</a>
-</li>
-<li>fastsum_trafo()
-: <a class="el" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8">fastsum.c</a>
-</li>
-<li>FIRST_L
-: <a class="el" href="fpt_8c.html#ac81f7eac1a01b06e91817857f47b9804">fpt.c</a>
-</li>
-<li>fpt_data
-: <a class="el" href="fpt_8c.html#a5141ba7ff5b14b5fbf7ee769943f1c10">fpt.c</a>
-</li>
-<li>fpt_set
-: <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">nfft3.h</a>
-</li>
-<li>fpt_set_s
-: <a class="el" href="fpt_8c.html#a06f7c65536489b0602c70a616e9f1fe8">fpt.c</a>
-</li>
-<li>fpt_step
-: <a class="el" href="fpt_8c.html#a4c7f62127651d301d4604b3a6519458d">fpt.c</a>
-</li>
-<li>fptf_set
-: <a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">nfft3.h</a>
-</li>
-<li>fptl_set
-: <a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">nfft3.h</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x69.html b/doc/api/html/globals_0x69.html
deleted file mode 100644
index 135e1eb..0000000
--- a/doc/api/html/globals_0x69.html
+++ /dev/null
@@ -1,191 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li class="current"><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
-<li>imri_inh_2d1d_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a39cce38619ea8d9ce84326173e2d091b">solver_adjoint.h</a>
-</li>
-<li>imri_inh_2d1d_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a7b403058cdba0d2918690b2d1d577912">solver_adjoint.h</a>
-</li>
-<li>imri_inh_2d1d_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#ae0f7ba8180888f8f70aff1b041f4ec57">solver_adjoint.h</a>
-</li>
-<li>imri_inh_2d1d_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#a61bb41310d86e96ad1912ce486930bea">solver_adjoint.h</a>
-</li>
-<li>imri_inh_2d1d_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a84b7c58708fe95ff8234638689a30302">solver_adjoint.h</a>
-</li>
-<li>imri_inh_3d_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a9a8864136de1ff61970eeed934350238">solver_adjoint.h</a>
-</li>
-<li>imri_inh_3d_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a48c6fe11c01d742025c7eb7bf7ac9002">solver_adjoint.h</a>
-</li>
-<li>imri_inh_3d_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#a6275d93dac2957a4acad3bda978c98cd">solver_adjoint.h</a>
-</li>
-<li>imri_inh_3d_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#afb6ade8e78c1dfdc7e513c6e8fa7ffb6">solver_adjoint.h</a>
-</li>
-<li>imri_inh_3d_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a7e65b366bd5003cef9c16e640591b972">solver_adjoint.h</a>
-</li>
-<li>infct_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a7bfc5594bbdc3d6c58fb10713a03bc40">solver_adjoint.h</a>
-</li>
-<li>infct_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a48c89f97b3f452ee3aedb245d064f24e">solver_adjoint.h</a>
-</li>
-<li>infct_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#a695c20cc98df4bbd370240bee9703e77">solver_adjoint.h</a>
-</li>
-<li>infct_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#a4fcee80a5fbbe901b8d51717dc07ae24">solver_adjoint.h</a>
-</li>
-<li>infct_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a36eef8da31026b71a865108b095768cc">solver_adjoint.h</a>
-</li>
-<li>infft_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a2a31ddf66394b88a4dd1545278e205b5">solver_adjoint.h</a>
-</li>
-<li>infft_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a826591281cbec37c2a032eaecbbacf9d">solver_adjoint.h</a>
-</li>
-<li>infft_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#ae93aa72dcb2528111f021c952482c244">solver_adjoint.h</a>
-</li>
-<li>infft_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#adf47a7ff42ca521526db42b4d3a68f98">solver_adjoint.h</a>
-</li>
-<li>infft_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a219ff15a153205b04eec76860cb4d6eb">solver_adjoint.h</a>
-</li>
-<li>infsft_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a26dbcae80a2db01144d523cb3d22a01d">solver_adjoint.h</a>
-</li>
-<li>infsft_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#adb479e2343fef9fbafdc5d8d65085aee">solver_adjoint.h</a>
-</li>
-<li>infsft_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#a040cb361de66313ccbad17f746cc748d">solver_adjoint.h</a>
-</li>
-<li>infsft_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#a0a162589cc358719488082d0b3e42e0e">solver_adjoint.h</a>
-</li>
-<li>infsft_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a03fc19c8d3c7b8a49c8751a2a88e0d09">solver_adjoint.h</a>
-</li>
-<li>infst_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a4a5720df6bfee236588f38e516e32c90">solver_adjoint.h</a>
-</li>
-<li>infst_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a086451cc556027d5e909eb7d1c1249b7">solver_adjoint.h</a>
-</li>
-<li>infst_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#a332fad4381e89b483482e53fa39604e3">solver_adjoint.h</a>
-</li>
-<li>infst_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#ac5ad72ccf1af482d623242389bc154b2">solver_adjoint.h</a>
-</li>
-<li>infst_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a57df76147b89e6e204a465fd437fbaae">solver_adjoint.h</a>
-</li>
-<li>innfft_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a3c7be955a46b3d056b5d38324f2d2068">solver_adjoint.h</a>
-</li>
-<li>innfft_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a1316a1ad32f611899e446cd98d3b0b0d">solver_adjoint.h</a>
-</li>
-<li>innfft_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#ab4dcbe373e99d9c010034c6eecdfea86">solver_adjoint.h</a>
-</li>
-<li>innfft_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#aac4fe9056cb5a96170ba6122e20d116a">solver_adjoint.h</a>
-</li>
-<li>innfft_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a9e80774fcedbd2a50e4146290de9ce3f">solver_adjoint.h</a>
-</li>
-<li>inverse_linogram_fft()
-: <a class="el" href="group__applications__polarFFT__linogramm.html#gaf44988058d3000a477c046c172c26265">linogram_fft_test.c</a>
-</li>
-<li>inverse_mpolar_fft()
-: <a class="el" href="group__applications__polarFFT__mpolar.html#ga5d0560e898b722ee5fe09acc485bbec8">mpolar_fft_test.c</a>
-</li>
-<li>inverse_polar_fft()
-: <a class="el" href="group__applications__polarFFT__polar.html#gad996d429207cf198e9027618e081ada0">polar_fft_test.c</a>
-</li>
-<li>Inverse_Radon_trafo()
-: <a class="el" href="inverse__radon_8c.html#a298e52a05aeac043f9b35e8ae60a13e4">inverse_radon.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x6b.html b/doc/api/html/globals_0x6b.html
deleted file mode 100644
index 57b4c5c..0000000
--- a/doc/api/html/globals_0x6b.html
+++ /dev/null
@@ -1,91 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li class="current"><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
-<li>K_END_TILDE
-: <a class="el" href="fpt_8c.html#a769119c8ae45f2a30a62ba802d83139f">fpt.c</a>
-</li>
-<li>K_START_TILDE
-: <a class="el" href="fpt_8c.html#a58f899926cc6e95ea54dd68d131979b8">fpt.c</a>
-</li>
-<li>KERNEL
-: <a class="el" href="radon_8c.html#a0091bbc07c9570a2ab0dac372c2104f1">radon.c</a>
-, <a class="el" href="inverse__radon_8c.html#a0091bbc07c9570a2ab0dac372c2104f1">inverse_radon.c</a>
-</li>
-<li>kubintkern()
-: <a class="el" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79">fastsum.h</a>
-, <a class="el" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79">fastsum.c</a>
-</li>
-<li>kubintkern1()
-: <a class="el" href="group__applications__fastsum.html#gad527763b180de164610e55a704c69116">fastsum.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x6c.html b/doc/api/html/globals_0x6c.html
deleted file mode 100644
index da573bd..0000000
--- a/doc/api/html/globals_0x6c.html
+++ /dev/null
@@ -1,91 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li class="current"><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
-<li>LAST_L
-: <a class="el" href="fpt_8c.html#ac9f7e1529d635e3357d1e081ddf7e349">fpt.c</a>
-</li>
-<li>linintkern()
-: <a class="el" href="group__applications__fastsum.html#gae23df7b1c09c2955895545e164bc9e99">fastsum.c</a>
-</li>
-<li>linogram_dft()
-: <a class="el" href="group__applications__polarFFT__linogramm.html#ga708f5c41add2af92a97339dee1c068dc">linogram_fft_test.c</a>
-</li>
-<li>linogram_fft()
-: <a class="el" href="group__applications__polarFFT__linogramm.html#gaea5025fe751ace25f818ecb3cfc16444">linogram_fft_test.c</a>
-</li>
-<li>linogram_grid()
-: <a class="el" href="radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310">radon.c</a>
-, <a class="el" href="inverse__radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310">inverse_radon.c</a>
-, <a class="el" href="group__applications__polarFFT__linogramm.html#ga9a5ff165ab1e23af77ab6f6108bb6310">linogram_fft_test.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x6d.html b/doc/api/html/globals_0x6d.html
deleted file mode 100644
index de65e6f..0000000
--- a/doc/api/html/globals_0x6d.html
+++ /dev/null
@@ -1,99 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li class="current"><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
-<li>MACRO_MV_PLAN
-: <a class="el" href="nfft3_8h.html#a0d1eb31c2f64e41fa0399b1eb7b5ddd4">nfft3.h</a>
-</li>
-<li>MACRO_SOLVER_ADJOINT_PLAN
-: <a class="el" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637">solver_adjoint.h</a>
-</li>
-<li>main()
-: <a class="el" href="group__applications__polarFFT__mpolar.html#ga3c04138a5bfe5d72780bb7e82a18e627">mpolar_fft_test.c</a>
-, <a class="el" href="group__applications__polarFFT__polar.html#ga3c04138a5bfe5d72780bb7e82a18e627">polar_fft_test.c</a>
-, <a class="el" href="group__applications__polarFFT__linogramm.html#ga3c04138a5bfe5d72780bb7e82a18e627">linogram_fft_test.c</a>
-, <a class="el" href="radon_8c.html#a3c04138a5bfe5d72780bb7e82a18e627">radon.c</a>
-, <a class="el" href="inverse__radon_8c.html#a3c04138a5bfe5d72780bb7e82a18e627">inverse_radon.c</a>
-</li>
-<li>max_i()
-: <a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">fastsum.c</a>
-</li>
-<li>mpolar_dft()
-: <a class="el" href="group__applications__polarFFT__mpolar.html#gaee9902054200ea50d90b5d290bff8c71">mpolar_fft_test.c</a>
-</li>
-<li>mpolar_fft()
-: <a class="el" href="group__applications__polarFFT__mpolar.html#ga55b2f979a5c69176a73f59eb0312b53d">mpolar_fft_test.c</a>
-</li>
-<li>mpolar_grid()
-: <a class="el" href="group__applications__polarFFT__mpolar.html#ga08d0441aceedbcb98b985ee5aa121952">mpolar_fft_test.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x6e.html b/doc/api/html/globals_0x6e.html
deleted file mode 100644
index d1d6791..0000000
--- a/doc/api/html/globals_0x6e.html
+++ /dev/null
@@ -1,272 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li class="current"><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
-<li>NF_KUB
-: <a class="el" href="group__applications__fastsum.html#gafa2dd15778c93b2eaa42de608fb4d1a8">fastsum.h</a>
-</li>
-<li>nfft_bspline()
-: <a class="el" href="group__nfftutil.html#ga2fd48f1f700153c050d27691c4b2a6cc">nfft3util.h</a>
-</li>
-<li>nfft_bspline_old()
-: <a class="el" href="group__nfftutil.html#ga89bd624abdfb13abc10c144a8ff949cd">nfft3util.h</a>
-</li>
-<li>nfft_cp_a_complex()
-: <a class="el" href="group__nfftutil.html#ga33409df91e7ad5e1dca3beaa63e0ef25">nfft3util.h</a>
-</li>
-<li>nfft_cp_a_double()
-: <a class="el" href="group__nfftutil.html#ga41f20c605269e701b3305e49010e0759">nfft3util.h</a>
-</li>
-<li>nfft_cp_complex()
-: <a class="el" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133">nfft3util.h</a>
-</li>
-<li>nfft_cp_double()
-: <a class="el" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2">nfft3util.h</a>
-</li>
-<li>nfft_cp_w_complex()
-: <a class="el" href="group__nfftutil.html#ga630054cb816785d766959a867965f619">nfft3util.h</a>
-</li>
-<li>nfft_cp_w_double()
-: <a class="el" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099">nfft3util.h</a>
-</li>
-<li>nfft_dot_complex()
-: <a class="el" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004">nfft3util.h</a>
-</li>
-<li>nfft_dot_double()
-: <a class="el" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5">nfft3util.h</a>
-</li>
-<li>nfft_dot_w2_complex()
-: <a class="el" href="group__nfftutil.html#ga9b59288597d159357fe86395e635a075">nfft3util.h</a>
-</li>
-<li>nfft_dot_w_complex()
-: <a class="el" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1">nfft3util.h</a>
-</li>
-<li>nfft_dot_w_double()
-: <a class="el" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39">nfft3util.h</a>
-</li>
-<li>nfft_dot_w_w2_complex()
-: <a class="el" href="group__nfftutil.html#ga68268fc9bfad5a7e7383098ac1715674">nfft3util.h</a>
-</li>
-<li>nfft_fftshift_complex()
-: <a class="el" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770">nfft3util.h</a>
-</li>
-<li>nfft_free()
-: <a class="el" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft3.h</a>
-</li>
-<li>nfft_free_hook
-: <a class="el" href="nfft3_8h.html#a5b4d02593a82ded7c1d3c3c868e72347">nfft3.h</a>
-</li>
-<li>nfft_free_type_function
-: <a class="el" href="nfft3_8h.html#acdec9723f6ea0ea162d5f3fc6f1f1906">nfft3.h</a>
-</li>
-<li>nfft_malloc()
-: <a class="el" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft3.h</a>
-</li>
-<li>nfft_malloc_hook
-: <a class="el" href="nfft3_8h.html#aa578dec914d95bda5a2fad3fbd90c76f">nfft3.h</a>
-</li>
-<li>nfft_malloc_type_function
-: <a class="el" href="nfft3_8h.html#ae2db105c02d4b63d1962dc94d4e7a4c2">nfft3.h</a>
-</li>
-<li>NFFT_MAX
-: <a class="el" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3">nfft3util.h</a>
-</li>
-<li>NFFT_MIN
-: <a class="el" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308">nfft3util.h</a>
-</li>
-<li>nfft_modified_fejer()
-: <a class="el" href="group__nfftutil.html#gac9b810183abafb668f8aa777c7985256">nfft3util.h</a>
-</li>
-<li>nfft_modified_jackson2()
-: <a class="el" href="group__nfftutil.html#gab45a6cd3528d3716522a0cf184375aaf">nfft3util.h</a>
-</li>
-<li>nfft_modified_jackson4()
-: <a class="el" href="group__nfftutil.html#ga126ec2282393435f0d795ac79db8654b">nfft3util.h</a>
-</li>
-<li>nfft_modified_multiquadric()
-: <a class="el" href="group__nfftutil.html#gac6201bc2aa806bd25cb14c5f96d644e9">nfft3util.h</a>
-</li>
-<li>nfft_modified_sobolev()
-: <a class="el" href="group__nfftutil.html#gaa84cb34c6d368599fb2f997eadb184a7">nfft3util.h</a>
-</li>
-<li>nfft_plain_loop()
-: <a class="el" href="group__nfftutil.html#gad979f626cc8397e26d1bd78a7ba342cd">nfft3util.h</a>
-</li>
-<li>nfft_precompute_lin_psi()
-: <a class="el" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc">nfft3.h</a>
-</li>
-<li>nfft_prod_int()
-: <a class="el" href="group__nfftutil.html#ga2752ca372ee2622f173a706e86e2b116">nfft3util.h</a>
-</li>
-<li>nfft_prod_real()
-: <a class="el" href="group__nfftutil.html#gad7bad7074a695341742f57526f8695eb">nfft3util.h</a>
-</li>
-<li>nfft_smbi()
-: <a class="el" href="group__nfftutil.html#ga2decee6fe50d50797a82737ba82cf97a">nfft3util.h</a>
-</li>
-<li>nfft_sort_node_indices_radix_lsdf()
-: <a class="el" href="group__nfftutil.html#gad93b94e3c7e9149f89819504c2b3c738">nfft3util.h</a>
-</li>
-<li>nfft_sort_node_indices_radix_msdf()
-: <a class="el" href="group__nfftutil.html#ga60a5123a8026a06807e14502d7cedcd5">nfft3util.h</a>
-</li>
-<li>NFFT_SWAP_complex
-: <a class="el" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5">nfft3util.h</a>
-</li>
-<li>NFFT_SWAP_double
-: <a class="el" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e">nfft3util.h</a>
-</li>
-<li>nfft_trafo()
-: <a class="el" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421">nfft3.h</a>
-</li>
-<li>nfft_upd_axpby_complex()
-: <a class="el" href="group__nfftutil.html#ga903a4b3ed369dcfe67b9379a238ed23d">nfft3util.h</a>
-</li>
-<li>nfft_upd_axpby_double()
-: <a class="el" href="group__nfftutil.html#ga75e403e92875b0b919a555f8cede0e8d">nfft3util.h</a>
-</li>
-<li>nfft_upd_axpwy_complex()
-: <a class="el" href="group__nfftutil.html#ga693919963b51cf396311b15660e04cd8">nfft3util.h</a>
-</li>
-<li>nfft_upd_axpwy_double()
-: <a class="el" href="group__nfftutil.html#gaf6777c4b8aa9f575f1600c51e8ae343a">nfft3util.h</a>
-</li>
-<li>nfft_upd_axpy_complex()
-: <a class="el" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5">nfft3util.h</a>
-</li>
-<li>nfft_upd_axpy_double()
-: <a class="el" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3">nfft3util.h</a>
-</li>
-<li>nfft_upd_xpawy_complex()
-: <a class="el" href="group__nfftutil.html#gad8e10773e59818c88a8ea2cb560b936e">nfft3util.h</a>
-</li>
-<li>nfft_upd_xpawy_double()
-: <a class="el" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0">nfft3util.h</a>
-</li>
-<li>nfft_upd_xpay_complex()
-: <a class="el" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4">nfft3util.h</a>
-</li>
-<li>nfft_upd_xpay_double()
-: <a class="el" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064">nfft3util.h</a>
-</li>
-<li>nfft_voronoi_weights_1d()
-: <a class="el" href="group__nfftutil.html#ga797e81f55e6379efabf4d98522d1ee9d">nfft3util.h</a>
-</li>
-<li>nfft_voronoi_weights_S2()
-: <a class="el" href="group__nfftutil.html#ga26a4ed487a23e99e01f111113be9f994">nfft3util.h</a>
-</li>
-<li>nfft_vpr_complex()
-: <a class="el" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0">nfft3util.h</a>
-</li>
-<li>nfft_vpr_double()
-: <a class="el" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91">nfft3util.h</a>
-</li>
-<li>nfft_vpr_int()
-: <a class="el" href="group__nfftutil.html#gaa8e0581d802c4b7bb153682a4c156409">nfft3util.h</a>
-</li>
-<li>nfft_vrand_shifted_unit_double()
-: <a class="el" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34">nfft3util.h</a>
-</li>
-<li>nfft_vrand_unit_complex()
-: <a class="el" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685">nfft3util.h</a>
-</li>
-<li>NFSFT_BREAK_EVEN
-: <a class="el" href="group__nfsft.html#ga54b840898df97bcd14af4cb004650ed3">nfsft.c</a>
-</li>
-<li>NFSFT_DEFAULT_NFFT_CUTOFF
-: <a class="el" href="group__nfsft.html#ga206c4faaf800b49dcb14e26148fa9ac6">nfsft.c</a>
-</li>
-<li>NFSFT_DEFAULT_THRESHOLD
-: <a class="el" href="group__nfsft.html#gab7d25b80464387893b3c773f92e5c4f3">nfsft.c</a>
-</li>
-<li>nfst_full_psi()
-: <a class="el" href="nfft3_8h.html#a02d072e80ccaca6482b396540eaef585">nfft3.h</a>
-</li>
-<li>nfst_prod_minus_a_int()
-: <a class="el" href="group__nfftutil.html#ga8adc6bf59ec10f16243030ee00ad4a40">nfft3util.h</a>
-</li>
-<li>nfst_trafo()
-: <a class="el" href="nfft3_8h.html#ac80b86521428ec2191919cc96c82f416">nfft3.h</a>
-</li>
-<li>nnfft_precompute_full_psi()
-: <a class="el" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9">nfft3.h</a>
-</li>
-<li>nnfft_precompute_lin_psi()
-: <a class="el" href="nfft3_8h.html#a65983eef73b9f5740214bf720f62fcd6">nfft3.h</a>
-</li>
-<li>nnfft_precompute_phi_hut()
-: <a class="el" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580">nfft3.h</a>
-</li>
-<li>nnfft_trafo()
-: <a class="el" href="nfft3_8h.html#a994c1748ebe1371c53dd2cb437054d4f">nfft3.h</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x70.html b/doc/api/html/globals_0x70.html
deleted file mode 100644
index 0241fbb..0000000
--- a/doc/api/html/globals_0x70.html
+++ /dev/null
@@ -1,88 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li class="current"><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
-<li>PI
-: <a class="el" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca">nfft3util.h</a>
-</li>
-<li>polar_dft()
-: <a class="el" href="group__applications__polarFFT__polar.html#gaf6ec0d6bb5bfea4829e551c9dc9a656e">polar_fft_test.c</a>
-</li>
-<li>polar_fft()
-: <a class="el" href="group__applications__polarFFT__polar.html#ga72ebda23ef48b6509833eea9a24fa839">polar_fft_test.c</a>
-</li>
-<li>polar_grid()
-: <a class="el" href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756f140c7fa831cdae">polar_fft_test.c</a>
-, <a class="el" href="inverse__radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae">inverse_radon.c</a>
-, <a class="el" href="radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae">radon.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x71.html b/doc/api/html/globals_0x71.html
deleted file mode 100644
index 02e10af..0000000
--- a/doc/api/html/globals_0x71.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li class="current"><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_q"></a>- q -</h3><ul>
-<li>quicksort()
-: <a class="el" href="group__applications__fastsum.html#ga7d3d3786f2e799dc1fa1704281f4a3fe">fastsum.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x72.html b/doc/api/html/globals_0x72.html
deleted file mode 100644
index c2f9b02..0000000
--- a/doc/api/html/globals_0x72.html
+++ /dev/null
@@ -1,90 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li class="current"><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
-<li>Radon_trafo()
-: <a class="el" href="radon_8c.html#a01ba457f6edb3193453204cc702ac5ca">radon.c</a>
-</li>
-<li>regkern()
-: <a class="el" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c">fastsum.c</a>
-, <a class="el" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c">fastsum.h</a>
-</li>
-<li>regkern1()
-: <a class="el" href="group__applications__fastsum.html#gaf022589be0533270b476edc9b78928f1">fastsum.c</a>
-</li>
-<li>regkern2()
-: <a class="el" href="group__applications__fastsum.html#ga461376a86ecb935b74e7bfa4c86275d9">fastsum.c</a>
-</li>
-<li>regkern3()
-: <a class="el" href="group__applications__fastsum.html#ga2077aec7b505fd6bf082c28cc5d59468">fastsum.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x73.html b/doc/api/html/globals_0x73.html
deleted file mode 100644
index f639872..0000000
--- a/doc/api/html/globals_0x73.html
+++ /dev/null
@@ -1,158 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li class="current"><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
-<li>SearchBox()
-: <a class="el" href="group__applications__fastsum.html#gae5d00a6d73390cc05d73aeca17028fc5">fastsum.c</a>
-</li>
-<li>SearchTree()
-: <a class="el" href="group__applications__fastsum.html#gab5a71f2cd5581bfa121b77aa6c981104">fastsum.c</a>
-</li>
-<li>SO3_alpha()
-: <a class="el" href="wigner_8h.html#ab67e240f23c39daa7283fee9025a8f03">wigner.h</a>
-</li>
-<li>SO3_alpha_all()
-: <a class="el" href="wigner_8h.html#aef802fd511b566392a8b2cbb9fcd6678">wigner.h</a>
-</li>
-<li>SO3_alpha_matrix()
-: <a class="el" href="wigner_8h.html#a9ab913c454dd078bed0db8b4aa9365e1">wigner.h</a>
-</li>
-<li>SO3_alpha_row()
-: <a class="el" href="wigner_8h.html#ae9c3c9a11f1da35bb0cfbed1fb828ad2">wigner.h</a>
-</li>
-<li>SO3_beta()
-: <a class="el" href="wigner_8h.html#a6722aa3212be1361b531751a850056f6">wigner.h</a>
-</li>
-<li>SO3_beta_all()
-: <a class="el" href="wigner_8h.html#aa981c92edca3fac2f04a7d3524b8425a">wigner.h</a>
-</li>
-<li>SO3_beta_matrix()
-: <a class="el" href="wigner_8h.html#a742f6babb80797e003835bc66cfe9080">wigner.h</a>
-</li>
-<li>SO3_beta_row()
-: <a class="el" href="wigner_8h.html#a1b82e072be0c3e0d45426ed56e4e6a9d">wigner.h</a>
-</li>
-<li>SO3_gamma()
-: <a class="el" href="wigner_8h.html#a6b13b24d727910800b9f1c0da29f5f73">wigner.h</a>
-</li>
-<li>SO3_gamma_all()
-: <a class="el" href="wigner_8h.html#a4ff3aa0c3afb226613100df410cbef7f">wigner.h</a>
-</li>
-<li>SO3_gamma_matrix()
-: <a class="el" href="wigner_8h.html#aa9850cfec93784e536a728f13db4c5cb">wigner.h</a>
-</li>
-<li>SO3_gamma_row()
-: <a class="el" href="wigner_8h.html#a46516d6ec71efab3c80eecd459ad20ee">wigner.h</a>
-</li>
-<li>solver_finalize_complex()
-: <a class="el" href="solver_8c.html#a2f44c78734390e47d72578f4c9cbe709">solver.c</a>
-, <a class="el" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709">nfft3.h</a>
-</li>
-<li>solver_finalize_double()
-: <a class="el" href="solver_8c.html#a6d04f270b539a9f48b3521ba973829bf">solver.c</a>
-</li>
-<li>solver_init_advanced_double()
-: <a class="el" href="nfft3_8h.html#a1a4544ab96d14c812e3b330c439c3d80">nfft3.h</a>
-, <a class="el" href="solver_8c.html#a1a4544ab96d14c812e3b330c439c3d80">solver.c</a>
-</li>
-<li>solver_loop_one_step_cgne_complex()
-: <a class="el" href="solver_8c.html#a59278b7119c43bf23b9aaca6eae936e5">solver.c</a>
-</li>
-<li>solver_loop_one_step_cgne_double()
-: <a class="el" href="solver_8c.html#a206a5fe70bfb6853a2a9a9551e12b2db">solver.c</a>
-</li>
-<li>solver_loop_one_step_cgnr_complex()
-: <a class="el" href="solver_8c.html#a376190a64969829c029532fd0957e184">solver.c</a>
-</li>
-<li>solver_loop_one_step_cgnr_double()
-: <a class="el" href="solver_8c.html#ae134ca120f6f4fcc96626c6a1acedfb6">solver.c</a>
-</li>
-<li>solver_loop_one_step_complex()
-: <a class="el" href="solver_8c.html#a3b80b04ee3429b04c310992fb0a12420">solver.c</a>
-, <a class="el" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420">nfft3.h</a>
-</li>
-<li>solver_loop_one_step_double()
-: <a class="el" href="solver_8c.html#a89adea45056c1b5c8d90cfd87325be4e">solver.c</a>
-</li>
-<li>solver_loop_one_step_landweber_complex()
-: <a class="el" href="solver_8c.html#a7e818bcb6dd61e2a7aa5748c8ee9d339">solver.c</a>
-</li>
-<li>solver_loop_one_step_landweber_double()
-: <a class="el" href="solver_8c.html#a30d6a3373083167e38181c964d6a4288">solver.c</a>
-</li>
-<li>solver_loop_one_step_steepest_descent_complex()
-: <a class="el" href="solver_8c.html#ab14e3227776d9378c195664f3ace8110">solver.c</a>
-</li>
-<li>solver_loop_one_step_steepest_descent_double()
-: <a class="el" href="solver_8c.html#a6fef0b0a380ed017554c41b78fccc477">solver.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x74.html b/doc/api/html/globals_0x74.html
deleted file mode 100644
index fe07a6e..0000000
--- a/doc/api/html/globals_0x74.html
+++ /dev/null
@@ -1,89 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li class="current"><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
-<li>taylor_finalize()
-: <a class="el" href="taylor__nfft_8c.html#a10f336e1a24851643775a0da2f338c65">taylor_nfft.c</a>
-</li>
-<li>taylor_init()
-: <a class="el" href="taylor__nfft_8c.html#a8aaec175a64f4ca7e15fcdcd355f56a2">taylor_nfft.c</a>
-</li>
-<li>taylor_precompute()
-: <a class="el" href="taylor__nfft_8c.html#a13b127b1ecbbd640bd30123c635940a5">taylor_nfft.c</a>
-</li>
-<li>taylor_time_accuracy()
-: <a class="el" href="taylor__nfft_8c.html#a7ef2d41455ffa60a2f001c4981d4cf97">taylor_nfft.c</a>
-</li>
-<li>taylor_trafo()
-: <a class="el" href="taylor__nfft_8c.html#ada016505d50bb2473ce6061a342d7e20">taylor_nfft.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_0x77.html b/doc/api/html/globals_0x77.html
deleted file mode 100644
index ef0dae5..0000000
--- a/doc/api/html/globals_0x77.html
+++ /dev/null
@@ -1,80 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li class="current"><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="globals.html#index_b"><span>b</span></a></li>
- <li><a href="globals_0x63.html#index_c"><span>c</span></a></li>
- <li><a href="globals_0x65.html#index_e"><span>e</span></a></li>
- <li><a href="globals_0x66.html#index_f"><span>f</span></a></li>
- <li><a href="globals_0x69.html#index_i"><span>i</span></a></li>
- <li><a href="globals_0x6b.html#index_k"><span>k</span></a></li>
- <li><a href="globals_0x6c.html#index_l"><span>l</span></a></li>
- <li><a href="globals_0x6d.html#index_m"><span>m</span></a></li>
- <li><a href="globals_0x6e.html#index_n"><span>n</span></a></li>
- <li><a href="globals_0x70.html#index_p"><span>p</span></a></li>
- <li><a href="globals_0x71.html#index_q"><span>q</span></a></li>
- <li><a href="globals_0x72.html#index_r"><span>r</span></a></li>
- <li><a href="globals_0x73.html#index_s"><span>s</span></a></li>
- <li><a href="globals_0x74.html#index_t"><span>t</span></a></li>
- <li class="current"><a href="globals_0x77.html#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-<div class="textblock">Here is a list of all documented functions, variables, defines, enums, and typedefs with links to the documentation:</div>
-
-<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
-<li>wigner_start()
-: <a class="el" href="wigner_8h.html#a6c43c1f82cf3efa9cb1343ec9dcd07ed">wigner.h</a>
-</li>
-<li>wisdom
-: <a class="el" href="group__nfsft.html#ga0af81d81e1b436949ddc46dbd27346e5">nfsft.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_defs.html b/doc/api/html/globals_defs.html
deleted file mode 100644
index 38cbda4..0000000
--- a/doc/api/html/globals_defs.html
+++ /dev/null
@@ -1,105 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li class="current"><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
- <ul>
-<li>EXACT_NEARFIELD
-: <a class="el" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d">fastsum.h</a>
-</li>
-<li>FIRST_L
-: <a class="el" href="fpt_8c.html#ac81f7eac1a01b06e91817857f47b9804">fpt.c</a>
-</li>
-<li>K_END_TILDE
-: <a class="el" href="fpt_8c.html#a769119c8ae45f2a30a62ba802d83139f">fpt.c</a>
-</li>
-<li>K_START_TILDE
-: <a class="el" href="fpt_8c.html#a58f899926cc6e95ea54dd68d131979b8">fpt.c</a>
-</li>
-<li>KERNEL
-: <a class="el" href="inverse__radon_8c.html#a0091bbc07c9570a2ab0dac372c2104f1">inverse_radon.c</a>
-, <a class="el" href="radon_8c.html#a0091bbc07c9570a2ab0dac372c2104f1">radon.c</a>
-</li>
-<li>LAST_L
-: <a class="el" href="fpt_8c.html#ac9f7e1529d635e3357d1e081ddf7e349">fpt.c</a>
-</li>
-<li>MACRO_MV_PLAN
-: <a class="el" href="nfft3_8h.html#a0d1eb31c2f64e41fa0399b1eb7b5ddd4">nfft3.h</a>
-</li>
-<li>MACRO_SOLVER_ADJOINT_PLAN
-: <a class="el" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637">solver_adjoint.h</a>
-</li>
-<li>NF_KUB
-: <a class="el" href="group__applications__fastsum.html#gafa2dd15778c93b2eaa42de608fb4d1a8">fastsum.h</a>
-</li>
-<li>NFFT_MAX
-: <a class="el" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3">nfft3util.h</a>
-</li>
-<li>NFFT_MIN
-: <a class="el" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308">nfft3util.h</a>
-</li>
-<li>NFFT_SWAP_complex
-: <a class="el" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5">nfft3util.h</a>
-</li>
-<li>NFFT_SWAP_double
-: <a class="el" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e">nfft3util.h</a>
-</li>
-<li>NFSFT_BREAK_EVEN
-: <a class="el" href="group__nfsft.html#ga54b840898df97bcd14af4cb004650ed3">nfsft.c</a>
-</li>
-<li>NFSFT_DEFAULT_NFFT_CUTOFF
-: <a class="el" href="group__nfsft.html#ga206c4faaf800b49dcb14e26148fa9ac6">nfsft.c</a>
-</li>
-<li>NFSFT_DEFAULT_THRESHOLD
-: <a class="el" href="group__nfsft.html#gab7d25b80464387893b3c773f92e5c4f3">nfsft.c</a>
-</li>
-<li>PI
-: <a class="el" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca">nfft3util.h</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_func.html b/doc/api/html/globals_func.html
deleted file mode 100644
index b3a6c14..0000000
--- a/doc/api/html/globals_func.html
+++ /dev/null
@@ -1,633 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="globals.html"><span>All</span></a></li>
- <li class="current"><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
- <div id="navrow4" class="tabs3">
- <ul class="tablist">
- <li><a href="#index_b"><span>b</span></a></li>
- <li><a href="#index_c"><span>c</span></a></li>
- <li><a href="#index_e"><span>e</span></a></li>
- <li><a href="#index_f"><span>f</span></a></li>
- <li><a href="#index_i"><span>i</span></a></li>
- <li><a href="#index_k"><span>k</span></a></li>
- <li><a href="#index_l"><span>l</span></a></li>
- <li><a href="#index_m"><span>m</span></a></li>
- <li><a href="#index_n"><span>n</span></a></li>
- <li><a href="#index_p"><span>p</span></a></li>
- <li><a href="#index_q"><span>q</span></a></li>
- <li><a href="#index_r"><span>r</span></a></li>
- <li><a href="#index_s"><span>s</span></a></li>
- <li><a href="#index_t"><span>t</span></a></li>
- <li><a href="#index_w"><span>w</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
-
-
-<h3><a class="anchor" id="index_b"></a>- b -</h3><ul>
-<li>BasisPoly()
-: <a class="el" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0">fastsum.c</a>
-</li>
-<li>binom()
-: <a class="el" href="group__applications__fastsum.html#gae767db8af0cbe9244cfbd0580b0bb9f4">fastsum.c</a>
-</li>
-<li>BuildBox()
-: <a class="el" href="group__applications__fastsum.html#ga8237ee0c81a2518c4849e71317a479d0">fastsum.c</a>
-</li>
-<li>BuildTree()
-: <a class="el" href="group__applications__fastsum.html#ga61bae6836e2c586b9de245b664853174">fastsum.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_c"></a>- c -</h3><ul>
-<li>c2e()
-: <a class="el" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656">nfsft.c</a>
-</li>
-<li>c2e_transposed()
-: <a class="el" href="group__nfsft.html#ga0e033457136bc0ecb18bb57d3ee5aa37">nfsft.c</a>
-</li>
-<li>calc_SearchBox()
-: <a class="el" href="group__applications__fastsum.html#ga15df6167d1d2dd375cb81e81a969cf9d">fastsum.c</a>
-</li>
-<li>comparison_fft()
-: <a class="el" href="group__applications__polarFFT__linogramm.html#gac2a323224e3346e37714575d49c65432">linogram_fft_test.c</a>
-, <a class="el" href="group__applications__polarFFT__mpolar.html#ga522ff84df31c08a1f237ad0ec7ce4ac5">mpolar_fft_test.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_e"></a>- e -</h3><ul>
-<li>eval_sum_clenshaw_transposed()
-: <a class="el" href="fpt_8c.html#a509209ea5b6e210805a37cd80579c2c5">fpt.c</a>
-</li>
-<li>eval_wigner()
-: <a class="el" href="wigner_8h.html#a86975b8841ed9b6bb3e1484130658f19">wigner.h</a>
-</li>
-<li>eval_wigner_thresh()
-: <a class="el" href="wigner_8h.html#ae5933af03f4536a70ddfc744f16c9c55">wigner.h</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_f"></a>- f -</h3><ul>
-<li>fak()
-: <a class="el" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09">fastsum.c</a>
-</li>
-<li>fastsum_exact()
-: <a class="el" href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd">fastsum.c</a>
-</li>
-<li>fastsum_finalize()
-: <a class="el" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769">fastsum.c</a>
-</li>
-<li>fastsum_init_guru()
-: <a class="el" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149">fastsum.c</a>
-</li>
-<li>fastsum_precompute()
-: <a class="el" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff">fastsum.c</a>
-</li>
-<li>fastsum_trafo()
-: <a class="el" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8">fastsum.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_i"></a>- i -</h3><ul>
-<li>imri_inh_2d1d_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a39cce38619ea8d9ce84326173e2d091b">solver_adjoint.h</a>
-</li>
-<li>imri_inh_2d1d_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a7b403058cdba0d2918690b2d1d577912">solver_adjoint.h</a>
-</li>
-<li>imri_inh_2d1d_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#ae0f7ba8180888f8f70aff1b041f4ec57">solver_adjoint.h</a>
-</li>
-<li>imri_inh_2d1d_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#a61bb41310d86e96ad1912ce486930bea">solver_adjoint.h</a>
-</li>
-<li>imri_inh_2d1d_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a84b7c58708fe95ff8234638689a30302">solver_adjoint.h</a>
-</li>
-<li>imri_inh_3d_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a9a8864136de1ff61970eeed934350238">solver_adjoint.h</a>
-</li>
-<li>imri_inh_3d_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a48c6fe11c01d742025c7eb7bf7ac9002">solver_adjoint.h</a>
-</li>
-<li>imri_inh_3d_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#a6275d93dac2957a4acad3bda978c98cd">solver_adjoint.h</a>
-</li>
-<li>imri_inh_3d_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#afb6ade8e78c1dfdc7e513c6e8fa7ffb6">solver_adjoint.h</a>
-</li>
-<li>imri_inh_3d_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a7e65b366bd5003cef9c16e640591b972">solver_adjoint.h</a>
-</li>
-<li>infct_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a7bfc5594bbdc3d6c58fb10713a03bc40">solver_adjoint.h</a>
-</li>
-<li>infct_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a48c89f97b3f452ee3aedb245d064f24e">solver_adjoint.h</a>
-</li>
-<li>infct_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#a695c20cc98df4bbd370240bee9703e77">solver_adjoint.h</a>
-</li>
-<li>infct_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#a4fcee80a5fbbe901b8d51717dc07ae24">solver_adjoint.h</a>
-</li>
-<li>infct_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a36eef8da31026b71a865108b095768cc">solver_adjoint.h</a>
-</li>
-<li>infft_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a2a31ddf66394b88a4dd1545278e205b5">solver_adjoint.h</a>
-</li>
-<li>infft_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a826591281cbec37c2a032eaecbbacf9d">solver_adjoint.h</a>
-</li>
-<li>infft_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#ae93aa72dcb2528111f021c952482c244">solver_adjoint.h</a>
-</li>
-<li>infft_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#adf47a7ff42ca521526db42b4d3a68f98">solver_adjoint.h</a>
-</li>
-<li>infft_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a219ff15a153205b04eec76860cb4d6eb">solver_adjoint.h</a>
-</li>
-<li>infsft_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a26dbcae80a2db01144d523cb3d22a01d">solver_adjoint.h</a>
-</li>
-<li>infsft_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#adb479e2343fef9fbafdc5d8d65085aee">solver_adjoint.h</a>
-</li>
-<li>infsft_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#a040cb361de66313ccbad17f746cc748d">solver_adjoint.h</a>
-</li>
-<li>infsft_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#a0a162589cc358719488082d0b3e42e0e">solver_adjoint.h</a>
-</li>
-<li>infsft_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a03fc19c8d3c7b8a49c8751a2a88e0d09">solver_adjoint.h</a>
-</li>
-<li>infst_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a4a5720df6bfee236588f38e516e32c90">solver_adjoint.h</a>
-</li>
-<li>infst_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a086451cc556027d5e909eb7d1c1249b7">solver_adjoint.h</a>
-</li>
-<li>infst_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#a332fad4381e89b483482e53fa39604e3">solver_adjoint.h</a>
-</li>
-<li>infst_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#ac5ad72ccf1af482d623242389bc154b2">solver_adjoint.h</a>
-</li>
-<li>infst_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a57df76147b89e6e204a465fd437fbaae">solver_adjoint.h</a>
-</li>
-<li>innfft_adjoint_before_loop()
-: <a class="el" href="solver__adjoint_8h.html#a3c7be955a46b3d056b5d38324f2d2068">solver_adjoint.h</a>
-</li>
-<li>innfft_adjoint_finalize()
-: <a class="el" href="solver__adjoint_8h.html#a1316a1ad32f611899e446cd98d3b0b0d">solver_adjoint.h</a>
-</li>
-<li>innfft_adjoint_init()
-: <a class="el" href="solver__adjoint_8h.html#ab4dcbe373e99d9c010034c6eecdfea86">solver_adjoint.h</a>
-</li>
-<li>innfft_adjoint_init_advanced()
-: <a class="el" href="solver__adjoint_8h.html#aac4fe9056cb5a96170ba6122e20d116a">solver_adjoint.h</a>
-</li>
-<li>innfft_adjoint_loop_one_step()
-: <a class="el" href="solver__adjoint_8h.html#a9e80774fcedbd2a50e4146290de9ce3f">solver_adjoint.h</a>
-</li>
-<li>inverse_linogram_fft()
-: <a class="el" href="group__applications__polarFFT__linogramm.html#gaf44988058d3000a477c046c172c26265">linogram_fft_test.c</a>
-</li>
-<li>inverse_mpolar_fft()
-: <a class="el" href="group__applications__polarFFT__mpolar.html#ga5d0560e898b722ee5fe09acc485bbec8">mpolar_fft_test.c</a>
-</li>
-<li>inverse_polar_fft()
-: <a class="el" href="group__applications__polarFFT__polar.html#gad996d429207cf198e9027618e081ada0">polar_fft_test.c</a>
-</li>
-<li>Inverse_Radon_trafo()
-: <a class="el" href="inverse__radon_8c.html#a298e52a05aeac043f9b35e8ae60a13e4">inverse_radon.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_k"></a>- k -</h3><ul>
-<li>kubintkern()
-: <a class="el" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79">fastsum.c</a>
-, <a class="el" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79">fastsum.h</a>
-</li>
-<li>kubintkern1()
-: <a class="el" href="group__applications__fastsum.html#gad527763b180de164610e55a704c69116">fastsum.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_l"></a>- l -</h3><ul>
-<li>linintkern()
-: <a class="el" href="group__applications__fastsum.html#gae23df7b1c09c2955895545e164bc9e99">fastsum.c</a>
-</li>
-<li>linogram_dft()
-: <a class="el" href="group__applications__polarFFT__linogramm.html#ga708f5c41add2af92a97339dee1c068dc">linogram_fft_test.c</a>
-</li>
-<li>linogram_fft()
-: <a class="el" href="group__applications__polarFFT__linogramm.html#gaea5025fe751ace25f818ecb3cfc16444">linogram_fft_test.c</a>
-</li>
-<li>linogram_grid()
-: <a class="el" href="group__applications__polarFFT__linogramm.html#ga9a5ff165ab1e23af77ab6f6108bb6310">linogram_fft_test.c</a>
-, <a class="el" href="inverse__radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310">inverse_radon.c</a>
-, <a class="el" href="radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310">radon.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_m"></a>- m -</h3><ul>
-<li>main()
-: <a class="el" href="group__applications__polarFFT__linogramm.html#ga3c04138a5bfe5d72780bb7e82a18e627">linogram_fft_test.c</a>
-, <a class="el" href="group__applications__polarFFT__mpolar.html#ga3c04138a5bfe5d72780bb7e82a18e627">mpolar_fft_test.c</a>
-, <a class="el" href="inverse__radon_8c.html#a3c04138a5bfe5d72780bb7e82a18e627">inverse_radon.c</a>
-, <a class="el" href="radon_8c.html#a3c04138a5bfe5d72780bb7e82a18e627">radon.c</a>
-, <a class="el" href="group__applications__polarFFT__polar.html#ga3c04138a5bfe5d72780bb7e82a18e627">polar_fft_test.c</a>
-</li>
-<li>max_i()
-: <a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">fastsum.c</a>
-</li>
-<li>mpolar_dft()
-: <a class="el" href="group__applications__polarFFT__mpolar.html#gaee9902054200ea50d90b5d290bff8c71">mpolar_fft_test.c</a>
-</li>
-<li>mpolar_fft()
-: <a class="el" href="group__applications__polarFFT__mpolar.html#ga55b2f979a5c69176a73f59eb0312b53d">mpolar_fft_test.c</a>
-</li>
-<li>mpolar_grid()
-: <a class="el" href="group__applications__polarFFT__mpolar.html#ga08d0441aceedbcb98b985ee5aa121952">mpolar_fft_test.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_n"></a>- n -</h3><ul>
-<li>nfft_bspline()
-: <a class="el" href="group__nfftutil.html#ga2fd48f1f700153c050d27691c4b2a6cc">nfft3util.h</a>
-</li>
-<li>nfft_bspline_old()
-: <a class="el" href="group__nfftutil.html#ga89bd624abdfb13abc10c144a8ff949cd">nfft3util.h</a>
-</li>
-<li>nfft_cp_a_complex()
-: <a class="el" href="group__nfftutil.html#ga33409df91e7ad5e1dca3beaa63e0ef25">nfft3util.h</a>
-</li>
-<li>nfft_cp_a_double()
-: <a class="el" href="group__nfftutil.html#ga41f20c605269e701b3305e49010e0759">nfft3util.h</a>
-</li>
-<li>nfft_cp_complex()
-: <a class="el" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133">nfft3util.h</a>
-</li>
-<li>nfft_cp_double()
-: <a class="el" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2">nfft3util.h</a>
-</li>
-<li>nfft_cp_w_complex()
-: <a class="el" href="group__nfftutil.html#ga630054cb816785d766959a867965f619">nfft3util.h</a>
-</li>
-<li>nfft_cp_w_double()
-: <a class="el" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099">nfft3util.h</a>
-</li>
-<li>nfft_dot_complex()
-: <a class="el" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004">nfft3util.h</a>
-</li>
-<li>nfft_dot_double()
-: <a class="el" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5">nfft3util.h</a>
-</li>
-<li>nfft_dot_w2_complex()
-: <a class="el" href="group__nfftutil.html#ga9b59288597d159357fe86395e635a075">nfft3util.h</a>
-</li>
-<li>nfft_dot_w_complex()
-: <a class="el" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1">nfft3util.h</a>
-</li>
-<li>nfft_dot_w_double()
-: <a class="el" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39">nfft3util.h</a>
-</li>
-<li>nfft_dot_w_w2_complex()
-: <a class="el" href="group__nfftutil.html#ga68268fc9bfad5a7e7383098ac1715674">nfft3util.h</a>
-</li>
-<li>nfft_fftshift_complex()
-: <a class="el" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770">nfft3util.h</a>
-</li>
-<li>nfft_free()
-: <a class="el" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft3.h</a>
-</li>
-<li>nfft_malloc()
-: <a class="el" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft3.h</a>
-</li>
-<li>nfft_modified_fejer()
-: <a class="el" href="group__nfftutil.html#gac9b810183abafb668f8aa777c7985256">nfft3util.h</a>
-</li>
-<li>nfft_modified_jackson2()
-: <a class="el" href="group__nfftutil.html#gab45a6cd3528d3716522a0cf184375aaf">nfft3util.h</a>
-</li>
-<li>nfft_modified_jackson4()
-: <a class="el" href="group__nfftutil.html#ga126ec2282393435f0d795ac79db8654b">nfft3util.h</a>
-</li>
-<li>nfft_modified_multiquadric()
-: <a class="el" href="group__nfftutil.html#gac6201bc2aa806bd25cb14c5f96d644e9">nfft3util.h</a>
-</li>
-<li>nfft_modified_sobolev()
-: <a class="el" href="group__nfftutil.html#gaa84cb34c6d368599fb2f997eadb184a7">nfft3util.h</a>
-</li>
-<li>nfft_plain_loop()
-: <a class="el" href="group__nfftutil.html#gad979f626cc8397e26d1bd78a7ba342cd">nfft3util.h</a>
-</li>
-<li>nfft_precompute_lin_psi()
-: <a class="el" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc">nfft3.h</a>
-</li>
-<li>nfft_prod_int()
-: <a class="el" href="group__nfftutil.html#ga2752ca372ee2622f173a706e86e2b116">nfft3util.h</a>
-</li>
-<li>nfft_prod_real()
-: <a class="el" href="group__nfftutil.html#gad7bad7074a695341742f57526f8695eb">nfft3util.h</a>
-</li>
-<li>nfft_smbi()
-: <a class="el" href="group__nfftutil.html#ga2decee6fe50d50797a82737ba82cf97a">nfft3util.h</a>
-</li>
-<li>nfft_sort_node_indices_radix_lsdf()
-: <a class="el" href="group__nfftutil.html#gad93b94e3c7e9149f89819504c2b3c738">nfft3util.h</a>
-</li>
-<li>nfft_sort_node_indices_radix_msdf()
-: <a class="el" href="group__nfftutil.html#ga60a5123a8026a06807e14502d7cedcd5">nfft3util.h</a>
-</li>
-<li>nfft_trafo()
-: <a class="el" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421">nfft3.h</a>
-</li>
-<li>nfft_upd_axpby_complex()
-: <a class="el" href="group__nfftutil.html#ga903a4b3ed369dcfe67b9379a238ed23d">nfft3util.h</a>
-</li>
-<li>nfft_upd_axpby_double()
-: <a class="el" href="group__nfftutil.html#ga75e403e92875b0b919a555f8cede0e8d">nfft3util.h</a>
-</li>
-<li>nfft_upd_axpwy_complex()
-: <a class="el" href="group__nfftutil.html#ga693919963b51cf396311b15660e04cd8">nfft3util.h</a>
-</li>
-<li>nfft_upd_axpwy_double()
-: <a class="el" href="group__nfftutil.html#gaf6777c4b8aa9f575f1600c51e8ae343a">nfft3util.h</a>
-</li>
-<li>nfft_upd_axpy_complex()
-: <a class="el" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5">nfft3util.h</a>
-</li>
-<li>nfft_upd_axpy_double()
-: <a class="el" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3">nfft3util.h</a>
-</li>
-<li>nfft_upd_xpawy_complex()
-: <a class="el" href="group__nfftutil.html#gad8e10773e59818c88a8ea2cb560b936e">nfft3util.h</a>
-</li>
-<li>nfft_upd_xpawy_double()
-: <a class="el" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0">nfft3util.h</a>
-</li>
-<li>nfft_upd_xpay_complex()
-: <a class="el" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4">nfft3util.h</a>
-</li>
-<li>nfft_upd_xpay_double()
-: <a class="el" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064">nfft3util.h</a>
-</li>
-<li>nfft_voronoi_weights_1d()
-: <a class="el" href="group__nfftutil.html#ga797e81f55e6379efabf4d98522d1ee9d">nfft3util.h</a>
-</li>
-<li>nfft_voronoi_weights_S2()
-: <a class="el" href="group__nfftutil.html#ga26a4ed487a23e99e01f111113be9f994">nfft3util.h</a>
-</li>
-<li>nfft_vpr_complex()
-: <a class="el" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0">nfft3util.h</a>
-</li>
-<li>nfft_vpr_double()
-: <a class="el" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91">nfft3util.h</a>
-</li>
-<li>nfft_vpr_int()
-: <a class="el" href="group__nfftutil.html#gaa8e0581d802c4b7bb153682a4c156409">nfft3util.h</a>
-</li>
-<li>nfft_vrand_shifted_unit_double()
-: <a class="el" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34">nfft3util.h</a>
-</li>
-<li>nfft_vrand_unit_complex()
-: <a class="el" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685">nfft3util.h</a>
-</li>
-<li>nfst_full_psi()
-: <a class="el" href="nfft3_8h.html#a02d072e80ccaca6482b396540eaef585">nfft3.h</a>
-</li>
-<li>nfst_prod_minus_a_int()
-: <a class="el" href="group__nfftutil.html#ga8adc6bf59ec10f16243030ee00ad4a40">nfft3util.h</a>
-</li>
-<li>nfst_trafo()
-: <a class="el" href="nfft3_8h.html#ac80b86521428ec2191919cc96c82f416">nfft3.h</a>
-</li>
-<li>nnfft_precompute_full_psi()
-: <a class="el" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9">nfft3.h</a>
-</li>
-<li>nnfft_precompute_lin_psi()
-: <a class="el" href="nfft3_8h.html#a65983eef73b9f5740214bf720f62fcd6">nfft3.h</a>
-</li>
-<li>nnfft_precompute_phi_hut()
-: <a class="el" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580">nfft3.h</a>
-</li>
-<li>nnfft_trafo()
-: <a class="el" href="nfft3_8h.html#a994c1748ebe1371c53dd2cb437054d4f">nfft3.h</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_p"></a>- p -</h3><ul>
-<li>polar_dft()
-: <a class="el" href="group__applications__polarFFT__polar.html#gaf6ec0d6bb5bfea4829e551c9dc9a656e">polar_fft_test.c</a>
-</li>
-<li>polar_fft()
-: <a class="el" href="group__applications__polarFFT__polar.html#ga72ebda23ef48b6509833eea9a24fa839">polar_fft_test.c</a>
-</li>
-<li>polar_grid()
-: <a class="el" href="inverse__radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae">inverse_radon.c</a>
-, <a class="el" href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756f140c7fa831cdae">polar_fft_test.c</a>
-, <a class="el" href="radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae">radon.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_q"></a>- q -</h3><ul>
-<li>quicksort()
-: <a class="el" href="group__applications__fastsum.html#ga7d3d3786f2e799dc1fa1704281f4a3fe">fastsum.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_r"></a>- r -</h3><ul>
-<li>Radon_trafo()
-: <a class="el" href="radon_8c.html#a01ba457f6edb3193453204cc702ac5ca">radon.c</a>
-</li>
-<li>regkern()
-: <a class="el" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c">fastsum.c</a>
-, <a class="el" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c">fastsum.h</a>
-</li>
-<li>regkern1()
-: <a class="el" href="group__applications__fastsum.html#gaf022589be0533270b476edc9b78928f1">fastsum.c</a>
-</li>
-<li>regkern2()
-: <a class="el" href="group__applications__fastsum.html#ga461376a86ecb935b74e7bfa4c86275d9">fastsum.c</a>
-</li>
-<li>regkern3()
-: <a class="el" href="group__applications__fastsum.html#ga2077aec7b505fd6bf082c28cc5d59468">fastsum.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_s"></a>- s -</h3><ul>
-<li>SearchBox()
-: <a class="el" href="group__applications__fastsum.html#gae5d00a6d73390cc05d73aeca17028fc5">fastsum.c</a>
-</li>
-<li>SearchTree()
-: <a class="el" href="group__applications__fastsum.html#gab5a71f2cd5581bfa121b77aa6c981104">fastsum.c</a>
-</li>
-<li>SO3_alpha()
-: <a class="el" href="wigner_8h.html#ab67e240f23c39daa7283fee9025a8f03">wigner.h</a>
-</li>
-<li>SO3_alpha_all()
-: <a class="el" href="wigner_8h.html#aef802fd511b566392a8b2cbb9fcd6678">wigner.h</a>
-</li>
-<li>SO3_alpha_matrix()
-: <a class="el" href="wigner_8h.html#a9ab913c454dd078bed0db8b4aa9365e1">wigner.h</a>
-</li>
-<li>SO3_alpha_row()
-: <a class="el" href="wigner_8h.html#ae9c3c9a11f1da35bb0cfbed1fb828ad2">wigner.h</a>
-</li>
-<li>SO3_beta()
-: <a class="el" href="wigner_8h.html#a6722aa3212be1361b531751a850056f6">wigner.h</a>
-</li>
-<li>SO3_beta_all()
-: <a class="el" href="wigner_8h.html#aa981c92edca3fac2f04a7d3524b8425a">wigner.h</a>
-</li>
-<li>SO3_beta_matrix()
-: <a class="el" href="wigner_8h.html#a742f6babb80797e003835bc66cfe9080">wigner.h</a>
-</li>
-<li>SO3_beta_row()
-: <a class="el" href="wigner_8h.html#a1b82e072be0c3e0d45426ed56e4e6a9d">wigner.h</a>
-</li>
-<li>SO3_gamma()
-: <a class="el" href="wigner_8h.html#a6b13b24d727910800b9f1c0da29f5f73">wigner.h</a>
-</li>
-<li>SO3_gamma_all()
-: <a class="el" href="wigner_8h.html#a4ff3aa0c3afb226613100df410cbef7f">wigner.h</a>
-</li>
-<li>SO3_gamma_matrix()
-: <a class="el" href="wigner_8h.html#aa9850cfec93784e536a728f13db4c5cb">wigner.h</a>
-</li>
-<li>SO3_gamma_row()
-: <a class="el" href="wigner_8h.html#a46516d6ec71efab3c80eecd459ad20ee">wigner.h</a>
-</li>
-<li>solver_finalize_complex()
-: <a class="el" href="solver_8c.html#a2f44c78734390e47d72578f4c9cbe709">solver.c</a>
-, <a class="el" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709">nfft3.h</a>
-</li>
-<li>solver_finalize_double()
-: <a class="el" href="solver_8c.html#a6d04f270b539a9f48b3521ba973829bf">solver.c</a>
-</li>
-<li>solver_init_advanced_double()
-: <a class="el" href="nfft3_8h.html#a1a4544ab96d14c812e3b330c439c3d80">nfft3.h</a>
-, <a class="el" href="solver_8c.html#a1a4544ab96d14c812e3b330c439c3d80">solver.c</a>
-</li>
-<li>solver_loop_one_step_cgne_complex()
-: <a class="el" href="solver_8c.html#a59278b7119c43bf23b9aaca6eae936e5">solver.c</a>
-</li>
-<li>solver_loop_one_step_cgne_double()
-: <a class="el" href="solver_8c.html#a206a5fe70bfb6853a2a9a9551e12b2db">solver.c</a>
-</li>
-<li>solver_loop_one_step_cgnr_complex()
-: <a class="el" href="solver_8c.html#a376190a64969829c029532fd0957e184">solver.c</a>
-</li>
-<li>solver_loop_one_step_cgnr_double()
-: <a class="el" href="solver_8c.html#ae134ca120f6f4fcc96626c6a1acedfb6">solver.c</a>
-</li>
-<li>solver_loop_one_step_complex()
-: <a class="el" href="solver_8c.html#a3b80b04ee3429b04c310992fb0a12420">solver.c</a>
-, <a class="el" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420">nfft3.h</a>
-</li>
-<li>solver_loop_one_step_double()
-: <a class="el" href="solver_8c.html#a89adea45056c1b5c8d90cfd87325be4e">solver.c</a>
-</li>
-<li>solver_loop_one_step_landweber_complex()
-: <a class="el" href="solver_8c.html#a7e818bcb6dd61e2a7aa5748c8ee9d339">solver.c</a>
-</li>
-<li>solver_loop_one_step_landweber_double()
-: <a class="el" href="solver_8c.html#a30d6a3373083167e38181c964d6a4288">solver.c</a>
-</li>
-<li>solver_loop_one_step_steepest_descent_complex()
-: <a class="el" href="solver_8c.html#ab14e3227776d9378c195664f3ace8110">solver.c</a>
-</li>
-<li>solver_loop_one_step_steepest_descent_double()
-: <a class="el" href="solver_8c.html#a6fef0b0a380ed017554c41b78fccc477">solver.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_t"></a>- t -</h3><ul>
-<li>taylor_finalize()
-: <a class="el" href="taylor__nfft_8c.html#a10f336e1a24851643775a0da2f338c65">taylor_nfft.c</a>
-</li>
-<li>taylor_init()
-: <a class="el" href="taylor__nfft_8c.html#a8aaec175a64f4ca7e15fcdcd355f56a2">taylor_nfft.c</a>
-</li>
-<li>taylor_precompute()
-: <a class="el" href="taylor__nfft_8c.html#a13b127b1ecbbd640bd30123c635940a5">taylor_nfft.c</a>
-</li>
-<li>taylor_time_accuracy()
-: <a class="el" href="taylor__nfft_8c.html#a7ef2d41455ffa60a2f001c4981d4cf97">taylor_nfft.c</a>
-</li>
-<li>taylor_trafo()
-: <a class="el" href="taylor__nfft_8c.html#ada016505d50bb2473ce6061a342d7e20">taylor_nfft.c</a>
-</li>
-</ul>
-
-
-<h3><a class="anchor" id="index_w"></a>- w -</h3><ul>
-<li>wigner_start()
-: <a class="el" href="wigner_8h.html#a6c43c1f82cf3efa9cb1343ec9dcd07ed">wigner.h</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_type.html b/doc/api/html/globals_type.html
deleted file mode 100644
index 45e474c..0000000
--- a/doc/api/html/globals_type.html
+++ /dev/null
@@ -1,80 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li><a href="globals_vars.html"><span>Variables</span></a></li>
- <li class="current"><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
- <ul>
-<li>fastsum_plan
-: <a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum.h</a>
-</li>
-<li>fpt_data
-: <a class="el" href="fpt_8c.html#a5141ba7ff5b14b5fbf7ee769943f1c10">fpt.c</a>
-</li>
-<li>fpt_set
-: <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">nfft3.h</a>
-</li>
-<li>fpt_set_s
-: <a class="el" href="fpt_8c.html#a06f7c65536489b0602c70a616e9f1fe8">fpt.c</a>
-</li>
-<li>fpt_step
-: <a class="el" href="fpt_8c.html#a4c7f62127651d301d4604b3a6519458d">fpt.c</a>
-</li>
-<li>fptf_set
-: <a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">nfft3.h</a>
-</li>
-<li>fptl_set
-: <a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">nfft3.h</a>
-</li>
-<li>nfft_free_type_function
-: <a class="el" href="nfft3_8h.html#acdec9723f6ea0ea162d5f3fc6f1f1906">nfft3.h</a>
-</li>
-<li>nfft_malloc_type_function
-: <a class="el" href="nfft3_8h.html#ae2db105c02d4b63d1962dc94d4e7a4c2">nfft3.h</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/globals_vars.html b/doc/api/html/globals_vars.html
deleted file mode 100644
index a63ce0a..0000000
--- a/doc/api/html/globals_vars.html
+++ /dev/null
@@ -1,62 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Globals
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li class="current"><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
- <div id="navrow3" class="tabs2">
- <ul class="tablist">
- <li><a href="globals.html"><span>All</span></a></li>
- <li><a href="globals_func.html"><span>Functions</span></a></li>
- <li class="current"><a href="globals_vars.html"><span>Variables</span></a></li>
- <li><a href="globals_type.html"><span>Typedefs</span></a></li>
- <li><a href="globals_defs.html"><span>Macros</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="contents">
- <ul>
-<li>nfft_free_hook
-: <a class="el" href="nfft3_8h.html#a5b4d02593a82ded7c1d3c3c868e72347">nfft3.h</a>
-</li>
-<li>nfft_malloc_hook
-: <a class="el" href="nfft3_8h.html#aa578dec914d95bda5a2fad3fbd90c76f">nfft3.h</a>
-</li>
-<li>wisdom
-: <a class="el" href="group__nfsft.html#ga0af81d81e1b436949ddc46dbd27346e5">nfsft.c</a>
-</li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications.html b/doc/api/html/group__applications.html
deleted file mode 100644
index 169fa40..0000000
--- a/doc/api/html/group__applications.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Applications
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> </div>
- <div class="headertitle">
-<div class="title">Applications</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__applications__fastgauss"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html">Fast Gauss transfrom with complex parameter</a></td></tr>
-<tr class="memitem:group__applications__fastsum"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html">Fast summation</a></td></tr>
-<tr class="memdesc:group__applications__fastsum"><td class="mdescLeft"> </td><td class="mdescRight">Required for test if (ths->k == one_over_x) <br/></td></tr>
-<tr class="memitem:group__applications__fastsumS2"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2.html">Fast summation of radial functions on the sphere</a></td></tr>
-<tr class="memitem:group__applications__iterS2"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__iterS2.html">Iterative reconstruction on the sphere S2</a></td></tr>
-<tr class="memitem:group__applications__mri"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri.html">Transforms in magnetic resonance imaging</a></td></tr>
-<tr class="memitem:group__applications__polarFFT"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT.html">Polar FFT</a></td></tr>
-<tr class="memitem:group__applications__quadratureS2"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__quadratureS2.html">Fast evaluation of quadrature formulae on the sphere</a></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__fastgauss.html b/doc/api/html/group__applications__fastgauss.html
deleted file mode 100644
index d7479f9..0000000
--- a/doc/api/html/group__applications__fastgauss.html
+++ /dev/null
@@ -1,638 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Fast Gauss transfrom with complex parameter
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#nested-classes">Data Structures</a> |
-<a href="#define-members">Macros</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">Fast Gauss transfrom with complex parameter</div> </div>
-<div class="ingroups"><a class="el" href="group__applications.html">Applications</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html">fgt_plan</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Structure for the Gauss transform. <a href="structfgt__plan.html#details">More...</a><br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:ga48aa1ec81a29b9f079701246f0b53ccc"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga48aa1ec81a29b9f079701246f0b53ccc">DGT_PRE_CEXP</a> (1U<< 0)</td></tr>
-<tr class="memdesc:ga48aa1ec81a29b9f079701246f0b53ccc"><td class="mdescLeft"> </td><td class="mdescRight">If this flag is set, the whole matrix is precomputed and stored for the discrete Gauss transfrom. <a href="#ga48aa1ec81a29b9f079701246f0b53ccc"></a><br/></td></tr>
-<tr class="memitem:ga38ab7e1022ff3c5b556ce93078a05d1e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga38ab7e1022ff3c5b556ce93078a05d1e">FGT_NDFT</a> (1U<< 1)</td></tr>
-<tr class="memdesc:ga38ab7e1022ff3c5b556ce93078a05d1e"><td class="mdescLeft"> </td><td class="mdescRight">If this flag is set, the fast Gauss transform uses the discrete instead of the fast Fourier transform. <a href="#ga38ab7e1022ff3c5b556ce93078a05d1e"></a><br/></td></tr>
-<tr class="memitem:ga39c3e544a78853e0da2b9a8c66d3054d"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga39c3e544a78853e0da2b9a8c66d3054d">FGT_APPROX_B</a> (1U<< 2)</td></tr>
-<tr class="memdesc:ga39c3e544a78853e0da2b9a8c66d3054d"><td class="mdescLeft"> </td><td class="mdescRight">If this flag is set, the discrete Fourier coefficients of the uniformly sampled Gaussian are used instead of the sampled continuous Fourier transform. <a href="#ga39c3e544a78853e0da2b9a8c66d3054d"></a><br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga42f141fc768ced46eb2dac284b063b80"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga42f141fc768ced46eb2dac284b063b80">dgt_trafo</a> (<a class="el" href="structfgt__plan.html">fgt_plan</a> *ths)</td></tr>
-<tr class="memdesc:ga42f141fc768ced46eb2dac284b063b80"><td class="mdescLeft"> </td><td class="mdescRight">Executes the discrete Gauss transform. <a href="#ga42f141fc768ced46eb2dac284b063b80"></a><br/></td></tr>
-<tr class="memitem:gab12b6f7c36927db24d8555484dcdfde0"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#gab12b6f7c36927db24d8555484dcdfde0">fgt_trafo</a> (<a class="el" href="structfgt__plan.html">fgt_plan</a> *ths)</td></tr>
-<tr class="memdesc:gab12b6f7c36927db24d8555484dcdfde0"><td class="mdescLeft"> </td><td class="mdescRight">Executes the fast Gauss transform. <a href="#gab12b6f7c36927db24d8555484dcdfde0"></a><br/></td></tr>
-<tr class="memitem:ga902eb9182c72c3c9293084a70523ebff"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga902eb9182c72c3c9293084a70523ebff">fgt_init_guru</a> (<a class="el" href="structfgt__plan.html">fgt_plan</a> *ths, int N, int M, double _Complex sigma, int n, double p, int m, unsigned flags)</td></tr>
-<tr class="memdesc:ga902eb9182c72c3c9293084a70523ebff"><td class="mdescLeft"> </td><td class="mdescRight">Initialisation of a transform plan, guru. <a href="#ga902eb9182c72c3c9293084a70523ebff"></a><br/></td></tr>
-<tr class="memitem:ga44cf9a6fb0a16df875f613f343fd5c65"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga44cf9a6fb0a16df875f613f343fd5c65">fgt_init</a> (<a class="el" href="structfgt__plan.html">fgt_plan</a> *ths, int N, int M, double _Complex sigma, double eps)</td></tr>
-<tr class="memdesc:ga44cf9a6fb0a16df875f613f343fd5c65"><td class="mdescLeft"> </td><td class="mdescRight">Initialisation of a transform plan, simple. <a href="#ga44cf9a6fb0a16df875f613f343fd5c65"></a><br/></td></tr>
-<tr class="memitem:ga9d8f6229d33bc49f618838b21b3dd7fc"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga9d8f6229d33bc49f618838b21b3dd7fc">fgt_init_node_dependent</a> (<a class="el" href="structfgt__plan.html">fgt_plan</a> *ths)</td></tr>
-<tr class="memdesc:ga9d8f6229d33bc49f618838b21b3dd7fc"><td class="mdescLeft"> </td><td class="mdescRight">Initialisation of a transform plan, depends on source and target nodes. <a href="#ga9d8f6229d33bc49f618838b21b3dd7fc"></a><br/></td></tr>
-<tr class="memitem:ga4634fe28b9e1be61106871cf0e61ef83"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga4634fe28b9e1be61106871cf0e61ef83">fgt_finalize</a> (<a class="el" href="structfgt__plan.html">fgt_plan</a> *ths)</td></tr>
-<tr class="memdesc:ga4634fe28b9e1be61106871cf0e61ef83"><td class="mdescLeft"> </td><td class="mdescRight">Destroys the transform plan. <a href="#ga4634fe28b9e1be61106871cf0e61ef83"></a><br/></td></tr>
-<tr class="memitem:ga317a464dbf2df948bb94ef5748710e57"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga317a464dbf2df948bb94ef5748710e57">fgt_test_init_rand</a> (<a class="el" href="structfgt__plan.html">fgt_plan</a> *ths)</td></tr>
-<tr class="memdesc:ga317a464dbf2df948bb94ef5748710e57"><td class="mdescLeft"> </td><td class="mdescRight">Random initialisation of a fgt plan. <a href="#ga317a464dbf2df948bb94ef5748710e57"></a><br/></td></tr>
-<tr class="memitem:gabebca8cc0714b36c3b47e2a5d0317960"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#gabebca8cc0714b36c3b47e2a5d0317960">fgt_test_measure_time</a> (<a class="el" href="structfgt__plan.html">fgt_plan</a> *ths, unsigned dgt)</td></tr>
-<tr class="memdesc:gabebca8cc0714b36c3b47e2a5d0317960"><td class="mdescLeft"> </td><td class="mdescRight">Compares execution times for the fast and discrete Gauss transform. <a href="#gabebca8cc0714b36c3b47e2a5d0317960"></a><br/></td></tr>
-<tr class="memitem:ga74b5dd8d6f593462a2b37b290ad4d227"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga74b5dd8d6f593462a2b37b290ad4d227">fgt_test_simple</a> (int N, int M, double _Complex sigma, double eps)</td></tr>
-<tr class="memdesc:ga74b5dd8d6f593462a2b37b290ad4d227"><td class="mdescLeft"> </td><td class="mdescRight">Simple example that computes fast and discrete Gauss transforms. <a href="#ga74b5dd8d6f593462a2b37b290ad4d227"></a><br/></td></tr>
-<tr class="memitem:gaac05fa78924012be74e54ddbd098892f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#gaac05fa78924012be74e54ddbd098892f">fgt_test_andersson</a> (void)</td></tr>
-<tr class="memdesc:gaac05fa78924012be74e54ddbd098892f"><td class="mdescLeft"> </td><td class="mdescRight">Compares accuracy and execution time of the fast Gauss transform with increasing expansion degree. <a href="#gaac05fa78924012be74e54ddbd098892f"></a><br/></td></tr>
-<tr class="memitem:gaab0a7e29242524d33269448fc4612946"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#gaab0a7e29242524d33269448fc4612946">fgt_test_error</a> (void)</td></tr>
-<tr class="memdesc:gaab0a7e29242524d33269448fc4612946"><td class="mdescLeft"> </td><td class="mdescRight">Compares accuracy of the fast Gauss transform with increasing expansion degree. <a href="#gaab0a7e29242524d33269448fc4612946"></a><br/></td></tr>
-<tr class="memitem:gab68ea529a033a478a391243d8dacf61b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#gab68ea529a033a478a391243d8dacf61b">fgt_test_error_p</a> (void)</td></tr>
-<tr class="memdesc:gab68ea529a033a478a391243d8dacf61b"><td class="mdescLeft"> </td><td class="mdescRight">Compares accuracy of the fast Gauss transform with increasing expansion degree and different periodisation lengths. <a href="#gab68ea529a033a478a391243d8dacf61b"></a><br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastgauss.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">Different tests of the fast Gauss transform. <a href="#ga3c04138a5bfe5d72780bb7e82a18e627"></a><br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<hr/><h2>Macro Definition Documentation</h2>
-<a class="anchor" id="ga48aa1ec81a29b9f079701246f0b53ccc"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define DGT_PRE_CEXP (1U<< 0)</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>If this flag is set, the whole matrix is precomputed and stored for the discrete Gauss transfrom. </p>
-<dl class="section see"><dt>See also:</dt><dd><a class="el" href="group__applications__fastgauss.html#ga9d8f6229d33bc49f618838b21b3dd7fc" title="Initialisation of a transform plan, depends on source and target nodes.">fgt_init_node_dependent</a> </dd>
-<dd>
-<a class="el" href="group__applications__fastgauss.html#ga44cf9a6fb0a16df875f613f343fd5c65" title="Initialisation of a transform plan, simple.">fgt_init</a> </dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00048">48</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00107">dgt_trafo()</a>, <a class="el" href="fastgauss_8c_source.html#l00240">fgt_init()</a>, <a class="el" href="fastgauss_8c_source.html#l00263">fgt_init_node_dependent()</a>, and <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga38ab7e1022ff3c5b556ce93078a05d1e"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define FGT_NDFT (1U<< 1)</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>If this flag is set, the fast Gauss transform uses the discrete instead of the fast Fourier transform. </p>
-<dl class="section see"><dt>See also:</dt><dd><a class="el" href="group__applications__fastgauss.html#ga44cf9a6fb0a16df875f613f343fd5c65" title="Initialisation of a transform plan, simple.">fgt_init</a> </dd>
-<dd>
-nfft_trafo_direct </dd>
-<dd>
-<a class="el" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a> </dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00059">59</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>, and <a class="el" href="fastgauss_8c_source.html#l00132">fgt_trafo()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga39c3e544a78853e0da2b9a8c66d3054d"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define FGT_APPROX_B (1U<< 2)</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>If this flag is set, the discrete Fourier coefficients of the uniformly sampled Gaussian are used instead of the sampled continuous Fourier transform. </p>
-<dl class="section see"><dt>See also:</dt><dd><a class="el" href="group__applications__fastgauss.html#ga44cf9a6fb0a16df875f613f343fd5c65" title="Initialisation of a transform plan, simple.">fgt_init</a> </dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00069">69</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00170">fgt_init_guru()</a>.</p>
-
-</div>
-</div>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="ga42f141fc768ced46eb2dac284b063b80"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void dgt_trafo </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structfgt__plan.html">fgt_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Executes the discrete Gauss transform. </p>
-<ul>
-<li>ths The pointer to a fgt plan</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00107">107</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00077">fgt_plan::alpha</a>, <a class="el" href="fastgauss_8c_source.html#l00048">DGT_PRE_CEXP</a>, <a class="el" href="fastgauss_8c_source.html#l00078">fgt_plan::f</a>, <a class="el" href="fastgauss_8c_source.html#l00080">fgt_plan::flags</a>, <a class="el" href="fastgauss_8c_source.html#l00075">fgt_plan::M</a>, <a class="el" href="fastgauss_8c_source.html#l00074">fgt_plan::N</a>, <a class="el" href="fastgauss_8c_source.html#l000 [...]
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00481">fgt_test_error()</a>, <a class="el" href="fastgauss_8c_source.html#l00532">fgt_test_error_p()</a>, <a class="el" href="fastgauss_8c_source.html#l00341">fgt_test_measure_time()</a>, and <a class="el" href="fastgauss_8c_source.html#l00375">fgt_test_simple()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="gab12b6f7c36927db24d8555484dcdfde0"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fgt_trafo </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structfgt__plan.html">fgt_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Executes the fast Gauss transform. </p>
-<ul>
-<li>ths The pointer to a fgt plan</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00132">132</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00093">fgt_plan::b</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::f_hat</a>, <a class="el" href="fastgauss_8c_source.html#l00059">FGT_NDFT</a>, <a class="el" href="fastgauss_8c_source.html#l00080">fgt_plan::flags</a>, <a class="el" href="fastgauss_8c_source.html#l00090">fgt_plan::n</a>, <a class="el" href="nfft_8c_source.html#l05354">nfft_trafo()</a>, <a class="el" href="fastgauss_8c_source.html#l00095">fgt_pla [...]
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00481">fgt_test_error()</a>, <a class="el" href="fastgauss_8c_source.html#l00532">fgt_test_error_p()</a>, <a class="el" href="fastgauss_8c_source.html#l00341">fgt_test_measure_time()</a>, and <a class="el" href="fastgauss_8c_source.html#l00375">fgt_test_simple()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga902eb9182c72c3c9293084a70523ebff"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fgt_init_guru </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structfgt__plan.html">fgt_plan</a> * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>M</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double _Complex </td>
- <td class="paramname"><em>sigma</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double </td>
- <td class="paramname"><em>p</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Initialisation of a transform plan, guru. </p>
-<ul>
-<li>ths The pointer to a fpt plan </li>
-<li>N The number of source nodes </li>
-<li>M The number of target nodes </li>
-<li>sigma The parameter of the Gaussian </li>
-<li>n The polynomial expansion degree </li>
-<li>p the periodisation length, at least 1 </li>
-<li>m The spatial cut-off of the nfft </li>
-<li>flags FGT flags to use</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00170">170</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00077">fgt_plan::alpha</a>, <a class="el" href="fastgauss_8c_source.html#l00093">fgt_plan::b</a>, <a class="el" href="fastgauss_8c_source.html#l00078">fgt_plan::f</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::f</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::f_hat</a>, <a class="el" href="fastgauss_8c_source.html#l00069">FGT_APPROX_B</a>, <a class="el" href="fastgauss_8c_source.html#l00080">fg [...]
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00240">fgt_init()</a>, <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>, <a class="el" href="fastgauss_8c_source.html#l00481">fgt_test_error()</a>, and <a class="el" href="fastgauss_8c_source.html#l00532">fgt_test_error_p()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga44cf9a6fb0a16df875f613f343fd5c65"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fgt_init </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structfgt__plan.html">fgt_plan</a> * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>M</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double _Complex </td>
- <td class="paramname"><em>sigma</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double </td>
- <td class="paramname"><em>eps</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Initialisation of a transform plan, simple. </p>
-<ul>
-<li>ths The pointer to a fpt plan </li>
-<li>N The number of source nodes </li>
-<li>M The number of target nodes </li>
-<li>sigma The parameter of the Gaussian </li>
-<li>eps The target accuracy</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00240">240</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00048">DGT_PRE_CEXP</a>, <a class="el" href="fastgauss_8c_source.html#l00170">fgt_init_guru()</a>, and <a class="el" href="nfft3util_8h_source.html#l00062">PI</a>.</p>
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00375">fgt_test_simple()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga9d8f6229d33bc49f618838b21b3dd7fc"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fgt_init_node_dependent </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structfgt__plan.html">fgt_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Initialisation of a transform plan, depends on source and target nodes. </p>
-<ul>
-<li>ths The pointer to a fpt plan <dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-</li>
-</ul>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00263">263</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00048">DGT_PRE_CEXP</a>, <a class="el" href="fastgauss_8c_source.html#l00080">fgt_plan::flags</a>, <a class="el" href="fastgauss_8c_source.html#l00075">fgt_plan::M</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::M_total</a>, <a class="el" href="fastgauss_8c_source.html#l00074">fgt_plan::N</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::nfft_flags</a>, <a class="el" href="nfft3_8h.html#aafe616743 [...]
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>, <a class="el" href="fastgauss_8c_source.html#l00481">fgt_test_error()</a>, <a class="el" href="fastgauss_8c_source.html#l00532">fgt_test_error_p()</a>, and <a class="el" href="fastgauss_8c_source.html#l00375">fgt_test_simple()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga4634fe28b9e1be61106871cf0e61ef83"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fgt_finalize </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structfgt__plan.html">fgt_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Destroys the transform plan. </p>
-<ul>
-<li>ths The pointer to the fgt plan <dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-</li>
-</ul>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00295">295</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00077">fgt_plan::alpha</a>, <a class="el" href="fastgauss_8c_source.html#l00093">fgt_plan::b</a>, <a class="el" href="fastgauss_8c_source.html#l00078">fgt_plan::f</a>, <a class="el" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free()</a>, <a class="el" href="fastgauss_8c_source.html#l00095">fgt_plan::nplan1</a>, <a class="el" href="fastgauss_8c_source.html#l00096">fgt_plan::nplan2</a>, <a class="el" href="fastgaus [...]
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>, <a class="el" href="fastgauss_8c_source.html#l00481">fgt_test_error()</a>, <a class="el" href="fastgauss_8c_source.html#l00532">fgt_test_error_p()</a>, and <a class="el" href="fastgauss_8c_source.html#l00375">fgt_test_simple()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga317a464dbf2df948bb94ef5748710e57"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fgt_test_init_rand </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structfgt__plan.html">fgt_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Random initialisation of a fgt plan. </p>
-<ul>
-<li>ths The pointer to the fgt plan <dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-</li>
-</ul>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00318">318</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00077">fgt_plan::alpha</a>, <a class="el" href="fastgauss_8c_source.html#l00075">fgt_plan::M</a>, <a class="el" href="fastgauss_8c_source.html#l00074">fgt_plan::N</a>, <a class="el" href="fastgauss_8c_source.html#l00085">fgt_plan::x</a>, and <a class="el" href="fastgauss_8c_source.html#l00086">fgt_plan::y</a>.</p>
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>, <a class="el" href="fastgauss_8c_source.html#l00481">fgt_test_error()</a>, <a class="el" href="fastgauss_8c_source.html#l00532">fgt_test_error_p()</a>, and <a class="el" href="fastgauss_8c_source.html#l00375">fgt_test_simple()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="gabebca8cc0714b36c3b47e2a5d0317960"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double fgt_test_measure_time </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structfgt__plan.html">fgt_plan</a> * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>dgt</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Compares execution times for the fast and discrete Gauss transform. </p>
-<ul>
-<li>ths The pointer to the fgt plan </li>
-<li>dgt If this parameter is set <a class="el" href="group__applications__fastgauss.html#ga42f141fc768ced46eb2dac284b063b80">dgt_trafo</a> is called as well</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00341">341</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00107">dgt_trafo()</a>, and <a class="el" href="fastgauss_8c_source.html#l00132">fgt_trafo()</a>.</p>
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga74b5dd8d6f593462a2b37b290ad4d227"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fgt_test_simple </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>M</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double _Complex </td>
- <td class="paramname"><em>sigma</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double </td>
- <td class="paramname"><em>eps</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Simple example that computes fast and discrete Gauss transforms. </p>
-<ul>
-<li>ths The pointer to the fgt plan </li>
-<li>sigma The parameter of the Gaussian </li>
-<li>eps The target accuracy</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00375">375</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00077">fgt_plan::alpha</a>, <a class="el" href="fastgauss_8c_source.html#l00107">dgt_trafo()</a>, <a class="el" href="fastgauss_8c_source.html#l00078">fgt_plan::f</a>, <a class="el" href="fastgauss_8c_source.html#l00295">fgt_finalize()</a>, <a class="el" href="fastgauss_8c_source.html#l00240">fgt_init()</a>, <a class="el" href="fastgauss_8c_source.html#l00263">fgt_init_node_dependent()</a>, <a class="el" href="fastgauss_8c_sourc [...]
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00580">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="gaac05fa78924012be74e54ddbd098892f"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fgt_test_andersson </td>
- <td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Compares accuracy and execution time of the fast Gauss transform with increasing expansion degree. </p>
-<p>Similar to the test in F. Andersson and G. Beylkin. The fast Gauss transform with double _Complex parameters. J. Comput. Physics 203 (2005) 274-286</p>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00410">410</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00077">fgt_plan::alpha</a>, <a class="el" href="fastgauss_8c_source.html#l00048">DGT_PRE_CEXP</a>, <a class="el" href="fastgauss_8c_source.html#l00078">fgt_plan::f</a>, <a class="el" href="fastgauss_8c_source.html#l00295">fgt_finalize()</a>, <a class="el" href="fastgauss_8c_source.html#l00170">fgt_init_guru()</a>, <a class="el" href="fastgauss_8c_source.html#l00263">fgt_init_node_dependent()</a>, <a class="el" href="fastgauss_8c [...]
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00580">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="gaab0a7e29242524d33269448fc4612946"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fgt_test_error </td>
- <td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Compares accuracy of the fast Gauss transform with increasing expansion degree. </p>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00481">481</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00077">fgt_plan::alpha</a>, <a class="el" href="fastgauss_8c_source.html#l00107">dgt_trafo()</a>, <a class="el" href="fastgauss_8c_source.html#l00078">fgt_plan::f</a>, <a class="el" href="fastgauss_8c_source.html#l00295">fgt_finalize()</a>, <a class="el" href="fastgauss_8c_source.html#l00170">fgt_init_guru()</a>, <a class="el" href="fastgauss_8c_source.html#l00263">fgt_init_node_dependent()</a>, <a class="el" href="fastgauss_8c_ [...]
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00580">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="gab68ea529a033a478a391243d8dacf61b"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fgt_test_error_p </td>
- <td>(</td>
- <td class="paramtype">void </td>
- <td class="paramname"></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Compares accuracy of the fast Gauss transform with increasing expansion degree and different periodisation lengths. </p>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00532">532</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00077">fgt_plan::alpha</a>, <a class="el" href="fastgauss_8c_source.html#l00107">dgt_trafo()</a>, <a class="el" href="fastgauss_8c_source.html#l00078">fgt_plan::f</a>, <a class="el" href="fastgauss_8c_source.html#l00295">fgt_finalize()</a>, <a class="el" href="fastgauss_8c_source.html#l00170">fgt_init_guru()</a>, <a class="el" href="fastgauss_8c_source.html#l00263">fgt_init_node_dependent()</a>, <a class="el" href="fastgauss_8c_ [...]
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00580">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int main </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>argc</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">char ** </td>
- <td class="paramname"><em>argv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Different tests of the fast Gauss transform. </p>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00580">580</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-
-<p>References <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>, <a class="el" href="fastgauss_8c_source.html#l00481">fgt_test_error()</a>, <a class="el" href="fastgauss_8c_source.html#l00532">fgt_test_error_p()</a>, and <a class="el" href="fastgauss_8c_source.html#l00375">fgt_test_simple()</a>.</p>
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__fastsum.html b/doc/api/html/group__applications__fastsum.html
deleted file mode 100644
index c6c5e26..0000000
--- a/doc/api/html/group__applications__fastsum.html
+++ /dev/null
@@ -1,417 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Fast summation
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> |
-<a href="#nested-classes">Data Structures</a> |
-<a href="#define-members">Macros</a> |
-<a href="#typedef-members">Typedefs</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">Fast summation</div> </div>
-<div class="ingroups"><a class="el" href="group__applications.html">Applications</a></div></div><!--header-->
-<div class="contents">
-
-<p>Required for test if (ths->k == one_over_x)
-<a href="#details">More...</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__applications__fastsum__matlab"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum__matlab.html">fastsum_matlab</a></td></tr>
-<tr class="memitem:group__applications__fastsum__test"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum__test.html">fastsum_test</a></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html">fastsum_plan_</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">plan for fast summation algorithm <a href="structfastsum__plan__.html#details">More...</a><br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:gafa2dd15778c93b2eaa42de608fb4d1a8"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gafa2dd15778c93b2eaa42de608fb4d1a8">NF_KUB</a></td></tr>
-<tr class="memdesc:gafa2dd15778c93b2eaa42de608fb4d1a8"><td class="mdescLeft"> </td><td class="mdescRight">Include header for C99 complex datatype. <a href="#gafa2dd15778c93b2eaa42de608fb4d1a8"></a><br/></td></tr>
-<tr class="memitem:gac22376cb30edef9131c592a355d1030d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac22376cb30edef9131c592a355d1030d"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gac22376cb30edef9131c592a355d1030d">EXACT_NEARFIELD</a> (1U<< 0)</td></tr>
-<tr class="memdesc:gac22376cb30edef9131c592a355d1030d"><td class="mdescLeft"> </td><td class="mdescRight">Constant symbols. <br/></td></tr>
-<tr class="memitem:ga90e3c393cc832eec83e9da3b207edb8c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga90e3c393cc832eec83e9da3b207edb8c"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NEARFIELD_BOXES</b> (1U<< 1)</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ga9227ba3791b3360dc4a0d6fbf82034c6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9227ba3791b3360dc4a0d6fbf82034c6"></a>
-typedef double _Complex(* </td><td class="memItemRight" valign="bottom"><b>kernel</b> )(double, int, const double *)</td></tr>
-<tr class="memitem:gad953252f6b309404991c4afc7b98b34b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad953252f6b309404991c4afc7b98b34b"></a>
-typedef struct <a class="el" href="structfastsum__plan__.html">fastsum_plan_</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a></td></tr>
-<tr class="memdesc:gad953252f6b309404991c4afc7b98b34b"><td class="mdescLeft"> </td><td class="mdescRight">plan for fast summation algorithm <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga37a2a7cb4fb162d6e6e46ea614318a4e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga37a2a7cb4fb162d6e6e46ea614318a4e"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">max_i</a> (int a, int b)</td></tr>
-<tr class="memdesc:ga37a2a7cb4fb162d6e6e46ea614318a4e"><td class="mdescLeft"> </td><td class="mdescRight">max <br/></td></tr>
-<tr class="memitem:ga6fd3e84b794684dd1c6236619437bf09"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6fd3e84b794684dd1c6236619437bf09"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga6fd3e84b794684dd1c6236619437bf09">fak</a> (int n)</td></tr>
-<tr class="memdesc:ga6fd3e84b794684dd1c6236619437bf09"><td class="mdescLeft"> </td><td class="mdescRight">factorial <br/></td></tr>
-<tr class="memitem:gae767db8af0cbe9244cfbd0580b0bb9f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae767db8af0cbe9244cfbd0580b0bb9f4"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gae767db8af0cbe9244cfbd0580b0bb9f4">binom</a> (int n, int m)</td></tr>
-<tr class="memdesc:gae767db8af0cbe9244cfbd0580b0bb9f4"><td class="mdescLeft"> </td><td class="mdescRight">binomial coefficient <br/></td></tr>
-<tr class="memitem:ga0c4b940daf11ebe201355f43f26cddd0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0c4b940daf11ebe201355f43f26cddd0"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga0c4b940daf11ebe201355f43f26cddd0">BasisPoly</a> (int m, int r, double xx)</td></tr>
-<tr class="memdesc:ga0c4b940daf11ebe201355f43f26cddd0"><td class="mdescLeft"> </td><td class="mdescRight">basis polynomial for regularized kernel <br/></td></tr>
-<tr class="memitem:ga247527ab67657107225fa69882f0208c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga247527ab67657107225fa69882f0208c"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga247527ab67657107225fa69882f0208c">regkern</a> (kernel k, double xx, int p, const double *param, double a, double b)</td></tr>
-<tr class="memdesc:ga247527ab67657107225fa69882f0208c"><td class="mdescLeft"> </td><td class="mdescRight">regularized kernel with K_I arbitrary and K_B smooth to zero <br/></td></tr>
-<tr class="memitem:gaf022589be0533270b476edc9b78928f1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf022589be0533270b476edc9b78928f1"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gaf022589be0533270b476edc9b78928f1">regkern1</a> (kernel k, double xx, int p, const double *param, double a, double b)</td></tr>
-<tr class="memdesc:gaf022589be0533270b476edc9b78928f1"><td class="mdescLeft"> </td><td class="mdescRight">regularized kernel with K_I arbitrary and K_B periodized (used in 1D) <br/></td></tr>
-<tr class="memitem:ga461376a86ecb935b74e7bfa4c86275d9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga461376a86ecb935b74e7bfa4c86275d9"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga461376a86ecb935b74e7bfa4c86275d9">regkern2</a> (kernel k, double xx, int p, const double *param, double a, double b)</td></tr>
-<tr class="memdesc:ga461376a86ecb935b74e7bfa4c86275d9"><td class="mdescLeft"> </td><td class="mdescRight">regularized kernel for even kernels with K_I even and K_B mirrored <br/></td></tr>
-<tr class="memitem:ga2077aec7b505fd6bf082c28cc5d59468"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2077aec7b505fd6bf082c28cc5d59468"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga2077aec7b505fd6bf082c28cc5d59468">regkern3</a> (kernel k, double xx, int p, const double *param, double a, double b)</td></tr>
-<tr class="memdesc:ga2077aec7b505fd6bf082c28cc5d59468"><td class="mdescLeft"> </td><td class="mdescRight">regularized kernel for even kernels with K_I even and K_B mirrored smooth to K(1/2) (used in dD, d>1) <br/></td></tr>
-<tr class="memitem:gae23df7b1c09c2955895545e164bc9e99"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae23df7b1c09c2955895545e164bc9e99"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gae23df7b1c09c2955895545e164bc9e99">linintkern</a> (const double x, const double _Complex *Add, const int Ad, const double a)</td></tr>
-<tr class="memdesc:gae23df7b1c09c2955895545e164bc9e99"><td class="mdescLeft"> </td><td class="mdescRight">linear spline interpolation in near field with even kernels <br/></td></tr>
-<tr class="memitem:gabad684b95fbab7d2c039bec72bff712e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gabad684b95fbab7d2c039bec72bff712e"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>quadrintkern</b> (const double x, const double _Complex *Add, const int Ad, const double a)</td></tr>
-<tr class="memitem:ga67103860c05f7296f7c302e7f0dbfe79"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga67103860c05f7296f7c302e7f0dbfe79"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga67103860c05f7296f7c302e7f0dbfe79">kubintkern</a> (const double x, const double _Complex *Add, const int Ad, const double a)</td></tr>
-<tr class="memdesc:ga67103860c05f7296f7c302e7f0dbfe79"><td class="mdescLeft"> </td><td class="mdescRight">cubic spline interpolation in near field with even kernels <br/></td></tr>
-<tr class="memitem:gad527763b180de164610e55a704c69116"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad527763b180de164610e55a704c69116"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gad527763b180de164610e55a704c69116">kubintkern1</a> (const double x, const double _Complex *Add, const int Ad, const double a)</td></tr>
-<tr class="memdesc:gad527763b180de164610e55a704c69116"><td class="mdescLeft"> </td><td class="mdescRight">cubic spline interpolation in near field with arbitrary kernels <br/></td></tr>
-<tr class="memitem:ga7d3d3786f2e799dc1fa1704281f4a3fe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7d3d3786f2e799dc1fa1704281f4a3fe"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga7d3d3786f2e799dc1fa1704281f4a3fe">quicksort</a> (int d, int t, double *x, double _Complex *alpha, int N)</td></tr>
-<tr class="memdesc:ga7d3d3786f2e799dc1fa1704281f4a3fe"><td class="mdescLeft"> </td><td class="mdescRight">quicksort algorithm for source knots and associated coefficients <br/></td></tr>
-<tr class="memitem:ga8237ee0c81a2518c4849e71317a479d0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8237ee0c81a2518c4849e71317a479d0"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga8237ee0c81a2518c4849e71317a479d0">BuildBox</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:ga8237ee0c81a2518c4849e71317a479d0"><td class="mdescLeft"> </td><td class="mdescRight">initialize box-based search data structures <br/></td></tr>
-<tr class="memitem:ga15df6167d1d2dd375cb81e81a969cf9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga15df6167d1d2dd375cb81e81a969cf9d"></a>
-static double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga15df6167d1d2dd375cb81e81a969cf9d">calc_SearchBox</a> (int d, double *y, double *x, double _Complex *alpha, int start, int end_lt, const double _Complex *Add, const int Ad, int p, double a, const kernel k, const double *param, const unsigned flags)</td></tr>
-<tr class="memdesc:ga15df6167d1d2dd375cb81e81a969cf9d"><td class="mdescLeft"> </td><td class="mdescRight">inner computation function for box-based near field correction <br/></td></tr>
-<tr class="memitem:gae5d00a6d73390cc05d73aeca17028fc5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae5d00a6d73390cc05d73aeca17028fc5"></a>
-static double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gae5d00a6d73390cc05d73aeca17028fc5">SearchBox</a> (double *y, <a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gae5d00a6d73390cc05d73aeca17028fc5"><td class="mdescLeft"> </td><td class="mdescRight">box-based near field correction <br/></td></tr>
-<tr class="memitem:ga61bae6836e2c586b9de245b664853174"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga61bae6836e2c586b9de245b664853174"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga61bae6836e2c586b9de245b664853174">BuildTree</a> (int d, int t, double *x, double _Complex *alpha, int N)</td></tr>
-<tr class="memdesc:ga61bae6836e2c586b9de245b664853174"><td class="mdescLeft"> </td><td class="mdescRight">recursive sort of source knots dimension by dimension to get tree structure <br/></td></tr>
-<tr class="memitem:gab5a71f2cd5581bfa121b77aa6c981104"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab5a71f2cd5581bfa121b77aa6c981104"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gab5a71f2cd5581bfa121b77aa6c981104">SearchTree</a> (const int d, const int t, const double *x, const double _Complex *alpha, const double *xmin, const double *xmax, const int N, const kernel k, const double *param, const int Ad, const double _Complex *Add, const int p, const unsigned flags)</td></tr>
-<tr class="memdesc:gab5a71f2cd5581bfa121b77aa6c981104"><td class="mdescLeft"> </td><td class="mdescRight">fast search in tree of source knots for near field computation <br/></td></tr>
-<tr class="memitem:ga9a053d513b2eb19c5f1c70f16e0ae149"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga9a053d513b2eb19c5f1c70f16e0ae149">fastsum_init_guru</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths, int d, int N_total, int M_total, kernel k, double *param, unsigned flags, int nn, int m, int p, double e [...]
-<tr class="memdesc:ga9a053d513b2eb19c5f1c70f16e0ae149"><td class="mdescLeft"> </td><td class="mdescRight">initialization of fastsum plan <a href="#ga9a053d513b2eb19c5f1c70f16e0ae149"></a><br/></td></tr>
-<tr class="memitem:gab989ea4659fe681bd4c025e82756f769"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gab989ea4659fe681bd4c025e82756f769">fastsum_finalize</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gab989ea4659fe681bd4c025e82756f769"><td class="mdescLeft"> </td><td class="mdescRight">finalization of fastsum plan <a href="#gab989ea4659fe681bd4c025e82756f769"></a><br/></td></tr>
-<tr class="memitem:gaaee3dd954ffc99e4330fabe16ccad0fd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gaaee3dd954ffc99e4330fabe16ccad0fd">fastsum_exact</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gaaee3dd954ffc99e4330fabe16ccad0fd"><td class="mdescLeft"> </td><td class="mdescRight">direct computation of sums <a href="#gaaee3dd954ffc99e4330fabe16ccad0fd"></a><br/></td></tr>
-<tr class="memitem:ga197c16fcec7935886fc97d140f2b20ff"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#ga197c16fcec7935886fc97d140f2b20ff">fastsum_precompute</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:ga197c16fcec7935886fc97d140f2b20ff"><td class="mdescLeft"> </td><td class="mdescRight">precomputation for fastsum <a href="#ga197c16fcec7935886fc97d140f2b20ff"></a><br/></td></tr>
-<tr class="memitem:gaab2cc691ba59064c18d439c9fd2185e8"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsum.html#gaab2cc691ba59064c18d439c9fd2185e8">fastsum_trafo</a> (<a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> *ths)</td></tr>
-<tr class="memdesc:gaab2cc691ba59064c18d439c9fd2185e8"><td class="mdescLeft"> </td><td class="mdescRight">fast NFFT-based summation <a href="#gaab2cc691ba59064c18d439c9fd2185e8"></a><br/></td></tr>
-<tr class="memitem:ga81bf029788afe857325a760743f9fdd3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga81bf029788afe857325a760743f9fdd3"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>gaussian</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga44a58143a1f5c79b45c538134117e091"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga44a58143a1f5c79b45c538134117e091"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>multiquadric</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga889c2a1791e42bb8fa5a594588d68a5c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga889c2a1791e42bb8fa5a594588d68a5c"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>inverse_multiquadric</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga91be4b7bcc7d3a415e6b9b6ccaec39a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga91be4b7bcc7d3a415e6b9b6ccaec39a7"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>logarithm</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga7723414bb26fd9b1cc76686aeca57425"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7723414bb26fd9b1cc76686aeca57425"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>thinplate_spline</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:gaed5f8559b7b7a24674318cb58856602b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaed5f8559b7b7a24674318cb58856602b"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_square</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga635ef40090e33b4917a20ab62913ef05"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga635ef40090e33b4917a20ab62913ef05"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_modulus</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga6a6096569616d5cf9604c514f925581b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6a6096569616d5cf9604c514f925581b"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_x</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga221604ef3a42dc2de4f1ce68831e7524"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga221604ef3a42dc2de4f1ce68831e7524"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>inverse_multiquadric3</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga8946fd3f992262c24477b56cba844873"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8946fd3f992262c24477b56cba844873"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>sinc_kernel</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:gab7b7015bc5f2946583e7adbecb2cf630"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab7b7015bc5f2946583e7adbecb2cf630"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>cosc</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:gac693b76a84e9435efc06c1ef26fc7435"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac693b76a84e9435efc06c1ef26fc7435"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>kcot</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga1deb0e10a0d6cf7f11d8b90ee008eb53"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1deb0e10a0d6cf7f11d8b90ee008eb53"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_cube</b> (double x, int der, const double *param)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<p>Required for test if (ths->k == one_over_x) </p>
-<hr/><h2>Macro Definition Documentation</h2>
-<a class="anchor" id="gafa2dd15778c93b2eaa42de608fb4d1a8"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define NF_KUB</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Include header for C99 complex datatype. </p>
-<p>Include header for utils from NFFT3 library. Include header for NFFT3 library. </p>
-
-<p>Definition at line <a class="el" href="fastsum_8h_source.html#l00053">53</a> of file <a class="el" href="fastsum_8h_source.html">fastsum.h</a>.</p>
-
-</div>
-</div>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="ga9a053d513b2eb19c5f1c70f16e0ae149"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fastsum_init_guru </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>d</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N_total</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>M_total</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">kernel </td>
- <td class="paramname"><em>k</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>param</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>flags</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>nn</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>p</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double </td>
- <td class="paramname"><em>eps_I</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double </td>
- <td class="paramname"><em>eps_B</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>initialization of fastsum plan </p>
-<p>initialize fast summation plan</p>
-<dl class="params"><dt>Parameters:</dt><dd>
- <table class="params">
- <tr><td class="paramname">ths</td><td>The pointer to a fastsum plan. </td></tr>
- <tr><td class="paramname">d</td><td>The dimension of the problem. </td></tr>
- <tr><td class="paramname">N_total</td><td>The number of source knots x. </td></tr>
- <tr><td class="paramname">M_total</td><td>The number of target knots y. </td></tr>
- <tr><td class="paramname">kernel</td><td>The kernel function. </td></tr>
- <tr><td class="paramname">param</td><td>The parameters for the kernel function. </td></tr>
- <tr><td class="paramname">flags</td><td>Fastsum flags. </td></tr>
- <tr><td class="paramname">nn</td><td>The expansion degree. </td></tr>
- <tr><td class="paramname">m</td><td>The cut-off parameter for the NFFT. </td></tr>
- <tr><td class="paramname">p</td><td>The degree of smoothness. </td></tr>
- <tr><td class="paramname">eps_I</td><td>The inner boundary. </td></tr>
- <tr><td class="paramname">eps_B</td><td>the outer boundary. </td></tr>
- </table>
- </dd>
-</dl>
-
-<p>Definition at line <a class="el" href="fastsum_8c_source.html#l00600">600</a> of file <a class="el" href="fastsum_8c_source.html">fastsum.c</a>.</p>
-
-<p>References <a class="el" href="fastsum_8h_source.html#l00108">fastsum_plan_::Ad</a>, <a class="el" href="fastsum_8h_source.html#l00109">fastsum_plan_::Add</a>, <a class="el" href="fastsum_8h_source.html#l00080">fastsum_plan_::alpha</a>, <a class="el" href="fastsum_8h_source.html#l00098">fastsum_plan_::b</a>, <a class="el" href="fastsum_8h_source.html#l00075">fastsum_plan_::d</a>, <a class="el" href="fastsum_8h_source.html#l00102">fastsum_plan_::eps_B</a>, <a class="el" href="fastsum_8 [...]
-
-</div>
-</div>
-<a class="anchor" id="gab989ea4659fe681bd4c025e82756f769"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fastsum_finalize </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>finalization of fastsum plan </p>
-<p>finalize plan</p>
-<dl class="params"><dt>Parameters:</dt><dd>
- <table class="params">
- <tr><td class="paramname">ths</td><td>The pointer to a fastsum plan. </td></tr>
- </table>
- </dd>
-</dl>
-
-<p>Definition at line <a class="el" href="fastsum_8c_source.html#l00742">742</a> of file <a class="el" href="fastsum_8c_source.html">fastsum.c</a>.</p>
-
-<p>References <a class="el" href="fastsum_8h_source.html#l00109">fastsum_plan_::Add</a>, <a class="el" href="fastsum_8h_source.html#l00080">fastsum_plan_::alpha</a>, <a class="el" href="fastsum_8h_source.html#l00098">fastsum_plan_::b</a>, <a class="el" href="fastsum_8h_source.html#l00066">EXACT_NEARFIELD</a>, <a class="el" href="fastsum_8h_source.html#l00081">fastsum_plan_::f</a>, <a class="el" href="fastsum_8h_source.html#l00089">fastsum_plan_::flags</a>, <a class="el" href="fastsum_8h_ [...]
-
-</div>
-</div>
-<a class="anchor" id="gaaee3dd954ffc99e4330fabe16ccad0fd"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fastsum_exact </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>direct computation of sums </p>
-<p>direct summation</p>
-<dl class="params"><dt>Parameters:</dt><dd>
- <table class="params">
- <tr><td class="paramname">ths</td><td>The pointer to a fastsum plan. </td></tr>
- </table>
- </dd>
-</dl>
-
-<p>Definition at line <a class="el" href="fastsum_8c_source.html#l00775">775</a> of file <a class="el" href="fastsum_8c_source.html">fastsum.c</a>.</p>
-
-<p>References <a class="el" href="fastsum_8h_source.html#l00080">fastsum_plan_::alpha</a>, <a class="el" href="fastsum_8h_source.html#l00075">fastsum_plan_::d</a>, <a class="el" href="fastsum_8h_source.html#l00081">fastsum_plan_::f</a>, <a class="el" href="fastsum_8h_source.html#l00086">fastsum_plan_::k</a>, <a class="el" href="fastsum_8h_source.html#l00087">fastsum_plan_::kernel_param</a>, <a class="el" href="fastsum_8h_source.html#l00078">fastsum_plan_::M_total</a>, <a class="el" href= [...]
-
-</div>
-</div>
-<a class="anchor" id="ga197c16fcec7935886fc97d140f2b20ff"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fastsum_precompute </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>precomputation for fastsum </p>
-<p>sort source nodes, precompute Fourier coefficients, etc.</p>
-<dl class="params"><dt>Parameters:</dt><dd>
- <table class="params">
- <tr><td class="paramname">ths</td><td>The pointer to a fastsum plan. </td></tr>
- </table>
- </dd>
-</dl>
-
-<p>Definition at line <a class="el" href="fastsum_8c_source.html#l00802">802</a> of file <a class="el" href="fastsum_8c_source.html">fastsum.c</a>.</p>
-
-<p>References <a class="el" href="fastsum_8h_source.html#l00108">fastsum_plan_::Ad</a>, <a class="el" href="fastsum_8h_source.html#l00109">fastsum_plan_::Add</a>, <a class="el" href="fastsum_8h_source.html#l00080">fastsum_plan_::alpha</a>, <a class="el" href="fastsum_8h_source.html#l00098">fastsum_plan_::b</a>, <a class="el" href="fastsum_8c_source.html#l00363">BuildBox()</a>, <a class="el" href="fastsum_8c_source.html#l00510">BuildTree()</a>, <a class="el" href="fastsum_8h_source.html#l [...]
-
-</div>
-</div>
-<a class="anchor" id="gaab2cc691ba59064c18d439c9fd2185e8"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void fastsum_trafo </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="group__applications__fastsum.html#gad953252f6b309404991c4afc7b98b34b">fastsum_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>fast NFFT-based summation </p>
-<p>fast NFFT-based summation algorithm</p>
-<dl class="params"><dt>Parameters:</dt><dd>
- <table class="params">
- <tr><td class="paramname">ths</td><td>The pointer to a fastsum plan. </td></tr>
- </table>
- </dd>
-</dl>
-
-<p>Definition at line <a class="el" href="fastsum_8c_source.html#l00940">940</a> of file <a class="el" href="fastsum_8c_source.html">fastsum.c</a>.</p>
-
-<p>References <a class="el" href="fastsum_8h_source.html#l00108">fastsum_plan_::Ad</a>, <a class="el" href="fastsum_8h_source.html#l00109">fastsum_plan_::Add</a>, <a class="el" href="fastsum_8h_source.html#l00080">fastsum_plan_::alpha</a>, <a class="el" href="fastsum_8h_source.html#l00098">fastsum_plan_::b</a>, <a class="el" href="fastsum_8h_source.html#l00075">fastsum_plan_::d</a>, <a class="el" href="fastsum_8h_source.html#l00101">fastsum_plan_::eps_I</a>, <a class="el" href="fastsum_8 [...]
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__fastsumS2.html b/doc/api/html/group__applications__fastsumS2.html
deleted file mode 100644
index 1c8f80e..0000000
--- a/doc/api/html/group__applications__fastsumS2.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Fast summation of radial functions on the sphere
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> </div>
- <div class="headertitle">
-<div class="title">Fast summation of radial functions on the sphere</div> </div>
-<div class="ingroups"><a class="el" href="group__applications.html">Applications</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__applications__fastsumS2__test"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html">fastsumS2_matlab</a></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__fastsumS2__test.html b/doc/api/html/group__applications__fastsumS2__test.html
deleted file mode 100644
index 273191c..0000000
--- a/doc/api/html/group__applications__fastsumS2__test.html
+++ /dev/null
@@ -1,381 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsumS2_matlab
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#define-members">Macros</a> |
-<a href="#enum-members">Enumerations</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">fastsumS2_matlab</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__fastsumS2.html">Fast summation of radial functions on the sphere</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:ga0512f12a35b9bcac68ac0d36cd9b50d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0512f12a35b9bcac68ac0d36cd9b50d5"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>SYMBOL_ABEL_POISSON</b>(k, h) (pow(h,k))</td></tr>
-<tr class="memitem:ga580e1a9e3fba99e0750908b58010dc00"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga580e1a9e3fba99e0750908b58010dc00"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>SYMBOL_SINGULARITY</b>(k, h) ((2.0/(2*k+1))*pow(h,k))</td></tr>
-<tr class="memitem:ga0452118afd292fc346ed8116915d001e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0452118afd292fc346ed8116915d001e"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#ga0452118afd292fc346ed8116915d001e">KT_ABEL_POISSON</a> (0)</td></tr>
-<tr class="memdesc:ga0452118afd292fc346ed8116915d001e"><td class="mdescLeft"> </td><td class="mdescRight">Abel-Poisson kernel. <br/></td></tr>
-<tr class="memitem:ga814ba1b58f017f7a67a85f68d4719814"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga814ba1b58f017f7a67a85f68d4719814"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#ga814ba1b58f017f7a67a85f68d4719814">KT_SINGULARITY</a> (1)</td></tr>
-<tr class="memdesc:ga814ba1b58f017f7a67a85f68d4719814"><td class="mdescLeft"> </td><td class="mdescRight">Singularity kernel. <br/></td></tr>
-<tr class="memitem:gae2a54d1d59448d9f02697f89a6ec7306"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae2a54d1d59448d9f02697f89a6ec7306"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#gae2a54d1d59448d9f02697f89a6ec7306">KT_LOC_SUPP</a> (2)</td></tr>
-<tr class="memdesc:gae2a54d1d59448d9f02697f89a6ec7306"><td class="mdescLeft"> </td><td class="mdescRight">Locally supported kernel. <br/></td></tr>
-<tr class="memitem:ga3a03d7fde39f1ba22a4549e72c8cbf39"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3a03d7fde39f1ba22a4549e72c8cbf39"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#ga3a03d7fde39f1ba22a4549e72c8cbf39">KT_GAUSSIAN</a> (3)</td></tr>
-<tr class="memdesc:ga3a03d7fde39f1ba22a4549e72c8cbf39"><td class="mdescLeft"> </td><td class="mdescRight">Gaussian kernel. <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="enum-members"></a>
-Enumerations</h2></td></tr>
-<tr class="memitem:gad09943f93b91eb526d8081a4963eead8"><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#gad09943f93b91eb526d8081a4963eead8">pvalue</a> { <b>NO</b> = 0,
-<b>YES</b> = 1,
-<b>BOTH</b> = 2
- }</td></tr>
-<tr class="memdesc:gad09943f93b91eb526d8081a4963eead8"><td class="mdescLeft"> </td><td class="mdescRight">Enumeration type for yes/no/both-type parameters. <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga764f956ac40df99e776155bfa8da2e93"><td class="memItemLeft" align="right" valign="top">static double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#ga764f956ac40df99e776155bfa8da2e93">innerProduct</a> (const double phi1, const double theta1, const double phi2, const double theta2)</td></tr>
-<tr class="memdesc:ga764f956ac40df99e776155bfa8da2e93"><td class="mdescLeft"> </td><td class="mdescRight">Computes the <img class="formulaInl" alt="$\mathbb{R}^3$" src="form_96.png"/> standard inner product between two vectors on the unit sphere <img class="formulaInl" alt="$\mathbb{S}^2$" src="form_97.png"/> given in spherical coordinates. <a href="#ga764f956ac40df99e776155bfa8da2e93"></a><br/></td></tr>
-<tr class="memitem:ga6db9bf5c4ee6ca573d6d08a8202a5314"><td class="memItemLeft" align="right" valign="top">static double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#ga6db9bf5c4ee6ca573d6d08a8202a5314">poissonKernel</a> (const double x, const double h)</td></tr>
-<tr class="memdesc:ga6db9bf5c4ee6ca573d6d08a8202a5314"><td class="mdescLeft"> </td><td class="mdescRight">Evaluates the Poisson kernel <img class="formulaInl" alt="$Q_h: [-1,1] \rightarrow \mathbb{R}$" src="form_103.png"/> at a node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/>. <a href="#ga6db9bf5c4ee6ca573d6d08a8202a5314"></a><br/></td></tr>
-<tr class="memitem:ga3f82140c739f6fcf9bc17a03a09f580d"><td class="memItemLeft" align="right" valign="top">static double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#ga3f82140c739f6fcf9bc17a03a09f580d">singularityKernel</a> (const double x, const double h)</td></tr>
-<tr class="memdesc:ga3f82140c739f6fcf9bc17a03a09f580d"><td class="mdescLeft"> </td><td class="mdescRight">Evaluates the singularity kernel <img class="formulaInl" alt="$S_h: [-1,1] \rightarrow \mathbb{R}$" src="form_107.png"/> at a node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/>. <a href="#ga3f82140c739f6fcf9bc17a03a09f580d"></a><br/></td></tr>
-<tr class="memitem:ga226aec741614e0a2d2a9305bc2c28063"><td class="memItemLeft" align="right" valign="top">static double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#ga226aec741614e0a2d2a9305bc2c28063">locallySupportedKernel</a> (const double x, const double h, const double lambda)</td></tr>
-<tr class="memdesc:ga226aec741614e0a2d2a9305bc2c28063"><td class="mdescLeft"> </td><td class="mdescRight">Evaluates the locally supported kernel <img class="formulaInl" alt="$L_{h,\lambda}: [-1,1] \rightarrow \mathbb{R}$" src="form_109.png"/> at a node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/>. <a href="#ga226aec741614e0a2d2a9305bc2c28063"></a><br/></td></tr>
-<tr class="memitem:ga22bfa09881115e4c4f8fef59538d1ce7"><td class="memItemLeft" align="right" valign="top">static double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#ga22bfa09881115e4c4f8fef59538d1ce7">gaussianKernel</a> (const double x, const double sigma)</td></tr>
-<tr class="memdesc:ga22bfa09881115e4c4f8fef59538d1ce7"><td class="mdescLeft"> </td><td class="mdescRight">Evaluates the spherical Gaussian kernel <img class="formulaInl" alt="$G_\sigma: [-1,1] \rightarrow \mathbb{R}$" src="form_112.png"/> at a node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/>. <a href="#ga22bfa09881115e4c4f8fef59538d1ce7"></a><br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__fastsumS2__test.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">The main program. <a href="#ga3c04138a5bfe5d72780bb7e82a18e627"></a><br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="ga764f956ac40df99e776155bfa8da2e93"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static double innerProduct </td>
- <td>(</td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>phi1</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>theta1</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>phi2</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>theta2</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Computes the <img class="formulaInl" alt="$\mathbb{R}^3$" src="form_96.png"/> standard inner product between two vectors on the unit sphere <img class="formulaInl" alt="$\mathbb{S}^2$" src="form_97.png"/> given in spherical coordinates. </p>
-<ul>
-<li>phi1 The angle <img class="formulaInl" alt="$\varphi_1 \in [-\pi,\pi)$" src="form_98.png"/> of the first vector </li>
-<li>theta1 The angle <img class="formulaInl" alt="$\vartheta_1 \in [0,\pi]$" src="form_99.png"/> of the first vector </li>
-<li>phi2 The angle <img class="formulaInl" alt="$\varphi_2 \in [-\pi,\pi)$" src="form_100.png"/> of the second vector </li>
-<li>theta2 The angle <img class="formulaInl" alt="$\vartheta_2 \in [0,\pi]$" src="form_101.png"/> of the second vector</li>
-</ul>
-<dl class="section return"><dt>Returns:</dt><dd>The inner product <img class="formulaInl" alt="$\cos \vartheta_1 \cos \vartheta_2 + \sin \vartheta_1 \sin(\vartheta_2 \cos(\varphi_1 - \varphi_2)$" src="form_102.png"/></dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="fastsumS2_8c_source.html#l00078">78</a> of file <a class="el" href="fastsumS2_8c_source.html">fastsumS2.c</a>.</p>
-
-<p>Referenced by <a class="el" href="fastsumS2_8c_source.html#l00164">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga6db9bf5c4ee6ca573d6d08a8202a5314"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static double poissonKernel </td>
- <td>(</td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>h</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Evaluates the Poisson kernel <img class="formulaInl" alt="$Q_h: [-1,1] \rightarrow \mathbb{R}$" src="form_103.png"/> at a node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/>. </p>
-<ul>
-<li>x The node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/> </li>
-<li>h The parameter <img class="formulaInl" alt="$h \in (0,1)$" src="form_105.png"/></li>
-</ul>
-<dl class="section return"><dt>Returns:</dt><dd>The value of the Poisson kernel <img class="formulaInl" alt="$Q_h(x)$" src="form_106.png"/> at the node <img class="formulaInl" alt="$x$" src="form_92.png"/></dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="fastsumS2_8c_source.html#l00097">97</a> of file <a class="el" href="fastsumS2_8c_source.html">fastsumS2.c</a>.</p>
-
-<p>Referenced by <a class="el" href="fastsumS2_8c_source.html#l00164">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga3f82140c739f6fcf9bc17a03a09f580d"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static double singularityKernel </td>
- <td>(</td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>h</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Evaluates the singularity kernel <img class="formulaInl" alt="$S_h: [-1,1] \rightarrow \mathbb{R}$" src="form_107.png"/> at a node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/>. </p>
-<ul>
-<li>x The node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/> </li>
-<li>h The parameter <img class="formulaInl" alt="$h \in (0,1)$" src="form_105.png"/></li>
-</ul>
-<dl class="section return"><dt>Returns:</dt><dd>The value of the Poisson kernel <img class="formulaInl" alt="$S_h(x)$" src="form_108.png"/> at the node <img class="formulaInl" alt="$x$" src="form_92.png"/></dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="fastsumS2_8c_source.html#l00113">113</a> of file <a class="el" href="fastsumS2_8c_source.html">fastsumS2.c</a>.</p>
-
-<p>Referenced by <a class="el" href="fastsumS2_8c_source.html#l00164">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga226aec741614e0a2d2a9305bc2c28063"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static double locallySupportedKernel </td>
- <td>(</td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>h</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>lambda</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Evaluates the locally supported kernel <img class="formulaInl" alt="$L_{h,\lambda}: [-1,1] \rightarrow \mathbb{R}$" src="form_109.png"/> at a node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/>. </p>
-<ul>
-<li>x The node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/> </li>
-<li>h The parameter <img class="formulaInl" alt="$h \in (0,1)$" src="form_105.png"/> </li>
-<li>lambda The parameter <img class="formulaInl" alt="$\lambda \in \mathbb{N}_0$" src="form_110.png"/></li>
-</ul>
-<dl class="section return"><dt>Returns:</dt><dd>The value of the locally supported kernel <img class="formulaInl" alt="$L_{h,\lambda}(x)$" src="form_111.png"/> at the node <img class="formulaInl" alt="$x$" src="form_92.png"/></dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="fastsumS2_8c_source.html#l00131">131</a> of file <a class="el" href="fastsumS2_8c_source.html">fastsumS2.c</a>.</p>
-
-<p>Referenced by <a class="el" href="fastsumS2_8c_source.html#l00164">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga22bfa09881115e4c4f8fef59538d1ce7"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static double gaussianKernel </td>
- <td>(</td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const double </td>
- <td class="paramname"><em>sigma</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Evaluates the spherical Gaussian kernel <img class="formulaInl" alt="$G_\sigma: [-1,1] \rightarrow \mathbb{R}$" src="form_112.png"/> at a node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/>. </p>
-<ul>
-<li>x The node <img class="formulaInl" alt="$x \in [-1,1]$" src="form_104.png"/> </li>
-<li>sigma The parameter <img class="formulaInl" alt="$\sigma \in \mathbb{R}_+$" src="form_113.png"/></li>
-</ul>
-<dl class="section return"><dt>Returns:</dt><dd>The value of the pherical Gaussian kernel <img class="formulaInl" alt="$G_\sigma(x)$" src="form_114.png"/> at the node <img class="formulaInl" alt="$x$" src="form_92.png"/></dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="fastsumS2_8c_source.html#l00149">149</a> of file <a class="el" href="fastsumS2_8c_source.html">fastsumS2.c</a>.</p>
-
-<p>Referenced by <a class="el" href="fastsumS2_8c_source.html#l00164">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int main </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>argc</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">char ** </td>
- <td class="paramname"><em>argv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>The main program. </p>
-<dl class="params"><dt>Parameters:</dt><dd>
- <table class="params">
- <tr><td class="paramname">argc</td><td>The number of arguments </td></tr>
- <tr><td class="paramname">argv</td><td>An array containing the arguments as C-strings</td></tr>
- </table>
- </dd>
-</dl>
-<dl class="section return"><dt>Returns:</dt><dd>Exit code</dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="fastsumS2_8c_source.html#l00164">164</a> of file <a class="el" href="fastsumS2_8c_source.html">fastsumS2.c</a>.</p>
-
-<p>References <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::f</a>, <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::f_hat</a>, <a class="el" href="fastsumS2_8c_source.html#l00149">gaussianKernel()</a>, <a class="el" href="fastsumS2_8c_source.html#l00078">innerProduct()</a>, <a class="el" href="fastsumS2_8c_source.html#l00053">KT_ABEL_POISSON</a>, <a class="el" href="fastsumS2_8c_source.html#l00059">KT_GAUSSIAN</a>, <a class="el" href="fastsumS2_8c_source.html#l [...]
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__fastsum__matlab.html b/doc/api/html/group__applications__fastsum__matlab.html
deleted file mode 100644
index eaa3be2..0000000
--- a/doc/api/html/group__applications__fastsum__matlab.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum_matlab
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">fastsum_matlab</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__fastsum.html">Fast summation</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__fastsum__test.html b/doc/api/html/group__applications__fastsum__test.html
deleted file mode 100644
index e5bf0f7..0000000
--- a/doc/api/html/group__applications__fastsum__test.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum_test
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">fastsum_test</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__fastsum.html">Fast summation</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__iterS2.html b/doc/api/html/group__applications__iterS2.html
deleted file mode 100644
index dc3cec0..0000000
--- a/doc/api/html/group__applications__iterS2.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Iterative reconstruction on the sphere S2
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> </div>
- <div class="headertitle">
-<div class="title">Iterative reconstruction on the sphere S2</div> </div>
-<div class="ingroups"><a class="el" href="group__applications.html">Applications</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__applications__iterS2__matlab"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__iterS2__matlab.html">iterS2_matlab</a></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__iterS2__matlab.html b/doc/api/html/group__applications__iterS2__matlab.html
deleted file mode 100644
index 64b8664..0000000
--- a/doc/api/html/group__applications__iterS2__matlab.html
+++ /dev/null
@@ -1,101 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - iterS2_matlab
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#enum-members">Enumerations</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">iterS2_matlab</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__iterS2.html">Iterative reconstruction on the sphere S2</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="enum-members"></a>
-Enumerations</h2></td></tr>
-<tr class="memitem:ga7c6368b321bd9acd0149b030bb8275ed"><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__iterS2__matlab.html#ga7c6368b321bd9acd0149b030bb8275ed">boolean</a> { <b>NO</b> = 0,
-<b>YES</b> = 1,
-<b>NO</b> = 0,
-<b>YES</b> = 1
- }</td></tr>
-<tr class="memdesc:ga7c6368b321bd9acd0149b030bb8275ed"><td class="mdescLeft"> </td><td class="mdescRight">Enumeration for parameter values. <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__iterS2__matlab.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">The main program. <a href="#ga3c04138a5bfe5d72780bb7e82a18e627"></a><br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int main </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>argc</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">char ** </td>
- <td class="paramname"><em>argv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>The main program. </p>
-<dl class="params"><dt>Parameters:</dt><dd>
- <table class="params">
- <tr><td class="paramname">argc</td><td>The number of arguments </td></tr>
- <tr><td class="paramname">argv</td><td>An array containing the arguments as C-strings</td></tr>
- </table>
- </dd>
-</dl>
-<dl class="section return"><dt>Returns:</dt><dd>Exit code</dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="iterS2_8c_source.html#l00058">58</a> of file <a class="el" href="iterS2_8c_source.html">iterS2.c</a>.</p>
-
-<p>References <a class="el" href="nfft3_8h_source.html#l00763">solver_plan_complex::dot_r_iter</a>, <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::f</a>, <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::f_hat</a>, <a class="el" href="nfft3_8h_source.html#l00763">solver_plan_complex::f_hat_iter</a>, <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::M_total</a>, <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::N_total</a>, <a class="el" href [...]
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri.html b/doc/api/html/group__applications__mri.html
deleted file mode 100644
index 699a940..0000000
--- a/doc/api/html/group__applications__mri.html
+++ /dev/null
@@ -1,49 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Transforms in magnetic resonance imaging
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> </div>
- <div class="headertitle">
-<div class="title">Transforms in magnetic resonance imaging</div> </div>
-<div class="ingroups"><a class="el" href="group__applications.html">Applications</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__applications__mri2d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d.html">2D transforms</a></td></tr>
-<tr class="memitem:group__applications__mri3d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d.html">3D transforms</a></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri2d.html b/doc/api/html/group__applications__mri2d.html
deleted file mode 100644
index f55cc89..0000000
--- a/doc/api/html/group__applications__mri2d.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - 2D transforms
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> </div>
- <div class="headertitle">
-<div class="title">2D transforms</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri.html">Transforms in magnetic resonance imaging</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__applications__mri2d__construct__data__2d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__construct__data__2d.html">construct_data_2d</a></td></tr>
-<tr class="memitem:group__applications__mri2d__construct__data__inh__2d1d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__construct__data__inh__2d1d.html">construct_data__inh_2d1d</a></td></tr>
-<tr class="memitem:group__applications__mri2d__construct__data__inh__3d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__construct__data__inh__3d.html">construct_data_inh_3d</a></td></tr>
-<tr class="memitem:group__applications__mri2d__reconstruct__data__2d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__reconstruct__data__2d.html">reconstruct_data_2d</a></td></tr>
-<tr class="memitem:group__applications__mri2d__construct__data__gridding"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__construct__data__gridding.html">construct_data_gridding</a></td></tr>
-<tr class="memitem:group__applications__mri2d__reconstruct__data__inh__2d1d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__reconstruct__data__inh__2d1d.html">reconstruct_data__inh_2d1d</a></td></tr>
-<tr class="memitem:group__applications__mri2d__reconstruct__data__inh__3d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__reconstruct__data__inh__3d.html">reconstruct_data_inh_3d</a></td></tr>
-<tr class="memitem:group__applications__mri2d__construct__data__inh__nnfft"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__construct__data__inh__nnfft.html">construct_data_inh_nnfft</a></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri2d__construct__data__2d.html b/doc/api/html/group__applications__mri2d__construct__data__2d.html
deleted file mode 100644
index 41901ef..0000000
--- a/doc/api/html/group__applications__mri2d__construct__data__2d.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_2d
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">construct_data_2d</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri2d.html">2D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga7cad9b408cf07cdd4fa31da9c325dac5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7cad9b408cf07cdd4fa31da9c325dac5"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__construct__data__2d.html#ga7cad9b408cf07cdd4fa31da9c325dac5">construct</a> (char *file, int N, int M)</td></tr>
-<tr class="memdesc:ga7cad9b408cf07cdd4fa31da9c325dac5"><td class="mdescLeft"> </td><td class="mdescRight">construct makes an 2d-nfft <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri2d__construct__data__gridding.html b/doc/api/html/group__applications__mri2d__construct__data__gridding.html
deleted file mode 100644
index 585e622..0000000
--- a/doc/api/html/group__applications__mri2d__construct__data__gridding.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_gridding
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">construct_data_gridding</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri2d.html">2D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:gaafaf486ca8f1725dce039d2e2d150340"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaafaf486ca8f1725dce039d2e2d150340"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__construct__data__gridding.html#gaafaf486ca8f1725dce039d2e2d150340">reconstruct</a> (char *filename, int N, int M, int weight)</td></tr>
-<tr class="memdesc:gaafaf486ca8f1725dce039d2e2d150340"><td class="mdescLeft"> </td><td class="mdescRight">reconstruct makes a 2d-adjoint-nfft <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri2d__construct__data__inh__2d1d.html b/doc/api/html/group__applications__mri2d__construct__data__inh__2d1d.html
deleted file mode 100644
index 772ce26..0000000
--- a/doc/api/html/group__applications__mri2d__construct__data__inh__2d1d.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data__inh_2d1d
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">construct_data__inh_2d1d</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri2d.html">2D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga7cad9b408cf07cdd4fa31da9c325dac5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7cad9b408cf07cdd4fa31da9c325dac5"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__construct__data__inh__2d1d.html#ga7cad9b408cf07cdd4fa31da9c325dac5">construct</a> (char *file, int N, int M)</td></tr>
-<tr class="memdesc:ga7cad9b408cf07cdd4fa31da9c325dac5"><td class="mdescLeft"> </td><td class="mdescRight">construct <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri2d__construct__data__inh__3d.html b/doc/api/html/group__applications__mri2d__construct__data__inh__3d.html
deleted file mode 100644
index 6cf315b..0000000
--- a/doc/api/html/group__applications__mri2d__construct__data__inh__3d.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_inh_3d
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">construct_data_inh_3d</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri2d.html">2D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga7cad9b408cf07cdd4fa31da9c325dac5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7cad9b408cf07cdd4fa31da9c325dac5"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__construct__data__inh__3d.html#ga7cad9b408cf07cdd4fa31da9c325dac5">construct</a> (char *file, int N, int M)</td></tr>
-<tr class="memdesc:ga7cad9b408cf07cdd4fa31da9c325dac5"><td class="mdescLeft"> </td><td class="mdescRight">construct <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri2d__construct__data__inh__nnfft.html b/doc/api/html/group__applications__mri2d__construct__data__inh__nnfft.html
deleted file mode 100644
index 103c6ae..0000000
--- a/doc/api/html/group__applications__mri2d__construct__data__inh__nnfft.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_inh_nnfft
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">construct_data_inh_nnfft</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri2d.html">2D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga75582a0ebe96f1391e90db0053ee981c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga75582a0ebe96f1391e90db0053ee981c"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__construct__data__inh__nnfft.html#ga75582a0ebe96f1391e90db0053ee981c">reconstruct</a> (char *filename, int N, int M, int iteration, int weight)</td></tr>
-<tr class="memdesc:ga75582a0ebe96f1391e90db0053ee981c"><td class="mdescLeft"> </td><td class="mdescRight">reconstruct <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri2d__reconstruct__data__2d.html b/doc/api/html/group__applications__mri2d__reconstruct__data__2d.html
deleted file mode 100644
index bd6081e..0000000
--- a/doc/api/html/group__applications__mri2d__reconstruct__data__2d.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_2d
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">reconstruct_data_2d</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri2d.html">2D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga75582a0ebe96f1391e90db0053ee981c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga75582a0ebe96f1391e90db0053ee981c"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri2d__reconstruct__data__2d.html#ga75582a0ebe96f1391e90db0053ee981c">reconstruct</a> (char *filename, int N, int M, int iteration, int weight)</td></tr>
-<tr class="memdesc:ga75582a0ebe96f1391e90db0053ee981c"><td class="mdescLeft"> </td><td class="mdescRight">reconstruct makes an inverse 2d nfft <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri2d__reconstruct__data__inh__2d1d.html b/doc/api/html/group__applications__mri2d__reconstruct__data__inh__2d1d.html
deleted file mode 100644
index 517f6ee..0000000
--- a/doc/api/html/group__applications__mri2d__reconstruct__data__inh__2d1d.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data__inh_2d1d
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">reconstruct_data__inh_2d1d</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri2d.html">2D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga75582a0ebe96f1391e90db0053ee981c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga75582a0ebe96f1391e90db0053ee981c"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>reconstruct</b> (char *filename, int N, int M, int iteration, int weight)</td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri2d__reconstruct__data__inh__3d.html b/doc/api/html/group__applications__mri2d__reconstruct__data__inh__3d.html
deleted file mode 100644
index 903f911..0000000
--- a/doc/api/html/group__applications__mri2d__reconstruct__data__inh__3d.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_inh_3d
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">reconstruct_data_inh_3d</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri2d.html">2D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga75582a0ebe96f1391e90db0053ee981c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga75582a0ebe96f1391e90db0053ee981c"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>reconstruct</b> (char *filename, int N, int M, int iteration, int weight)</td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri3d.html b/doc/api/html/group__applications__mri3d.html
deleted file mode 100644
index 6e21c3f..0000000
--- a/doc/api/html/group__applications__mri3d.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - 3D transforms
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> </div>
- <div class="headertitle">
-<div class="title">3D transforms</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri.html">Transforms in magnetic resonance imaging</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__applications__mri3d__construct__data__1d2d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__construct__data__1d2d.html">construct_data_1d2d</a></td></tr>
-<tr class="memitem:group__applications__mri3d__construct__data__3d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__construct__data__3d.html">construct_data_3d</a></td></tr>
-<tr class="memitem:group__applications__mri3d__reconstruct__data__1d2d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__reconstruct__data__1d2d.html">reconstruct_data_1d2d</a></td></tr>
-<tr class="memitem:group__applications__mri3d__reconstruct__data__3d"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__reconstruct__data__3d.html">reconstruct_data_3d</a></td></tr>
-<tr class="memitem:group__applications__mri3d__reconstruct__data__gridding"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__reconstruct__data__gridding.html">reconstruct_data_gridding</a></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri3d__construct__data__1d2d.html b/doc/api/html/group__applications__mri3d__construct__data__1d2d.html
deleted file mode 100644
index 1b75b5f..0000000
--- a/doc/api/html/group__applications__mri3d__construct__data__1d2d.html
+++ /dev/null
@@ -1,58 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_1d2d
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">construct_data_1d2d</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri3d.html">3D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga3b7e53294d00c663429518cb2f7c7791"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3b7e53294d00c663429518cb2f7c7791"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__construct__data__1d2d.html#ga3b7e53294d00c663429518cb2f7c7791">construct</a> (char *file, int N, int M, int Z, fftw_complex *mem)</td></tr>
-<tr class="memdesc:ga3b7e53294d00c663429518cb2f7c7791"><td class="mdescLeft"> </td><td class="mdescRight">construct makes an 2d-nfft for every slice <br/></td></tr>
-<tr class="memitem:gafa82bf5df93804a1760082b88492b8d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafa82bf5df93804a1760082b88492b8d5"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__construct__data__1d2d.html#gafa82bf5df93804a1760082b88492b8d5">fft</a> (int N, int M, int Z, fftw_complex *mem)</td></tr>
-<tr class="memdesc:gafa82bf5df93804a1760082b88492b8d5"><td class="mdescLeft"> </td><td class="mdescRight">fft makes an 1D-ftt for every knot through all layers <br/></td></tr>
-<tr class="memitem:ga324751353a7eefbe2ad622201dd52d5f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga324751353a7eefbe2ad622201dd52d5f"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__construct__data__1d2d.html#ga324751353a7eefbe2ad622201dd52d5f">read_data</a> (int N, int M, int Z, fftw_complex *mem)</td></tr>
-<tr class="memdesc:ga324751353a7eefbe2ad622201dd52d5f"><td class="mdescLeft"> </td><td class="mdescRight">read fills the memory with the file input_data_f.dat as the real part of f and with zeros for the imag part of f <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri3d__construct__data__3d.html b/doc/api/html/group__applications__mri3d__construct__data__3d.html
deleted file mode 100644
index de2a591..0000000
--- a/doc/api/html/group__applications__mri3d__construct__data__3d.html
+++ /dev/null
@@ -1,51 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - construct_data_3d
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">construct_data_3d</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri3d.html">3D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:gaf6e5c02bb968f96600d6f91018b38ee1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf6e5c02bb968f96600d6f91018b38ee1"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>construct</b> (char *file, int N, int M, int Z)</td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri3d__reconstruct__data__1d2d.html b/doc/api/html/group__applications__mri3d__reconstruct__data__1d2d.html
deleted file mode 100644
index f39a095..0000000
--- a/doc/api/html/group__applications__mri3d__reconstruct__data__1d2d.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_1d2d
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">reconstruct_data_1d2d</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri3d.html">3D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:gad67335b03b6fec43e0dff3512c8f6d68"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad67335b03b6fec43e0dff3512c8f6d68"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__reconstruct__data__1d2d.html#gad67335b03b6fec43e0dff3512c8f6d68">reconstruct</a> (char *filename, int N, int M, int Z, int iteration, int weight, fftw_complex *mem)</td></tr>
-<tr class="memdesc:gad67335b03b6fec43e0dff3512c8f6d68"><td class="mdescLeft"> </td><td class="mdescRight">reconstruct makes an inverse 2d-nfft for every slice <br/></td></tr>
-<tr class="memitem:gaa30709aaef018deecdd911083fadb877"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa30709aaef018deecdd911083fadb877"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__reconstruct__data__1d2d.html#gaa30709aaef018deecdd911083fadb877">print</a> (int N, int M, int Z, fftw_complex *mem)</td></tr>
-<tr class="memdesc:gaa30709aaef018deecdd911083fadb877"><td class="mdescLeft"> </td><td class="mdescRight">print writes the memory back in a file output_real.dat for the real part and output_imag.dat for the imaginary part <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri3d__reconstruct__data__3d.html b/doc/api/html/group__applications__mri3d__reconstruct__data__3d.html
deleted file mode 100644
index 7c7160d..0000000
--- a/doc/api/html/group__applications__mri3d__reconstruct__data__3d.html
+++ /dev/null
@@ -1,52 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_3d
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">reconstruct_data_3d</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri3d.html">3D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga6a872b7d27169c9b01e09dcf45b9737d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6a872b7d27169c9b01e09dcf45b9737d"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__reconstruct__data__3d.html#ga6a872b7d27169c9b01e09dcf45b9737d">reconstruct</a> (char *filename, int N, int M, int Z, int iteration, int weight)</td></tr>
-<tr class="memdesc:ga6a872b7d27169c9b01e09dcf45b9737d"><td class="mdescLeft"> </td><td class="mdescRight">reconstruct makes an inverse 3d-nfft <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__mri3d__reconstruct__data__gridding.html b/doc/api/html/group__applications__mri3d__reconstruct__data__gridding.html
deleted file mode 100644
index 228dd74..0000000
--- a/doc/api/html/group__applications__mri3d__reconstruct__data__gridding.html
+++ /dev/null
@@ -1,55 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_gridding
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">reconstruct_data_gridding</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__mri3d.html">3D transforms</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga0152e0943d96d847eaaaa8a9f487eb9e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga0152e0943d96d847eaaaa8a9f487eb9e"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__reconstruct__data__gridding.html#ga0152e0943d96d847eaaaa8a9f487eb9e">reconstruct</a> (char *filename, int N, int M, int Z, int weight, fftw_complex *mem)</td></tr>
-<tr class="memdesc:ga0152e0943d96d847eaaaa8a9f487eb9e"><td class="mdescLeft"> </td><td class="mdescRight">reconstruct makes an 2d-adjoint-nfft for every slice <br/></td></tr>
-<tr class="memitem:gaa30709aaef018deecdd911083fadb877"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa30709aaef018deecdd911083fadb877"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__mri3d__reconstruct__data__gridding.html#gaa30709aaef018deecdd911083fadb877">print</a> (int N, int M, int Z, fftw_complex *mem)</td></tr>
-<tr class="memdesc:gaa30709aaef018deecdd911083fadb877"><td class="mdescLeft"> </td><td class="mdescRight">print writes the memory back in a file output_real.dat for the real part and output_imag.dat for the imaginary part <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__polarFFT.html b/doc/api/html/group__applications__polarFFT.html
deleted file mode 100644
index 781d407..0000000
--- a/doc/api/html/group__applications__polarFFT.html
+++ /dev/null
@@ -1,50 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Polar FFT
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> </div>
- <div class="headertitle">
-<div class="title">Polar FFT</div> </div>
-<div class="ingroups"><a class="el" href="group__applications.html">Applications</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__applications__polarFFT__linogramm"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html">linogram_fft_test</a></td></tr>
-<tr class="memitem:group__applications__polarFFT__mpolar"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html">mpolar_fft_test</a></td></tr>
-<tr class="memitem:group__applications__polarFFT__polar"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html">polar_fft_test</a></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__polarFFT__linogramm.html b/doc/api/html/group__applications__polarFFT__linogramm.html
deleted file mode 100644
index 599a0fd..0000000
--- a/doc/api/html/group__applications__polarFFT__linogramm.html
+++ /dev/null
@@ -1,71 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - linogram_fft_test
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> |
-<a href="#var-members">Variables</a> </div>
- <div class="headertitle">
-<div class="title">linogram_fft_test</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__polarFFT.html">Polar FFT</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga9a5ff165ab1e23af77ab6f6108bb6310"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9a5ff165ab1e23af77ab6f6108bb6310"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#ga9a5ff165ab1e23af77ab6f6108bb6310">linogram_grid</a> (int T, int R, double *x, double *w)</td></tr>
-<tr class="memdesc:ga9a5ff165ab1e23af77ab6f6108bb6310"><td class="mdescLeft"> </td><td class="mdescRight">Generates the points x with weights w for the linogram grid with T slopes and R offsets. <br/></td></tr>
-<tr class="memitem:ga708f5c41add2af92a97339dee1c068dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga708f5c41add2af92a97339dee1c068dc"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#ga708f5c41add2af92a97339dee1c068dc">linogram_dft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:ga708f5c41add2af92a97339dee1c068dc"><td class="mdescLeft"> </td><td class="mdescRight">discrete pseudo-polar FFT <br/></td></tr>
-<tr class="memitem:gaea5025fe751ace25f818ecb3cfc16444"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaea5025fe751ace25f818ecb3cfc16444"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#gaea5025fe751ace25f818ecb3cfc16444">linogram_fft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:gaea5025fe751ace25f818ecb3cfc16444"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based pseudo-polar FFT. <br/></td></tr>
-<tr class="memitem:gaf44988058d3000a477c046c172c26265"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf44988058d3000a477c046c172c26265"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#gaf44988058d3000a477c046c172c26265">inverse_linogram_fft</a> (fftw_complex *f, int T, int R, fftw_complex *f_hat, int NN, int <a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">max_i</a>, int m)</td></tr>
-<tr class="memdesc:gaf44988058d3000a477c046c172c26265"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based inverse pseudo-polar FFT. <br/></td></tr>
-<tr class="memitem:gac2a323224e3346e37714575d49c65432"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac2a323224e3346e37714575d49c65432"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#gac2a323224e3346e37714575d49c65432">comparison_fft</a> (FILE *fp, int N, int T, int R)</td></tr>
-<tr class="memdesc:gac2a323224e3346e37714575d49c65432"><td class="mdescLeft"> </td><td class="mdescRight">Comparison of the FFTW, linogram FFT, and inverse linogram FFT. <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">test program for various parameters <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="var-members"></a>
-Variables</h2></td></tr>
-<tr class="memitem:ga89f1a3516fab4c4d4d274df955af639b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga89f1a3516fab4c4d4d274df955af639b"></a>
-double </td><td class="memItemRight" valign="bottom"><b>GLOBAL_elapsed_time</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__polarFFT__mpolar.html b/doc/api/html/group__applications__polarFFT__mpolar.html
deleted file mode 100644
index 27207af..0000000
--- a/doc/api/html/group__applications__polarFFT__mpolar.html
+++ /dev/null
@@ -1,130 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - mpolar_fft_test
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> |
-<a href="#var-members">Variables</a> </div>
- <div class="headertitle">
-<div class="title">mpolar_fft_test</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__polarFFT.html">Polar FFT</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga08d0441aceedbcb98b985ee5aa121952"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#ga08d0441aceedbcb98b985ee5aa121952">mpolar_grid</a> (int T, int R, double *x, double *w)</td></tr>
-<tr class="memdesc:ga08d0441aceedbcb98b985ee5aa121952"><td class="mdescLeft"> </td><td class="mdescRight">Generates the points <img class="formulaInl" alt="$x_{t,j}$" src="form_115.png"/> with weights <img class="formulaInl" alt="$w_{t,j}$" src="form_116.png"/> for the modified polar grid with <img class="formulaInl" alt="$T$" src="form_117.png"/> angles and <img class="formulaInl" alt="$R$" src="form_118.png"/> offsets. <a href="#ga08d0441aceedbcb98b985ee5aa121952"></a><br/></td></tr>
-<tr class="memitem:gaee9902054200ea50d90b5d290bff8c71"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaee9902054200ea50d90b5d290bff8c71"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#gaee9902054200ea50d90b5d290bff8c71">mpolar_dft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:gaee9902054200ea50d90b5d290bff8c71"><td class="mdescLeft"> </td><td class="mdescRight">discrete mpolar FFT <br/></td></tr>
-<tr class="memitem:ga55b2f979a5c69176a73f59eb0312b53d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga55b2f979a5c69176a73f59eb0312b53d"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#ga55b2f979a5c69176a73f59eb0312b53d">mpolar_fft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:ga55b2f979a5c69176a73f59eb0312b53d"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based mpolar FFT. <br/></td></tr>
-<tr class="memitem:ga5d0560e898b722ee5fe09acc485bbec8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5d0560e898b722ee5fe09acc485bbec8"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#ga5d0560e898b722ee5fe09acc485bbec8">inverse_mpolar_fft</a> (fftw_complex *f, int T, int R, fftw_complex *f_hat, int NN, int <a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">max_i</a>, int m)</td></tr>
-<tr class="memdesc:ga5d0560e898b722ee5fe09acc485bbec8"><td class="mdescLeft"> </td><td class="mdescRight">inverse NFFT-based mpolar FFT <br/></td></tr>
-<tr class="memitem:ga522ff84df31c08a1f237ad0ec7ce4ac5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga522ff84df31c08a1f237ad0ec7ce4ac5"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#ga522ff84df31c08a1f237ad0ec7ce4ac5">comparison_fft</a> (FILE *fp, int N, int T, int R)</td></tr>
-<tr class="memdesc:ga522ff84df31c08a1f237ad0ec7ce4ac5"><td class="mdescLeft"> </td><td class="mdescRight">Comparison of the FFTW, mpolar FFT, and inverse mpolar FFT. <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">test program for various parameters <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="var-members"></a>
-Variables</h2></td></tr>
-<tr class="memitem:ga89f1a3516fab4c4d4d274df955af639b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga89f1a3516fab4c4d4d274df955af639b"></a>
-double </td><td class="memItemRight" valign="bottom"><b>GLOBAL_elapsed_time</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="ga08d0441aceedbcb98b985ee5aa121952"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static int mpolar_grid </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>T</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>R</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>w</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Generates the points <img class="formulaInl" alt="$x_{t,j}$" src="form_115.png"/> with weights <img class="formulaInl" alt="$w_{t,j}$" src="form_116.png"/> for the modified polar grid with <img class="formulaInl" alt="$T$" src="form_117.png"/> angles and <img class="formulaInl" alt="$R$" src="form_118.png"/> offsets. </p>
-<p>We add more concentric circles to the polar grid and exclude those nodes not located in the unit square, i.e., </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ x_{t,j} := r_j\left(\cos\theta_t, \sin\theta_t\right)^{\top}\,,\qquad (j,t)^{\top}\in I_{\sqrt{2}R}\times I_T\,. \]" src="form_119.png"/>
-</p>
-<p> with <img class="formulaInl" alt="$r_j$" src="form_120.png"/> and <img class="formulaInl" alt="$\theta_t$" src="form_121.png"/> as for the polar grid. The number of nodes for the modified polar grid can be estimated as <img class="formulaInl" alt="$M \approx \frac{4}{\pi}\log(1+\sqrt{2}) T R$" src="form_122.png"/>. </p>
-
-<p>Definition at line <a class="el" href="mpolar__fft__test_8c_source.html#l00063">63</a> of file <a class="el" href="mpolar__fft__test_8c_source.html">mpolar_fft_test.c</a>.</p>
-
-<p>References <a class="el" href="nfft3util_8h_source.html#l00062">PI</a>.</p>
-
-<p>Referenced by <a class="el" href="mpolar__fft__test_8c_source.html#l00237">inverse_mpolar_fft()</a>, <a class="el" href="mpolar__fft__test_8c_source.html#l00404">main()</a>, <a class="el" href="mpolar__fft__test_8c_source.html#l00106">mpolar_dft()</a>, and <a class="el" href="mpolar__fft__test_8c_source.html#l00166">mpolar_fft()</a>.</p>
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__polarFFT__polar.html b/doc/api/html/group__applications__polarFFT__polar.html
deleted file mode 100644
index f74d7ff..0000000
--- a/doc/api/html/group__applications__polarFFT__polar.html
+++ /dev/null
@@ -1,126 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - polar_fft_test
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">polar_fft_test</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__polarFFT.html">Polar FFT</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga307b67b4c00a1c756f140c7fa831cdae"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756f140c7fa831cdae">polar_grid</a> (int T, int R, double *x, double *w)</td></tr>
-<tr class="memdesc:ga307b67b4c00a1c756f140c7fa831cdae"><td class="mdescLeft"> </td><td class="mdescRight">Generates the points <img class="formulaInl" alt="$x_{t,j}$" src="form_115.png"/> with weights <img class="formulaInl" alt="$w_{t,j}$" src="form_116.png"/> for the polar grid with <img class="formulaInl" alt="$T$" src="form_117.png"/> angles and <img class="formulaInl" alt="$R$" src="form_118.png"/> offsets. <a href="#ga307b67b4c00a1c756f140c7fa831cdae"></a><br/></td></tr>
-<tr class="memitem:gaf6ec0d6bb5bfea4829e551c9dc9a656e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf6ec0d6bb5bfea4829e551c9dc9a656e"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html#gaf6ec0d6bb5bfea4829e551c9dc9a656e">polar_dft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:gaf6ec0d6bb5bfea4829e551c9dc9a656e"><td class="mdescLeft"> </td><td class="mdescRight">discrete polar FFT <br/></td></tr>
-<tr class="memitem:ga72ebda23ef48b6509833eea9a24fa839"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga72ebda23ef48b6509833eea9a24fa839"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html#ga72ebda23ef48b6509833eea9a24fa839">polar_fft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:ga72ebda23ef48b6509833eea9a24fa839"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based polar FFT. <br/></td></tr>
-<tr class="memitem:gad996d429207cf198e9027618e081ada0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad996d429207cf198e9027618e081ada0"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html#gad996d429207cf198e9027618e081ada0">inverse_polar_fft</a> (fftw_complex *f, int T, int R, fftw_complex *f_hat, int NN, int <a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">max_i</a>, int m)</td></tr>
-<tr class="memdesc:gad996d429207cf198e9027618e081ada0"><td class="mdescLeft"> </td><td class="mdescRight">inverse NFFT-based polar FFT <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">test program for various parameters <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="ga307b67b4c00a1c756f140c7fa831cdae"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static int polar_grid </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>T</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>R</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>w</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Generates the points <img class="formulaInl" alt="$x_{t,j}$" src="form_115.png"/> with weights <img class="formulaInl" alt="$w_{t,j}$" src="form_116.png"/> for the polar grid with <img class="formulaInl" alt="$T$" src="form_117.png"/> angles and <img class="formulaInl" alt="$R$" src="form_118.png"/> offsets. </p>
-<p>The nodes of the polar grid lie on concentric circles around the origin. They are given for <img class="formulaInl" alt="$(j,t)^{\top}\in I_R\times I_T$" src="form_123.png"/> by a signed radius <img class="formulaInl" alt="$r_j := \frac{j}{R} \in [-\frac{1}{2},\frac{1}{2})$" src="form_124.png"/> and an angle <img class="formulaInl" alt="$\theta_t := \frac{\pi t}{T} \in [-\frac{\pi}{2},\frac{\pi}{2})$" src="form_125.png"/> as </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ x_{t,j} := r_j\left(\cos\theta_t, \sin\theta_t\right)^{\top}\,. \]" src="form_126.png"/>
-</p>
-<p> The total number of nodes is <img class="formulaInl" alt="$M=TR$" src="form_127.png"/>, whereas the origin is included multiple times.</p>
-<p>Weights are introduced to compensate for local sampling density variations. For every point in the sampling set, we associate a small surrounding area. In case of the polar grid, we choose small ring segments. The area of such a ring segment around <img class="formulaInl" alt="$x_{t,j}$" src="form_115.png"/> ( <img class="formulaInl" alt="$j \ne 0$" src="form_128.png"/>) is </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ w_{t,j} = \frac{\pi}{2TR^2}\left(\left(|j|+\frac{1}{2}\right)^2- \left(|j|-\frac{1}{2}\right)^2\right) = \frac{\pi |j| }{TR^2}\, . \]" src="form_129.png"/>
-</p>
-<p> The area of the small circle of radius <img class="formulaInl" alt="$\frac{1}{2R}$" src="form_130.png"/> around the origin is <img class="formulaInl" alt="$\frac{\pi}{4R^2}$" src="form_131.png"/>. Divided by the multiplicity of the origin in the sampling set, we get <img class="formulaInl" alt="$w_{t,0} := \frac{\pi}{4TR^2}$" src="form_132.png"/>. Thus, the sum of all weights is <img class="formulaInl" alt="$\frac{\pi}{4}(1+\frac{1}{R^2})$" src="form_133.png"/> and we divide by this [...]
-
-<p>Definition at line <a class="el" href="polar__fft__test_8c_source.html#l00078">78</a> of file <a class="el" href="polar__fft__test_8c_source.html">polar_fft_test.c</a>.</p>
-
-<p>References <a class="el" href="nfft3util_8h_source.html#l00062">PI</a>.</p>
-
-<p>Referenced by <a class="el" href="polar__fft__test_8c_source.html#l00218">inverse_polar_fft()</a>, <a class="el" href="polar__fft__test_8c_source.html#l00314">main()</a>, <a class="el" href="polar__fft__test_8c_source.html#l00100">polar_dft()</a>, and <a class="el" href="polar__fft__test_8c_source.html#l00154">polar_fft()</a>.</p>
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__quadratureS2.html b/doc/api/html/group__applications__quadratureS2.html
deleted file mode 100644
index 8efb4ec..0000000
--- a/doc/api/html/group__applications__quadratureS2.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Fast evaluation of quadrature formulae on the sphere
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> </div>
- <div class="headertitle">
-<div class="title">Fast evaluation of quadrature formulae on the sphere</div> </div>
-<div class="ingroups"><a class="el" href="group__applications.html">Applications</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__applications__quadratureS2__test"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__quadratureS2__test.html">quadratureS2_test</a></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__applications__quadratureS2__test.html b/doc/api/html/group__applications__quadratureS2__test.html
deleted file mode 100644
index 1fbaf10..0000000
--- a/doc/api/html/group__applications__quadratureS2__test.html
+++ /dev/null
@@ -1,130 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - quadratureS2_test
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#enum-members">Enumerations</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">quadratureS2_test</div> </div>
-<div class="ingroups"><a class="el" href="group__applications__quadratureS2.html">Fast evaluation of quadrature formulae on the sphere</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="enum-members"></a>
-Enumerations</h2></td></tr>
-<tr class="memitem:ga7c6368b321bd9acd0149b030bb8275ed"><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__quadratureS2__test.html#ga7c6368b321bd9acd0149b030bb8275ed">boolean</a> { <b>NO</b> = 0,
-<b>YES</b> = 1,
-<b>NO</b> = 0,
-<b>YES</b> = 1
- }</td></tr>
-<tr class="memdesc:ga7c6368b321bd9acd0149b030bb8275ed"><td class="mdescLeft"> </td><td class="mdescRight">Enumeration for parameter values. <br/></td></tr>
-<tr class="memitem:ga47f3fd319121e75dc73cd720c536f3c7"><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__quadratureS2__test.html#ga47f3fd319121e75dc73cd720c536f3c7">testtype</a> { <b>ERROR</b> = 0,
-<b>TIMING</b> = 1
- }</td></tr>
-<tr class="memdesc:ga47f3fd319121e75dc73cd720c536f3c7"><td class="mdescLeft"> </td><td class="mdescRight">Enumeration for test modes. <br/></td></tr>
-<tr class="memitem:ga4cf30b0362e85bc0154ca2c52b2bc17e"><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__quadratureS2__test.html#ga4cf30b0362e85bc0154ca2c52b2bc17e">gridtype</a> { <br/>
- <b>GRID_GAUSS_LEGENDRE</b> = 0,
-<b>GRID_CLENSHAW_CURTIS</b> = 1,
-<b>GRID_HEALPIX</b> = 2,
-<b>GRID_EQUIDISTRIBUTION</b> = 3,
-<br/>
- <b>GRID_EQUIDISTRIBUTION_UNIFORM</b> = 4
-<br/>
- }</td></tr>
-<tr class="memdesc:ga4cf30b0362e85bc0154ca2c52b2bc17e"><td class="mdescLeft"> </td><td class="mdescRight">Enumeration for quadrature grid types. <br/></td></tr>
-<tr class="memitem:gaa7c9498e1664b6773fd8f9d850921e20"><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__quadratureS2__test.html#gaa7c9498e1664b6773fd8f9d850921e20">functiontype</a> { <br/>
- <b>FUNCTION_RANDOM_BANDLIMITED</b> = 0,
-<b>FUNCTION_F1</b> = 1,
-<b>FUNCTION_F2</b> = 2,
-<b>FUNCTION_F3</b> = 3,
-<br/>
- <b>FUNCTION_F4</b> = 4,
-<b>FUNCTION_F5</b> = 5,
-<b>FUNCTION_F6</b> = 6
-<br/>
- }</td></tr>
-<tr class="memdesc:gaa7c9498e1664b6773fd8f9d850921e20"><td class="mdescLeft"> </td><td class="mdescRight">Enumeration for test functions. <br/></td></tr>
-<tr class="memitem:ga811fe196a5d9d37857c2f8adeeaac3c6"><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__quadratureS2__test.html#ga811fe196a5d9d37857c2f8adeeaac3c6">modes</a> { <b>USE_GRID</b> = 0,
-<b>RANDOM</b> = 1
- }</td></tr>
-<tr class="memdesc:ga811fe196a5d9d37857c2f8adeeaac3c6"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__quadratureS2__test.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">The main program. <a href="#ga3c04138a5bfe5d72780bb7e82a18e627"></a><br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int main </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>argc</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">char ** </td>
- <td class="paramname"><em>argv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>The main program. </p>
-<dl class="params"><dt>Parameters:</dt><dd>
- <table class="params">
- <tr><td class="paramname">argc</td><td>The number of arguments </td></tr>
- <tr><td class="paramname">argv</td><td>An array containing the arguments as C-strings</td></tr>
- </table>
- </dd>
-</dl>
-<dl class="section return"><dt>Returns:</dt><dd>Exit code </dd></dl>
-
-<p>Definition at line <a class="el" href="quadratureS2_8c_source.html#l00072">72</a> of file <a class="el" href="quadratureS2_8c_source.html">quadratureS2.c</a>.</p>
-
-<p>References <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::f</a>, <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::f_hat</a>, <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::N_total</a>, <a class="el" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free()</a>, <a class="el" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc()</a>, <a class="el" href="nfft3util_8h_source.html#l00068">NFFT_MAX</a>, <a class="el" href="nff [...]
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__examples.html b/doc/api/html/group__examples.html
deleted file mode 100644
index e23fef3..0000000
--- a/doc/api/html/group__examples.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Examples
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> </div>
- <div class="headertitle">
-<div class="title">Examples</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__examples__solver"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__examples__solver.html">Solver component</a></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__examples__solver.html b/doc/api/html/group__examples__solver.html
deleted file mode 100644
index 59a913d..0000000
--- a/doc/api/html/group__examples__solver.html
+++ /dev/null
@@ -1,48 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Solver component
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#groups">Modules</a> </div>
- <div class="headertitle">
-<div class="title">Solver component</div> </div>
-<div class="ingroups"><a class="el" href="group__examples.html">Examples</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="groups"></a>
-Modules</h2></td></tr>
-<tr class="memitem:group__examples__solver__glacier"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__examples__solver__glacier.html">Reconstruction of a glacier from scattered data</a></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__examples__solver__glacier.html b/doc/api/html/group__examples__solver__glacier.html
deleted file mode 100644
index f062589..0000000
--- a/doc/api/html/group__examples__solver__glacier.html
+++ /dev/null
@@ -1,59 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Reconstruction of a glacier from scattered data
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">Reconstruction of a glacier from scattered data</div> </div>
-<div class="ingroups"><a class="el" href="group__examples__solver.html">Solver component</a></div></div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:gab4da467610b4e791d41de5b7501fe208"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab4da467610b4e791d41de5b7501fe208"></a>
-static double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__examples__solver__glacier.html#gab4da467610b4e791d41de5b7501fe208">my_weight</a> (double z, double a, double b, double c)</td></tr>
-<tr class="memdesc:gab4da467610b4e791d41de5b7501fe208"><td class="mdescLeft"> </td><td class="mdescRight">Generalised Sobolev weight. <br/></td></tr>
-<tr class="memitem:gae32b7b49ac3d92c70301b2f96ab31e7a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gae32b7b49ac3d92c70301b2f96ab31e7a"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__examples__solver__glacier.html#gae32b7b49ac3d92c70301b2f96ab31e7a">glacier</a> (int N, int M)</td></tr>
-<tr class="memdesc:gae32b7b49ac3d92c70301b2f96ab31e7a"><td class="mdescLeft"> </td><td class="mdescRight">Reconstruction routine. <br/></td></tr>
-<tr class="memitem:ga1503d05480f3e910ffae52b2e6aef34f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1503d05480f3e910ffae52b2e6aef34f"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__examples__solver__glacier.html#ga1503d05480f3e910ffae52b2e6aef34f">glacier_cv</a> (int N, int M, int M_cv, unsigned solver_flags)</td></tr>
-<tr class="memdesc:ga1503d05480f3e910ffae52b2e6aef34f"><td class="mdescLeft"> </td><td class="mdescRight">Reconstruction routine with cross validation. <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__examples__solver__glacier.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">Main routine. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__nfftutil.html b/doc/api/html/group__nfftutil.html
deleted file mode 100644
index 8483481..0000000
--- a/doc/api/html/group__nfftutil.html
+++ /dev/null
@@ -1,478 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Util - Auxilliary functions
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#define-members">Macros</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">Util - Auxilliary functions</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Include header for FFTW3 library for its complex type.
-<a href="#details">More...</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:ga4df074728562efbb458f6662e649d1d5"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5">NFFT_SWAP_complex</a>(x, y)</td></tr>
-<tr class="memdesc:ga4df074728562efbb458f6662e649d1d5"><td class="mdescLeft"> </td><td class="mdescRight">Swapping of two vectors. <a href="#ga4df074728562efbb458f6662e649d1d5"></a><br/></td></tr>
-<tr class="memitem:ga4d8733560ed5e4cc3ff7ecadac62e83e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e">NFFT_SWAP_double</a>(x, y)</td></tr>
-<tr class="memdesc:ga4d8733560ed5e4cc3ff7ecadac62e83e"><td class="mdescLeft"> </td><td class="mdescRight">Swapping of two vectors. <a href="#ga4d8733560ed5e4cc3ff7ecadac62e83e"></a><br/></td></tr>
-<tr class="memitem:ga598a3330b3c21701223ee0ca14316eca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga598a3330b3c21701223ee0ca14316eca"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca">PI</a> 3.141592653589793238462643383279502884197169399375105820974944592</td></tr>
-<tr class="memdesc:ga598a3330b3c21701223ee0ca14316eca"><td class="mdescLeft"> </td><td class="mdescRight">Formerly known to be an irrational number. <br/></td></tr>
-<tr class="memitem:ga2750dfdda752269a036f487a4a34b849"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2750dfdda752269a036f487a4a34b849"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PI2</b> 6.283185307179586476925286766559005768394338798750211641949889185</td></tr>
-<tr class="memitem:gafd17621e12029ff7c53518b74a487c94"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafd17621e12029ff7c53518b74a487c94"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PI4</b> 12.56637061435917295385057353311801153678867759750042328389977837</td></tr>
-<tr class="memitem:gad2e3f0e1983de6d70f003545cc556ed3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad2e3f0e1983de6d70f003545cc556ed3"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3">NFFT_MAX</a>(a, b) ((a)>(b)? (a) : (b))</td></tr>
-<tr class="memdesc:gad2e3f0e1983de6d70f003545cc556ed3"><td class="mdescLeft"> </td><td class="mdescRight">Maximum of its two arguments. <br/></td></tr>
-<tr class="memitem:ga9087991411f723f26723b2b26dbf3308"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9087991411f723f26723b2b26dbf3308"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308">NFFT_MIN</a>(a, b) ((a)<(b)? (a) : (b))</td></tr>
-<tr class="memdesc:ga9087991411f723f26723b2b26dbf3308"><td class="mdescLeft"> </td><td class="mdescRight">Mimimum of its two arguments. <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga89bd624abdfb13abc10c144a8ff949cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga89bd624abdfb13abc10c144a8ff949cd"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga89bd624abdfb13abc10c144a8ff949cd">nfft_bspline_old</a> (int k, double x, double *A)</td></tr>
-<tr class="memdesc:ga89bd624abdfb13abc10c144a8ff949cd"><td class="mdescLeft"> </td><td class="mdescRight">To test the new one. <br/></td></tr>
-<tr class="memitem:ga2fd48f1f700153c050d27691c4b2a6cc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2fd48f1f700153c050d27691c4b2a6cc"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga2fd48f1f700153c050d27691c4b2a6cc">nfft_bspline</a> (int k, double x, double *scratch)</td></tr>
-<tr class="memdesc:ga2fd48f1f700153c050d27691c4b2a6cc"><td class="mdescLeft"> </td><td class="mdescRight">Computes the B-spline <img class="formulaInl" alt="$M_{k,0}\left(x\right)$" src="form_9.png"/>, scratch is used for de Boor's scheme. <br/></td></tr>
-<tr class="memitem:ga2752ca372ee2622f173a706e86e2b116"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2752ca372ee2622f173a706e86e2b116"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga2752ca372ee2622f173a706e86e2b116">nfft_prod_int</a> (int *vec, int d)</td></tr>
-<tr class="memdesc:ga2752ca372ee2622f173a706e86e2b116"><td class="mdescLeft"> </td><td class="mdescRight">Computes integer <img class="formulaInl" alt="$\prod_{t=0}^{d-1} v_t$" src="form_10.png"/>. <br/></td></tr>
-<tr class="memitem:ga8adc6bf59ec10f16243030ee00ad4a40"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8adc6bf59ec10f16243030ee00ad4a40"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga8adc6bf59ec10f16243030ee00ad4a40">nfst_prod_minus_a_int</a> (int *vec, int a, int d)</td></tr>
-<tr class="memdesc:ga8adc6bf59ec10f16243030ee00ad4a40"><td class="mdescLeft"> </td><td class="mdescRight">Computes integer <img class="formulaInl" alt="$\prod_{t=0}^{d-1} v_t-a$" src="form_11.png"/>. <br/></td></tr>
-<tr class="memitem:gad979f626cc8397e26d1bd78a7ba342cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad979f626cc8397e26d1bd78a7ba342cd"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gad979f626cc8397e26d1bd78a7ba342cd">nfft_plain_loop</a> (int *idx, int *N, int d)</td></tr>
-<tr class="memdesc:gad979f626cc8397e26d1bd78a7ba342cd"><td class="mdescLeft"> </td><td class="mdescRight">Computes <img class="formulaInl" alt="$\sum_{t=0}^{d-1} i_t \prod_{t'=t+1}^{d-1} N_{t'}$" src="form_12.png"/>. <br/></td></tr>
-<tr class="memitem:gad7bad7074a695341742f57526f8695eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad7bad7074a695341742f57526f8695eb"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gad7bad7074a695341742f57526f8695eb">nfft_prod_real</a> (double *vec, int d)</td></tr>
-<tr class="memdesc:gad7bad7074a695341742f57526f8695eb"><td class="mdescLeft"> </td><td class="mdescRight">Computes double <img class="formulaInl" alt="$\prod_{t=0}^{d-1} v_t$" src="form_10.png"/>. <br/></td></tr>
-<tr class="memitem:ga135eb6c5a8ae1a84ea64c9099caac004"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga135eb6c5a8ae1a84ea64c9099caac004"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004">nfft_dot_complex</a> (fftw_complex *x, int n)</td></tr>
-<tr class="memdesc:ga135eb6c5a8ae1a84ea64c9099caac004"><td class="mdescLeft"> </td><td class="mdescRight">Computes the inner/dot product <img class="formulaInl" alt="$x^H x$" src="form_13.png"/>. <br/></td></tr>
-<tr class="memitem:ga02357d8d67d2591573089e49958855a5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga02357d8d67d2591573089e49958855a5"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5">nfft_dot_double</a> (double *x, int n)</td></tr>
-<tr class="memdesc:ga02357d8d67d2591573089e49958855a5"><td class="mdescLeft"> </td><td class="mdescRight">Computes the inner/dot product <img class="formulaInl" alt="$x^H x$" src="form_13.png"/>. <br/></td></tr>
-<tr class="memitem:gac712b4a91652e20dc53719ce6fc1f9e1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac712b4a91652e20dc53719ce6fc1f9e1"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1">nfft_dot_w_complex</a> (fftw_complex *x, double *w, int n)</td></tr>
-<tr class="memdesc:gac712b4a91652e20dc53719ce6fc1f9e1"><td class="mdescLeft"> </td><td class="mdescRight">Computes the weighted inner/dot product <img class="formulaInl" alt="$x^H (w \odot x)$" src="form_14.png"/>. <br/></td></tr>
-<tr class="memitem:ga69cceec47679c500072d3d60c6181b39"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga69cceec47679c500072d3d60c6181b39"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39">nfft_dot_w_double</a> (double *x, double *w, int n)</td></tr>
-<tr class="memdesc:ga69cceec47679c500072d3d60c6181b39"><td class="mdescLeft"> </td><td class="mdescRight">Computes the weighted inner/dot product <img class="formulaInl" alt="$x^H (w \odot x)$" src="form_14.png"/>. <br/></td></tr>
-<tr class="memitem:ga68268fc9bfad5a7e7383098ac1715674"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga68268fc9bfad5a7e7383098ac1715674"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga68268fc9bfad5a7e7383098ac1715674">nfft_dot_w_w2_complex</a> (fftw_complex *x, double *w, double *w2, int n)</td></tr>
-<tr class="memdesc:ga68268fc9bfad5a7e7383098ac1715674"><td class="mdescLeft"> </td><td class="mdescRight">Computes the weighted inner/dot product <img class="formulaInl" alt="$x^H (w1\odot w2\odot w2 \odot x)$" src="form_15.png"/>. <br/></td></tr>
-<tr class="memitem:ga9b59288597d159357fe86395e635a075"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9b59288597d159357fe86395e635a075"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga9b59288597d159357fe86395e635a075">nfft_dot_w2_complex</a> (fftw_complex *x, double *w2, int n)</td></tr>
-<tr class="memdesc:ga9b59288597d159357fe86395e635a075"><td class="mdescLeft"> </td><td class="mdescRight">Computes the weighted inner/dot product <img class="formulaInl" alt="$x^H (w2\odot w2 \odot x)$" src="form_16.png"/>. <br/></td></tr>
-<tr class="memitem:ga21fd5b4d5f6113538320188306611133"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga21fd5b4d5f6113538320188306611133"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133">nfft_cp_complex</a> (fftw_complex *x, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga21fd5b4d5f6113538320188306611133"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow y$" src="form_17.png"/>. <br/></td></tr>
-<tr class="memitem:gab220a37bd6e58be7413507b17ca3bfe2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab220a37bd6e58be7413507b17ca3bfe2"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2">nfft_cp_double</a> (double *x, double *y, int n)</td></tr>
-<tr class="memdesc:gab220a37bd6e58be7413507b17ca3bfe2"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow y$" src="form_17.png"/>. <br/></td></tr>
-<tr class="memitem:ga33409df91e7ad5e1dca3beaa63e0ef25"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga33409df91e7ad5e1dca3beaa63e0ef25"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga33409df91e7ad5e1dca3beaa63e0ef25">nfft_cp_a_complex</a> (fftw_complex *x, double a, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga33409df91e7ad5e1dca3beaa63e0ef25"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow a y$" src="form_18.png"/>. <br/></td></tr>
-<tr class="memitem:ga41f20c605269e701b3305e49010e0759"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga41f20c605269e701b3305e49010e0759"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga41f20c605269e701b3305e49010e0759">nfft_cp_a_double</a> (double *x, double a, double *y, int n)</td></tr>
-<tr class="memdesc:ga41f20c605269e701b3305e49010e0759"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow a y$" src="form_18.png"/>. <br/></td></tr>
-<tr class="memitem:ga630054cb816785d766959a867965f619"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga630054cb816785d766959a867965f619"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga630054cb816785d766959a867965f619">nfft_cp_w_complex</a> (fftw_complex *x, double *w, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga630054cb816785d766959a867965f619"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow w\odot y$" src="form_19.png"/>. <br/></td></tr>
-<tr class="memitem:ga27a75e17d21c508cacf81276ca531099"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga27a75e17d21c508cacf81276ca531099"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099">nfft_cp_w_double</a> (double *x, double *w, double *y, int n)</td></tr>
-<tr class="memdesc:ga27a75e17d21c508cacf81276ca531099"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow w\odot y$" src="form_19.png"/>. <br/></td></tr>
-<tr class="memitem:ga676395f56bbf1c444d074a21753de8d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga676395f56bbf1c444d074a21753de8d5"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5">nfft_upd_axpy_complex</a> (fftw_complex *x, double a, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga676395f56bbf1c444d074a21753de8d5"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + y$" src="form_20.png"/>. <br/></td></tr>
-<tr class="memitem:ga7610a506bc5ab40a6e1d7937b36921a3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7610a506bc5ab40a6e1d7937b36921a3"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3">nfft_upd_axpy_double</a> (double *x, double a, double *y, int n)</td></tr>
-<tr class="memdesc:ga7610a506bc5ab40a6e1d7937b36921a3"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + y$" src="form_20.png"/>. <br/></td></tr>
-<tr class="memitem:ga1fde8da1b69413398fca44e2ef2fbdb4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1fde8da1b69413398fca44e2ef2fbdb4"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4">nfft_upd_xpay_complex</a> (fftw_complex *x, double a, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga1fde8da1b69413398fca44e2ef2fbdb4"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow x + a y$" src="form_21.png"/>. <br/></td></tr>
-<tr class="memitem:ga2389c3b56a484a3f165b7d9203700064"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2389c3b56a484a3f165b7d9203700064"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064">nfft_upd_xpay_double</a> (double *x, double a, double *y, int n)</td></tr>
-<tr class="memdesc:ga2389c3b56a484a3f165b7d9203700064"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow x + a y$" src="form_21.png"/>. <br/></td></tr>
-<tr class="memitem:ga903a4b3ed369dcfe67b9379a238ed23d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga903a4b3ed369dcfe67b9379a238ed23d"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga903a4b3ed369dcfe67b9379a238ed23d">nfft_upd_axpby_complex</a> (fftw_complex *x, double a, fftw_complex *y, double b, int n)</td></tr>
-<tr class="memdesc:ga903a4b3ed369dcfe67b9379a238ed23d"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + b y$" src="form_22.png"/>. <br/></td></tr>
-<tr class="memitem:ga75e403e92875b0b919a555f8cede0e8d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga75e403e92875b0b919a555f8cede0e8d"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga75e403e92875b0b919a555f8cede0e8d">nfft_upd_axpby_double</a> (double *x, double a, double *y, double b, int n)</td></tr>
-<tr class="memdesc:ga75e403e92875b0b919a555f8cede0e8d"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + b y$" src="form_22.png"/>. <br/></td></tr>
-<tr class="memitem:gad8e10773e59818c88a8ea2cb560b936e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad8e10773e59818c88a8ea2cb560b936e"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gad8e10773e59818c88a8ea2cb560b936e">nfft_upd_xpawy_complex</a> (fftw_complex *x, double a, double *w, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:gad8e10773e59818c88a8ea2cb560b936e"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow x + a w\odot y$" src="form_23.png"/>. <br/></td></tr>
-<tr class="memitem:gac5db5bbc58f772844cf0caf5fd9fafb0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac5db5bbc58f772844cf0caf5fd9fafb0"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0">nfft_upd_xpawy_double</a> (double *x, double a, double *w, double *y, int n)</td></tr>
-<tr class="memdesc:gac5db5bbc58f772844cf0caf5fd9fafb0"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow x + a w\odot y$" src="form_23.png"/>. <br/></td></tr>
-<tr class="memitem:ga693919963b51cf396311b15660e04cd8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga693919963b51cf396311b15660e04cd8"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga693919963b51cf396311b15660e04cd8">nfft_upd_axpwy_complex</a> (fftw_complex *x, double a, double *w, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga693919963b51cf396311b15660e04cd8"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + w\odot y$" src="form_24.png"/>. <br/></td></tr>
-<tr class="memitem:gaf6777c4b8aa9f575f1600c51e8ae343a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf6777c4b8aa9f575f1600c51e8ae343a"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gaf6777c4b8aa9f575f1600c51e8ae343a">nfft_upd_axpwy_double</a> (double *x, double a, double *w, double *y, int n)</td></tr>
-<tr class="memdesc:gaf6777c4b8aa9f575f1600c51e8ae343a"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + w\odot y$" src="form_24.png"/>. <br/></td></tr>
-<tr class="memitem:gaa388b5ec231e02ac45e37b60fd62e770"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa388b5ec231e02ac45e37b60fd62e770"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770">nfft_fftshift_complex</a> (fftw_complex *x, int d, int *N)</td></tr>
-<tr class="memdesc:gaa388b5ec231e02ac45e37b60fd62e770"><td class="mdescLeft"> </td><td class="mdescRight">Swaps each half over N[d]/2. <br/></td></tr>
-<tr class="memitem:gaa8e0581d802c4b7bb153682a4c156409"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa8e0581d802c4b7bb153682a4c156409"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gaa8e0581d802c4b7bb153682a4c156409">nfft_vpr_int</a> (int *x, int n, char *text)</td></tr>
-<tr class="memdesc:gaa8e0581d802c4b7bb153682a4c156409"><td class="mdescLeft"> </td><td class="mdescRight">Prints a vector of integer numbers. <br/></td></tr>
-<tr class="memitem:ga5021b4c5ea2a24b0014786deb81cca91"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5021b4c5ea2a24b0014786deb81cca91"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91">nfft_vpr_double</a> (double *x, int n, const char *text)</td></tr>
-<tr class="memdesc:ga5021b4c5ea2a24b0014786deb81cca91"><td class="mdescLeft"> </td><td class="mdescRight">Prints a vector of doubles numbers. <br/></td></tr>
-<tr class="memitem:ga52ad07055e22b83a016bdbf43d3884d0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga52ad07055e22b83a016bdbf43d3884d0"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0">nfft_vpr_complex</a> (fftw_complex *x, int n, const char *text)</td></tr>
-<tr class="memdesc:ga52ad07055e22b83a016bdbf43d3884d0"><td class="mdescLeft"> </td><td class="mdescRight">Prints a vector of complex numbers. <br/></td></tr>
-<tr class="memitem:ga5f53c8cd0b2f33200fce15ecf75a0685"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5f53c8cd0b2f33200fce15ecf75a0685"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685">nfft_vrand_unit_complex</a> (fftw_complex *x, int n)</td></tr>
-<tr class="memdesc:ga5f53c8cd0b2f33200fce15ecf75a0685"><td class="mdescLeft"> </td><td class="mdescRight">Inits a vector of random complex numbers in <img class="formulaInl" alt="$[0,1]\times[0,1]{\rm i}$" src="form_25.png"/>. <br/></td></tr>
-<tr class="memitem:gaa44184ac2c1452221508e7640f391c34"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa44184ac2c1452221508e7640f391c34"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34">nfft_vrand_shifted_unit_double</a> (double *x, int n)</td></tr>
-<tr class="memdesc:gaa44184ac2c1452221508e7640f391c34"><td class="mdescLeft"> </td><td class="mdescRight">Inits a vector of random double numbers in <img class="formulaInl" alt="$[-1/2,1/2]$" src="form_26.png"/>. <br/></td></tr>
-<tr class="memitem:ga797e81f55e6379efabf4d98522d1ee9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga797e81f55e6379efabf4d98522d1ee9d"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga797e81f55e6379efabf4d98522d1ee9d">nfft_voronoi_weights_1d</a> (double *w, double *x, int M)</td></tr>
-<tr class="memdesc:ga797e81f55e6379efabf4d98522d1ee9d"><td class="mdescLeft"> </td><td class="mdescRight">Computes non periodic voronoi weights, assumes ordered nodes <img class="formulaInl" alt="$x_j$" src="form_27.png"/>. <br/></td></tr>
-<tr class="memitem:ga26a4ed487a23e99e01f111113be9f994"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga26a4ed487a23e99e01f111113be9f994">nfft_voronoi_weights_S2</a> (double *w, double *xi, int M)</td></tr>
-<tr class="memdesc:ga26a4ed487a23e99e01f111113be9f994"><td class="mdescLeft"> </td><td class="mdescRight">Computes voronoi weights for nodes on the sphere S^2. <a href="#ga26a4ed487a23e99e01f111113be9f994"></a><br/></td></tr>
-<tr class="memitem:gac9b810183abafb668f8aa777c7985256"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac9b810183abafb668f8aa777c7985256"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gac9b810183abafb668f8aa777c7985256">nfft_modified_fejer</a> (int N, int kk)</td></tr>
-<tr class="memdesc:gac9b810183abafb668f8aa777c7985256"><td class="mdescLeft"> </td><td class="mdescRight">Computes the damping factor for the modified Fejer kernel, ie <img class="formulaInl" alt="$\frac{2}{N}\left(1-\frac{\left|2k+1\right|}{N}\right)$" src="form_28.png"/>. <br/></td></tr>
-<tr class="memitem:gab45a6cd3528d3716522a0cf184375aaf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab45a6cd3528d3716522a0cf184375aaf"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gab45a6cd3528d3716522a0cf184375aaf">nfft_modified_jackson2</a> (int N, int kk)</td></tr>
-<tr class="memdesc:gab45a6cd3528d3716522a0cf184375aaf"><td class="mdescLeft"> </td><td class="mdescRight">Computes the damping factor for the modified Jackson kernel. <br/></td></tr>
-<tr class="memitem:ga126ec2282393435f0d795ac79db8654b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga126ec2282393435f0d795ac79db8654b"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga126ec2282393435f0d795ac79db8654b">nfft_modified_jackson4</a> (int N, int kk)</td></tr>
-<tr class="memdesc:ga126ec2282393435f0d795ac79db8654b"><td class="mdescLeft"> </td><td class="mdescRight">Computes the damping factor for the modified generalised Jackson kernel. <br/></td></tr>
-<tr class="memitem:gaa84cb34c6d368599fb2f997eadb184a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa84cb34c6d368599fb2f997eadb184a7"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gaa84cb34c6d368599fb2f997eadb184a7">nfft_modified_sobolev</a> (double mu, int kk)</td></tr>
-<tr class="memdesc:gaa84cb34c6d368599fb2f997eadb184a7"><td class="mdescLeft"> </td><td class="mdescRight">Computes the damping factor for the modified Sobolev kernel. <br/></td></tr>
-<tr class="memitem:gac6201bc2aa806bd25cb14c5f96d644e9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac6201bc2aa806bd25cb14c5f96d644e9"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gac6201bc2aa806bd25cb14c5f96d644e9">nfft_modified_multiquadric</a> (double mu, double c, int kk)</td></tr>
-<tr class="memdesc:gac6201bc2aa806bd25cb14c5f96d644e9"><td class="mdescLeft"> </td><td class="mdescRight">Computes the damping factor for the modified multiquadric kernel. <br/></td></tr>
-<tr class="memitem:ga2decee6fe50d50797a82737ba82cf97a"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga2decee6fe50d50797a82737ba82cf97a">nfft_smbi</a> (const double x, const double alpha, const int nb, const int ize, double *b)</td></tr>
-<tr class="memdesc:ga2decee6fe50d50797a82737ba82cf97a"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the modified bessel function <img class="formulaInl" alt="$I_{n+\alpha}(x)$" src="form_82.png"/>, possibly scaled by <img class="formulaInl" alt="$\mathrm{e}^{-x}$" src="form_83.png"/>, for real non-negative <img class="formulaInl" alt="$x,alpha$" src="form_84.png"/> with <img class="formulaInl" alt="$0 \le \alpha < 1$" src="form_85.png"/>, and <img class="formulaInl" [...]
-<tr class="memitem:ga574571239f7dcf7474736d35a6242bb1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga574571239f7dcf7474736d35a6242bb1"></a>
-double </td><td class="memItemRight" valign="bottom"><b>nfft_drand48</b> (void)</td></tr>
-<tr class="memitem:gaef3ecf626cc0aab6ccdc363fd43ef0d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaef3ecf626cc0aab6ccdc363fd43ef0d8"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_srand48</b> (long int seed)</td></tr>
-<tr class="memitem:gad93b94e3c7e9149f89819504c2b3c738"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gad93b94e3c7e9149f89819504c2b3c738">nfft_sort_node_indices_radix_lsdf</a> (int n, int *keys0, int *keys1, int rhigh)</td></tr>
-<tr class="memdesc:gad93b94e3c7e9149f89819504c2b3c738"><td class="mdescLeft"> </td><td class="mdescRight">Radix sort for node indices. <a href="#gad93b94e3c7e9149f89819504c2b3c738"></a><br/></td></tr>
-<tr class="memitem:ga60a5123a8026a06807e14502d7cedcd5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga60a5123a8026a06807e14502d7cedcd5">nfft_sort_node_indices_radix_msdf</a> (int n, int *keys0, int *keys1, int rhigh)</td></tr>
-<tr class="memdesc:ga60a5123a8026a06807e14502d7cedcd5"><td class="mdescLeft"> </td><td class="mdescRight">Radix sort for node indices. <a href="#ga60a5123a8026a06807e14502d7cedcd5"></a><br/></td></tr>
-<tr class="memitem:gafb4a11b0dff72fc3b827b0fee0a14611"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafb4a11b0dff72fc3b827b0fee0a14611"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfft_get_num_threads</b> (void)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<p>Include header for FFTW3 library for its complex type. </p>
-<p>This module implements frequently used utility functions. In particular, this includes simple measurement of resources, evaluation of window functions, vector routines for basic linear algebra tasks, and computation of weights for the inverse transforms. </p>
-<hr/><h2>Macro Definition Documentation</h2>
-<a class="anchor" id="ga4df074728562efbb458f6662e649d1d5"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define NFFT_SWAP_complex</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">x, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">y </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line">{fftw_complex* NFFT_SWAP_temp__; \</div>
-<div class="line"> NFFT_SWAP_temp__=(x); (x)=(y); (y)=NFFT_SWAP_temp__;}</div>
-</div><!-- fragment -->
-<p>Swapping of two vectors. </p>
-
-<p>Definition at line <a class="el" href="nfft3util_8h_source.html#l00052">52</a> of file <a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>.</p>
-
-<p>Referenced by <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>, <a class="el" href="fastgauss_8c_source.html#l00481">fgt_test_error()</a>, <a class="el" href="fastgauss_8c_source.html#l00532">fgt_test_error_p()</a>, <a class="el" href="fastgauss_8c_source.html#l00375">fgt_test_simple()</a>, <a class="el" href="glacier_8c_source.html#l00110">glacier_cv()</a>, <a class="el" href="iterS2_8c_source.html#l00058">main()</a>, <a class="el" href="solver_8c_source. [...]
-
-</div>
-</div>
-<a class="anchor" id="ga4d8733560ed5e4cc3ff7ecadac62e83e"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define NFFT_SWAP_double</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">x, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">y </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line">{<span class="keywordtype">double</span>* NFFT_SWAP_temp__; NFFT_SWAP_temp__=(x); \</div>
-<div class="line"> (x)=(y); (y)=NFFT_SWAP_temp__;}</div>
-</div><!-- fragment -->
-<p>Swapping of two vectors. </p>
-
-<p>Definition at line <a class="el" href="nfft3util_8h_source.html#l00057">57</a> of file <a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>.</p>
-
-<p>Referenced by <a class="el" href="solver_8c_source.html#l00575">solver_loop_one_step_cgnr_double()</a>, <a class="el" href="solver_8c_source.html#l00471">solver_loop_one_step_landweber_double()</a>, and <a class="el" href="solver_8c_source.html#l00520">solver_loop_one_step_steepest_descent_double()</a>.</p>
-
-</div>
-</div>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="ga26a4ed487a23e99e01f111113be9f994"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void nfft_voronoi_weights_S2 </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>w</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>xi</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>M</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Computes voronoi weights for nodes on the sphere S^2. </p>
-
-<p>Definition at line <a class="el" href="util_8c_source.html#l00581">581</a> of file <a class="el" href="util_8c_source.html">util.c</a>.</p>
-
-<p>References <a class="el" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free()</a>, <a class="el" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc()</a>, and <a class="el" href="nfft3util_8h_source.html#l00062">PI</a>.</p>
-
-<p>Referenced by <a class="el" href="iterS2_8c_source.html#l00058">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga2decee6fe50d50797a82737ba82cf97a"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int nfft_smbi </td>
- <td>(</td>
- <td class="paramtype">const R </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const R </td>
- <td class="paramname"><em>alpha</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const int </td>
- <td class="paramname"><em>nb</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const int </td>
- <td class="paramname"><em>ize</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>b</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Calculates the modified bessel function <img class="formulaInl" alt="$I_{n+\alpha}(x)$" src="form_82.png"/>, possibly scaled by <img class="formulaInl" alt="$\mathrm{e}^{-x}$" src="form_83.png"/>, for real non-negative <img class="formulaInl" alt="$x,alpha$" src="form_84.png"/> with <img class="formulaInl" alt="$0 \le \alpha < 1$" src="form_85.png"/>, and <img class="formulaInl" alt="$n=0,1,\ldots,nb-1$" src="form_86.png"/>. </p>
-<ul>
-<li>[in] <code>x</code> non-negative real number in <img class="formulaInl" alt="$I_{n+\alpha}(x)$" src="form_82.png"/> </li>
-<li>[in] <code>alpha</code> non-negative real number with <img class="formulaInl" alt="$0 \le \alpha < 1$" src="form_85.png"/> in <img class="formulaInl" alt="$I_{n+\alpha}(x)$" src="form_82.png"/> </li>
-<li>[in] <code>nb</code> number of functions to be calculated </li>
-<li>[in] <code>ize</code> switch between no scaling (<code>ize</code> = 1) and exponential scaling (<code>ize</code> = 2) </li>
-<li>[out] <code>b</code> real output vector to contain <img class="formulaInl" alt="$I_{n+\alpha}(x)$" src="form_82.png"/>, <img class="formulaInl" alt="$n=0,1,\ldots,nb-1$" src="form_86.png"/> <dl class="section return"><dt>Returns:</dt><dd>error indicator. Only if this value is identical to <code>nb</code>, then all values in <code>b</code> have been calculated to full accuracy. If not, errors are indicated using the following scheme:<ul>
-<li>ncalc < 0: At least one of the arguments was out of range (e.g. nb <= 0, ize neither equals 1 nor 2, <img class="formulaInl" alt="$|x| \ge exparg$" src="form_87.png"/>). In this case, the output vector b is not calculated and <code>ncalc</code> is set to <img class="formulaInl" alt="$\min(nb,0)-1$" src="form_88.png"/>.</li>
-<li>0 < ncalc < nb: Not all requested functions could be calculated to full accuracy. This can occur when nb is much larger than |x|. in this case, the values <img class="formulaInl" alt="$I_{n+\alpha}(x)$" src="form_82.png"/> are calculated to full accuracy for <img class="formulaInl" alt="$n=0,1,\ldots,ncalc$" src="form_89.png"/>. The rest of the values up to <img class="formulaInl" alt="$n=0,1,\ldots,nb-1$" src="form_86.png"/> is calculated to a lower accuracy.</li>
-</ul>
-</dd></dl>
-</li>
-</ul>
-<p>This program is based on a program written by David J. Sookne [2] that computes values of the Bessel functions <img class="formulaInl" alt="$J_{\nu}(x)$" src="form_90.png"/> or <img class="formulaInl" alt="$I_{\nu}(x)$" src="form_91.png"/> for real argument <img class="formulaInl" alt="$x$" src="form_92.png"/> and integer order <img class="formulaInl" alt="$\nu$" src="form_93.png"/>. modifications include the restriction of the computation to the Bessel function <img class="formulaInl [...]
-<p>References: [1] F. W. J. Olver and D. J. Sookne, A note on backward recurrence algorithms", Math. Comput. (26), 1972, pp 125 – 132.
- [2] D. J. Sookne, "Bessel functions of real argument and int order", NBS Jour. of Res. B. (77B), 1973, pp. 125 – 132.</p>
-<p>Modified by W. J. Cody, Applied Mathematics Division, Argonne National Laboratory, Argonne, IL, 60439, USA</p>
-<p>Modified by Jens Keiner, Institute of Mathematics, University of Lübeck, 23560 Lübeck, Germany </p>
-
-<p>Definition at line <a class="el" href="util_8c_source.html#l00950">950</a> of file <a class="el" href="util_8c_source.html">util.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00076">nfsft_wisdom::alpha</a>.</p>
-
-<p>Referenced by <a class="el" href="fastsumS2_8c_source.html#l00164">main()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="gad93b94e3c7e9149f89819504c2b3c738"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void nfft_sort_node_indices_radix_lsdf </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int * </td>
- <td class="paramname"><em>keys0</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int * </td>
- <td class="paramname"><em>keys1</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>rhigh</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Radix sort for node indices. </p>
-<p>Radix sort for node indices.</p>
-<dl class="section author"><dt>Author:</dt><dd>Michael Hofmann </dd></dl>
-
-<p>Definition at line <a class="el" href="util_8c_source.html#l01301">1301</a> of file <a class="el" href="util_8c_source.html">util.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga60a5123a8026a06807e14502d7cedcd5"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void nfft_sort_node_indices_radix_msdf </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int * </td>
- <td class="paramname"><em>keys0</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int * </td>
- <td class="paramname"><em>keys1</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>rhigh</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Radix sort for node indices. </p>
-<p>Radix sort for node indices.</p>
-<dl class="section author"><dt>Author:</dt><dd>Michael Hofmann </dd></dl>
-
-<p>Definition at line <a class="el" href="util_8c_source.html#l01383">1383</a> of file <a class="el" href="util_8c_source.html">util.c</a>.</p>
-
-<p>References <a class="el" href="util_8c_source.html#l01383">nfft_sort_node_indices_radix_msdf()</a>.</p>
-
-<p>Referenced by <a class="el" href="util_8c_source.html#l01383">nfft_sort_node_indices_radix_msdf()</a>.</p>
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/group__nfsft.html b/doc/api/html/group__nfsft.html
deleted file mode 100644
index 70d8f46..0000000
--- a/doc/api/html/group__nfsft.html
+++ /dev/null
@@ -1,563 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Nfsft
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#nested-classes">Data Structures</a> |
-<a href="#define-members">Macros</a> |
-<a href="#enum-members">Enumerations</a> |
-<a href="#func-members">Functions</a> |
-<a href="#var-members">Variables</a> </div>
- <div class="headertitle">
-<div class="title">Nfsft</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__wisdom.html">nfsft_wisdom</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Wisdom structure. <a href="structnfsft__wisdom.html#details">More...</a><br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:ga6ebc87b6a9996327fdf13c4c3b2f79c1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6ebc87b6a9996327fdf13c4c3b2f79c1"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>BWEXP_MAX</b> 10</td></tr>
-<tr class="memitem:ga7a05635f8b2f1099a6a57dafbb6a1cb1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7a05635f8b2f1099a6a57dafbb6a1cb1"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>BW_MAX</b> 1024</td></tr>
-<tr class="memitem:ga419a0077c38536976cf6ad9d7fddd9e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga419a0077c38536976cf6ad9d7fddd9e5"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>ROW</b>(k) (k*(wisdom.N_MAX+2))</td></tr>
-<tr class="memitem:ga5c75ea9f4835d9aa1b75dac53622e488"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5c75ea9f4835d9aa1b75dac53622e488"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>ROWK</b>(k) (k*(wisdom.N_MAX+2)+k)</td></tr>
-<tr class="memitem:ga206c4faaf800b49dcb14e26148fa9ac6"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga206c4faaf800b49dcb14e26148fa9ac6">NFSFT_DEFAULT_NFFT_CUTOFF</a> 6</td></tr>
-<tr class="memdesc:ga206c4faaf800b49dcb14e26148fa9ac6"><td class="mdescLeft"> </td><td class="mdescRight">The default NFFT cutoff parameter. <a href="#ga206c4faaf800b49dcb14e26148fa9ac6"></a><br/></td></tr>
-<tr class="memitem:gab7d25b80464387893b3c773f92e5c4f3"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#gab7d25b80464387893b3c773f92e5c4f3">NFSFT_DEFAULT_THRESHOLD</a> 1000</td></tr>
-<tr class="memdesc:gab7d25b80464387893b3c773f92e5c4f3"><td class="mdescLeft"> </td><td class="mdescRight">The default threshold for the FPT. <a href="#gab7d25b80464387893b3c773f92e5c4f3"></a><br/></td></tr>
-<tr class="memitem:ga54b840898df97bcd14af4cb004650ed3"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga54b840898df97bcd14af4cb004650ed3">NFSFT_BREAK_EVEN</a> 5</td></tr>
-<tr class="memdesc:ga54b840898df97bcd14af4cb004650ed3"><td class="mdescLeft"> </td><td class="mdescRight">The break-even bandwidth <img class="formulaInl" alt="$N \in \mathbb{N}_0$" src="form_49.png"/>. <a href="#ga54b840898df97bcd14af4cb004650ed3"></a><br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="enum-members"></a>
-Enumerations</h2></td></tr>
-<tr class="memitem:gaf6a258d8f3ee5206d682d799316314b1"><td class="memItemLeft" align="right" valign="top">enum </td><td class="memItemRight" valign="bottom"><b>bool</b> { <b>false</b> = 0,
-<b>true</b> = 1
- }</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga579cd4224a1b91605551f9ef36c02570"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga579cd4224a1b91605551f9ef36c02570"></a>
-void </td><td class="memItemRight" valign="bottom"><b>alpha_al_row</b> (R *alpha, const int N, const int n)</td></tr>
-<tr class="memitem:ga701e714a76a30130d1db3394ef199b7a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga701e714a76a30130d1db3394ef199b7a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>beta_al_row</b> (R *beta, const int N, const int n)</td></tr>
-<tr class="memitem:gacc014bf577397cff2b508de22a4581bb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gacc014bf577397cff2b508de22a4581bb"></a>
-void </td><td class="memItemRight" valign="bottom"><b>gamma_al_row</b> (R *gamma, const int N, const int n)</td></tr>
-<tr class="memitem:ga6b01d5f2e8b3a026906e977118d7b0d2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga6b01d5f2e8b3a026906e977118d7b0d2">alpha_al_all</a> (R *alpha, const int N)</td></tr>
-<tr class="memdesc:ga6b01d5f2e8b3a026906e977118d7b0d2"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\alpha_{k-1}^n$" src="form_39.png"/> of associated Legendre functions for <img class="formulaInl" alt="$k,n = 0,1,\ldots,N$" src="form_40.png"/>. <a href="#ga6b01d5f2e8b3a026906e977118d7b0d2"></a><br/></td></tr>
-<tr class="memitem:gaf0fb6a3993b3c956bea8fa75e3a71290"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#gaf0fb6a3993b3c956bea8fa75e3a71290">beta_al_all</a> (R *beta, const int N)</td></tr>
-<tr class="memdesc:gaf0fb6a3993b3c956bea8fa75e3a71290"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\beta_{k-1}^n$" src="form_42.png"/> of associated Legendre functions for <img class="formulaInl" alt="$k,n = 0,1,\ldots,N$" src="form_40.png"/>. <a href="#gaf0fb6a3993b3c956bea8fa75e3a71290"></a><br/></td></tr>
-<tr class="memitem:ga88de851c8f9a4c042ad101cb4fb8c51d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga88de851c8f9a4c042ad101cb4fb8c51d">gamma_al_all</a> (R *gamma, const int N)</td></tr>
-<tr class="memdesc:ga88de851c8f9a4c042ad101cb4fb8c51d"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\gamma_{k-1}^n$" src="form_43.png"/> of associated Legendre functions for <img class="formulaInl" alt="$k,n = 0,1,\ldots,N$" src="form_40.png"/>. <a href="#ga88de851c8f9a4c042ad101cb4fb8c51d"></a><br/></td></tr>
-<tr class="memitem:gac5f2f8c36dc4f8ca65f058af6491f163"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#gac5f2f8c36dc4f8ca65f058af6491f163">eval_al</a> (R *x, R *y, const int size, const int k, R *alpha, R *beta, R *gamma)</td></tr>
-<tr class="memdesc:gac5f2f8c36dc4f8ca65f058af6491f163"><td class="mdescLeft"> </td><td class="mdescRight">Evaluates an associated Legendre polynomials <img class="formulaInl" alt="$P_k^n(x,c)$" src="form_44.png"/> using the Clenshaw-algorithm. <a href="#gac5f2f8c36dc4f8ca65f058af6491f163"></a><br/></td></tr>
-<tr class="memitem:ga1bc5682379de94e87031afa38e02675d"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga1bc5682379de94e87031afa38e02675d">eval_al_thresh</a> (R *x, R *y, const int size, const int k, R *alpha, R *beta, R *gamma, R threshold)</td></tr>
-<tr class="memdesc:ga1bc5682379de94e87031afa38e02675d"><td class="mdescLeft"> </td><td class="mdescRight">Evaluates an associated Legendre polynomials <img class="formulaInl" alt="$P_k^n(x,c)$" src="form_44.png"/> using the Clenshaw-algorithm if it no exceeds a given threshold. <a href="#ga1bc5682379de94e87031afa38e02675d"></a><br/></td></tr>
-<tr class="memitem:ga47209b28b6561fca7349ed8afa5f9656"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656">c2e</a> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memdesc:ga47209b28b6561fca7349ed8afa5f9656"><td class="mdescLeft"> </td><td class="mdescRight">Converts coefficients <img class="formulaInl" alt="$\left(b_k^n\right)_{k=0}^M$" src="form_50.png"/> with <img class="formulaInl" alt="$M \in \mathbb{N}_0$" src="form_36.png"/>, <img class="formulaInl" alt="$-M \le n \le M$" src="form_51.png"/> from a linear combination of Chebyshev polynomials </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ f(\cos\vartheta) = \sum_{k=0}^{2\lfloor\frac{M}{2}\rfloor} a_k (\sin\vartheta)^{n\;\mathrm{mod}\;2} T_k(\cos\vartheta) \]" src="form_52.png"/>
-</p>
-<p> to coefficients <img class="formulaInl" alt="$\left(c_k^n\right)_{k=0}^M$" src="form_53.png"/> matching the representation by complex exponentials </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ f(\cos\vartheta) = \sum_{k=-M}^{M} c_k \mathrm{e}^{\mathrm{i}k\vartheta} \]" src="form_54.png"/>
-</p>
-<p> for each order <img class="formulaInl" alt="$n=-M,\ldots,M$" src="form_55.png"/>. <a href="#ga47209b28b6561fca7349ed8afa5f9656"></a><br/></td></tr>
-<tr class="memitem:ga0e033457136bc0ecb18bb57d3ee5aa37"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga0e033457136bc0ecb18bb57d3ee5aa37">c2e_transposed</a> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memdesc:ga0e033457136bc0ecb18bb57d3ee5aa37"><td class="mdescLeft"> </td><td class="mdescRight">Transposed version of the function <a class="el" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656">c2e</a>. <a href="#ga0e033457136bc0ecb18bb57d3ee5aa37"></a><br/></td></tr>
-<tr class="memitem:ga65cda3f4a3edc5eb39c697cf34b1f0b9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga65cda3f4a3edc5eb39c697cf34b1f0b9"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_init</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan, int N, int M)</td></tr>
-<tr class="memitem:ga2812aa5beba0eb7efd3072bf323a0155"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2812aa5beba0eb7efd3072bf323a0155"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_init_advanced</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan, int N, int M, unsigned int flags)</td></tr>
-<tr class="memitem:gafff6158abcefa9a75bcfa41af5a79089"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafff6158abcefa9a75bcfa41af5a79089"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_init_guru</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan, int N, int M, unsigned int flags, unsigned int nfft_flags, int nfft_cutoff)</td></tr>
-<tr class="memitem:gabe87aeea1f7cfef9ae8febb16d702f3b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gabe87aeea1f7cfef9ae8febb16d702f3b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_precompute</b> (int N, double kappa, unsigned int nfsft_flags, unsigned int fpt_flags)</td></tr>
-<tr class="memitem:ga3b69bca6c76a63877534f5a9781bf285"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3b69bca6c76a63877534f5a9781bf285"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_forget</b> (void)</td></tr>
-<tr class="memitem:gaa63e193a27d84059742ff25ff81e2ed1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa63e193a27d84059742ff25ff81e2ed1"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_finalize</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga7628057164579a29cc77487cda6772e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7628057164579a29cc77487cda6772e5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_trafo_direct</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga7cfaacc3393dea5c895859fa035e3e06"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7cfaacc3393dea5c895859fa035e3e06"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_adjoint_direct</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga5796fc68c432d46dfcab7abd8c56ee22"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5796fc68c432d46dfcab7abd8c56ee22"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_trafo</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga813bb48d404c7286310733c99a81a169"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga813bb48d404c7286310733c99a81a169"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_adjoint</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga7a7fa6722d6ba3aade4c69299af86e4e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7a7fa6722d6ba3aade4c69299af86e4e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_precompute_x</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="var-members"></a>
-Variables</h2></td></tr>
-<tr class="memitem:ga0af81d81e1b436949ddc46dbd27346e5"><td class="memItemLeft" align="right" valign="top">static struct <a class="el" href="structnfsft__wisdom.html">nfsft_wisdom</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga0af81d81e1b436949ddc46dbd27346e5">wisdom</a> = {false,0U,-1,-1,0,0,0,0,0}</td></tr>
-<tr class="memdesc:ga0af81d81e1b436949ddc46dbd27346e5"><td class="mdescLeft"> </td><td class="mdescRight">The global wisdom structure for precomputed data. <a href="#ga0af81d81e1b436949ddc46dbd27346e5"></a><br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<hr/><h2>Macro Definition Documentation</h2>
-<a class="anchor" id="ga206c4faaf800b49dcb14e26148fa9ac6"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define NFSFT_DEFAULT_NFFT_CUTOFF 6</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>The default NFFT cutoff parameter. </p>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="nfsft_8c_source.html#l00065">65</a> of file <a class="el" href="nfsft_8c_source.html">nfsft.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="gab7d25b80464387893b3c773f92e5c4f3"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define NFSFT_DEFAULT_THRESHOLD 1000</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>The default threshold for the FPT. </p>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="nfsft_8c_source.html#l00072">72</a> of file <a class="el" href="nfsft_8c_source.html">nfsft.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga54b840898df97bcd14af4cb004650ed3"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define NFSFT_BREAK_EVEN 5</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>The break-even bandwidth <img class="formulaInl" alt="$N \in \mathbb{N}_0$" src="form_49.png"/>. </p>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="nfsft_8c_source.html#l00079">79</a> of file <a class="el" href="nfsft_8c_source.html">nfsft.c</a>.</p>
-
-</div>
-</div>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="ga6b01d5f2e8b3a026906e977118d7b0d2"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void alpha_al_all </td>
- <td>(</td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>alpha</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const int </td>
- <td class="paramname"><em>N</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\alpha_{k-1}^n$" src="form_39.png"/> of associated Legendre functions for <img class="formulaInl" alt="$k,n = 0,1,\ldots,N$" src="form_40.png"/>. </p>
-<ul>
-<li>alpha A pointer to an array of doubles of size <img class="formulaInl" alt="$(N+1)^2$" src="form_41.png"/> where the coefficients will be stored such that alpha[n+(N+1)+k] = <img class="formulaInl" alt="$\alpha_{k-1}^n$" src="form_39.png"/>. </li>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="legendre_8c_source.html#l00091">91</a> of file <a class="el" href="legendre_8c_source.html">legendre.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="gaf0fb6a3993b3c956bea8fa75e3a71290"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void beta_al_all </td>
- <td>(</td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>beta</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const int </td>
- <td class="paramname"><em>N</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\beta_{k-1}^n$" src="form_42.png"/> of associated Legendre functions for <img class="formulaInl" alt="$k,n = 0,1,\ldots,N$" src="form_40.png"/>. </p>
-<ul>
-<li>beta A pointer to an array of doubles of size <img class="formulaInl" alt="$(N+1)^2$" src="form_41.png"/> where the coefficients will be stored such that beta[n+(N+1)+k] = <img class="formulaInl" alt="$\beta_{k-1}^n$" src="form_42.png"/>. </li>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="legendre_8c_source.html#l00100">100</a> of file <a class="el" href="legendre_8c_source.html">legendre.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga88de851c8f9a4c042ad101cb4fb8c51d"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void gamma_al_all </td>
- <td>(</td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>gamma</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const int </td>
- <td class="paramname"><em>N</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\gamma_{k-1}^n$" src="form_43.png"/> of associated Legendre functions for <img class="formulaInl" alt="$k,n = 0,1,\ldots,N$" src="form_40.png"/>. </p>
-<ul>
-<li>beta A pointer to an array of doubles of size <img class="formulaInl" alt="$(N+1)^2$" src="form_41.png"/> where the coefficients will be stored such that gamma[n+(N+1)+k] = <img class="formulaInl" alt="$\gamma_{k-1}^n$" src="form_43.png"/>. </li>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="legendre_8c_source.html#l00109">109</a> of file <a class="el" href="legendre_8c_source.html">legendre.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="gac5f2f8c36dc4f8ca65f058af6491f163"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void eval_al </td>
- <td>(</td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>y</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const int </td>
- <td class="paramname"><em>size</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const int </td>
- <td class="paramname"><em>k</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>alpha</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>beta</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>gamma</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Evaluates an associated Legendre polynomials <img class="formulaInl" alt="$P_k^n(x,c)$" src="form_44.png"/> using the Clenshaw-algorithm. </p>
-<ul>
-<li>x A pointer to an array of nodes where the function is to be evaluated </li>
-<li>y A pointer to an array where the function values are returned </li>
-<li>size The length of x and y </li>
-<li>k The index <img class="formulaInl" alt="$k$" src="form_45.png"/> </li>
-<li>alpha A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\alpha_c^n,\ldots,\alpha_{c+k}^n$" src="form_46.png"/> </li>
-<li>beta A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\beta_c^n,\ldots,\beta_{c+k}^n$" src="form_47.png"/> </li>
-<li>gamma A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\gamma_c^n,\ldots,\gamma_{c+k}^n$" src="form_48.png"/> </li>
-</ul>
-
-<p>Definition at line <a class="el" href="legendre_8c_source.html#l00118">118</a> of file <a class="el" href="legendre_8c_source.html">legendre.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga1bc5682379de94e87031afa38e02675d"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int eval_al_thresh </td>
- <td>(</td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>y</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const int </td>
- <td class="paramname"><em>size</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">const int </td>
- <td class="paramname"><em>k</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>alpha</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>beta</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">R * </td>
- <td class="paramname"><em>gamma</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">R </td>
- <td class="paramname"><em>threshold</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Evaluates an associated Legendre polynomials <img class="formulaInl" alt="$P_k^n(x,c)$" src="form_44.png"/> using the Clenshaw-algorithm if it no exceeds a given threshold. </p>
-<ul>
-<li>x A pointer to an array of nodes where the function is to be evaluated </li>
-<li>y A pointer to an array where the function values are returned </li>
-<li>size The length of x and y </li>
-<li>k The index <img class="formulaInl" alt="$k$" src="form_45.png"/> </li>
-<li>alpha A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\alpha_c^n,\ldots,\alpha_{c+k}^n$" src="form_46.png"/> </li>
-<li>beta A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\beta_c^n,\ldots,\beta_{c+k}^n$" src="form_47.png"/> </li>
-<li>gamma A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\gamma_c^n,\ldots,\gamma_{c+k}^n$" src="form_48.png"/> </li>
-<li>threshold The threshold </li>
-</ul>
-
-<p>Definition at line <a class="el" href="legendre_8c_source.html#l00163">163</a> of file <a class="el" href="legendre_8c_source.html">legendre.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga47209b28b6561fca7349ed8afa5f9656"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static void c2e </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structnfsft__plan.html">nfsft_plan</a> * </td>
- <td class="paramname"><em>plan</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Converts coefficients <img class="formulaInl" alt="$\left(b_k^n\right)_{k=0}^M$" src="form_50.png"/> with <img class="formulaInl" alt="$M \in \mathbb{N}_0$" src="form_36.png"/>, <img class="formulaInl" alt="$-M \le n \le M$" src="form_51.png"/> from a linear combination of Chebyshev polynomials </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ f(\cos\vartheta) = \sum_{k=0}^{2\lfloor\frac{M}{2}\rfloor} a_k (\sin\vartheta)^{n\;\mathrm{mod}\;2} T_k(\cos\vartheta) \]" src="form_52.png"/>
-</p>
-<p> to coefficients <img class="formulaInl" alt="$\left(c_k^n\right)_{k=0}^M$" src="form_53.png"/> matching the representation by complex exponentials </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ f(\cos\vartheta) = \sum_{k=-M}^{M} c_k \mathrm{e}^{\mathrm{i}k\vartheta} \]" src="form_54.png"/>
-</p>
-<p> for each order <img class="formulaInl" alt="$n=-M,\ldots,M$" src="form_55.png"/>. </p>
-<ul>
-<li>plan The <code><a class="el" href="structnfsft__plan.html">nfsft_plan</a></code> containing the coefficients <img class="formulaInl" alt="$\left(b_k^n\right)_{k=0,\ldots,M;n=-M,\ldots,M}$" src="form_56.png"/></li>
-</ul>
-<dl class="section remark"><dt>Remarks:</dt><dd>The transformation is computed in place.</dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="nfsft_8c_source.html#l00111">111</a> of file <a class="el" href="nfsft_8c_source.html">nfsft.c</a>.</p>
-
-<p>References <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::f_hat_intern</a>, and <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::N</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ga0e033457136bc0ecb18bb57d3ee5aa37"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static void c2e_transposed </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structnfsft__plan.html">nfsft_plan</a> * </td>
- <td class="paramname"><em>plan</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Transposed version of the function <a class="el" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656">c2e</a>. </p>
-<ul>
-<li>plan The <code><a class="el" href="structnfsft__plan.html">nfsft_plan</a></code> containing the coefficients <img class="formulaInl" alt="$\left(c_k^n\right)_{k=-M,\ldots,M;n=-M,\ldots,M}$" src="form_57.png"/></li>
-</ul>
-<dl class="section remark"><dt>Remarks:</dt><dd>The transformation is computed in place.</dd></dl>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="nfsft_8c_source.html#l00189">189</a> of file <a class="el" href="nfsft_8c_source.html">nfsft.c</a>.</p>
-
-<p>References <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::f_hat</a>, and <a class="el" href="nfft3_8h_source.html#l00551">nfsft_plan::N</a>.</p>
-
-</div>
-</div>
-<hr/><h2>Variable Documentation</h2>
-<a class="anchor" id="ga0af81d81e1b436949ddc46dbd27346e5"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">struct <a class="el" href="structnfsft__wisdom.html">nfsft_wisdom</a> wisdom = {false,0U,-1,-1,0,0,0,0,0}</td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>The global wisdom structure for precomputed data. </p>
-<p><code>wisdom.initialized</code> is set to <code>false</code> and <code>wisdom.flags</code> is set to <code>0U</code>.</p>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition at line <a class="el" href="nfsft_8c_source.html#l00087">87</a> of file <a class="el" href="nfsft_8c_source.html">nfsft.c</a>.</p>
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/images/logo.png b/doc/api/html/images/logo.png
deleted file mode 100644
index b8511af..0000000
Binary files a/doc/api/html/images/logo.png and /dev/null differ
diff --git a/doc/api/html/images/sphere.png b/doc/api/html/images/sphere.png
deleted file mode 100644
index 42612e1..0000000
Binary files a/doc/api/html/images/sphere.png and /dev/null differ
diff --git a/doc/api/html/include_2api_8h_source.html b/doc/api/html/include_2api_8h_source.html
deleted file mode 100644
index d5ea22b..0000000
--- a/doc/api/html/include_2api_8h_source.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - api.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">include/api.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: infft.h 3483 2010-04-23 19:02:34Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#ifndef __API_H__</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor"></span><span class="preprocessor">#define __API_H__</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#endif </span><span class="comment">/* __API_H__ */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/index.html b/doc/api/html/index.html
deleted file mode 100644
index c69ddc4..0000000
--- a/doc/api/html/index.html
+++ /dev/null
@@ -1,40 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Main Page
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li class="current"><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">NFFT Documentation</div> </div>
-</div><!--header-->
-<div class="contents">
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/infft_8h_source.html b/doc/api/html/infft_8h_source.html
deleted file mode 100644
index aab7d6b..0000000
--- a/doc/api/html/infft_8h_source.html
+++ /dev/null
@@ -1,1430 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - infft.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">infft.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: infft.h 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">/* NFFT internal header file */</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#ifndef __INFFT_H__</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor"></span><span class="preprocessor">#define __INFFT_H__</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include <float.h></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor"></span><span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> </div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#include <stdlib.h></span> <span class="comment">/* size_t */</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include <stdarg.h></span> <span class="comment">/* va_list */</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include <stddef.h></span> <span class="comment">/* ptrdiff_t */</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#if HAVE_SYS_TYPES_H</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor"></span><span class="preprocessor">#include <sys/types.h></span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor">#if HAVE_STDINT_H</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor"></span><span class="preprocessor">#include <stdint.h></span> <span class="comment">/* uintptr_t, maybe */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#if HAVE_INTTYPES_H</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor"></span><span class="preprocessor">#include <inttypes.h></span> <span class="comment">/* uintptr_t, maybe */</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor">#include <fftw3.h></span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor">#include "ticks.h"</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment">/* Determine precision and name-mangling scheme. */</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor">#define CONCAT(prefix, name) prefix ## name</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor"></span><span class="preprocessor">#if defined(NFFT_SINGLE)</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">float</span> R;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keyword">typedef</span> <span class="keywordtype">float</span> _Complex C;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor">#define Y(name) CONCAT(nfftf_,name)</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="preprocessor"></span><span class="preprocessor">#define Z(name) CONCAT(fftwf_,name)</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT(name) CONCAT(nfsftf_,name)</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor"></span><span class="preprocessor">#elif defined(NFFT_LDOUBLE)</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> R;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keyword">typedef</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex C;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="preprocessor">#define Y(name) CONCAT(nfftl_,name)</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="preprocessor"></span><span class="preprocessor">#define Z(name) CONCAT(fftwl_,name)</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT(name) CONCAT(nfsftl_,name)</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor"></span><span class="keyword">typedef</span> <span class="keywordtype">double</span> R;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keyword">typedef</span> <span class="keywordtype">double</span> _Complex C;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor">#define Y(name) CONCAT(nfft_,name)</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor"></span><span class="preprocessor">#define Z(name) CONCAT(fftw_,name)</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT(name) CONCAT(nfsft_,name)</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="preprocessor"></span><span class="preprocessor">#define X(name) Y(name)</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="preprocessor">#define STRINGIZEx(x) #x</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="preprocessor"></span><span class="preprocessor">#define STRINGIZE(x) STRINGIZEx(x)</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="preprocessor">#ifdef NFFT_LDOUBLE</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="preprocessor"></span><span class="preprocessor"># define K(x) ((R) x##L)</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="preprocessor"></span><span class="preprocessor"># define K(x) ((R) x)</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="preprocessor"></span><span class="preprocessor">#define DK(name, value) const R name = K(value)</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment">/* Integral type large enough to contain a stride (what ``int'' should have been</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="comment"> * in the first place) */</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keyword">typedef</span> ptrdiff_t INT;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="preprocessor">#define KPI K(3.1415926535897932384626433832795028841971693993751)</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="preprocessor"></span><span class="preprocessor">#define K2PI K(6.2831853071795864769252867665590057683943387987502)</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="preprocessor"></span><span class="preprocessor">#define KE K(2.7182818284590452353602874713526624977572470937000)</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="preprocessor">#define IF(x,a,b) ((x)?(a):(b))</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="preprocessor"></span><span class="preprocessor">#define MIN(a,b) (((a)<(b))?(a):(b))</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="preprocessor"></span><span class="preprocessor">#define MAX(a,b) (((a)>(b))?(a):(b))</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="preprocessor"></span><span class="preprocessor">#define ABS(x) (((x)>K(0.0))?(x):(-(x)))</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="preprocessor"></span><span class="preprocessor">#define SIGN(a) (((a)>=0)?1:-1)</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="preprocessor"></span><span class="preprocessor">#define SIGN(a) (((a)>=0)?1:-1)</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="preprocessor"></span><span class="preprocessor">#define SIGNF(a) IF((a)<K(0.0),K(-1.0),K(1.0))</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="comment">/* macros for window functions */</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="preprocessor">#if defined(DIRAC_DELTA)</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="preprocessor"></span><span class="preprocessor"> #define PHI_HUT(k,d) K(1.0)</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="preprocessor"></span><span class="preprocessor"> #define PHI(x,d) IF(FABS((x)) < K(10E-8),K(1.0),K(0.0))</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_INIT(d)</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_FINALIZE</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_ESTIMATE_m 0</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="preprocessor"></span><span class="preprocessor">#elif defined(GAUSSIAN)</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="preprocessor"></span><span class="preprocessor"> #define PHI_HUT(k,d) ((R)EXP(-(POW(KPI*(k)/ths->n[d],K(2.0))*ths->b[d])))</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="preprocessor"></span><span class="preprocessor"> #define PHI(x,d) ((R)EXP(-POW((x)*((R)ths->n[d]),K(2.0)) / \</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="preprocessor"> ths->b[d])/SQRT(KPI*ths->b[d]))</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_INIT \</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="preprocessor"> int WINDOW_idx; \</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="preprocessor"> ths->b = (R*) Y(malloc)(ths->d*sizeof(R)); \</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="preprocessor"> for (WINDOW_idx = 0; WINDOW_idx < ths->d; WINDOW_idx++) \</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="preprocessor"> ths->b[WINDOW_idx]=(K(2.0)*ths->sigma[WINDOW_idx]) / \</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="preprocessor"> (K(2.0)*ths->sigma[WINDOW_idx] - K(1.0)) * (((R)ths->m) / KPI); \</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="preprocessor"> }</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_FINALIZE {Y(free)(ths->b);}</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_ESTIMATE_m 12</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="preprocessor"></span><span class="preprocessor">#elif defined(B_SPLINE)</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="preprocessor"></span><span class="preprocessor"> #define PHI_HUT(k,d) ((R)(((k) == 0) ? K(1.0) / ths->n[(d)] : \</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="preprocessor"> POW(SIN((k) * KPI / ths->n[(d)]) / ((k) * KPI / ths->n[(d)]), \</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="preprocessor"> K(2.0) * ths->m)/ths->n[(d)]))</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="preprocessor"></span><span class="preprocessor"> #define PHI(x,d) (Y(bspline)(2*ths->m,((x)*ths->n[(d)]) + \</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="preprocessor"> (R)ths->m,ths->spline_coeffs) / ths->n[(d)])</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_INIT \</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="preprocessor"> ths->spline_coeffs= (R*)Y(malloc)(2*ths->m*sizeof(R)); \</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="preprocessor"> }</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_FINALIZE {Y(free)(ths->spline_coeffs);}</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_ESTIMATE_m 11</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="preprocessor"></span><span class="preprocessor">#elif defined(SINC_POWER)</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor"></span><span class="preprocessor"> #define PHI_HUT(k,d) (Y(bspline)(2 * ths->m, (K(2.0) * ths->m*(k)) / \</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor"> ((K(2.0) * ths->sigma[(d)] - 1) * ths->n[(d)] / \</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="preprocessor"> ths->sigma[(d)]) + (R)ths->m, ths->spline_coeffs))</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="preprocessor"></span><span class="preprocessor"> #define PHI(x,d) ((R)(ths->n[(d)] / ths->sigma[(d)] * \</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="preprocessor"> (K(2.0) * ths->sigma[(d)] - K(1.0))/ (K(2.0)*ths->m) * \</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="preprocessor"> POW(Y(sinc)(KPI * ths->n[(d)] / ths->sigma[(d)] * (x) * \</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="preprocessor"> (K(2.0) * ths->sigma[(d)] - K(1.0)) / (K(2.0)*ths->m)) , 2*ths->m) / \</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor"> ths->n[(d)]))</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_INIT \</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="preprocessor"> ths->spline_coeffs= (R*)Y(malloc)(2 * ths->m * sizeof(R)); \</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="preprocessor"> }</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_FINALIZE {Y(free)(ths->spline_coeffs);}</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_ESTIMATE_m 9</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="preprocessor"></span><span class="preprocessor">#else </span><span class="comment">/* Kaiser-Bessel is the default. */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="preprocessor"></span><span class="preprocessor"> #define PHI_HUT(k,d) ((R)Y(bessel_i0)(ths->m * SQRT(\</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="preprocessor"> POW((R)(ths->b[d]), K(2.0)) - POW(K(2.0) * KPI * (k) / ths->n[d], K(2.0)))))</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="preprocessor"></span><span class="preprocessor"> #define PHI(x,d) ((R)((POW((R)(ths->m), K(2.0))\</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="preprocessor"> -POW((x)*ths->n[d],K(2.0))) > 0)? \</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="preprocessor"> SINH(ths->b[d] * SQRT(POW((R)(ths->m),K(2.0)) - \</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="preprocessor"> POW((x)*ths->n[d],K(2.0))))/(KPI*SQRT(POW((R)(ths->m),K(2.0)) - \</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="preprocessor"> POW((x)*ths->n[d],K(2.0)))) : (((POW((R)(ths->m),K(2.0)) - \</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="preprocessor"> POW((x)*ths->n[d],K(2.0))) < 0)? SIN(ths->b[d] * \</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="preprocessor"> SQRT(POW(ths->n[d]*(x),K(2.0)) - POW((R)(ths->m), K(2.0)))) / \</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="preprocessor"> (KPI*SQRT(POW(ths->n[d]*(x),K(2.0)) - POW((R)(ths->m),K(2.0)))):K(1.0)))</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_INIT \</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="preprocessor"> int WINDOW_idx; \</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="preprocessor"> ths->b = (R*) Y(malloc)(ths->d*sizeof(R)); \</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="preprocessor"> for (WINDOW_idx = 0; WINDOW_idx < ths->d; WINDOW_idx++) \</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="preprocessor"> ths->b[WINDOW_idx] = ((R)KPI*(K(2.0)-K(1.0) / ths->sigma[WINDOW_idx])); \</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="preprocessor"> }</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_FINALIZE {Y(free)(ths->b);}</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="preprocessor"></span><span class="preprocessor"> #define WINDOW_HELP_ESTIMATE_m 6</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="preprocessor">#if defined(NFFT_LDOUBLE)</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_COPYSIGNL == 0</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> copysignl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_NEXTAFTERL == 0</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> nextafterl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_NANL == 0</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> nanl(<span class="keyword">const</span> <span class="keywordtype">char</span> *tag);</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CEILL == 0</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> ceill(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FLOORL == 0</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> floorl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_NEARBYINTL == 0</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> nearbyintl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_RINTL == 0</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> rintl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ROUNDL == 0</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> roundl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LRINTL == 0</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> lrintl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LROUNDL == 0</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> lroundl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LLRINTL == 0</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> llrintl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LLROUNDL == 0</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> llroundl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TRUNCL == 0</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> truncl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMODL == 0</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> fmodl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_REMAINDERL == 0</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> remainderl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_REMQUOL == 0</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> remquol(<span class="keywordtype">long</span> <span class="keywordtype">double</span> x, <span class="keywordtype">long</span> <span class="keywordtype">double</span> y, <span class="keywordtype">int</span> *);</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FDIML == 0</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> fdiml(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMAXL == 0</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> fmaxl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMINL == 0</span></div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> fminl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMAL == 0</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> fmal(<span class="keywordtype">long</span> <span class="keywordtype">double</span> x, <span class="keywordtype">long</span> <span class="keywordtype">double</span> y, <span class="keywordtype">long</span> <span class="keywordtype">double</span> z);</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FABSL == 0</span></div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> fabsl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SQRTL == 0</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> sqrtl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CBRTL == 0</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> cbrtl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_HYPOTL == 0</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> hypotl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_EXPL == 0</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> expl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_EXP2L == 0</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> exp2l(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_EXPM1L == 0</span></div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> expm1l(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOGL == 0</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> logl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOG2L == 0</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> log2l(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOG10L == 0</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> log10l(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOG1PL == 0</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> log1pl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOGBL == 0</span></div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> logbl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ILOGBL == 0</span></div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">int</span> ilogbl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_MODFL == 0</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> modfl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span> *);</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FREXPL == 0</span></div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> frexpl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">int</span> *);</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LDEXPL == 0</span></div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> ldexpl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SCALBNL == 0</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> scalbnl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SCALBLNL == 0</span></div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> scalblnl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_POWL == 0</span></div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> powl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_COSL == 0</span></div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> cosl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SINL == 0</span></div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> sinl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TANL == 0</span></div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> tanl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_COSHL == 0</span></div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> coshl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SINHL == 0</span></div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> sinhl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TANHL == 0</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> tanhl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ACOSL == 0</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> acosl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ASINL == 0</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> asinl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ATANL == 0</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> atanl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ATAN2L == 0</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> atan2l(<span class="keywordtype">long</span> <span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ACOSHL == 0</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> acoshl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ASINHL == 0</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> asinhl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ATANHL == 0</span></div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> atanhl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TGAMMAL == 0</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> tgammal(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LGAMMAL == 0</span></div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> lgammal(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_J0L == 0</span></div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> j0l(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_J1L == 0</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> j1l(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_JNL == 0</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> jnl(<span class="keywordtype">int</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_Y0L == 0</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> y0l(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_Y1L == 0</span></div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> y1l(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_YNL == 0</span></div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> ynl(<span class="keywordtype">int</span>, <span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ERFL == 0</span></div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> erfl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ERFCL == 0</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> erfcl(<span class="keywordtype">long</span> <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CREALL == 0</span></div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> creall(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CIMAGL == 0</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> cimagl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CABSL == 0</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> cabsl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CARGL == 0</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> cargl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CONJL == 0</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex conjl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CPROJL == 0</span></div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex cprojl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CSQRTL == 0</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex csqrtl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CEXPL == 0</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex cexpl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CLOGL == 0</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex clogl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CPOWL == 0</span></div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex cpowl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z, <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex w);</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CSINL == 0</span></div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex csinl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CCOSL == 0</span></div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex ccosl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CTANL == 0</span></div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex ctanl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CASINL == 0</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex casinl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CACOSL == 0</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex cacosl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CATANL == 0</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex catanl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CSINHL == 0</span></div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex csinhl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CCOSHL == 0</span></div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex ccoshl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CTANHL == 0</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex ctanhl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CASINHL == 0</span></div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex casinhl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CACOSHL == 0</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex cacoshl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CATANHL == 0</span></div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex catanhl(<span class="keywordtype">long</span> <span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="preprocessor"></span><span class="preprocessor">#define COPYSIGN copysignl</span></div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="preprocessor"></span><span class="preprocessor">#define NEXTAFTER nextafterl</span></div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor"></span><span class="preprocessor">#define MKNAN nanl</span></div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="preprocessor"></span><span class="preprocessor">#define CEIL ceill</span></div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="preprocessor"></span><span class="preprocessor">#define FLOOR floorl</span></div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="preprocessor"></span><span class="preprocessor">#define NEARBYINT nearbyintl</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="preprocessor"></span><span class="preprocessor">#define RINT rintl</span></div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="preprocessor"></span><span class="preprocessor">#define ROUND roundl</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="preprocessor"></span><span class="preprocessor">#define LRINT lrintl</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="preprocessor"></span><span class="preprocessor">#define LROUND lroundl</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="preprocessor"></span><span class="preprocessor">#define LLRINT llrintl</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="preprocessor"></span><span class="preprocessor">#define LLROUND llroundl</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="preprocessor"></span><span class="preprocessor">#define TRUNC truncl</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="preprocessor"></span><span class="preprocessor">#define FMOD fmodl</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="preprocessor"></span><span class="preprocessor">#define REMAINDER remainderl</span></div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="preprocessor"></span><span class="preprocessor">#define REMQUO remquol</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor"></span><span class="preprocessor">#define FDIM fdiml</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor"></span><span class="preprocessor">#define FMAX fmaxl</span></div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="preprocessor"></span><span class="preprocessor">#define FMIN fminl</span></div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="preprocessor"></span><span class="preprocessor">#define FFMA fmal</span></div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="preprocessor"></span><span class="preprocessor">#define FABS fabsl</span></div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor"></span><span class="preprocessor">#define SQRT sqrtl</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="preprocessor"></span><span class="preprocessor">#define CBRT cbrtl</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="preprocessor"></span><span class="preprocessor">#define HYPOT hypotl</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor"></span><span class="preprocessor">#define EXP expl</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor"></span><span class="preprocessor">#define EXP2 exp2l</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="preprocessor"></span><span class="preprocessor">#define EXPM1 expm1l</span></div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG logl</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG2 log2l</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG10 log10l</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG1P log1pl</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="preprocessor"></span><span class="preprocessor">#define LOGB logbl</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="preprocessor"></span><span class="preprocessor">#define ILOGB ilogbl</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor"></span><span class="preprocessor">#define MODF modfl</span></div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor"></span><span class="preprocessor">#define FREXP frexpl</span></div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="preprocessor"></span><span class="preprocessor">#define LDEXP ldexpl</span></div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor"></span><span class="preprocessor">#define SCALBN scalbnl</span></div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="preprocessor"></span><span class="preprocessor">#define SCALBLN scalblnl</span></div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor"></span><span class="preprocessor">#define POW powl</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="preprocessor"></span><span class="preprocessor">#define COS cosl</span></div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="preprocessor"></span><span class="preprocessor">#define SIN sinl</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="preprocessor"></span><span class="preprocessor">#define TAN tanl</span></div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="preprocessor"></span><span class="preprocessor">#define COSH coshl</span></div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="preprocessor"></span><span class="preprocessor">#define SINH sinhl</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="preprocessor"></span><span class="preprocessor">#define TANH tanhl</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="preprocessor"></span><span class="preprocessor">#define ACOS acosl</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="preprocessor"></span><span class="preprocessor">#define ASIN asinl</span></div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="preprocessor"></span><span class="preprocessor">#define ATAN atanl</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="preprocessor"></span><span class="preprocessor">#define ATAN2 atan2l</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor"></span><span class="preprocessor">#define ACOSH acoshl</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor"></span><span class="preprocessor">#define ASINH asinhl</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor"></span><span class="preprocessor">#define ATANH atanhl</span></div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor"></span><span class="preprocessor">#define TGAMMA tgammal</span></div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor"></span><span class="preprocessor">#define LGAMMA lgammal</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="preprocessor"></span><span class="preprocessor">#define J0 j0l</span></div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="preprocessor"></span><span class="preprocessor">#define J1 j1l</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="preprocessor"></span><span class="preprocessor">#define JN jnl</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor"></span><span class="preprocessor">#define Y0 y0l</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="preprocessor"></span><span class="preprocessor">#define Y1 y1l</span></div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="preprocessor"></span><span class="preprocessor">#define YN ynl</span></div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="preprocessor"></span><span class="preprocessor">#define ERF erfl</span></div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="preprocessor"></span><span class="preprocessor">#define ERFC erfcl</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="preprocessor"></span><span class="preprocessor">#define CREAL creall</span></div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="preprocessor"></span><span class="preprocessor">#define CIMAG cimagl</span></div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="preprocessor"></span><span class="preprocessor">#define CABS cabsl</span></div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor"></span><span class="preprocessor">#define CARG cargl</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="preprocessor"></span><span class="preprocessor">#define CONJ conjl</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="preprocessor"></span><span class="preprocessor">#define CPROJ cprojl</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor"></span><span class="preprocessor">#define CSQRT csqrtl</span></div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="preprocessor"></span><span class="preprocessor">#define CEXP cexpl</span></div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="preprocessor"></span><span class="preprocessor">#define CLOG clogl</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="preprocessor"></span><span class="preprocessor">#define CPOW cpowl</span></div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="preprocessor"></span><span class="preprocessor">#define CSIN csinl</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="preprocessor"></span><span class="preprocessor">#define CCOS ccosl</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="preprocessor"></span><span class="preprocessor">#define CTAN ctanl</span></div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="preprocessor"></span><span class="preprocessor">#define CASIN casinl</span></div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="preprocessor"></span><span class="preprocessor">#define CACOS cacosl</span></div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="preprocessor"></span><span class="preprocessor">#define CATAN catanl</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor"></span><span class="preprocessor">#define CSINH csinhl</span></div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="preprocessor"></span><span class="preprocessor">#define CCOSH ccoshl</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor"></span><span class="preprocessor">#define CTANH ctanhl</span></div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="preprocessor"></span><span class="preprocessor">#define CASINH casinhl</span></div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="preprocessor"></span><span class="preprocessor">#define CACOSH cacoshl</span></div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="preprocessor"></span><span class="preprocessor">#define CATANH catanhl</span></div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="preprocessor"></span><span class="preprocessor">#elif defined(NFFT_SINGLE)</span></div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_COPYSIGNF == 0</span></div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> copysignf(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_NEXTAFTERF == 0</span></div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> nextafterf(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_NANF == 0</span></div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> nanf(<span class="keyword">const</span> <span class="keywordtype">char</span> *tag);</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CEILF == 0</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> ceilf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FLOORF == 0</span></div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> floorf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_NEARBYINTF == 0</span></div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> nearbyintf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_RINTF == 0</span></div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> rintf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ROUNDF == 0</span></div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> roundf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LRINTF == 0</span></div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> lrintf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LROUNDF == 0</span></div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> lroundf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LLRINTF == 0</span></div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> llrintf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LLROUNDF == 0</span></div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> llroundf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TRUNCF == 0</span></div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> truncf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMODF == 0</span></div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> fmodf(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_REMAINDERF == 0</span></div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> remainderf(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_REMQUOF == 0</span></div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> remquof(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keywordtype">int</span> *);</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FDIMF == 0</span></div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> fdimf(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMAXF == 0</span></div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> fmaxf(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMINF == 0</span></div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> fminf(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMAF == 0</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> fmaf(<span class="keywordtype">float</span> x, <span class="keywordtype">float</span> y, <span class="keywordtype">float</span> z);</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FABSF == 0</span></div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> fabsf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SQRTF == 0</span></div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> sqrtf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CBRTF == 0</span></div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> cbrtf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_HYPOTF == 0</span></div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> hypotf(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_EXPF == 0</span></div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> expf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_EXP2F == 0</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> exp2f(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_EXPM1F == 0</span></div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> expm1f(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOGF == 0</span></div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> logf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOG2F == 0</span></div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> log2f(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOG10F == 0</span></div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> log10f(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOG1PF == 0</span></div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> log1pf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOGBF == 0</span></div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> logbf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ILOGBF == 0</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">int</span> ilogbf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_MODFF == 0</span></div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> modff(<span class="keywordtype">float</span>, <span class="keywordtype">float</span> *);</div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FREXPF == 0</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> frexpf(<span class="keywordtype">float</span>, <span class="keywordtype">int</span> *);</div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LDEXPF == 0</span></div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> ldexpf(<span class="keywordtype">float</span>, <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SCALBNF == 0</span></div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> scalbnf(<span class="keywordtype">float</span>, <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SCALBLNF == 0</span></div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> scalblnf(<span class="keywordtype">float</span>, <span class="keywordtype">long</span> <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_POWF == 0</span></div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> powf(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_COSF == 0</span></div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> cosf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SINF == 0</span></div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> sinf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TANF == 0</span></div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> tanf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_COSHF == 0</span></div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> coshf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SINHF == 0</span></div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> sinhf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TANHF == 0</span></div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> tanhf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ACOSF == 0</span></div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> acosf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ASINF == 0</span></div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> asinf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ATANF == 0</span></div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> atanf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ATAN2F == 0</span></div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> atan2f(<span class="keywordtype">float</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ACOSHF == 0</span></div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> acoshf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ASINHF == 0</span></div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> asinhf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ATANHF == 0</span></div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> atanhf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TGAMMAF == 0</span></div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> tgammaf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LGAMMAF == 0</span></div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> lgammaf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_J0F == 0</span></div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> j0f(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_J1F == 0</span></div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> j1f(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_JNF == 0</span></div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> jnf(<span class="keywordtype">int</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_Y0F == 0</span></div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> y0f(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_Y1F == 0</span></div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> y1f(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_YNF == 0</span></div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> ynf(<span class="keywordtype">int</span>, <span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ERFF == 0</span></div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> erff(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ERFCF == 0</span></div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> erfcf(<span class="keywordtype">float</span>);</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CREALF == 0</span></div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> crealf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CIMAGF == 0</span></div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> cimagf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CABSF == 0</span></div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> cabsf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CARGF == 0</span></div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> cargf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CONJF == 0</span></div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex conjf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CPROJF == 0</span></div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex cprojf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CSQRTF == 0</span></div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex csqrtf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CEXPF == 0</span></div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex cexpf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CLOGF == 0</span></div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex clogf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CPOWF == 0</span></div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex cpowf(<span class="keywordtype">float</span> _Complex z, <span class="keywordtype">float</span> _Complex w);</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CSINF == 0</span></div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex csinf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CCOSF == 0</span></div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex ccosf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CTANF == 0</span></div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex ctanf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CASINF == 0</span></div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex casinf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CACOSF == 0</span></div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex cacosf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CATANF == 0</span></div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex catanf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CSINHF == 0</span></div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex csinhf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CCOSHF == 0</span></div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex ccoshf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CTANHF == 0</span></div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex ctanhf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CASINHF == 0</span></div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex casinhf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CACOSHF == 0</span></div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex cacoshf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CATANHF == 0</span></div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">float</span> _Complex catanhf(<span class="keywordtype">float</span> _Complex z);</div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="preprocessor"></span><span class="preprocessor">#define COPYSIGN copysignf</span></div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> <span class="preprocessor"></span><span class="preprocessor">#define NEXTAFTER nextafterf</span></div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="preprocessor"></span><span class="preprocessor">#define MKNAN nanf</span></div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> <span class="preprocessor"></span><span class="preprocessor">#define CEIL ceilf</span></div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> <span class="preprocessor"></span><span class="preprocessor">#define FLOOR floorf</span></div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> <span class="preprocessor"></span><span class="preprocessor">#define NEARBYINT nearbyintf</span></div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> <span class="preprocessor"></span><span class="preprocessor">#define RINT rintf</span></div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> <span class="preprocessor"></span><span class="preprocessor">#define ROUND roundf</span></div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> <span class="preprocessor"></span><span class="preprocessor">#define LRINT lrintf</span></div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> <span class="preprocessor"></span><span class="preprocessor">#define LROUND lroundf</span></div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="preprocessor"></span><span class="preprocessor">#define LLRINT llrintf</span></div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> <span class="preprocessor"></span><span class="preprocessor">#define LLROUND llroundf</span></div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> <span class="preprocessor"></span><span class="preprocessor">#define TRUNC truncf</span></div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="preprocessor"></span><span class="preprocessor">#define FMOD fmodf</span></div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="preprocessor"></span><span class="preprocessor">#define REMAINDER remainderf</span></div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> <span class="preprocessor"></span><span class="preprocessor">#define REMQUO remquof</span></div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <span class="preprocessor"></span><span class="preprocessor">#define FDIM fdimf</span></div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> <span class="preprocessor"></span><span class="preprocessor">#define FMAX fmaxf</span></div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> <span class="preprocessor"></span><span class="preprocessor">#define FMIN fminf</span></div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> <span class="preprocessor"></span><span class="preprocessor">#define FFMA fmaf</span></div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> <span class="preprocessor"></span><span class="preprocessor">#define FABS fabsf</span></div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> <span class="preprocessor"></span><span class="preprocessor">#define SQRT sqrtf</span></div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> <span class="preprocessor"></span><span class="preprocessor">#define CBRT cbrtf</span></div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> <span class="preprocessor"></span><span class="preprocessor">#define HYPOT hypotf</span></div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> <span class="preprocessor"></span><span class="preprocessor">#define EXP expf</span></div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="preprocessor"></span><span class="preprocessor">#define EXP2 exp2f</span></div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> <span class="preprocessor"></span><span class="preprocessor">#define EXPM1 expm1f</span></div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG logf</span></div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG2 log2f</span></div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG10 log10f</span></div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG1P log1pf</span></div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> <span class="preprocessor"></span><span class="preprocessor">#define LOGB logbf</span></div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="preprocessor"></span><span class="preprocessor">#define ILOGB ilogbf</span></div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> <span class="preprocessor"></span><span class="preprocessor">#define MODF modff</span></div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> <span class="preprocessor"></span><span class="preprocessor">#define FREXP frexpf</span></div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> <span class="preprocessor"></span><span class="preprocessor">#define LDEXP ldexpf</span></div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> <span class="preprocessor"></span><span class="preprocessor">#define SCALBN scalbnf</span></div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> <span class="preprocessor"></span><span class="preprocessor">#define SCALBLN scalblnf</span></div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> <span class="preprocessor"></span><span class="preprocessor">#define POW powf</span></div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="preprocessor"></span><span class="preprocessor">#define COS cosf</span></div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> <span class="preprocessor"></span><span class="preprocessor">#define SIN sinf</span></div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> <span class="preprocessor"></span><span class="preprocessor">#define TAN tanf</span></div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> <span class="preprocessor"></span><span class="preprocessor">#define COSH coshf</span></div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> <span class="preprocessor"></span><span class="preprocessor">#define SINH sinhf</span></div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> <span class="preprocessor"></span><span class="preprocessor">#define TANH tanhf</span></div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> <span class="preprocessor"></span><span class="preprocessor">#define ACOS acosf</span></div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> <span class="preprocessor"></span><span class="preprocessor">#define ASIN asinf</span></div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> <span class="preprocessor"></span><span class="preprocessor">#define ATAN atanf</span></div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> <span class="preprocessor"></span><span class="preprocessor">#define ATAN2 atan2f</span></div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> <span class="preprocessor"></span><span class="preprocessor">#define ACOSH acoshf</span></div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> <span class="preprocessor"></span><span class="preprocessor">#define ASINH asinhf</span></div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> <span class="preprocessor"></span><span class="preprocessor">#define ATANH atanhf</span></div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> <span class="preprocessor"></span><span class="preprocessor">#define TGAMMA tgammaf</span></div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> <span class="preprocessor"></span><span class="preprocessor">#define LGAMMA lgammaf</span></div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="preprocessor"></span><span class="preprocessor">#define J0 j0f</span></div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> <span class="preprocessor"></span><span class="preprocessor">#define J1 j1f</span></div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> <span class="preprocessor"></span><span class="preprocessor">#define JN jnf</span></div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> <span class="preprocessor"></span><span class="preprocessor">#define Y0 y0f</span></div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="preprocessor"></span><span class="preprocessor">#define Y1 y1f</span></div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> <span class="preprocessor"></span><span class="preprocessor">#define YN ynf</span></div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> <span class="preprocessor"></span><span class="preprocessor">#define ERF erff</span></div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <span class="preprocessor"></span><span class="preprocessor">#define ERFC erfcf</span></div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> <span class="preprocessor"></span><span class="preprocessor">#define CREAL crealf</span></div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> <span class="preprocessor"></span><span class="preprocessor">#define CIMAG cimagf</span></div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> <span class="preprocessor"></span><span class="preprocessor">#define CABS cabsf</span></div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> <span class="preprocessor"></span><span class="preprocessor">#define CARG cargf</span></div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> <span class="preprocessor"></span><span class="preprocessor">#define CONJ conjf</span></div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> <span class="preprocessor"></span><span class="preprocessor">#define CPROJ cprojf</span></div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> <span class="preprocessor"></span><span class="preprocessor">#define CSQRT csqrtf</span></div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> <span class="preprocessor"></span><span class="preprocessor">#define CEXP cexpf</span></div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> <span class="preprocessor"></span><span class="preprocessor">#define CLOG clogf</span></div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> <span class="preprocessor"></span><span class="preprocessor">#define CPOW cpowf</span></div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="preprocessor"></span><span class="preprocessor">#define CSIN csinf</span></div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> <span class="preprocessor"></span><span class="preprocessor">#define CCOS ccosf</span></div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> <span class="preprocessor"></span><span class="preprocessor">#define CTAN ctanf</span></div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="preprocessor"></span><span class="preprocessor">#define CASIN casinf</span></div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> <span class="preprocessor"></span><span class="preprocessor">#define CACOS cacosf</span></div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> <span class="preprocessor"></span><span class="preprocessor">#define CATAN catanf</span></div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> <span class="preprocessor"></span><span class="preprocessor">#define CSINH csinhf</span></div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> <span class="preprocessor"></span><span class="preprocessor">#define CCOSH ccoshf</span></div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> <span class="preprocessor"></span><span class="preprocessor">#define CTANH ctanhf</span></div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="preprocessor"></span><span class="preprocessor">#define CASINH casinhf</span></div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> <span class="preprocessor"></span><span class="preprocessor">#define CACOSH cacoshf</span></div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> <span class="preprocessor"></span><span class="preprocessor">#define CATANH catanhf</span></div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_COPYSIGN == 0</span></div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> copysign(<span class="keywordtype">double</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_NEXTAFTER == 0</span></div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> nextafter(<span class="keywordtype">double</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_NAN == 0</span></div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> nan(<span class="keyword">const</span> <span class="keywordtype">char</span> *tag);</div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CEIL == 0</span></div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> ceil(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FLOOR == 0</span></div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> floor(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_NEARBYINT == 0</span></div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> nearbyint(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_RINT == 0</span></div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> rint(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ROUND == 0</span></div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> round(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LRINT == 0</span></div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> lrint(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LROUND == 0</span></div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> lround(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LLRINT == 0</span></div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> llrint(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LLROUND == 0</span></div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">long</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> llround(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TRUNC == 0</span></div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> trunc(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMOD == 0</span></div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> fmod(<span class="keywordtype">double</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_REMAINDER == 0</span></div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> remainder(<span class="keywordtype">double</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_REMQUO == 0</span></div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> remquo(<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">int</span> *);</div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FDIM == 0</span></div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> fdim(<span class="keywordtype">double</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMAX == 0</span></div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> fmax(<span class="keywordtype">double</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMIN == 0</span></div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> fmin(<span class="keywordtype">double</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FMA == 0</span></div>
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> fma(<span class="keywordtype">double</span> x, <span class="keywordtype">double</span> y, <span class="keywordtype">double</span> z);</div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FABS == 0</span></div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> fabs(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SQRT == 0</span></div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> sqrt(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CBRT == 0</span></div>
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> cbrt(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_HYPOT == 0</span></div>
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> hypot(<span class="keywordtype">double</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_EXP == 0</span></div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> exp(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_EXP2 == 0</span></div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> exp2(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00928"></a><span class="lineno"> 928</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_EXPM1 == 0</span></div>
-<div class="line"><a name="l00929"></a><span class="lineno"> 929</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> expm1(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOG == 0</span></div>
-<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> log(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOG2 == 0</span></div>
-<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> log2(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOG10 == 0</span></div>
-<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> log10(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOG1P == 0</span></div>
-<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> log1p(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LOGB == 0</span></div>
-<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> logb(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ILOGB == 0</span></div>
-<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">int</span> ilogb(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_MODF == 0</span></div>
-<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> modf(<span class="keywordtype">double</span>, <span class="keywordtype">double</span> *);</div>
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_FREXP == 0</span></div>
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> frexp(<span class="keywordtype">double</span>, <span class="keywordtype">int</span> *);</div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LDEXP == 0</span></div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> ldexp(<span class="keywordtype">double</span>, <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SCALBN == 0</span></div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> scalbn(<span class="keywordtype">double</span>, <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SCALBLN == 0</span></div>
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> scalbln(<span class="keywordtype">double</span>, <span class="keywordtype">long</span> <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_POW == 0</span></div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> pow(<span class="keywordtype">double</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_COS == 0</span></div>
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> cos(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SIN == 0</span></div>
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> sin(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TAN == 0</span></div>
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> tan(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_COSH == 0</span></div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> cosh(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SINH == 0</span></div>
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> sinh(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TANH == 0</span></div>
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> tanh(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ACOS == 0</span></div>
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> acos(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ASIN == 0</span></div>
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> asin(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ATAN == 0</span></div>
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> atan(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ATAN2 == 0</span></div>
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> atan2(<span class="keywordtype">double</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ACOSH == 0</span></div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> acosh(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ASINH == 0</span></div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> asinh(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ATANH == 0</span></div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> atanh(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_TGAMMA == 0</span></div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> tgamma(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_LGAMMA == 0</span></div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> lgamma(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_J0 == 0</span></div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> j0(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_J1 == 0</span></div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> j1(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_JN == 0</span></div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> jn(<span class="keywordtype">int</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_Y0 == 0</span></div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> y0(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_Y1 == 0</span></div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> y1(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_YN == 0</span></div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> yn(<span class="keywordtype">int</span>, <span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ERF == 0</span></div>
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> erf(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_ERFC == 0</span></div>
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> erfc(<span class="keywordtype">double</span>);</div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CREAL == 0</span></div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> creal(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CIMAG == 0</span></div>
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> cimag(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CABS == 0</span></div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> cabs(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CARG == 0</span></div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> carg(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CONJ == 0</span></div>
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex conj(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CPROJ == 0</span></div>
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex cproj(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CSQRT == 0</span></div>
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex csqrt(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CEXP == 0</span></div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex cexp(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CLOG == 0</span></div>
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex clog(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CPOW == 0</span></div>
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex cpow(<span class="keywordtype">double</span> _Complex z, <span class="keywordtype">double</span> _Complex w);</div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CSIN == 0</span></div>
-<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex csin(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CCOS == 0</span></div>
-<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex ccos(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CTAN == 0</span></div>
-<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex ctan(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CASIN == 0</span></div>
-<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex casin(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CACOS == 0</span></div>
-<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex cacos(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CATAN == 0</span></div>
-<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex catan(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CSINH == 0</span></div>
-<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex csinh(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CCOSH == 0</span></div>
-<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex ccosh(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CTANH == 0</span></div>
-<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex ctanh(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CASINH == 0</span></div>
-<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex casinh(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CACOSH == 0</span></div>
-<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex cacosh(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_CATANH == 0</span></div>
-<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="keywordtype">double</span> _Complex catanh(<span class="keywordtype">double</span> _Complex z);</div>
-<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span> <span class="preprocessor"></span><span class="preprocessor">#define COPYSIGN copysign</span></div>
-<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span> <span class="preprocessor"></span><span class="preprocessor">#define NEXTAFTER nextafter</span></div>
-<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> <span class="preprocessor"></span><span class="preprocessor">#define MKNAN nan</span></div>
-<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> <span class="preprocessor"></span><span class="preprocessor">#define CEIL ceil</span></div>
-<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> <span class="preprocessor"></span><span class="preprocessor">#define FLOOR floor</span></div>
-<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span> <span class="preprocessor"></span><span class="preprocessor">#define NEARBYINT nearbyint</span></div>
-<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span> <span class="preprocessor"></span><span class="preprocessor">#define RINT rint</span></div>
-<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span> <span class="preprocessor"></span><span class="preprocessor">#define ROUND round</span></div>
-<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span> <span class="preprocessor"></span><span class="preprocessor">#define LRINT lrint</span></div>
-<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span> <span class="preprocessor"></span><span class="preprocessor">#define LROUND lround</span></div>
-<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span> <span class="preprocessor"></span><span class="preprocessor">#define LLRINT llrint</span></div>
-<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span> <span class="preprocessor"></span><span class="preprocessor">#define LLROUND llround</span></div>
-<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span> <span class="preprocessor"></span><span class="preprocessor">#define TRUNC trunc</span></div>
-<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span> <span class="preprocessor"></span><span class="preprocessor">#define FMOD fmod</span></div>
-<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span> <span class="preprocessor"></span><span class="preprocessor">#define REMAINDER remainder</span></div>
-<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span> <span class="preprocessor"></span><span class="preprocessor">#define REMQUO remquo</span></div>
-<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span> <span class="preprocessor"></span><span class="preprocessor">#define FDIM fdim</span></div>
-<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span> <span class="preprocessor"></span><span class="preprocessor">#define FMAX fmax</span></div>
-<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span> <span class="preprocessor"></span><span class="preprocessor">#define FMIN fmin</span></div>
-<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span> <span class="preprocessor"></span><span class="preprocessor">#define FFMA fma</span></div>
-<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span> <span class="preprocessor"></span><span class="preprocessor">#define FABS fabs</span></div>
-<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span> <span class="preprocessor"></span><span class="preprocessor">#define SQRT sqrt</span></div>
-<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span> <span class="preprocessor"></span><span class="preprocessor">#define CBRT cbrt</span></div>
-<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span> <span class="preprocessor"></span><span class="preprocessor">#define HYPOT hypot</span></div>
-<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span> <span class="preprocessor"></span><span class="preprocessor">#define EXP exp</span></div>
-<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span> <span class="preprocessor"></span><span class="preprocessor">#define EXP2 exp2</span></div>
-<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span> <span class="preprocessor"></span><span class="preprocessor">#define EXPM1 expm1</span></div>
-<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG log</span></div>
-<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG2 log2</span></div>
-<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG10 log10</span></div>
-<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span> <span class="preprocessor"></span><span class="preprocessor">#define LOG1P log1p</span></div>
-<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span> <span class="preprocessor"></span><span class="preprocessor">#define LOGB logb</span></div>
-<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span> <span class="preprocessor"></span><span class="preprocessor">#define ILOGB ilogb</span></div>
-<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span> <span class="preprocessor"></span><span class="preprocessor">#define MODF modf</span></div>
-<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span> <span class="preprocessor"></span><span class="preprocessor">#define FREXP frexp</span></div>
-<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span> <span class="preprocessor"></span><span class="preprocessor">#define LDEXP ldexp</span></div>
-<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span> <span class="preprocessor"></span><span class="preprocessor">#define SCALBN scalbn</span></div>
-<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span> <span class="preprocessor"></span><span class="preprocessor">#define SCALBLN scalbln</span></div>
-<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span> <span class="preprocessor"></span><span class="preprocessor">#define POW pow</span></div>
-<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span> <span class="preprocessor"></span><span class="preprocessor">#define COS cos</span></div>
-<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span> <span class="preprocessor"></span><span class="preprocessor">#define SIN sin</span></div>
-<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span> <span class="preprocessor"></span><span class="preprocessor">#define TAN tan</span></div>
-<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span> <span class="preprocessor"></span><span class="preprocessor">#define COSH cosh</span></div>
-<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span> <span class="preprocessor"></span><span class="preprocessor">#define SINH sinh</span></div>
-<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span> <span class="preprocessor"></span><span class="preprocessor">#define TANH tanh</span></div>
-<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span> <span class="preprocessor"></span><span class="preprocessor">#define ACOS acos</span></div>
-<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span> <span class="preprocessor"></span><span class="preprocessor">#define ASIN asin</span></div>
-<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span> <span class="preprocessor"></span><span class="preprocessor">#define ATAN atan</span></div>
-<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span> <span class="preprocessor"></span><span class="preprocessor">#define ATAN2 atan2</span></div>
-<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span> <span class="preprocessor"></span><span class="preprocessor">#define ACOSH acosh</span></div>
-<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span> <span class="preprocessor"></span><span class="preprocessor">#define ASINH asinh</span></div>
-<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span> <span class="preprocessor"></span><span class="preprocessor">#define ATANH atanh</span></div>
-<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span> <span class="preprocessor"></span><span class="preprocessor">#define TGAMMA tgamma</span></div>
-<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span> <span class="preprocessor"></span><span class="preprocessor">#define LGAMMA lgamma</span></div>
-<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span> <span class="preprocessor"></span><span class="preprocessor">#define J0 j0</span></div>
-<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> <span class="preprocessor"></span><span class="preprocessor">#define J1 j1</span></div>
-<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span> <span class="preprocessor"></span><span class="preprocessor">#define JN jn</span></div>
-<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span> <span class="preprocessor"></span><span class="preprocessor">#define Y0 y0</span></div>
-<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span> <span class="preprocessor"></span><span class="preprocessor">#define Y1 y1</span></div>
-<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> <span class="preprocessor"></span><span class="preprocessor">#define YN yn</span></div>
-<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> <span class="preprocessor"></span><span class="preprocessor">#define ERF erf</span></div>
-<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> <span class="preprocessor"></span><span class="preprocessor">#define ERFC erfc</span></div>
-<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> <span class="preprocessor"></span><span class="preprocessor">#define CREAL creal</span></div>
-<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> <span class="preprocessor"></span><span class="preprocessor">#define CIMAG cimag</span></div>
-<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span> <span class="preprocessor"></span><span class="preprocessor">#define CABS cabs</span></div>
-<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span> <span class="preprocessor"></span><span class="preprocessor">#define CARG carg</span></div>
-<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> <span class="preprocessor"></span><span class="preprocessor">#define CONJ conj</span></div>
-<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> <span class="preprocessor"></span><span class="preprocessor">#define CPROJ cproj</span></div>
-<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span> <span class="preprocessor"></span><span class="preprocessor">#define CSQRT csqrt</span></div>
-<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span> <span class="preprocessor"></span><span class="preprocessor">#define CEXP cexp</span></div>
-<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span> <span class="preprocessor"></span><span class="preprocessor">#define CLOG clog</span></div>
-<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> <span class="preprocessor"></span><span class="preprocessor">#define CPOW cpow</span></div>
-<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> <span class="preprocessor"></span><span class="preprocessor">#define CSIN csin</span></div>
-<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span> <span class="preprocessor"></span><span class="preprocessor">#define CCOS ccos</span></div>
-<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> <span class="preprocessor"></span><span class="preprocessor">#define CTAN ctan</span></div>
-<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> <span class="preprocessor"></span><span class="preprocessor">#define CASIN casin</span></div>
-<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> <span class="preprocessor"></span><span class="preprocessor">#define CACOS cacos</span></div>
-<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span> <span class="preprocessor"></span><span class="preprocessor">#define CATAN catan</span></div>
-<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> <span class="preprocessor"></span><span class="preprocessor">#define CSINH csinh</span></div>
-<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> <span class="preprocessor"></span><span class="preprocessor">#define CCOSH ccosh</span></div>
-<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> <span class="preprocessor"></span><span class="preprocessor">#define CTANH ctanh</span></div>
-<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> <span class="preprocessor"></span><span class="preprocessor">#define CASINH casinh</span></div>
-<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span> <span class="preprocessor"></span><span class="preprocessor">#define CACOSH cacosh</span></div>
-<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> <span class="preprocessor"></span><span class="preprocessor">#define CATANH catanh</span></div>
-<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> <span class="preprocessor">#if defined(NFFT_LDOUBLE)</span></div>
-<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> <span class="preprocessor"></span><span class="preprocessor"> #define EPSILON LDBL_EPSILON//4.0E-31L</span></div>
-<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> <span class="preprocessor"></span><span class="preprocessor"> #define MANT_DIG LDBL_MANT_DIG</span></div>
-<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> <span class="preprocessor"></span><span class="preprocessor"> #define MIN_EXP LDBL_MIN_EXP</span></div>
-<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> <span class="preprocessor"></span><span class="preprocessor"> #define MAX_EXP LDBL_MAX_EXP</span></div>
-<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> <span class="preprocessor"></span><span class="preprocessor">#elif defined(NFFT_SINGLE)</span></div>
-<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span> <span class="preprocessor"></span><span class="preprocessor"> #define EPSILON FLT_EPSILON</span></div>
-<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> <span class="preprocessor"></span><span class="preprocessor"> #define MANT_DIG FLT_MANT_DIG</span></div>
-<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> <span class="preprocessor"></span><span class="preprocessor"> #define MIN_EXP FLT_MIN_EXP</span></div>
-<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> <span class="preprocessor"></span><span class="preprocessor"> #define MAX_EXP FLT_MAX_EXP</span></div>
-<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span> <span class="preprocessor"></span><span class="preprocessor"> #define EPSILON DBL_EPSILON</span></div>
-<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span> <span class="preprocessor"></span><span class="preprocessor"> #define MANT_DIG DBL_MANT_DIG</span></div>
-<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span> <span class="preprocessor"></span><span class="preprocessor"> #define MIN_EXP DBL_MIN_EXP</span></div>
-<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span> <span class="preprocessor"></span><span class="preprocessor"> #define MAX_EXP DBL_MAX_EXP</span></div>
-<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span> <span class="preprocessor">#if defined(FLT_ROUND)</span></div>
-<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> <span class="preprocessor"></span><span class="preprocessor"> #if FLT_ROUND != -1</span></div>
-<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span> <span class="preprocessor"></span><span class="preprocessor"> #define FLTROUND 1.0</span></div>
-<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span> <span class="preprocessor"></span><span class="preprocessor"> #else</span></div>
-<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span> <span class="preprocessor"></span><span class="preprocessor"> #define FLTROUND 0.0</span></div>
-<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span> <span class="preprocessor"></span><span class="preprocessor"> #endif</span></div>
-<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> <span class="preprocessor"></span><span class="preprocessor"> #define FLTROUND 0.0</span></div>
-<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> <span class="preprocessor">#if HAVE_DECL_DRAND48 == 0</span></div>
-<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span> <span class="preprocessor"></span> <span class="keyword">extern</span> <span class="keywordtype">double</span> drand48(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SRAND48 == 0</span></div>
-<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> <span class="preprocessor"></span> <span class="keyword">extern</span> <span class="keywordtype">void</span> srand48(<span class="keywordtype">long</span> <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span> <span class="preprocessor"></span><span class="preprocessor">#define R_RADIX FLT_RADIX</span></div>
-<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span> <span class="preprocessor"></span><span class="preprocessor">#define II _Complex_I</span></div>
-<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span> <span class="comment">/* format strings */</span></div>
-<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span> <span class="preprocessor">#if defined(NFFT_LDOUBLE)</span></div>
-<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span> <span class="preprocessor"></span><span class="preprocessor"># define FE "LE"</span></div>
-<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span> <span class="preprocessor"></span><span class="preprocessor"># define FE_ "% 36.32LE"</span></div>
-<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span> <span class="preprocessor"></span><span class="preprocessor"># define FFI "%Lf"</span></div>
-<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span> <span class="preprocessor"></span><span class="preprocessor">#elif defined(NFFT_SINGLE)</span></div>
-<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span> <span class="preprocessor"></span><span class="preprocessor"># define FE "E"</span></div>
-<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span> <span class="preprocessor"></span><span class="preprocessor"># define FE_ "% 12.8E"</span></div>
-<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span> <span class="preprocessor"></span><span class="preprocessor"># define FFI "%f"</span></div>
-<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span> <span class="preprocessor"></span><span class="preprocessor"># define FE "lE"</span></div>
-<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span> <span class="preprocessor"></span><span class="preprocessor"># define FE_ "% 20.16lE"</span></div>
-<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span> <span class="preprocessor"></span><span class="preprocessor"># define FFI "%lf"</span></div>
-<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span> <span class="preprocessor">#define TRUE 1</span></div>
-<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span> <span class="preprocessor"></span><span class="preprocessor">#define FALSE 0</span></div>
-<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span> <span class="preprocessor">#define UNUSED(x) (void)x</span></div>
-<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span> <span class="keyword">extern</span> <span class="keywordtype">void</span> nfft_assertion_failed(<span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keywordtype">int</span> line, <span class="keyword">const</span> <span class="keywordtype">char</span> *file);</div>
-<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> </div>
-<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span> <span class="comment">/* always check */</span></div>
-<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> <span class="preprocessor">#define CK(ex) \</span></div>
-<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span> <span class="preprocessor"> (void)((ex) || (nfft_assertion_failed(#ex, __LINE__, __FILE__), 0))</span></div>
-<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span> <span class="preprocessor">#ifdef NFFT_DEBUG</span></div>
-<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span> <span class="preprocessor"></span> <span class="comment">/* check only if debug enabled */</span></div>
-<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span> <span class="preprocessor"> #define A(ex) \</span></div>
-<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span> <span class="preprocessor"> (void)((ex) || (nfft_assertion_failed(#ex, __LINE__, __FILE__), 0))</span></div>
-<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> <span class="preprocessor"></span><span class="preprocessor"> #define A(ex) </span><span class="comment">/* nothing */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span> <span class="preprocessor">#ifdef HAVE_ALLOCA</span></div>
-<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span> <span class="preprocessor"></span> <span class="comment">/* Use alloca if available. */</span></div>
-<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span> <span class="preprocessor"> #ifndef alloca</span></div>
-<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span> <span class="preprocessor"></span><span class="preprocessor"> #ifdef __GNUC__</span></div>
-<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span> <span class="preprocessor"></span> <span class="comment">/* No alloca defined but can use GCC's builtin version. */</span></div>
-<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span> <span class="preprocessor"> #define alloca __builtin_alloca</span></div>
-<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span> <span class="preprocessor"></span><span class="preprocessor"> #else</span></div>
-<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span> <span class="preprocessor"></span> <span class="comment">/* No alloca defined and not using GCC. */</span></div>
-<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span> <span class="preprocessor"> #ifdef _MSC_VER</span></div>
-<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> <span class="preprocessor"></span> <span class="comment">/* Using Microsoft's C compiler. Include header file and use _alloca</span></div>
-<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span> <span class="comment"> * defined therein. */</span></div>
-<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span> <span class="preprocessor"> #include <malloc.h></span></div>
-<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span> <span class="preprocessor"> #define alloca _alloca</span></div>
-<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span> <span class="preprocessor"></span><span class="preprocessor"> #else</span></div>
-<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span> <span class="preprocessor"></span> <span class="comment">/* Also not using Microsoft's C compiler. */</span></div>
-<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> <span class="preprocessor"> #if HAVE_ALLOCA_H</span></div>
-<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span> <span class="preprocessor"></span> <span class="comment">/* Alloca header is available. */</span></div>
-<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span> <span class="preprocessor"> #include <alloca.h></span></div>
-<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span> <span class="preprocessor"> #else</span></div>
-<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span> <span class="preprocessor"></span> <span class="comment">/* No alloca header available. */</span></div>
-<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span> <span class="preprocessor"> #ifdef _AIX</span></div>
-<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span> <span class="preprocessor"></span> <span class="comment">/* We're using the AIX C compiler. Use pragma. */</span></div>
-<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span> <span class="preprocessor"> #pragma alloca</span></div>
-<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span> <span class="preprocessor"></span><span class="preprocessor"> #else</span></div>
-<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span> <span class="preprocessor"></span> <span class="comment">/* Not using AIX compiler. */</span></div>
-<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span> <span class="preprocessor"> #ifndef alloca </span><span class="comment">/* HP's cc +Olibcalls predefines alloca. */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> <span class="preprocessor"></span> <span class="keywordtype">void</span> *alloca(<span class="keywordtype">size_t</span>);</div>
-<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span> <span class="preprocessor"> #endif</span></div>
-<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span> <span class="preprocessor"></span><span class="preprocessor"> #endif</span></div>
-<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span> <span class="preprocessor"></span><span class="preprocessor"> #endif</span></div>
-<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span> <span class="preprocessor"></span><span class="preprocessor"> #endif</span></div>
-<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> <span class="preprocessor"></span><span class="preprocessor"> #endif</span></div>
-<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span> <span class="preprocessor"></span><span class="preprocessor"> #endif</span></div>
-<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span> <span class="preprocessor"></span> <span class="comment">/* So we have alloca. */</span></div>
-<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span> <span class="preprocessor"> #define STACK_MALLOC(T, p, x) p = (T)alloca(x)</span></div>
-<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span> <span class="preprocessor"></span><span class="preprocessor"> #define STACK_FREE(x) </span><span class="comment">/* Nothing. Cleanup done automatically. */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span> <span class="preprocessor"></span><span class="preprocessor">#else </span><span class="comment">/* ! HAVE_ALLOCA */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span> <span class="preprocessor"></span> <span class="comment">/* Use malloc instead of alloca. So we allocate memory on the heap instead of</span></div>
-<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span> <span class="comment"> * on the stack which is slower. */</span></div>
-<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span> <span class="preprocessor"> #define STACK_MALLOC(T, p, x) p = (T)nfft_malloc(x)</span></div>
-<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span> <span class="preprocessor"></span><span class="preprocessor"> #define STACK_FREE(x) nfft_free(x)</span></div>
-<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span> <span class="preprocessor"></span><span class="preprocessor">#endif </span><span class="comment">/* ! HAVE_ALLOCA */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l01301"></a><span class="lineno"> 1301</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span> <span class="keywordtype">double</span> nfft_elapsed_seconds(ticks t1, ticks t0);</div>
-<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> </div>
-<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> <span class="preprocessor">#define UNUSED(x) (void)x</span></div>
-<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> MEASURE_TIME_r;</div>
-<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span> <span class="keywordtype">double</span> MEASURE_TIME_tt;</div>
-<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span> ticks MEASURE_TIME_t0, MEASURE_TIME_t1;</div>
-<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span> </div>
-<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> <span class="preprocessor">#define TIC(a) \</span></div>
-<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span> <span class="preprocessor"> ths->MEASURE_TIME_t[(a)]=0; \</span></div>
-<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span> <span class="preprocessor"> MEASURE_TIME_r=0; \</span></div>
-<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span> <span class="preprocessor"> </span><span class="comment">/* DISABLED LOOP due to code blocks causing segfault when repeatedly run */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span> <span class="preprocessor"> </span><span class="comment">/*while(ths->MEASURE_TIME_t[(a)]<0.01)*/</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span> <span class="preprocessor"> MEASURE_TIME_r++; \</span></div>
-<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span> <span class="preprocessor"> MEASURE_TIME_t0 = getticks(); \</span></div>
-<div class="line"><a name="l01327"></a><span class="lineno"> 1327</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> <span class="preprocessor"></span><span class="comment">/* THE MEASURED FUNCTION IS CALLED REPEATEDLY */</span></div>
-<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> </div>
-<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span> <span class="preprocessor">#define TOC(a) \</span></div>
-<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> <span class="preprocessor"> MEASURE_TIME_t1 = getticks(); \</span></div>
-<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> <span class="preprocessor"> MEASURE_TIME_tt = nfft_elapsed_seconds(MEASURE_TIME_t1,MEASURE_TIME_t0);\</span></div>
-<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span> <span class="preprocessor"> ths->MEASURE_TIME_t[(a)]+=MEASURE_TIME_tt; \</span></div>
-<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span> <span class="preprocessor"> ths->MEASURE_TIME_t[(a)]/=MEASURE_TIME_r; \</span></div>
-<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span> <span class="preprocessor"></span><span class="preprocessor">#define TIC(a)</span></div>
-<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span> <span class="preprocessor"></span><span class="preprocessor">#define TOC(a)</span></div>
-<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span> <span class="preprocessor">#ifdef MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span> <span class="preprocessor"></span><span class="preprocessor">#define TIC_FFTW(a) TIC(a)</span></div>
-<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span> <span class="preprocessor"></span><span class="preprocessor">#define TOC_FFTW(a) TOC(a)</span></div>
-<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> <span class="preprocessor"></span><span class="preprocessor">#define TIC_FFTW(a)</span></div>
-<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span> <span class="preprocessor"></span><span class="preprocessor">#define TOC_FFTW(a)</span></div>
-<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span> <span class="comment">/* sinc.c: */</span></div>
-<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span> </div>
-<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> <span class="comment">/* Sinus cardinalis. */</span></div>
-<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span> R X(sinc)(R x);</div>
-<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span> </div>
-<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> <span class="comment">/* lambda.c: */</span></div>
-<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span> </div>
-<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span> <span class="comment">/* lambda(z, eps) = gamma(z + eps) / gamma(z + 1) */</span></div>
-<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span> R X(lambda)(R z, R eps);</div>
-<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span> </div>
-<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span> <span class="comment">/* lambda2(mu, nu) = sqrt(gamma(mu + nu + 1) / (gamma(mu + 1) * gamma(nu + 1))) */</span></div>
-<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span> R X(lambda2)(R mu, R nu);</div>
-<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span> </div>
-<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span> <span class="comment">/* bessel_i0.c: */</span></div>
-<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span> R X(bessel_i0)(R x);</div>
-<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span> </div>
-<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span> <span class="comment">/* float.c: */</span></div>
-<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {NFFT_EPSILON = 0, NFFT_SAFE_MIN = 1, NFFT_BASE = 2,</div>
-<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span> NFFT_PRECISION = 3, NFFT_MANT_DIG = 4, NFFT_FLTROUND = 5, NFFT_E_MIN = 6,</div>
-<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span> NFFT_R_MIN = 7, NFFT_E_MAX = 8, NFFT_R_MAX = 9} float_property;</div>
-<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span> </div>
-<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span> R X(float_property)(float_property);</div>
-<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> </div>
-<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> <span class="comment">/* int.c: */</span></div>
-<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> <span class="keywordtype">int</span> X(exp2i)(<span class="keyword">const</span> <span class="keywordtype">int</span> a);</div>
-<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span> <span class="keywordtype">int</span> X(log2i)(<span class="keyword">const</span> <span class="keywordtype">int</span> m);</div>
-<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span> <span class="keywordtype">int</span> X(next_power_of_2)(<span class="keyword">const</span> <span class="keywordtype">int</span> N);</div>
-<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span> <span class="keywordtype">void</span> X(next_power_of_2_exp)(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> *N2, <span class="keywordtype">int</span> *t);</div>
-<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span> </div>
-<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span> <span class="comment">/* error.c: */</span></div>
-<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span> R X(error_l_infty_complex)(<span class="keyword">const</span> C *x, <span class="keyword">const</span> C *y, <span class="keyword">const</span> INT n);</div>
-<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span> <span class="comment">/* not used */</span> R X(error_l_infty_double)(<span class="keyword">const</span> R *x, <span class="keyword">const</span> R *y, <span class="keyword">const</span> INT n);</div>
-<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span> R X(error_l_infty_1_complex)(<span class="keyword">const</span> C *x, <span class="keyword">const</span> C *y, <span class="keyword">const</span> INT n,</div>
-<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span> <span class="keyword">const</span> C *z, <span class="keyword">const</span> INT m);</div>
-<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span> <span class="comment">/* not used */</span> R X(error_l_infty_1_double)(<span class="keyword">const</span> R *x, <span class="keyword">const</span> R *y, <span class="keyword">const</span> INT n, <span class="keyword">const</span> R *z,</div>
-<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span> <span class="keyword">const</span> INT m);</div>
-<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span> R X(error_l_2_complex)(<span class="keyword">const</span> C *x, <span class="keyword">const</span> C *y, <span class="keyword">const</span> INT n);</div>
-<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span> <span class="comment">/* not used */</span> R X(error_l_2_double)(<span class="keyword">const</span> R *x, <span class="keyword">const</span> R *y, <span class="keyword">const</span> INT n);</div>
-<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span> </div>
-<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span> <span class="preprocessor">#endif</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/int_8c_source.html b/doc/api/html/int_8c_source.html
deleted file mode 100644
index cfd4636..0000000
--- a/doc/api/html/int_8c_source.html
+++ /dev/null
@@ -1,157 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - int.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html">util</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">int.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: util.c 3483 2010-04-23 19:02:34Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="keywordtype">int</span> X(exp2i)(<span class="keyword">const</span> <span class="keywordtype">int</span> a)</div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> {</div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="keywordflow">return</span> (1U << a);</div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> }</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="keywordtype">int</span> X(log2i)(<span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> {</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keywordtype">int</span> l = 0;</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="keywordtype">int</span> mm = m;</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">while</span> (mm > 0)</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> mm = (mm >> 1);</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> l++;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> }</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keywordflow">return</span> (l-1);</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> }</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">int</span> X(next_power_of_2)(<span class="keyword">const</span> <span class="keywordtype">int</span> N)</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> {</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">int</span> n,i,logn;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">int</span> N_is_not_power_of_2=0;</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">if</span> (N == 0)</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> {</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> n = N;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> logn = 0;</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">while</span> (n != 1)</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> {</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">if</span> (n%2 == 1)</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> N_is_not_power_of_2=1;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> n = n/2;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> logn++;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> }</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">if</span> (!N_is_not_power_of_2)</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> logn--;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">for</span> (i = 0; i <= logn; i++)</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> n = n*2;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">return</span> n;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> }</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> }</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keywordtype">void</span> X(next_power_of_2_exp)(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> *N2, <span class="keywordtype">int</span> *t)</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> {</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordtype">int</span> n,i,logn;</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordtype">int</span> N_is_not_power_of_2=0;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">if</span> (N == 0)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> {</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> *N2 = 1;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> *t = 0;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> }</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> {</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> n=N;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> logn=0;</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">while</span> (n != 1)</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">if</span> (n%2 == 1)</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> {</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> N_is_not_power_of_2=1;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> }</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> n = n/2;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> logn++;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> }</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">if</span> (!N_is_not_power_of_2)</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> {</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> logn--;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">for</span> (i = 0; i <= logn; i++)</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> {</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> n = n*2;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> }</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> *N2 = n;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> *t = logn+1;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> }</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/inverse__radon_8c.html b/doc/api/html/inverse__radon_8c.html
deleted file mode 100644
index 09a83fa..0000000
--- a/doc/api/html/inverse__radon_8c.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - inverse_radon.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_0c7f2452bc84fa0fc4195fb15953ec53.html">radon</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#define-members">Macros</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">inverse_radon.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>NFFT-based discrete inverse Radon transform.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <stdio.h></code><br/>
-<code>#include <math.h></code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include <string.h></code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-</div>
-<p><a href="inverse__radon_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:a0091bbc07c9570a2ab0dac372c2104f1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0091bbc07c9570a2ab0dac372c2104f1"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="inverse__radon_8c.html#a0091bbc07c9570a2ab0dac372c2104f1">KERNEL</a>(r) (1.0-fabs((double)(r))/((double)R/2))</td></tr>
-<tr class="memdesc:a0091bbc07c9570a2ab0dac372c2104f1"><td class="mdescLeft"> </td><td class="mdescRight">define weights of kernel function for discrete Radon transform <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a307b67b4c00a1c756f140c7fa831cdae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a307b67b4c00a1c756f140c7fa831cdae"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="inverse__radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae">polar_grid</a> (int T, int R, double *x, double *w)</td></tr>
-<tr class="memdesc:a307b67b4c00a1c756f140c7fa831cdae"><td class="mdescLeft"> </td><td class="mdescRight">generates the points x with weights w for the polar grid with T angles and R offsets <br/></td></tr>
-<tr class="memitem:a9a5ff165ab1e23af77ab6f6108bb6310"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a5ff165ab1e23af77ab6f6108bb6310"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="inverse__radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310">linogram_grid</a> (int T, int R, double *x, double *w)</td></tr>
-<tr class="memdesc:a9a5ff165ab1e23af77ab6f6108bb6310"><td class="mdescLeft"> </td><td class="mdescRight">generates the points x with weights w for the linogram grid with T slopes and R offsets <br/></td></tr>
-<tr class="memitem:a298e52a05aeac043f9b35e8ae60a13e4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a298e52a05aeac043f9b35e8ae60a13e4"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="inverse__radon_8c.html#a298e52a05aeac043f9b35e8ae60a13e4">Inverse_Radon_trafo</a> (int(*gridfcn)(), int T, int R, double *Rf, int NN, double *f, int <a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">max_i</a>)</td></tr>
-<tr class="memdesc:a298e52a05aeac043f9b35e8ae60a13e4"><td class="mdescLeft"> </td><td class="mdescRight">computes the inverse discrete Radon transform of Rf on the grid given by gridfcn() with T angles and R offsets by a NFFT-based CG-type algorithm <br/></td></tr>
-<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="inverse__radon_8c.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:a3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">simple test program for the inverse discrete Radon transform <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>NFFT-based discrete inverse Radon transform. </p>
-<p>Computes the inverse of the discrete Radon transform </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ R_{\theta_t} f\left(\frac{s}{R}\right) = \sum_{r \in I_R} w_r \; \sum_{k \in I_N^2} f_{k} \mathrm{e}^{-2\pi\mathrm{I} k \; (\frac{r}{R}\theta_t)} \, \mathrm{e}^{2\pi\mathrm{i} r s / R} \qquad(t \in I_T, s \in I_R). \]" src="form_134.png"/>
-</p>
-<p> given at the points <img class="formulaInl" alt="$\frac{r}{R}\theta_t$" src="form_135.png"/> of the polar or linogram grid and where <img class="formulaInl" alt="$w_r$" src="form_136.png"/> are the weights of the Dirichlet- or Fejer-kernel by 1D-FFTs and the 2D-iNFFT. </p>
-<dl class="section author"><dt>Author:</dt><dd>Markus Fenn </dd></dl>
-<dl class="section date"><dt>Date:</dt><dd>2005 </dd></dl>
-
-<p>Definition in file <a class="el" href="inverse__radon_8c_source.html">inverse_radon.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/inverse__radon_8c_source.html b/doc/api/html/inverse__radon_8c_source.html
deleted file mode 100644
index ea3e33e..0000000
--- a/doc/api/html/inverse__radon_8c_source.html
+++ /dev/null
@@ -1,295 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - inverse_radon.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_0c7f2452bc84fa0fc4195fb15953ec53.html">radon</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">inverse_radon.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="inverse__radon_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: inverse_radon.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment">/*#define KERNEL(r) 1.0 */</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"><a class="code" href="inverse__radon_8c.html#a0091bbc07c9570a2ab0dac372c2104f1"> 54</a></span> <span class="preprocessor">#define KERNEL(r) (1.0-fabs((double)(r))/((double)R/2))</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"><a class="code" href="inverse__radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae"> 59</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="inverse__radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae" title="generates the points x with weights w for the polar grid with T angles and R offsets">polar_grid</a>(<span class="keywordtype">int</span> T, <span class="keywordtype">int [...]
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> {</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keywordtype">int</span> t, r;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">double</span> W=(double)T*(((<span class="keywordtype">double</span>)R/2.0)*((double)R/2.0)+1.0/4.0);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">for</span>(t=-T/2; t<T/2; t++)</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> {</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">for</span>(r=-R/2; r<R/2; r++)</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> {</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> x[2*((t+T/2)*R+(r+R/2))+0] = (<span class="keywordtype">double</span>)r/R*cos(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*t/T);</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> x[2*((t+T/2)*R+(r+R/2))+1] = (<span class="keywordtype">double</span>)r/R*sin(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*t/T);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">if</span> (r==0)</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> w[(t+T/2)*R+(r+R/2)] = 1.0/4.0/W;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> w[(t+T/2)*R+(r+R/2)] = fabs((<span class="keywordtype">double</span>)r)/W;</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> }</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> }</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> }</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div>
-<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="inverse__radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310"> 83</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="inverse__radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310" title="generates the points x with weights w for the linogram grid with T slopes and R offsets">linogram_grid</a>(<span class="keywordtype">int</span> T, <span class="keywordtyp [...]
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> {</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">int</span> t, r;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordtype">double</span> W=(double)T*(((<span class="keywordtype">double</span>)R/2.0)*((double)R/2.0)+1.0/4.0);</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">for</span>(t=-T/2; t<T/2; t++)</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">for</span>(r=-R/2; r<R/2; r++)</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> {</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span>(t<0)</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> {</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> x[2*((t+T/2)*R+(r+R/2))+0] = (<span class="keywordtype">double</span>)r/R;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> x[2*((t+T/2)*R+(r+R/2))+1] = (<span class="keywordtype">double</span>)4*(t+T/4)/T*r/R;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> }</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> {</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> x[2*((t+T/2)*R+(r+R/2))+0] = -(<span class="keywordtype">double</span>)4*(t-T/4)/T*r/R;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> x[2*((t+T/2)*R+(r+R/2))+1] = (<span class="keywordtype">double</span>)r/R;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">if</span> (r==0)</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> w[(t+T/2)*R+(r+R/2)] = 1.0/4.0/W;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> w[(t+T/2)*R+(r+R/2)] = fabs((<span class="keywordtype">double</span>)r)/W;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> }</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> }</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00116"></a><span class="lineno"><a class="code" href="inverse__radon_8c.html#a298e52a05aeac043f9b35e8ae60a13e4"> 116</a></span> <span class="keywordtype">int</span> <a class="code" href="inverse__radon_8c.html#a298e52a05aeac043f9b35e8ae60a13e4" title="computes the inverse discrete Radon transform of Rf on the grid given by gridfcn() with T angles and ...">Inverse_Radon_trafo</a>(<span class="keywordtype">int</span> (*gridfcn)(), <span class="keywordtype" [...]
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> {</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_infft_plan; </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> fftw_complex *<a class="code" href="group__applications__mri3d__construct__data__1d2d.html#gafa82bf5df93804a1760082b88492b8d5" title="fft makes an 1D-ftt for every knot through all layers">fft</a>; </div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> fftw_plan my_fftw_plan; </div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordtype">int</span> t,r; </div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordtype">int</span> l; </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordtype">int</span> M=T*R;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> N[0]=NN; n[0]=2*N[0];</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> N[1]=NN; n[1]=2*N[1];</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> fft = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(R*<span class="keyword">sizeof</span>(fftw_complex));</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> my_fftw_plan = fftw_plan_dft_1d(R,fft,fft,FFTW_FORWARD,FFTW_MEASURE);</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, 4,</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> solver_init_advanced_complex(&my_infft_plan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&my_nfft_plan), CGNR | PRECOMPUTE_WEIGHT);</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> gridfcn(T,R,x,w);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> {</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">if</span> (j%R)</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j] = w[j];</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j] = 0.0;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> }</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> </div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> </div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> nfft_precompute_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> nfft_precompute_full_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">for</span>(t=0; t<T; t++)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> {</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="comment">/* for(r=0; r<R/2; r++)</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="comment"> fft[r] = cexp(I*PI*r)*Rf[t*R+(r+R/2)];</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="comment"> for(r=0; r<R/2; r++)</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="comment"> fft[r+R/2] = cexp(I*PI*r)*Rf[t*R+r];</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> </div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">for</span>(r=0; r<R; r++)</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> fft[r] = Rf[t*R+r] + _Complex_I*0.0;</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <a class="code" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770" title="Swaps each half over N[d]/2.">nfft_fftshift_complex</a>(fft, 1, &R);</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> fftw_execute(my_fftw_plan);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <a class="code" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770" title="Swaps each half over N[d]/2.">nfft_fftshift_complex</a>(fft, 1, &R);</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> </div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[t*R] = 0.0;</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">for</span>(r=-R/2+1; r<R/2; r++)</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[t*R+(r+R/2)] = fft[r+R/2]/<a class="code" href="inverse__radon_8c.html#a0091bbc07c9570a2ab0dac372c2104f1" title="define weights of kernel function for discrete Radon transform">KERNEL</a>(r);</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> }</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k] = 0.0 + _Complex_I*0.0;</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> solver_before_loop_complex(&my_infft_plan);</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">if</span> (max_i<1)</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> {</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> l=1;</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k] = my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>[k];</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> }</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> {</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="keywordflow">for</span>(l=1;l<=<a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>;l++)</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> {</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_infft_plan);</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="comment">/*if (sqrt(my_infft_plan.dot_r_iter)<=1e-12) break;*/</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> }</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> }</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="comment">/*printf("after %d iteration(s): weighted 2-norm of original residual vector = %g\n",l-1,sqrt(my_infft_plan.dot_r_iter));*/</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> </div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> f[k] = creal(my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]);</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> fftw_destroy_plan(my_fftw_plan);</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(fft);</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_infft_plan);</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> }</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> </div>
-<div class="line"><a name="l00236"></a><span class="lineno"><a class="code" href="inverse__radon_8c.html#a3c04138a5bfe5d72780bb7e82a18e627"> 236</a></span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> {</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> int (*gridfcn)(); </div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="keywordtype">int</span> T, R; </div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> FILE *fp;</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="keywordtype">int</span> N; </div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="keywordtype">double</span> *Rf, *iRf;</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>; </div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="keywordflow">if</span>( argc!=6 )</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> {</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> printf(<span class="stringliteral">"inverse_radon gridfcn N T R max_i\n"</span>);</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> printf(<span class="stringliteral">"gridfcn \"polar\" or \"linogram\" \n"</span>);</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> printf(<span class="stringliteral">"N image size NxN \n"</span>);</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> printf(<span class="stringliteral">"T number of slopes \n"</span>);</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> printf(<span class="stringliteral">"R number of offsets \n"</span>);</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> printf(<span class="stringliteral">"max_i number of iterations \n"</span>);</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> exit(-1);</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> }</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> </div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordflow">if</span> (strcmp(argv[1],<span class="stringliteral">"polar"</span>) == 0)</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> gridfcn = <a class="code" href="inverse__radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae" title="generates the points x with weights w for the polar grid with T angles and R offsets">polar_grid</a>;</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> gridfcn = <a class="code" href="inverse__radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310" title="generates the points x with weights w for the linogram grid with T slopes and R offsets">linogram_grid</a>;</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> </div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> N = atoi(argv[2]);</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> T = atoi(argv[3]);</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> R = atoi(argv[4]);</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="comment">/*printf("N=%d, %s grid with T=%d, R=%d. \n",N,argv[1],T,R);*/</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> max_i = atoi(argv[5]);</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> </div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> Rf = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> iRf = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(N*N*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> fp=fopen(<span class="stringliteral">"sinogram_data.bin"</span>,<span class="stringliteral">"rb"</span>);</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="keywordflow">if</span> (fp==NULL)</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> fread(Rf,<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>),T*R,fp);</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> fclose(fp);</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <a class="code" href="inverse__radon_8c.html#a298e52a05aeac043f9b35e8ae60a13e4" title="computes the inverse discrete Radon transform of Rf on the grid given by gridfcn() with T angles and ...">Inverse_Radon_trafo</a>(gridfcn,T,R,Rf,N,iRf,max_i);</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> </div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> fp=fopen(<span class="stringliteral">"output_data.bin"</span>,<span class="stringliteral">"wb+"</span>);</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="keywordflow">if</span> (fp==NULL)</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> fwrite(iRf,<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>),N*N,fp);</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> fclose(fp);</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> </div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(Rf);</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(iRf);</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/iterS2_8c_source.html b/doc/api/html/iterS2_8c_source.html
deleted file mode 100644
index 4976896..0000000
--- a/doc/api/html/iterS2_8c_source.html
+++ /dev/null
@@ -1,474 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - iterS2.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_e198b4faa999927a1ae92d03d5f1f5e6.html">iterS2</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">iterS2.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: iterS2.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">/* iterS2 - Iterative reconstruction on the sphere S2 */</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> </div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment">/* Include standard C headers. */</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment">/* Include NFFT 3 utilities headers. */</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">/* Include NFFT3 library header. */</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor">#include "legendre.h"</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00046"></a><span class="lineno"><a class="code" href="group__applications__iterS2__matlab.html#ga7c6368b321bd9acd0149b030bb8275ed"> 46</a></span> <span class="keyword">enum</span> <span class="keywordtype">boolean</span> {NO = 0, YES = 1};</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"><a class="code" href="group__applications__iterS2__matlab.html#ga3c04138a5bfe5d72780bb7e82a18e627"> 58</a></span> <span class="keywordtype">int</span> main (<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> {</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keywordtype">int</span> T;</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keywordtype">int</span> N;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">int</span> M;</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordtype">int</span> M2;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">int</span> t; <span class="comment">/* Index variable for testcases */</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan; <span class="comment">/* NFSFT plan */</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan2; <span class="comment">/* NFSFT plan */</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> iplan; <span class="comment">/* NFSFT plan */</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordtype">int</span> j; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordtype">int</span> k; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordtype">int</span> m; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keywordtype">int</span> use_nfsft; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordtype">int</span> use_nfft; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keywordtype">int</span> use_fpt; <span class="comment">/* */</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">int</span> cutoff; </div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordtype">double</span> threshold; </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordtype">double</span> re;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordtype">double</span> im;</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordtype">double</span> a;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordtype">double</span> *scratch;</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordtype">double</span> xs;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordtype">double</span> *ys;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordtype">double</span> *temp;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordtype">double</span> _Complex *temp2;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">int</span> qlength;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordtype">double</span> *qweights;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> fftw_plan fplan;</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>;</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">int</span> npt;</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">int</span> npt_exp;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordtype">double</span> *alpha, *beta, *gamma;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="comment">/* Read the number of testcases. */</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> fscanf(stdin,<span class="stringliteral">"testcases=%d\n"</span>,&T);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> fprintf(stderr,<span class="stringliteral">"%d\n"</span>,T);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="comment">/* Process each testcase. */</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">for</span> (t = 0; t < T; t++)</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> {</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="comment">/* Check if the fast transform shall be used. */</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> fscanf(stdin,<span class="stringliteral">"nfsft=%d\n"</span>,&use_nfsft);</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> fprintf(stderr,<span class="stringliteral">"%d\n"</span>,use_nfsft);</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> {</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="comment">/* Check if the NFFT shall be used. */</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> fscanf(stdin,<span class="stringliteral">"nfft=%d\n"</span>,&use_nfft);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> fprintf(stderr,<span class="stringliteral">"%d\n"</span>,use_nfsft);</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">if</span> (use_nfft != NO)</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> {</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="comment">/* Read the cut-off parameter. */</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> fscanf(stdin,<span class="stringliteral">"cutoff=%d\n"</span>,&cutoff);</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> fprintf(stderr,<span class="stringliteral">"%d\n"</span>,cutoff);</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> }</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> {</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="comment">/* TODO remove this */</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="comment">/* Initialize unused variable with dummy value. */</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> cutoff = 1;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> }</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment">/* Check if the fast polynomial transform shall be used. */</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> fscanf(stdin,<span class="stringliteral">"fpt=%d\n"</span>,&use_fpt);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> fprintf(stderr,<span class="stringliteral">"%d\n"</span>,use_fpt);</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">if</span> (use_fpt != NO)</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> {</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="comment">/* Read the NFSFT threshold parameter. */</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> fscanf(stdin,<span class="stringliteral">"threshold=%lf\n"</span>,&threshold);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> fprintf(stderr,<span class="stringliteral">"%lf\n"</span>,threshold);</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> }</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> {</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="comment">/* TODO remove this */</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="comment">/* Initialize unused variable with dummy value. */</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> threshold = 1000.0;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> }</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> }</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> {</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="comment">/* TODO remove this */</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="comment">/* Set dummy values. */</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> use_nfft = NO;</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> use_fpt = NO;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> cutoff = 3;</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> threshold = 1000.0;</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="comment">/* Read the bandwidth. */</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> fscanf(stdin,<span class="stringliteral">"bandwidth=%d\n"</span>,&N);</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> fprintf(stderr,<span class="stringliteral">"%d\n"</span>,N);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> </div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="comment">/* Do precomputation. */</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> nfsft_precompute(N,threshold,</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> ((use_nfsft==NO)?(NFSFT_NO_FAST_ALGORITHM):(0U<span class="comment">/*NFSFT_NO_DIRECT_ALGORITHM*/</span>)), 0U);</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="comment">/* Read the number of nodes. */</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> fscanf(stdin,<span class="stringliteral">"nodes=%d\n"</span>,&M);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> fprintf(stderr,<span class="stringliteral">"%d\n"</span>,M);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="comment">/* */</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="keywordflow">if</span> ((N+1)*(N+1) > M)</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> {</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> X(next_power_of_2_exp)(N, &npt, &npt_exp);</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> fprintf(stderr, <span class="stringliteral">"npt = %d, npt_exp = %d\n"</span>, npt, npt_exp);</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> fprintf(stderr,<span class="stringliteral">"Optimal interpolation!\n"</span>);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> scratch = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(4*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> ys = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> temp = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((2*N+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> temp2 = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N+1)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> </div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> a = 0.0;</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">for</span> (j = 0; j <= N; j++)</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> {</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> xs = 2.0 + (2.0*j)/(N+1);</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> ys[j] = (2.0-((j == 0)?(1.0):(0.0)))*4.0*<a class="code" href="group__nfftutil.html#ga2fd48f1f700153c050d27691c4b2a6cc" title="Computes the B-spline , scratch is used for de Boor's scheme.">nfft_bspline</a>(4,xs,scratch);</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="comment">//fprintf(stdout,"%3d: g(%le) = %le\n",j,xs,ys[j]);</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> a += ys[j];</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> }</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="comment">//fprintf(stdout,"a = %le\n",a);</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="keywordflow">for</span> (j = 0; j <= N; j++)</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> {</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> ys[j] *= 1.0/a;</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> }</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> qlength = 2*N+1;</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> qweights = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(qlength*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> fplan = fftw_plan_r2r_1d(N+1, qweights, qweights, FFTW_REDFT00, 0U);</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">for</span> (j = 0; j < N+1; j++)</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> {</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> qweights[j] = -2.0/(4*j*j-1);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> }</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> fftw_execute(fplan);</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> qweights[0] *= 0.5;</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> </div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordflow">for</span> (j = 0; j < N+1; j++)</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> {</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> qweights[j] *= 1.0/(2.0*N+1.0);</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> qweights[2*N+1-1-j] = qweights[j];</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> }</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> fplan = fftw_plan_r2r_1d(2*N+1, temp, temp, FFTW_REDFT00, 0U);</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">for</span> (j = 0; j <= N; j++)</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> {</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> temp[j] = ((j==0 || j == 2*N)?(1.0):(0.5))*ys[j];</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> }</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">for</span> (j = N+1; j < 2*N+1; j++)</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> {</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> temp[j] = 0.0;</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> }</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> fftw_execute(fplan);</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="keywordflow">for</span> (j = 0; j < 2*N+1; j++)</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> {</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> temp[j] *= qweights[j];</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> }</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> </div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> fftw_execute(fplan);</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> </div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="keywordflow">for</span> (j = 0; j < 2*N+1; j++)</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> {</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> temp[j] *= ((j==0 || j == 2*N)?(1.0):(0.5));</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordflow">if</span> (j <= N)</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> {</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> temp2[j] = temp[j];</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> }</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> }</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> </div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="keyword">set</span> = fpt_init(1, npt_exp, 0U);</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> </div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> alpha = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N+2)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> beta = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N+2)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> gamma = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N+2)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> </div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> alpha_al_row(alpha, N, 0);</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> beta_al_row(beta, N, 0);</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> gamma_al_row(gamma, N, 0);</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> </div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> fpt_precompute(<span class="keyword">set</span>, 0, alpha, beta, gamma, 0, 1000.0);</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> </div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> fpt_transposed(<span class="keyword">set</span>,0, temp2, temp2, N, 0U);</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> fpt_finalize(<span class="keyword">set</span>);</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> </div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(alpha);</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(beta);</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(gamma);</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> </div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> fftw_destroy_plan(fplan);</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> </div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(scratch);</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(qweights);</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ys);</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(temp);</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> }</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="comment">/* Init transform plans. */</span></div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> nfsft_init_guru(&plan, N, M,</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> ((use_nfft!=0)?(0U):(NFSFT_USE_NDFT)) |</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> ((use_fpt!=0)?(0U):(NFSFT_USE_DPT)) | NFSFT_MALLOC_F | NFSFT_MALLOC_X |</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> NFSFT_MALLOC_F_HAT | NFSFT_NORMALIZED | NFSFT_ZERO_F_HAT,</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> PRE_PHI_HUT | PRE_PSI | FFTW_INIT |</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> cutoff);</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> </div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="keywordflow">if</span> ((N+1)*(N+1) > M)</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> {</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> solver_init_advanced_complex(&iplan, (<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&plan), CGNE | PRECOMPUTE_DAMP);</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> }</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> {</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> solver_init_advanced_complex(&iplan, (<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&plan), CGNR | PRECOMPUTE_WEIGHT | PRECOMPUTE_DAMP);</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> }</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> </div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="comment">/* Read the nodes and function values. */</span></div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">for</span> (j = 0; j < M; j++)</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> {</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> fscanf(stdin,<span class="stringliteral">"%le %le %le %le\n"</span>,&plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+1],&plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j],&re,&im);</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+1] = plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+1]/(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j] = plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j]/(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="keywordflow">if</span> (plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j] >= 0.5)</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> {</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j] = plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j] - 1;</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> }</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j] = re + _Complex_I * im;</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> fprintf(stderr,<span class="stringliteral">"%le %le %le %le\n"</span>,plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+1],plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j],</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> creal(iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j]),cimag(iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j]));</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> }</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> </div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="comment">/* Read the number of nodes. */</span></div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> fscanf(stdin,<span class="stringliteral">"nodes_eval=%d\n"</span>,&M2);</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> fprintf(stderr,<span class="stringliteral">"%d\n"</span>,M2);</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="comment">/* Init transform plans. */</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> nfsft_init_guru(&plan2, N, M2,</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> ((use_nfft!=0)?(0U):(NFSFT_USE_NDFT)) |</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> ((use_fpt!=0)?(0U):(NFSFT_USE_DPT)) | NFSFT_MALLOC_F | NFSFT_MALLOC_X |</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> NFSFT_MALLOC_F_HAT | NFSFT_NORMALIZED | NFSFT_ZERO_F_HAT,</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> PRE_PHI_HUT | PRE_PSI | FFTW_INIT |</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> cutoff);</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> </div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="comment">/* Read the nodes and function values. */</span></div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">for</span> (j = 0; j < M2; j++)</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> {</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> fscanf(stdin,<span class="stringliteral">"%le %le\n"</span>,&plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+1],&plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j]);</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+1] = plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+1]/(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j] = plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j]/(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="keywordflow">if</span> (plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j] >= 0.5)</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> {</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j] = plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j] - 1;</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> }</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> fprintf(stderr,<span class="stringliteral">"%le %le\n"</span>,plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+1],plan2.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j]);</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> }</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> </div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> nfsft_precompute_x(&plan);</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> </div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> nfsft_precompute_x(&plan2);</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> </div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="comment">/* Frequency weights. */</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="keywordflow">if</span> ((N+1)*(N+1) > M)</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> {</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="comment">/* Compute Voronoi weights. */</span></div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="comment">//nfft_voronoi_weights_S2(iplan.w, plan.x, M);</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> </div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="comment">/* Print out Voronoi weights. */</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="comment">/*a = 0.0;</span></div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="comment"> for (j = 0; j < plan.M_total; j++)</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="comment"> fprintf(stderr,"%le\n",iplan.w[j]);</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="comment"> a += iplan.w[j];</span></div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="comment"> }</span></div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="comment"> fprintf(stderr,"sum = %le\n",a);*/</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> </div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="keywordflow">for</span> (j = 0; j < plan.<a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" title="Total number of Fourier coefficients.">N_total</a>; j++)</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> {</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j] = 0.0;</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> }</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> </div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="keywordflow">for</span> (k = 0; k <= N; k++)</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> {</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="keywordflow">for</span> (j = -k; j <= k; j++)</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> {</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[NFSFT_INDEX(k,j,&plan)] = 1.0/(pow(k+1.0,2.0)); <span class="comment">/*temp2[j]*/</span>;</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> }</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> }</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> }</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> {</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="keywordflow">for</span> (j = 0; j < plan.<a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" title="Total number of Fourier coefficients.">N_total</a>; j++)</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> {</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j] = 0.0;</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> }</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> </div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="keywordflow">for</span> (k = 0; k <= N; k++)</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> {</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="keywordflow">for</span> (j = -k; j <= k; j++)</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> {</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[NFSFT_INDEX(k,j,&plan)] = 1/(pow(k+1.0,2.5));</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> }</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> }</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> </div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="comment">/* Compute Voronoi weights. */</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <a class="code" href="group__nfftutil.html#ga26a4ed487a23e99e01f111113be9f994" title="Computes voronoi weights for nodes on the sphere S^2.">nfft_voronoi_weights_S2</a>(iplan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>, plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , " [...]
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> </div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="comment">/* Print out Voronoi weights. */</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> a = 0.0;</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="keywordflow">for</span> (j = 0; j < plan.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> {</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> fprintf(stderr,<span class="stringliteral">"%le\n"</span>,iplan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j]);</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> a += iplan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j];</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> }</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> fprintf(stderr,<span class="stringliteral">"sum = %le\n"</span>,a);</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> }</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> </div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> fprintf(stderr, <span class="stringliteral">"N_total = %d\n"</span>, plan.<a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> fprintf(stderr, <span class="stringliteral">"M_total = %d\n"</span>, plan.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> </div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="comment">/* init some guess */</span></div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="keywordflow">for</span> (k = 0; k < plan.<a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" title="Total number of Fourier coefficients.">N_total</a>; k++)</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> {</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k] = 0.0;</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> }</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> </div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="comment">/* inverse trafo */</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> solver_before_loop_complex(&iplan);</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> </div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment">/*for (k = 0; k < plan.M_total; k++)</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="comment"> printf("%le %le\n",creal(iplan.r_iter[k]),cimag(iplan.r_iter[k]));</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="comment"> }*/</span></div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> </div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="keywordflow">for</span> (m = 0; m < 29; m++)</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> {</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> fprintf(stderr,<span class="stringliteral">"Residual ||r||=%e,\n"</span>,sqrt(iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>));</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&iplan);</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> }</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> </div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="comment">/*NFFT_SWAP_complex(iplan.f_hat_iter, plan.f_hat);</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="comment"> nfsft_trafo(&plan);</span></div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="comment"> NFFT_SWAP_complex(iplan.f_hat_iter, plan.f_hat);</span></div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="comment"></span></div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="comment"> a = 0.0;</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="comment"> b = 0.0;</span></div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="comment"> for (k = 0; k < plan.M_total; k++)</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="comment"> printf("%le %le %le\n",cabs(iplan.y[k]),cabs(plan.f[k]),</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="comment"> cabs(iplan.y[k]-plan.f[k]));</span></div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="comment"> a += cabs(iplan.y[k]-plan.f[k])*cabs(iplan.y[k]-plan.f[k]);</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="comment"> b += cabs(iplan.y[k])*cabs(iplan.y[k]);</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="comment"> }</span></div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="comment"></span></div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="comment"> fprintf(stderr,"relative error in 2-norm: %le\n",a/b);*/</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> </div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>, plan2.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_to [...]
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> nfsft_trafo(&plan2);</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>, plan2.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_to [...]
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="keywordflow">for</span> (k = 0; k < plan2.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> {</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> fprintf(stdout,<span class="stringliteral">"%le\n"</span>,cabs(plan2.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[k]));</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> }</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> </div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&iplan);</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> </div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> nfsft_finalize(&plan);</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> </div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> nfsft_finalize(&plan2);</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="comment">/* Delete precomputed data. */</span></div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> nfsft_forget();</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> </div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="keywordflow">if</span> ((N+1)*(N+1) > M)</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> {</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(temp2);</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> }</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> </div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> } <span class="comment">/* Process each testcase. */</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> </div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="comment">/* Return exit code for successful run. */</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> }</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/jquery.js b/doc/api/html/jquery.js
deleted file mode 100644
index 63939e7..0000000
--- a/doc/api/html/jquery.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*! jQuery v1.7.1 jquery.com | jquery.org/license */
-(function(a,b){function cy(a){return f.isWindow(a)?a:a.nodeType===9?a.defaultView||a.parentWindow:!1}function cv(a){if(!ck[a]){var b=c.body,d=f("<"+a+">").appendTo(b),e=d.css("display");d.remove();if(e==="none"||e===""){cl||(cl=c.createElement("iframe"),cl.frameBorder=cl.width=cl.height=0),b.appendChild(cl);if(!cm||!cl.createElement)cm=(cl.contentWindow||cl.contentDocument).document,cm.write((c.compatMode==="CSS1Compat"?"<!doctype html>":"")+"<html><body>"),cm.close();d=cm.createElement( [...]
-{g=c.apply(this,arguments),g&&f.isFunction(g.promise)?g.promise().then(d.resolve,d.reject,d.notify):d[e+"With"](this===i?d:this,[g])}):i[a](d[e])})}).promise()},promise:function(a){if(a==null)a=h;else for(var b in h)a[b]=h[b];return a}},i=h.promise({}),j;for(j in g)i[j]=g[j].fire,i[j+"With"]=g[j].fireWith;i.done(function(){e="resolved"},c.disable,d.lock).fail(function(){e="rejected"},b.disable,d.lock),a&&a.call(i,i);return i},when:function(a){function m(a){return function(b){e[a]=argumen [...]
-f.event={add:function(a,c,d,e,g){var h,i,j,k,l,m,n,o,p,q,r,s;if(!(a.nodeType===3||a.nodeType===8||!c||!d||!(h=f._data(a)))){d.handler&&(p=d,d=p.handler),d.guid||(d.guid=f.guid++),j=h.events,j||(h.events=j={}),i=h.handle,i||(h.handle=i=function(a){return typeof f!="undefined"&&(!a||f.event.triggered!==a.type)?f.event.dispatch.apply(i.elem,arguments):b},i.elem=a),c=f.trim(I(c)).split(" ");for(k=0;k<c.length;k++){l=A.exec(c[k])||[],m=l[1],n=(l[2]||"").split(".").sort(),s=f.event.special[m]| [...]
-&&m.filter(b,a,!0)}},"":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("parentNode",b,f,a,d,c)},"~":function(a,b,c){var d,f=e++,g=x;typeof b=="string"&&!l.test(b)&&(b=b.toLowerCase(),d=b,g=w),g("previousSibling",b,f,a,d,c)}},find:{ID:function(a,b,c){if(typeof b.getElementById!="undefined"&&!c){var d=b.getElementById(a[1]);return d&&d.parentNode?[d]:[]}},NAME:function(a,b){if(typeof b.getElementsByName!="undefined"){var c=[],d=b.getElementsBy [...]
-f.cleanData([d])),d.parentNode&&d.parentNode.removeChild(d);return this},empty:function()
-{for(var a=0,b;(b=this[a])!=null;a++){b.nodeType===1&&f.cleanData(b.getElementsByTagName("*"));while(b.firstChild)b.removeChild(b.firstChild)}return this},clone:function(a,b){a=a==null?!1:a,b=b==null?a:b;return this.map(function(){return f.clone(this,a,b)})},html:function(a){if(a===b)return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(W,""):null;if(typeof a=="string"&&!ba.test(a)&&(f.support.leadingWhitespace||!X.test(a))&&!bg[(Z.exec(a)||["",""])[1].toLowerCase()]){a=a.replac [...]
-{if(!c.crossDomain||f.support.cors){var d;return{send:function(e,g){var h=c.xhr(),i,j;c.username?h.open(c.type,c.url,c.async,c.username,c.password):h.open(c.type,c.url,c.async);if(c.xhrFields)for(j in c.xhrFields)h[j]=c.xhrFields[j];c.mimeType&&h.overrideMimeType&&h.overrideMimeType(c.mimeType),!c.crossDomain&&!e["X-Requested-With"]&&(e["X-Requested-With"]="XMLHttpRequest");try{for(j in e)h.setRequestHeader(j,e[j])}catch(k){}h.send(c.hasContent&&c.data||null),d=function(a,e){var j,k,l,m, [...]
diff --git a/doc/api/html/kernel_2nfsft_2api_8h_source.html b/doc/api/html/kernel_2nfsft_2api_8h_source.html
deleted file mode 100644
index d245cd1..0000000
--- a/doc/api/html/kernel_2nfsft_2api_8h_source.html
+++ /dev/null
@@ -1,122 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - api.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_25564cacf5a7ef2ec915d9f7b609853e.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">kernel/nfsft/api.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: api.h 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifndef API_H</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor">#define API_H</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment">/* "Default exponent of maximum bandwidth" */</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#define BWEXP_MAX 10</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">/* "Default maximum bandwidth" */</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#define BW_MAX 1024</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#define ROW(k) (k*(wisdom.N_MAX+2))</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor"></span><span class="preprocessor">#define ROWK(k) (k*(wisdom.N_MAX+2)+k)</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor">#ifdef HAVE_STDBOOL_H</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor"></span><span class="preprocessor"> #include <stdbool.h></span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor"></span> <span class="keyword">typedef</span> <span class="keyword">enum</span> {<span class="keyword">false</span> = 0,<span class="keyword">true</span> = 1} bool;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment">//#define FIRST_L (int)floor(ntilde/(double)plength)</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment">//#define LAST_L (int)ceil((Mtilde+1)/(double)plength)-1</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"><a class="code" href="structnfsft__wisdom.html"> 58</a></span> <span class="keyword">struct </span><a class="code" href="structnfsft__wisdom.html" title="Wisdom structure.">nfsft_wisdom</a></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> {</div>
-<div class="line"><a name="l00061"></a><span class="lineno"><a class="code" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740"> 61</a></span> <span class="keywordtype">bool</span> <a class="code" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740" title="Indicates wether the structure has been initialized.">initialized</a>;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"><a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51"> 65</a></span> <span class="keywordtype">int</span> <a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"><a class="code" href="structnfsft__wisdom.html#ae6c31fe1bc09d2894948358c2bea27e4"> 67</a></span> <span class="keywordtype">int</span> <a class="code" href="structnfsft__wisdom.html#ae6c31fe1bc09d2894948358c2bea27e4" title="The logarithm /f$t = N_{{max}}/f$ of the maximum bandwidth.">T_MAX</a>;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="comment">/* Data for the direct algorithms */</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00076"></a><span class="lineno"><a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e"> 76</a></span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"><a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255"> 82</a></span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>;</div>
-<div class="line"><a name="l00088"></a><span class="lineno"><a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2"> 88</a></span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>;</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="comment">/* Data for fast algorithms. */</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"><a class="code" href="structnfsft__wisdom.html#ac367edaa1fae041e5b049cd81b44336b"> 93</a></span> <span class="keywordtype">double</span> <a class="code" href="structnfsft__wisdom.html#ac367edaa1fae041e5b049cd81b44336b" title="The threshold /f$/f$.">threshold</a>;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> nthreads;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> *set_threads;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00099"></a><span class="lineno"><a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2"> 99</a></span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="preprocessor"></span>};</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="comment">/* \} */</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/kernels_8c.html b/doc/api/html/kernels_8c.html
deleted file mode 100644
index 891536c..0000000
--- a/doc/api/html/kernels_8c.html
+++ /dev/null
@@ -1,96 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernels.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">kernels.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>File with predefined kernels for the fast summation algorithm.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <stdio.h></code><br/>
-<code>#include <math.h></code><br/>
-<code>#include <float.h></code><br/>
-<code>#include "<a class="el" href="kernels_8h_source.html">kernels.h</a>"</code><br/>
-</div>
-<p><a href="kernels_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga81bf029788afe857325a760743f9fdd3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga81bf029788afe857325a760743f9fdd3"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>gaussian</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga44a58143a1f5c79b45c538134117e091"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga44a58143a1f5c79b45c538134117e091"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>multiquadric</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga889c2a1791e42bb8fa5a594588d68a5c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga889c2a1791e42bb8fa5a594588d68a5c"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>inverse_multiquadric</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga91be4b7bcc7d3a415e6b9b6ccaec39a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga91be4b7bcc7d3a415e6b9b6ccaec39a7"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>logarithm</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga7723414bb26fd9b1cc76686aeca57425"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7723414bb26fd9b1cc76686aeca57425"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>thinplate_spline</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:gaed5f8559b7b7a24674318cb58856602b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaed5f8559b7b7a24674318cb58856602b"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_square</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga635ef40090e33b4917a20ab62913ef05"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga635ef40090e33b4917a20ab62913ef05"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_modulus</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga6a6096569616d5cf9604c514f925581b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6a6096569616d5cf9604c514f925581b"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_x</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga221604ef3a42dc2de4f1ce68831e7524"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga221604ef3a42dc2de4f1ce68831e7524"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>inverse_multiquadric3</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga8946fd3f992262c24477b56cba844873"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8946fd3f992262c24477b56cba844873"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>sinc_kernel</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:gab7b7015bc5f2946583e7adbecb2cf630"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab7b7015bc5f2946583e7adbecb2cf630"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>cosc</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:gac693b76a84e9435efc06c1ef26fc7435"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac693b76a84e9435efc06c1ef26fc7435"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>kcot</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga1deb0e10a0d6cf7f11d8b90ee008eb53"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1deb0e10a0d6cf7f11d8b90ee008eb53"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_cube</b> (double x, int der, const double *param)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>File with predefined kernels for the fast summation algorithm. </p>
-
-<p>Definition in file <a class="el" href="kernels_8c_source.html">kernels.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/kernels_8c_source.html b/doc/api/html/kernels_8c_source.html
deleted file mode 100644
index ecccda5..0000000
--- a/doc/api/html/kernels_8c_source.html
+++ /dev/null
@@ -1,447 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernels.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">kernels.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="kernels_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: kernels.c 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> </div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include <float.h></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "<a class="code" href="kernels_8h.html" title="Header file with predefined kernels for the fast summation algorithm.">kernels.h</a>"</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">double</span> _Complex gaussian(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x)=exp(-x^2/c^2) */</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">double</span> c=param[0];</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> {</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordflow">case</span> 0 : value=exp(-x*x/(c*c)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">case</span> 1 : value=-2.0*x/(c*c)*exp(-x*x/(c*c)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">case</span> 2 : value=2.0*exp(-x*x/(c*c))*(-c*c+2.0*x*x)/(c*c*c*c); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">case</span> 3 : value=-4.0*x*exp(-x*x/(c*c))*(-3.0*c*c+2.0*x*x)/(c*c*c*c*c*c); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">case</span> 4 : value=4.0*exp(-x*x/(c*c))*(3.0*c*c*c*c-12.0*c*c*x*x+4.0*x*x*x*x)/(c*c*c*c*c*c*c*c); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">case</span> 5 : value=-8.0*x*exp(-x*x/(c*c))*(15.0*c*c*c*c-20.0*c*c*x*x+4.0*x*x*x*x)/pow(c,10.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">case</span> 6 : value=8.0*exp(-x*x/(c*c))*(-15.0*c*c*c*c*c*c+90.0*x*x*c*c*c*c-60.0*x*x*x*x*c*c+8.0*x*x*x*x*x*x)/pow(c,12.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">case</span> 7 : value=-16.0*x*exp(-x*x/(c*c))*(-105.0*c*c*c*c*c*c+210.0*x*x*c*c*c*c-84.0*x*x*x*x*c*c+8.0*x*x*x*x*x*x)/pow(c,14.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">case</span> 8 : value=16.0*exp(-x*x/(c*c))*(105.0*c*c*c*c*c*c*c*c-840.0*x*x*c*c*c*c*c*c+840.0*x*x*x*x*c*c*c*c-224.0*x*x*x*x*x*x*c*c+16.0*x*x*x*x*x*x*x*x)/pow(c,16.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">case</span> 9 : value=-32.0*x*exp(-x*x/(c*c))*(945.0*c*c*c*c*c*c*c*c-2520.0*x*x*c*c*c*c*c*c+1512.0*x*x*x*x*c*c*c*c-288.0*x*x*x*x*x*x*c*c+16.0*x*x*x*x*x*x*x*x)/pow(c,18.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">case</span> 10 : value=32.0*exp(-x*x/(c*c))*(-945.0*pow(c,10.0)+9450.0*x*x*c*c*c*c*c*c*c*c-12600.0*x*x*x*x*c*c*c*c*c*c+5040.0*x*x*x*x*x*x*c*c*c*c-720.0*x*x*x*x*x*x*x*x*c*c+32.0*pow(x,10.0))/pow(c,20.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">case</span> 11 : value=-64.0*x*exp(-x*x/(c*c))*(-10395.0*pow(c,10.0)+34650.0*x*x*c*c*c*c*c*c*c*c-27720.0*x*x*x*x*c*c*c*c*c*c+7920.0*x*x*x*x*x*x*c*c*c*c-880.0*x*x*x*x*x*x*x*x*c*c+32.0*pow(x,10.0))/pow(c,22.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">case</span> 12 : value=64.0*exp(-x*x/(c*c))*(10395.0*pow(c,12.0)-124740.0*x*x*pow(c,10.0)+207900.0*x*x*x*x*c*c*c*c*c*c*c*c-110880.0*x*x*x*x*x*x*c*c*c*c*c*c+23760.0*x*x*x*x*x*x*x*x*c*c*c*c-2112.0*pow(x,10.0)*c*c+64.0*pow(x,12.0))/pow(c,24.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> }</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> }</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">double</span> _Complex multiquadric(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x)=sqrt(x^2+c^2) */</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> {</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordtype">double</span> c=param[0];</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">case</span> 0 : value=sqrt(x*x+c*c); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">case</span> 1 : value=1.0/(sqrt(x*x+c*c))*x; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">case</span> 2 : value=c*c/sqrt(pow(x*x+c*c,3.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">case</span> 3 : value=-3.0*x*c*c/sqrt(pow(x*x+c*c,5.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">case</span> 4 : value=3.0*c*c*(4.0*x*x-c*c)/sqrt(pow(x*x+c*c,7.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">case</span> 5 : value=-15.0*x*c*c*(4.0*x*x-3.0*c*c)/sqrt(pow(x*x+c*c,9.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">case</span> 6 : value=45.0*c*c*(8.0*x*x*x*x-12.0*x*x*c*c+c*c*c*c)/sqrt(pow(x*x+c*c,11.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">case</span> 7 : value=-315.0*x*c*c*(8.0*x*x*x*x-20.0*x*x*c*c+5.0*c*c*c*c)/sqrt(pow(x*x+c*c,13.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">case</span> 8 : value=315.0*c*c*(64.0*x*x*x*x*x*x-240.0*x*x*x*x*c*c+120.0*x*x*c*c*c*c-5.0*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,15.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">case</span> 9 : value=-2835.0*x*c*c*(64.0*x*x*x*x*x*x-336.0*x*x*x*x*c*c+280.0*x*x*c*c*c*c-35.0*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,17.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">case</span> 10 : value=14175.0*c*c*(128.0*x*x*x*x*x*x*x*x-896.0*x*x*x*x*x*x*c*c+1120.0*x*x*x*x*c*c*c*c-280.0*x*x*c*c*c*c*c*c+7.0*c*c*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,19.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">case</span> 11 : value=-155925.0*x*c*c*(128.0*x*x*x*x*x*x*x*x-1152.0*x*x*x*x*x*x*c*c+2016.0*x*x*x*x*c*c*c*c-840.0*x*x*c*c*c*c*c*c+63.0*c*c*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,21.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">case</span> 12 : value=467775.0*c*c*(1260.0*x*x*c*c*c*c*c*c*c*c-21.0*pow(c,10.0)+512.0*pow(x,10.0)-5760.0*x*x*x*x*x*x*x*x*c*c+13440.0*x*x*x*x*x*x*c*c*c*c-8400.0*x*x*x*x*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,23.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> }</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> }</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">double</span> _Complex inverse_multiquadric(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x)=1/sqrt(x^2+c^2) */</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> {</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keywordtype">double</span> c=param[0];</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> {</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">case</span> 0 : value=1.0/sqrt(x*x+c*c); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">case</span> 1 : value=-1.0/(sqrt(pow(x*x+c*c,3.0)))*x; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keywordflow">case</span> 2 : value=(2.0*x*x-c*c)/sqrt(pow(x*x+c*c,5.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">case</span> 3 : value=-3.0*x*(2.0*x*x-3.0*c*c)/sqrt(pow(x*x+c*c,7.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">case</span> 4 : value=3.0*(8.0*x*x*x*x-24.0*x*x*c*c+3.0*c*c*c*c)/sqrt(pow(x*x+c*c,9.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">case</span> 5 : value=-15.0*x*(8.0*x*x*x*x-40.0*x*x*c*c+15.0*c*c*c*c)/sqrt(pow(x*x+c*c,11.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">case</span> 6 : value=45.0*(16.0*x*x*x*x*x*x-120.0*x*x*x*x*c*c+90.0*x*x*c*c*c*c-5.0*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,13.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordflow">case</span> 7 : value=-315.0*x*(16.0*x*x*x*x*x*x-168.0*x*x*x*x*c*c+210.0*x*x*c*c*c*c-35.0*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,15.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">case</span> 8 : value=315.0*(128.0*x*x*x*x*x*x*x*x-1792.0*x*x*x*x*x*x*c*c+3360.0*x*x*x*x*c*c*c*c-1120.0*x*x*c*c*c*c*c*c+35.0*c*c*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,17.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">case</span> 9 : value=-2835.0*x*(128.0*x*x*x*x*x*x*x*x-2304.0*x*x*x*x*x*x*c*c+6048.0*x*x*x*x*c*c*c*c-3360.0*x*x*c*c*c*c*c*c+315.0*c*c*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,19.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">case</span> 10 : value=14175.0*(256.0*pow(x,10.0)-5760.0*x*x*x*x*x*x*x*x*c*c+20160.0*x*x*x*x*x*x*c*c*c*c-16800.0*x*x*x*x*c*c*c*c*c*c+3150.0*x*x*c*c*c*c*c*c*c*c-63.0*pow(c,10.0))/sqrt(pow(x*x+c*c,21.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">case</span> 11 : value=-155925.0*x*(256.0*pow(x,10.0)-7040.0*x*x*x*x*x*x*x*x*c*c+31680.0*x*x*x*x*x*x*c*c*c*c-36960.0*x*x*x*x*c*c*c*c*c*c+11550.0*x*x*c*c*c*c*c*c*c*c-693.0*pow(c,10.0))/sqrt(pow(x*x+c*c,23.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">case</span> 12 : value=467775.0*(231.0*pow(c,12.0)+190080.0*x*x*x*x*x*x*x*x*c*c*c*c-16632.0*x*x*pow(c,10.0)-295680.0*x*x*x*x*x*x*c*c*c*c*c*c+138600.0*x*x*x*x*c*c*c*c*c*c*c*c+1024.0*pow(x,12.0)-33792.0*pow(x,10.0)*c*c)/sqrt(pow(x*x+c*c,25.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> }</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> }</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">double</span> _Complex logarithm(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x)=log |x| */</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> {</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> (void)param;</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keywordflow">if</span> (fabs(x)<DBL_EPSILON) value=0.0;</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">else</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> {</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordflow">case</span> 0 : value=log(fabs(x)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordflow">case</span> 1 : value=(x<0 ? -1 : 1)/fabs(x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">case</span> 2 : value=-1/(x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">case</span> 3 : value=2.0*(x<0 ? -1 : 1)/pow(fabs(x),3.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordflow">case</span> 4 : value=-6.0/(x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">case</span> 5 : value=24.0*(x<0 ? -1 : 1)/pow(fabs(x),5.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="keywordflow">case</span> 6 : value=-120.0/(x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">case</span> 7 : value=720.0*(x<0 ? -1 : 1)/pow(fabs(x),7.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">case</span> 8 : value=-5040.0/(x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">case</span> 9 : value=40320.0*(x<0 ? -1 : 1)/pow(fabs(x),9.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">case</span> 10 : value=-362880.0/pow(x,10.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">case</span> 11 : value=3628800.0*(x<0 ? -1 : 1)/pow(fabs(x),11.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="keywordflow">case</span> 12 : value=-39916800.0/pow(x,12.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">case</span> 13 : value=479001600.0/pow(x,13.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="keywordflow">case</span> 14 : value=-6227020800.0/pow(x,14.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">case</span> 15 : value=87178291200.0/pow(x,15.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordflow">case</span> 16 : value=-1307674368000.0/pow(x,16.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">case</span> 17 : value=20922789888000.0/pow(x,17.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> }</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> </div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> }</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="keywordtype">double</span> _Complex thinplate_spline(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x) = x^2 log |x| */</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> {</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> </div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> (void)param;</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="keywordflow">if</span> (fabs(x)<DBL_EPSILON) value=0.0;</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="keywordflow">else</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> {</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">case</span> 0 : value=x*x*log(fabs(x)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="keywordflow">case</span> 1 : value=2.0*x*log(fabs(x))+x; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">case</span> 2 : value=2.0*log(fabs(x))+3.0; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordflow">case</span> 3 : value=2.0/x; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="keywordflow">case</span> 4 : value=-2.0/(x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">case</span> 5 : value=4.0/(x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="keywordflow">case</span> 6 : value=-12.0/(x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="keywordflow">case</span> 7 : value=48.0/(x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">case</span> 8 : value=-240.0/(x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="keywordflow">case</span> 9 : value=1440.0/(x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">case</span> 10 : value=-10080.0/(x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keywordflow">case</span> 11 : value=80640.0/(x*x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">case</span> 12 : value=-725760.0/pow(x,10.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> }</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> }</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="keywordtype">double</span> _Complex one_over_square(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x) = 1/x^2 */</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> {</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> (void)param;</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> </div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">if</span> (fabs(x)<DBL_EPSILON) value=0.0;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">else</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> {</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="keywordflow">case</span> 0 : value=1.0/(x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">case</span> 1 : value=-2.0/(x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">case</span> 2 : value=6.0/(x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keywordflow">case</span> 3 : value=-24.0/(x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="keywordflow">case</span> 4 : value=120.0/(x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">case</span> 5 : value=-720.0/(x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordflow">case</span> 6 : value=5040.0/(x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">case</span> 7 : value=-40320.0/(x*x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">case</span> 8 : value=362880.0/pow(x,10.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">case</span> 9 : value=-3628800.0/pow(x,11.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="keywordflow">case</span> 10 : value=39916800.0/pow(x,12.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordflow">case</span> 11 : value=-479001600.0/pow(x,13.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="keywordflow">case</span> 12 : value=6227020800.0/pow(x,14.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> }</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> }</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> </div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordtype">double</span> _Complex one_over_modulus(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x) = 1/|x| */</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> {</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> (void)param;</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> </div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="keywordflow">if</span> (fabs(x)<DBL_EPSILON) value=0.0;</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="keywordflow">else</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> {</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="keywordflow">case</span> 0 : value=1.0/fabs(x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="keywordflow">case</span> 1 : value=-1/x/fabs(x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="keywordflow">case</span> 2 : value=2.0/pow(fabs(x),3.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="keywordflow">case</span> 3 : value=-6.0/(x*x*x)/fabs(x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordflow">case</span> 4 : value=24.0/pow(fabs(x),5.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordflow">case</span> 5 : value=-120.0/(x*x*x*x*x)/fabs(x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="keywordflow">case</span> 6 : value=720.0/pow(fabs(x),7.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordflow">case</span> 7 : value=-5040.0/(x*x*x*x*x*x*x)/fabs(x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="keywordflow">case</span> 8 : value=40320.0/pow(fabs(x),9.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">case</span> 9 : value=-362880.0/(x*x*x*x*x*x*x*x*x)/fabs(x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">case</span> 10 : value=3628800.0/pow(fabs(x),11.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="keywordflow">case</span> 11 : value=-39916800.0/pow(x,11.0)/fabs(x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="keywordflow">case</span> 12 : value=479001600.0/pow(fabs(x),13.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> }</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> </div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> }</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> </div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="keywordtype">double</span> _Complex one_over_x(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x) = 1/x */</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> {</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> </div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> (void)param;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="keywordflow">if</span> (fabs(x)<DBL_EPSILON) value=0.0;</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">else</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> {</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="keywordflow">case</span> 0 : value=1.0/x; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="keywordflow">case</span> 1 : value=-1.0/(x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="keywordflow">case</span> 2 : value=2.0/(x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="keywordflow">case</span> 3 : value=-6.0/(x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="keywordflow">case</span> 4 : value=24.0/(x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="keywordflow">case</span> 5 : value=-120.0/(x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="keywordflow">case</span> 6 : value=720.0/(x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="keywordflow">case</span> 7 : value=-5040.0/(x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="keywordflow">case</span> 8 : value=40320.0/(x*x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="keywordflow">case</span> 9 : value=-362880.0/pow(x,10.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="keywordflow">case</span> 10 : value=3628800.0/pow(x,11.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="keywordflow">case</span> 11 : value=-39916800.0/pow(x,12.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="keywordflow">case</span> 12 : value=479001600.0/pow(x,13.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> }</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> </div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> }</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> </div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keywordtype">double</span> _Complex inverse_multiquadric3(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x) = 1/sqrt(x^2+c^2)^3 */</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> {</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="keywordtype">double</span> c=param[0];</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> </div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> {</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="keywordflow">case</span> 0 : value=1.0/(sqrt(pow(x*x+c*c,3.0))); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="keywordflow">case</span> 1 : value=-3.0/sqrt(pow(x*x+c*c,5.0))*x; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="keywordflow">case</span> 2 : value=3.0*(4.0*x*x-c*c)/sqrt(pow(x*x+c*c,7.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="keywordflow">case</span> 3 : value=-15.0*x*(4.0*x*x-3.0*c*c)/sqrt(pow(x*x+c*c,9.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">case</span> 4 : value=45.0*(8.0*x*x*x*x-12.0*x*x*c*c+c*c*c*c)/sqrt(pow(x*x+c*c,11.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="keywordflow">case</span> 5 : value=-315.0*x*(8.0*x*x*x*x-20.0*x*x*c*c+5.0*c*c*c*c)/sqrt(pow(x*x+c*c,13.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="keywordflow">case</span> 6 : value=315.0*(64.0*x*x*x*x*x*x-240.0*x*x*x*x*c*c+120.0*x*x*c*c*c*c-5.0*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,15.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="keywordflow">case</span> 7 : value=-2835.0*x*(64.0*x*x*x*x*x*x-336.0*x*x*x*x*c*c+280.0*x*x*c*c*c*c-35.0*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,17.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="keywordflow">case</span> 8 : value=14175.0*(128.0*x*x*x*x*x*x*x*x-896.0*x*x*x*x*x*x*c*c+1120.0*x*x*x*x*c*c*c*c-280.0*x*x*c*c*c*c*c*c+7.0*c*c*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,19.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="keywordflow">case</span> 9 : value=-155925.0*x*(128.0*x*x*x*x*x*x*x*x-1152.0*x*x*x*x*x*x*c*c+2016.0*x*x*x*x*c*c*c*c-840.0*x*x*c*c*c*c*c*c+63.0*c*c*c*c*c*c*c*c)/sqrt(pow(x*x+c*c,21.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="keywordflow">case</span> 10 : value=467775.0*(512.0*pow(x,10.0)-5760.0*x*x*x*x*x*x*x*x*c*c+13440.0*x*x*x*x*x*x*c*c*c*c-8400.0*x*x*x*x*c*c*c*c*c*c+1260.0*x*x*c*c*c*c*c*c*c*c-21.0*pow(c,10.0))/sqrt(pow(x*x+c*c,23.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="keywordflow">case</span> 11 : value=-6081075.0*x*(512.0*pow(x,10.0)-7040.0*x*x*x*x*x*x*x*x*c*c+21120.0*x*x*x*x*x*x*c*c*c*c-18480.0*x*x*x*x*c*c*c*c*c*c+4620.0*x*x*c*c*c*c*c*c*c*c-231.0*pow(c,10.0))/sqrt(pow(x*x+c*c,25.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="keywordflow">case</span> 12 : value=42567525.0*(1024.0*pow(x,12.0)+27720.0*x*x*x*x*c*c*c*c*c*c*c*c+33.0*pow(c,12.0)-2772.0*x*x*pow(c,10.0)-73920.0*x*x*x*x*x*x*c*c*c*c*c*c+63360.0*x*x*x*x*x*x*x*x*c*c*c*c-16896.0*pow(x,10.0)*c*c)/sqrt(pow(x*x+c*c,27.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> }</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> </div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> }</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> </div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="keywordtype">double</span> _Complex sinc_kernel(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x) = sin(cx)/x */</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> {</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="keywordtype">double</span> c=param[0];</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> </div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">if</span> (fabs(x)<DBL_EPSILON) value=0.0;</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="keywordflow">else</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> {</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="keywordflow">case</span> 0 : value=sin(c*x)/x; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="keywordflow">case</span> 1 : value=(cos(c*x)*c*x-sin(c*x))/(x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="keywordflow">case</span> 2 : value=-(sin(c*x)*c*c*x*x+2.0*cos(c*x)*c*x-2.0*sin(c*x))/(x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="keywordflow">case</span> 3 : value=-(cos(c*x)*c*c*c*x*x*x-3.0*sin(c*x)*c*c*x*x-6.0*cos(c*x)*c*x+6.0*sin(c*x))/(x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="keywordflow">case</span> 4 : value=(sin(c*x)*c*c*c*c*x*x*x*x+4.0*cos(c*x)*c*c*c*x*x*x-12.0*sin(c*x)*c*c*x*x-24.0*cos(c*x)*c*x+24.0*sin(c*x))/(x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">case</span> 5 : value=(cos(c*x)*c*c*c*c*c*x*x*x*x*x-5.0*sin(c*x)*c*c*c*c*x*x*x*x-20.0*cos(c*x)*c*c*c*x*x*x+60.0*sin(c*x)*c*c*x*x+120.0*cos(c*x)*c*x-120.0*sin(c*x))/(x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="keywordflow">case</span> 6 : value=-(sin(c*x)*c*c*c*c*c*c*x*x*x*x*x*x+6.0*cos(c*x)*c*c*c*c*c*x*x*x*x*x-30.0*sin(c*x)*c*c*c*c*x*x*x*x-120.0*cos(c*x)*c*c*c*x*x*x+360.0*sin(c*x)*c*c*x*x+720.0*cos(c*x)*c*x-720.0*sin(c*x))/(x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="keywordflow">case</span> 7 : value=-(cos(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x-7.0*sin(c*x)*c*c*c*c*c*c*x*x*x*x*x*x-42.0*cos(c*x)*c*c*c*c*c*x*x*x*x*x+210.0*sin(c*x)*c*c*c*c*x*x*x*x+840.0*cos(c*x)*c*c*c*x*x*x-2520.0*sin(c*x)*c*c*x*x-5040.0*cos(c*x)*c*x+5040.0*sin(c*x))/(x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="keywordflow">case</span> 8 : value=(sin(c*x)*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x+8.0*cos(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x-56.0*sin(c*x)*c*c*c*c*c*c*x*x*x*x*x*x-336.0*cos(c*x)*c*c*c*c*c*x*x*x*x*x+1680.0*sin(c*x)*c*c*c*c*x*x*x*x+6720.0*cos(c*x)*c*c*c*x*x*x-20160.0*sin(c*x)*c*c*x*x-40320.0*cos(c*x)*c*x+40320.0*sin(c*x))/(x*x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="keywordflow">case</span> 9 : value=(cos(c*x)*c*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x*x-9.0*sin(c*x)*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x-72.0*cos(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x+504.0*sin(c*x)*c*c*c*c*c*c*x*x*x*x*x*x+3024.0*cos(c*x)*c*c*c*c*c*x*x*x*x*x-15120.0*sin(c*x)*c*c*c*c*x*x*x*x-60480.0*cos(c*x)*c*c*c*x*x*x+181440.0*sin(c*x)*c*c*x*x+362880.0*cos(c*x)*c*x-362880.0*sin(c*x))/pow(x,10.0); <span class [...]
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="keywordflow">case</span> 10 : value=-(sin(c*x)*pow(c,10.0)*pow(x,10.0)+10.0*cos(c*x)*c*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x*x-90.0*sin(c*x)*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x-720.0*cos(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x+5040.0*sin(c*x)*c*c*c*c*c*c*x*x*x*x*x*x+30240.0*cos(c*x)*c*c*c*c*c*x*x*x*x*x-151200.0*sin(c*x)*c*c*c*c*x*x*x*x-604800.0*cos(c*x)*c*c*c*x*x*x+1814400.0*sin(c*x)*c*c*x*x+3628800.0*cos(c*x)* [...]
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="keywordflow">case</span> 11 : value=-(cos(c*x)*pow(c,11.0)*pow(x,11.0)-11.0*sin(c*x)*pow(c,10.0)*pow(x,10.0)-110.0*cos(c*x)*c*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x*x+990.0*sin(c*x)*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x+7920.0*cos(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x-55440.0*sin(c*x)*c*c*c*c*c*c*x*x*x*x*x*x-332640.0*cos(c*x)*c*c*c*c*c*x*x*x*x*x+1663200.0*sin(c*x)*c*c*c*c*x*x*x*x+6652800.0*cos(c*x)*c*c*c*x*x*x-1 [...]
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="keywordflow">case</span> 12 : value=(sin(c*x)*pow(c,12.0)*pow(x,12.0)+12.0*cos(c*x)*pow(c,11.0)*pow(x,11.0)-132.0*sin(c*x)*pow(c,10.0)*pow(x,10.0)-1320.0*cos(c*x)*c*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x*x+11880.0*sin(c*x)*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x+95040.0*cos(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x-665280.0*sin(c*x)*c*c*c*c*c*c*x*x*x*x*x*x-3991680.0*cos(c*x)*c*c*c*c*c*x*x*x*x*x+19958400.0*sin(c*x)*c*c [...]
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> }</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> </div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> }</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> </div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="keywordtype">double</span> _Complex cosc(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x) = cos(cx)/x */</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> {</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="keywordtype">double</span> c=param[0];</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="keywordtype">double</span> sign;</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordflow">if</span> (x<0) sign=-1.0; <span class="keywordflow">else</span> sign=1.0;</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> x=fabs(x);</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> </div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="keywordflow">if</span> (fabs(x)<DBL_EPSILON) value=0.0;</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="keywordflow">else</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> {</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="keywordflow">case</span> 0 : value=cos(c*x)/x; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="keywordflow">case</span> 1 : value=-(sin(c*x)*c*x+cos(c*x))/(x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="keywordflow">case</span> 2 : value=(-cos(c*x)*c*c*x*x+2.0*sin(c*x)*c*x+2.0*cos(c*x))/(x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="keywordflow">case</span> 3 : value=(sin(c*x)*c*c*c*x*x*x+3.0*cos(c*x)*c*c*x*x-6.0*sin(c*x)*c*x-6.0*cos(c*x))/(x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="keywordflow">case</span> 4 : value=(cos(c*x)*c*c*c*c*x*x*x*x-4.0*sin(c*x)*c*c*c*x*x*x-12.0*cos(c*x)*c*c*x*x+24.0*sin(c*x)*c*x+24.0*cos(c*x))/(x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="keywordflow">case</span> 5 : value=-(sin(c*x)*c*c*c*c*c*x*x*x*x*x+5.0*cos(c*x)*c*c*c*c*x*x*x*x-20.0*sin(c*x)*c*c*c*x*x*x-60.0*cos(c*x)*c*c*x*x+120.0*sin(c*x)*c*x+120.0*cos(c*x))/(x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="keywordflow">case</span> 6 : value=-(cos(c*x)*c*c*c*c*c*c*x*x*x*x*x*x-6.0*sin(c*x)*c*c*c*c*c*x*x*x*x*x-30.0*cos(c*x)*c*c*c*c*x*x*x*x+120.0*sin(c*x)*c*c*c*x*x*x+360.0*cos(c*x)*c*c*x*x-720.0*sin(c*x)*c*x-720.0*cos(c*x))/(x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="keywordflow">case</span> 7 : value=(sin(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x+7.0*cos(c*x)*c*c*c*c*c*c*x*x*x*x*x*x-42.0*sin(c*x)*c*c*c*c*c*x*x*x*x*x-210.0*cos(c*x)*c*c*c*c*x*x*x*x+840.0*sin(c*x)*c*c*c*x*x*x+2520.0*cos(c*x)*c*c*x*x-5040.0*sin(c*x)*c*x-5040.0*cos(c*x))/(x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="keywordflow">case</span> 8 : value=(cos(c*x)*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x-8.0*sin(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x-56.0*cos(c*x)*c*c*c*c*c*c*x*x*x*x*x*x+336.0*sin(c*x)*c*c*c*c*c*x*x*x*x*x+1680.0*cos(c*x)*c*c*c*c*x*x*x*x-6720.0*sin(c*x)*c*c*c*x*x*x-20160.0*cos(c*x)*c*c*x*x+40320.0*sin(c*x)*c*x+40320.0*cos(c*x))/(x*x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="keywordflow">case</span> 9 : value=-(sin(c*x)*c*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x*x+9.0*cos(c*x)*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x-72.0*sin(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x-504.0*cos(c*x)*c*c*c*c*c*c*x*x*x*x*x*x+3024.0*sin(c*x)*c*c*c*c*c*x*x*x*x*x+15120.0*cos(c*x)*c*c*c*c*x*x*x*x-60480.0*sin(c*x)*c*c*c*x*x*x-181440.0*cos(c*x)*c*c*x*x+362880.0*sin(c*x)*c*x+362880.0*cos(c*x))/pow(x,10.0); <span clas [...]
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="keywordflow">case</span> 10 : value=-(cos(c*x)*pow(c,10.0)*pow(x,10.0)-10.0*sin(c*x)*c*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x*x-90.0*cos(c*x)*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x+720.0*sin(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x+5040.0*cos(c*x)*c*c*c*c*c*c*x*x*x*x*x*x-30240.0*sin(c*x)*c*c*c*c*c*x*x*x*x*x-151200.0*cos(c*x)*c*c*c*c*x*x*x*x+604800.0*sin(c*x)*c*c*c*x*x*x+1814400.0*cos(c*x)*c*c*x*x-3628800.0*sin(c*x)* [...]
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="keywordflow">case</span> 11 : value=(sin(c*x)*pow(c,11.0)*pow(x,11.0)+11.0*cos(c*x)*pow(c,10.0)*pow(x,10.0)-110.0*sin(c*x)*c*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x*x-990.0*cos(c*x)*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x+7920.0*sin(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x+55440.0*cos(c*x)*c*c*c*c*c*c*x*x*x*x*x*x-332640.0*sin(c*x)*c*c*c*c*c*x*x*x*x*x-1663200.0*cos(c*x)*c*c*c*c*x*x*x*x+6652800.0*sin(c*x)*c*c*c*x*x*x+19 [...]
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="keywordflow">case</span> 12 : value=(cos(c*x)*pow(c,12.0)*pow(x,12.0)-12.0*sin(c*x)*pow(c,11.0)*pow(x,11.0)-132.0*cos(c*x)*pow(c,10.0)*pow(x,10.0)+1320.0*sin(c*x)*c*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x*x+11880.0*cos(c*x)*c*c*c*c*c*c*c*c*x*x*x*x*x*x*x*x-95040.0*sin(c*x)*c*c*c*c*c*c*c*x*x*x*x*x*x*x-665280.0*cos(c*x)*c*c*c*c*c*c*x*x*x*x*x*x+3991680.0*sin(c*x)*c*c*c*c*c*x*x*x*x*x+19958400.0*cos(c*x)*c*c [...]
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> }</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> value*=pow(sign,der);</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> </div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> }</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> </div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="keywordtype">double</span> _Complex kcot(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param) <span class="comment">/* K(x) = cot(cx) */</span></div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> {</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="keywordtype">double</span> c=param[0];</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> </div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="keywordflow">if</span> (fabs(x)<DBL_EPSILON) value=0.0;</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="keywordflow">else</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> {</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="keywordflow">case</span> 0 : value = 1.0/tan(c * x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="keywordflow">case</span> 1 : value = -(1.0 + pow(1.0/tan(c * x), 2.0)) * c; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="keywordflow">case</span> 2 : value = 2.0 * 1.0/tan(c * x) * (1.0 + pow(1.0/tan(c * x), 2.0)) * c * c; <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="keywordflow">case</span> 3 : value = -2.0 * (1.0 + pow(1.0/tan(c * x), 2.0)) * pow(c, 3.0) * (1.0 + 3.0 * pow(1.0/tan(c * x), 2.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="keywordflow">case</span> 4 : value = 8.0 * (1.0 + pow(1.0/tan(c * x), 2.0)) * pow(c, 4.0) * 1.0/tan(c * x) * (2.0 + 3.0 * pow(1.0/tan(c * x), 2.0)); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="keywordflow">case</span> 5 : value = -0.8e1 * (0.1e1 + pow(1.0/tan(c * x), 0.2e1)) * pow(c, 0.5e1) * (0.15e2 * pow(1.0/tan(c * x), 0.2e1) + 0.15e2 * pow(1.0/tan(c * x), 0.4e1) + 0.2e1); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="keywordflow">case</span> 6 : value = 0.16e2 * (0.1e1 + pow(1.0/tan(c * x), 0.2e1)) * pow(c, 0.6e1) * 1.0/tan(c * x) * (0.60e2 * pow(1.0/tan(c * x), 0.2e1) + 0.45e2 * pow(1.0/tan(c * x), 0.4e1) + 0.17e2); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="keywordflow">case</span> 7 : value = -0.16e2 * (0.1e1 + pow(1.0/tan(c * x), 0.2e1)) * pow(c, 0.7e1) * (0.525e3 * pow(1.0/tan(c * x), 0.4e1) + 0.315e3 * pow(1.0/tan(c * x), 0.6e1) + 0.231e3 * pow(1.0/tan(c * x), 0.2e1) + 0.17e2); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="keywordflow">case</span> 8 : value = 0.128e3 * (0.1e1 + pow(1.0/tan(c * x), 0.2e1)) * pow(c, 0.8e1) * 1.0/tan(c * x) * (0.630e3 * pow(1.0/tan(c * x), 0.4e1) + 0.315e3 * pow(1.0/tan(c * x), 0.6e1) + 0.378e3 * pow(1.0/tan(c * x), 0.2e1) + 0.62e2); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="keywordflow">case</span> 9 : value = -0.128e3 * (0.1e1 + pow(1.0/tan(c * x), 0.2e1)) * pow(c, 0.9e1) * (0.6615e4 * pow(1.0/tan(c * x), 0.6e1) + 0.2835e4 * pow(1.0/tan(c * x), 0.8e1) + 0.5040e4 * pow(1.0/tan(c * x), 0.4e1) + 0.1320e4 * pow(1.0/tan(c * x), 0.2e1) + 0.62e2); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="keywordflow">case</span> 10 : value = 0.256e3 * (0.1e1 + pow(1.0/tan(c * x), 0.2e1)) * pow(c, 0.10e2) * 1.0/tan(c * x) * (0.37800e5 * pow(1.0/tan(c * x), 0.6e1) + 0.14175e5 * pow(1.0/tan(c * x), 0.8e1) + 0.34965e5 * pow(1.0/tan(c * x), 0.4e1) + 0.12720e5 * pow(1.0/tan(c * x), 0.2e1) + 0.1382e4); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="keywordflow">case</span> 11 : value = -0.256e3 * (0.1e1 + pow(1.0/tan(c * x), 0.2e1)) * pow(c, 0.11e2) * (0.467775e6 * pow(1.0/tan(c * x), 0.8e1) + 0.155925e6 * pow(1.0/tan(c * x), 0.10e2) + 0.509355e6 * pow(1.0/tan(c * x), 0.6e1) + 0.238425e6 * pow(1.0/tan(c * x), 0.4e1) + 0.42306e5 * pow(1.0/tan(c * x), 0.2e1) + 0.1382e4); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="keywordflow">case</span> 12 : value = 0.1024e4 * (0.1e1 + pow(1.0/tan(c * x), 0.2e1)) * pow(c, 0.12e2) * 1.0/tan(c * x) * (0.1559250e7 * pow(1.0/tan(c * x), 0.8e1) + 0.467775e6 * pow(1.0/tan(c * x), 0.10e2) + 0.1954260e7 * pow(1.0/tan(c * x), 0.6e1) + 0.1121670e7 * pow(1.0/tan(c * x), 0.4e1) + 0.280731e6 * pow(1.0/tan(c * x), 0.2e1) + 0.21844e5); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> }</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> </div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> }</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> </div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> </div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="keywordtype">double</span> _Complex one_over_cube(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param)</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> {</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="keywordtype">double</span> value=0.0;</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> </div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="keywordflow">if</span> (fabs(x)<DBL_EPSILON) value=0.0;</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="keywordflow">else</span> <span class="keywordflow">switch</span> (der)</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> {</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="keywordflow">case</span> 0 : value = 1.0/(x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="keywordflow">case</span> 1 : value = -3.0/(x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="keywordflow">case</span> 2 : value = 12.0/(x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="keywordflow">case</span> 3 : value = -60.0/(x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="keywordflow">case</span> 4 : value = 360.0/(x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="keywordflow">case</span> 5 : value = -2520.0/(x*x*x*x*x*x*x*x); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="keywordflow">case</span> 6 : value = 20160.0/pow(x, 9.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="keywordflow">case</span> 7 : value = -181440.0/pow(x, 10.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="keywordflow">case</span> 8 : value = 1814400.0/pow(x, 11.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="keywordflow">case</span> 9 : value = -19958400.0/pow(x, 12.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="keywordflow">case</span> 10 : value = 239500800.0/pow(x, 13.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="keywordflow">case</span> 11 : value = -3113510400.0/pow(x, 14.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="keywordflow">case</span> 12 : value = 43589145600.0/pow(x, 15.0); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="keywordflow">default</span> : value=0.0;</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> }</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> </div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="keywordflow">return</span> value;</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> }</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> </div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> </div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="comment">/* \} */</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> </div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="comment">/* kernels.c */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/kernels_8h.html b/doc/api/html/kernels_8h.html
deleted file mode 100644
index d7be7dd..0000000
--- a/doc/api/html/kernels_8h.html
+++ /dev/null
@@ -1,92 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernels.h File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">kernels.h File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Header file with predefined kernels for the fast summation algorithm.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-</div>
-<p><a href="kernels_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga81bf029788afe857325a760743f9fdd3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga81bf029788afe857325a760743f9fdd3"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>gaussian</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga44a58143a1f5c79b45c538134117e091"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga44a58143a1f5c79b45c538134117e091"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>multiquadric</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga889c2a1791e42bb8fa5a594588d68a5c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga889c2a1791e42bb8fa5a594588d68a5c"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>inverse_multiquadric</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga91be4b7bcc7d3a415e6b9b6ccaec39a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga91be4b7bcc7d3a415e6b9b6ccaec39a7"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>logarithm</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga7723414bb26fd9b1cc76686aeca57425"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7723414bb26fd9b1cc76686aeca57425"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>thinplate_spline</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:gaed5f8559b7b7a24674318cb58856602b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaed5f8559b7b7a24674318cb58856602b"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_square</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga635ef40090e33b4917a20ab62913ef05"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga635ef40090e33b4917a20ab62913ef05"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_modulus</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga6a6096569616d5cf9604c514f925581b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga6a6096569616d5cf9604c514f925581b"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_x</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga221604ef3a42dc2de4f1ce68831e7524"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga221604ef3a42dc2de4f1ce68831e7524"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>inverse_multiquadric3</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga8946fd3f992262c24477b56cba844873"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8946fd3f992262c24477b56cba844873"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>sinc_kernel</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:gab7b7015bc5f2946583e7adbecb2cf630"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab7b7015bc5f2946583e7adbecb2cf630"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>cosc</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:gac693b76a84e9435efc06c1ef26fc7435"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac693b76a84e9435efc06c1ef26fc7435"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>kcot</b> (double x, int der, const double *param)</td></tr>
-<tr class="memitem:ga1deb0e10a0d6cf7f11d8b90ee008eb53"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1deb0e10a0d6cf7f11d8b90ee008eb53"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><b>one_over_cube</b> (double x, int der, const double *param)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Header file with predefined kernels for the fast summation algorithm. </p>
-
-<p>Definition in file <a class="el" href="kernels_8h_source.html">kernels.h</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/kernels_8h_source.html b/doc/api/html/kernels_8h_source.html
deleted file mode 100644
index 9eb0bc9..0000000
--- a/doc/api/html/kernels_8h_source.html
+++ /dev/null
@@ -1,105 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - kernels.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_ac1c8221356786b534ab925d360822d4.html">fastsum</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">kernels.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="kernels_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: kernels.h 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifndef KERNELS_H</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#define KERNELS_H</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> {</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">double</span> _Complex gaussian(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x)=exp(-x^2/c^2) */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">double</span> _Complex multiquadric(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x)=sqrt(x^2+c^2) */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">double</span> _Complex inverse_multiquadric(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x)=1/sqrt(x^2+c^2) */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">double</span> _Complex logarithm(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x)=log |x| */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">double</span> _Complex thinplate_spline(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x) = x^2 log |x| */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">double</span> _Complex one_over_square(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x) = 1/x^2 */</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordtype">double</span> _Complex one_over_modulus(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x) = 1/|x| */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">double</span> _Complex one_over_x(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x) = 1/x */</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">double</span> _Complex inverse_multiquadric3(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x) = 1/sqrt(x^2+c^2)^3 */</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordtype">double</span> _Complex sinc_kernel(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x) = sin(cx)/x */</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordtype">double</span> _Complex cosc(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x) = cos(cx)/x */</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">double</span> _Complex kcot(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x) = cot(cx) */</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">double</span> _Complex one_over_cube(<span class="keywordtype">double</span> x, <span class="keywordtype">int</span> der, <span class="keyword">const</span> <span class="keywordtype">double</span> *param); <span class="comment">/* K(x) = 1/x^3 */</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment">/* \} */</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor"></span>} <span class="comment">/* extern "C" */</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor"></span><span class="comment">/* kernels.h */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/lambda_8c_source.html b/doc/api/html/lambda_8c_source.html
deleted file mode 100644
index f205cdc..0000000
--- a/doc/api/html/lambda_8c_source.html
+++ /dev/null
@@ -1,297 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - lambda.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html">util</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">lambda.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: util.c 3483 2010-04-23 19:02:34Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">/* Coefficients for Lanzcos's approximation to the Gamma function. Can be</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment"> * regenerated with Mathematica from file lambda.nb. */</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> </div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#if defined(NFFT_LDOUBLE)</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor"> #if LDBL_MANT_DIG > 64</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span> <span class="comment">/* long double 128 bit wide */</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"> #define N 24</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span> <span class="keyword">static</span> <span class="keyword">const</span> R num[24] =</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> {</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> K(3.035162425359883494754028782232869726547E21),</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> K(3.4967568944064301036001605717507506346E21),</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> K(1.9266526566893208886540195401514595829E21),</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> K(6.755170664882727663160830237424406199E20),</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> K(1.691728531049187527800862627495648317E20),</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> K(3.21979351672256057856444116302160246E19),</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> K(4.8378495427140832493758744745481812E18),</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> K(5.8843103809049324230843820398664955E17),</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> K(5.893958514163405862064178891925630E16),</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> K(4.919561837722192829918665308020810E15),</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> K(3.449165802442404074427531228315120E14),</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> K(2.041330296068782505988459692384726E13),</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> K(1.022234822943784007524609706893119E12),</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> K(4.33137871919821354846952908076307E10),</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> K(1.54921950559667418528481770869280E9),</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> K(4.6544421199876191938054157935810E7),</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> K(1.16527806807504975090675074910053E6),</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> K(24024.759267256769471083727721827),</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> K(400.96500811342195582435806376976),</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> K(5.2829901565447826961703902917085),</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> K(0.05289990244125101024092566765994),</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> K(0.0003783467106547406854542665695934),</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> K(1.7219414217921113919596660801124E-6),</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> K(3.747999317071488557713812635427084359354E-9)</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> };</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment">/* static const R denom[24] =</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment"> K(0.0),</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment"> K(1124000727777607680000.0),</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment"> K(4148476779335454720000.0),</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment"> K(6756146673770930688000.0),</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment"> K(6548684852703068697600.0),</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment"> K(4280722865357147142912.0),</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment"> K(2021687376910682741568.0),</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="comment"> K(720308216440924653696.0),</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment"> K(199321978221066137360.0),</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment"> K(43714229649594412832.0),</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="comment"> K(7707401101297361068.0),</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="comment"> K(1103230881185949736.0),</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="comment"> K(129006659818331295.0),</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="comment"> K(12363045847086207.0),</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment"> K(971250460939913.0),</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment"> K(62382416421941.0),</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="comment"> K(3256091103430.0),</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="comment"> K(136717357942.0),</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="comment"> K(4546047198.0),</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment"> K(116896626.0),</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment"> K(2240315.0),</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="comment"> K(30107.0),</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="comment"> K(253.0),</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="comment"> K(1.0L)</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="comment"> };*/</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keyword">static</span> <span class="keyword">const</span> R g = K(20.32098218798637390136718750000000000000);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="preprocessor"> #elif LDBL_MANT_DIG == 64</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="preprocessor"></span> <span class="comment">/* long double 96 bit wide */</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="preprocessor"> #define N 17</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="preprocessor"></span> <span class="keyword">static</span> <span class="keyword">const</span> R num[17] =</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> K(2.715894658327717377557655133124376674911E12),</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> K(3.59017952609791210503852552872112955043E12),</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> K(2.22396659973781496931212735323581871017E12),</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> K(8.5694083451895624818099258668254858834E11),</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> K(2.2988587166874907293359744645339939547E11),</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> K(4.552617168754610815813502794395753410E10),</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> K(6.884887713165178784550917647709216425E9),</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> K(8.11048596140753186476028245385237278E8),</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> K(7.52139159654082231449961362311950170E7),</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> K(5.50924541722426515169752795795495283E6),</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> K(317673.536843541912671493184218236957),</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> K(14268.2798984503552014701437332033752),</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> K(489.361872040326367021390908360178781),</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> K(12.3894133003845444929588321786545861),</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> K(0.218362738950461496394157450728168315),</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> K(0.00239374952205844918669062799606398310),</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> K(0.00001229541408909435212800785616808830746135)</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> };</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="comment">/* static const R denom[17] =</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="comment"> K(0.0),</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment"> K(1307674368000.0),</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment"> K(4339163001600.0),</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment"> K(6165817614720.0),</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="comment"> K(5056995703824.0),</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment"> K(2706813345600.0),</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="comment"> K(1009672107080.0),</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="comment"> K(272803210680.0),</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="comment"> K(54631129553.0),</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="comment"> K(8207628000.0),</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment"> K(928095740.0),</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="comment"> K(78558480.0),</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment"> K(4899622.0),</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="comment"> K(218400.0),</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment"> K(6580.0),</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="comment"> K(120.0),</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="comment"> K(1.0L)</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="comment"> };*/</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keyword">static</span> <span class="keyword">const</span> R g = K(12.22522273659706115722656250000000000000);</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="preprocessor"> #else</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="preprocessor"></span><span class="preprocessor"> #error Unsupported size of long double</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="preprocessor"></span><span class="preprocessor"> #endif</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="preprocessor"></span><span class="preprocessor">#elif defined(NFFT_SINGLE)</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="preprocessor"></span> <span class="comment">/* float */</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="preprocessor"> #define N 6</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="preprocessor"></span> <span class="keyword">static</span> <span class="keyword">const</span> R num[6] =</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> {</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> K(14.02614328749964766195705772850038393570),</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> K(43.74732405540314316089531289293124360129),</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> K(50.59547402616588964511581430025589038612),</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> K(26.90456680562548195593733429204228910299),</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> K(6.595765571169314946316366571954421695196),</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> K(0.6007854010515290065101128585795542383721)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> };</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="comment">/* static const R denom[6] =</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="comment"> K(0.0),</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="comment"> K(24.0),</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="comment"> K(50.0),</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="comment"> K(35.0),</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="comment"> K(10.0),</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="comment"> K(1.0)</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="comment"> };*/</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keyword">static</span> <span class="keyword">const</span> R g = K(1.428456135094165802001953125000000000000);</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="preprocessor"></span> <span class="comment">/* double */</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="preprocessor"> #define N 13</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="preprocessor"></span> <span class="keyword">static</span> <span class="keyword">const</span> R num[13] =</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> {</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> K(5.690652191347156388090791033559122686859E7),</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> K(1.037940431163445451906271053616070238554E8),</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> K(8.63631312881385914554692728897786842234E7),</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> K(4.33388893246761383477372374059053331609E7),</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> K(1.46055780876850680841416998279135921857E7),</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> K(3.48171215498064590882071018964774556468E6),</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> K(601859.61716810987866702265336993523025),</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> K(75999.293040145426498753034435989091371),</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> K(6955.9996025153761403563101155151989875),</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> K(449.944556906316811944685860765098840962),</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> K(19.5199278824761748284786096623565213621),</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> K(0.509841665565667618812517864480469450999),</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> K(0.006061842346248906525783753964555936883222)</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> };</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="comment">/* static const R denom[13] =</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="comment"> K(0.0),</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="comment"> K(39916800.0),</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="comment"> K(120543840.0),</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="comment"> K(150917976.0),</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="comment"> K(105258076.0),</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="comment"> K(45995730.0),</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="comment"> K(13339535.0),</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="comment"> K(2637558.0),</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="comment"> K(357423.0),</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="comment"> K(32670.0),</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="comment"> K(1925.0),</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="comment"> K(66.0),</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="comment"> K(1.0)</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="comment"> };*/</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="keyword">static</span> <span class="keyword">const</span> R g = K(6.024680040776729583740234375000000000000);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="keyword">static</span> <span class="keyword">inline</span> R evaluate_rational(<span class="keyword">const</span> R z_)</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> {</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> R z = z_, s1, s2;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordtype">int</span> i;</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">if</span> (z <= K(1.0))</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> {</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> s1 = num[N - 1];</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> s2 = K(1.0);</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">for</span> (i = N - 2; i >= 0; --i)</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> {</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> s1 *= z;</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> s2 *= (z + i);</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> s1 += num[i];</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> }</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> }</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> {</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> z = K(1.0)/z;</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> s1 = num[0];</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> s2 = K(1.0);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="keywordflow">for</span> (i = 1; i < N; ++i)</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> {</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> s1 *= z;</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> s2 *= K(1.0) + (i-1)*z;</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> s1 += num[i];</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> }</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> }</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordflow">return</span> s1 / s2;</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> }</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> </div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> R X(lambda)(<span class="keyword">const</span> R z, <span class="keyword">const</span> R eps)</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> {</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="keyword">const</span> R d = K(1.0) - eps, zpg = z + g, emh = eps - K(0.5);</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">return</span> EXP(-LOG1P(d / (zpg + emh)) * (z + emh)) *</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> POW(KE / (zpg + K(0.5)),d) *</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> (evaluate_rational(z + eps) / evaluate_rational(z + K(1.0)));</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> }</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> </div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> R X(lambda2)(<span class="keyword">const</span> R mu, <span class="keyword">const</span> R nu)</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> {</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="keywordflow">if</span> (mu == K(0.0))</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="keywordflow">return</span> K(1.0);</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (nu == K(0.0))</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="keywordflow">return</span> K(1.0);</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keywordflow">return</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> SQRT(</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> POW((mu + nu + g + K(0.5)) / (K(1.0) * (mu + g + K(0.5))), mu) *</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> POW((mu + nu + g + K(0.5)) / (K(1.0) * (nu + g + K(0.5))), nu) *</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> SQRT(KE * (mu + nu + g + K(0.5)) /</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> ((mu + g + K(0.5)) * (nu + g + K(0.5)))) *</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> (evaluate_rational(mu + nu + K(1.0)) /</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> (evaluate_rational(mu + K(1.0)) * evaluate_rational(nu + K(1.0))))</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> );</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/legendre_8c_source.html b/doc/api/html/legendre_8c_source.html
deleted file mode 100644
index 79b1b2b..0000000
--- a/doc/api/html/legendre_8c_source.html
+++ /dev/null
@@ -1,261 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - legendre.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_25564cacf5a7ef2ec915d9f7b609853e.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">legendre.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: legendre.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "legendre.h"</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment">/* One over sqrt(pi) */</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> DK(KSQRTPII,0.56418958354775628694807945156077258584405062932900);</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> </div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">static</span> <span class="keyword">inline</span> R alpha_al(<span class="keyword">const</span> <span class="keywordtype">int</span> k, <span class="keyword">const</span> <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> {</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keywordflow">if</span> (k > 0)</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> {</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordflow">if</span> (k < n)</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordflow">return</span> IF(k%2,K(1.0),K(-1.0));</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">return</span> SQRT(((R)(2*k+1))/((R)(k-n+1)))*SQRT((((R)(2*k+1))/((R)(k+n+1))));</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> }</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (k == 0)</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> {</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">if</span> (n == 0)</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordflow">return</span> K(1.0);</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> IF(n%2,K(0.0),K(-1.0));</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> }</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordflow">return</span> K(0.0);</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> }</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keyword">static</span> <span class="keyword">inline</span> R beta_al(<span class="keyword">const</span> <span class="keywordtype">int</span> k, <span class="keyword">const</span> <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> {</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">if</span> (0 <= k && k < n)</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">return</span> K(1.0);</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">return</span> K(0.0);</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> }</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keyword">static</span> <span class="keyword">inline</span> R gamma_al(<span class="keyword">const</span> <span class="keywordtype">int</span> k, <span class="keyword">const</span> <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> {</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">if</span> (k == -1)</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">return</span> SQRT(KSQRTPII*nfft_lambda((R)(n),K(0.5)));</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (k <= n)</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">return</span> K(0.0);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">return</span> -SQRT(((R)(k-n))/((R)(k-n+1))*((R)(k+n))/((R)(k+n+1)));</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> }</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordtype">void</span> alpha_al_row(R *alpha, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> {</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> R *p = alpha;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> *p++ = alpha_al(j,n);</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> }</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">void</span> beta_al_row(R *beta, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> {</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> R *p = beta;</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> *p++ = beta_al(j,n);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> }</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> </div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordtype">void</span> gamma_al_row(R *gamma, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> {</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> R *p = gamma;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> *p++ = gamma_al(j,n);</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> }</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div>
-<div class="line"><a name="l00091"></a><span class="lineno"><a class="code" href="group__nfsft.html#ga6b01d5f2e8b3a026906e977118d7b0d2"> 91</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#ga6b01d5f2e8b3a026906e977118d7b0d2" title="Compute three-term-recurrence coefficients of associated Legendre functions for .">alpha_al_all</a>(R *alpha, <span class="keyword">const</span> <span class="keywordtype">int</ [...]
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> {</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordtype">int</span> i,j;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> R *p = alpha;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">for</span> (i = 0; i <= N; i++)</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> *p++ = alpha_al(j,i);</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> }</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="group__nfsft.html#gaf0fb6a3993b3c956bea8fa75e3a71290"> 100</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#gaf0fb6a3993b3c956bea8fa75e3a71290" title="Compute three-term-recurrence coefficients of associated Legendre functions for .">beta_al_all</a>(R *alpha, <span class="keyword">const</span> <span class="keywordtype">int</s [...]
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> {</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordtype">int</span> i,j;</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> R *p = alpha;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">for</span> (i = 0; i <= N; i++)</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> *p++ = beta_al(j,i);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"><a class="code" href="group__nfsft.html#ga88de851c8f9a4c042ad101cb4fb8c51d"> 109</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#ga88de851c8f9a4c042ad101cb4fb8c51d" title="Compute three-term-recurrence coefficients of associated Legendre functions for .">gamma_al_all</a>(R *alpha, <span class="keyword">const</span> <span class="keywordtype">int</ [...]
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> {</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordtype">int</span> i,j;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> R *p = alpha;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">for</span> (i = 0; i <= N; i++)</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> *p++ = gamma_al(j,i);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> }</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00118"></a><span class="lineno"><a class="code" href="group__nfsft.html#gac5f2f8c36dc4f8ca65f058af6491f163"> 118</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#gac5f2f8c36dc4f8ca65f058af6491f163" title="Evaluates an associated Legendre polynomials using the Clenshaw-algorithm.">eval_al</a>(R *x, R *y, <span class="keyword">const</span> <span class="keywordtype">int</span> size, <span class="keyword">const</span> [...]
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> R *beta, R *gamma)</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> {</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="comment">/* Evaluate the associated Legendre polynomial P_{k,nleg} (l,x) for the vector</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment"> * of knots x[0], ..., x[size-1] by the Clenshaw algorithm</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keywordtype">int</span> i,j;</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> R a,b,x_val_act,a_old;</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> R *x_act, *y_act;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> R *alpha_act, *beta_act, *gamma_act;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="comment">/* Traverse all nodes. */</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> x_act = x;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> y_act = y;</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> {</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> a = 1.0;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> b = 0.0;</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> x_val_act = *x_act;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">if</span> (k == 0)</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> {</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> *y_act = 1.0;</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> }</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> {</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> alpha_act = &(alpha[k]);</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> beta_act = &(beta[k]);</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> gamma_act = &(gamma[k]);</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">for</span> (j = k; j > 1; j--)</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> {</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> a_old = a;</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> a = b + a_old*((*alpha_act)*x_val_act+(*beta_act));</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> b = a_old*(*gamma_act);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> alpha_act--;</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> beta_act--;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> gamma_act--;</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> }</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> *y_act = (a*((*alpha_act)*x_val_act+(*beta_act))+b);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> }</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> x_act++;</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> y_act++;</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> }</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> }</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> </div>
-<div class="line"><a name="l00163"></a><span class="lineno"><a class="code" href="group__nfsft.html#ga1bc5682379de94e87031afa38e02675d"> 163</a></span> <span class="keywordtype">int</span> <a class="code" href="group__nfsft.html#ga1bc5682379de94e87031afa38e02675d" title="Evaluates an associated Legendre polynomials using the Clenshaw-algorithm if it no exceeds a given t...">eval_al_thresh</a>(R *x, R *y, <span class="keyword">const</span> <span class="keywordtype">int</span> size, [...]
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> R *beta, R *gamma, R threshold)</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> {</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="comment">/* Evaluate the associated Legendre polynomial P_{k,nleg} (l,x) for the vector</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment"> * of knots x[0], ..., x[size-1] by the Clenshaw algorithm</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="keywordtype">int</span> i,j;</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> R a,b,x_val_act,a_old;</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> R *x_act, *y_act;</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> R *alpha_act, *beta_act, *gamma_act;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> </div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="comment">/* Traverse all nodes. */</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> x_act = x;</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> y_act = y;</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> {</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> a = 1.0;</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> b = 0.0;</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> x_val_act = *x_act;</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">if</span> (k == 0)</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> {</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> *y_act = 1.0;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> }</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> {</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> alpha_act = &(alpha[k]);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> beta_act = &(beta[k]);</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> gamma_act = &(gamma[k]);</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="keywordflow">for</span> (j = k; j > 1; j--)</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> {</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> a_old = a;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> a = b + a_old*((*alpha_act)*x_val_act+(*beta_act));</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> b = a_old*(*gamma_act);</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> alpha_act--;</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> beta_act--;</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> gamma_act--;</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> }</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> *y_act = (a*((*alpha_act)*x_val_act+(*beta_act))+b);</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="keywordflow">if</span> (fabs(*y_act) > threshold)</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> {</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> }</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> }</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> x_act++;</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> y_act++;</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> }</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/legendre_8h_source.html b/doc/api/html/legendre_8h_source.html
deleted file mode 100644
index cf140b5..0000000
--- a/doc/api/html/legendre_8h_source.html
+++ /dev/null
@@ -1,92 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - legendre.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_25564cacf5a7ef2ec915d9f7b609853e.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">legendre.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: legendre.h 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#ifndef LEGENDRE_H</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#define LEGENDRE_H</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keywordtype">void</span> alpha_al_row(R *alpha, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">void</span> beta_al_row(R *beta, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">void</span> gamma_al_row(R *gamma, <span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#ga6b01d5f2e8b3a026906e977118d7b0d2" title="Compute three-term-recurrence coefficients of associated Legendre functions for .">alpha_al_all</a>(R *alpha, <span class="keyword">const</span> <span class="keywordtype">int</span> N);</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#gaf0fb6a3993b3c956bea8fa75e3a71290" title="Compute three-term-recurrence coefficients of associated Legendre functions for .">beta_al_all</a>(R *beta, <span class="keyword">const</span> <span class="keywordtype">int</span> N);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#ga88de851c8f9a4c042ad101cb4fb8c51d" title="Compute three-term-recurrence coefficients of associated Legendre functions for .">gamma_al_all</a>(R *gamma, <span class="keyword">const</span> <span class="keywordtype">int</span> N);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#gac5f2f8c36dc4f8ca65f058af6491f163" title="Evaluates an associated Legendre polynomials using the Clenshaw-algorithm.">eval_al</a>(R *x, R *y, <span class="keyword">const</span> <span class="keywordtype">int</span> size, <span class="keyword">const</span> <span class="keywordtype">int</span> k, R *alpha,</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> R *beta, R *gamma);</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">int</span> <a class="code" href="group__nfsft.html#ga1bc5682379de94e87031afa38e02675d" title="Evaluates an associated Legendre polynomials using the Clenshaw-algorithm if it no exceeds a given t...">eval_al_thresh</a>(R *x, R *y, <span class="keyword">const</span> <span class="keywordtype">int</span> size, <span class="keyword">const</span> <span class="keywordtype">int</span> k, R *a [...]
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> R *beta, R *gamma, R threshold);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment">/* \} */</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="preprocessor">#endif</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/linogram__fft__test_8c.html b/doc/api/html/linogram__fft__test_8c.html
deleted file mode 100644
index 24f3d3f..0000000
--- a/doc/api/html/linogram__fft__test_8c.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - linogram_fft_test.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html">polarFFT</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> |
-<a href="#var-members">Variables</a> </div>
- <div class="headertitle">
-<div class="title">linogram_fft_test.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>NFFT-based pseudo-polar FFT and inverse.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <math.h></code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-</div>
-<p><a href="linogram__fft__test_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga9a5ff165ab1e23af77ab6f6108bb6310"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9a5ff165ab1e23af77ab6f6108bb6310"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#ga9a5ff165ab1e23af77ab6f6108bb6310">linogram_grid</a> (int T, int R, double *x, double *w)</td></tr>
-<tr class="memdesc:ga9a5ff165ab1e23af77ab6f6108bb6310"><td class="mdescLeft"> </td><td class="mdescRight">Generates the points x with weights w for the linogram grid with T slopes and R offsets. <br/></td></tr>
-<tr class="memitem:ga708f5c41add2af92a97339dee1c068dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga708f5c41add2af92a97339dee1c068dc"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#ga708f5c41add2af92a97339dee1c068dc">linogram_dft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:ga708f5c41add2af92a97339dee1c068dc"><td class="mdescLeft"> </td><td class="mdescRight">discrete pseudo-polar FFT <br/></td></tr>
-<tr class="memitem:gaea5025fe751ace25f818ecb3cfc16444"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaea5025fe751ace25f818ecb3cfc16444"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#gaea5025fe751ace25f818ecb3cfc16444">linogram_fft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:gaea5025fe751ace25f818ecb3cfc16444"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based pseudo-polar FFT. <br/></td></tr>
-<tr class="memitem:gaf44988058d3000a477c046c172c26265"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf44988058d3000a477c046c172c26265"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#gaf44988058d3000a477c046c172c26265">inverse_linogram_fft</a> (fftw_complex *f, int T, int R, fftw_complex *f_hat, int NN, int <a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">max_i</a>, int m)</td></tr>
-<tr class="memdesc:gaf44988058d3000a477c046c172c26265"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based inverse pseudo-polar FFT. <br/></td></tr>
-<tr class="memitem:gac2a323224e3346e37714575d49c65432"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac2a323224e3346e37714575d49c65432"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#gac2a323224e3346e37714575d49c65432">comparison_fft</a> (FILE *fp, int N, int T, int R)</td></tr>
-<tr class="memdesc:gac2a323224e3346e37714575d49c65432"><td class="mdescLeft"> </td><td class="mdescRight">Comparison of the FFTW, linogram FFT, and inverse linogram FFT. <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__linogramm.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">test program for various parameters <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="var-members"></a>
-Variables</h2></td></tr>
-<tr class="memitem:ga89f1a3516fab4c4d4d274df955af639b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga89f1a3516fab4c4d4d274df955af639b"></a>
-double </td><td class="memItemRight" valign="bottom"><b>GLOBAL_elapsed_time</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>NFFT-based pseudo-polar FFT and inverse. </p>
-<p>Computes the NFFT-based pseudo-polar FFT and its inverse. </p>
-<dl class="section author"><dt>Author:</dt><dd>Markus Fenn </dd></dl>
-<dl class="section date"><dt>Date:</dt><dd>2006 </dd></dl>
-
-<p>Definition in file <a class="el" href="linogram__fft__test_8c_source.html">linogram_fft_test.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/linogram__fft__test_8c_source.html b/doc/api/html/linogram__fft__test_8c_source.html
deleted file mode 100644
index c1d5981..0000000
--- a/doc/api/html/linogram__fft__test_8c_source.html
+++ /dev/null
@@ -1,472 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - linogram_fft_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html">polarFFT</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">linogram_fft_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="linogram__fft__test_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: linogram_fft_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">double</span> GLOBAL_elapsed_time;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__linogramm.html#ga9a5ff165ab1e23af77ab6f6108bb6310"> 52</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__linogramm.html#ga9a5ff165ab1e23af77ab6f6108bb6310" title="Generates the points x with weights w for the linogram grid with T slopes and R offsets.">linogram_grid</a>(<span class="k [...]
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> {</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">int</span> t, r;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">double</span> W=(double)T*(((<span class="keywordtype">double</span>)R/2.0)*((double)R/2.0)+1.0/4.0);</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">for</span>(t=-T/2; t<T/2; t++)</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> {</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">for</span>(r=-R/2; r<R/2; r++)</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> {</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keywordflow">if</span>(t<0)</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> {</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> x[2*((t+T/2)*R+(r+R/2))+0] = (<span class="keywordtype">double</span>)r/R;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> x[2*((t+T/2)*R+(r+R/2))+1] = (<span class="keywordtype">double</span>)4*(t+T/4)/T*r/R;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> }</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> {</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> x[2*((t+T/2)*R+(r+R/2))+0] = -(<span class="keywordtype">double</span>)4*(t-T/4)/T*r/R;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> x[2*((t+T/2)*R+(r+R/2))+1] = (<span class="keywordtype">double</span>)r/R;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> }</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">if</span> (r==0)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> w[(t+T/2)*R+(r+R/2)] = 1.0/4.0/W;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> w[(t+T/2)*R+(r+R/2)] = fabs((<span class="keywordtype">double</span>)r)/W;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> }</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> }</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">return</span> T*R; </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> }</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__linogramm.html#ga708f5c41add2af92a97339dee1c068dc"> 82</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__linogramm.html#ga708f5c41add2af92a97339dee1c068dc" title="discrete pseudo-polar FFT">linogram_dft</a>(fftw_complex *f_hat, <span class="keywordtype">int</span> NN, fftw_complex *f, [...]
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> {</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> ticks t0, t1;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordtype">int</span> M=T*R; </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> N[0]=NN; n[0]=2*N[0]; </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> N[1]=NN; n[1]=2*N[1]; </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, m,</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <a class="code" href="group__applications__polarFFT__linogramm.html#ga9a5ff165ab1e23af77ab6f6108bb6310" title="Generates the points x with weights w for the linogram grid with T slopes and R offsets.">linogram_grid</a>(T,R,x,w);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> {</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> }</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = f_hat[k];</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> t0 = getticks();</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> nfft_trafo_direct(&my_nfft_plan);</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> t1 = getticks();</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> GLOBAL_elapsed_time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> f[j] = my_nfft_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> }</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div>
-<div class="line"><a name="l00141"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__linogramm.html#gaea5025fe751ace25f818ecb3cfc16444"> 141</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__linogramm.html#gaea5025fe751ace25f818ecb3cfc16444" title="NFFT-based pseudo-polar FFT.">linogram_fft</a>(fftw_complex *f_hat, <span class="keywordtype">int</span> NN, fftw_complex [...]
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> {</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> ticks t0, t1;</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="keywordtype">int</span> M=T*R; </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> N[0]=NN; n[0]=2*N[0]; </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> N[1]=NN; n[1]=2*N[1]; </div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> </div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, m,</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <a class="code" href="group__applications__polarFFT__linogramm.html#ga9a5ff165ab1e23af77ab6f6108bb6310" title="Generates the points x with weights w for the linogram grid with T slopes and R offsets.">linogram_grid</a>(T,R,x,w);</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> {</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> }</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> </div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> nfft_precompute_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> nfft_precompute_full_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = f_hat[k];</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> </div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> t0 = getticks();</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> t1 = getticks();</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> GLOBAL_elapsed_time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> f[j] = my_nfft_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> }</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00209"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__linogramm.html#gaf44988058d3000a477c046c172c26265"> 209</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__linogramm.html#gaf44988058d3000a477c046c172c26265" title="NFFT-based inverse pseudo-polar FFT.">inverse_linogram_fft</a>(fftw_complex *f, <span class="keywordtype">int</span> T, <s [...]
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> {</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> ticks t0, t1;</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_infft_plan; </div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="keywordtype">int</span> l; </div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordtype">int</span> M=T*R; </div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> N[0]=NN; n[0]=2*N[0]; </div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> N[1]=NN; n[1]=2*N[1]; </div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> </div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> </div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, m,</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> </div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> solver_init_advanced_complex(&my_infft_plan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&my_nfft_plan), CGNR | PRECOMPUTE_WEIGHT );</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <a class="code" href="group__applications__polarFFT__linogramm.html#ga9a5ff165ab1e23af77ab6f6108bb6310" title="Generates the points x with weights w for the linogram grid with T slopes and R offsets.">linogram_grid</a>(T,R,x,w);</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> {</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j] = f[j];</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j] = w[j];</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> }</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> </div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> nfft_precompute_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> </div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> nfft_precompute_full_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> </div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="keywordflow">if</span>(my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];j++)</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];k++)</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> {</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]+k]=</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> (sqrt(pow(j-my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2,2)+pow(k-my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]/2,2))>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0 [...]
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> }</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k] = 0.0 + _Complex_I*0.0;</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> </div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> t0 = getticks();</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> solver_before_loop_complex(&my_infft_plan);</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="keywordflow">if</span> (max_i<1)</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> {</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> l=1;</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k] = my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>[k];</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> }</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> {</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="keywordflow">for</span>(l=1;l<=<a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>;l++)</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> {</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_infft_plan);</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> }</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> }</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> t1 = getticks();</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> GLOBAL_elapsed_time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> </div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> f_hat[k] = my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k];</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> </div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_infft_plan);</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> }</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> </div>
-<div class="line"><a name="l00309"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__linogramm.html#gac2a323224e3346e37714575d49c65432"> 309</a></span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__linogramm.html#gac2a323224e3346e37714575d49c65432" title="Comparison of the FFTW, linogram FFT, and inverse linogram FFT.">comparison_fft</a>(FILE *fp, <span class="keywordtype">int</span> N, <span class="keywordtype [...]
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> {</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> ticks t0, t1;</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> fftw_plan my_fftw_plan;</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> fftw_complex *f_hat,*f;</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="keywordtype">int</span> m,k;</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="keywordtype">double</span> t_fft, t_dft_linogram;</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> </div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> f_hat = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*N*N);</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> f = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*(T*R/4)*5);</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> </div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> my_fftw_plan = fftw_plan_dft_2d(N,N,f_hat,f,FFTW_BACKWARD,FFTW_MEASURE);</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordflow">for</span>(k=0; k<N*N; k++)</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> f_hat[k] = (((<span class="keywordtype">double</span>)rand())/RAND_MAX) + _Complex_I* (((double)rand())/RAND_MAX);</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> </div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> t0 = getticks();</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="keywordflow">for</span>(m=0;m<65536/N;m++)</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> {</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> fftw_execute(my_fftw_plan);</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="comment">/* touch */</span></div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> f_hat[2]=2*f_hat[0];</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> }</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> t1 = getticks();</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> GLOBAL_elapsed_time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> t_fft=N*GLOBAL_elapsed_time/65536;</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> </div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="keywordflow">if</span>(N<256)</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> {</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <a class="code" href="group__applications__polarFFT__linogramm.html#ga708f5c41add2af92a97339dee1c068dc" title="discrete pseudo-polar FFT">linogram_dft</a>(f_hat,N,f,T,R,m);</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> t_dft_linogram=GLOBAL_elapsed_time;</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> }</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> </div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="keywordflow">for</span> (m=3; m<=9; m+=3)</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> {</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="keywordflow">if</span>((m==3)&&(N<256))</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> fprintf(fp,<span class="stringliteral">"%d\t&\t&\t%1.1e&\t%1.1e&\t%d\t"</span>,N,t_fft,t_dft_linogram,m);</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="keywordflow">if</span>(m==3)</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> fprintf(fp,<span class="stringliteral">"%d\t&\t&\t%1.1e&\t &\t%d\t"</span>,N,t_fft,m);</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> fprintf(fp,<span class="stringliteral">" \t&\t&\t &\t &\t%d\t"</span>,m);</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> </div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> printf(<span class="stringliteral">"N=%d\tt_fft=%1.1e\tt_dft_linogram=%1.1e\tm=%d\t"</span>,N,t_fft,t_dft_linogram,m);</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> </div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <a class="code" href="group__applications__polarFFT__linogramm.html#gaea5025fe751ace25f818ecb3cfc16444" title="NFFT-based pseudo-polar FFT.">linogram_fft</a>(f_hat,N,f,T,R,m);</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> fprintf(fp,<span class="stringliteral">"%1.1e&\t"</span>,GLOBAL_elapsed_time);</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> printf(<span class="stringliteral">"t_linogram=%1.1e\t"</span>,GLOBAL_elapsed_time);</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <a class="code" href="group__applications__polarFFT__linogramm.html#gaf44988058d3000a477c046c172c26265" title="NFFT-based inverse pseudo-polar FFT.">inverse_linogram_fft</a>(f,T,R,f_hat,N,m+3,m);</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="keywordflow">if</span>(m==9)</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> fprintf(fp,<span class="stringliteral">"%1.1e\\\\\\hline\n"</span>,GLOBAL_elapsed_time);</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> fprintf(fp,<span class="stringliteral">"%1.1e\\\\\n"</span>,GLOBAL_elapsed_time);</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> printf(<span class="stringliteral">"t_ilinogram=%1.1e\n"</span>,GLOBAL_elapsed_time);</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> }</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> </div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> fflush(fp);</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> </div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> </div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> }</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> </div>
-<div class="line"><a name="l00374"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__linogramm.html#ga3c04138a5bfe5d72780bb7e82a18e627"> 374</a></span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> {</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="keywordtype">int</span> N; </div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="keywordtype">int</span> T, R; </div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="keywordtype">int</span> M; </div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> fftw_complex *f_hat, *f, *f_direct, *f_tilde;</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>; </div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="keywordtype">int</span> m;</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="keywordtype">double</span> temp1, temp2, E_max=0.0;</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> FILE *fp1, *fp2;</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="keywordtype">char</span> filename[30];</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="keywordtype">int</span> logN;</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> </div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="keywordflow">if</span>( argc!=4 )</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> {</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> printf(<span class="stringliteral">"linogram_fft_test N T R \n"</span>);</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> printf(<span class="stringliteral">"N linogram FFT of size NxN \n"</span>);</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> printf(<span class="stringliteral">"T number of slopes \n"</span>);</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> printf(<span class="stringliteral">"R number of offsets \n"</span>);</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> </div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> printf(<span class="stringliteral">"\nHence, comparison FFTW, linogram FFT and inverse linogram FFT\n"</span>);</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> fp1=fopen(<span class="stringliteral">"linogram_comparison_fft.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="keywordflow">if</span> (fp1==NULL)</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="keywordflow">for</span> (logN=4; logN<=8; logN++)</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <a class="code" href="group__applications__polarFFT__linogramm.html#gac2a323224e3346e37714575d49c65432" title="Comparison of the FFTW, linogram FFT, and inverse linogram FFT.">comparison_fft</a>(fp1,(1U<< logN), 3*(1U<< logN), 3*(1U<< (logN-1)));</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> fclose(fp1);</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> </div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> exit(-1);</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> }</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> </div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> N = atoi(argv[1]);</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> T = atoi(argv[2]);</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> R = atoi(argv[3]);</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> printf(<span class="stringliteral">"N=%d, linogram grid with T=%d, R=%d => "</span>,N,T,R);</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> </div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*T*R/2*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*T*R/4*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> </div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> f_hat = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*N*N);</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> f = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*5*T*R/4); <span class="comment">/* 4/pi*log(1+sqrt(2)) = 1.122... < 1.25 */</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> f_direct = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*5*T*R/4);</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> f_tilde = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*N*N);</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> </div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> M=<a class="code" href="group__applications__polarFFT__linogramm.html#ga9a5ff165ab1e23af77ab6f6108bb6310" title="Generates the points x with weights w for the linogram grid with T slopes and R offsets.">linogram_grid</a>(T,R,x,w); printf(<span class="stringliteral">"M=%d.\n"</span>,M);</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> </div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> fp1=fopen(<span class="stringliteral">"input_data_r.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> fp2=fopen(<span class="stringliteral">"input_data_i.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="keywordflow">if</span> ((fp1==NULL) || (fp2==NULL))</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="keywordflow">for</span>(k=0;k<N*N;k++)</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> {</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> fscanf(fp1,<span class="stringliteral">"%le "</span>,&temp1);</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> fscanf(fp2,<span class="stringliteral">"%le "</span>,&temp2);</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> f_hat[k]=temp1+_Complex_I*temp2;</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> }</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> fclose(fp1);</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> fclose(fp2);</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> </div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <a class="code" href="group__applications__polarFFT__linogramm.html#ga708f5c41add2af92a97339dee1c068dc" title="discrete pseudo-polar FFT">linogram_dft</a>(f_hat,N,f_direct,T,R,1);</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="comment">// linogram_fft(f_hat,N,f_direct,T,R,12);</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> </div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> printf(<span class="stringliteral">"\nTest of the linogram FFT: \n"</span>);</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> fp1=fopen(<span class="stringliteral">"linogram_fft_error.dat"</span>,<span class="stringliteral">"w+"</span>);</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="keywordflow">for</span> (m=1; m<=12; m++)</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> {</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <a class="code" href="group__applications__polarFFT__linogramm.html#gaea5025fe751ace25f818ecb3cfc16444" title="NFFT-based pseudo-polar FFT.">linogram_fft</a>(f_hat,N,f,T,R,m);</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> </div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> E_max=X(error_l_infty_complex)(f_direct,f,M);</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="comment">//E_max=X(error_l_2_complex)(f_direct,f,M);</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> </div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> printf(<span class="stringliteral">"m=%2d: E_max = %e\n"</span>,m,E_max);</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> fprintf(fp1,<span class="stringliteral">"%e\n"</span>,E_max);</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> }</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> fclose(fp1);</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> </div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="keywordflow">for</span> (m=3; m<=9; m+=3)</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> {</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> printf(<span class="stringliteral">"\nTest of the inverse linogram FFT for m=%d: \n"</span>,m);</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> sprintf(filename,<span class="stringliteral">"linogram_ifft_error%d.dat"</span>,m);</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> fp1=fopen(filename,<span class="stringliteral">"w+"</span>);</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="keywordflow">for</span> (max_i=0; max_i<=20; max_i+=2)</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> {</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <a class="code" href="group__applications__polarFFT__linogramm.html#gaf44988058d3000a477c046c172c26265" title="NFFT-based inverse pseudo-polar FFT.">inverse_linogram_fft</a>(f_direct,T,R,f_tilde,N,max_i,m);</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> </div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> E_max=X(error_l_infty_complex)(f_hat,f_tilde,N*N);</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> printf(<span class="stringliteral">"%3d iterations: E_max = %e\n"</span>,max_i,E_max);</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> fprintf(fp1,<span class="stringliteral">"%e\n"</span>,E_max);</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> }</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> fclose(fp1);</div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> }</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> </div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_direct);</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_tilde);</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> </div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> }</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/malloc_8c_source.html b/doc/api/html/malloc_8c_source.html
deleted file mode 100644
index 4bfed74..0000000
--- a/doc/api/html/malloc_8c_source.html
+++ /dev/null
@@ -1,116 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - malloc.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html">util</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">malloc.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: util.c 3483 2010-04-23 19:02:34Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include<stdlib.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include "api.h"</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> X(malloc_type_function) X(malloc_hook) = 0;</div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> X(free_type_function) X(free_hook) = 0;</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> X(die_type_function) X(die_hook) = 0;</div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keywordtype">void</span> *X(malloc)(<span class="keywordtype">size_t</span> n)</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> {</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="keywordtype">void</span> *p;</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">if</span> (X(malloc_hook))</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordflow">return</span> <a class="code" href="nfft3_8h.html#aa578dec914d95bda5a2fad3fbd90c76f">nfft_malloc_hook</a>(n);</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordflow">if</span> (n == 0)</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> n = 1;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> p = Z(malloc)(n);</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">if</span> (!p)</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> X(die)(STRINGIZE(X(malloc)) <span class="stringliteral">": out of memory\n"</span>);</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> p;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> }</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">void</span> X(free)(<span class="keywordtype">void</span> *p)</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> {</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">if</span> (p)</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> {</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">if</span> (X(free_hook))</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> {</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> X(free_hook)(p);</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> }</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> Z(free)(p);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> }</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> }</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keywordtype">void</span> X(die)(<span class="keywordtype">char</span> *s)</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> {</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">if</span> (X(die_hook))</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> X(die_hook)(s);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> exit(EXIT_FAILURE);</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/modules.html b/doc/api/html/modules.html
deleted file mode 100644
index ebb24aa..0000000
--- a/doc/api/html/modules.html
+++ /dev/null
@@ -1,80 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - Modules
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li class="current"><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">Modules</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock">Here is a list of all modules:</div><div class="directory">
-<div class="levels">[detail level <span onclick="javascript:toggleLevel(1);">1</span><span onclick="javascript:toggleLevel(2);">2</span><span onclick="javascript:toggleLevel(3);">3</span><span onclick="javascript:toggleLevel(4);">4</span>]</div><table class="directory">
-<tr id="row_0_" class="even"><td class="entry"><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__nfftutil.html" target="_self">Util - Auxilliary functions</a></td><td class="desc">Include header for FFTW3 library for its complex type</td></tr>
-<tr id="row_1_"><td class="entry"><img id="arr_1_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('1_')"/><a class="el" href="group__examples.html" target="_self">Examples</a></td><td class="desc"></td></tr>
-<tr id="row_1_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_1_0_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('1_0_')"/><a class="el" href="group__examples__solver.html" target="_self">Solver component</a></td><td class="desc"></td></tr>
-<tr id="row_1_0_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt=" " width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__examples__solver__glacier.html" target="_self">Reconstruction of a glacier from scattered data</a></td><td class="desc"></td></tr>
-<tr id="row_2_" class="even"><td class="entry"><img id="arr_2_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_')"/><a class="el" href="group__applications.html" target="_self">Applications</a></td><td class="desc"></td></tr>
-<tr id="row_2_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__fastgauss.html" target="_self">Fast Gauss transfrom with complex parameter</a></td><td class="desc"></td></tr>
-<tr id="row_2_1_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_2_1_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_1_')"/><a class="el" href="group__applications__fastsum.html" target="_self">Fast summation</a></td><td class="desc">Required for test if (ths->k == one_over_x)</td></tr>
-<tr id="row_2_1_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__fastsum__matlab.html" target="_self">fastsum_matlab</a></td><td class="desc"></td></tr>
-<tr id="row_2_1_1_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__applications__fastsum__test.html" target="_self">fastsum_test</a></td><td class="desc"></td></tr>
-<tr id="row_2_2_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_2_2_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_2_')"/><a class="el" href="group__applications__fastsumS2.html" target="_self">Fast summation of radial functions on the sphere</a></td><td class="desc"></td></tr>
-<tr id="row_2_2_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__applications__fastsumS2__test.html" target="_self">fastsumS2_matlab</a></td><td class="desc"></td></tr>
-<tr id="row_2_3_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_2_3_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_3_')"/><a class="el" href="group__applications__iterS2.html" target="_self">Iterative reconstruction on the sphere S2</a></td><td class="desc"></td></tr>
-<tr id="row_2_3_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__applications__iterS2__matlab.html" target="_self">iterS2_matlab</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_2_4_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_4_')"/><a class="el" href="group__applications__mri.html" target="_self">Transforms in magnetic resonance imaging</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_2_4_0_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_4_0_')"/><a class="el" href="group__applications__mri2d.html" target="_self">2D transforms</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_0_0_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri2d__construct__data__2d.html" target="_self">construct_data_2d</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_0_1_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri2d__construct__data__inh__2d1d.html" target="_self">construct_data__inh_2d1d</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_0_2_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri2d__construct__data__inh__3d.html" target="_self">construct_data_inh_3d</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_0_3_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri2d__reconstruct__data__2d.html" target="_self">reconstruct_data_2d</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_0_4_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri2d__construct__data__gridding.html" target="_self">construct_data_gridding</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_0_5_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri2d__reconstruct__data__inh__2d1d.html" target="_self">reconstruct_data__inh_2d1d</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_0_6_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri2d__reconstruct__data__inh__3d.html" target="_self">reconstruct_data_inh_3d</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_0_7_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__applications__mri2d__construct__data__inh__nnfft.html" target="_self">construct_data_inh_nnfft</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_1_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_2_4_1_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('2_4_1_')"/><a class="el" href="group__applications__mri3d.html" target="_self">3D transforms</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_1_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt=" " width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri3d__construct__data__1d2d.html" target="_self">construct_data_1d2d</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_1_1_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt=" " width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri3d__construct__data__3d.html" target="_self">construct_data_3d</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_1_2_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt=" " width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri3d__reconstruct__data__1d2d.html" target="_self">reconstruct_data_1d2d</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_1_3_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt=" " width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__mri3d__reconstruct__data__3d.html" target="_self">reconstruct_data_3d</a></td><td class="desc"></td></tr>
-<tr id="row_2_4_1_4_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt=" " width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__applications__mri3d__reconstruct__data__gridding.html" target="_self">reconstruct_data_gridding</a></td><td class="desc"></td></tr>
-<tr id="row_2_5_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_2_5_" src="ftv2mnode.png" alt="o" width="16" height="22" onclick="toggleFolder('2_5_')"/><a class="el" href="group__applications__polarFFT.html" target="_self">Polar FFT</a></td><td class="desc"></td></tr>
-<tr id="row_2_5_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__polarFFT__linogramm.html" target="_self">linogram_fft_test</a></td><td class="desc"></td></tr>
-<tr id="row_2_5_1_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2node.png" alt="o" width="16" height="22" /><a class="el" href="group__applications__polarFFT__mpolar.html" target="_self">mpolar_fft_test</a></td><td class="desc"></td></tr>
-<tr id="row_2_5_2_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__applications__polarFFT__polar.html" target="_self">polar_fft_test</a></td><td class="desc"></td></tr>
-<tr id="row_2_6_"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img id="arr_2_6_" src="ftv2mlastnode.png" alt="\" width="16" height="22" onclick="toggleFolder('2_6_')"/><a class="el" href="group__applications__quadratureS2.html" target="_self">Fast evaluation of quadrature formulae on the sphere</a></td><td class="desc"></td></tr>
-<tr id="row_2_6_0_" class="even"><td class="entry"><img src="ftv2vertline.png" alt="|" width="16" height="22" /><img src="ftv2blank.png" alt=" " width="16" height="22" /><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__applications__quadratureS2__test.html" target="_self">quadratureS2_test</a></td><td class="desc"></td></tr>
-<tr id="row_3_"><td class="entry"><img src="ftv2lastnode.png" alt="\" width="16" height="22" /><a class="el" href="group__nfsft.html" target="_self">Nfsft</a></td><td class="desc"></td></tr>
-</table>
-</div><!-- directory -->
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/mpolar__fft__test_8c.html b/doc/api/html/mpolar__fft__test_8c.html
deleted file mode 100644
index fd24b78..0000000
--- a/doc/api/html/mpolar__fft__test_8c.html
+++ /dev/null
@@ -1,97 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - mpolar_fft_test.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html">polarFFT</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> |
-<a href="#var-members">Variables</a> </div>
- <div class="headertitle">
-<div class="title">mpolar_fft_test.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>NFFT-based polar FFT and inverse on modified polar grid.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <math.h></code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-</div>
-<p><a href="mpolar__fft__test_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga08d0441aceedbcb98b985ee5aa121952"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#ga08d0441aceedbcb98b985ee5aa121952">mpolar_grid</a> (int T, int R, double *x, double *w)</td></tr>
-<tr class="memdesc:ga08d0441aceedbcb98b985ee5aa121952"><td class="mdescLeft"> </td><td class="mdescRight">Generates the points <img class="formulaInl" alt="$x_{t,j}$" src="form_115.png"/> with weights <img class="formulaInl" alt="$w_{t,j}$" src="form_116.png"/> for the modified polar grid with <img class="formulaInl" alt="$T$" src="form_117.png"/> angles and <img class="formulaInl" alt="$R$" src="form_118.png"/> offsets. <a href="group__applications__polarFFT__mpolar.html#ga08d0441 [...]
-<tr class="memitem:gaee9902054200ea50d90b5d290bff8c71"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaee9902054200ea50d90b5d290bff8c71"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#gaee9902054200ea50d90b5d290bff8c71">mpolar_dft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:gaee9902054200ea50d90b5d290bff8c71"><td class="mdescLeft"> </td><td class="mdescRight">discrete mpolar FFT <br/></td></tr>
-<tr class="memitem:ga55b2f979a5c69176a73f59eb0312b53d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga55b2f979a5c69176a73f59eb0312b53d"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#ga55b2f979a5c69176a73f59eb0312b53d">mpolar_fft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:ga55b2f979a5c69176a73f59eb0312b53d"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based mpolar FFT. <br/></td></tr>
-<tr class="memitem:ga5d0560e898b722ee5fe09acc485bbec8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5d0560e898b722ee5fe09acc485bbec8"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#ga5d0560e898b722ee5fe09acc485bbec8">inverse_mpolar_fft</a> (fftw_complex *f, int T, int R, fftw_complex *f_hat, int NN, int <a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">max_i</a>, int m)</td></tr>
-<tr class="memdesc:ga5d0560e898b722ee5fe09acc485bbec8"><td class="mdescLeft"> </td><td class="mdescRight">inverse NFFT-based mpolar FFT <br/></td></tr>
-<tr class="memitem:ga522ff84df31c08a1f237ad0ec7ce4ac5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga522ff84df31c08a1f237ad0ec7ce4ac5"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#ga522ff84df31c08a1f237ad0ec7ce4ac5">comparison_fft</a> (FILE *fp, int N, int T, int R)</td></tr>
-<tr class="memdesc:ga522ff84df31c08a1f237ad0ec7ce4ac5"><td class="mdescLeft"> </td><td class="mdescRight">Comparison of the FFTW, mpolar FFT, and inverse mpolar FFT. <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__mpolar.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">test program for various parameters <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="var-members"></a>
-Variables</h2></td></tr>
-<tr class="memitem:ga89f1a3516fab4c4d4d274df955af639b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga89f1a3516fab4c4d4d274df955af639b"></a>
-double </td><td class="memItemRight" valign="bottom"><b>GLOBAL_elapsed_time</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>NFFT-based polar FFT and inverse on modified polar grid. </p>
-<p>Computes the NFFT-based polar FFT and its inverse on a modified polar grid for various parameters. </p>
-<dl class="section author"><dt>Author:</dt><dd>Markus Fenn </dd></dl>
-<dl class="section date"><dt>Date:</dt><dd>2006 </dd></dl>
-
-<p>Definition in file <a class="el" href="mpolar__fft__test_8c_source.html">mpolar_fft_test.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/mpolar__fft__test_8c_source.html b/doc/api/html/mpolar__fft__test_8c_source.html
deleted file mode 100644
index bbeb25d..0000000
--- a/doc/api/html/mpolar__fft__test_8c_source.html
+++ /dev/null
@@ -1,487 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - mpolar_fft_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html">polarFFT</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">mpolar_fft_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="mpolar__fft__test_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: mpolar_fft_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">double</span> GLOBAL_elapsed_time;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__mpolar.html#ga08d0441aceedbcb98b985ee5aa121952"> 63</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__mpolar.html#ga08d0441aceedbcb98b985ee5aa121952" title="Generates the points with weights for the modified polar grid with angles and offsets...">mpolar_grid</a>(<span class="keywo [...]
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> {</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">int</span> t, r;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">double</span> W;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordtype">int</span> R2=2*ceil(sqrt(2.0)*R/2);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordtype">double</span> xx, yy;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordtype">int</span> M=0;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span>(t=-T/2; t<T/2; t++)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">for</span>(r=-R2/2; r<R2/2; r++)</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> {</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> xx = (double)r/R*cos(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*t/T);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> yy = (double)r/R*sin(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*t/T);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">if</span> ( ((-0.5-1.0/(<span class="keywordtype">double</span>)R)<=xx) & (xx<=(0.5+1.0/(<span class="keywordtype">double</span>)R)) &</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> ((-0.5-1.0/(<span class="keywordtype">double</span>)R)<=yy) & (yy<=(0.5+1.0/(<span class="keywordtype">double</span>)R)) )</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> {</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> x[2*M+0] = xx;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> x[2*M+1] = yy;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">if</span> (r==0)</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> w[M] = 1.0/4.0;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> w[M] = fabs((<span class="keywordtype">double</span>)r);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> M++; </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> }</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> }</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> }</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> W=0.0;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">for</span> (t=0; t<M; t++)</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> W+=w[t];</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">for</span> (t=0; t<M; t++)</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> w[t]/=W;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">return</span> M; </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> }</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__mpolar.html#gaee9902054200ea50d90b5d290bff8c71"> 106</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__mpolar.html#gaee9902054200ea50d90b5d290bff8c71" title="discrete mpolar FFT">mpolar_dft</a>(fftw_complex *f_hat, <span class="keywordtype">int</span> NN, fftw_complex *f, <span class=" [...]
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> {</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> ticks t0, t1;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">int</span> M; </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> N[0]=NN; n[0]=2*N[0]; </div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> N[1]=NN; n[1]=2*N[1]; </div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*(T/2)*R*(<span class="keyword">sizeof</span>(double)));</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*(T*R)/4*(<span class="keyword">sizeof</span>(double)));</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> M=<a class="code" href="group__applications__polarFFT__mpolar.html#ga08d0441aceedbcb98b985ee5aa121952" title="Generates the points with weights for the modified polar grid with angles and offsets...">mpolar_grid</a>(T,R,x,w);</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, m,</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> {</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> }</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = f_hat[k];</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> t0 = getticks();</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> nfft_trafo_direct(&my_nfft_plan);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> </div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> t1 = getticks();</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> GLOBAL_elapsed_time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> f[j] = my_nfft_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> }</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div>
-<div class="line"><a name="l00166"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__mpolar.html#ga55b2f979a5c69176a73f59eb0312b53d"> 166</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__mpolar.html#ga55b2f979a5c69176a73f59eb0312b53d" title="NFFT-based mpolar FFT.">mpolar_fft</a>(fftw_complex *f_hat, <span class="keywordtype">int</span> NN, fftw_complex *f, <span clas [...]
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> {</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> ticks t0, t1;</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="keywordtype">int</span> M; </div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> N[0]=NN; n[0]=2*N[0]; </div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> N[1]=NN; n[1]=2*N[1]; </div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*T*R/2*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> </div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*T*R/4*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> M=<a class="code" href="group__applications__polarFFT__mpolar.html#ga08d0441aceedbcb98b985ee5aa121952" title="Generates the points with weights for the modified polar grid with angles and offsets...">mpolar_grid</a>(T,R,x,w);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, m,</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> {</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> }</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> </div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> nfft_precompute_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> nfft_precompute_full_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> </div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = f_hat[k];</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> </div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> t0 = getticks();</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> </div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> </div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> t1 = getticks();</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> GLOBAL_elapsed_time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> f[j] = my_nfft_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> </div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> }</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div>
-<div class="line"><a name="l00237"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__mpolar.html#ga5d0560e898b722ee5fe09acc485bbec8"> 237</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__mpolar.html#ga5d0560e898b722ee5fe09acc485bbec8" title="inverse NFFT-based mpolar FFT">inverse_mpolar_fft</a>(fftw_complex *f, <span class="keywordtype">int</span> T, <span class="keyw [...]
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> {</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> ticks t0, t1;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_infft_plan; </div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="keywordtype">int</span> l; </div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="keywordtype">int</span> M; </div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> N[0]=NN; n[0]=2*N[0]; </div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> N[1]=NN; n[1]=2*N[1]; </div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*T*R/2*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> </div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*T*R/4*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> </div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> M=<a class="code" href="group__applications__polarFFT__mpolar.html#ga08d0441aceedbcb98b985ee5aa121952" title="Generates the points with weights for the modified polar grid with angles and offsets...">mpolar_grid</a>(T,R,x,w);</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, m,</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> solver_init_advanced_complex(&my_infft_plan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&my_nfft_plan), CGNR | PRECOMPUTE_WEIGHT );</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> {</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j] = f[j];</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j] = w[j];</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> }</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> </div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> nfft_precompute_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> </div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> nfft_precompute_full_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> </div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> </div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="keywordflow">if</span>(my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];j++)</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];k++)</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> {</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]+k]=</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> (sqrt(pow(j-my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2,2)+pow(k-my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]/2,2))>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a> [...]
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> }</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> </div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k] = 0.0 + _Complex_I*0.0;</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> </div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> t0 = getticks();</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> solver_before_loop_complex(&my_infft_plan);</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> </div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="keywordflow">if</span> (max_i<1)</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> {</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> l=1;</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k] = my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>[k];</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> }</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> {</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="keywordflow">for</span>(l=1;l<=<a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>;l++)</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> {</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_infft_plan);</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> }</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> }</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> t1 = getticks();</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> GLOBAL_elapsed_time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> </div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> f_hat[k] = my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k];</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> </div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_infft_plan);</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> </div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> }</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> </div>
-<div class="line"><a name="l00339"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__mpolar.html#ga522ff84df31c08a1f237ad0ec7ce4ac5"> 339</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__linogramm.html#gac2a323224e3346e37714575d49c65432" title="Comparison of the FFTW, linogram FFT, and inverse linogram FFT.">comparison_fft</a>(FILE *fp, <span class="keywordtype">int</ [...]
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> {</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> ticks t0, t1;</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> fftw_plan my_fftw_plan;</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> fftw_complex *f_hat,*f;</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="keywordtype">int</span> m,k;</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="keywordtype">double</span> t_fft, t_dft_mpolar;</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> f_hat = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*N*N);</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> f = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*(T*R/4)*5);</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> </div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> my_fftw_plan = fftw_plan_dft_2d(N,N,f_hat,f,FFTW_BACKWARD,FFTW_MEASURE);</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> </div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="keywordflow">for</span>(k=0; k<N*N; k++)</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> f_hat[k] = (((<span class="keywordtype">double</span>)rand())/RAND_MAX) + _Complex_I* (((double)rand())/RAND_MAX);</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> </div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> t0 = getticks();</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="keywordflow">for</span>(m=0;m<65536/N;m++)</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> {</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> fftw_execute(my_fftw_plan);</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="comment">/* touch */</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> f_hat[2]=2*f_hat[0];</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> }</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> t1 = getticks();</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> GLOBAL_elapsed_time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> t_fft=N*GLOBAL_elapsed_time/65536;</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> </div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="keywordflow">if</span>(N<256)</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> {</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <a class="code" href="group__applications__polarFFT__mpolar.html#gaee9902054200ea50d90b5d290bff8c71" title="discrete mpolar FFT">mpolar_dft</a>(f_hat,N,f,T,R,1);</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> t_dft_mpolar=GLOBAL_elapsed_time;</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> }</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> </div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="keywordflow">for</span> (m=3; m<=9; m+=3)</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> {</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="keywordflow">if</span>((m==3)&&(N<256))</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> fprintf(fp,<span class="stringliteral">"%d\t&\t&\t%1.1e&\t%1.1e&\t%d\t"</span>,N,t_fft,t_dft_mpolar,m);</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="keywordflow">if</span>(m==3)</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> fprintf(fp,<span class="stringliteral">"%d\t&\t&\t%1.1e&\t &\t%d\t"</span>,N,t_fft,m);</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> fprintf(fp,<span class="stringliteral">" \t&\t&\t &\t &\t%d\t"</span>,m);</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> </div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> printf(<span class="stringliteral">"N=%d\tt_fft=%1.1e\tt_dft_mpolar=%1.1e\tm=%d\t"</span>,N,t_fft,t_dft_mpolar,m);</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> </div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <a class="code" href="group__applications__polarFFT__mpolar.html#ga55b2f979a5c69176a73f59eb0312b53d" title="NFFT-based mpolar FFT.">mpolar_fft</a>(f_hat,N,f,T,R,m);</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> fprintf(fp,<span class="stringliteral">"%1.1e&\t"</span>,GLOBAL_elapsed_time);</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> printf(<span class="stringliteral">"t_mpolar=%1.1e\t"</span>,GLOBAL_elapsed_time);</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <a class="code" href="group__applications__polarFFT__mpolar.html#ga5d0560e898b722ee5fe09acc485bbec8" title="inverse NFFT-based mpolar FFT">inverse_mpolar_fft</a>(f,T,R,f_hat,N,2*m,m);</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="keywordflow">if</span>(m==9)</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> fprintf(fp,<span class="stringliteral">"%1.1e\\\\\\hline\n"</span>,GLOBAL_elapsed_time);</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> fprintf(fp,<span class="stringliteral">"%1.1e\\\\\n"</span>,GLOBAL_elapsed_time);</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> printf(<span class="stringliteral">"t_impolar=%1.1e\n"</span>,GLOBAL_elapsed_time);</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> }</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> </div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> fflush(fp);</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> </div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> </div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> }</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> </div>
-<div class="line"><a name="l00404"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__mpolar.html#ga3c04138a5bfe5d72780bb7e82a18e627"> 404</a></span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> {</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="keywordtype">int</span> N; </div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="keywordtype">int</span> T, R; </div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="keywordtype">int</span> M; </div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> fftw_complex *f_hat, *f, *f_direct, *f_tilde;</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>; </div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="keywordtype">int</span> m;</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="keywordtype">double</span> temp1, temp2, E_max=0.0;</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> FILE *fp1, *fp2;</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="keywordtype">char</span> filename[30];</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="keywordtype">int</span> logN;</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> </div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="keywordflow">if</span>( argc!=4 )</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> {</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> printf(<span class="stringliteral">"mpolar_fft_test N T R \n"</span>);</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> printf(<span class="stringliteral">"N mpolar FFT of size NxN \n"</span>);</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> printf(<span class="stringliteral">"T number of slopes \n"</span>);</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> printf(<span class="stringliteral">"R number of offsets \n"</span>);</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> printf(<span class="stringliteral">"\nHence, comparison FFTW, mpolar FFT and inverse mpolar FFT\n"</span>);</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> fp1=fopen(<span class="stringliteral">"mpolar_comparison_fft.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="keywordflow">if</span> (fp1==NULL)</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="keywordflow">for</span> (logN=4; logN<=8; logN++)</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <a class="code" href="group__applications__polarFFT__linogramm.html#gac2a323224e3346e37714575d49c65432" title="Comparison of the FFTW, linogram FFT, and inverse linogram FFT.">comparison_fft</a>(fp1,(1U<< logN), 3*(1U<< logN), 3*(1U<< (logN-1)));</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> fclose(fp1);</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> </div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> exit(-1);</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> }</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> </div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> N = atoi(argv[1]);</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> T = atoi(argv[2]);</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> R = atoi(argv[3]);</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> printf(<span class="stringliteral">"N=%d, modified polar grid with T=%d, R=%d => "</span>,N,T,R);</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> </div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*T*R/2*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*T*R/4*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> </div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> f_hat = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*N*N);</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> f = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*1.25*T*R); <span class="comment">/* 4/pi*log(1+sqrt(2)) = 1.122... < 1.25 */</span></div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> f_direct = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*1.25*T*R);</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> f_tilde = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*N*N);</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> </div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> M=<a class="code" href="group__applications__polarFFT__mpolar.html#ga08d0441aceedbcb98b985ee5aa121952" title="Generates the points with weights for the modified polar grid with angles and offsets...">mpolar_grid</a>(T,R,x,w); printf(<span class="stringliteral">"M=%d.\n"</span>,M);</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> </div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> fp1=fopen(<span class="stringliteral">"input_data_r.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> fp2=fopen(<span class="stringliteral">"input_data_i.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="keywordflow">if</span> ((fp1==NULL) || (fp2==NULL))</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="keywordflow">for</span>(k=0;k<N*N;k++)</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> {</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> fscanf(fp1,<span class="stringliteral">"%le "</span>,&temp1);</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> fscanf(fp2,<span class="stringliteral">"%le "</span>,&temp2);</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> f_hat[k]=temp1+ _Complex_I*temp2;</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> }</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> fclose(fp1);</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> fclose(fp2);</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> </div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <a class="code" href="group__applications__polarFFT__mpolar.html#gaee9902054200ea50d90b5d290bff8c71" title="discrete mpolar FFT">mpolar_dft</a>(f_hat,N,f_direct,T,R,1);</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="comment">// mpolar_fft(f_hat,N,f_direct,T,R,12);</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> </div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> printf(<span class="stringliteral">"\nTest of the mpolar FFT: \n"</span>);</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> fp1=fopen(<span class="stringliteral">"mpolar_fft_error.dat"</span>,<span class="stringliteral">"w+"</span>);</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="keywordflow">for</span> (m=1; m<=12; m++)</div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> {</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <a class="code" href="group__applications__polarFFT__mpolar.html#ga55b2f979a5c69176a73f59eb0312b53d" title="NFFT-based mpolar FFT.">mpolar_fft</a>(f_hat,N,f,T,R,m);</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> </div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> E_max=X(error_l_infty_complex)(f_direct,f,M);</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> printf(<span class="stringliteral">"m=%2d: E_max = %e\n"</span>,m,E_max);</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> fprintf(fp1,<span class="stringliteral">"%e\n"</span>,E_max);</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> }</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> fclose(fp1);</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> </div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="keywordflow">for</span> (m=3; m<=9; m+=3)</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> {</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> printf(<span class="stringliteral">"\nTest of the inverse mpolar FFT for m=%d: \n"</span>,m);</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> sprintf(filename,<span class="stringliteral">"mpolar_ifft_error%d.dat"</span>,m);</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> fp1=fopen(filename,<span class="stringliteral">"w+"</span>);</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="keywordflow">for</span> (max_i=0; max_i<=20; max_i+=2)</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> {</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <a class="code" href="group__applications__polarFFT__mpolar.html#ga5d0560e898b722ee5fe09acc485bbec8" title="inverse NFFT-based mpolar FFT">inverse_mpolar_fft</a>(f_direct,T,R,f_tilde,N,max_i,m);</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> </div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> E_max=X(error_l_infty_complex)(f_hat,f_tilde,N*N);</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> printf(<span class="stringliteral">"%3d iterations: E_max = %e\n"</span>,max_i,E_max);</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> fprintf(fp1,<span class="stringliteral">"%e\n"</span>,E_max);</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> }</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> fclose(fp1);</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> }</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> </div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_direct);</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_tilde);</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> </div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> }</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/mri2d_2reconstruct__data__gridding_8c_source.html b/doc/api/html/mri2d_2reconstruct__data__gridding_8c_source.html
deleted file mode 100644
index 3ee6537..0000000
--- a/doc/api/html/mri2d_2reconstruct__data__gridding_8c_source.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_gridding.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">mri2d/reconstruct_data_gridding.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: reconstruct_data_gridding.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="code" href="group__applications__mri2d__construct__data__gridding.html#gaafaf486ca8f1725dce039d2e2d150340"> 40</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri2d__construct__data__gridding.html#gaafaf486ca8f1725dce039d2e2d150340" title="reconstruct makes a 2d-adjoint-nfft">reconstruct</a>(<span class="keywordtype">char</span>* fil [...]
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">int</span> j; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">double</span> weights; <span class="comment">/* store one weight temporary */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">double</span> real,imag; <span class="comment">/* to read the real and imag part of a complex number */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_plan; <span class="comment">/* plan for the two dimensional nfft */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> FILE* fin; <span class="comment">/* input file */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> FILE* fweight; <span class="comment">/* input file for the weights */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> FILE *fout_real; <span class="comment">/* output file */</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> FILE *fout_imag; <span class="comment">/* output file */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">int</span> my_N[2],my_n[2];</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">int</span> flags = PRE_PHI_HUT| PRE_PSI |MALLOC_X| MALLOC_F_HAT|</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> MALLOC_F| FFTW_INIT| FFT_OUT_OF_PLACE|</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> FFTW_MEASURE| FFTW_DESTROY_INPUT;</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment">/* initialise nfft */</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> my_N[0]=N; my_n[0]=ceil(N*1.2);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> my_N[1]=N; my_n[1]=ceil(N*1.2);</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> nfft_init_guru(&my_plan, 2, my_N, M, my_n, 6,flags,</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> fin=fopen(filename,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> fweight=fopen(<span class="stringliteral">"weights.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> {</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> fscanf(fweight,<span class="stringliteral">"%le "</span>,&weights);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> fscanf(fin,<span class="stringliteral">"%le %le %le %le"</span>,&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1],&real,& [...]
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> my_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = real + _Complex_I*imag;</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">if</span> (weight)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> my_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = my_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] * weights;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> }</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> fclose(fweight);</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment">/* precompute psi */</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> nfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment">/* precompute full psi */</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> nfft_precompute_full_psi(&my_plan);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> </div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="comment">/* compute the adjoint nfft */</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> nfft_adjoint(&my_plan);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> fout_real=fopen(<span class="stringliteral">"output_real.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> fout_imag=fopen(<span class="stringliteral">"output_imag.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">for</span> (j=0;j<N*N;j++) {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> fprintf(fout_real,<span class="stringliteral">"%le "</span>,creal(my_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j]));</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> fprintf(fout_imag,<span class="stringliteral">"%le "</span>,cimag(my_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j]));</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> }</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> fclose(fin);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> fclose(fout_real);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> fclose(fout_imag);</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> nfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> }</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> {</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">if</span> (argc <= 5) {</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> printf(<span class="stringliteral">"usage: ./reconstruct_data_gridding FILENAME N M ITER WEIGHTS\n"</span>);</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <a class="code" href="group__applications__mri2d__construct__data__gridding.html#gaafaf486ca8f1725dce039d2e2d150340" title="reconstruct makes a 2d-adjoint-nfft">reconstruct</a>(argv[1],atoi(argv[2]),atoi(argv[3]),atoi(argv[5]));</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> }</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/mri3d_2reconstruct__data__gridding_8c_source.html b/doc/api/html/mri3d_2reconstruct__data__gridding_8c_source.html
deleted file mode 100644
index cc5dc10..0000000
--- a/doc/api/html/mri3d_2reconstruct__data__gridding_8c_source.html
+++ /dev/null
@@ -1,204 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_gridding.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_fb8678d426210fc305fe5dfd30a163a5.html">mri3d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">mri3d/reconstruct_data_gridding.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: reconstruct_data_gridding.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="code" href="group__applications__mri3d__reconstruct__data__gridding.html#ga0152e0943d96d847eaaaa8a9f487eb9e"> 40</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri3d__reconstruct__data__gridding.html#ga0152e0943d96d847eaaaa8a9f487eb9e" title="reconstruct makes an 2d-adjoint-nfft for every slice">reconstruct</a>(<span class="keywordt [...]
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">int</span> j,k,z; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">double</span> weights; <span class="comment">/* store one weight temporary */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">double</span> tmp; <span class="comment">/* tmp to read the obsolent z from the input file */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">double</span> real,imag; <span class="comment">/* to read the real and imag part of a complex number */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_plan; <span class="comment">/* plan for the two dimensional nfft */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">int</span> my_N[2],my_n[2]; <span class="comment">/* to init the nfft */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> FILE* fin; <span class="comment">/* input file */</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> FILE* fweight; <span class="comment">/* input file for the weights */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> </div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment">/* initialise my_plan */</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> my_N[0]=N; my_n[0]=ceil(N*1.2);</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> my_N[1]=N; my_n[1]=ceil(N*1.2);</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> nfft_init_guru(&my_plan, 2, my_N, M/Z, my_n, 6, PRE_PHI_HUT| PRE_PSI|</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> MALLOC_X| MALLOC_F_HAT| MALLOC_F|</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment">/* precompute lin psi if set */</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> fin=fopen(filename,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">for</span>(z=0;z<Z;z++) {</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> fweight=fopen(<span class="stringliteral">"weights.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> {</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> fscanf(fweight,<span class="stringliteral">"%le "</span>,&weights);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> fscanf(fin,<span class="stringliteral">"%le %le %le %le %le"</span>,</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> &my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1],&tmp,&real,&imag);</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> my_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = real + _Complex_I*imag;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">if</span>(weight)</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> my_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = my_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] * weights;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> }</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> fclose(fweight);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment">/* precompute psi if set just one time because the knots equal each slice */</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">if</span>(z==0 && my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> nfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="comment">/* precompute full psi if set just one time because the knots equal each slice */</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">if</span>(z==0 && my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> nfft_precompute_full_psi(&my_plan);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="comment">/* compute the adjoint nfft */</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> nfft_adjoint(&my_plan);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++) {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="comment">/* write every slice in the memory.</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment"> here we make an fftshift direct */</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> mem[(Z*N*N/2+z*N*N+ k)%(Z*N*N)] = my_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k];</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> }</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> }</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> fclose(fin);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> nfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> }</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"><a class="code" href="group__applications__mri3d__reconstruct__data__gridding.html#gaa30709aaef018deecdd911083fadb877"> 104</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri3d__reconstruct__data__gridding.html#gaa30709aaef018deecdd911083fadb877" title="print writes the memory back in a file output_real.dat for the real part and output_imag.da [...]
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> {</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordtype">int</span> i,j;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> FILE* fout_real;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> FILE* fout_imag;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> fout_real=fopen(<span class="stringliteral">"output_real.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> fout_imag=fopen(<span class="stringliteral">"output_imag.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">for</span>(i=0;i<Z;i++) {</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">for</span> (j=0;j<N*N;j++) {</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> fprintf(fout_real,<span class="stringliteral">"%le "</span>,creal(mem[(Z*N*N/2+i*N*N+ j)%(Z*N*N)]) /Z);</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> fprintf(fout_imag,<span class="stringliteral">"%le "</span>,cimag(mem[(Z*N*N/2+i*N*N+ j)%(Z*N*N)]) /Z);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> }</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> fprintf(fout_real,<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> fprintf(fout_imag,<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> }</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> fclose(fout_real);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> fclose(fout_imag);</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> }</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> {</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> fftw_complex *mem;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> fftw_plan plan;</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordtype">int</span> N,M,Z;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">if</span> (argc <= 6) {</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> printf(<span class="stringliteral">"usage: ./reconstruct_data_gridding FILENAME N M Z ITER WEIGHTS\n"</span>);</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> }</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> N=atoi(argv[2]);</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> M=atoi(argv[3]);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> Z=atoi(argv[4]);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="comment">/* Allocate memory to hold every slice in memory after the</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="comment"> 2D-infft */</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> mem = (fftw_complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex) * atoi(argv[2]) * atoi(argv[2]) * atoi(argv[4]));</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="comment">/* Create plan for the 1d-ifft */</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> plan = fftw_plan_many_dft(1, &Z, N*N,</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> mem, NULL,</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> N*N, 1,</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> mem, NULL,</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> N*N,1 ,</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> FFTW_BACKWARD, FFTW_MEASURE);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="comment">/* execute the 2d-nfft's */</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <a class="code" href="group__applications__mri3d__reconstruct__data__gridding.html#ga0152e0943d96d847eaaaa8a9f487eb9e" title="reconstruct makes an 2d-adjoint-nfft for every slice">reconstruct</a>(argv[1],atoi(argv[2]),atoi(argv[3]),atoi(argv[4]),atoi(argv[6]),mem);</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> </div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="comment">/* execute the 1d-fft's */</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> fftw_execute(plan);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="comment">/* write the memory back in files */</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <a class="code" href="group__applications__mri3d__reconstruct__data__gridding.html#gaa30709aaef018deecdd911083fadb877" title="print writes the memory back in a file output_real.dat for the real part and output_imag.dat for the imaginary part">print</a>(N,M,Z, mem);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="comment">/* free memory */</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(mem);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> }</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/mri_8c_source.html b/doc/api/html/mri_8c_source.html
deleted file mode 100644
index a29cd69..0000000
--- a/doc/api/html/mri_8c_source.html
+++ /dev/null
@@ -1,316 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - mri.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_a6d8c0f9045568178601abc26c60f91f.html">mri</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">mri.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: mri.c 3965 2013-04-22 12:12:31Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00037"></a><span class="lineno"><a class="code" href="structwindow__funct__plan__.html"> 37</a></span> <span class="keyword">typedef</span> <span class="keyword">struct </span><a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan_</a> {</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keywordtype">int</span> d;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">int</span> m;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">int</span> n[1];</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordtype">double</span> sigma[1];</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">double</span> *b;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"><a class="code" href="structwindow__funct__plan__.html#a59ddba27ebde497ae7cfcfc2dbdd2304"> 43</a></span> <span class="keywordtype">double</span> *<a class="code" href="structwindow__funct__plan__.html#a59ddba27ebde497ae7cfcfc2dbdd2304" title="input for de Boor algorithm, if B_SPLINE or SINC_2m is defined">spline_coeffs</a>; </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> } <a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan</a>;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keyword">static</span> <span class="keywordtype">void</span> window_funct_init(<a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan</a>* ths, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> n, <span class="keywordtype">double</span> sigma) {</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> ths->d=1;</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> ths->m=m;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> ths->n[0]=n;</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> ths->sigma[0]=sigma;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> WINDOW_HELP_INIT</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> }</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment"> * mri_inh_2d1d</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">void</span> mri_inh_2d1d_trafo(<a class="code" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> *that) {</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordtype">int</span> l,j;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">double</span> _Complex *f = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(that-><a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> [...]
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">double</span> _Complex *f_hat = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(that-><a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtyp [...]
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan</a> *ths = (<a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e" [...]
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> window_funct_init(ths,that->plan.<a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>,that->N3,that->sigma3);</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="comment">/* the pointers that->f and that->f_hat have been modified by the solver */</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> that->plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = that-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> that->plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = that-><a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> memset(f,0,that-><a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> {</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> f_hat[j]=that-><a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j];</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> }</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">for</span>(l=-ths->n[0]/2;l<=ths->n[0]/2;l++) {</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> that-><a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j]*=cexp(-2*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*_Complex_I*that->w[j]*((<span class="keywordtype">double</span>)l)) [...]
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&that->plan);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>;j++){</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="comment">/* PHI has compact support */</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">if</span>(fabs(that->t[j]-((<span class="keywordtype">double</span>)l)/((<span class="keywordtype">double</span>)ths->n[0]))<that->plan.<a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>/((<span class="key [...]
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> {</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">double</span> phi_val = PHI(that->t[j]-((<span class="keywordtype">double</span>)l)/((<span class="keywordtype">double</span>)ths->n[0]),0);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> f[j]+=that-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]*phi_val;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">// the line below causes internal compiler error for gcc 4.7.1</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="comment">// f[j]+=that->f[j]*PHI(that->t[j]-((double)l)/((double)ths->n[0]),0);</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> }</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> }</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> that-><a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j]=f_hat[j];</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> }</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(that->plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>);</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> that-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>=f;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> that->plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = that-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> WINDOW_HELP_FINALIZE</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">void</span> mri_inh_2d1d_adjoint(<a class="code" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> *that) {</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordtype">int</span> l,j;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordtype">double</span> _Complex *f = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(that-><a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> [...]
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordtype">double</span> _Complex *f_hat = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(that-><a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtyp [...]
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan</a> *ths = (<a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e" [...]
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> window_funct_init(ths,that->plan.<a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>,that->N3,that->sigma3);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> memset(f_hat,0,that-><a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="comment">/* the pointers that->f and that->f_hat have been modified by the solver */</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> that->plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = that-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>;</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> that->plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = that-><a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> {</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> f[j]=that-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> }</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">for</span>(l=-ths->n[0]/2;l<=ths->n[0]/2;l++) {</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>;j++) {</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="comment">/* PHI has compact support */</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">if</span>(fabs(that->t[j]-((<span class="keywordtype">double</span>)l)/((<span class="keywordtype">double</span>)ths->n[0]))<that->plan.<a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>/((<span class="key [...]
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> that-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]*=PHI(that->t[j]-((<span class="keywordtype">double</span>)l)/((<span class="keywordtype">double</span>)ths->n[0]),0);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> that-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]=0.0;</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> }</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> nfft_adjoint(&that->plan);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> f_hat[j]+=that-><a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j]*cexp(2*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*_Complex_I*that->w[j]*((<span class="keywordtype">double</s [...]
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> that-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]=f[j];</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> {</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> f_hat[j] /= PHI_HUT(ths->n[0]*that->w[j],0);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> }</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(that->plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> that-><a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=f_hat;</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> that->plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = that-><a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> </div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> WINDOW_HELP_FINALIZE</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths);</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> }</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> </div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="keywordtype">void</span> mri_inh_2d1d_init_guru(<a class="code" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> *ths, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> *n,</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordtype">int</span> m, <span class="keywordtype">double</span> sigma, <span class="keywordtype">unsigned</span> nfft_flags, <span class="keywordtype">unsigned</span> fftw_flags) {</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> nfft_init_guru(&ths->plan,2,N,M,n,m,nfft_flags,fftw_flags);</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> ths->N3=N[2];</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> ths->sigma3=sigma;</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> ths-><a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a> = ths->plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> ths-><a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a> = ths->plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> ths-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = ths->plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>;</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> ths-><a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = ths->plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> </div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> ths->t = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> ths->w = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> </div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> ths-><a class="code" href="structmri__inh__2d1d__plan.html#a4cad33b38f4d5bc54b8d25d90913ab44" title="Pointer to the own transform.">mv_trafo</a> = (void (*) (<span class="keywordtype">void</span>* ))mri_inh_2d1d_trafo;</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> ths-><a class="code" href="structmri__inh__2d1d__plan.html#afe427225384a2d226c3cb85cf9aa4042" title="Pointer to the own adjoint.">mv_adjoint</a> = (void (*) (<span class="keywordtype">void</span>* ))mri_inh_2d1d_adjoint;</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> }</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="keywordtype">void</span> mri_inh_2d1d_finalize(<a class="code" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> *ths) {</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->t);</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->w);</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="comment">/* the pointers ths->f and ths->f_hat have been modified by the solver */</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> ths->plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = ths-><a class="code" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>;</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> ths->plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = ths-><a class="code" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> nfft_finalize(&ths->plan);</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> }</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> </div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment"> * mri_inh_3d</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> </div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordtype">void</span> mri_inh_3d_trafo(<a class="code" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> *that) {</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordtype">int</span> l,j;</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan</a> *ths = (<a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e" [...]
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> window_funct_init(ths,that->plan.<a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>,that->N3,that->sigma3);</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="comment">/* the pointers that->f has been modified by the solver */</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> that->plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> =that-><a class="code" href="structmri__inh__3d__plan.html#a9e51f5f4ad46d4b120c452fc962a2385" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> ;</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> </div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__3d__plan.html#aa1b253e912e92b252c4992eb86d92e12" title="Total number of Fourier coefficients.">N_total</a>;j++) {</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">for</span>(l=-ths->n[0]/2;l<ths->n[0]/2;l++)</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> {</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="comment">/* PHI has compact support */</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="keywordflow">if</span>(fabs(that->w[j]-((<span class="keywordtype">double</span>)l)/((<span class="keywordtype">double</span>)ths->n[0]))<ths->m/((<span class="keywordtype">double</span>)ths->n[0]))</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> that->plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j*ths->n[0]+(l+ths->n[0]/2)]= that-><a class="code" href="structmri__inh__3d__plan.html#a91ed30b213dea4954d2d27c4d1334a50" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> [...]
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> that->plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j*ths->n[0]+(l+ths->n[0]/2)]=0.0;</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> }</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> }</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> </div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&that->plan);</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__3d__plan.html#ae90c4e1c541956b5902e7aafc193ad8b" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> {</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> that-><a class="code" href="structmri__inh__3d__plan.html#a9e51f5f4ad46d4b120c452fc962a2385" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] /= PHI_HUT(ths->n[0]*that->plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2],0);</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> }</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> </div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> WINDOW_HELP_FINALIZE</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths);</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> }</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordtype">void</span> mri_inh_3d_adjoint(<a class="code" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> *that) {</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="keywordtype">int</span> l,j;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan</a> *ths = (<a class="code" href="structwindow__funct__plan__.html" title="window_funct_plan is a plan to use the window functions independent of the nfft">window_funct_plan</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e" [...]
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> window_funct_init(ths,that->plan.<a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>,that->N3,that->sigma3);</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> </div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="comment">/* the pointers that->f has been modified by the solver */</span></div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> that->plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> =that-><a class="code" href="structmri__inh__3d__plan.html#a9e51f5f4ad46d4b120c452fc962a2385" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> ;</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> </div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__3d__plan.html#ae90c4e1c541956b5902e7aafc193ad8b" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> {</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> that-><a class="code" href="structmri__inh__3d__plan.html#a9e51f5f4ad46d4b120c452fc962a2385" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] /= PHI_HUT(ths->n[0]*that->plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2],0);</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> }</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> </div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> nfft_adjoint(&that->plan);</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="keywordflow">for</span>(j=0;j<that-><a class="code" href="structmri__inh__3d__plan.html#aa1b253e912e92b252c4992eb86d92e12" title="Total number of Fourier coefficients.">N_total</a>;j++) {</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> that-><a class="code" href="structmri__inh__3d__plan.html#a91ed30b213dea4954d2d27c4d1334a50" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j]=0.0;</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="keywordflow">for</span>(l=-ths->n[0]/2;l<ths->n[0]/2;l++)</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> {</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="comment">/* PHI has compact support */</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="keywordflow">if</span>(fabs(that->w[j]-((<span class="keywordtype">double</span>)l)/((<span class="keywordtype">double</span>)ths->n[0]))<ths->m/((<span class="keywordtype">double</span>)ths->n[0]))</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> that-><a class="code" href="structmri__inh__3d__plan.html#a91ed30b213dea4954d2d27c4d1334a50" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j]+= that->plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j*ths->n[0]+(l+ths->n[0] [...]
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> }</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> }</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> </div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> </div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> WINDOW_HELP_FINALIZE</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths);</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> }</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> </div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="keywordtype">void</span> mri_inh_3d_init_guru(<a class="code" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> *ths, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> *n,</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordtype">int</span> m, <span class="keywordtype">double</span> sigma, <span class="keywordtype">unsigned</span> nfft_flags, <span class="keywordtype">unsigned</span> fftw_flags) {</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> ths->N3=N[2];</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> ths->sigma3=sigma;</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> nfft_init_guru(&ths->plan,3,N,M,n,m,nfft_flags,fftw_flags);</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> ths-><a class="code" href="structmri__inh__3d__plan.html#aa1b253e912e92b252c4992eb86d92e12" title="Total number of Fourier coefficients.">N_total</a> = N[0]*N[1];</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> ths-><a class="code" href="structmri__inh__3d__plan.html#ae90c4e1c541956b5902e7aafc193ad8b" title="Total number of samples.">M_total</a> = ths->plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> ths-><a class="code" href="structmri__inh__3d__plan.html#a9e51f5f4ad46d4b120c452fc962a2385" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = ths->plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>;</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> ths-><a class="code" href="structmri__inh__3d__plan.html#a91ed30b213dea4954d2d27c4d1334a50" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structmri__inh__3d__plan.html#aa1b253e912e92b252c4992eb [...]
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> ths->w = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structmri__inh__3d__plan.html#aa1b253e912e92b252c4992eb86d92e12" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> ths-><a class="code" href="structmri__inh__3d__plan.html#a780818802d5bfdc4d4174a3637254fd5" title="Pointer to the own transform.">mv_trafo</a> = (void (*) (<span class="keywordtype">void</span>* ))mri_inh_3d_trafo;</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> ths-><a class="code" href="structmri__inh__3d__plan.html#afa2e143e704b701e9a0ee1d795f46b5b" title="Pointer to the own adjoint.">mv_adjoint</a> = (void (*) (<span class="keywordtype">void</span>* ))mri_inh_3d_adjoint;</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> }</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="keywordtype">void</span> mri_inh_3d_finalize(<a class="code" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> *ths) {</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->w);</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structmri__inh__3d__plan.html#a91ed30b213dea4954d2d27c4d1334a50" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>);</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> nfft_finalize(&ths->plan);</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nav_f.png b/doc/api/html/nav_f.png
deleted file mode 100644
index 72a58a5..0000000
Binary files a/doc/api/html/nav_f.png and /dev/null differ
diff --git a/doc/api/html/nav_g.png b/doc/api/html/nav_g.png
deleted file mode 100644
index 2093a23..0000000
Binary files a/doc/api/html/nav_g.png and /dev/null differ
diff --git a/doc/api/html/nav_h.png b/doc/api/html/nav_h.png
deleted file mode 100644
index 33389b1..0000000
Binary files a/doc/api/html/nav_h.png and /dev/null differ
diff --git a/doc/api/html/ndft__fast_8c.html b/doc/api/html/ndft__fast_8c.html
deleted file mode 100644
index 3920466..0000000
--- a/doc/api/html/ndft__fast_8c.html
+++ /dev/null
@@ -1,84 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - ndft_fast.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">ndft_fast.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Testing ndft, Horner-like ndft, and fully precomputed ndft.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <stdio.h></code><br/>
-<code>#include <math.h></code><br/>
-<code>#include <string.h></code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-</div>
-<p><a href="ndft__fast_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ab816d27cbbc27e40180686dfdf092c18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab816d27cbbc27e40180686dfdf092c18"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>ndft_horner_trafo</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a53bb2cec77c49aa5c95da563cb8e8006"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53bb2cec77c49aa5c95da563cb8e8006"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>ndft_pre_full_trafo</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths, double _Complex *A)</td></tr>
-<tr class="memitem:afcad1528e5264964ab523b110c62d6b4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afcad1528e5264964ab523b110c62d6b4"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>ndft_pre_full_init</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths, double _Complex *A)</td></tr>
-<tr class="memitem:a5aca0b75e5ca5f147c210b23c507cd00"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5aca0b75e5ca5f147c210b23c507cd00"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>ndft_time</b> (int N, int M, unsigned test_ndft, unsigned test_pre_full)</td></tr>
-<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Testing ndft, Horner-like ndft, and fully precomputed ndft. </p>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition in file <a class="el" href="ndft__fast_8c_source.html">ndft_fast.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/ndft__fast_8c_source.html b/doc/api/html/ndft__fast_8c_source.html
deleted file mode 100644
index 0719d54..0000000
--- a/doc/api/html/ndft__fast_8c_source.html
+++ /dev/null
@@ -1,260 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - ndft_fast.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">ndft_fast.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="ndft__fast_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: ndft_fast.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keyword">static</span> <span class="keywordtype">void</span> ndft_horner_trafo(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> {</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">int</span> j,k;</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">double</span> _Complex *f_hat_k, *f_j;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">double</span> _Complex exp_omega_0;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordflow">for</span>(j=0, f_j=ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>; j<ths->M_total; j++, f_j++)</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> (*f_j) =0;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">for</span>(j=0, f_j=ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>; j<ths->M_total; j++, f_j++)</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> {</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> exp_omega_0 = cexp(+2*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*_Complex_I*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j]);</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">for</span>(k=0, f_hat_k= ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>; k<ths->N[0]; k++, f_hat_k++)</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> {</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> (*f_j)+=(*f_hat_k);</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> (*f_j)*=exp_omega_0;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> }</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> (*f_j)*=cexp(-<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*_Complex_I*ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, si [...]
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> }</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> } <span class="comment">/* ndft_horner_trafo */</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keyword">static</span> <span class="keywordtype">void</span> ndft_pre_full_trafo(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths, <span class="keywordtype">double</span> _Complex *A)</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> {</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">int</span> j,k;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">double</span> _Complex *f_hat_k, *f_j;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">double</span> _Complex *A_local;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">for</span>(j=0, f_j=ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>; j<ths->M_total; j++, f_j++)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> (*f_j) =0;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span>(j=0, f_j=ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, A_local=A; j<ths->M_total; j++, f_j++)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">for</span>(k=0, f_hat_k= ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>; k<ths->N[0]; k++, f_hat_k++, A_local++)</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> (*f_j) += (*f_hat_k)*(*A_local);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> } <span class="comment">/* ndft_pre_full_trafo */</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keyword">static</span> <span class="keywordtype">void</span> ndft_pre_full_init(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths, <span class="keywordtype">double</span> _Complex *A)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> {</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordtype">int</span> j,k;</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordtype">double</span> _Complex *f_hat_k, *f_j, *A_local;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">for</span>(j=0, f_j=ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, A_local=A; j<ths->M_total; j++, f_j++)</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">for</span>(k=0, f_hat_k= ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>; k<ths->N[0]; k++, f_hat_k++, A_local++)</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> (*A_local) = cexp(-2*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*_Complex_I*(k-ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2)*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spati [...]
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> } <span class="comment">/* ndft_pre_full_init */</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keyword">static</span> <span class="keywordtype">void</span> ndft_time(<span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">unsigned</span> test_ndft, <span class="keywordtype">unsigned</span> test_pre_full)</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> {</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">double</span> t, t_ndft, t_horner, t_pre_full, t_nfft;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordtype">double</span> _Complex *A = NULL;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> ticks t0, t1;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> np;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> printf(<span class="stringliteral">"%d\t%d\t"</span>,N, M);</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> nfft_init_1d(&np, N, M);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(np.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, np.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total numbe [...]
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">if</span>(test_pre_full)</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> {</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> A=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(N*M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> ndft_pre_full_init(&np, A);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(np.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, np.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0 [...]
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> {</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> t_ndft=0;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> r=0;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordflow">while</span>(t_ndft<0.1)</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> {</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> r++;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> t0 = getticks();</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> nfft_trafo_direct(&np);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> t1 = getticks();</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> t_ndft+=t;</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> }</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> t_ndft/=r;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> printf(<span class="stringliteral">"%.2e\t"</span>,t_ndft);</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> }</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> printf(<span class="stringliteral">"nan\t\t"</span>);</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> t_horner=0;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> r=0;</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">while</span>(t_horner<0.1)</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> {</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> r++;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> t0 = getticks();</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> ndft_horner_trafo(&np);</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> t1 = getticks();</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> t_horner+=t;</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> t_horner/=r;</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> printf(<span class="stringliteral">"%.2e\t"</span>, t_horner);</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">if</span>(test_pre_full)</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> {</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> t_pre_full=0;</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> r=0;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">while</span>(t_pre_full<0.1)</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> {</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> r++;</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> t0 = getticks();</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> ndft_pre_full_trafo(&np,A);</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> t1 = getticks();</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> t_pre_full+=t;</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> }</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> t_pre_full/=r;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> printf(<span class="stringliteral">"%.2e\t"</span>, t_pre_full);</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> }</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> printf(<span class="stringliteral">"nan\t\t"</span>);</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> </div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> t_nfft=0;</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> r=0;</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> {</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> r++;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> t0 = getticks();</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&np);</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> t1 = getticks();</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> t_nfft+=t;</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> }</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> t_nfft/=r;</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> printf(<span class="stringliteral">"%.2e\n"</span>, t_nfft);</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> </div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> fflush(stdout);</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">if</span>(test_pre_full)</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(A);</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> </div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> nfft_finalize(&np);</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> }</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> </div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> {</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordtype">int</span> l,trial;</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">if</span>(argc<=2)</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> {</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> fprintf(stderr,<span class="stringliteral">"ndft_fast type first last trials\n"</span>);</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> }</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> </div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> fprintf(stderr,<span class="stringliteral">"Testing ndft, Horner-like ndft, fully precomputed ndft.\n"</span>);</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> fprintf(stderr,<span class="stringliteral">"Columns: N, M, t_ndft, t_horner, t_pre_full, t_nfft\n\n"</span>);</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> </div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="comment">/* time vs. N=M */</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">if</span>(atoi(argv[1])==0)</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> {</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="keywordflow">for</span>(l=atoi(argv[2]); l<=atoi(argv[3]); l++)</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordflow">for</span>(trial=0; trial<atoi(argv[4]); trial++)</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="keywordflow">if</span>(l<=13)</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> ndft_time((1U<< l), (1U<< l), 1, 1);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="keywordflow">if</span>(l<=15)</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> ndft_time((1U<< l), (1U<< l), 1, 0);</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> ndft_time((1U<< l), (1U<< l), 0, 0);</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> }</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> </div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfct_2simple__test_8c_source.html b/doc/api/html/nfct_2simple__test_8c_source.html
deleted file mode 100644
index e4053c6..0000000
--- a/doc/api/html/nfct_2simple__test_8c_source.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8d4f17a3806fad624168c14bf0ea2fb4.html">nfct</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfct/simple_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> </div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">static</span> <span class="keywordtype">void</span> simple_test_nfct_1d(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> {</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="keywordtype">int</span> j,k;</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <a class="code" href="structnfct__plan.html">nfct_plan</a> p;</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">int</span> N=14;</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> M=19;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> nfct_init_1d(&p,N,M);</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">for</span>(j = 0; j < p.<a class="code" href="structnfct__plan.html#a998a428a06532646854e8add72c5ca63" title="dimension, rank">d</a>*p.<a class="code" href="structnfct__plan.html#ab201c4e89753b167954e7cb5f34a321d" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> p.<a class="code" href="structnfct__plan.html#a5635e780f4c492f087754d71f16e07ed" title="nodes (in time/spatial domain)">x</a>[j] = 0.5 * ((<span class="keywordtype">double</span>)rand()) / RAND_MAX;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">if</span>( p.<a class="code" href="structnfct__plan.html#ae2a2e493b2938fe9b22b0506765f30cf" title="flags for precomputation, malloc">nfct_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> nfct_precompute_psi( &p);</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">for</span>(k = 0; k < p.<a class="code" href="structnfct__plan.html#abc66ae61c54a049868c62288623d4a6b" title="Total number of Fourier coefficients.">N_total</a>; k++)</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> p.<a class="code" href="structnfct__plan.html#af289164b09e85f75e8ed0eb3ded40d9c" title="Vector of Fourier coefficients, size is N_total * sizeof( double )">f_hat</a>[k] = (<span class="keywordtype">double</span>)rand() / RAND_MAX;</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(p.<a class="code" href="structnfct__plan.html#af289164b09e85f75e8ed0eb3ded40d9c" title="Vector of Fourier coefficients, size is N_total * sizeof( double )">f_hat</a>,p.<a class="code" href="structnfct__plan.html#abc66ae61c54a049868c62288623d4a6b" title="Total number of [...]
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> nfct_trafo_direct(&p);</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(p.<a class="code" href="structnfct__plan.html#acca00284f93bd33c00a1b099a6eec8cd" title="Vector of samples, size is M_total * sizeof( double )">f</a>,p.<a class="code" href="structnfct__plan.html#ab201c4e89753b167954e7cb5f34a321d" title="Total number of samples.">M_tota [...]
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> nfct_trafo(&p);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(p.<a class="code" href="structnfct__plan.html#acca00284f93bd33c00a1b099a6eec8cd" title="Vector of samples, size is M_total * sizeof( double )">f</a>,p.<a class="code" href="structnfct__plan.html#ab201c4e89753b167954e7cb5f34a321d" title="Total number of samples.">M_tota [...]
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> nfct_adjoint(&p);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(p.<a class="code" href="structnfct__plan.html#af289164b09e85f75e8ed0eb3ded40d9c" title="Vector of Fourier coefficients, size is N_total * sizeof( double )">f_hat</a>,p.<a class="code" href="structnfct__plan.html#abc66ae61c54a049868c62288623d4a6b" title="Total number of [...]
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> nfct_adjoint_direct(&p);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(p.<a class="code" href="structnfct__plan.html#af289164b09e85f75e8ed0eb3ded40d9c" title="Vector of Fourier coefficients, size is N_total * sizeof( double )">f_hat</a>,p.<a class="code" href="structnfct__plan.html#abc66ae61c54a049868c62288623d4a6b" title="Total number of [...]
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> nfct_finalize(&p);</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> }</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> {</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> system(<span class="stringliteral">"clear"</span>);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> printf(<span class="stringliteral">"computing one dimensional ndct, nfct and adjoint ndct, nfct\n\n"</span>);</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> simple_test_nfct_1d();</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> printf(<span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfct_8c_source.html b/doc/api/html/nfct_8c_source.html
deleted file mode 100644
index bc63e70..0000000
--- a/doc/api/html/nfct_8c_source.html
+++ /dev/null
@@ -1,944 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfct.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_6409bbb6ca4d9fdb6de069951c273365.html">nfct</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfct.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nfct.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">/* Nonequispaced fast cosine transform</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="comment"> * Author: Steffen Klatt 2004-2006, Jens Keiner 2010 */</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> </div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#undef X</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span><span class="preprocessor">#if defined(NFFT_SINGLE)</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor"></span><span class="preprocessor">#define X(name) CONCAT(nfctf_, name)</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span><span class="preprocessor">#elif defined(NFFT_LDOUBLE)</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"></span><span class="preprocessor">#define X(name) CONCAT(nfctl_, name)</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor"></span><span class="preprocessor">#define X(name) CONCAT(nfct_, name)</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> fftw_2N(<span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> {</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">return</span> 2 * (n - 1);</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> }</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> fftw_2N_rev(<span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> {</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">return</span> (LRINT(K(0.5) * n) + 1);</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> }</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> prod_int(<span class="keywordtype">int</span> *vec, <span class="keywordtype">int</span> d)</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> {</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">int</span> t, prod = 1;</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">for</span> (t = 0; t < d; t++)</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> prod *= vec[t];</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">return</span> prod;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> }</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment">/* handy shortcuts */</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor">#define NFCT_DEFAULT_FLAGS PRE_PHI_HUT | PRE_PSI | MALLOC_X | MALLOC_F_HAT | \</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="preprocessor"> MALLOC_F | FFTW_INIT | FFT_OUT_OF_PLACE</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="preprocessor">#define FFTW_DEFAULT_FLAGS FFTW_ESTIMATE | FFTW_DESTROY_INPUT</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="preprocessor">#define NFCT_SUMMANDS (2 * ths->m + 2)</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor"></span><span class="preprocessor">#define NODE(p,r) (ths->x[(p) * ths->d + (r)])</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor">#define MACRO_ndct_init_result_trafo \</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor"> memset(f, 0, ths->M_total * sizeof(R));</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndct_init_result_adjoint \</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="preprocessor"> memset(f_hat, 0, ths->N_total * sizeof(R));</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="preprocessor">#define MACRO_nfct_D_init_result_A \</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="preprocessor"> memset(g_hat, 0, prod_int(ths->n, ths->d) * sizeof(R));</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfct_D_init_result_T \</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="preprocessor"> memset(f_hat, 0, ths->N_total * sizeof(R));</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="preprocessor">#define MACRO_nfct_B_init_result_A \</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="preprocessor"> memset(f, 0, ths->M_total * sizeof(R));</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfct_B_init_result_T \</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="preprocessor"> memset(g, 0, prod_int(ths->n, ths->d) * sizeof(R));</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="preprocessor">#define NFCT_PRE_WINFUN(d) ths->N[d] = 2 * ths->N[d]; \</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="preprocessor"> ths->n[d] = fftw_2N(ths->n[d]);</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="preprocessor">#define NFCT_POST_WINFUN(d) ths->N[d] = LRINT(K(0.5) * ths->N[d]); \</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="preprocessor"> ths->n[d] = fftw_2N_rev(ths->n[d]);</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="preprocessor">#define NFCT_WINDOW_HELP_INIT WINDOW_HELP_INIT</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> R X(phi_hut)(X(plan) *ths, <span class="keywordtype">int</span> k, <span class="keywordtype">int</span> d)</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> {</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> NFCT_PRE_WINFUN(d);</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> R phi_hut_tmp = PHI_HUT(k, d);</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> NFCT_POST_WINFUN(d);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">return</span> phi_hut_tmp;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> R X(phi)(X(plan) *ths, R x, <span class="keywordtype">int</span> d)</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> {</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> NFCT_PRE_WINFUN(d);</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> R phi_tmp = PHI(x, d);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> NFCT_POST_WINFUN(d);</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">return</span> phi_tmp;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> }</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="preprocessor">#define MACRO_with_cos_vec cos_vec[t][ka[t]]</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_without_cos_vec COS(K(2.0) * KPI * ka[t] * NODE(j,t))</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="preprocessor">#define MACRO_with_PRE_PHI_HUT ths->c_phi_inv[t][kg[t]];</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_compute_PHI_HUT_INV (K(1.0) / (X(phi_hut)(ths, kg[t], t)))</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="preprocessor">#define MACRO_with_PRE_PSI ths->psi[(j * ths->d + t) * NFCT_SUMMANDS + lc[t]]</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_compute_PSI X(phi)(ths, NODE(j,t) - ((R)(lc[t] + lb[t])) / (K(2.0)*((R)(ths->n[t])-K(1.0))</span><span class="comment">/*(R)(fftw_2N(ths->n[t]))*/</span><span class="preprocessor">), t)</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="preprocessor">#define MACRO_ndct_malloc__cos_vec \</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="preprocessor"> R **cos_vec; \</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="preprocessor"> cos_vec = (R**)Y(malloc)(ths->d * sizeof(R*)); \</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor"> for (t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor"> cos_vec[t] = (R*)Y(malloc)(ths->N[t] * sizeof(R));</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="preprocessor">#define MACRO_ndct_free__cos_vec \</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="preprocessor"> </span><span class="comment">/* free allocated memory */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="preprocessor"> for (t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor"> Y(free)(cos_vec[t]); \</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor"> Y(free)(cos_vec); \</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="preprocessor">#define MACRO_ndct_init__cos_vec \</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="preprocessor"> for(t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="preprocessor"> cos_vec[t][0] = K(1.0); \</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="preprocessor"> cos_vec[t][1] = COS(K(2.0) * KPI * NODE(j,t)); \</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="preprocessor"> for (k = 2; k < ths->N[t]; k++) \</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="preprocessor"> cos_vec[t][k] = K(2.0) * cos_vec[t][1] * cos_vec[t][k-1] - \</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="preprocessor"> cos_vec[t][k-2]; \</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="preprocessor">#define MACRO_ndct_init__k__cos_k(which_one) \</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="preprocessor"> cos_k[0] = K(1.0); \</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="preprocessor"> for (t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="preprocessor"> ka[t] = 0; \</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="preprocessor"> for (t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="preprocessor"> cos_k[t+1] = cos_k[t] * MACRO_ ##which_one; \</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="preprocessor">#define MACRO_ndct_count__k__cos_k(which_one) \</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="preprocessor"> ka[ths->d-1]++; \</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="preprocessor"> i = ths->d - 1; \</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="preprocessor"> while ((ka[i] == ths->N[i]) && (i > 0)) \</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="preprocessor"> ka[i - 1]++; \</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor"> ka[i] = 0; \</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="preprocessor"> i--; \</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="preprocessor"> for (t = i; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="preprocessor"> cos_k[t+1] = cos_k[t] * MACRO_ ##which_one; \</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="preprocessor">#define MACRO_ndct_compute__trafo \</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="preprocessor"> f[j] += f_hat[k] * cos_k[ths->d]; \</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="preprocessor">#define MACRO_ndct_compute__adjoint \</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="preprocessor"> f_hat[k] += f[j] * cos_k[ths->d]; \</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="comment">/* slow (trafo) transform */</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="preprocessor">#define MACRO_ndct(which_one) \</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor"> void X(which_one ## _direct) (X(plan) *ths) \</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="preprocessor"> int j, k, t, i; \</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor"> int ka[ths->d]; \</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor"> R cos_k[ths->d+1]; \</span></div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="preprocessor"> R *f = ths->f; \</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="preprocessor"> R *f_hat = ths->f_hat; \</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="preprocessor"> MACRO_ndct_init_result_ ## which_one; \</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="preprocessor"> if (ths->d == 1) \</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="preprocessor"> for (j = 0; j < ths->M_total; j++) \</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="preprocessor"> for (k = 0; k < ths->N[0]; k++) \</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="preprocessor"> cos_k[ths->d] = COS(K(2.0) * KPI * k * NODE(j,0)); \</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor"> MACRO_ndct_compute__ ## which_one; \</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="preprocessor"> </span><span class="comment">/* fast nfct_trafo_direct */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="preprocessor"> MACRO_ndct_malloc__cos_vec; \</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="preprocessor"> for (j = 0; j < ths->M_total; j++) \</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="preprocessor"> MACRO_ndct_init__cos_vec; \</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="preprocessor"> MACRO_ndct_init__k__cos_k(with_cos_vec); \</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="preprocessor"> for (k = 0; k < ths->N_total; k++) \</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="preprocessor"> MACRO_ndct_compute__ ## which_one; \</span></div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="preprocessor"> MACRO_ndct_count__k__cos_k(with_cos_vec); \</span></div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="preprocessor"> MACRO_ndct_free__cos_vec; \</span></div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="preprocessor">} </span><span class="comment">/* ndct_{trafo, adjoint} */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> MACRO_ndct(trafo)</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> MACRO_ndct(adjoint)</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="preprocessor">#define MACRO_nfct__lower_boundary(j,act_dim) \</span></div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor"> lb[(act_dim)] = \</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor"> LRINT(NODE((j),(act_dim)) * fftw_2N(ths->n[(act_dim)])) - ths->m; \</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor">#define MACRO_nfct_D_compute_A \</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="preprocessor"> g_hat[kg_plain[ths->d]] = f_hat[k_L] * c_phi_inv_k[ths->d]; \</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="preprocessor">#define MACRO_nfct_D_compute_T \</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="preprocessor"> f_hat[k_L] = g_hat[kg_plain[ths->d]] * c_phi_inv_k[ths->d]; \</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor">#define MACRO_init__kg \</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="preprocessor"> for (t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="preprocessor"> kg[t] = 0; \</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="preprocessor"> i = 0; \</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="preprocessor">#define MACRO_count__kg \</span></div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="preprocessor"> kg[ths->d - 1]++; \</span></div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="preprocessor"> i = ths->d - 1; \</span></div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="preprocessor"> while ((kg[i] == ths->N[i]) && (i > 0)) \</span></div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="preprocessor"> kg[i - 1]++; \</span></div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="preprocessor"> kg[i] = 0; \</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="preprocessor"> i--; \</span></div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="preprocessor">#define MACRO_update__phi_inv_k__kg_plain(what_kind, which_phi) \</span></div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="preprocessor"> for (t = i; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="preprocessor"> MACRO__c_phi_inv_k__ ## what_kind(which_phi); \</span></div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="preprocessor"> kg_plain[t+1] = kg_plain[t] * ths->n[t] + kg[t]; \</span></div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="preprocessor">#define MACRO__c_phi_inv_k__A(which_phi) \</span></div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="preprocessor"> if (kg[t] == 0) \</span></div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="preprocessor"> c_phi_inv_k[t+1] = c_phi_inv_k[t] * MACRO_ ## which_phi; \</span></div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="preprocessor"> c_phi_inv_k[t+1] = K(0.5) * c_phi_inv_k[t] * MACRO_ ## which_phi; \</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="preprocessor">#define MACRO__c_phi_inv_k__T(which_phi) \</span></div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="preprocessor"> c_phi_inv_k[t+1] = c_phi_inv_k[t] * MACRO_ ## which_phi; \</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="preprocessor">#define MACRO_nfct_D(which_one) \</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="preprocessor">static inline void D_ ## which_one (X(plan) *ths) \</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="preprocessor"> int k_L; </span><span class="comment">/* plain index */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="preprocessor"> int i, t; \</span></div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="preprocessor"> int kg[ths->d]; </span><span class="comment">/* multi index in g_hat,c_phi */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="preprocessor"> R c_phi_inv_k[ths->d+1]; </span><span class="comment">/* postfix product of PHI_HUT_INV */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="preprocessor"> int kg_plain[ths->d+1]; </span><span class="comment">/* postfix plain index */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="preprocessor"> R *g_hat, *f_hat; </span><span class="comment">/* local copy */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="preprocessor"> g_hat = ths->g_hat; \</span></div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="preprocessor"> f_hat = ths->f_hat; \</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="preprocessor"> MACRO_nfct_D_init_result_ ## which_one \</span></div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="preprocessor"> c_phi_inv_k[0] = K(1.0); \</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="preprocessor"> kg_plain[0] = 0; \</span></div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="preprocessor"> MACRO_init__kg; \</span></div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="preprocessor"> if (ths->nfct_flags & PRE_PHI_HUT) \</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="preprocessor"> for (k_L = 0; k_L < ths->N_total; k_L++) \</span></div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="preprocessor"> MACRO_update__phi_inv_k__kg_plain(which_one, with_PRE_PHI_HUT); \</span></div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="preprocessor"> MACRO_nfct_D_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="preprocessor"> MACRO_count__kg; \</span></div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="preprocessor"> } </span><span class="comment">/* for (k_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="preprocessor"> for (k_L = 0; k_L < ths->N_total; k_L++) \</span></div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="preprocessor"> MACRO_update__phi_inv_k__kg_plain(which_one,compute_PHI_HUT_INV); \</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="preprocessor"> MACRO_nfct_D_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="preprocessor"> MACRO_count__kg; \</span></div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="preprocessor"> } </span><span class="comment">/* for(k_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="preprocessor">} </span><span class="comment">/* nfct_D */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> MACRO_nfct_D(A)</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> MACRO_nfct_D(T)</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> </div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="preprocessor">#define MACRO_nfct_B_PRE_FULL_PSI_compute_A \</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="preprocessor"> (*fj) += ths->psi[ix] * g[ths->psi_index_g[ix]]; \</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="preprocessor">#define MACRO_nfct_B_PRE_FULL_PSI_compute_T \</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="preprocessor"> g[ths->psi_index_g[ix]] += ths->psi[ix] * (*fj); \</span></div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="preprocessor">#define MACRO_nfct_B_compute_A \</span></div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="preprocessor"> (*fj) += phi_tilde[ths->d] * g[lg_plain[ths->d]]; \</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="preprocessor">#define MACRO_nfct_B_compute_T \</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="preprocessor"> g[lg_plain[ths->d]] += phi_tilde[ths->d] * (*fj); \</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="preprocessor">#define MACRO_compute_lg_offset__count_lg(i0) \</span></div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="preprocessor"> </span><span class="comment">/* determine index in g-array corresponding to lb[(i0)] */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="preprocessor"> if (lb[(i0)] < 0) \</span></div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="preprocessor"> lg_offset[(i0)] = \</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="preprocessor"> (lb[(i0)] % fftw_2N(ths->n[(i0)])) + fftw_2N(ths->n[(i0)]); \</span></div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="preprocessor"> lg_offset[(i0)] = lb[(i0)] % (fftw_2N(ths->n[(i0)])); \</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="preprocessor"> if (lg_offset[(i0)] >= ths->n[(i0)]) \</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="preprocessor"> lg_offset[(i0)] = -(fftw_2N(ths->n[(i0)]) - lg_offset[(i0)]); \</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="preprocessor">#define MACRO_set__lg__to__lg_offset \</span></div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="preprocessor"> if (lg_offset[i] <= 0) \</span></div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="preprocessor"> lg[i] = -lg_offset[i]; \</span></div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="preprocessor"> count_lg[i] = -1; \</span></div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="preprocessor"> lg[i] = +lg_offset[i]; \</span></div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="preprocessor"> count_lg[i] = +1; \</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="preprocessor">#define MACRO_count__lg(dim) \</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="preprocessor"> </span><span class="comment">/* turn around if we hit one of the boundaries */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="preprocessor"> if ((lg[(dim)] == 0) || (lg[(dim)] == ths->n[(dim)]-1)) \</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="preprocessor"> count_lg[(dim)] *= -1; \</span></div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="preprocessor"> </span><span class="comment">/* move array index */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="preprocessor"> lg[(dim)] += count_lg[(dim)]; \</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="preprocessor">#define MACRO_init_lb_lg_lc \</span></div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="preprocessor"> for (i = 0; i < ths->d; i++) \</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="preprocessor"> MACRO_nfct__lower_boundary(j, i); \</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="preprocessor"> MACRO_compute_lg_offset__count_lg(i); \</span></div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="preprocessor"> MACRO_set__lg__to__lg_offset; \</span></div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="preprocessor"> </span><span class="comment">/* counter for lg */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="preprocessor"> lc[i] = 0; \</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="preprocessor"> i = 0; \</span></div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="preprocessor">#define MACRO_count__lg_lc \</span></div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="preprocessor"> MACRO_count__lg(ths->d-1); \</span></div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor"> lc[ths->d - 1]++; \</span></div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="preprocessor"> i = ths->d - 1; \</span></div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="preprocessor"> while ((lc[i] == NFCT_SUMMANDS) && (i > 0)) \</span></div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="preprocessor"> lc[i - 1]++; \</span></div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="preprocessor"> lc[i] = 0; \</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="preprocessor"> </span><span class="comment">/* ansonsten lg[i-1] verschieben */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="preprocessor"> MACRO_count__lg(i - 1); \</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="preprocessor"> </span><span class="comment">/* lg[i] = anfangswert */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="preprocessor"> MACRO_set__lg__to__lg_offset; \</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="preprocessor"> i--; \</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor">#define MACRO_update_phi_tilde_lg_plain(which_one, which_psi) \</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="preprocessor"> for (t = i; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="preprocessor"> MACRO__phi_tilde__ ## which_one(which_psi); \</span></div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor"> lg_plain[t+1] = lg_plain[t] * ths->n[t] + lg[t]; \</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor">#define MACRO__phi_tilde__A(which_psi) \</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="preprocessor"> phi_tilde[t+1] = phi_tilde[t] * MACRO_ ## which_psi; \</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="preprocessor">#define MACRO__phi_tilde__T(which_psi) \</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="preprocessor"> if(lg[t] == 0 || lg[t] == ths->n[t] - 1) \</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor"> phi_tilde[t+1] = phi_tilde[t] * MACRO_ ## which_psi; \</span></div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor"> phi_tilde[t+1] = K(0.5) * phi_tilde[t] * MACRO_ ## which_psi; \</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="preprocessor">#define MACRO_nfct_B(which_one) \</span></div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="preprocessor">static inline void B_ ## which_one (nfct_plan *ths) \</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="preprocessor">{ </span><span class="comment">/* MACRO_nfct_B */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="preprocessor"> int lb[ths->d]; </span><span class="comment">/* multi band with respect to x_j */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="preprocessor"> int j, t, i; </span><span class="comment">/* index nodes, help vars */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="preprocessor"> int lprod, l_L, ix; </span><span class="comment">/* index one row of B */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="preprocessor"> int lc[ths->d]; </span><span class="comment">/* multi index 0<=lc<2m+2 */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor"> int lg[ths->d]; </span><span class="comment">/* real index of g in array */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor"> int lg_offset[ths->d]; </span><span class="comment">/* offset in g according to u */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor"> int count_lg[ths->d]; </span><span class="comment">/* count summands (2m+2) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor"> int lg_plain[ths->d+1]; </span><span class="comment">/* index of g in multi_array */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor"> R *f, *g; </span><span class="comment">/* local copy */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="preprocessor"> R phi_tilde[ths->d+1]; </span><span class="comment">/* holds values for psi */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="preprocessor"> R *fj; </span><span class="comment">/* pointer to final result */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor"> f = ths->f; g = ths->g; \</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="preprocessor"> MACRO_nfct_B_init_result_ ## which_one \</span></div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="preprocessor"> </span><span class="comment">/* both flags are set */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="preprocessor"> if ((ths->nfct_flags & PRE_PSI)&&(ths->nfct_flags & PRE_FULL_PSI)) \</span></div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="preprocessor"> for (ix = 0, j = 0, fj = &f[0]; j < ths->M_total; j++, fj += 1) \</span></div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor"> for (l_L = 0; l_L < ths->psi_index_f[j]; l_L++, ix++) \</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="preprocessor"> MACRO_nfct_B_PRE_FULL_PSI_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="preprocessor"> phi_tilde[0] = K(1.0); \</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="preprocessor"> lg_plain[0] = 0; \</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="preprocessor"> for (t = 0, lprod = 1; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="preprocessor"> lprod *= NFCT_SUMMANDS; \</span></div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor"> </span><span class="comment">/* PRE_PSI flag is set */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="preprocessor"> if (ths->nfct_flags & PRE_PSI) \</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor"> for (j = 0, fj = &f[0]; j < ths->M_total; j++, fj += 1) \</span></div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="preprocessor"> MACRO_init_lb_lg_lc; \</span></div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="preprocessor"> for (l_L = 0; l_L < lprod; l_L++) \</span></div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="preprocessor"> MACRO_update_phi_tilde_lg_plain(which_one, with_PRE_PSI); \</span></div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="preprocessor"> MACRO_nfct_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="preprocessor"> MACRO_count__lg_lc; \</span></div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="preprocessor"> } </span><span class="comment">/* for(l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="preprocessor"> </span><span class="comment">/* no PSI flag is set */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> <span class="preprocessor"> for (j = 0, fj = &f[0]; j < ths->M_total; j++, fj += 1) \</span></div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="preprocessor"> MACRO_init_lb_lg_lc; \</span></div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="preprocessor"> for (l_L = 0; l_L < lprod; l_L++) \</span></div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="preprocessor"> MACRO_update_phi_tilde_lg_plain(which_one,compute_PSI); \</span></div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="preprocessor"> MACRO_nfct_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="preprocessor"> MACRO_count__lg_lc; \</span></div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="preprocessor"> } </span><span class="comment">/* for (l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="preprocessor"> } </span><span class="comment">/* for (j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="preprocessor"> } </span><span class="comment">/* else (PRE_PSI && FULL_PRE_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="preprocessor">} </span><span class="comment">/* nfct_B */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> MACRO_nfct_B(A)</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> MACRO_nfct_B(T)</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> </div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="comment">/* more memory, but faster */</span></div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="preprocessor">#define MACRO_nfct_full_psi(which_one) \</span></div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="preprocessor">static inline void full_psi__ ## which_one(nfct_plan *ths) \</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="preprocessor"> int t, i; </span><span class="comment">/* index over all dimensions */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="preprocessor"> int j; </span><span class="comment">/* node index */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="preprocessor"> int l_L; </span><span class="comment">/* plain index 0 <= l_L < lprod */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="preprocessor"> int lc[ths->d]; </span><span class="comment">/* multi index 0<=lj<u+o+1 */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="preprocessor"> int lg_plain[ths->d+1]; </span><span class="comment">/* postfix plain index */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="preprocessor"> int count_lg[ths->d]; \</span></div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <span class="preprocessor"> int lg_offset[ths->d]; \</span></div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor"> int lg[ths->d]; \</span></div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="preprocessor"> int lprod; </span><span class="comment">/* 'bandwidth' of matrix B */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> <span class="preprocessor"> int lb[ths->d]; </span><span class="comment">/* depends on x_j */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="preprocessor"> R phi_tilde[ths->d+1]; \</span></div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="preprocessor"> R eps = ths->nfct_full_psi_eps; \</span></div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="preprocessor"> int *index_g, *index_f; \</span></div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> <span class="preprocessor"> R *new_psi; \</span></div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="preprocessor"> int ix, ix_old, size_psi; \</span></div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="preprocessor"> phi_tilde[0] = K(1.0); \</span></div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="preprocessor"> lg_plain[0] = 0; \</span></div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="preprocessor"> if (ths->nfct_flags & PRE_PSI) \</span></div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="preprocessor"> size_psi = ths->M_total; \</span></div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="preprocessor"> index_f = (int*)Y(malloc)(ths->M_total * sizeof(int)); \</span></div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="preprocessor"> index_g = (int*)Y(malloc)(size_psi * sizeof(int)); \</span></div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="preprocessor"> new_psi = (R*)Y(malloc)(size_psi * sizeof(R)); \</span></div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="preprocessor"> for (t = 0,lprod = 1; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="preprocessor"> lprod *= NFCT_SUMMANDS; \</span></div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="preprocessor"> eps *= nfct_phi(ths, K(0.0), t); \</span></div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="preprocessor"> for (ix = 0, ix_old = 0, j = 0; j < ths->M_total; j++) \</span></div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="preprocessor"> MACRO_init_lb_lg_lc; \</span></div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="preprocessor"> for (l_L = 0; l_L < lprod; l_L++) \</span></div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="preprocessor"> MACRO_update_phi_tilde_lg_plain(which_one, with_PRE_PSI); \</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="preprocessor"> if (phi_tilde[ths->d] > eps) \</span></div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="preprocessor"> index_g[ix] = lg_plain[ths->d]; \</span></div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="preprocessor"> new_psi[ix] = phi_tilde[ths->d]; \</span></div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="preprocessor"> ix++; \</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor"> if (ix == size_psi) \</span></div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="preprocessor"> size_psi += ths->M_total; \</span></div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> <span class="preprocessor"> index_g = (int*)realloc(index_g, size_psi * sizeof(int)); \</span></div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="preprocessor"> new_psi = (R*)realloc(new_psi, size_psi * sizeof(R)); \</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="preprocessor"> MACRO_count__lg_lc; \</span></div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="preprocessor"> } </span><span class="comment">/* for (l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="preprocessor"> index_f[j] = ix - ix_old; \</span></div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="preprocessor"> ix_old = ix; \</span></div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="preprocessor"> Y(free)(ths->psi); \</span></div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="preprocessor"> size_psi = ix; \</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="preprocessor"> ths->size_psi = size_psi; \</span></div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="preprocessor"> index_g = (int*)realloc(index_g, size_psi * sizeof(int)); \</span></div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="preprocessor"> new_psi = (R*)realloc(new_psi, size_psi * sizeof(R)); \</span></div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="preprocessor"> ths->psi = new_psi; \</span></div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="preprocessor"> ths->psi_index_g = index_g; \</span></div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="preprocessor"> ths->psi_index_f = index_f; \</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor"> } </span><span class="comment">/* if(PRE_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> MACRO_nfct_full_psi(A)</div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> MACRO_nfct_full_psi(T)</div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> </div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="comment">/* user routines */</span></div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> </div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="keywordtype">void</span> X(trafo)(X(plan) *ths)</div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> {</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="comment">/* use ths->my_fftw_r2r_plan */</span></div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> ths->g_hat = ths->g1;</div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> ths->g = ths->g2;</div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> </div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="comment">/* form \f$ \hat g_k = \frac{\hat f_k}{c_k\left(\phi\right)} \text{ for }</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="comment"> * k \in I_N \f$ */</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> TIC(0)</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> D_A(ths);</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> TOC(0)</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> </div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="comment">/* Compute by d-variate discrete Fourier transform</span></div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="comment"> * \f$ g_l = \sum_{k \in I_N} \hat g_k {\rm e}^{-2\pi {\rm i} \frac{kl}{n}}</span></div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="comment"> * \text{ for } l \in I_n \f$ */</span></div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> TIC(1)</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> Z(execute)(ths->my_fftw_r2r_plan);</div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> TOC(1)</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> </div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> if (ths->nfct_flags & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> full_psi__A(ths);</div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> </div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> <span class="comment">/* Set \f$ f_j = \sum_{l \in I_n,m(x_j)} g_l \psi\left(x_j-\frac{l}{n}\right)</span></div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="comment"> * \text{ for } j=0,\hdots,M-1 \f$ */</span></div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> TIC(2)</div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> B_A(ths);</div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> TOC(2)</div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> </div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> if (ths->nfct_flags & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> {</div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> Y(free)(ths->psi_index_g);</div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> Y(free)(ths->psi_index_f);</div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> }</div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> } <span class="comment">/* nfct_trafo */</span></div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> </div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="keywordtype">void</span> X(adjoint)(X(plan) *ths)</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> {</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="comment">/* use ths->my_fftw_plan */</span></div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> ths->g_hat = ths->g2;</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> ths->g = ths->g1;</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> </div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="keywordflow">if</span> (ths->nfct_flags & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> full_psi__T(ths);</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> </div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <span class="comment">/* Set \f$ g_l = \sum_{j=0}^{M-1} f_j \psi\left(x_j-\frac{l}{n}\right)</span></div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> <span class="comment"> * \text{ for } l \in I_n,m(x_j) \f$ */</span></div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> TIC(2)</div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> B_T(ths);</div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> TOC(2)</div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> </div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> if (ths->nfct_flags & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> {</div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> Y(free)(ths->psi_index_g);</div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> Y(free)(ths->psi_index_f);</div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> }</div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> </div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> <span class="comment">/* Compute by d-variate discrete cosine transform</span></div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> <span class="comment"> * \f$ \hat g_k = \sum_{l \in I_n} g_l {\rm e}^{-2\pi {\rm i} \frac{kl}{n}}</span></div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> <span class="comment"> * \text{ for } k \in I_N\f$ */</span></div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> TIC(1)</div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> Z(execute)(ths->my_fftw_r2r_plan);</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> TOC(1)</div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> </div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="comment">/* Form \f$ \hat f_k = \frac{\hat g_k}{c_k\left(\phi\right)} \text{ for }</span></div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="comment"> * k \in I_N \f$ */</span></div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> TIC(0)</div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> D_T(ths);</div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> TOC(0)</div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> </div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> } <span class="comment">/* nfct_adjoint */</span></div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> </div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> static inline <span class="keywordtype">void</span> precompute_phi_hut(X(plan) *ths)</div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> {</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="keywordtype">int</span> kg[ths->d]; <span class="comment">/* index over all frequencies */</span></div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="keywordtype">int</span> t; <span class="comment">/* index over all dimensions */</span></div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> </div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> ths->c_phi_inv = (R**)Y(malloc)(ths->d * <span class="keyword">sizeof</span>(R*));</div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> </div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> <span class="keywordflow">for</span> (t = 0; t < ths->d; t++)</div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> {</div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> ths->c_phi_inv[t] = (R*)Y(malloc)(ths->N[t] * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> </div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> <span class="keywordflow">for</span> (kg[t] = 0; kg[t] < ths->N[t]; kg[t]++)</div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> {</div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> ths->c_phi_inv[t][kg[t]] = MACRO_compute_PHI_HUT_INV;</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> }</div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> }</div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> } <span class="comment">/* nfct_phi_hut */</span></div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> </div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="keywordtype">void</span> X(precompute_psi)(X(plan) *ths)</div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> {</div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> <span class="keywordtype">int</span> t; <span class="comment">/* index over all dimensions */</span></div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> <span class="keywordtype">int</span> j; <span class="comment">/* index over all nodes */</span></div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> <span class="keywordtype">int</span> lc[ths->d]; <span class="comment">/* index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="keywordtype">int</span> lb[ths->d]; <span class="comment">/* depends on x_j */</span></div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> </div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> <span class="keywordflow">for</span> (t = 0; t < ths->d; t++)</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> {</div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="keywordflow">for</span> (j = 0; j < ths->M_total; j++)</div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> {</div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> MACRO_nfct__lower_boundary(j, t);</div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> <span class="keywordflow">for</span>(lc[t] = 0; lc[t] < NFCT_SUMMANDS; lc[t]++)</div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> ths->psi[(j * ths->d + t) * NFCT_SUMMANDS + lc[t]] = MACRO_compute_PSI;</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> } <span class="comment">/* for (j) */</span></div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> } <span class="comment">/* for (t) */</span></div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> } <span class="comment">/* nfct_precompute_psi */</span></div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> </div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> init_help(X(plan) *ths)</div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> {</div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> <span class="keywordtype">int</span> t; <span class="comment">/* index over all dimensions */</span></div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> </div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> ths->N_total = prod_int(ths->N, ths->d);</div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> ths->sigma = (R*)Y(malloc)(ths->d * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> </div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> <span class="keywordflow">for</span> (t = 0; t < ths->d; t++)</div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> ths->sigma[t] = ((R)(ths->n[t] - 1)) / ths->N[t];</div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> </div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> <span class="comment">/* Assign r2r transform kinds for each dimension */</span></div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> ths->r2r_kind = (Z(r2r_kind)*)Y(malloc)(ths->d * <span class="keyword">sizeof</span> (Z(r2r_kind)));</div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> <span class="keywordflow">for</span> (t = 0; t < ths->d; t++)</div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> ths->r2r_kind[t] = FFTW_REDFT00;</div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> </div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> NFCT_WINDOW_HELP_INIT;</div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> </div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> if (ths->nfct_flags & MALLOC_X)</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> ths->x = (R*)Y(malloc)(ths->d * ths->M_total * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> </div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> <span class="keywordflow">if</span> (ths->nfct_flags & MALLOC_F_HAT)</div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> ths->f_hat = (R*)Y(malloc)(ths->N_total * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> </div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> <span class="keywordflow">if</span> (ths->nfct_flags & MALLOC_F)</div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> ths->f = (R*)Y(malloc)(ths->M_total * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> </div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> <span class="keywordflow">if</span> (ths->nfct_flags & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> precompute_phi_hut(ths);</div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> </div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> <span class="comment">/* NO FFTW_MALLOC HERE */</span></div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> <span class="keywordflow">if</span> (ths->nfct_flags & PRE_PSI)</div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> {</div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> ths->psi =</div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> (R*)Y(malloc)(ths->M_total * ths->d * NFCT_SUMMANDS * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> </div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="comment">/* Set default for full_psi_eps */</span></div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> ths->nfct_full_psi_eps = POW(K(10.0), K(-10.0));</div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> }</div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> </div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> <span class="keywordflow">if</span> (ths->nfct_flags & FFTW_INIT)</div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> {</div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> ths->g1 =</div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> (R*)Y(malloc)(prod_int(ths->n, ths->d) * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> </div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> <span class="keywordflow">if</span> (ths->nfct_flags & FFT_OUT_OF_PLACE)</div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> ths->g2 =</div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> (R*) Y(malloc)(prod_int(ths->n, ths->d) * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> ths->g2 = ths->g1;</div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> </div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> ths->my_fftw_r2r_plan =</div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> Z(plan_r2r)(ths->d, ths->n, ths->g1, ths->g2, ths->r2r_kind,</div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> ths->fftw_flags);</div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> }</div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> </div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> ths->mv_trafo = (void (*) (<span class="keywordtype">void</span>* ))X(trafo);</div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> ths->mv_adjoint = (void (*) (<span class="keywordtype">void</span>* ))X(adjoint);</div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> }</div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> </div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> <span class="keywordtype">void</span> X(init)(X(plan) *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> {</div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> </div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> ths->d = d;</div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> ths->M_total = M_total;</div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> ths->N = (<span class="keywordtype">int</span>*) Y(malloc)(ths->d * <span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> </div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> <span class="keywordflow">for</span> (t = 0;t < d; t++)</div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> ths->N[t] = N[t];</div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> </div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> ths->n = (<span class="keywordtype">int</span>*) Y(malloc)(ths->d * <span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> </div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="keywordflow">for</span> (t = 0; t < d; t++)</div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> ths->n[t] = fftw_2N(Y(next_power_of_2)(ths->N[t]));</div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> </div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> <span class="comment">/* Was soll dieser Ausdruck machen? Es handelt sich um eine Ganzzahl!</span></div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> <span class="comment"></span></div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> <span class="comment"> WINDOW_HELP_ESTIMATE_m;</span></div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> <span class="comment">*/</span></div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> ths->nfct_flags = NFCT_DEFAULT_FLAGS;</div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> ths->fftw_flags = FFTW_DEFAULT_FLAGS;</div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> </div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> init_help(ths);</div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> }</div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> </div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> <span class="comment">/* Was macht diese Funktion. Wird sie gebraucht? Bei NFST ist sie auch in</span></div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> <span class="comment"> * nfft3.h deklariert.</span></div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="comment">void nfct_init_m(nfct_plan *ths, int d, int *N, int M_total, int m)</span></div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> <span class="comment">{</span></div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> <span class="comment"> int t, n[d];</span></div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> <span class="comment"></span></div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="comment"> for(t = 0; t < d; t++)</span></div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> <span class="comment"> n[t] = fftw_2N(X(next_power_of_2)(N[t]));</span></div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> <span class="comment"></span></div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <span class="comment"> nfct_init_guru(ths, d, N, M_total, n, m, NFCT_DEFAULT_FLAGS, FFTW_DEFAULT_FLAGS);</span></div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> <span class="comment">}</span></div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> <span class="comment">*/</span></div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> </div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> <span class="keywordtype">void</span> X(init_guru)(X(plan) *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M_total, <span class="keywordtype">int</span> *n, <span class="keywordtype">int</span> m,</div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> <span class="keywordtype">unsigned</span> nfct_flags, <span class="keywordtype">unsigned</span> fftw_flags)</div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> {</div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> <span class="keywordtype">int</span> t; <span class="comment">/* index over all dimensions */</span></div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> </div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> ths->d = d;</div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> ths->M_total = M_total;</div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> </div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> ths->N = (<span class="keywordtype">int</span>*)Y(malloc)(ths->d * <span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> </div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="keywordflow">for</span> (t = 0; t < d; t++)</div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> ths->N[t] = N[t];</div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> </div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> ths->n = (<span class="keywordtype">int</span>*)Y(malloc)(ths->d * <span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> </div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> <span class="keywordflow">for</span> (t = 0; t < d; t++)</div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> ths->n[t] = n[t];</div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> </div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> ths->m = m;</div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> </div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> ths->nfct_flags = nfct_flags;</div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> ths->fftw_flags = fftw_flags;</div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> </div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> init_help(ths);</div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> }</div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> </div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="keywordtype">void</span> X(init_1d)(X(plan) *ths, <span class="keywordtype">int</span> N0, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> {</div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="keywordtype">int</span> N[1];</div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> </div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> N[0] = N0;</div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> X(init)(ths, 1, N, M_total);</div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> }</div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> </div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="keywordtype">void</span> X(init_2d)(X(plan) *ths, <span class="keywordtype">int</span> N0, <span class="keywordtype">int</span> N1, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> {</div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> <span class="keywordtype">int</span> N[2];</div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> </div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> N[0] = N0;</div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> N[1] = N1;</div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> X(init)(ths, 2, N, M_total);</div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> }</div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> </div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> <span class="keywordtype">void</span> X(init_3d)(X(plan) *ths, <span class="keywordtype">int</span> N0, <span class="keywordtype">int</span> N1, <span class="keywordtype">int</span> N2, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> {</div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> <span class="keywordtype">int</span> N[3];</div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> </div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> N[0] = N0;</div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> N[1] = N1;</div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> N[2] = N2;</div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> X(init)(ths, 3, N, M_total);</div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> }</div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> </div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> <span class="keywordtype">void</span> X(finalize)(X(plan) *ths)</div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> {</div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> <span class="keywordtype">int</span> t; <span class="comment">/* dimension index*/</span></div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> </div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> <span class="keywordflow">if</span> (ths->nfct_flags & FFTW_INIT)</div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> {</div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> Z(destroy_plan)(ths->my_fftw_r2r_plan);</div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> </div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> <span class="keywordflow">if</span> (ths->nfct_flags & FFT_OUT_OF_PLACE)</div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> Y(free)(ths->g2);</div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> </div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> Y(free)(ths->g1);</div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> }</div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> </div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> <span class="comment">/* NO FFTW_FREE HERE */</span></div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> <span class="keywordflow">if</span> (ths->nfct_flags & PRE_PSI)</div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> {</div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> Y(free)(ths->psi);</div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> }</div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> </div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> <span class="keywordflow">if</span> (ths->nfct_flags & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> {</div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> <span class="keywordflow">for</span> (t = 0; t < ths->d; t++)</div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> Y(free)(ths->c_phi_inv[t]);</div>
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> Y(free)(ths->c_phi_inv);</div>
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> }</div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> </div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="keywordflow">if</span> (ths->nfct_flags & MALLOC_F)</div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> Y(free)(ths->f);</div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> </div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> <span class="keywordflow">if</span>(ths->nfct_flags & MALLOC_F_HAT)</div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> Y(free)(ths->f_hat);</div>
-<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> </div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> <span class="keywordflow">if</span> (ths->nfct_flags & MALLOC_X)</div>
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> Y(free)(ths->x);</div>
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> </div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> WINDOW_HELP_FINALIZE;</div>
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> </div>
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> Y(free)(ths->N);</div>
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> Y(free)(ths->n);</div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> Y(free)(ths->sigma);</div>
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> </div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> Y(free)(ths->r2r_kind);</div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> } <span class="comment">/* nfct_finalize */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft3_8h.html b/doc/api/html/nfft3_8h.html
deleted file mode 100644
index 6d1f936..0000000
--- a/doc/api/html/nfft3_8h.html
+++ /dev/null
@@ -1,1543 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft3.h File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#nested-classes">Data Structures</a> |
-<a href="#define-members">Macros</a> |
-<a href="#typedef-members">Typedefs</a> |
-<a href="#func-members">Functions</a> |
-<a href="#var-members">Variables</a> </div>
- <div class="headertitle">
-<div class="title">nfft3.h File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="textblock"><code>#include "nfft3conf.h"</code><br/>
-<code>#include <fftw3.h></code><br/>
-</div>
-<p><a href="nfft3_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__complex.html">nfftf_mv_plan_complex</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__double.html">nfftf_mv_plan_double</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html">nfftf_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__double.html">nfft_mv_plan_double</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html">nfft_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__complex.html">nfftl_mv_plan_complex</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__double.html">nfftl_mv_plan_double</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html">nfftl_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html">nfctf_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html">nfct_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html">nfctl_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html">nfstf_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html">nfst_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html">nfstl_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html">nnfftf_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html">nnfft_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html">nnfftl_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html">nsfftf_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html">nsfft_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html">nsfftl_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__2d1d__plan.html">mrif_inh_2d1d_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__3d__plan.html">mrif_inh_3d_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__2d1d__plan.html">mril_inh_2d1d_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__3d__plan.html">mril_inh_3d_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html">nfsftf_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html">nfsft_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html">nfsftl_plan</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html">nfsoftf_plan_</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html">nfsoft_plan_</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html">nfsoftl_plan_</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html">solverf_plan_complex</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html">solverf_plan_double</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html">solver_plan_double</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html">solverl_plan_complex</a></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html">solverl_plan_double</a></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:ae517f6bde0ab33b87890bb20a018546a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae517f6bde0ab33b87890bb20a018546a"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFFT_CONCAT</b>(prefix, name) prefix ## name</td></tr>
-<tr class="memitem:a3aee7f9abb803d4208e483d24ce23847"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3aee7f9abb803d4208e483d24ce23847"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFFT_EXTERN</b> extern</td></tr>
-<tr class="memitem:a0d1eb31c2f64e41fa0399b1eb7b5ddd4"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a0d1eb31c2f64e41fa0399b1eb7b5ddd4">MACRO_MV_PLAN</a>(RC)</td></tr>
-<tr class="memdesc:a0d1eb31c2f64e41fa0399b1eb7b5ddd4"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <a href="#a0d1eb31c2f64e41fa0399b1eb7b5ddd4"></a><br/></td></tr>
-<tr class="memitem:abb27e11cf00ef4d6c30c8bcedf7da849"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abb27e11cf00ef4d6c30c8bcedf7da849"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFFT_MANGLE_DOUBLE</b>(name) NFFT_CONCAT(nfft_, name)</td></tr>
-<tr class="memitem:acace1e2cd22c39b9b6f0fee89315e092"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acace1e2cd22c39b9b6f0fee89315e092"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFFT_MANGLE_FLOAT</b>(name) NFFT_CONCAT(nfftf_, name)</td></tr>
-<tr class="memitem:a2cf83ec3ae466fbda3fa01f5cf6263fe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2cf83ec3ae466fbda3fa01f5cf6263fe"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFFT_MANGLE_LONG_DOUBLE</b>(name) NFFT_CONCAT(nfftl_, name)</td></tr>
-<tr class="memitem:a038f615fdd7fd2ef683924657745121a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a038f615fdd7fd2ef683924657745121a"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFFT_DEFINE_API</b>(X, Y, R, C)</td></tr>
-<tr class="memitem:ada3a356fdaf5840f98374a0a7aaf3e9c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada3a356fdaf5840f98374a0a7aaf3e9c"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PRE_PHI_HUT</b> (1U<< 0)</td></tr>
-<tr class="memitem:a01ebac2d2071639df189f083fc9f24eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a01ebac2d2071639df189f083fc9f24eb"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FG_PSI</b> (1U<< 1)</td></tr>
-<tr class="memitem:abb1ad048b695cb806baf010c5d1b2caf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abb1ad048b695cb806baf010c5d1b2caf"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PRE_LIN_PSI</b> (1U<< 2)</td></tr>
-<tr class="memitem:a9c5a5ab61009a801082897ca40a1658c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9c5a5ab61009a801082897ca40a1658c"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PRE_FG_PSI</b> (1U<< 3)</td></tr>
-<tr class="memitem:a959463a5c7723ccef5057ddcb784b40c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a959463a5c7723ccef5057ddcb784b40c"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PRE_PSI</b> (1U<< 4)</td></tr>
-<tr class="memitem:a7ad8a7e19519b16340dabec48899c6a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ad8a7e19519b16340dabec48899c6a4"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PRE_FULL_PSI</b> (1U<< 5)</td></tr>
-<tr class="memitem:a353185384f87de0dc4320a82652ef724"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a353185384f87de0dc4320a82652ef724"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>MALLOC_X</b> (1U<< 6)</td></tr>
-<tr class="memitem:a02d52cb02b6cfdbc3e4d5fd4de1aef9e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02d52cb02b6cfdbc3e4d5fd4de1aef9e"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>MALLOC_F_HAT</b> (1U<< 7)</td></tr>
-<tr class="memitem:aa7b5098f4136080bbe0dd989973e2a69"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7b5098f4136080bbe0dd989973e2a69"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>MALLOC_F</b> (1U<< 8)</td></tr>
-<tr class="memitem:a9193f768d5839892d0e303080c370eaf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9193f768d5839892d0e303080c370eaf"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FFT_OUT_OF_PLACE</b> (1U<< 9)</td></tr>
-<tr class="memitem:ad3fe6867a3351441c6f44dd5a3746f5b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3fe6867a3351441c6f44dd5a3746f5b"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FFTW_INIT</b> (1U<< 10)</td></tr>
-<tr class="memitem:a4915d42afc8200ce7e0bf3c60f5a5164"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4915d42afc8200ce7e0bf3c60f5a5164"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFFT_SORT_NODES</b> (1U<< 11)</td></tr>
-<tr class="memitem:a0dc58c2f9ab115527fce4553e523fe65"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0dc58c2f9ab115527fce4553e523fe65"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFFT_OMP_BLOCKWISE_ADJOINT</b> (1U<<12)</td></tr>
-<tr class="memitem:a44c85197c6bdcf4b632aeff5e94d5329"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a44c85197c6bdcf4b632aeff5e94d5329"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PRE_ONE_PSI</b> (PRE_LIN_PSI| PRE_FG_PSI| PRE_PSI| PRE_FULL_PSI)</td></tr>
-<tr class="memitem:a8aca2e82cc4aad289d766e9081db2342"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8aca2e82cc4aad289d766e9081db2342"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFCT_MANGLE_DOUBLE</b>(name) NFFT_CONCAT(nfct_, name)</td></tr>
-<tr class="memitem:aae454c5f4fb644fc43fcbcb38aa2ad21"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae454c5f4fb644fc43fcbcb38aa2ad21"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFCT_MANGLE_FLOAT</b>(name) NFFT_CONCAT(nfctf_, name)</td></tr>
-<tr class="memitem:ac5f221d2bdedda863256ad71afb59aa8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5f221d2bdedda863256ad71afb59aa8"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFCT_MANGLE_LONG_DOUBLE</b>(name) NFFT_CONCAT(nfctl_, name)</td></tr>
-<tr class="memitem:acc3e466d456fb09b49d1419c700b17a8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc3e466d456fb09b49d1419c700b17a8"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFCT_DEFINE_API</b>(X, Y, R, C)</td></tr>
-<tr class="memitem:a31de74e769995b389a073cc1a11a635d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a31de74e769995b389a073cc1a11a635d"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFST_MANGLE_DOUBLE</b>(name) NFFT_CONCAT(nfst_, name)</td></tr>
-<tr class="memitem:a2179856efcede20ea65f4258a0d0d733"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2179856efcede20ea65f4258a0d0d733"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFST_MANGLE_FLOAT</b>(name) NFFT_CONCAT(nfstf_, name)</td></tr>
-<tr class="memitem:ac580ff2588b8c11fe4afff54283f59f5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac580ff2588b8c11fe4afff54283f59f5"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFST_MANGLE_LONG_DOUBLE</b>(name) NFFT_CONCAT(nfstl_, name)</td></tr>
-<tr class="memitem:a903d25a4862e94e5f89cda05c6e37b91"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a903d25a4862e94e5f89cda05c6e37b91"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFST_DEFINE_API</b>(X, Y, R, C)</td></tr>
-<tr class="memitem:a47809430feb060b7a83995abd8a1463e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a47809430feb060b7a83995abd8a1463e"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NNFFT_MANGLE_DOUBLE</b>(name) NFFT_CONCAT(nnfft_, name)</td></tr>
-<tr class="memitem:a3ad081c46c1cab2db96655b39606c35d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3ad081c46c1cab2db96655b39606c35d"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NNFFT_MANGLE_FLOAT</b>(name) NFFT_CONCAT(nnfftf_, name)</td></tr>
-<tr class="memitem:a42846731d87023ee66232e72c613ad41"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a42846731d87023ee66232e72c613ad41"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NNFFT_MANGLE_LONG_DOUBLE</b>(name) NFFT_CONCAT(nnfftl_, name)</td></tr>
-<tr class="memitem:a8700e802f404ffbc5c550435fc424cad"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8700e802f404ffbc5c550435fc424cad"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NNFFT_DEFINE_API</b>(X, Y, Z, R, C)</td></tr>
-<tr class="memitem:abfc80597fb6dcd28f3b9728bd7082642"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abfc80597fb6dcd28f3b9728bd7082642"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>MALLOC_V</b> (1U<< 11)</td></tr>
-<tr class="memitem:adf3e9bfac19f91b9ddc0b4d7e6a6d058"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adf3e9bfac19f91b9ddc0b4d7e6a6d058"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NSFFT_MANGLE_DOUBLE</b>(name) NFFT_CONCAT(nsfft_, name)</td></tr>
-<tr class="memitem:a3c980c7d23c9e5613e89f6e9eeb61522"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c980c7d23c9e5613e89f6e9eeb61522"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NSFFT_MANGLE_FLOAT</b>(name) NFFT_CONCAT(nsfftf_, name)</td></tr>
-<tr class="memitem:abf287fadc0bd736d90c31cbf94403765"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abf287fadc0bd736d90c31cbf94403765"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NSFFT_MANGLE_LONG_DOUBLE</b>(name) NFFT_CONCAT(nsfftl_, name)</td></tr>
-<tr class="memitem:a84826a12df920d845086a31bd4256c7b"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><b>NSFFT_DEFINE_API</b>(X, Y, Z, R, C)</td></tr>
-<tr class="memitem:a3a5a1f8be42adf0575f0e0c4b8e0a32a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3a5a1f8be42adf0575f0e0c4b8e0a32a"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NSDFT</b> (1U<< 12)</td></tr>
-<tr class="memitem:aa0c7f7ad1ad1f371eef969d543b57fb8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0c7f7ad1ad1f371eef969d543b57fb8"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>MRI_MANGLE_DOUBLE</b>(name) NFFT_CONCAT(mri_, name)</td></tr>
-<tr class="memitem:a73bcb00b7f86d1862cd1fb121e3d5924"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a73bcb00b7f86d1862cd1fb121e3d5924"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>MRI_MANGLE_FLOAT</b>(name) NFFT_CONCAT(mrif_, name)</td></tr>
-<tr class="memitem:a2af03d945f2809254dfda35ce8ce933f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2af03d945f2809254dfda35ce8ce933f"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>MRI_MANGLE_LONG_DOUBLE</b>(name) NFFT_CONCAT(mril_, name)</td></tr>
-<tr class="memitem:a50af9dcbe46f6cc4fee5141873098415"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><b>MRI_DEFINE_API</b>(X, Z, R, C)</td></tr>
-<tr class="memitem:aadd481b947f7d9c24f54b386e3579da1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aadd481b947f7d9c24f54b386e3579da1"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_MANGLE_DOUBLE</b>(name) NFFT_CONCAT(nfsft_, name)</td></tr>
-<tr class="memitem:a02786180402d502acfa410bc0c0f5c6b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02786180402d502acfa410bc0c0f5c6b"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_MANGLE_FLOAT</b>(name) NFFT_CONCAT(nfsftf_, name)</td></tr>
-<tr class="memitem:ab05ba2d6ff05bf13a77a0a26d0adedb2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab05ba2d6ff05bf13a77a0a26d0adedb2"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_MANGLE_LONG_DOUBLE</b>(name) NFFT_CONCAT(nfsftl_, name)</td></tr>
-<tr class="memitem:a80ade6852f7c1215d2ebc936a734250e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80ade6852f7c1215d2ebc936a734250e"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_DEFINE_API</b>(X, Z, R, C)</td></tr>
-<tr class="memitem:a65036f479a7421863956c02aa78bc9be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65036f479a7421863956c02aa78bc9be"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_NORMALIZED</b> (1U << 0)</td></tr>
-<tr class="memitem:aba029560a4a506c8f2dad185511db827"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba029560a4a506c8f2dad185511db827"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_USE_NDFT</b> (1U << 1)</td></tr>
-<tr class="memitem:a6b9eed1e7bcf862dcc3111509075fcbb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6b9eed1e7bcf862dcc3111509075fcbb"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_USE_DPT</b> (1U << 2)</td></tr>
-<tr class="memitem:a02e4313d15b24c79e6802f853d452454"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02e4313d15b24c79e6802f853d452454"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_MALLOC_X</b> (1U << 3)</td></tr>
-<tr class="memitem:ab76dcf8db948f18cc87403dac804fc68"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab76dcf8db948f18cc87403dac804fc68"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_MALLOC_F_HAT</b> (1U << 5)</td></tr>
-<tr class="memitem:af3bc3ab774cda0c1c765e97066893d30"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af3bc3ab774cda0c1c765e97066893d30"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_MALLOC_F</b> (1U << 6)</td></tr>
-<tr class="memitem:ac8a292845f0bdec6b0d8ef6eb693a00e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac8a292845f0bdec6b0d8ef6eb693a00e"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_PRESERVE_F_HAT</b> (1U << 7)</td></tr>
-<tr class="memitem:acf7d73753b74dbf148167c3d46226f09"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf7d73753b74dbf148167c3d46226f09"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_PRESERVE_X</b> (1U << 8)</td></tr>
-<tr class="memitem:a45962e763c2c551c1ea764a68b686b5c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a45962e763c2c551c1ea764a68b686b5c"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_PRESERVE_F</b> (1U << 9)</td></tr>
-<tr class="memitem:aa808899fc4db422c7b23470e6baad904"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa808899fc4db422c7b23470e6baad904"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_DESTROY_F_HAT</b> (1U << 10)</td></tr>
-<tr class="memitem:a6f22df0b292db920d795b3e3569181f2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6f22df0b292db920d795b3e3569181f2"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_DESTROY_X</b> (1U << 11)</td></tr>
-<tr class="memitem:a2b32e2eabd33bf0886f6df45365d04c0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b32e2eabd33bf0886f6df45365d04c0"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_DESTROY_F</b> (1U << 12)</td></tr>
-<tr class="memitem:a9ed987164acf6e362ab2878506fbca95"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ed987164acf6e362ab2878506fbca95"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_NO_DIRECT_ALGORITHM</b> (1U << 13)</td></tr>
-<tr class="memitem:aa228bbed7ddbbb4a15f1cd11ec27b415"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa228bbed7ddbbb4a15f1cd11ec27b415"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_NO_FAST_ALGORITHM</b> (1U << 14)</td></tr>
-<tr class="memitem:a7797dfe75149e88ee680fc2579c31505"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7797dfe75149e88ee680fc2579c31505"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_ZERO_F_HAT</b> (1U << 16)</td></tr>
-<tr class="memitem:a8be22087991e0a82cfa59a3f0f2a5e86"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8be22087991e0a82cfa59a3f0f2a5e86"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_INDEX</b>(k, n, plan) ((2*(plan)->N+2)*((plan)->N-n+1)+(plan)->N+k+1)</td></tr>
-<tr class="memitem:ad426bf64ff72d6e3c2450fbb56146a44"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad426bf64ff72d6e3c2450fbb56146a44"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSFT_F_HAT_SIZE</b>(N) ((2*N+2)*(2*N+2))</td></tr>
-<tr class="memitem:a44d97472ab10ca3b256fd0c33cb3737e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a44d97472ab10ca3b256fd0c33cb3737e"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_MANGLE_DOUBLE</b>(name) NFFT_CONCAT(fpt_, name)</td></tr>
-<tr class="memitem:a80067368d7e171b07bfa417af75775d3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80067368d7e171b07bfa417af75775d3"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_MANGLE_FLOAT</b>(name) NFFT_CONCAT(fptf_, name)</td></tr>
-<tr class="memitem:aa27ec6913fe46da3571d2080c6d722d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa27ec6913fe46da3571d2080c6d722d5"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_MANGLE_LONG_DOUBLE</b>(name) NFFT_CONCAT(fptl_, name)</td></tr>
-<tr class="memitem:a8bfac1df57d74c1d7bed37487e241bcd"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><b>FPT_DEFINE_API</b>(X, Y, R, C)</td></tr>
-<tr class="memitem:a43cffc40fea4280ae0bcbe948109a3be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a43cffc40fea4280ae0bcbe948109a3be"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_NO_STABILIZATION</b> (1U << 0)</td></tr>
-<tr class="memitem:a33b9330253f419a91ef09a1b0d7a2667"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33b9330253f419a91ef09a1b0d7a2667"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_NO_FAST_ALGORITHM</b> (1U << 2)</td></tr>
-<tr class="memitem:adbf3440a08ccd763556ff4caa36693d9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adbf3440a08ccd763556ff4caa36693d9"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_NO_DIRECT_ALGORITHM</b> (1U << 3)</td></tr>
-<tr class="memitem:a1ee771544214aba96ee012095feeead1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1ee771544214aba96ee012095feeead1"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_PERSISTENT_DATA</b> (1U << 4)</td></tr>
-<tr class="memitem:ad5594ac14b8a368f0103761361af5691"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad5594ac14b8a368f0103761361af5691"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_FUNCTION_VALUES</b> (1U << 5)</td></tr>
-<tr class="memitem:aba75cd704c2ca4153c1733b4cb3c977f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba75cd704c2ca4153c1733b4cb3c977f"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>FPT_AL_SYMMETRY</b> (1U << 6)</td></tr>
-<tr class="memitem:ab40821fed9fe63e42e2ee665f0dae7ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab40821fed9fe63e42e2ee665f0dae7ef"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_MANGLE_DOUBLE</b>(name) NFFT_CONCAT(nfsoft_, name)</td></tr>
-<tr class="memitem:a4e387b12df84d52678c2734f5b94d217"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e387b12df84d52678c2734f5b94d217"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_MANGLE_FLOAT</b>(name) NFFT_CONCAT(nfsoftf_, name)</td></tr>
-<tr class="memitem:a492d027375c61b20ee5ad37d61ddb6a9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a492d027375c61b20ee5ad37d61ddb6a9"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_MANGLE_LONG_DOUBLE</b>(name) NFFT_CONCAT(nfsoftl_, name)</td></tr>
-<tr class="memitem:ab64e7dca068fc797700ea5a1f294430f"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_DEFINE_API</b>(X, Y, Z, R, C)</td></tr>
-<tr class="memitem:a8c53e32dd194bda4a828c15ad044d44a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8c53e32dd194bda4a828c15ad044d44a"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_NORMALIZED</b> (1U << 0)</td></tr>
-<tr class="memitem:a14cae92f8ee539b4a41aebdf913ef2c5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a14cae92f8ee539b4a41aebdf913ef2c5"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_USE_NDFT</b> (1U << 1)</td></tr>
-<tr class="memitem:a619b249b5d4b4675d2ce9a17d7817590"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a619b249b5d4b4675d2ce9a17d7817590"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_USE_DPT</b> (1U << 2)</td></tr>
-<tr class="memitem:abe0d04599c1b06144e9a66fc2ac7b09d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe0d04599c1b06144e9a66fc2ac7b09d"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_MALLOC_X</b> (1U << 3)</td></tr>
-<tr class="memitem:a379d5bf88e399cf492d86090ce47d47d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a379d5bf88e399cf492d86090ce47d47d"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_REPRESENT</b> (1U << 4)</td></tr>
-<tr class="memitem:a846e8298ed59219f7072230bd61c7a2a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a846e8298ed59219f7072230bd61c7a2a"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_MALLOC_F_HAT</b> (1U << 5)</td></tr>
-<tr class="memitem:ac65bdc42b4c11296197dc991bbebbd12"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac65bdc42b4c11296197dc991bbebbd12"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_MALLOC_F</b> (1U << 6)</td></tr>
-<tr class="memitem:a83119b0d4e62f7cd83e0f74c5ef08dec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83119b0d4e62f7cd83e0f74c5ef08dec"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_PRESERVE_F_HAT</b> (1U << 7)</td></tr>
-<tr class="memitem:a2650cbfde4c8259e5059d6e9b91e0ec3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2650cbfde4c8259e5059d6e9b91e0ec3"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_PRESERVE_X</b> (1U << 8)</td></tr>
-<tr class="memitem:a629a86dd29a3cf09872755cd82bf7062"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a629a86dd29a3cf09872755cd82bf7062"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_PRESERVE_F</b> (1U << 9)</td></tr>
-<tr class="memitem:ad324d67114a4f52a9fc86d2639745acd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad324d67114a4f52a9fc86d2639745acd"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_DESTROY_F_HAT</b> (1U << 10)</td></tr>
-<tr class="memitem:ab7ca87a4bb214bcc25d544aa0b6dd503"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab7ca87a4bb214bcc25d544aa0b6dd503"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_DESTROY_X</b> (1U << 11)</td></tr>
-<tr class="memitem:a93ab283dcb14d5b37b130e2556bb6e7d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a93ab283dcb14d5b37b130e2556bb6e7d"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_DESTROY_F</b> (1U << 12)</td></tr>
-<tr class="memitem:ae6c22599d21b5d8a8f144a39b49d3677"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6c22599d21b5d8a8f144a39b49d3677"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_NO_STABILIZATION</b> (1U << 13)</td></tr>
-<tr class="memitem:a43ce16ed2d1893df2b997e637ccde4d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a43ce16ed2d1893df2b997e637ccde4d4"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_CHOOSE_DPT</b> (1U << 14)</td></tr>
-<tr class="memitem:a07ad8a429e8451bd153563eedc3ef0bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a07ad8a429e8451bd153563eedc3ef0bf"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_SOFT</b> (1U << 15)</td></tr>
-<tr class="memitem:adaa4a4436a6a9e8b491660bb5fc54f8e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adaa4a4436a6a9e8b491660bb5fc54f8e"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_ZERO_F_HAT</b> (1U << 16)</td></tr>
-<tr class="memitem:a796e2f298278bbed00bf0704b553be98"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a796e2f298278bbed00bf0704b553be98"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_INDEX</b>(m, n, l, B) (((l)+((B)+1))+(2*(B)+2)*(((n)+((B)+1))+(2*(B)+2)*((m)+((B)+1))))</td></tr>
-<tr class="memitem:a67274491cbbbca79a4170608dec640ce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67274491cbbbca79a4170608dec640ce"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_INDEX_TWO</b>(m, n, l, B) ((B+1)*(B+1)+(B+1)*(B+1)*(m+B)-((m-1)*m*(2*m-1)+(B+1)*(B+2)*(2*B+3))/6)+(posN(n,m,B))+(l-MAX(ABS(m),ABS(n)))</td></tr>
-<tr class="memitem:ad214901ec9451e6076e05d22eb734d49"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad214901ec9451e6076e05d22eb734d49"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NFSOFT_F_HAT_SIZE</b>(B) (((B)+1)*(4*((B)+1)*((B)+1)-1)/3)</td></tr>
-<tr class="memitem:a2e779defec2c348c6d8a8c6f8421a242"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e779defec2c348c6d8a8c6f8421a242"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>SOLVER_MANGLE_DOUBLE</b>(name) NFFT_CONCAT(solver_, name)</td></tr>
-<tr class="memitem:acca5f1d40d99c32b16eb8096b1339d50"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acca5f1d40d99c32b16eb8096b1339d50"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>SOLVER_MANGLE_FLOAT</b>(name) NFFT_CONCAT(solverf_, name)</td></tr>
-<tr class="memitem:acd9b2356a04e9b982826211c51c600c6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd9b2356a04e9b982826211c51c600c6"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>SOLVER_MANGLE_LONG_DOUBLE</b>(name) NFFT_CONCAT(solverl_, name)</td></tr>
-<tr class="memitem:a582e092f0b5e3b447e1a884e8495c99b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a582e092f0b5e3b447e1a884e8495c99b"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>SOLVER_DEFINE_API</b>(X, Y, R, C)</td></tr>
-<tr class="memitem:a84bae5d48296d5a0d1e548ed58b9e495"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84bae5d48296d5a0d1e548ed58b9e495"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>LANDWEBER</b> (1U<< 0)</td></tr>
-<tr class="memitem:a1f016d06d661c80eacb5182d80813cd9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1f016d06d661c80eacb5182d80813cd9"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>STEEPEST_DESCENT</b> (1U<< 1)</td></tr>
-<tr class="memitem:a5716b96b5141dfb52b747a78b11defa7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5716b96b5141dfb52b747a78b11defa7"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>CGNR</b> (1U<< 2)</td></tr>
-<tr class="memitem:aae8290aa6a83fd56699a98cc0a55baf5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae8290aa6a83fd56699a98cc0a55baf5"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>CGNE</b> (1U<< 3)</td></tr>
-<tr class="memitem:a6be0dda24e7cbd9f3f1d1b299e815973"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6be0dda24e7cbd9f3f1d1b299e815973"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>NORMS_FOR_LANDWEBER</b> (1U<< 4)</td></tr>
-<tr class="memitem:aa59267dba2cd3247c5ee4eb493d31c2d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa59267dba2cd3247c5ee4eb493d31c2d"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PRECOMPUTE_WEIGHT</b> (1U<< 5)</td></tr>
-<tr class="memitem:a9ccacd28b2d441a797a5c0d9e6c17fa7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ccacd28b2d441a797a5c0d9e6c17fa7"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PRECOMPUTE_DAMP</b> (1U<< 6)</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="typedef-members"></a>
-Typedefs</h2></td></tr>
-<tr class="memitem:ae2db105c02d4b63d1962dc94d4e7a4c2"><td class="memItemLeft" align="right" valign="top">typedef void *(* </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#ae2db105c02d4b63d1962dc94d4e7a4c2">nfft_malloc_type_function</a> )(size_t n)</td></tr>
-<tr class="memitem:acdec9723f6ea0ea162d5f3fc6f1f1906"><td class="memItemLeft" align="right" valign="top">typedef void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#acdec9723f6ea0ea162d5f3fc6f1f1906">nfft_free_type_function</a> )(void *p)</td></tr>
-<tr class="memitem:a79fa7003e5077adf8ad168bff9c8c986"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79fa7003e5077adf8ad168bff9c8c986"></a>
-typedef void(* </td><td class="memItemRight" valign="bottom"><b>nfft_die_type_function</b> )(const char *errString)</td></tr>
-<tr class="memitem:a74cbbcba4b36c9272b3e1b309f574308"><td class="memItemLeft" align="right" valign="top">typedef struct fptf_set_s_ * </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a></td></tr>
-<tr class="memdesc:a74cbbcba4b36c9272b3e1b309f574308"><td class="mdescLeft"> </td><td class="mdescRight">A set of precomputed data for a set of DPT transforms of equal maximum length. <a href="#a74cbbcba4b36c9272b3e1b309f574308"></a><br/></td></tr>
-<tr class="memitem:a73d630ac21d6474ba0693f124d465e15"><td class="memItemLeft" align="right" valign="top">typedef struct <a class="el" href="structfpt__set__s__.html">fpt_set_s_</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a></td></tr>
-<tr class="memdesc:a73d630ac21d6474ba0693f124d465e15"><td class="mdescLeft"> </td><td class="mdescRight">A set of precomputed data for a set of DPT transforms of equal maximum length. <a href="#a73d630ac21d6474ba0693f124d465e15"></a><br/></td></tr>
-<tr class="memitem:afa0a822edf2abbd8e1ab2cd0afd72efa"><td class="memItemLeft" align="right" valign="top">typedef struct fptl_set_s_ * </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a></td></tr>
-<tr class="memdesc:afa0a822edf2abbd8e1ab2cd0afd72efa"><td class="mdescLeft"> </td><td class="mdescRight">A set of precomputed data for a set of DPT transforms of equal maximum length. <a href="#afa0a822edf2abbd8e1ab2cd0afd72efa"></a><br/></td></tr>
-<tr class="memitem:ad09d4f327f3d1510be6bcf4375906176"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad09d4f327f3d1510be6bcf4375906176"></a>
-typedef struct <a class="el" href="structnfsoftf__plan__.html">nfsoftf_plan_</a> </td><td class="memItemRight" valign="bottom"><b>nfsoftf_plan</b></td></tr>
-<tr class="memitem:aa862e783e0563487b2c8e0e83b9dc742"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa862e783e0563487b2c8e0e83b9dc742"></a>
-typedef struct <a class="el" href="structnfsoft__plan__.html">nfsoft_plan_</a> </td><td class="memItemRight" valign="bottom"><b>nfsoft_plan</b></td></tr>
-<tr class="memitem:a6d67c17c3744095b57a3c4491d0a3109"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6d67c17c3744095b57a3c4491d0a3109"></a>
-typedef struct <a class="el" href="structnfsoftl__plan__.html">nfsoftl_plan_</a> </td><td class="memItemRight" valign="bottom"><b>nfsoftl_plan</b></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:aafe6167438c5de4d3d4c509f66a6694e"><td class="memItemLeft" align="right" valign="top">void * </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a> (size_t n)</td></tr>
-<tr class="memitem:ab8a0db03dda1317a8a3d922e0e4e8aaa"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a> (void *p)</td></tr>
-<tr class="memitem:ace7c4a800755f1c9a8e7479c64665733"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace7c4a800755f1c9a8e7479c64665733"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_die</b> (char *s)</td></tr>
-<tr class="memitem:aa97b8219dc23517c274ee9951af5ae8b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa97b8219dc23517c274ee9951af5ae8b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_trafo_direct</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a13b36ffc5ad4dea0501da86b4ea93f9c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a13b36ffc5ad4dea0501da86b4ea93f9c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_adjoint_direct</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a6a99e8e25843bf6f3b503a5030ebcfcb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6a99e8e25843bf6f3b503a5030ebcfcb"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_trafo</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a71e3ddb963596b177c9f3d94b8961cc8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a71e3ddb963596b177c9f3d94b8961cc8"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_trafo_1d</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a062bd142005b5fc523db95e41c665f24"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a062bd142005b5fc523db95e41c665f24"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_trafo_2d</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a501a0b91c433ed4857943dd777e7e16a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a501a0b91c433ed4857943dd777e7e16a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_trafo_3d</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a7bfe9f714ceb6a9d3911de1eb140f5dd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7bfe9f714ceb6a9d3911de1eb140f5dd"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_adjoint</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:aaeec2252ee63c95ab2471fe59f341c01"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaeec2252ee63c95ab2471fe59f341c01"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_adjoint_1d</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a214d4e491256491ae71b2c66767b5db5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a214d4e491256491ae71b2c66767b5db5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_adjoint_2d</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:adc41672222d378897caaa87b0b70fa2f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adc41672222d378897caaa87b0b70fa2f"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_adjoint_3d</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a6ff5563bc1f9c37250cced03ed21d961"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ff5563bc1f9c37250cced03ed21d961"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_init_1d</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths, int N1, int M)</td></tr>
-<tr class="memitem:ab5cc14480a2380acaa8433dcde2e7b70"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab5cc14480a2380acaa8433dcde2e7b70"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_init_2d</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths, int N1, int N2, int M)</td></tr>
-<tr class="memitem:a00c248803a48939d9d5c8c78365d1bac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a00c248803a48939d9d5c8c78365d1bac"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_init_3d</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths, int N1, int N2, int N3, int M)</td></tr>
-<tr class="memitem:a1ca11660915a2e57e4ca2134465bd179"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1ca11660915a2e57e4ca2134465bd179"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_init</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths, int d, int *N, int M)</td></tr>
-<tr class="memitem:a3a7bbd8652f6be0d955a9685400dfa89"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3a7bbd8652f6be0d955a9685400dfa89"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_init_guru</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths, int d, int *N, int M, int *n, int m, unsigned nfft_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:a85210f098260b748aa3da2d37bfd5ce6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a85210f098260b748aa3da2d37bfd5ce6"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_precompute_one_psi</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a1aa91a41f8c652a5b82bc013f234adcd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1aa91a41f8c652a5b82bc013f234adcd"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_precompute_full_psi</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:afe253a9f00f666f7d99e6276f25fe70a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afe253a9f00f666f7d99e6276f25fe70a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_precompute_psi</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a4a931f44a44954ab94576e6d4554182f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a931f44a44954ab94576e6d4554182f"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_precompute_lin_psi</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a95688574035044784d8179168561f176"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a95688574035044784d8179168561f176"></a>
-const char * </td><td class="memItemRight" valign="bottom"><b>nfftf_check</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a991e56a61be1686499777e6cf97ac08e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a991e56a61be1686499777e6cf97ac08e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftf_finalize</b> (<a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a76a2441388702c7cf232ffb3ec69d826"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a76a2441388702c7cf232ffb3ec69d826"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_trafo_direct</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a6d259124ce68da237671a667db8367ff"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6d259124ce68da237671a667db8367ff"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_adjoint_direct</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a9f1e6bd9f7f956a8679e6b413c97b421"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f1e6bd9f7f956a8679e6b413c97b421"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421">nfft_trafo</a> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memdesc:a9f1e6bd9f7f956a8679e6b413c97b421"><td class="mdescLeft"> </td><td class="mdescRight">user routines <br/></td></tr>
-<tr class="memitem:ae6dff0553d273fc53a15ce4535df8087"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6dff0553d273fc53a15ce4535df8087"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_trafo_1d</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:ac05ae265993ff8e1396ac6c801c47ffe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac05ae265993ff8e1396ac6c801c47ffe"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_trafo_2d</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a503e48334b8cdefb63f55941460354bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a503e48334b8cdefb63f55941460354bf"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_trafo_3d</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a4b44c1dd52026dcb494dc735f0fa5b08"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b44c1dd52026dcb494dc735f0fa5b08"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_adjoint</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a13f8052bab72ec8994354cdd6ccb6982"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a13f8052bab72ec8994354cdd6ccb6982"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_adjoint_1d</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:ada6d6c809694e08aac88fa0204192325"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada6d6c809694e08aac88fa0204192325"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_adjoint_2d</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a4469a1fc88e71eaff7b6912a15079195"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4469a1fc88e71eaff7b6912a15079195"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_adjoint_3d</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a01dbd2cfc9cc8577fc097e607e3c845f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a01dbd2cfc9cc8577fc097e607e3c845f"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_init_1d</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths, int N1, int M)</td></tr>
-<tr class="memitem:a54ab08124f47fe412b2979abdc28cc16"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a54ab08124f47fe412b2979abdc28cc16"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_init_2d</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths, int N1, int N2, int M)</td></tr>
-<tr class="memitem:a67493342a23bdbb4301063f96e13fd88"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67493342a23bdbb4301063f96e13fd88"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_init_3d</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths, int N1, int N2, int N3, int M)</td></tr>
-<tr class="memitem:a1dfeaf18f3735f035afa62ca768d99c4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1dfeaf18f3735f035afa62ca768d99c4"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_init</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths, int d, int *N, int M)</td></tr>
-<tr class="memitem:a406f05717c6299b918261c61aaa9de23"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a406f05717c6299b918261c61aaa9de23"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_init_guru</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths, int d, int *N, int M, int *n, int m, unsigned nfft_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:afd7b278b6ed04d929212b4807dd195f0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd7b278b6ed04d929212b4807dd195f0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_precompute_one_psi</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:aee7a88956c66b2113014084d6dd04b3a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee7a88956c66b2113014084d6dd04b3a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_precompute_full_psi</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:ae6a8367b03fd75b2af42dbbaccb78bf2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6a8367b03fd75b2af42dbbaccb78bf2"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_precompute_psi</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a3f91a7a005cc31a8b05f33fea0507ddc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f91a7a005cc31a8b05f33fea0507ddc"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc">nfft_precompute_lin_psi</a> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memdesc:a3f91a7a005cc31a8b05f33fea0507ddc"><td class="mdescLeft"> </td><td class="mdescRight">create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assumes an EVEN window function <br/></td></tr>
-<tr class="memitem:a9fe3dd8c48b139fa813d89aea9305191"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9fe3dd8c48b139fa813d89aea9305191"></a>
-const char * </td><td class="memItemRight" valign="bottom"><b>nfft_check</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a614f9f7af5b0d5491afa9495393c4dc3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a614f9f7af5b0d5491afa9495393c4dc3"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_finalize</b> (<a class="el" href="structnfft__plan.html">nfft_plan</a> *ths)</td></tr>
-<tr class="memitem:aade98b08a1764d934fc1e3328ca4748c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aade98b08a1764d934fc1e3328ca4748c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_trafo_direct</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a749f21a124ee46334eb7ec688dfa907b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a749f21a124ee46334eb7ec688dfa907b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_adjoint_direct</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a239d94aa7ede469acccd137b816632c8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a239d94aa7ede469acccd137b816632c8"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_trafo</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a7a7438f1eda9c46ab2378e94317c2b6c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7a7438f1eda9c46ab2378e94317c2b6c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_trafo_1d</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a5a08729af6bfae8bdcdd23a948303678"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5a08729af6bfae8bdcdd23a948303678"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_trafo_2d</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:aeef91bc707567a4da86d5d7d8813b654"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeef91bc707567a4da86d5d7d8813b654"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_trafo_3d</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:acc437673282c8cbbdc057d1f447df412"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc437673282c8cbbdc057d1f447df412"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_adjoint</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:aaf80f8f97f566ce6bf814590fff412ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf80f8f97f566ce6bf814590fff412ab"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_adjoint_1d</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a79cb762faa374f897c63784654178ba3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79cb762faa374f897c63784654178ba3"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_adjoint_2d</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:ac67b1fa2c19e23ae4cdf40ce6fc22c54"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac67b1fa2c19e23ae4cdf40ce6fc22c54"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_adjoint_3d</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a44f2703f03552f3282f64ebcbbc4d10e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a44f2703f03552f3282f64ebcbbc4d10e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_init_1d</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths, int N1, int M)</td></tr>
-<tr class="memitem:a5a23efb04a7efe72618970c1c38833a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5a23efb04a7efe72618970c1c38833a7"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_init_2d</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths, int N1, int N2, int M)</td></tr>
-<tr class="memitem:ad3f182c73964739a8d37aa53a6b3f08e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3f182c73964739a8d37aa53a6b3f08e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_init_3d</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths, int N1, int N2, int N3, int M)</td></tr>
-<tr class="memitem:ac1bb75bcc340c22a5cf743bf1f9e5173"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac1bb75bcc340c22a5cf743bf1f9e5173"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_init</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths, int d, int *N, int M)</td></tr>
-<tr class="memitem:af01ca4593fe6f4a76e981428529ef683"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af01ca4593fe6f4a76e981428529ef683"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_init_guru</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths, int d, int *N, int M, int *n, int m, unsigned nfft_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:a5fac8d29d45f72e44cd89cab07d0d059"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5fac8d29d45f72e44cd89cab07d0d059"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_precompute_one_psi</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a797c4d47a0932fef1724da790901ad31"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a797c4d47a0932fef1724da790901ad31"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_precompute_full_psi</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:ad60f5459cde8f650a09ccab58daa702b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad60f5459cde8f650a09ccab58daa702b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_precompute_psi</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:ac3dd031c004b1e36add9996d7d27fe07"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac3dd031c004b1e36add9996d7d27fe07"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_precompute_lin_psi</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a9a88020d6fdf2f0e71e59d2d46351acc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a88020d6fdf2f0e71e59d2d46351acc"></a>
-const char * </td><td class="memItemRight" valign="bottom"><b>nfftl_check</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a4c53403d49c55788fc7d7f16fbeb0294"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c53403d49c55788fc7d7f16fbeb0294"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfftl_finalize</b> (<a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:ad1b85989c8f6296202c5ead97b2a4d3b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad1b85989c8f6296202c5ead97b2a4d3b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_init_1d</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan, int N0, int M_total)</td></tr>
-<tr class="memitem:a54475a045421b8c7d4a2e284ac98b68e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a54475a045421b8c7d4a2e284ac98b68e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_init_2d</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan, int N0, int N1, int M_total)</td></tr>
-<tr class="memitem:adadcd59ed27befb417baf6f23d92903b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adadcd59ed27befb417baf6f23d92903b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_init_3d</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan, int N0, int N1, int N2, int M_total)</td></tr>
-<tr class="memitem:a948aec7c8b620bda3580d3d073be54b6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a948aec7c8b620bda3580d3d073be54b6"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_init</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan, int d, int *N, int M_total)</td></tr>
-<tr class="memitem:a2d8c4f072d7c12eac56d9314b1d795a6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2d8c4f072d7c12eac56d9314b1d795a6"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_init_guru</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan, int d, int *N, int M_total, int *n, int m, unsigned nfct_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:acd09b8596fa9aa4c6809a4ce6ade4d2a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd09b8596fa9aa4c6809a4ce6ade4d2a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_precompute_psi</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:af407452ab0b930263950cd9432c0a3de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af407452ab0b930263950cd9432c0a3de"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_trafo</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a4f03bebbb59e69446af3c94c80c48e99"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4f03bebbb59e69446af3c94c80c48e99"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_trafo_direct</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a8a7e3c8c2f47b2c215a9f43419c41218"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8a7e3c8c2f47b2c215a9f43419c41218"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_adjoint</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:acc707e1afd6bc01e212112199f8f10d0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc707e1afd6bc01e212112199f8f10d0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_adjoint_direct</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a7d1f18e46748f9cfe0d5f26ee8c58610"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7d1f18e46748f9cfe0d5f26ee8c58610"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctf_finalize</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ad1948b714bc3c82b53f99d4e54e818ea"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad1948b714bc3c82b53f99d4e54e818ea"></a>
-float </td><td class="memItemRight" valign="bottom"><b>nfctf_phi_hut</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan, int k, int d)</td></tr>
-<tr class="memitem:a4a0a312fbe21abb26702af072b9fe8e2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a0a312fbe21abb26702af072b9fe8e2"></a>
-float </td><td class="memItemRight" valign="bottom"><b>nfctf_phi</b> (<a class="el" href="structnfctf__plan.html">nfctf_plan</a> *ths_plan, float x, int d)</td></tr>
-<tr class="memitem:acdaa71ef0c4ea05c55a09a08845b3043"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acdaa71ef0c4ea05c55a09a08845b3043"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_init_1d</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan, int N0, int M_total)</td></tr>
-<tr class="memitem:a84c8a611ea11546b90a7db424ebced7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84c8a611ea11546b90a7db424ebced7c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_init_2d</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan, int N0, int N1, int M_total)</td></tr>
-<tr class="memitem:a7894f72320bda7850ccf43b9a227fe09"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7894f72320bda7850ccf43b9a227fe09"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_init_3d</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan, int N0, int N1, int N2, int M_total)</td></tr>
-<tr class="memitem:a69ac40972c84cfd04909723da056004b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a69ac40972c84cfd04909723da056004b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_init</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan, int d, int *N, int M_total)</td></tr>
-<tr class="memitem:aa2f86c85130172f1151a85996ea1bfa3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa2f86c85130172f1151a85996ea1bfa3"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_init_guru</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan, int d, int *N, int M_total, int *n, int m, unsigned nfct_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:a2792eada84d4d363e308825dc40c2e6d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2792eada84d4d363e308825dc40c2e6d"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_precompute_psi</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a73327e4f32328dcae3e9f86572a0e15a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a73327e4f32328dcae3e9f86572a0e15a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_trafo</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:adbf865fd9ccfdadc5b7b86e58f092d16"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adbf865fd9ccfdadc5b7b86e58f092d16"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_trafo_direct</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:abc14753b2aa4ae8af85fc9632720514e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc14753b2aa4ae8af85fc9632720514e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_adjoint</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a1e797dc0f4e07c62342f28e4dc3f7fe0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1e797dc0f4e07c62342f28e4dc3f7fe0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_adjoint_direct</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a5613906eb739a977bd862fbdb25224f6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5613906eb739a977bd862fbdb25224f6"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfct_finalize</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a10982ac173900c44e0317a8fb01e53c1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a10982ac173900c44e0317a8fb01e53c1"></a>
-double </td><td class="memItemRight" valign="bottom"><b>nfct_phi_hut</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan, int k, int d)</td></tr>
-<tr class="memitem:a825ccf26ddeddc330f320146d3d223de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a825ccf26ddeddc330f320146d3d223de"></a>
-double </td><td class="memItemRight" valign="bottom"><b>nfct_phi</b> (<a class="el" href="structnfct__plan.html">nfct_plan</a> *ths_plan, double x, int d)</td></tr>
-<tr class="memitem:a2b2c7c01bf971f33edc3acb1139bf161"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b2c7c01bf971f33edc3acb1139bf161"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_init_1d</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan, int N0, int M_total)</td></tr>
-<tr class="memitem:aed79e0497c45176f43d8fa911d6f069a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed79e0497c45176f43d8fa911d6f069a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_init_2d</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan, int N0, int N1, int M_total)</td></tr>
-<tr class="memitem:ad637a73bde08d33d9c30381d16d4ba3b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad637a73bde08d33d9c30381d16d4ba3b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_init_3d</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan, int N0, int N1, int N2, int M_total)</td></tr>
-<tr class="memitem:a2b3eb969859db7cf581a54541445ffb0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b3eb969859db7cf581a54541445ffb0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_init</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan, int d, int *N, int M_total)</td></tr>
-<tr class="memitem:aa20eb0ade7b3c4ff2ffe241f4452fd35"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa20eb0ade7b3c4ff2ffe241f4452fd35"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_init_guru</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan, int d, int *N, int M_total, int *n, int m, unsigned nfct_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:a3657c9e044b54cb7b2a3d5717b68e030"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3657c9e044b54cb7b2a3d5717b68e030"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_precompute_psi</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ade7830710d428e89f9fa01ef364e6378"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade7830710d428e89f9fa01ef364e6378"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_trafo</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a4f153794f61f2cfc711f67134db52226"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4f153794f61f2cfc711f67134db52226"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_trafo_direct</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ae292cc7d0b3c315f0d5a26ec4fe711c5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae292cc7d0b3c315f0d5a26ec4fe711c5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_adjoint</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:aa5a922b6a88ead364e577c2341713036"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5a922b6a88ead364e577c2341713036"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_adjoint_direct</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:adf343b3aa0408dff9907dfaf5e44a916"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adf343b3aa0408dff9907dfaf5e44a916"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfctl_finalize</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:aff1f9664971c98bb2acf9bc71fb2c221"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aff1f9664971c98bb2acf9bc71fb2c221"></a>
-long double </td><td class="memItemRight" valign="bottom"><b>nfctl_phi_hut</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan, int k, int d)</td></tr>
-<tr class="memitem:a0c74d0bbb03b7da2208f1c004b39d968"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c74d0bbb03b7da2208f1c004b39d968"></a>
-long double </td><td class="memItemRight" valign="bottom"><b>nfctl_phi</b> (<a class="el" href="structnfctl__plan.html">nfctl_plan</a> *ths_plan, long double x, int d)</td></tr>
-<tr class="memitem:a436cf366c1bf5124fec4a48affe5ed33"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a436cf366c1bf5124fec4a48affe5ed33"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_init_1d</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan, int N0, int M_total)</td></tr>
-<tr class="memitem:a28f62d4f47f327bbcd814c5f8881269d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28f62d4f47f327bbcd814c5f8881269d"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_init_2d</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan, int N0, int N1, int M_total)</td></tr>
-<tr class="memitem:a4bad3dcbf566247ce521d2b836f19cd9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4bad3dcbf566247ce521d2b836f19cd9"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_init_3d</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan, int N0, int N1, int N2, int M_total)</td></tr>
-<tr class="memitem:aa535ec3a94b56443c9ac6a770e242cc9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa535ec3a94b56443c9ac6a770e242cc9"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_init</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan, int d, int *N, int M_total)</td></tr>
-<tr class="memitem:acc15a1f1877aa558add661788043b4eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acc15a1f1877aa558add661788043b4eb"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_init_m</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan, int d, int *N, int M_total, int m)</td></tr>
-<tr class="memitem:a975ee87801a379f4cff0d8951cae3146"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a975ee87801a379f4cff0d8951cae3146"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_init_guru</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan, int d, int *N, int M_total, int *n, int m, unsigned nfst_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:a30852f312cc13c7937d1762fd338227a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a30852f312cc13c7937d1762fd338227a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_precompute_psi</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a479977674224d07ba369e2005ccae29e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a479977674224d07ba369e2005ccae29e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_trafo</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:afa7cbae602aa715a494d1d4c753c5b02"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa7cbae602aa715a494d1d4c753c5b02"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_trafo_direct</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:aa5c75d98de3086bb0c8d0b9f56f2daee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5c75d98de3086bb0c8d0b9f56f2daee"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_adjoint</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:aa7a5510270b8ac3949b7e16d4eeb9d66"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7a5510270b8ac3949b7e16d4eeb9d66"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_adjoint_direct</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a0759e77328bfaac4e7fe5022cf1cfd55"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0759e77328bfaac4e7fe5022cf1cfd55"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_finalize</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a41f08418f5b56c55f68bf5bb2217fcc0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a41f08418f5b56c55f68bf5bb2217fcc0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstf_full_psi</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan, float eps)</td></tr>
-<tr class="memitem:a4465e8694d9574b47f40e7b6bbd5e542"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4465e8694d9574b47f40e7b6bbd5e542"></a>
-float </td><td class="memItemRight" valign="bottom"><b>nfstf_phi_hut</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan, int k, int d)</td></tr>
-<tr class="memitem:ad5ea11822143256d19d4b8acde7b7ffe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad5ea11822143256d19d4b8acde7b7ffe"></a>
-float </td><td class="memItemRight" valign="bottom"><b>nfstf_phi</b> (<a class="el" href="structnfstf__plan.html">nfstf_plan</a> *ths_plan, float x, int d)</td></tr>
-<tr class="memitem:a01dfe8ac1efd2655f17f0ce08136d4b1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a01dfe8ac1efd2655f17f0ce08136d4b1"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfstf_fftw_2N</b> (int n)</td></tr>
-<tr class="memitem:a6ea4d9088aa79c66f5d7cd4df43b8e46"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ea4d9088aa79c66f5d7cd4df43b8e46"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfstf_fftw_2N_rev</b> (int n)</td></tr>
-<tr class="memitem:ac13a4c85f5cd43cfc3b5c3895021a9a9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac13a4c85f5cd43cfc3b5c3895021a9a9"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_init_1d</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan, int N0, int M_total)</td></tr>
-<tr class="memitem:a44eff771382180419936a6dbf51505fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a44eff771382180419936a6dbf51505fa"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_init_2d</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan, int N0, int N1, int M_total)</td></tr>
-<tr class="memitem:af1dd972b1831e75d3cfba0a0a2671711"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af1dd972b1831e75d3cfba0a0a2671711"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_init_3d</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan, int N0, int N1, int N2, int M_total)</td></tr>
-<tr class="memitem:ae4043a9926de23326b21b8722648bafa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4043a9926de23326b21b8722648bafa"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_init</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan, int d, int *N, int M_total)</td></tr>
-<tr class="memitem:a8a48a14e97780c89216d09bdb75f513a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8a48a14e97780c89216d09bdb75f513a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_init_m</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan, int d, int *N, int M_total, int m)</td></tr>
-<tr class="memitem:a052efac9f85424d50ceb77279c4e8cc3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a052efac9f85424d50ceb77279c4e8cc3"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_init_guru</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan, int d, int *N, int M_total, int *n, int m, unsigned nfst_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:a0580a0aa2d426835b618b564b5ef3387"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0580a0aa2d426835b618b564b5ef3387"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_precompute_psi</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ac80b86521428ec2191919cc96c82f416"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#ac80b86521428ec2191919cc96c82f416">nfst_trafo</a> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan)</td></tr>
-<tr class="memdesc:ac80b86521428ec2191919cc96c82f416"><td class="mdescLeft"> </td><td class="mdescRight">user routines <a href="#ac80b86521428ec2191919cc96c82f416"></a><br/></td></tr>
-<tr class="memitem:ab32c2626ee801b86707fdacf3d432732"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab32c2626ee801b86707fdacf3d432732"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_trafo_direct</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a0ae3871b80dda28e7aabe541a48d34e2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ae3871b80dda28e7aabe541a48d34e2"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_adjoint</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ac61e39a2328268b6cd214ecc9233561a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac61e39a2328268b6cd214ecc9233561a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_adjoint_direct</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ab5d03eeff969c872061d96998f9f0405"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab5d03eeff969c872061d96998f9f0405"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfst_finalize</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a02d072e80ccaca6482b396540eaef585"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02d072e80ccaca6482b396540eaef585"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a02d072e80ccaca6482b396540eaef585">nfst_full_psi</a> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan, double eps)</td></tr>
-<tr class="memdesc:a02d072e80ccaca6482b396540eaef585"><td class="mdescLeft"> </td><td class="mdescRight">more memory usage, a bit faster <br/></td></tr>
-<tr class="memitem:aa2862de70644887849e0bc1df618a018"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa2862de70644887849e0bc1df618a018"></a>
-double </td><td class="memItemRight" valign="bottom"><b>nfst_phi_hut</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan, int k, int d)</td></tr>
-<tr class="memitem:aec803ab48734df96a9f21d66cbb71e23"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aec803ab48734df96a9f21d66cbb71e23"></a>
-double </td><td class="memItemRight" valign="bottom"><b>nfst_phi</b> (<a class="el" href="structnfst__plan.html">nfst_plan</a> *ths_plan, double x, int d)</td></tr>
-<tr class="memitem:ae2f6c7dd71f57ba413df7f9e0d9c8c6d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae2f6c7dd71f57ba413df7f9e0d9c8c6d"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfst_fftw_2N</b> (int n)</td></tr>
-<tr class="memitem:ad31424393fa4e91a19cd9a82776f2d74"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad31424393fa4e91a19cd9a82776f2d74"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfst_fftw_2N_rev</b> (int n)</td></tr>
-<tr class="memitem:a85ac488c78b0ba84aeb87b0fcf72b0f0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a85ac488c78b0ba84aeb87b0fcf72b0f0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_init_1d</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan, int N0, int M_total)</td></tr>
-<tr class="memitem:a1f222ef8f5d4882d61bc2b6754f2ffc7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1f222ef8f5d4882d61bc2b6754f2ffc7"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_init_2d</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan, int N0, int N1, int M_total)</td></tr>
-<tr class="memitem:aed4a64b8c12141a35943abbbdbe12d9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed4a64b8c12141a35943abbbdbe12d9d"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_init_3d</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan, int N0, int N1, int N2, int M_total)</td></tr>
-<tr class="memitem:a3fbc166b35241c5d64631b082f013045"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3fbc166b35241c5d64631b082f013045"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_init</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan, int d, int *N, int M_total)</td></tr>
-<tr class="memitem:a862b3337532e586616524e6768691495"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a862b3337532e586616524e6768691495"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_init_m</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan, int d, int *N, int M_total, int m)</td></tr>
-<tr class="memitem:a0b87f3a5e41aee11cf0173b91a5b7a00"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b87f3a5e41aee11cf0173b91a5b7a00"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_init_guru</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan, int d, int *N, int M_total, int *n, int m, unsigned nfst_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:a7dd1d42a1c265c29c4d9fa8b30176ff8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7dd1d42a1c265c29c4d9fa8b30176ff8"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_precompute_psi</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a720da4873a2b621c04137f5c9a631e4a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a720da4873a2b621c04137f5c9a631e4a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_trafo</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:aec700716b804a98ff486f14eb51cfdfe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aec700716b804a98ff486f14eb51cfdfe"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_trafo_direct</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ac00306a2df327d5b38e39ee4d555e81d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac00306a2df327d5b38e39ee4d555e81d"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_adjoint</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a7c92e221c13aacd52d6365922b9e43ca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7c92e221c13aacd52d6365922b9e43ca"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_adjoint_direct</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a6f1de42997582d6acaed4749d27dc945"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6f1de42997582d6acaed4749d27dc945"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_finalize</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a447769fb78cd7f9510471e02b5ac1a5e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a447769fb78cd7f9510471e02b5ac1a5e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfstl_full_psi</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan, long double eps)</td></tr>
-<tr class="memitem:a701a71b754f9e3d588bfc21306c156ae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a701a71b754f9e3d588bfc21306c156ae"></a>
-long double </td><td class="memItemRight" valign="bottom"><b>nfstl_phi_hut</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan, int k, int d)</td></tr>
-<tr class="memitem:ab6a612b1061bbd991b57d5a220462ab1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab6a612b1061bbd991b57d5a220462ab1"></a>
-long double </td><td class="memItemRight" valign="bottom"><b>nfstl_phi</b> (<a class="el" href="structnfstl__plan.html">nfstl_plan</a> *ths_plan, long double x, int d)</td></tr>
-<tr class="memitem:a66118abf0bb2273087acbf081224123d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a66118abf0bb2273087acbf081224123d"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfstl_fftw_2N</b> (int n)</td></tr>
-<tr class="memitem:afc9ad7537ca27d07f9ba33e7271da2d6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afc9ad7537ca27d07f9ba33e7271da2d6"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfstl_fftw_2N_rev</b> (int n)</td></tr>
-<tr class="memitem:a0853e9518eca0ab78beb72447d9bcac7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0853e9518eca0ab78beb72447d9bcac7"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_init</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan, int d, int N_total, int M_total, int *N)</td></tr>
-<tr class="memitem:a1db7790fab59cd8e7ae7ee4103fcf179"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1db7790fab59cd8e7ae7ee4103fcf179"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_init_guru</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan, int d, int N_total, int M_total, int *N, int *N1, int m, unsigned nnfft_flags)</td></tr>
-<tr class="memitem:a9ef01f6b9c0c562bf0ad784bf3c9dd02"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ef01f6b9c0c562bf0ad784bf3c9dd02"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_trafo_direct</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a81208f117a1ff58be4b2f7bde83284a3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a81208f117a1ff58be4b2f7bde83284a3"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_adjoint_direct</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ac46acd46be18dc621cfa9db06e5a6904"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac46acd46be18dc621cfa9db06e5a6904"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_trafo</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ae6fbd48312d1f898bc815d9d24ab997b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6fbd48312d1f898bc815d9d24ab997b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_adjoint</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:af6d97c9d5c11383330c1eb4a8af7845e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af6d97c9d5c11383330c1eb4a8af7845e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_precompute_lin_psi</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ac088286367ae957d1d1b86702d730602"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac088286367ae957d1d1b86702d730602"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_precompute_psi</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a95da6a6d7c9c46c4452ceb89030be07f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a95da6a6d7c9c46c4452ceb89030be07f"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_precompute_full_psi</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a18026c7f9d32b1b726713359105e81e4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18026c7f9d32b1b726713359105e81e4"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_precompute_phi_hut</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ac767d45622f34b7182b9ee3ed955023d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac767d45622f34b7182b9ee3ed955023d"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftf_finalize</b> (<a class="el" href="structnnfftf__plan.html">nnfftf_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a03fa16df51ea6c10e65baf058f109c52"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03fa16df51ea6c10e65baf058f109c52"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfft_init</b> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan, int d, int N_total, int M_total, int *N)</td></tr>
-<tr class="memitem:a75a2cb786f4cc4c87082c87a2c32046a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a75a2cb786f4cc4c87082c87a2c32046a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfft_init_guru</b> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan, int d, int N_total, int M_total, int *N, int *N1, int m, unsigned nnfft_flags)</td></tr>
-<tr class="memitem:a7a1000e0d0302bb33c70b63464d4b065"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7a1000e0d0302bb33c70b63464d4b065"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfft_trafo_direct</b> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ad35e9f7ca7bf1c7451a554c2592fddb4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad35e9f7ca7bf1c7451a554c2592fddb4"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfft_adjoint_direct</b> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a994c1748ebe1371c53dd2cb437054d4f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a994c1748ebe1371c53dd2cb437054d4f"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a994c1748ebe1371c53dd2cb437054d4f">nnfft_trafo</a> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan)</td></tr>
-<tr class="memdesc:a994c1748ebe1371c53dd2cb437054d4f"><td class="mdescLeft"> </td><td class="mdescRight">user routines <br/></td></tr>
-<tr class="memitem:ad4f536f3aee7e85acc75c5fcad307b7d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad4f536f3aee7e85acc75c5fcad307b7d"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfft_adjoint</b> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a65983eef73b9f5740214bf720f62fcd6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65983eef73b9f5740214bf720f62fcd6"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a65983eef73b9f5740214bf720f62fcd6">nnfft_precompute_lin_psi</a> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan)</td></tr>
-<tr class="memdesc:a65983eef73b9f5740214bf720f62fcd6"><td class="mdescLeft"> </td><td class="mdescRight">create a lookup table <br/></td></tr>
-<tr class="memitem:a962d6f449cbad4faf81e20328a911c46"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a962d6f449cbad4faf81e20328a911c46"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfft_precompute_psi</b> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a78cf7bac65f6de46182ea1ff509c2af9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78cf7bac65f6de46182ea1ff509c2af9"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9">nnfft_precompute_full_psi</a> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan)</td></tr>
-<tr class="memdesc:a78cf7bac65f6de46182ea1ff509c2af9"><td class="mdescLeft"> </td><td class="mdescRight">computes all entries of B explicitly <br/></td></tr>
-<tr class="memitem:a9e4663c2cdbff65da327400657528580"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9e4663c2cdbff65da327400657528580"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580">nnfft_precompute_phi_hut</a> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan)</td></tr>
-<tr class="memdesc:a9e4663c2cdbff65da327400657528580"><td class="mdescLeft"> </td><td class="mdescRight">initialisation of direct transform <br/></td></tr>
-<tr class="memitem:a9b5bcde6c436f8fe0e8d8dc4fa7a4230"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9b5bcde6c436f8fe0e8d8dc4fa7a4230"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfft_finalize</b> (<a class="el" href="structnnfft__plan.html">nnfft_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a010a880c1cdc5901fc568774e8117380"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a010a880c1cdc5901fc568774e8117380"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_init</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan, int d, int N_total, int M_total, int *N)</td></tr>
-<tr class="memitem:af291f15fa5efec136c99f7a74f6f333b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af291f15fa5efec136c99f7a74f6f333b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_init_guru</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan, int d, int N_total, int M_total, int *N, int *N1, int m, unsigned nnfft_flags)</td></tr>
-<tr class="memitem:a31789d574c1ce35f6c2726b55b9c3e4a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a31789d574c1ce35f6c2726b55b9c3e4a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_trafo_direct</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a69f0e2320028ddb45ab12a3be7ca6f3e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a69f0e2320028ddb45ab12a3be7ca6f3e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_adjoint_direct</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a81228a2d7d5d54aba3cffe5fbd1866d3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a81228a2d7d5d54aba3cffe5fbd1866d3"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_trafo</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a7b3e34dfc295bd18d9a8fe5a43dc0736"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7b3e34dfc295bd18d9a8fe5a43dc0736"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_adjoint</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:afd5503eff636fcfd4b731b4d6bfc2119"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd5503eff636fcfd4b731b4d6bfc2119"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_precompute_lin_psi</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a011e2cf68784c0015eecfd23443067f5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a011e2cf68784c0015eecfd23443067f5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_precompute_psi</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:ae7b90ce759730f0b0ac3e4e35379f7e6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae7b90ce759730f0b0ac3e4e35379f7e6"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_precompute_full_psi</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a5ffb3e0c715973be44b71f55c425668a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ffb3e0c715973be44b71f55c425668a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_precompute_phi_hut</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:a05483e8f729f280b755ebe038425969c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a05483e8f729f280b755ebe038425969c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nnfftl_finalize</b> (<a class="el" href="structnnfftl__plan.html">nnfftl_plan</a> *ths_plan)</td></tr>
-<tr class="memitem:aae08f8a7b735787dbd5eb8ded76ce619"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae08f8a7b735787dbd5eb8ded76ce619"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftf_trafo_direct</b> (<a class="el" href="structnsfftf__plan.html">nsfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a150a780df08f4548980af604e3bf2f03"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a150a780df08f4548980af604e3bf2f03"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftf_adjoint_direct</b> (<a class="el" href="structnsfftf__plan.html">nsfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a813b32fc4e3df02faf046b8145b7ec04"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a813b32fc4e3df02faf046b8145b7ec04"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftf_trafo</b> (<a class="el" href="structnsfftf__plan.html">nsfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:ae2a73ce3575102670d5fd4075fd60299"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae2a73ce3575102670d5fd4075fd60299"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftf_adjoint</b> (<a class="el" href="structnsfftf__plan.html">nsfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a8b730993c5a578afa78f2c69413e477a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8b730993c5a578afa78f2c69413e477a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftf_cp</b> (<a class="el" href="structnsfftf__plan.html">nsfftf_plan</a> *ths, <a class="el" href="structnfftf__plan.html">nfftf_plan</a> *ths_nfft)</td></tr>
-<tr class="memitem:a3363adf9baa0f8b37468db82b6d03286"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3363adf9baa0f8b37468db82b6d03286"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftf_init_random_nodes_coeffs</b> (<a class="el" href="structnsfftf__plan.html">nsfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a466e274abdf984c5b5621fd9dc43f6af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a466e274abdf984c5b5621fd9dc43f6af"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftf_init</b> (<a class="el" href="structnsfftf__plan.html">nsfftf_plan</a> *ths, int d, int J, int M, int m, unsigned flags)</td></tr>
-<tr class="memitem:a82bbeb139266dc60fb5fcd2089b3f9fe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a82bbeb139266dc60fb5fcd2089b3f9fe"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftf_finalize</b> (<a class="el" href="structnsfftf__plan.html">nsfftf_plan</a> *ths)</td></tr>
-<tr class="memitem:a5d7a89ea903b670bc790a08ea37f073c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d7a89ea903b670bc790a08ea37f073c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfft_trafo_direct</b> (<a class="el" href="structnsfft__plan.html">nsfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a816b55033620b857ff80b6315400c448"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a816b55033620b857ff80b6315400c448"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfft_adjoint_direct</b> (<a class="el" href="structnsfft__plan.html">nsfft_plan</a> *ths)</td></tr>
-<tr class="memitem:aee06e4a864e22e2c41f71606a8e2644e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee06e4a864e22e2c41f71606a8e2644e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfft_trafo</b> (<a class="el" href="structnsfft__plan.html">nsfft_plan</a> *ths)</td></tr>
-<tr class="memitem:ab3de4bceeffaea05a29daf75cad04d38"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab3de4bceeffaea05a29daf75cad04d38"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfft_adjoint</b> (<a class="el" href="structnsfft__plan.html">nsfft_plan</a> *ths)</td></tr>
-<tr class="memitem:aa90a04e2110e52bedb70382704f3f004"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa90a04e2110e52bedb70382704f3f004"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfft_cp</b> (<a class="el" href="structnsfft__plan.html">nsfft_plan</a> *ths, <a class="el" href="structnfft__plan.html">nfft_plan</a> *ths_nfft)</td></tr>
-<tr class="memitem:a7cbc20c44eeecadc5c30f4159616f30a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7cbc20c44eeecadc5c30f4159616f30a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfft_init_random_nodes_coeffs</b> (<a class="el" href="structnsfft__plan.html">nsfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a1b7f87f960cb22420a933e915c539aaf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b7f87f960cb22420a933e915c539aaf"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfft_init</b> (<a class="el" href="structnsfft__plan.html">nsfft_plan</a> *ths, int d, int J, int M, int m, unsigned flags)</td></tr>
-<tr class="memitem:aef170ad12eff8fde1c78bc6071142b36"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aef170ad12eff8fde1c78bc6071142b36"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfft_finalize</b> (<a class="el" href="structnsfft__plan.html">nsfft_plan</a> *ths)</td></tr>
-<tr class="memitem:a8f34911d7f056c5206ce9efe81477774"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f34911d7f056c5206ce9efe81477774"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftl_trafo_direct</b> (<a class="el" href="structnsfftl__plan.html">nsfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:af08a9578e5926022bfd2032f14f78b15"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af08a9578e5926022bfd2032f14f78b15"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftl_adjoint_direct</b> (<a class="el" href="structnsfftl__plan.html">nsfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:ad13e87c32603d30c0fcfabf017feac6f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad13e87c32603d30c0fcfabf017feac6f"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftl_trafo</b> (<a class="el" href="structnsfftl__plan.html">nsfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a1ac447e3fb8ccb5a7b50a5af8709f33e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1ac447e3fb8ccb5a7b50a5af8709f33e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftl_adjoint</b> (<a class="el" href="structnsfftl__plan.html">nsfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a78f38bd6d8f554ef1c8e318234ca0f3e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a78f38bd6d8f554ef1c8e318234ca0f3e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftl_cp</b> (<a class="el" href="structnsfftl__plan.html">nsfftl_plan</a> *ths, <a class="el" href="structnfftl__plan.html">nfftl_plan</a> *ths_nfft)</td></tr>
-<tr class="memitem:af6d3d908336159a4be2f16966c70ebc0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af6d3d908336159a4be2f16966c70ebc0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftl_init_random_nodes_coeffs</b> (<a class="el" href="structnsfftl__plan.html">nsfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a64c1bf471a36994117e7e660d7ba99d2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a64c1bf471a36994117e7e660d7ba99d2"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftl_init</b> (<a class="el" href="structnsfftl__plan.html">nsfftl_plan</a> *ths, int d, int J, int M, int m, unsigned flags)</td></tr>
-<tr class="memitem:ab243ff1dc03d549b6ee72a986a905386"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab243ff1dc03d549b6ee72a986a905386"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nsfftl_finalize</b> (<a class="el" href="structnsfftl__plan.html">nsfftl_plan</a> *ths)</td></tr>
-<tr class="memitem:a5651ec188110aa7615f2342f0e50ea52"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5651ec188110aa7615f2342f0e50ea52"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mrif_inh_2d1d_trafo</b> (<a class="el" href="structmrif__inh__2d1d__plan.html">mrif_inh_2d1d_plan</a> *ths)</td></tr>
-<tr class="memitem:a92cb0fe77b9cf4c4c61af21a207262b6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a92cb0fe77b9cf4c4c61af21a207262b6"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mrif_inh_2d1d_adjoint</b> (<a class="el" href="structmrif__inh__2d1d__plan.html">mrif_inh_2d1d_plan</a> *ths)</td></tr>
-<tr class="memitem:abc16967817cccb9f22c42d65541907b3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc16967817cccb9f22c42d65541907b3"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mrif_inh_2d1d_init_guru</b> (<a class="el" href="structmrif__inh__2d1d__plan.html">mrif_inh_2d1d_plan</a> *ths, int *N, int M, int *n, int m, float sigma, unsigned nfft_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:a2ae8486acde371aec1c5f6e7d9b39703"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ae8486acde371aec1c5f6e7d9b39703"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mrif_inh_2d1d_finalize</b> (<a class="el" href="structmrif__inh__2d1d__plan.html">mrif_inh_2d1d_plan</a> *ths)</td></tr>
-<tr class="memitem:acf24e20c973caf86bfeb1929b67034fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf24e20c973caf86bfeb1929b67034fa"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mrif_inh_3d_trafo</b> (<a class="el" href="structmrif__inh__3d__plan.html">mrif_inh_3d_plan</a> *ths)</td></tr>
-<tr class="memitem:addb2caf1322371cee040f80d9c6d86b5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="addb2caf1322371cee040f80d9c6d86b5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mrif_inh_3d_adjoint</b> (<a class="el" href="structmrif__inh__3d__plan.html">mrif_inh_3d_plan</a> *ths)</td></tr>
-<tr class="memitem:ac133e266d5c1887ddc374a52cd86ba51"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac133e266d5c1887ddc374a52cd86ba51"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mrif_inh_3d_init_guru</b> (<a class="el" href="structmrif__inh__3d__plan.html">mrif_inh_3d_plan</a> *ths, int *N, int M, int *n, int m, float sigma, unsigned nfft_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:a823d3b63a31d3e320a42c94f7d4c760e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a823d3b63a31d3e320a42c94f7d4c760e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mrif_inh_3d_finalize</b> (<a class="el" href="structmrif__inh__3d__plan.html">mrif_inh_3d_plan</a> *ths)</td></tr>
-<tr class="memitem:a0dad1c9466615a5791b5037ab2f85373"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0dad1c9466615a5791b5037ab2f85373"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mri_inh_2d1d_trafo</b> (<a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> *ths)</td></tr>
-<tr class="memitem:ae431fe3e0ef4dc056f58d827f804d0a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae431fe3e0ef4dc056f58d827f804d0a4"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mri_inh_2d1d_adjoint</b> (<a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> *ths)</td></tr>
-<tr class="memitem:a8010f0f3bd86f3bd6516751b876e6b14"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8010f0f3bd86f3bd6516751b876e6b14"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mri_inh_2d1d_init_guru</b> (<a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> *ths, int *N, int M, int *n, int m, double sigma, unsigned nfft_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:aaa9aa7ca6642fde2d6926a6430149fa1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaa9aa7ca6642fde2d6926a6430149fa1"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mri_inh_2d1d_finalize</b> (<a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> *ths)</td></tr>
-<tr class="memitem:ad95016880bd9ad2af3e59185c5312d99"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad95016880bd9ad2af3e59185c5312d99"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mri_inh_3d_trafo</b> (<a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> *ths)</td></tr>
-<tr class="memitem:ac385874f7e751acd9120537ac58069b8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac385874f7e751acd9120537ac58069b8"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mri_inh_3d_adjoint</b> (<a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> *ths)</td></tr>
-<tr class="memitem:adaab02ce08e45dab866fd5f841700afb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adaab02ce08e45dab866fd5f841700afb"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mri_inh_3d_init_guru</b> (<a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> *ths, int *N, int M, int *n, int m, double sigma, unsigned nfft_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:adcf8b78420d90797f43abb15be1d9cf5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adcf8b78420d90797f43abb15be1d9cf5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mri_inh_3d_finalize</b> (<a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> *ths)</td></tr>
-<tr class="memitem:a3979a630f875c2548e7e7860fa2a4234"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3979a630f875c2548e7e7860fa2a4234"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mril_inh_2d1d_trafo</b> (<a class="el" href="structmril__inh__2d1d__plan.html">mril_inh_2d1d_plan</a> *ths)</td></tr>
-<tr class="memitem:aed8d14ef64bb1702965856d648bb0e81"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed8d14ef64bb1702965856d648bb0e81"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mril_inh_2d1d_adjoint</b> (<a class="el" href="structmril__inh__2d1d__plan.html">mril_inh_2d1d_plan</a> *ths)</td></tr>
-<tr class="memitem:a51539d9bdb03bc862c172f4553310006"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a51539d9bdb03bc862c172f4553310006"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mril_inh_2d1d_init_guru</b> (<a class="el" href="structmril__inh__2d1d__plan.html">mril_inh_2d1d_plan</a> *ths, int *N, int M, int *n, int m, long double sigma, unsigned nfft_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:af00281fab7999742510498d0235027c9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af00281fab7999742510498d0235027c9"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mril_inh_2d1d_finalize</b> (<a class="el" href="structmril__inh__2d1d__plan.html">mril_inh_2d1d_plan</a> *ths)</td></tr>
-<tr class="memitem:a9a935b5e070c44bb7ef68cfd166ed818"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a935b5e070c44bb7ef68cfd166ed818"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mril_inh_3d_trafo</b> (<a class="el" href="structmril__inh__3d__plan.html">mril_inh_3d_plan</a> *ths)</td></tr>
-<tr class="memitem:ae40e4f02cdb2fadeac9f4663d2e72a9e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae40e4f02cdb2fadeac9f4663d2e72a9e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mril_inh_3d_adjoint</b> (<a class="el" href="structmril__inh__3d__plan.html">mril_inh_3d_plan</a> *ths)</td></tr>
-<tr class="memitem:af29e97397fd45aebea1cc6a17f344aae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af29e97397fd45aebea1cc6a17f344aae"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mril_inh_3d_init_guru</b> (<a class="el" href="structmril__inh__3d__plan.html">mril_inh_3d_plan</a> *ths, int *N, int M, int *n, int m, long double sigma, unsigned nfft_flags, unsigned fftw_flags)</td></tr>
-<tr class="memitem:a5e3f5c6460102eaf60170aa832cd6b20"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5e3f5c6460102eaf60170aa832cd6b20"></a>
-void </td><td class="memItemRight" valign="bottom"><b>mril_inh_3d_finalize</b> (<a class="el" href="structmril__inh__3d__plan.html">mril_inh_3d_plan</a> *ths)</td></tr>
-<tr class="memitem:a3aff93c37d515728069bf5be55130f61"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3aff93c37d515728069bf5be55130f61"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_init</b> (<a class="el" href="structnfsftf__plan.html">nfsftf_plan</a> *plan, int N, int M)</td></tr>
-<tr class="memitem:a43209c6040e32b10470f814734fddbd9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a43209c6040e32b10470f814734fddbd9"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_init_advanced</b> (<a class="el" href="structnfsftf__plan.html">nfsftf_plan</a> *plan, int N, int M, unsigned int nfsft_flags)</td></tr>
-<tr class="memitem:a708f132f101d3e5281d5e55db2b0fbc0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a708f132f101d3e5281d5e55db2b0fbc0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_init_guru</b> (<a class="el" href="structnfsftf__plan.html">nfsftf_plan</a> *plan, int N, int M, unsigned int nfsft_flags, unsigned int nfft_flags, int nfft_cutoff)</td></tr>
-<tr class="memitem:a9adc8da9ffdeb957aa2df5807d12172e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9adc8da9ffdeb957aa2df5807d12172e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_precompute</b> (int N, float kappa, unsigned int nfsft_flags, unsigned int fpt_flags)</td></tr>
-<tr class="memitem:a5401f9eb13507d7f9bf9f95300380268"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5401f9eb13507d7f9bf9f95300380268"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_forget</b> (void)</td></tr>
-<tr class="memitem:a18ee188d7021103bdd1589b802a7e407"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18ee188d7021103bdd1589b802a7e407"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_trafo_direct</b> (<a class="el" href="structnfsftf__plan.html">nfsftf_plan</a> *plan)</td></tr>
-<tr class="memitem:a52a2acd6b761ce7a884a136524a18584"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a52a2acd6b761ce7a884a136524a18584"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_adjoint_direct</b> (<a class="el" href="structnfsftf__plan.html">nfsftf_plan</a> *plan)</td></tr>
-<tr class="memitem:ab50b55785a02c4ffd0b3b1399cb9ccf1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab50b55785a02c4ffd0b3b1399cb9ccf1"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_trafo</b> (<a class="el" href="structnfsftf__plan.html">nfsftf_plan</a> *plan)</td></tr>
-<tr class="memitem:acfa6e095a34d2045182ea22cde56ed24"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acfa6e095a34d2045182ea22cde56ed24"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_adjoint</b> (<a class="el" href="structnfsftf__plan.html">nfsftf_plan</a> *plan)</td></tr>
-<tr class="memitem:a70ff7515207398223d232d0687dee80c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a70ff7515207398223d232d0687dee80c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_finalize</b> (<a class="el" href="structnfsftf__plan.html">nfsftf_plan</a> *plan)</td></tr>
-<tr class="memitem:adce47b633284c7b29e644a4e16230ed3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adce47b633284c7b29e644a4e16230ed3"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftf_precompute_x</b> (<a class="el" href="structnfsftf__plan.html">nfsftf_plan</a> *plan)</td></tr>
-<tr class="memitem:ga65cda3f4a3edc5eb39c697cf34b1f0b9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga65cda3f4a3edc5eb39c697cf34b1f0b9"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_init</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan, int N, int M)</td></tr>
-<tr class="memitem:ga2812aa5beba0eb7efd3072bf323a0155"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2812aa5beba0eb7efd3072bf323a0155"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_init_advanced</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan, int N, int M, unsigned int nfsft_flags)</td></tr>
-<tr class="memitem:gafff6158abcefa9a75bcfa41af5a79089"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafff6158abcefa9a75bcfa41af5a79089"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_init_guru</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan, int N, int M, unsigned int nfsft_flags, unsigned int nfft_flags, int nfft_cutoff)</td></tr>
-<tr class="memitem:gabe87aeea1f7cfef9ae8febb16d702f3b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gabe87aeea1f7cfef9ae8febb16d702f3b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_precompute</b> (int N, double kappa, unsigned int nfsft_flags, unsigned int fpt_flags)</td></tr>
-<tr class="memitem:ga3b69bca6c76a63877534f5a9781bf285"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3b69bca6c76a63877534f5a9781bf285"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_forget</b> (void)</td></tr>
-<tr class="memitem:ga7628057164579a29cc77487cda6772e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7628057164579a29cc77487cda6772e5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_trafo_direct</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga7cfaacc3393dea5c895859fa035e3e06"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7cfaacc3393dea5c895859fa035e3e06"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_adjoint_direct</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga5796fc68c432d46dfcab7abd8c56ee22"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5796fc68c432d46dfcab7abd8c56ee22"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_trafo</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga813bb48d404c7286310733c99a81a169"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga813bb48d404c7286310733c99a81a169"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_adjoint</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:gaa63e193a27d84059742ff25ff81e2ed1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa63e193a27d84059742ff25ff81e2ed1"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_finalize</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga7a7fa6722d6ba3aade4c69299af86e4e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7a7fa6722d6ba3aade4c69299af86e4e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_precompute_x</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:a7ba9fe6d07ea6928286876aaad517edf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ba9fe6d07ea6928286876aaad517edf"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_init</b> (<a class="el" href="structnfsftl__plan.html">nfsftl_plan</a> *plan, int N, int M)</td></tr>
-<tr class="memitem:a7cf6938e64d62373ecfb94bfe9dce8ef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7cf6938e64d62373ecfb94bfe9dce8ef"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_init_advanced</b> (<a class="el" href="structnfsftl__plan.html">nfsftl_plan</a> *plan, int N, int M, unsigned int nfsft_flags)</td></tr>
-<tr class="memitem:a2b186aa674c4c3a923bcb3b15109f7cf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b186aa674c4c3a923bcb3b15109f7cf"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_init_guru</b> (<a class="el" href="structnfsftl__plan.html">nfsftl_plan</a> *plan, int N, int M, unsigned int nfsft_flags, unsigned int nfft_flags, int nfft_cutoff)</td></tr>
-<tr class="memitem:a9759900e56cb74834b01e57e34218a4f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9759900e56cb74834b01e57e34218a4f"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_precompute</b> (int N, long double kappa, unsigned int nfsft_flags, unsigned int fpt_flags)</td></tr>
-<tr class="memitem:a3d09a53a36a1ca79748ee6f0852cd77c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d09a53a36a1ca79748ee6f0852cd77c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_forget</b> (void)</td></tr>
-<tr class="memitem:abe5f98e7b22b8aebe56f79bd84d2c43a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe5f98e7b22b8aebe56f79bd84d2c43a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_trafo_direct</b> (<a class="el" href="structnfsftl__plan.html">nfsftl_plan</a> *plan)</td></tr>
-<tr class="memitem:a2540dc3f9b3cf3d117e7282bb91cbe2f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2540dc3f9b3cf3d117e7282bb91cbe2f"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_adjoint_direct</b> (<a class="el" href="structnfsftl__plan.html">nfsftl_plan</a> *plan)</td></tr>
-<tr class="memitem:aa6c645664adc5fc32e0ad4ad2c39ad8c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa6c645664adc5fc32e0ad4ad2c39ad8c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_trafo</b> (<a class="el" href="structnfsftl__plan.html">nfsftl_plan</a> *plan)</td></tr>
-<tr class="memitem:a3d1b4b881054aee1d006f2de008a28ca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d1b4b881054aee1d006f2de008a28ca"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_adjoint</b> (<a class="el" href="structnfsftl__plan.html">nfsftl_plan</a> *plan)</td></tr>
-<tr class="memitem:ab5d37f72aa8caef32a3b664df1aff334"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab5d37f72aa8caef32a3b664df1aff334"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_finalize</b> (<a class="el" href="structnfsftl__plan.html">nfsftl_plan</a> *plan)</td></tr>
-<tr class="memitem:a7b20b3319d95c11edb6703976c97d5aa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7b20b3319d95c11edb6703976c97d5aa"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsftl_precompute_x</b> (<a class="el" href="structnfsftl__plan.html">nfsftl_plan</a> *plan)</td></tr>
-<tr class="memitem:a99ed7214bd4ac2629f025c418de4cce6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a99ed7214bd4ac2629f025c418de4cce6"></a>
-<a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> </td><td class="memItemRight" valign="bottom"><b>fptf_init</b> (const int M, const int t, const unsigned int flags)</td></tr>
-<tr class="memitem:af6fd137ff8a9d4e4bfadbdd286fed22c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af6fd137ff8a9d4e4bfadbdd286fed22c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptf_precompute</b> (<a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> set, const int m, float *alpha, float *beta, float *gam, int k_start, const float threshold)</td></tr>
-<tr class="memitem:a006e0ccb6b9cb6f93cf65943104cb526"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a006e0ccb6b9cb6f93cf65943104cb526"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptf_trafo_direct</b> (<a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> set, const int m, const fftwf_complex *x, fftwf_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:ab9088c2cface913de972e5fda67b7318"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab9088c2cface913de972e5fda67b7318"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptf_trafo</b> (<a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> set, const int m, const fftwf_complex *x, fftwf_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a0047f35347e74bf2d37e1329697532f2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0047f35347e74bf2d37e1329697532f2"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptf_transposed_direct</b> (<a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> set, const int m, fftwf_complex *x, fftwf_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a739fb9ad942ef7112f99801cb88b2a8b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a739fb9ad942ef7112f99801cb88b2a8b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptf_transposed</b> (<a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> set, const int m, fftwf_complex *x, fftwf_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a5b986d2fd4647b0d42df6f593ba3245e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b986d2fd4647b0d42df6f593ba3245e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptf_finalize</b> (<a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> set)</td></tr>
-<tr class="memitem:ad103ad18c75ee5dd048392dfd1ca7305"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad103ad18c75ee5dd048392dfd1ca7305"></a>
-<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> </td><td class="memItemRight" valign="bottom"><b>fpt_init</b> (const int M, const int t, const unsigned int flags)</td></tr>
-<tr class="memitem:ad3c3b30fda57364c92958cc7390b6378"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3c3b30fda57364c92958cc7390b6378"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_precompute</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, const int m, double *alpha, double *beta, double *gam, int k_start, const double threshold)</td></tr>
-<tr class="memitem:a9cf316f764ebe8fc8c323ee8e25575c4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9cf316f764ebe8fc8c323ee8e25575c4"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_trafo_direct</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, const int m, const fftw_complex *x, fftw_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a16d416e80a919ac119d5cea13fce79d0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a16d416e80a919ac119d5cea13fce79d0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_trafo</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, const int m, const fftw_complex *x, fftw_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:ac0236446f79ad475c1cdc2b44c6dcc09"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac0236446f79ad475c1cdc2b44c6dcc09"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_transposed_direct</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, const int m, fftw_complex *x, fftw_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:abacb4c41365ca6f32b72688376aa86e1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abacb4c41365ca6f32b72688376aa86e1"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_transposed</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, const int m, fftw_complex *x, fftw_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a7f2a1b915af8d0e7f2eb2f37ddb6772c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7f2a1b915af8d0e7f2eb2f37ddb6772c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fpt_finalize</b> (<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set)</td></tr>
-<tr class="memitem:a29a588fe645ac374090459950d9a6670"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a29a588fe645ac374090459950d9a6670"></a>
-<a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> </td><td class="memItemRight" valign="bottom"><b>fptl_init</b> (const int M, const int t, const unsigned int flags)</td></tr>
-<tr class="memitem:a5bec17cbb38bc370251f2c0c837fdeb0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5bec17cbb38bc370251f2c0c837fdeb0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptl_precompute</b> (<a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> set, const int m, long double *alpha, long double *beta, long double *gam, int k_start, const long double threshold)</td></tr>
-<tr class="memitem:a192094ff3bd8fa9c2dfee9bb760c5218"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a192094ff3bd8fa9c2dfee9bb760c5218"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptl_trafo_direct</b> (<a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> set, const int m, const fftwl_complex *x, fftwl_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a783431b575e6823de7cb2ba9536917d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a783431b575e6823de7cb2ba9536917d4"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptl_trafo</b> (<a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> set, const int m, const fftwl_complex *x, fftwl_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a02a45978d9d953a365c400c6a3a7d872"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02a45978d9d953a365c400c6a3a7d872"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptl_transposed_direct</b> (<a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> set, const int m, fftwl_complex *x, fftwl_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:a55a8bcd4d06045f1bd40265e181d0d31"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55a8bcd4d06045f1bd40265e181d0d31"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptl_transposed</b> (<a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> set, const int m, fftwl_complex *x, fftwl_complex *y, const int k_end, const unsigned int flags)</td></tr>
-<tr class="memitem:ac9f254034246b927eaa45f8398da096a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9f254034246b927eaa45f8398da096a"></a>
-void </td><td class="memItemRight" valign="bottom"><b>fptl_finalize</b> (<a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> set)</td></tr>
-<tr class="memitem:a126dc23ff74589bf7717f0d5eb92934d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a126dc23ff74589bf7717f0d5eb92934d"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftf_precompute</b> (<a class="el" href="structnfsoftf__plan__.html">nfsoftf_plan</a> *plan)</td></tr>
-<tr class="memitem:aab919ac542ffa0c99c311ff8a0787e5c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aab919ac542ffa0c99c311ff8a0787e5c"></a>
-<a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> </td><td class="memItemRight" valign="bottom"><b>nfsoftf_SO3_single_fpt_init</b> (int l, int k, int m, unsigned int flags, int kappa)</td></tr>
-<tr class="memitem:ab85f7c141114c260127f0e8a507c295d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab85f7c141114c260127f0e8a507c295d"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftf_SO3_fpt</b> (fftwf_complex *coeffs, <a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> set, int l, int k, int m, unsigned int nfsoft_flags)</td></tr>
-<tr class="memitem:a0cfd79f6121c052cfa2e8e07d76dd92c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0cfd79f6121c052cfa2e8e07d76dd92c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftf_SO3_fpt_transposed</b> (fftwf_complex *coeffs, <a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> set, int l, int k, int m, unsigned int nfsoft_flags)</td></tr>
-<tr class="memitem:aff3382f0ef7121a0877d678b1cfeb3a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aff3382f0ef7121a0877d678b1cfeb3a4"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftf_init</b> (<a class="el" href="structnfsoftf__plan__.html">nfsoftf_plan</a> *plan, int N, int M)</td></tr>
-<tr class="memitem:aee344825ad78ff13375f194b3533f3f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee344825ad78ff13375f194b3533f3f4"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftf_init_advanced</b> (<a class="el" href="structnfsoftf__plan__.html">nfsoftf_plan</a> *plan, int N, int M, unsigned int nfsoft_flags)</td></tr>
-<tr class="memitem:ae3bb027d4ec83a8a0b92ea96bc5cabad"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3bb027d4ec83a8a0b92ea96bc5cabad"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftf_init_guru</b> (<a class="el" href="structnfsoftf__plan__.html">nfsoftf_plan</a> *plan, int N, int M, unsigned int nfsoft_flags, unsigned int nfft_flags, int nfft_cutoff, int fpt_kappa)</td></tr>
-<tr class="memitem:ad44ae4f31e450bd5757b6498d668d02f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad44ae4f31e450bd5757b6498d668d02f"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftf_trafo</b> (<a class="el" href="structnfsoftf__plan__.html">nfsoftf_plan</a> *plan_nfsoft)</td></tr>
-<tr class="memitem:ab6701999f8f6cc4c115a6b780eea9d77"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab6701999f8f6cc4c115a6b780eea9d77"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftf_adjoint</b> (<a class="el" href="structnfsoftf__plan__.html">nfsoftf_plan</a> *plan_nfsoft)</td></tr>
-<tr class="memitem:ac19e7732a4ffd5f9a31a121c040370a5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac19e7732a4ffd5f9a31a121c040370a5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftf_finalize</b> (<a class="el" href="structnfsoftf__plan__.html">nfsoftf_plan</a> *plan)</td></tr>
-<tr class="memitem:a40f362a2e5589c83315cec24d42af7f9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a40f362a2e5589c83315cec24d42af7f9"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfsoftf_posN</b> (int n, int m, int B)</td></tr>
-<tr class="memitem:a123df5d17a0d43fe5e061ac0fb8c1d23"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a123df5d17a0d43fe5e061ac0fb8c1d23"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoft_precompute</b> (<a class="el" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan)</td></tr>
-<tr class="memitem:ad8bf7646fcf34c3cda08123798ca5c95"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8bf7646fcf34c3cda08123798ca5c95"></a>
-<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> </td><td class="memItemRight" valign="bottom"><b>nfsoft_SO3_single_fpt_init</b> (int l, int k, int m, unsigned int flags, int kappa)</td></tr>
-<tr class="memitem:a112f47515a696db8b9c5fd15b6b9232b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a112f47515a696db8b9c5fd15b6b9232b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoft_SO3_fpt</b> (fftw_complex *coeffs, <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, int l, int k, int m, unsigned int nfsoft_flags)</td></tr>
-<tr class="memitem:a3f64d6d2a6b3e9f52a2090aa51867c03"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f64d6d2a6b3e9f52a2090aa51867c03"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoft_SO3_fpt_transposed</b> (fftw_complex *coeffs, <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> set, int l, int k, int m, unsigned int nfsoft_flags)</td></tr>
-<tr class="memitem:a31c884458165fa204073c6c16c10775e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a31c884458165fa204073c6c16c10775e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoft_init</b> (<a class="el" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan, int N, int M)</td></tr>
-<tr class="memitem:af4aec4ee2a2a5d56ca27c4f1a7f90b18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af4aec4ee2a2a5d56ca27c4f1a7f90b18"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoft_init_advanced</b> (<a class="el" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan, int N, int M, unsigned int nfsoft_flags)</td></tr>
-<tr class="memitem:a1c13cdd3f82f48fa41acdd313cdc2052"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1c13cdd3f82f48fa41acdd313cdc2052"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoft_init_guru</b> (<a class="el" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan, int N, int M, unsigned int nfsoft_flags, unsigned int nfft_flags, int nfft_cutoff, int fpt_kappa)</td></tr>
-<tr class="memitem:ae243cd75d7571a99eae53818e32355fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae243cd75d7571a99eae53818e32355fb"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoft_trafo</b> (<a class="el" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan_nfsoft)</td></tr>
-<tr class="memitem:a08395b1dd90f9a2565685d17460afc5b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a08395b1dd90f9a2565685d17460afc5b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoft_adjoint</b> (<a class="el" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan_nfsoft)</td></tr>
-<tr class="memitem:a30b5c6ae1ff496680f11ddcaad2d5a47"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a30b5c6ae1ff496680f11ddcaad2d5a47"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoft_finalize</b> (<a class="el" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan)</td></tr>
-<tr class="memitem:a7a81dd322c0de63c61c238e32bd8969d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7a81dd322c0de63c61c238e32bd8969d"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfsoft_posN</b> (int n, int m, int B)</td></tr>
-<tr class="memitem:a85ade4ba1f835c82bcb2acbd9adc24b9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a85ade4ba1f835c82bcb2acbd9adc24b9"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftl_precompute</b> (<a class="el" href="structnfsoftl__plan__.html">nfsoftl_plan</a> *plan)</td></tr>
-<tr class="memitem:ab3a39f78ce9698d55f368e3df7fb0198"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab3a39f78ce9698d55f368e3df7fb0198"></a>
-<a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> </td><td class="memItemRight" valign="bottom"><b>nfsoftl_SO3_single_fpt_init</b> (int l, int k, int m, unsigned int flags, int kappa)</td></tr>
-<tr class="memitem:a3d51082ff48d917c2c8aa485a01810d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d51082ff48d917c2c8aa485a01810d8"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftl_SO3_fpt</b> (fftwl_complex *coeffs, <a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> set, int l, int k, int m, unsigned int nfsoft_flags)</td></tr>
-<tr class="memitem:acdaa6dd5d2fe9cba39e41c9553ed8cae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acdaa6dd5d2fe9cba39e41c9553ed8cae"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftl_SO3_fpt_transposed</b> (fftwl_complex *coeffs, <a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> set, int l, int k, int m, unsigned int nfsoft_flags)</td></tr>
-<tr class="memitem:a1ad37a52b2fa051bb5fe92d37cf0bf84"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1ad37a52b2fa051bb5fe92d37cf0bf84"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftl_init</b> (<a class="el" href="structnfsoftl__plan__.html">nfsoftl_plan</a> *plan, int N, int M)</td></tr>
-<tr class="memitem:a7547538a90a8d41999e2546c667e7102"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7547538a90a8d41999e2546c667e7102"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftl_init_advanced</b> (<a class="el" href="structnfsoftl__plan__.html">nfsoftl_plan</a> *plan, int N, int M, unsigned int nfsoft_flags)</td></tr>
-<tr class="memitem:af3ce458721f4e5b420b61613525137e0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af3ce458721f4e5b420b61613525137e0"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftl_init_guru</b> (<a class="el" href="structnfsoftl__plan__.html">nfsoftl_plan</a> *plan, int N, int M, unsigned int nfsoft_flags, unsigned int nfft_flags, int nfft_cutoff, int fpt_kappa)</td></tr>
-<tr class="memitem:ad2c5c958d3c13b0cd9527025af0f6e29"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad2c5c958d3c13b0cd9527025af0f6e29"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftl_trafo</b> (<a class="el" href="structnfsoftl__plan__.html">nfsoftl_plan</a> *plan_nfsoft)</td></tr>
-<tr class="memitem:af440be0c56d2d1953cf5316582b84ede"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af440be0c56d2d1953cf5316582b84ede"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftl_adjoint</b> (<a class="el" href="structnfsoftl__plan__.html">nfsoftl_plan</a> *plan_nfsoft)</td></tr>
-<tr class="memitem:af0805495fc6c08955599186bf721cf13"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af0805495fc6c08955599186bf721cf13"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsoftl_finalize</b> (<a class="el" href="structnfsoftl__plan__.html">nfsoftl_plan</a> *plan)</td></tr>
-<tr class="memitem:a51ad8bfaa076e695c082a7cfa60f3f12"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a51ad8bfaa076e695c082a7cfa60f3f12"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfsoftl_posN</b> (int n, int m, int B)</td></tr>
-<tr class="memitem:ae23d5ef292fbe751bc0d5ed6cfcae2b5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae23d5ef292fbe751bc0d5ed6cfcae2b5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverf_init_advanced_complex</b> (<a class="el" href="structsolverf__plan__complex.html">solverf_plan_complex</a> *ths, <a class="el" href="structnfftf__mv__plan__complex.html">nfftf_mv_plan_complex</a> *mv, unsigned flags)</td></tr>
-<tr class="memitem:a76250063357080589a41db463e113dab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a76250063357080589a41db463e113dab"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverf_init_complex</b> (<a class="el" href="structsolverf__plan__complex.html">solverf_plan_complex</a> *ths, <a class="el" href="structnfftf__mv__plan__complex.html">nfftf_mv_plan_complex</a> *mv)</td></tr>
-<tr class="memitem:a49fae3a25f94a5e8b04c41205e942ea5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a49fae3a25f94a5e8b04c41205e942ea5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverf_before_loop_complex</b> (<a class="el" href="structsolverf__plan__complex.html">solverf_plan_complex</a> *ths)</td></tr>
-<tr class="memitem:aac2301a124b586c1fba6363edc152872"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aac2301a124b586c1fba6363edc152872"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverf_loop_one_step_complex</b> (<a class="el" href="structsolverf__plan__complex.html">solverf_plan_complex</a> *ths)</td></tr>
-<tr class="memitem:ae481120286ed0c292151ce62c6b3d2f1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae481120286ed0c292151ce62c6b3d2f1"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverf_finalize_complex</b> (<a class="el" href="structsolverf__plan__complex.html">solverf_plan_complex</a> *ths)</td></tr>
-<tr class="memitem:a7aab180f1d34c63103c98cb1335b621e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7aab180f1d34c63103c98cb1335b621e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverf_init_advanced_double</b> (<a class="el" href="structsolverf__plan__double.html">solverf_plan_double</a> *ths, <a class="el" href="structnfftf__mv__plan__double.html">nfftf_mv_plan_double</a> *mv, unsigned flags)</td></tr>
-<tr class="memitem:ab9cfdca5f92d0c296e067ab2e47a7128"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab9cfdca5f92d0c296e067ab2e47a7128"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverf_solver_init_double</b> (<a class="el" href="structsolverf__plan__double.html">solverf_plan_double</a> *ths, <a class="el" href="structnfftf__mv__plan__double.html">nfftf_mv_plan_double</a> *mv)</td></tr>
-<tr class="memitem:ad52d3e6444d5bd54cc3f599b1473c8cf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad52d3e6444d5bd54cc3f599b1473c8cf"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverf_solver_before_loop_double</b> (<a class="el" href="structsolverf__plan__double.html">solverf_plan_double</a> *ths)</td></tr>
-<tr class="memitem:ac9bacf478095bc5055af479bc16d9475"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9bacf478095bc5055af479bc16d9475"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverf_solver_loop_one_step_double</b> (<a class="el" href="structsolverf__plan__double.html">solverf_plan_double</a> *ths)</td></tr>
-<tr class="memitem:a1ee053c9bb4ddec8e117081c7442ba9b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1ee053c9bb4ddec8e117081c7442ba9b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverf_solver_finalize_double</b> (<a class="el" href="structsolverf__plan__double.html">solverf_plan_double</a> *ths)</td></tr>
-<tr class="memitem:ad8962fc79683a67a84b10593d8e0103c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8962fc79683a67a84b10593d8e0103c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solver_init_advanced_complex</b> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths, <a class="el" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a> *mv, unsigned flags)</td></tr>
-<tr class="memitem:a6662c51f86e40ded7773d1954ec77ca2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6662c51f86e40ded7773d1954ec77ca2"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solver_init_complex</b> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths, <a class="el" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a> *mv)</td></tr>
-<tr class="memitem:a54498806e5ab4046a2ef8fc426e5b141"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a54498806e5ab4046a2ef8fc426e5b141"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solver_before_loop_complex</b> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</td></tr>
-<tr class="memitem:a3b80b04ee3429b04c310992fb0a12420"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b80b04ee3429b04c310992fb0a12420"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420">solver_loop_one_step_complex</a> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</td></tr>
-<tr class="memdesc:a3b80b04ee3429b04c310992fb0a12420"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step <br/></td></tr>
-<tr class="memitem:a2f44c78734390e47d72578f4c9cbe709"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f44c78734390e47d72578f4c9cbe709"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709">solver_finalize_complex</a> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</td></tr>
-<tr class="memdesc:a2f44c78734390e47d72578f4c9cbe709"><td class="mdescLeft"> </td><td class="mdescRight">void solver_finalize <br/></td></tr>
-<tr class="memitem:a1a4544ab96d14c812e3b330c439c3d80"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a4544ab96d14c812e3b330c439c3d80"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a1a4544ab96d14c812e3b330c439c3d80">solver_init_advanced_double</a> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths, <a class="el" href="structnfft__mv__plan__double.html">nfft_mv_plan_double</a> *mv, unsigned flags)</td></tr>
-<tr class="memdesc:a1a4544ab96d14c812e3b330c439c3d80"><td class="mdescLeft"> </td><td class="mdescRight">void solver_finalize <br/></td></tr>
-<tr class="memitem:a5f0f420b9eea82330931a0cc9b0b6b54"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f0f420b9eea82330931a0cc9b0b6b54"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solver_solver_init_double</b> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths, <a class="el" href="structnfft__mv__plan__double.html">nfft_mv_plan_double</a> *mv)</td></tr>
-<tr class="memitem:ae57f41c91d348569e0108042b4d6e518"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae57f41c91d348569e0108042b4d6e518"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solver_solver_before_loop_double</b> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</td></tr>
-<tr class="memitem:a4249ae5081906e8af8c04885e9da470f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4249ae5081906e8af8c04885e9da470f"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solver_solver_loop_one_step_double</b> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</td></tr>
-<tr class="memitem:aa85b6edbe1a34d5cfaf4c65e62549ff5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa85b6edbe1a34d5cfaf4c65e62549ff5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solver_solver_finalize_double</b> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</td></tr>
-<tr class="memitem:a3d083e820487819be320c29e6f453a2c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d083e820487819be320c29e6f453a2c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverl_init_advanced_complex</b> (<a class="el" href="structsolverl__plan__complex.html">solverl_plan_complex</a> *ths, <a class="el" href="structnfftl__mv__plan__complex.html">nfftl_mv_plan_complex</a> *mv, unsigned flags)</td></tr>
-<tr class="memitem:a739e47736aee0e65ad64f7e3c2c78575"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a739e47736aee0e65ad64f7e3c2c78575"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverl_init_complex</b> (<a class="el" href="structsolverl__plan__complex.html">solverl_plan_complex</a> *ths, <a class="el" href="structnfftl__mv__plan__complex.html">nfftl_mv_plan_complex</a> *mv)</td></tr>
-<tr class="memitem:aac9042f700453c4730f3a015d502e5dd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aac9042f700453c4730f3a015d502e5dd"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverl_before_loop_complex</b> (<a class="el" href="structsolverl__plan__complex.html">solverl_plan_complex</a> *ths)</td></tr>
-<tr class="memitem:a09a9110704ce69fda1fb556c0bcd223d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a09a9110704ce69fda1fb556c0bcd223d"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverl_loop_one_step_complex</b> (<a class="el" href="structsolverl__plan__complex.html">solverl_plan_complex</a> *ths)</td></tr>
-<tr class="memitem:af3e16a8e0b7c37c162797e469d5da57d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af3e16a8e0b7c37c162797e469d5da57d"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverl_finalize_complex</b> (<a class="el" href="structsolverl__plan__complex.html">solverl_plan_complex</a> *ths)</td></tr>
-<tr class="memitem:a76d058dd91d4cd6399c3b1c68687f900"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a76d058dd91d4cd6399c3b1c68687f900"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverl_init_advanced_double</b> (<a class="el" href="structsolverl__plan__double.html">solverl_plan_double</a> *ths, <a class="el" href="structnfftl__mv__plan__double.html">nfftl_mv_plan_double</a> *mv, unsigned flags)</td></tr>
-<tr class="memitem:aac3933f52d2db95054c9141dc15c1973"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aac3933f52d2db95054c9141dc15c1973"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverl_solver_init_double</b> (<a class="el" href="structsolverl__plan__double.html">solverl_plan_double</a> *ths, <a class="el" href="structnfftl__mv__plan__double.html">nfftl_mv_plan_double</a> *mv)</td></tr>
-<tr class="memitem:aae2ec8317e9deada5bc1794296736f50"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae2ec8317e9deada5bc1794296736f50"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverl_solver_before_loop_double</b> (<a class="el" href="structsolverl__plan__double.html">solverl_plan_double</a> *ths)</td></tr>
-<tr class="memitem:a0d7767264a59d24000e4e900addb010e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0d7767264a59d24000e4e900addb010e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverl_solver_loop_one_step_double</b> (<a class="el" href="structsolverl__plan__double.html">solverl_plan_double</a> *ths)</td></tr>
-<tr class="memitem:a9f29c9c96f62842c11d49ab0c0f392df"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f29c9c96f62842c11d49ab0c0f392df"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solverl_solver_finalize_double</b> (<a class="el" href="structsolverl__plan__double.html">solverl_plan_double</a> *ths)</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="var-members"></a>
-Variables</h2></td></tr>
-<tr class="memitem:aa578dec914d95bda5a2fad3fbd90c76f"><td class="memItemLeft" align="right" valign="top"><a class="el" href="nfft3_8h.html#ae2db105c02d4b63d1962dc94d4e7a4c2">nfft_malloc_type_function</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#aa578dec914d95bda5a2fad3fbd90c76f">nfft_malloc_hook</a></td></tr>
-<tr class="memitem:a5b4d02593a82ded7c1d3c3c868e72347"><td class="memItemLeft" align="right" valign="top"><a class="el" href="nfft3_8h.html#acdec9723f6ea0ea162d5f3fc6f1f1906">nfft_free_type_function</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="nfft3_8h.html#a5b4d02593a82ded7c1d3c3c868e72347">nfft_free_hook</a></td></tr>
-<tr class="memitem:a7bd67de0993700f3ff4ed9d6475bc105"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7bd67de0993700f3ff4ed9d6475bc105"></a>
-nfft_die_type_function </td><td class="memItemRight" valign="bottom"><b>nfft_die_hook</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Header file for NFFT3 </p>
-
-<p>Definition in file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/><h2>Macro Definition Documentation</h2>
-<a class="anchor" id="a0d1eb31c2f64e41fa0399b1eb7b5ddd4"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define MACRO_MV_PLAN</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">RC</td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keywordtype">int</span> N_total; \</div>
-<div class="line"> int M_total; \</div>
-<div class="line"> RC *f_hat; \</div>
-<div class="line"> RC *f; \</div>
-<div class="line"> void (*mv_trafo)(<span class="keywordtype">void</span>*); \</div>
-<div class="line"> void (*mv_adjoint)(<span class="keywordtype">void</span>*);</div>
-</div><!-- fragment -->
-<p>Pointer to the own adjoint. </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00069">69</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a84826a12df920d845086a31bd4256c7b"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define NSFFT_DEFINE_API</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">X, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">Y, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">Z, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">R, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">C </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">typedef</span> <span class="keyword">struct</span>\</div>
-<div class="line">{\</div>
-<div class="line"> MACRO_MV_PLAN(C)\</div>
-<div class="line">\</div>
-<div class="line"> int d; \</div>
-<div class="line"> int J; \</div>
-<div class="line"> int sigma; \</div>
-<div class="line"> unsigned flags; \</div>
-<div class="line"> int *index_sparse_to_full; \</div>
-<div class="line"> int r_act_nfft_plan; \</div>
-<div class="line"> Z(plan) *act_nfft_plan; \</div>
-<div class="line"> Z(plan) *center_nfft_plan; \</div>
-<div class="line"> Y(plan) *set_fftw_plan1; \</div>
-<div class="line"> Y(plan) *set_fftw_plan2; \</div>
-<div class="line"> Z(plan) *set_nfft_plan_1d; \</div>
-<div class="line"> Z(plan) *set_nfft_plan_2d; \</div>
-<div class="line"> R *x_transposed; \</div>
-<div class="line"> R *x_102,*x_201,*x_120,*x_021; \</div>
-<div class="line">} X(plan);\</div>
-<div class="line">\</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(trafo_direct)(X(plan) *ths); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(adjoint_direct)(X(plan) *ths); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(trafo)(X(plan) *ths); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(adjoint)(X(plan) *ths); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(cp)(X(plan) *ths, Z(plan) *ths_nfft); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(init_random_nodes_coeffs)(X(plan) *ths); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(init)(X(plan) *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> J, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> flags); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(finalize)(X(plan) *ths);</div>
-</div><!-- fragment -->
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00419">419</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a50af9dcbe46f6cc4fee5141873098415"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define MRI_DEFINE_API</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">X, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">Z, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">R, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">C </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">typedef</span> <span class="keyword">struct</span>\</div>
-<div class="line">{\</div>
-<div class="line"> MACRO_MV_PLAN(C)\</div>
-<div class="line"> Z(plan) plan;\</div>
-<div class="line"> <span class="keywordtype">int</span> N3;\</div>
-<div class="line"> R sigma3;\</div>
-<div class="line"> R *t;\</div>
-<div class="line"> R *w;\</div>
-<div class="line">} X(inh_2d1d_plan);\</div>
-<div class="line">\</div>
-<div class="line">typedef struct\</div>
-<div class="line">{\</div>
-<div class="line"> MACRO_MV_PLAN(C)\</div>
-<div class="line"> Z(plan) plan;\</div>
-<div class="line"> <span class="keywordtype">int</span> N3;\</div>
-<div class="line"> R sigma3;\</div>
-<div class="line"> R *t;\</div>
-<div class="line"> R *w;\</div>
-<div class="line">} X(inh_3d_plan);\</div>
-<div class="line">\</div>
-<div class="line"><span class="keywordtype">void</span> X(inh_2d1d_trafo)(X(inh_2d1d_plan) *ths); \</div>
-<div class="line"><span class="keywordtype">void</span> X(inh_2d1d_adjoint)(X(inh_2d1d_plan) *ths); \</div>
-<div class="line"><span class="keywordtype">void</span> X(inh_2d1d_init_guru)(X(inh_2d1d_plan) *ths, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> *n, \</div>
-<div class="line"> <span class="keywordtype">int</span> m, R sigma, <span class="keywordtype">unsigned</span> nfft_flags, <span class="keywordtype">unsigned</span> fftw_flags); \</div>
-<div class="line"><span class="keywordtype">void</span> X(inh_2d1d_finalize)(X(inh_2d1d_plan) *ths); \</div>
-<div class="line"><span class="keywordtype">void</span> X(inh_3d_trafo)(X(inh_3d_plan) *ths); \</div>
-<div class="line"><span class="keywordtype">void</span> X(inh_3d_adjoint)(X(inh_3d_plan) *ths); \</div>
-<div class="line"><span class="keywordtype">void</span> X(inh_3d_init_guru)(X(inh_3d_plan) *ths, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> *n, \</div>
-<div class="line"> <span class="keywordtype">int</span> m, R sigma, <span class="keywordtype">unsigned</span> nfft_flags, <span class="keywordtype">unsigned</span> fftw_flags); \</div>
-<div class="line"><span class="keywordtype">void</span> X(inh_3d_finalize)(X(inh_3d_plan) *ths);</div>
-</div><!-- fragment -->
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00470">470</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a8bfac1df57d74c1d7bed37487e241bcd"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define FPT_DEFINE_API</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">X, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">Y, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">R, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">C </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span>X(set_s_) *X(<span class="keyword">set</span>); \</div>
-<div class="line">\</div>
-<div class="line">NFFT_EXTERN X(<span class="keyword">set</span>) X(init)(const <span class="keywordtype">int</span> M, const <span class="keywordtype">int</span> t, const <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(precompute)(X(set) set, const <span class="keywordtype">int</span> m, R *alpha, R *beta, \</div>
-<div class="line"> R *gam, <span class="keywordtype">int</span> k_start, const R threshold); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(trafo_direct)(X(set) set, const <span class="keywordtype">int</span> m, const C *x, C *y, \</div>
-<div class="line"> const <span class="keywordtype">int</span> k_end, const <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(trafo)(X(set) set, const <span class="keywordtype">int</span> m, const C *x, C *y, \</div>
-<div class="line"> const <span class="keywordtype">int</span> k_end, const <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(transposed_direct)(X(set) set, const <span class="keywordtype">int</span> m, C *x, \</div>
-<div class="line"> C *y, const <span class="keywordtype">int</span> k_end, const <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(transposed)(X(set) set, const <span class="keywordtype">int</span> m, C *x, \</div>
-<div class="line"> C *y, const <span class="keywordtype">int</span> k_end, const <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(finalize)(X(set) set);</div>
-</div><!-- fragment -->
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00589">589</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ab64e7dca068fc797700ea5a1f294430f"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define NFSOFT_DEFINE_API</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">X, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">Y, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">Z, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">R, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">C </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<b>Value:</b><div class="fragment"><div class="line"><span class="keyword">typedef</span> <span class="keyword">struct </span>X(plan_)\</div>
-<div class="line">{\</div>
-<div class="line"> MACRO_MV_PLAN(C) \</div>
-<div class="line"> R *x; \</div>
-<div class="line"> C *wig_coeffs; \</div>
-<div class="line"> C *cheby; \</div>
-<div class="line"> C *aux; \</div>
-<div class="line"> <span class="comment">/* internal use only */</span>\</div>
-<div class="line"> int t; \</div>
-<div class="line"> unsigned <span class="keywordtype">int</span> flags; \</div>
-<div class="line"> Y(plan) p_nfft; \</div>
-<div class="line"> Z(set) internal_fpt_set; \</div>
-<div class="line"> <span class="keywordtype">int</span> fpt_kappa; \</div>
-<div class="line">} X(plan);\</div>
-<div class="line">\</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(precompute)(X(plan) *plan); \</div>
-<div class="line">NFFT_EXTERN Z(set) X(SO3_single_fpt_init)(<span class="keywordtype">int</span> l, <span class="keywordtype">int</span> k, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags, <span class="keywordtype">int</span> kappa); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(SO3_fpt)(C *coeffs, Z(set) set, <span class="keywordtype">int</span> l, <span class="keywordtype">int</span> k, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nfsoft_flags); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(SO3_fpt_transposed)(C *coeffs, Z(set) set,<span class="keywordtype">int</span> l, <span class="keywordtype">int</span> k, <span class="keywordtype">int</span> m,<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nfsoft_flags); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(init)(X(plan) *plan, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(init_advanced)(X(plan) *plan, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M,<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nfsoft_flags); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(init_guru)(X(plan) *plan, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M,<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nfsoft_flags,<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nfft_flags,<span class="keywordtype">int</span> nfft_cutoff,<span class="keywordtype">int</span> fpt_kappa); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(trafo)(X(plan) *plan_nfsoft); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(adjoint)(X(plan) *plan_nfsoft); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">void</span> X(finalize)(X(plan) *plan); \</div>
-<div class="line">NFFT_EXTERN <span class="keywordtype">int</span> X(posN)(<span class="keywordtype">int</span> n,<span class="keywordtype">int</span> m, <span class="keywordtype">int</span> B);</div>
-</div><!-- fragment -->
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00633">633</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<hr/><h2>Typedef Documentation</h2>
-<a class="anchor" id="ae2db105c02d4b63d1962dc94d4e7a4c2"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">typedef void *(* nfft_malloc_type_function)(size_t n)</td>
- </tr>
- </table>
-</div><div class="memdoc">
-<p>A <code>malloc</code> type function </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00061">61</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="acdec9723f6ea0ea162d5f3fc6f1f1906"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">typedef void(* nfft_free_type_function)(void *p)</td>
- </tr>
- </table>
-</div><div class="memdoc">
-<p>A <code>free</code> type function </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00062">62</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a74cbbcba4b36c9272b3e1b309f574308"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">typedef struct fptf_set_s_* <a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>A set of precomputed data for a set of DPT transforms of equal maximum length. </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00607">607</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a73d630ac21d6474ba0693f124d465e15"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">typedef struct <a class="el" href="structfpt__set__s__.html">fpt_set_s_</a>* <a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>A set of precomputed data for a set of DPT transforms of equal maximum length. </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00607">607</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="afa0a822edf2abbd8e1ab2cd0afd72efa"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">typedef struct fptl_set_s_* <a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>A set of precomputed data for a set of DPT transforms of equal maximum length. </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00607">607</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="aafe6167438c5de4d3d4c509f66a6694e"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void * nfft_malloc </td>
- <td>(</td>
- <td class="paramtype">size_t </td>
- <td class="paramname"><em>n</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<p>Our <code>malloc</code> function </p>
-<dl class="params"><dt>Parameters:</dt><dd>
- <table class="params">
- <tr><td class="paramname">n</td><td>The number of bytes to allocate </td></tr>
- </table>
- </dd>
-</dl>
-
-<p>Referenced by <a class="el" href="linogram__fft__test_8c_source.html#l00309">comparison_fft()</a>, <a class="el" href="fastsum_8c_source.html#l00600">fastsum_init_guru()</a>, <a class="el" href="fastgauss_8c_source.html#l00170">fgt_init_guru()</a>, <a class="el" href="fastgauss_8c_source.html#l00263">fgt_init_node_dependent()</a>, <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>, <a class="el" href="fastgauss_8c_source.html#l00481">fgt_test_error()</a>, <a [...]
-
-</div>
-</div>
-<a class="anchor" id="ab8a0db03dda1317a8a3d922e0e4e8aaa"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void nfft_free </td>
- <td>(</td>
- <td class="paramtype">void * </td>
- <td class="paramname"><em>p</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-<p>Our <code>free</code> function </p>
-<dl class="params"><dt>Parameters:</dt><dd>
- <table class="params">
- <tr><td class="paramname">p</td><td>Pointer to the memory region to free </td></tr>
- </table>
- </dd>
-</dl>
-
-<p>Referenced by <a class="el" href="linogram__fft__test_8c_source.html#l00309">comparison_fft()</a>, <a class="el" href="fastsum_8c_source.html#l00742">fastsum_finalize()</a>, <a class="el" href="fastgauss_8c_source.html#l00295">fgt_finalize()</a>, <a class="el" href="fastgauss_8c_source.html#l00410">fgt_test_andersson()</a>, <a class="el" href="fastgauss_8c_source.html#l00481">fgt_test_error()</a>, <a class="el" href="fastgauss_8c_source.html#l00375">fgt_test_simple()</a>, <a class="el [...]
-
-</div>
-</div>
-<a class="anchor" id="ac80b86521428ec2191919cc96c82f416"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void nfst_trafo </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structnfst__plan.html">nfst_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>user routines </p>
-
-<p>Definition at line <a class="el" href="nfst_8c_source.html#l00647">647</a> of file <a class="el" href="nfst_8c_source.html">nfst.c</a>.</p>
-
-</div>
-</div>
-<hr/><h2>Variable Documentation</h2>
-<a class="anchor" id="aa578dec914d95bda5a2fad3fbd90c76f"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="nfft3_8h.html#ae2db105c02d4b63d1962dc94d4e7a4c2">nfft_malloc_type_function</a> nfft_malloc_hook</td>
- </tr>
- </table>
-</div><div class="memdoc">
-<p>Hook for <code>nfft_malloc</code> </p>
-
-</div>
-</div>
-<a class="anchor" id="a5b4d02593a82ded7c1d3c3c868e72347"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname"><a class="el" href="nfft3_8h.html#acdec9723f6ea0ea162d5f3fc6f1f1906">nfft_free_type_function</a> nfft_free_hook</td>
- </tr>
- </table>
-</div><div class="memdoc">
-<p>Hook for <code>nfft_free</code> </p>
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft3_8h_source.html b/doc/api/html/nfft3_8h_source.html
deleted file mode 100644
index 26f4516..0000000
--- a/doc/api/html/nfft3_8h_source.html
+++ /dev/null
@@ -1,853 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft3.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft3.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="nfft3_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nfft3.h 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#ifndef __NFFT3_H__</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor"></span><span class="preprocessor">#define __NFFT3_H__</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="comment">/* module configuration */</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "nfft3conf.h"</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="comment">/* fftw_complex */</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include <fftw3.h></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> </div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> {</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#define NFFT_CONCAT(prefix, name) prefix ## name</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment">/* IMPORTANT: for Windows compilers, you should add a line</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment"> * #define FFTW_DLL</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment"> * here and in kernel/infft.h if you are compiling/using NFFT as a DLL, in order</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment"> * to do the proper importing/exporting, or alternatively compile with</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment"> * -DNFFT_DLL or the equivalent command-line flag. This is not necessary under</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment"> * MinGW/Cygwin, where libtool does the imports/exports automatically. */</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor">#if defined(NFFT_DLL) && (defined(_WIN32) || defined(__WIN32__))</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor"></span> <span class="comment">/* annoying Windows syntax for shared-library declarations */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor"># if defined(COMPILING_NFFT) </span><span class="comment">/* defined in api.h when compiling NFFT */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor"></span><span class="preprocessor"># define NFFT_EXTERN extern __declspec(dllexport)</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor"></span><span class="preprocessor"># else </span><span class="comment">/* user is calling NFFT; import symbol */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor"></span><span class="preprocessor"># define NFFT_EXTERN extern __declspec(dllimport)</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor"></span><span class="preprocessor"># endif</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor"></span><span class="preprocessor"># define NFFT_EXTERN extern</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment">/* our own memory allocation and exit functions */</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> NFFT_EXTERN <span class="keywordtype">void</span> *<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keywordtype">size_t</span> n);</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> NFFT_EXTERN <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(<span class="keywordtype">void</span> *p);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> NFFT_EXTERN <span class="keywordtype">void</span> nfft_die(<span class="keywordtype">char</span> *s);</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="comment">/* You can replace the hooks with your own, functions if necessary. We need this</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment"> * for the Matlab interfaces etc. */</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"><a class="code" href="nfft3_8h.html#ae2db105c02d4b63d1962dc94d4e7a4c2"> 61</a></span> <span class="keyword">typedef</span> <span class="keywordtype">void</span> *(*nfft_malloc_type_function) (<span class="keywordtype">size_t</span> n);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="nfft3_8h.html#acdec9723f6ea0ea162d5f3fc6f1f1906"> 62</a></span> <span class="keyword">typedef</span> void (*<a class="code" href="nfft3_8h.html#acdec9723f6ea0ea162d5f3fc6f1f1906">nfft_free_type_function</a>) (<span class="keywordtype">void</span> *p);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keyword">typedef</span> void (*nfft_die_type_function) (<span class="keyword">const</span> <span class="keywordtype">char</span> *errString);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> NFFT_EXTERN <a class="code" href="nfft3_8h.html#ae2db105c02d4b63d1962dc94d4e7a4c2">nfft_malloc_type_function</a> <a class="code" href="nfft3_8h.html#aa578dec914d95bda5a2fad3fbd90c76f">nfft_malloc_hook</a>;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> NFFT_EXTERN <a class="code" href="nfft3_8h.html#acdec9723f6ea0ea162d5f3fc6f1f1906">nfft_free_type_function</a> <a class="code" href="nfft3_8h.html#a5b4d02593a82ded7c1d3c3c868e72347">nfft_free_hook</a>;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> NFFT_EXTERN nfft_die_type_function nfft_die_hook;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">/* members inherited by all plans */</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"><a class="code" href="nfft3_8h.html#a0d1eb31c2f64e41fa0399b1eb7b5ddd4"> 69</a></span> <span class="preprocessor">#define MACRO_MV_PLAN(RC) \</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor"> int N_total; \</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor"> int M_total; \</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor"> RC *f_hat; \</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor"> RC *f; \</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="preprocessor"> void (*mv_trafo)(void*); \</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="preprocessor"> void (*mv_adjoint)(void*); </span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="preprocessor"></span><span class="comment">/* nfft */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment">/* name mangling macros */</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="preprocessor">#define NFFT_MANGLE_DOUBLE(name) NFFT_CONCAT(nfft_, name)</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="preprocessor"></span><span class="preprocessor">#define NFFT_MANGLE_FLOAT(name) NFFT_CONCAT(nfftf_, name)</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="preprocessor"></span><span class="preprocessor">#define NFFT_MANGLE_LONG_DOUBLE(name) NFFT_CONCAT(nfftl_, name)</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="comment">/* huge second-order macro that defines prototypes for all nfft API functions.</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="comment"> * We expand this macro for each supported precision.</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="comment"> * X: nfft name-mangling macro</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="comment"> * Y: fftw name-mangling macro</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment"> * R: real data type</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="comment"> * C: complex data type</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="preprocessor">#define NFFT_DEFINE_API(X,Y,R,C) \</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="preprocessor">typedef struct \</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="preprocessor"> MACRO_MV_PLAN(C) \</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="preprocessor">} X(mv_plan_complex); \</span></div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="preprocessor">typedef struct \</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="preprocessor"> MACRO_MV_PLAN(R) \</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="preprocessor">} X(mv_plan_double); \</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="preprocessor">typedef struct\</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="preprocessor"> MACRO_MV_PLAN(C)\</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="preprocessor"> int d; \</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="preprocessor"> int *N; \</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="preprocessor"> R *sigma; \</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="preprocessor"> int *n; \</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="preprocessor"> int n_total; \</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="preprocessor"> int m; \</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="preprocessor"> R *b; \</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="preprocessor"> int K; \</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="preprocessor"> unsigned nfft_flags; \</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="preprocessor"> unsigned fftw_flags; \</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="preprocessor"> R *x; \</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="preprocessor"> double MEASURE_TIME_t[3]; \</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="preprocessor"> </span><span class="comment">/* internal use only */</span><span class="preprocessor">\</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="preprocessor"> Y(plan) my_fftw_plan1; \</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="preprocessor"> Y(plan) my_fftw_plan2; \</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor"> R **c_phi_inv; \</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="preprocessor"> R *psi; \</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="preprocessor"> int *psi_index_g; \</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="preprocessor"> int *psi_index_f; \</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor"> C *g; \</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor"> C *g_hat; \</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="preprocessor"> C *g1; \</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="preprocessor"> C *g2; \</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="preprocessor"> R *spline_coeffs; \</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="preprocessor"> int *index_x; \</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="preprocessor">} X(plan); \</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="preprocessor">NFFT_EXTERN void X(trafo_direct)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint_direct)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="preprocessor">NFFT_EXTERN void X(trafo)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="preprocessor">NFFT_EXTERN void X(trafo_1d)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="preprocessor">NFFT_EXTERN void X(trafo_2d)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="preprocessor">NFFT_EXTERN void X(trafo_3d)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint_1d)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint_2d)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint_3d)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="preprocessor">NFFT_EXTERN void X(init_1d)(X(plan) *ths, int N1, int M);\</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="preprocessor">NFFT_EXTERN void X(init_2d)(X(plan) *ths, int N1, int N2, int M);\</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="preprocessor">NFFT_EXTERN void X(init_3d)(X(plan) *ths, int N1, int N2, int N3, int M);\</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="preprocessor">NFFT_EXTERN void X(init)(X(plan) *ths, int d, int *N, int M);\</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="preprocessor">NFFT_EXTERN void X(init_guru)(X(plan) *ths, int d, int *N, int M, int *n, \</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="preprocessor"> int m, unsigned nfft_flags, unsigned fftw_flags);\</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="preprocessor">NFFT_EXTERN void X(precompute_one_psi)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"><a class="code" href="structnfftl__plan.html#ad5695c30a05c03573082a1aac0394700"> 173</a></span> <span class="preprocessor">NFFT_EXTERN void X(precompute_full_psi)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="preprocessor">NFFT_EXTERN void X(precompute_psi)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="preprocessor">NFFT_EXTERN void X(precompute_lin_psi)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="preprocessor">NFFT_EXTERN const char* X(check)(X(plan) *ths);\</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="preprocessor">NFFT_EXTERN void X(finalize)(X(plan) *ths);</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="comment">/* nfft api */</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> NFFT_DEFINE_API(NFFT_MANGLE_FLOAT,FFTW_MANGLE_FLOAT,<span class="keywordtype">float</span>,fftwf_complex)</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> NFFT_DEFINE_API(NFFT_MANGLE_DOUBLE,FFTW_MANGLE_DOUBLE,<span class="keywordtype">double</span>,fftw_complex)</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> NFFT_DEFINE_API(NFFT_MANGLE_LONG_DOUBLE,FFTW_MANGLE_LONG_DOUBLE,<span class="keywordtype">long</span> <span class="keywordtype">double</span>,fftwl_complex)</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> </div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="comment">/* flags for init */</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="preprocessor">#define PRE_PHI_HUT (1U<< 0)</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor"></span><span class="preprocessor">#define FG_PSI (1U<< 1)</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="preprocessor"></span><span class="preprocessor">#define PRE_LIN_PSI (1U<< 2)</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="preprocessor"></span><span class="preprocessor">#define PRE_FG_PSI (1U<< 3)</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="preprocessor"></span><span class="preprocessor">#define PRE_PSI (1U<< 4)</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="preprocessor"></span><span class="preprocessor">#define PRE_FULL_PSI (1U<< 5)</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor"></span><span class="preprocessor">#define MALLOC_X (1U<< 6)</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="preprocessor"></span><span class="preprocessor">#define MALLOC_F_HAT (1U<< 7)</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="preprocessor"></span><span class="preprocessor">#define MALLOC_F (1U<< 8)</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="preprocessor"></span><span class="preprocessor">#define FFT_OUT_OF_PLACE (1U<< 9)</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="preprocessor"></span><span class="preprocessor">#define FFTW_INIT (1U<< 10)</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="preprocessor"></span><span class="preprocessor">#define NFFT_SORT_NODES (1U<< 11)</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor"></span><span class="preprocessor">#define NFFT_OMP_BLOCKWISE_ADJOINT (1U<<12)</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="preprocessor"></span><span class="preprocessor">#define PRE_ONE_PSI (PRE_LIN_PSI| PRE_FG_PSI| PRE_PSI| PRE_FULL_PSI)</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> </div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="comment">/* nfct */</span></div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> </div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="comment">/* name mangling macros */</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor">#define NFCT_MANGLE_DOUBLE(name) NFFT_CONCAT(nfct_, name)</span></div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="preprocessor"></span><span class="preprocessor">#define NFCT_MANGLE_FLOAT(name) NFFT_CONCAT(nfctf_, name)</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="preprocessor"></span><span class="preprocessor">#define NFCT_MANGLE_LONG_DOUBLE(name) NFFT_CONCAT(nfctl_, name)</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="comment">/* huge second-order macro that defines prototypes for all nfct API functions.</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="comment"> * We expand this macro for each supported precision.</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="comment"> * X: nfct name-mangling macro</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="comment"> * Y: fftw name-mangling macro</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="comment"> * R: real data type</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="comment"> * C: complex data type</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor">#define NFCT_DEFINE_API(X,Y,R,C) \</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="preprocessor">typedef struct\</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="preprocessor"> </span><span class="comment">/* api */</span><span class="preprocessor">\</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="preprocessor"> MACRO_MV_PLAN(R)\</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="preprocessor"> int d; \</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="preprocessor"> int *N; \</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="preprocessor"> int *n; \</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="preprocessor"> R *sigma; \</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="preprocessor"> int m; \</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="preprocessor"> R nfct_full_psi_eps;\</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="preprocessor"> R *b; \</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="preprocessor"> unsigned nfct_flags; \</span></div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="preprocessor"> unsigned fftw_flags; \</span></div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="preprocessor"> R *x; \</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="preprocessor"> double MEASURE_TIME_t[3]; \</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="preprocessor"> </span><span class="comment">/* internal use only */</span><span class="preprocessor">\</span></div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="preprocessor"> Y(plan) my_fftw_r2r_plan; \</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="preprocessor"> Y(r2r_kind) *r2r_kind; \</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="preprocessor"> R **c_phi_inv; \</span></div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="preprocessor"> R *psi; \</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="preprocessor"> int size_psi; \</span></div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="preprocessor"> int *psi_index_g; \</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor"> int *psi_index_f; \</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="preprocessor"> R *g;\</span></div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor"> R *g_hat;\</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor"> R *g1; \</span></div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="preprocessor"> R *g2; \</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="preprocessor"> R *spline_coeffs; \</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor">} X(plan);\</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="preprocessor">NFFT_EXTERN void X(init_1d)(X(plan) *ths_plan, int N0, int M_total); \</span></div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor">NFFT_EXTERN void X(init_2d)(X(plan) *ths_plan, int N0, int N1, int M_total); \</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor">NFFT_EXTERN void X(init_3d)(X(plan) *ths_plan, int N0, int N1, int N2, int M_total); \</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor">NFFT_EXTERN void X(init)(X(plan) *ths_plan, int d, int *N, int M_total); \</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor">NFFT_EXTERN void X(init_guru)(X(plan) *ths_plan, int d, int *N, int M_total, int *n, \</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor"> int m, unsigned nfct_flags, unsigned fftw_flags); \</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno"><a class="code" href="structnfctl__plan.html#a2f7f915bfefa105412cabfc368c26560"> 261</a></span> <span class="preprocessor">NFFT_EXTERN void X(precompute_psi)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor">NFFT_EXTERN void X(trafo)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="preprocessor">NFFT_EXTERN void X(trafo_direct)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint_direct)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="preprocessor">NFFT_EXTERN void X(finalize)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="preprocessor">NFFT_EXTERN R X(phi_hut)(X(plan) *ths_plan, int k, int d); \</span></div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="preprocessor">NFFT_EXTERN R X(phi)(X(plan) *ths_plan, R x, int d);</span></div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="preprocessor">#if defined(HAVE_NFCT)</span></div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor"></span><span class="comment">/* nfct api */</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> NFCT_DEFINE_API(NFCT_MANGLE_FLOAT,FFTW_MANGLE_FLOAT,<span class="keywordtype">float</span>,fftwf_complex)</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> NFCT_DEFINE_API(NFCT_MANGLE_DOUBLE,FFTW_MANGLE_DOUBLE,<span class="keywordtype">double</span>,fftw_complex)</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> NFCT_DEFINE_API(NFCT_MANGLE_LONG_DOUBLE,FFTW_MANGLE_LONG_DOUBLE,<span class="keywordtype">long</span> <span class="keywordtype">double</span>,fftwl_complex)</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="comment">/* nfst */</span></div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> </div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="comment">/* name mangling macros */</span></div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="preprocessor">#define NFST_MANGLE_DOUBLE(name) NFFT_CONCAT(nfst_, name)</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="preprocessor"></span><span class="preprocessor">#define NFST_MANGLE_FLOAT(name) NFFT_CONCAT(nfstf_, name)</span></div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="preprocessor"></span><span class="preprocessor">#define NFST_MANGLE_LONG_DOUBLE(name) NFFT_CONCAT(nfstl_, name)</span></div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="comment">/* huge second-order macro that defines prototypes for all nfct API functions.</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="comment"> * We expand this macro for each supported precision.</span></div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="comment"> * X: nfst name-mangling macro</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="comment"> * Y: fftw name-mangling macro</span></div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="comment"> * R: real data type</span></div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="comment"> * C: complex data type</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="preprocessor">#define NFST_DEFINE_API(X,Y,R,C) \</span></div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="preprocessor">typedef struct\</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="preprocessor"> </span><span class="comment">/* api */</span><span class="preprocessor">\</span></div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="preprocessor"> MACRO_MV_PLAN(R)\</span></div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="preprocessor"> int d; \</span></div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="preprocessor"> int *N; \</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="preprocessor"> int *n; \</span></div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="preprocessor"> R *sigma; \</span></div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="preprocessor"> int m; \</span></div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="preprocessor"> R nfst_full_psi_eps;\</span></div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="preprocessor"> R *b; \</span></div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="preprocessor"> unsigned nfst_flags; \</span></div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="preprocessor"> unsigned fftw_flags; \</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="preprocessor"> R *x; \</span></div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="preprocessor"> double MEASURE_TIME_t[3]; \</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="preprocessor"> </span><span class="comment">/* internal use only */</span><span class="preprocessor">\</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="preprocessor"> Y(plan) my_fftw_r2r_plan; \</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="preprocessor"> Y(r2r_kind) *r2r_kind; \</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="preprocessor"> R **c_phi_inv; \</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="preprocessor"> R *psi; \</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="preprocessor"> int size_psi; \</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="preprocessor"> int *psi_index_g; \</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="preprocessor"> int *psi_index_f; \</span></div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="preprocessor"> R *g;\</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="preprocessor"> R *g_hat;\</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="preprocessor"> R *g1; \</span></div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="preprocessor"> R *g2; \</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="preprocessor"> R *spline_coeffs; \</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="preprocessor">} X(plan);\</span></div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="preprocessor">NFFT_EXTERN void X(init_1d)(X(plan) *ths_plan, int N0, int M_total); \</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="preprocessor">NFFT_EXTERN void X(init_2d)(X(plan) *ths_plan, int N0, int N1, int M_total); \</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="preprocessor">NFFT_EXTERN void X(init_3d)(X(plan) *ths_plan, int N0, int N1, int N2, int M_total); \</span></div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="preprocessor">NFFT_EXTERN void X(init)(X(plan) *ths_plan, int d, int *N, int M_total); \</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="preprocessor">NFFT_EXTERN void X(init_m)(X(plan) *ths_plan, int d, int *N, int M_total, int m);\</span></div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="preprocessor">NFFT_EXTERN void X(init_guru)(X(plan) *ths_plan, int d, int *N, int M_total, int *n, \</span></div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="preprocessor"> int m, unsigned nfst_flags, unsigned fftw_flags); \</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno"><a class="code" href="structnfstl__plan.html#af663d590a277872d6e0e777cb410edbb"> 338</a></span> <span class="preprocessor">NFFT_EXTERN void X(precompute_psi)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="preprocessor">NFFT_EXTERN void X(trafo)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="preprocessor">NFFT_EXTERN void X(trafo_direct)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint_direct)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="preprocessor">NFFT_EXTERN void X(finalize)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="preprocessor">NFFT_EXTERN void X(full_psi)(X(plan) *ths_plan, R eps); \</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="preprocessor">NFFT_EXTERN R X(phi_hut)(X(plan) *ths_plan, int k, int d); \</span></div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="preprocessor">NFFT_EXTERN R X(phi)(X(plan) *ths_plan, R x, int d); \</span></div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="preprocessor">NFFT_EXTERN int X(fftw_2N)(int n); \</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="preprocessor">NFFT_EXTERN int X(fftw_2N_rev)(int n);</span></div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="preprocessor">#ifdef HAVE_NFST</span></div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="preprocessor"></span><span class="comment">/* nfst api */</span></div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> NFST_DEFINE_API(NFST_MANGLE_FLOAT,FFTW_MANGLE_FLOAT,<span class="keywordtype">float</span>,fftwf_complex)</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> NFST_DEFINE_API(NFST_MANGLE_DOUBLE,FFTW_MANGLE_DOUBLE,<span class="keywordtype">double</span>,fftw_complex)</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> NFST_DEFINE_API(NFST_MANGLE_LONG_DOUBLE,FFTW_MANGLE_LONG_DOUBLE,<span class="keywordtype">long</span> <span class="keywordtype">double</span>,fftwl_complex)</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="comment">/* nnfft */</span></div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> </div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="comment">/* name mangling macros */</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="preprocessor">#define NNFFT_MANGLE_DOUBLE(name) NFFT_CONCAT(nnfft_, name)</span></div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="preprocessor"></span><span class="preprocessor">#define NNFFT_MANGLE_FLOAT(name) NFFT_CONCAT(nnfftf_, name)</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="preprocessor"></span><span class="preprocessor">#define NNFFT_MANGLE_LONG_DOUBLE(name) NFFT_CONCAT(nnfftl_, name)</span></div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="comment">/* huge second-order macro that defines prototypes for all nfst API functions.</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="comment"> * We expand this macro for each supported precision.</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="comment"> * X: nnfft name-mangling macro</span></div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="comment"> * Y: fftw name-mangling macro</span></div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="comment"> * Z: nfft name mangling macro</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="comment"> * R: real data type</span></div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment"> * C: complex data type</span></div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="preprocessor">#define NNFFT_DEFINE_API(X,Y,Z,R,C) \</span></div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="preprocessor">typedef struct\</span></div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="preprocessor"> </span><span class="comment">/* api */</span><span class="preprocessor">\</span></div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="preprocessor"> MACRO_MV_PLAN(C)\</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="preprocessor"> int d; \</span></div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="preprocessor"> R *sigma; \</span></div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="preprocessor"> R *a; \</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="preprocessor"> int *N; \</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="preprocessor"> int *N1; \</span></div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="preprocessor"> int *aN1; \</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="preprocessor"> int m; \</span></div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="preprocessor"> R *b; \</span></div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="preprocessor"> int K; \</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="preprocessor"> int aN1_total; \</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="preprocessor"> Z(plan) *direct_plan; \</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="preprocessor"> unsigned nnfft_flags; \</span></div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="preprocessor"> int *n; \</span></div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="preprocessor"> R *x; \</span></div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="preprocessor"> R *v; \</span></div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="preprocessor"> R *c_phi_inv; \</span></div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="preprocessor"> R *psi; \</span></div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="preprocessor"> int size_psi; \</span></div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="preprocessor"> int *psi_index_g; \</span></div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="preprocessor"> int *psi_index_f; \</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="preprocessor"> C *F;\</span></div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="preprocessor"> R *spline_coeffs; \</span></div>
-<div class="line"><a name="l00400"></a><span class="lineno"><a class="code" href="structnnfftl__plan.html#ad3c1a7dca6cddcecba876f1bb523e3b6"> 400</a></span> <span class="preprocessor">} X(plan);\</span></div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="preprocessor">NFFT_EXTERN void X(init)(X(plan) *ths_plan, int d, int N_total, int M_total, int *N); \</span></div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="preprocessor">NFFT_EXTERN void X(init_guru)(X(plan) *ths_plan, int d, int N_total, int M_total, \</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="preprocessor"> int *N, int *N1, int m, unsigned nnfft_flags); \</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="preprocessor">NFFT_EXTERN void X(trafo_direct)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint_direct)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="preprocessor">NFFT_EXTERN void X(trafo)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="preprocessor">NFFT_EXTERN void X(precompute_lin_psi)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="preprocessor">NFFT_EXTERN void X(precompute_psi)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="preprocessor">NFFT_EXTERN void X(precompute_full_psi)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="preprocessor">NFFT_EXTERN void X(precompute_phi_hut)(X(plan) *ths_plan); \</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="preprocessor">NFFT_EXTERN void X(finalize)(X(plan) *ths_plan);</span></div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="preprocessor">#ifdef HAVE_NNFFT</span></div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="preprocessor"></span><span class="comment">/* nnfft api */</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> NNFFT_DEFINE_API(NNFFT_MANGLE_FLOAT,FFTW_MANGLE_FLOAT,NFFT_MANGLE_FLOAT,<span class="keywordtype">float</span>,fftwf_complex)</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> NNFFT_DEFINE_API(NNFFT_MANGLE_DOUBLE,FFTW_MANGLE_DOUBLE,NFFT_MANGLE_DOUBLE,<span class="keywordtype">double</span>,fftw_complex)</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> NNFFT_DEFINE_API(NNFFT_MANGLE_LONG_DOUBLE,FFTW_MANGLE_LONG_DOUBLE,NFFT_MANGLE_LONG_DOUBLE,<span class="keywordtype">long</span> <span class="keywordtype">double</span>,fftwl_complex)</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="comment">/* additional init flags */</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="preprocessor">#define MALLOC_V (1U<< 11)</span></div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="comment">/* nsfft */</span></div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="preprocessor">#define NSFFT_MANGLE_DOUBLE(name) NFFT_CONCAT(nsfft_, name)</span></div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="preprocessor"></span><span class="preprocessor">#define NSFFT_MANGLE_FLOAT(name) NFFT_CONCAT(nsfftf_, name)</span></div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="preprocessor"></span><span class="preprocessor">#define NSFFT_MANGLE_LONG_DOUBLE(name) NFFT_CONCAT(nsfftl_, name)</span></div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="comment">/* huge second-order macro that defines prototypes for all nnfft API functions.</span></div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="comment"> * We expand this macro for each supported precision.</span></div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="comment"> * X: nnfft name-mangling macro</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="comment"> * Y: fftw name-mangling macro</span></div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="comment"> * Z: nfft name mangling macro</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="comment"> * R: real data type</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="comment"> * C: complex data type</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="preprocessor">#define NSFFT_DEFINE_API(X,Y,Z,R,C) \</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="preprocessor">typedef struct\</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="preprocessor"> MACRO_MV_PLAN(C)\</span></div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor"> int d; \</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor"> int J; \</span></div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="preprocessor"> int sigma; \</span></div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor"> unsigned flags; \</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="preprocessor"> int *index_sparse_to_full; \</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno"><a class="code" href="structnsfftl__plan.html#a28eb398ae77902fd1ec2e0604d2a77ce"> 451</a></span> <span class="preprocessor"> int r_act_nfft_plan; \</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor"> Z(plan) *act_nfft_plan; \</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor"> Z(plan) *center_nfft_plan; \</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="preprocessor"> Y(plan) *set_fftw_plan1; \</span></div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="preprocessor"> Y(plan) *set_fftw_plan2; \</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="preprocessor"> Z(plan) *set_nfft_plan_1d; \</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="preprocessor"> Z(plan) *set_nfft_plan_2d; \</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="preprocessor"> R *x_transposed; \</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="preprocessor"> R *x_102,*x_201,*x_120,*x_021; \</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="preprocessor">} X(plan);\</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor">NFFT_EXTERN void X(trafo_direct)(X(plan) *ths); \</span></div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint_direct)(X(plan) *ths); \</span></div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor">NFFT_EXTERN void X(trafo)(X(plan) *ths); \</span></div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint)(X(plan) *ths); \</span></div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor">NFFT_EXTERN void X(cp)(X(plan) *ths, Z(plan) *ths_nfft); \</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="preprocessor">NFFT_EXTERN void X(init_random_nodes_coeffs)(X(plan) *ths); \</span></div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="preprocessor">NFFT_EXTERN void X(init)(X(plan) *ths, int d, int J, int M, int m, unsigned flags); \</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="preprocessor">NFFT_EXTERN void X(finalize)(X(plan) *ths);</span></div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="preprocessor">#ifdef HAVE_NSFFT</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="preprocessor"></span><span class="comment">/* nsfft api */</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> NSFFT_DEFINE_API(NSFFT_MANGLE_FLOAT,FFTW_MANGLE_FLOAT,NFFT_MANGLE_FLOAT,<span class="keywordtype">float</span>,fftwf_complex)</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> NSFFT_DEFINE_API(NSFFT_MANGLE_DOUBLE,FFTW_MANGLE_DOUBLE,NFFT_MANGLE_DOUBLE,<span class="keywordtype">double</span>,fftw_complex)</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> NSFFT_DEFINE_API(NSFFT_MANGLE_LONG_DOUBLE,FFTW_MANGLE_LONG_DOUBLE,NFFT_MANGLE_LONG_DOUBLE,<span class="keywordtype">long</span> <span class="keywordtype">double</span>,fftwl_complex)</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="comment">/* additional init flags */</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor">#define NSDFT (1U<< 12)</span></div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="comment">/* mri */</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> </div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="comment">/* name mangling macros */</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="preprocessor">#define MRI_MANGLE_DOUBLE(name) NFFT_CONCAT(mri_, name)</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor"></span><span class="preprocessor">#define MRI_MANGLE_FLOAT(name) NFFT_CONCAT(mrif_, name)</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="preprocessor"></span><span class="preprocessor">#define MRI_MANGLE_LONG_DOUBLE(name) NFFT_CONCAT(mril_, name)</span></div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="comment">/* huge second-order macro that defines prototypes for all mri API functions.</span></div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="comment"> * We expand this macro for each supported precision.</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="comment"> * X: mri name-mangling macro</span></div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="comment"> * Z: nfft name mangling macro</span></div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="comment"> * R: real data type</span></div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="comment"> * C: complex data type</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="preprocessor">#define MRI_DEFINE_API(X,Z,R,C) \</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor">typedef struct\</span></div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="preprocessor"> MACRO_MV_PLAN(C)\</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="preprocessor"> Z(plan) plan;\</span></div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="preprocessor"> int N3;\</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="preprocessor"> R sigma3;\</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="preprocessor"> R *t;\</span></div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="preprocessor"> R *w;\</span></div>
-<div class="line"><a name="l00504"></a><span class="lineno"><a class="code" href="structmril__inh__3d__plan.html#a79e477483b67862d2dd7fcb5432f7651"> 504</a></span> <span class="preprocessor">} X(inh_2d1d_plan);\</span></div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor">typedef struct\</span></div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor"> MACRO_MV_PLAN(C)\</span></div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="preprocessor"> Z(plan) plan;\</span></div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="preprocessor"> int N3;\</span></div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="preprocessor"> R sigma3;\</span></div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="preprocessor"> R *t;\</span></div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="preprocessor"> R *w;\</span></div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="preprocessor">} X(inh_3d_plan);\</span></div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="preprocessor">void X(inh_2d1d_trafo)(X(inh_2d1d_plan) *ths); \</span></div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="preprocessor">void X(inh_2d1d_adjoint)(X(inh_2d1d_plan) *ths); \</span></div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor">void X(inh_2d1d_init_guru)(X(inh_2d1d_plan) *ths, int *N, int M, int *n, \</span></div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="preprocessor"> int m, R sigma, unsigned nfft_flags, unsigned fftw_flags); \</span></div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="preprocessor">void X(inh_2d1d_finalize)(X(inh_2d1d_plan) *ths); \</span></div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> <span class="preprocessor">void X(inh_3d_trafo)(X(inh_3d_plan) *ths); \</span></div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor">void X(inh_3d_adjoint)(X(inh_3d_plan) *ths); \</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="preprocessor">void X(inh_3d_init_guru)(X(inh_3d_plan) *ths, int *N, int M, int *n, \</span></div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="preprocessor"> int m, R sigma, unsigned nfft_flags, unsigned fftw_flags); \</span></div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="preprocessor">void X(inh_3d_finalize)(X(inh_3d_plan) *ths);</span></div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="preprocessor">#ifdef HAVE_MRI</span></div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="preprocessor"></span> <span class="comment">/* mri api */</span></div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> MRI_DEFINE_API(MRI_MANGLE_FLOAT,NFFT_MANGLE_FLOAT,<span class="keywordtype">float</span>,fftwf_complex)</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> MRI_DEFINE_API(MRI_MANGLE_DOUBLE,NFFT_MANGLE_DOUBLE,<span class="keywordtype">double</span>,fftw_complex)</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> MRI_DEFINE_API(MRI_MANGLE_LONG_DOUBLE,NFFT_MANGLE_LONG_DOUBLE,<span class="keywordtype">long</span> <span class="keywordtype">double</span>,fftwl_complex)</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="comment">/* nfsft */</span></div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> </div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="comment">/* name mangling macros */</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="preprocessor">#define NFSFT_MANGLE_DOUBLE(name) NFFT_CONCAT(nfsft_, name)</span></div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_MANGLE_FLOAT(name) NFFT_CONCAT(nfsftf_, name)</span></div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_MANGLE_LONG_DOUBLE(name) NFFT_CONCAT(nfsftl_, name)</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="comment">/* huge second-order macro that defines prototypes for all nfsft API functions.</span></div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="comment"> * We expand this macro for each supported precision.</span></div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="comment"> * X: nfsft name-mangling macro</span></div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="comment"> * Z: nfft name mangling macro</span></div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="comment"> * R: real data type</span></div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="comment"> * C: complex data type</span></div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor">#define NFSFT_DEFINE_API(X,Z,R,C) \</span></div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="preprocessor">typedef struct\</span></div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00551"></a><span class="lineno"><a class="code" href="structnfsftl__plan.html#a59d00d103ebc0746d9cbf2d49077dfe8"> 551</a></span> <span class="preprocessor"> MACRO_MV_PLAN(C)\</span></div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="preprocessor"> int N; \</span></div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="preprocessor"> R *x; \</span></div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> <span class="preprocessor"> </span><span class="comment">/* internal use only */</span><span class="preprocessor">\</span></div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="preprocessor"> int t; \</span></div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="preprocessor"> unsigned int flags; \</span></div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="preprocessor"> Z(plan) plan_nfft; \</span></div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="preprocessor"> C *f_hat_intern; \</span></div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="preprocessor"> double MEASURE_TIME_t[3]; \</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="preprocessor">} X(plan);\</span></div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="preprocessor">NFFT_EXTERN void X(init)(X(plan) *plan, int N, int M); \</span></div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="preprocessor">NFFT_EXTERN void X(init_advanced)(X(plan)* plan, int N, int M, unsigned int \</span></div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="preprocessor"> nfsft_flags); \</span></div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="preprocessor">NFFT_EXTERN void X(init_guru)(X(plan) *plan, int N, int M, \</span></div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="preprocessor"> unsigned int nfsft_flags, unsigned int nfft_flags, int nfft_cutoff); \</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="preprocessor">NFFT_EXTERN void X(precompute)(int N, R kappa, unsigned int nfsft_flags, \</span></div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="preprocessor"> unsigned int fpt_flags); \</span></div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="preprocessor">NFFT_EXTERN void X(forget)(void); \</span></div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> <span class="preprocessor">NFFT_EXTERN void X(trafo_direct)(X(plan)* plan); \</span></div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint_direct)(X(plan)* plan); \</span></div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor">NFFT_EXTERN void X(trafo)(X(plan)* plan); \</span></div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint)(X(plan)* plan); \</span></div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <span class="preprocessor">NFFT_EXTERN void X(finalize)(X(plan) *plan); \</span></div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="preprocessor">NFFT_EXTERN void X(precompute_x)(X(plan) *plan);</span></div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="preprocessor">#ifdef HAVE_NFSFT</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="preprocessor"></span><span class="comment">/* nfsft api */</span></div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> NFSFT_DEFINE_API(NFSFT_MANGLE_FLOAT,NFFT_MANGLE_FLOAT,<span class="keywordtype">float</span>,fftwf_complex)</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> NFSFT_DEFINE_API(NFSFT_MANGLE_DOUBLE,NFFT_MANGLE_DOUBLE,<span class="keywordtype">double</span>,fftw_complex)</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> NFSFT_DEFINE_API(NFSFT_MANGLE_LONG_DOUBLE,NFFT_MANGLE_LONG_DOUBLE,<span class="keywordtype">long</span> <span class="keywordtype">double</span>,fftwl_complex)</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="comment">/* init flags */</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor">#define NFSFT_NORMALIZED (1U << 0)</span></div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_USE_NDFT (1U << 1)</span></div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_USE_DPT (1U << 2)</span></div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_MALLOC_X (1U << 3)</span></div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_MALLOC_F_HAT (1U << 5)</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_MALLOC_F (1U << 6)</span></div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_PRESERVE_F_HAT (1U << 7)</span></div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_PRESERVE_X (1U << 8)</span></div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_PRESERVE_F (1U << 9)</span></div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_DESTROY_F_HAT (1U << 10)</span></div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_DESTROY_X (1U << 11)</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_DESTROY_F (1U << 12)</span></div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="comment">/* precompute flags */</span></div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="preprocessor">#define NFSFT_NO_DIRECT_ALGORITHM (1U << 13)</span></div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_NO_FAST_ALGORITHM (1U << 14)</span></div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_ZERO_F_HAT (1U << 16)</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00607"></a><span class="lineno"><a class="code" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa"> 607</a></span> <span class="comment">/* helper macros */</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="preprocessor">#define NFSFT_INDEX(k,n,plan) ((2*(plan)->N+2)*((plan)->N-n+1)+(plan)->N+k+1)</span></div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSFT_F_HAT_SIZE(N) ((2*N+2)*(2*N+2))</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="comment">/* fpt */</span></div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> </div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="comment">/* name mangling macros */</span></div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="preprocessor">#define FPT_MANGLE_DOUBLE(name) NFFT_CONCAT(fpt_, name)</span></div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="preprocessor"></span><span class="preprocessor">#define FPT_MANGLE_FLOAT(name) NFFT_CONCAT(fptf_, name)</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="preprocessor"></span><span class="preprocessor">#define FPT_MANGLE_LONG_DOUBLE(name) NFFT_CONCAT(fptl_, name)</span></div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="comment">/* huge second-order macro that defines prototypes for all fpt API functions.</span></div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="comment"> * We expand this macro for each supported precision.</span></div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <span class="comment"> * X: fpt name-mangling macro</span></div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="comment"> * R: real data type</span></div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="comment"> * C: complex data type</span></div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="preprocessor">#define FPT_DEFINE_API(X,Y,R,C) \</span></div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="preprocessor">typedef struct X(set_s_) *X(set); \</span></div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="preprocessor">NFFT_EXTERN X(set) X(init)(const int M, const int t, const unsigned int flags); \</span></div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="preprocessor">NFFT_EXTERN void X(precompute)(X(set) set, const int m, R *alpha, R *beta, \</span></div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="preprocessor"> R *gam, int k_start, const R threshold); \</span></div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="preprocessor">NFFT_EXTERN void X(trafo_direct)(X(set) set, const int m, const C *x, C *y, \</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="preprocessor"> const int k_end, const unsigned int flags); \</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="preprocessor">NFFT_EXTERN void X(trafo)(X(set) set, const int m, const C *x, C *y, \</span></div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="preprocessor"> const int k_end, const unsigned int flags); \</span></div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> <span class="preprocessor">NFFT_EXTERN void X(transposed_direct)(X(set) set, const int m, C *x, \</span></div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="preprocessor"> C *y, const int k_end, const unsigned int flags); \</span></div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="preprocessor">NFFT_EXTERN void X(transposed)(X(set) set, const int m, C *x, \</span></div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="preprocessor"> C *y, const int k_end, const unsigned int flags); \</span></div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="preprocessor">NFFT_EXTERN void X(finalize)(X(set) set);</span></div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> <span class="preprocessor">#ifdef HAVE_FPT</span></div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <span class="preprocessor"></span><span class="comment">/* fpt api */</span></div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> FPT_DEFINE_API(FPT_MANGLE_FLOAT,FFTW_MANGLE_FLOAT,<span class="keywordtype">float</span>,fftwf_complex)</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> FPT_DEFINE_API(FPT_MANGLE_DOUBLE,FFTW_MANGLE_DOUBLE,<span class="keywordtype">double</span>,fftw_complex)</div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> FPT_DEFINE_API(FPT_MANGLE_LONG_DOUBLE,FFTW_MANGLE_LONG_DOUBLE,<span class="keywordtype">long</span> <span class="keywordtype">double</span>,fftwl_complex)</div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> </div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> <span class="comment">/* init flags */</span></div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="preprocessor">#define FPT_NO_STABILIZATION (1U << 0)</span></div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="preprocessor"></span><span class="preprocessor">#define FPT_NO_FAST_ALGORITHM (1U << 2)</span></div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <span class="preprocessor"></span><span class="preprocessor">#define FPT_NO_DIRECT_ALGORITHM (1U << 3)</span></div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> <span class="preprocessor"></span><span class="preprocessor">#define FPT_PERSISTENT_DATA (1U << 4)</span></div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="comment">/* transform flags */</span></div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="preprocessor">#define FPT_FUNCTION_VALUES (1U << 5)</span></div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="preprocessor"></span><span class="preprocessor">#define FPT_AL_SYMMETRY (1U << 6)</span></div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="comment">/* nfsoft*/</span></div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> </div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="comment">/* name mangling macros */</span></div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> <span class="preprocessor">#define NFSOFT_MANGLE_DOUBLE(name) NFFT_CONCAT(nfsoft_, name)</span></div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_MANGLE_FLOAT(name) NFFT_CONCAT(nfsoftf_, name)</span></div>
-<div class="line"><a name="l00663"></a><span class="lineno"><a class="code" href="structnfsoftl__plan__.html#a92211c64713d72c3d3cf45ac39601214"> 663</a></span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_MANGLE_LONG_DOUBLE(name) NFFT_CONCAT(nfsoftl_, name)</span></div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> <span class="comment">/* huge second-order macro that defines prototypes for all nfsoft API functions.</span></div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="comment"> * We expand this macro for each supported precision.</span></div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="comment"> * X: nfsoft name-mangling macro</span></div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="comment"> * Y: nfft name-mangling macro</span></div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <span class="comment"> * Z: fpt name-mangling macro</span></div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> <span class="comment"> * R: real data type</span></div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> <span class="comment"> * C: complex data type</span></div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="preprocessor">#define NFSOFT_DEFINE_API(X,Y,Z,R,C) \</span></div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="preprocessor">typedef struct X(plan_)\</span></div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="preprocessor"> MACRO_MV_PLAN(C) \</span></div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> <span class="preprocessor"> R *x; \</span></div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="preprocessor"> C *wig_coeffs; \</span></div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="preprocessor"> C *cheby; \</span></div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> <span class="preprocessor"> C *aux; \</span></div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> <span class="preprocessor"> </span><span class="comment">/* internal use only */</span><span class="preprocessor">\</span></div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="preprocessor"> int t; \</span></div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> <span class="preprocessor"> unsigned int flags; \</span></div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="preprocessor"> Y(plan) p_nfft; \</span></div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> <span class="preprocessor"> Z(set) internal_fpt_set; \</span></div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor"> int fpt_kappa; \</span></div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="preprocessor">} X(plan);\</span></div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="preprocessor">NFFT_EXTERN void X(precompute)(X(plan) *plan); \</span></div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="preprocessor">NFFT_EXTERN Z(set) X(SO3_single_fpt_init)(int l, int k, int m, unsigned int flags, int kappa); \</span></div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> <span class="preprocessor">NFFT_EXTERN void X(SO3_fpt)(C *coeffs, Z(set) set, int l, int k, int m, unsigned int nfsoft_flags); \</span></div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="preprocessor">NFFT_EXTERN void X(SO3_fpt_transposed)(C *coeffs, Z(set) set,int l, int k, int m,unsigned int nfsoft_flags); \</span></div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <span class="preprocessor">NFFT_EXTERN void X(init)(X(plan) *plan, int N, int M); \</span></div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> <span class="preprocessor">NFFT_EXTERN void X(init_advanced)(X(plan) *plan, int N, int M,unsigned int nfsoft_flags); \</span></div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> <span class="preprocessor">NFFT_EXTERN void X(init_guru)(X(plan) *plan, int N, int M,unsigned int nfsoft_flags,unsigned int nfft_flags,int nfft_cutoff,int fpt_kappa); \</span></div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="preprocessor">NFFT_EXTERN void X(trafo)(X(plan) *plan_nfsoft); \</span></div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="preprocessor">NFFT_EXTERN void X(adjoint)(X(plan) *plan_nfsoft); \</span></div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> <span class="preprocessor">NFFT_EXTERN void X(finalize)(X(plan) *plan); \</span></div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> <span class="preprocessor">NFFT_EXTERN int X(posN)(int n,int m, int B);</span></div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> <span class="preprocessor">#ifdef HAVE_NFSOFT</span></div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> <span class="preprocessor"></span><span class="comment">/* nfsoft api */</span></div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> NFSOFT_DEFINE_API(NFSOFT_MANGLE_FLOAT,NFFT_MANGLE_FLOAT,FPT_MANGLE_FLOAT,<span class="keywordtype">float</span>,fftwf_complex)</div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> NFSOFT_DEFINE_API(NFSOFT_MANGLE_DOUBLE,NFFT_MANGLE_DOUBLE,FPT_MANGLE_DOUBLE,<span class="keywordtype">double</span>,fftw_complex)</div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> NFSOFT_DEFINE_API(NFSOFT_MANGLE_LONG_DOUBLE,NFFT_MANGLE_LONG_DOUBLE,FPT_MANGLE_LONG_DOUBLE,<span class="keywordtype">long</span> <span class="keywordtype">double</span>,fftwl_complex)</div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> </div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> <span class="comment">/* init flags */</span></div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> <span class="preprocessor">#define NFSOFT_NORMALIZED (1U << 0)</span></div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_USE_NDFT (1U << 1)</span></div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_USE_DPT (1U << 2)</span></div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_MALLOC_X (1U << 3)</span></div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_REPRESENT (1U << 4)</span></div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_MALLOC_F_HAT (1U << 5)</span></div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_MALLOC_F (1U << 6)</span></div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_PRESERVE_F_HAT (1U << 7)</span></div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_PRESERVE_X (1U << 8)</span></div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_PRESERVE_F (1U << 9)</span></div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_DESTROY_F_HAT (1U << 10)</span></div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_DESTROY_X (1U << 11)</span></div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_DESTROY_F (1U << 12)</span></div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="comment">/* precompute flags */</span></div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> <span class="preprocessor">#define NFSOFT_NO_STABILIZATION (1U << 13)</span></div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_CHOOSE_DPT (1U << 14)</span></div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_SOFT (1U << 15)</span></div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_ZERO_F_HAT (1U << 16)</span></div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> <span class="comment">/* helper macros */</span></div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> <span class="preprocessor">#define NFSOFT_INDEX(m,n,l,B) (((l)+((B)+1))+(2*(B)+2)*(((n)+((B)+1))+(2*(B)+2)*((m)+((B)+1))))</span></div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_INDEX_TWO(m,n,l,B) ((B+1)*(B+1)+(B+1)*(B+1)*(m+B)-((m-1)*m*(2*m-1)+(B+1)*(B+2)*(2*B+3))/6)+(posN(n,m,B))+(l-MAX(ABS(m),ABS(n)))</span></div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> <span class="preprocessor"></span><span class="preprocessor">#define NFSOFT_F_HAT_SIZE(B) (((B)+1)*(4*((B)+1)*((B)+1)-1)/3)</span></div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> <span class="comment">/*solver */</span></div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> </div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> <span class="comment">/* name mangling macros */</span></div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> <span class="preprocessor">#define SOLVER_MANGLE_DOUBLE(name) NFFT_CONCAT(solver_, name)</span></div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> <span class="preprocessor"></span><span class="preprocessor">#define SOLVER_MANGLE_FLOAT(name) NFFT_CONCAT(solverf_, name)</span></div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> <span class="preprocessor"></span><span class="preprocessor">#define SOLVER_MANGLE_LONG_DOUBLE(name) NFFT_CONCAT(solverl_, name)</span></div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> <span class="comment">/* huge second-order macro that defines prototypes for all nfsoft API functions.</span></div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> <span class="comment"> * We expand this macro for each supported precision.</span></div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> <span class="comment"> * X: nfsoft name-mangling macro</span></div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> <span class="comment"> * Y: nfft name-mangling macro</span></div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> <span class="comment"> * R: real data type</span></div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> <span class="comment"> * C: complex data type</span></div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> <span class="preprocessor">#define SOLVER_DEFINE_API(X,Y,R,C)\</span></div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> <span class="preprocessor">typedef struct\</span></div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> <span class="preprocessor"> Y(mv_plan_complex) *mv; \</span></div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> <span class="preprocessor"> unsigned flags; \</span></div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> <span class="preprocessor"> R *w; \</span></div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> <span class="preprocessor"> R *w_hat; \</span></div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> <span class="preprocessor"> C *y; \</span></div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> <span class="preprocessor"> C *f_hat_iter; \</span></div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> <span class="preprocessor"> C *r_iter; \</span></div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> <span class="preprocessor"> C *z_hat_iter; \</span></div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> <span class="preprocessor"> C *p_hat_iter; \</span></div>
-<div class="line"><a name="l00763"></a><span class="lineno"><a class="code" href="structsolverl__plan__double.html#a0816054fdb0e07f4a68fc4aa5321c977"> 763</a></span> <span class="preprocessor"> C *v_iter; \</span></div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> <span class="preprocessor"> R alpha_iter; \</span></div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="preprocessor"> R beta_iter; \</span></div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> <span class="preprocessor"> R dot_r_iter; \</span></div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="preprocessor"> R dot_r_iter_old; \</span></div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> <span class="preprocessor"> R dot_z_hat_iter; \</span></div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> <span class="preprocessor"> R dot_z_hat_iter_old; \</span></div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> <span class="preprocessor"> R dot_p_hat_iter; \</span></div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> <span class="preprocessor"> R dot_v_iter; \</span></div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> <span class="preprocessor">} X(plan_complex);\</span></div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> <span class="preprocessor">NFFT_EXTERN void X(init_advanced_complex)(X(plan_complex)* ths, Y(mv_plan_complex) *mv, unsigned flags);\</span></div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="preprocessor">NFFT_EXTERN void X(init_complex)(X(plan_complex)* ths, Y(mv_plan_complex) *mv);\</span></div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> <span class="preprocessor">NFFT_EXTERN void X(before_loop_complex)(X(plan_complex)* ths);\</span></div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> <span class="preprocessor">NFFT_EXTERN void X(loop_one_step_complex)(X(plan_complex) *ths);\</span></div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="preprocessor">NFFT_EXTERN void X(finalize_complex)(X(plan_complex) *ths);\</span></div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> <span class="preprocessor">typedef struct\</span></div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <span class="preprocessor">{\</span></div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> <span class="preprocessor"> Y(mv_plan_double) *mv; \</span></div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> <span class="preprocessor"> unsigned flags; \</span></div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> <span class="preprocessor"> R *w; \</span></div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> <span class="preprocessor"> R *w_hat; \</span></div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> <span class="preprocessor"> R *y; \</span></div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> <span class="preprocessor"> R *f_hat_iter; \</span></div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> <span class="preprocessor"> R *r_iter; \</span></div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> <span class="preprocessor"> R *z_hat_iter; \</span></div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="preprocessor"> R *p_hat_iter; \</span></div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> <span class="preprocessor"> R *v_iter; \</span></div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="preprocessor"> R alpha_iter; \</span></div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <span class="preprocessor"> R beta_iter; \</span></div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> <span class="preprocessor"> R dot_r_iter; \</span></div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> <span class="preprocessor"> R dot_r_iter_old; \</span></div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> <span class="preprocessor"> R dot_z_hat_iter; \</span></div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="preprocessor"> R dot_z_hat_iter_old; \</span></div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> <span class="preprocessor"> R dot_p_hat_iter; \</span></div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> <span class="preprocessor"> R dot_v_iter; \</span></div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> <span class="preprocessor">} X(plan_double);\</span></div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> <span class="preprocessor">NFFT_EXTERN void X(init_advanced_double)(X(plan_double)* ths, Y(mv_plan_double) *mv, unsigned flags);\</span></div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> <span class="preprocessor">NFFT_EXTERN void X(solver_init_double)(X(plan_double)* ths, Y(mv_plan_double) *mv);\</span></div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="preprocessor">NFFT_EXTERN void X(solver_before_loop_double)(X(plan_double)* ths);\</span></div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> <span class="preprocessor">NFFT_EXTERN void X(solver_loop_one_step_double)(X(plan_double) *ths);\</span></div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> <span class="preprocessor">NFFT_EXTERN void X(solver_finalize_double)(X(plan_double) *ths);</span></div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> <span class="comment">/* solver api */</span></div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> SOLVER_DEFINE_API(SOLVER_MANGLE_FLOAT,NFFT_MANGLE_FLOAT,<span class="keywordtype">float</span>,fftwf_complex)</div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> SOLVER_DEFINE_API(SOLVER_MANGLE_DOUBLE,NFFT_MANGLE_DOUBLE,<span class="keywordtype">double</span>,fftw_complex)</div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> SOLVER_DEFINE_API(SOLVER_MANGLE_LONG_DOUBLE,NFFT_MANGLE_LONG_DOUBLE,<span class="keywordtype">long</span> <span class="keywordtype">double</span>,fftwl_complex)</div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> </div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> <span class="comment">/* init flags */</span></div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> <span class="preprocessor">#define LANDWEBER (1U<< 0)</span></div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> <span class="preprocessor"></span><span class="preprocessor">#define STEEPEST_DESCENT (1U<< 1)</span></div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> <span class="preprocessor"></span><span class="preprocessor">#define CGNR (1U<< 2)</span></div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> <span class="preprocessor"></span><span class="preprocessor">#define CGNE (1U<< 3)</span></div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> <span class="preprocessor"></span><span class="preprocessor">#define NORMS_FOR_LANDWEBER (1U<< 4)</span></div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="preprocessor"></span><span class="preprocessor">#define PRECOMPUTE_WEIGHT (1U<< 5)</span></div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> <span class="preprocessor"></span><span class="preprocessor">#define PRECOMPUTE_DAMP (1U<< 6)</span></div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> <span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="preprocessor"></span>} <span class="comment">/* extern "C" */</span></div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> <span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <span class="preprocessor">#endif </span><span class="comment">/* defined(__NFFT3_H__) */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft3conf_8h_source.html b/doc/api/html/nfft3conf_8h_source.html
deleted file mode 100644
index e6868f0..0000000
--- a/doc/api/html/nfft3conf_8h_source.html
+++ /dev/null
@@ -1,95 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft3conf.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft3conf.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2009 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id$ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">/* include/nfftconf.h.in. Generated from configure.ac by autoheader. */</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">/* Define to enable FPT module. */</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#define HAVE_FPT 1</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="comment">/* Define to enable MRI module. */</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#define HAVE_MRI 1</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment">/* Define to enable NFCT module. */</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#define HAVE_NFCT 1</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment">/* Define to enable NFSFT module. */</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#define HAVE_NFSFT 1</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment">/* Define to enable NFSOFT module. */</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#define HAVE_NFSOFT 1</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment">/* Define to enable NFST module. */</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#define HAVE_NFST 1</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">/* Define to enable NNFFT module. */</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#define HAVE_NNFFT 1</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment">/* Define to enable NSFFT module. */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor">#define HAVE_NSFFT 1</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft3util_8h.html b/doc/api/html/nfft3util_8h.html
deleted file mode 100644
index e16eb93..0000000
--- a/doc/api/html/nfft3util_8h.html
+++ /dev/null
@@ -1,221 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft3util.h File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#define-members">Macros</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">nfft3util.h File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Header file for utility functions used by the nfft3 library.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include <fftw3.h></code><br/>
-</div>
-<p><a href="nfft3util_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:ga4df074728562efbb458f6662e649d1d5"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5">NFFT_SWAP_complex</a>(x, y)</td></tr>
-<tr class="memdesc:ga4df074728562efbb458f6662e649d1d5"><td class="mdescLeft"> </td><td class="mdescRight">Swapping of two vectors. <a href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5"></a><br/></td></tr>
-<tr class="memitem:ga4d8733560ed5e4cc3ff7ecadac62e83e"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e">NFFT_SWAP_double</a>(x, y)</td></tr>
-<tr class="memdesc:ga4d8733560ed5e4cc3ff7ecadac62e83e"><td class="mdescLeft"> </td><td class="mdescRight">Swapping of two vectors. <a href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e"></a><br/></td></tr>
-<tr class="memitem:ga598a3330b3c21701223ee0ca14316eca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga598a3330b3c21701223ee0ca14316eca"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca">PI</a> 3.141592653589793238462643383279502884197169399375105820974944592</td></tr>
-<tr class="memdesc:ga598a3330b3c21701223ee0ca14316eca"><td class="mdescLeft"> </td><td class="mdescRight">Formerly known to be an irrational number. <br/></td></tr>
-<tr class="memitem:ga2750dfdda752269a036f487a4a34b849"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2750dfdda752269a036f487a4a34b849"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PI2</b> 6.283185307179586476925286766559005768394338798750211641949889185</td></tr>
-<tr class="memitem:gafd17621e12029ff7c53518b74a487c94"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafd17621e12029ff7c53518b74a487c94"></a>
-#define </td><td class="memItemRight" valign="bottom"><b>PI4</b> 12.56637061435917295385057353311801153678867759750042328389977837</td></tr>
-<tr class="memitem:gad2e3f0e1983de6d70f003545cc556ed3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad2e3f0e1983de6d70f003545cc556ed3"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3">NFFT_MAX</a>(a, b) ((a)>(b)? (a) : (b))</td></tr>
-<tr class="memdesc:gad2e3f0e1983de6d70f003545cc556ed3"><td class="mdescLeft"> </td><td class="mdescRight">Maximum of its two arguments. <br/></td></tr>
-<tr class="memitem:ga9087991411f723f26723b2b26dbf3308"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9087991411f723f26723b2b26dbf3308"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308">NFFT_MIN</a>(a, b) ((a)<(b)? (a) : (b))</td></tr>
-<tr class="memdesc:ga9087991411f723f26723b2b26dbf3308"><td class="mdescLeft"> </td><td class="mdescRight">Mimimum of its two arguments. <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga89bd624abdfb13abc10c144a8ff949cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga89bd624abdfb13abc10c144a8ff949cd"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga89bd624abdfb13abc10c144a8ff949cd">nfft_bspline_old</a> (int k, double x, double *A)</td></tr>
-<tr class="memdesc:ga89bd624abdfb13abc10c144a8ff949cd"><td class="mdescLeft"> </td><td class="mdescRight">To test the new one. <br/></td></tr>
-<tr class="memitem:ga2fd48f1f700153c050d27691c4b2a6cc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2fd48f1f700153c050d27691c4b2a6cc"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga2fd48f1f700153c050d27691c4b2a6cc">nfft_bspline</a> (int k, double x, double *scratch)</td></tr>
-<tr class="memdesc:ga2fd48f1f700153c050d27691c4b2a6cc"><td class="mdescLeft"> </td><td class="mdescRight">Computes the B-spline <img class="formulaInl" alt="$M_{k,0}\left(x\right)$" src="form_9.png"/>, scratch is used for de Boor's scheme. <br/></td></tr>
-<tr class="memitem:ga2752ca372ee2622f173a706e86e2b116"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2752ca372ee2622f173a706e86e2b116"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga2752ca372ee2622f173a706e86e2b116">nfft_prod_int</a> (int *vec, int d)</td></tr>
-<tr class="memdesc:ga2752ca372ee2622f173a706e86e2b116"><td class="mdescLeft"> </td><td class="mdescRight">Computes integer <img class="formulaInl" alt="$\prod_{t=0}^{d-1} v_t$" src="form_10.png"/>. <br/></td></tr>
-<tr class="memitem:ga8adc6bf59ec10f16243030ee00ad4a40"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga8adc6bf59ec10f16243030ee00ad4a40"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga8adc6bf59ec10f16243030ee00ad4a40">nfst_prod_minus_a_int</a> (int *vec, int a, int d)</td></tr>
-<tr class="memdesc:ga8adc6bf59ec10f16243030ee00ad4a40"><td class="mdescLeft"> </td><td class="mdescRight">Computes integer <img class="formulaInl" alt="$\prod_{t=0}^{d-1} v_t-a$" src="form_11.png"/>. <br/></td></tr>
-<tr class="memitem:gad979f626cc8397e26d1bd78a7ba342cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad979f626cc8397e26d1bd78a7ba342cd"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gad979f626cc8397e26d1bd78a7ba342cd">nfft_plain_loop</a> (int *idx, int *N, int d)</td></tr>
-<tr class="memdesc:gad979f626cc8397e26d1bd78a7ba342cd"><td class="mdescLeft"> </td><td class="mdescRight">Computes <img class="formulaInl" alt="$\sum_{t=0}^{d-1} i_t \prod_{t'=t+1}^{d-1} N_{t'}$" src="form_12.png"/>. <br/></td></tr>
-<tr class="memitem:gad7bad7074a695341742f57526f8695eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad7bad7074a695341742f57526f8695eb"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gad7bad7074a695341742f57526f8695eb">nfft_prod_real</a> (double *vec, int d)</td></tr>
-<tr class="memdesc:gad7bad7074a695341742f57526f8695eb"><td class="mdescLeft"> </td><td class="mdescRight">Computes double <img class="formulaInl" alt="$\prod_{t=0}^{d-1} v_t$" src="form_10.png"/>. <br/></td></tr>
-<tr class="memitem:ga135eb6c5a8ae1a84ea64c9099caac004"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga135eb6c5a8ae1a84ea64c9099caac004"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004">nfft_dot_complex</a> (fftw_complex *x, int n)</td></tr>
-<tr class="memdesc:ga135eb6c5a8ae1a84ea64c9099caac004"><td class="mdescLeft"> </td><td class="mdescRight">Computes the inner/dot product <img class="formulaInl" alt="$x^H x$" src="form_13.png"/>. <br/></td></tr>
-<tr class="memitem:ga02357d8d67d2591573089e49958855a5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga02357d8d67d2591573089e49958855a5"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5">nfft_dot_double</a> (double *x, int n)</td></tr>
-<tr class="memdesc:ga02357d8d67d2591573089e49958855a5"><td class="mdescLeft"> </td><td class="mdescRight">Computes the inner/dot product <img class="formulaInl" alt="$x^H x$" src="form_13.png"/>. <br/></td></tr>
-<tr class="memitem:gac712b4a91652e20dc53719ce6fc1f9e1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac712b4a91652e20dc53719ce6fc1f9e1"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1">nfft_dot_w_complex</a> (fftw_complex *x, double *w, int n)</td></tr>
-<tr class="memdesc:gac712b4a91652e20dc53719ce6fc1f9e1"><td class="mdescLeft"> </td><td class="mdescRight">Computes the weighted inner/dot product <img class="formulaInl" alt="$x^H (w \odot x)$" src="form_14.png"/>. <br/></td></tr>
-<tr class="memitem:ga69cceec47679c500072d3d60c6181b39"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga69cceec47679c500072d3d60c6181b39"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39">nfft_dot_w_double</a> (double *x, double *w, int n)</td></tr>
-<tr class="memdesc:ga69cceec47679c500072d3d60c6181b39"><td class="mdescLeft"> </td><td class="mdescRight">Computes the weighted inner/dot product <img class="formulaInl" alt="$x^H (w \odot x)$" src="form_14.png"/>. <br/></td></tr>
-<tr class="memitem:ga68268fc9bfad5a7e7383098ac1715674"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga68268fc9bfad5a7e7383098ac1715674"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga68268fc9bfad5a7e7383098ac1715674">nfft_dot_w_w2_complex</a> (fftw_complex *x, double *w, double *w2, int n)</td></tr>
-<tr class="memdesc:ga68268fc9bfad5a7e7383098ac1715674"><td class="mdescLeft"> </td><td class="mdescRight">Computes the weighted inner/dot product <img class="formulaInl" alt="$x^H (w1\odot w2\odot w2 \odot x)$" src="form_15.png"/>. <br/></td></tr>
-<tr class="memitem:ga9b59288597d159357fe86395e635a075"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga9b59288597d159357fe86395e635a075"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga9b59288597d159357fe86395e635a075">nfft_dot_w2_complex</a> (fftw_complex *x, double *w2, int n)</td></tr>
-<tr class="memdesc:ga9b59288597d159357fe86395e635a075"><td class="mdescLeft"> </td><td class="mdescRight">Computes the weighted inner/dot product <img class="formulaInl" alt="$x^H (w2\odot w2 \odot x)$" src="form_16.png"/>. <br/></td></tr>
-<tr class="memitem:ga21fd5b4d5f6113538320188306611133"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga21fd5b4d5f6113538320188306611133"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133">nfft_cp_complex</a> (fftw_complex *x, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga21fd5b4d5f6113538320188306611133"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow y$" src="form_17.png"/>. <br/></td></tr>
-<tr class="memitem:gab220a37bd6e58be7413507b17ca3bfe2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab220a37bd6e58be7413507b17ca3bfe2"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2">nfft_cp_double</a> (double *x, double *y, int n)</td></tr>
-<tr class="memdesc:gab220a37bd6e58be7413507b17ca3bfe2"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow y$" src="form_17.png"/>. <br/></td></tr>
-<tr class="memitem:ga33409df91e7ad5e1dca3beaa63e0ef25"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga33409df91e7ad5e1dca3beaa63e0ef25"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga33409df91e7ad5e1dca3beaa63e0ef25">nfft_cp_a_complex</a> (fftw_complex *x, double a, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga33409df91e7ad5e1dca3beaa63e0ef25"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow a y$" src="form_18.png"/>. <br/></td></tr>
-<tr class="memitem:ga41f20c605269e701b3305e49010e0759"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga41f20c605269e701b3305e49010e0759"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga41f20c605269e701b3305e49010e0759">nfft_cp_a_double</a> (double *x, double a, double *y, int n)</td></tr>
-<tr class="memdesc:ga41f20c605269e701b3305e49010e0759"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow a y$" src="form_18.png"/>. <br/></td></tr>
-<tr class="memitem:ga630054cb816785d766959a867965f619"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga630054cb816785d766959a867965f619"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga630054cb816785d766959a867965f619">nfft_cp_w_complex</a> (fftw_complex *x, double *w, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga630054cb816785d766959a867965f619"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow w\odot y$" src="form_19.png"/>. <br/></td></tr>
-<tr class="memitem:ga27a75e17d21c508cacf81276ca531099"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga27a75e17d21c508cacf81276ca531099"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099">nfft_cp_w_double</a> (double *x, double *w, double *y, int n)</td></tr>
-<tr class="memdesc:ga27a75e17d21c508cacf81276ca531099"><td class="mdescLeft"> </td><td class="mdescRight">Copies <img class="formulaInl" alt="$x \leftarrow w\odot y$" src="form_19.png"/>. <br/></td></tr>
-<tr class="memitem:ga676395f56bbf1c444d074a21753de8d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga676395f56bbf1c444d074a21753de8d5"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5">nfft_upd_axpy_complex</a> (fftw_complex *x, double a, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga676395f56bbf1c444d074a21753de8d5"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + y$" src="form_20.png"/>. <br/></td></tr>
-<tr class="memitem:ga7610a506bc5ab40a6e1d7937b36921a3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7610a506bc5ab40a6e1d7937b36921a3"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3">nfft_upd_axpy_double</a> (double *x, double a, double *y, int n)</td></tr>
-<tr class="memdesc:ga7610a506bc5ab40a6e1d7937b36921a3"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + y$" src="form_20.png"/>. <br/></td></tr>
-<tr class="memitem:ga1fde8da1b69413398fca44e2ef2fbdb4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga1fde8da1b69413398fca44e2ef2fbdb4"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4">nfft_upd_xpay_complex</a> (fftw_complex *x, double a, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga1fde8da1b69413398fca44e2ef2fbdb4"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow x + a y$" src="form_21.png"/>. <br/></td></tr>
-<tr class="memitem:ga2389c3b56a484a3f165b7d9203700064"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2389c3b56a484a3f165b7d9203700064"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064">nfft_upd_xpay_double</a> (double *x, double a, double *y, int n)</td></tr>
-<tr class="memdesc:ga2389c3b56a484a3f165b7d9203700064"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow x + a y$" src="form_21.png"/>. <br/></td></tr>
-<tr class="memitem:ga903a4b3ed369dcfe67b9379a238ed23d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga903a4b3ed369dcfe67b9379a238ed23d"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga903a4b3ed369dcfe67b9379a238ed23d">nfft_upd_axpby_complex</a> (fftw_complex *x, double a, fftw_complex *y, double b, int n)</td></tr>
-<tr class="memdesc:ga903a4b3ed369dcfe67b9379a238ed23d"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + b y$" src="form_22.png"/>. <br/></td></tr>
-<tr class="memitem:ga75e403e92875b0b919a555f8cede0e8d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga75e403e92875b0b919a555f8cede0e8d"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga75e403e92875b0b919a555f8cede0e8d">nfft_upd_axpby_double</a> (double *x, double a, double *y, double b, int n)</td></tr>
-<tr class="memdesc:ga75e403e92875b0b919a555f8cede0e8d"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + b y$" src="form_22.png"/>. <br/></td></tr>
-<tr class="memitem:gad8e10773e59818c88a8ea2cb560b936e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad8e10773e59818c88a8ea2cb560b936e"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gad8e10773e59818c88a8ea2cb560b936e">nfft_upd_xpawy_complex</a> (fftw_complex *x, double a, double *w, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:gad8e10773e59818c88a8ea2cb560b936e"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow x + a w\odot y$" src="form_23.png"/>. <br/></td></tr>
-<tr class="memitem:gac5db5bbc58f772844cf0caf5fd9fafb0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac5db5bbc58f772844cf0caf5fd9fafb0"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0">nfft_upd_xpawy_double</a> (double *x, double a, double *w, double *y, int n)</td></tr>
-<tr class="memdesc:gac5db5bbc58f772844cf0caf5fd9fafb0"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow x + a w\odot y$" src="form_23.png"/>. <br/></td></tr>
-<tr class="memitem:ga693919963b51cf396311b15660e04cd8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga693919963b51cf396311b15660e04cd8"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga693919963b51cf396311b15660e04cd8">nfft_upd_axpwy_complex</a> (fftw_complex *x, double a, double *w, fftw_complex *y, int n)</td></tr>
-<tr class="memdesc:ga693919963b51cf396311b15660e04cd8"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + w\odot y$" src="form_24.png"/>. <br/></td></tr>
-<tr class="memitem:gaf6777c4b8aa9f575f1600c51e8ae343a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf6777c4b8aa9f575f1600c51e8ae343a"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gaf6777c4b8aa9f575f1600c51e8ae343a">nfft_upd_axpwy_double</a> (double *x, double a, double *w, double *y, int n)</td></tr>
-<tr class="memdesc:gaf6777c4b8aa9f575f1600c51e8ae343a"><td class="mdescLeft"> </td><td class="mdescRight">Updates <img class="formulaInl" alt="$x \leftarrow a x + w\odot y$" src="form_24.png"/>. <br/></td></tr>
-<tr class="memitem:gaa388b5ec231e02ac45e37b60fd62e770"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa388b5ec231e02ac45e37b60fd62e770"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770">nfft_fftshift_complex</a> (fftw_complex *x, int d, int *N)</td></tr>
-<tr class="memdesc:gaa388b5ec231e02ac45e37b60fd62e770"><td class="mdescLeft"> </td><td class="mdescRight">Swaps each half over N[d]/2. <br/></td></tr>
-<tr class="memitem:gaa8e0581d802c4b7bb153682a4c156409"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa8e0581d802c4b7bb153682a4c156409"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gaa8e0581d802c4b7bb153682a4c156409">nfft_vpr_int</a> (int *x, int n, char *text)</td></tr>
-<tr class="memdesc:gaa8e0581d802c4b7bb153682a4c156409"><td class="mdescLeft"> </td><td class="mdescRight">Prints a vector of integer numbers. <br/></td></tr>
-<tr class="memitem:ga5021b4c5ea2a24b0014786deb81cca91"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5021b4c5ea2a24b0014786deb81cca91"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91">nfft_vpr_double</a> (double *x, int n, const char *text)</td></tr>
-<tr class="memdesc:ga5021b4c5ea2a24b0014786deb81cca91"><td class="mdescLeft"> </td><td class="mdescRight">Prints a vector of doubles numbers. <br/></td></tr>
-<tr class="memitem:ga52ad07055e22b83a016bdbf43d3884d0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga52ad07055e22b83a016bdbf43d3884d0"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0">nfft_vpr_complex</a> (fftw_complex *x, int n, const char *text)</td></tr>
-<tr class="memdesc:ga52ad07055e22b83a016bdbf43d3884d0"><td class="mdescLeft"> </td><td class="mdescRight">Prints a vector of complex numbers. <br/></td></tr>
-<tr class="memitem:ga5f53c8cd0b2f33200fce15ecf75a0685"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5f53c8cd0b2f33200fce15ecf75a0685"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685">nfft_vrand_unit_complex</a> (fftw_complex *x, int n)</td></tr>
-<tr class="memdesc:ga5f53c8cd0b2f33200fce15ecf75a0685"><td class="mdescLeft"> </td><td class="mdescRight">Inits a vector of random complex numbers in <img class="formulaInl" alt="$[0,1]\times[0,1]{\rm i}$" src="form_25.png"/>. <br/></td></tr>
-<tr class="memitem:gaa44184ac2c1452221508e7640f391c34"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa44184ac2c1452221508e7640f391c34"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34">nfft_vrand_shifted_unit_double</a> (double *x, int n)</td></tr>
-<tr class="memdesc:gaa44184ac2c1452221508e7640f391c34"><td class="mdescLeft"> </td><td class="mdescRight">Inits a vector of random double numbers in <img class="formulaInl" alt="$[-1/2,1/2]$" src="form_26.png"/>. <br/></td></tr>
-<tr class="memitem:ga797e81f55e6379efabf4d98522d1ee9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga797e81f55e6379efabf4d98522d1ee9d"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga797e81f55e6379efabf4d98522d1ee9d">nfft_voronoi_weights_1d</a> (double *w, double *x, int M)</td></tr>
-<tr class="memdesc:ga797e81f55e6379efabf4d98522d1ee9d"><td class="mdescLeft"> </td><td class="mdescRight">Computes non periodic voronoi weights, assumes ordered nodes <img class="formulaInl" alt="$x_j$" src="form_27.png"/>. <br/></td></tr>
-<tr class="memitem:ga26a4ed487a23e99e01f111113be9f994"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga26a4ed487a23e99e01f111113be9f994">nfft_voronoi_weights_S2</a> (double *w, double *xi, int M)</td></tr>
-<tr class="memdesc:ga26a4ed487a23e99e01f111113be9f994"><td class="mdescLeft"> </td><td class="mdescRight">Computes voronoi weights for nodes on the sphere S^2. <a href="group__nfftutil.html#ga26a4ed487a23e99e01f111113be9f994"></a><br/></td></tr>
-<tr class="memitem:gac9b810183abafb668f8aa777c7985256"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac9b810183abafb668f8aa777c7985256"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gac9b810183abafb668f8aa777c7985256">nfft_modified_fejer</a> (int N, int kk)</td></tr>
-<tr class="memdesc:gac9b810183abafb668f8aa777c7985256"><td class="mdescLeft"> </td><td class="mdescRight">Computes the damping factor for the modified Fejer kernel, ie <img class="formulaInl" alt="$\frac{2}{N}\left(1-\frac{\left|2k+1\right|}{N}\right)$" src="form_28.png"/>. <br/></td></tr>
-<tr class="memitem:gab45a6cd3528d3716522a0cf184375aaf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gab45a6cd3528d3716522a0cf184375aaf"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gab45a6cd3528d3716522a0cf184375aaf">nfft_modified_jackson2</a> (int N, int kk)</td></tr>
-<tr class="memdesc:gab45a6cd3528d3716522a0cf184375aaf"><td class="mdescLeft"> </td><td class="mdescRight">Computes the damping factor for the modified Jackson kernel. <br/></td></tr>
-<tr class="memitem:ga126ec2282393435f0d795ac79db8654b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga126ec2282393435f0d795ac79db8654b"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga126ec2282393435f0d795ac79db8654b">nfft_modified_jackson4</a> (int N, int kk)</td></tr>
-<tr class="memdesc:ga126ec2282393435f0d795ac79db8654b"><td class="mdescLeft"> </td><td class="mdescRight">Computes the damping factor for the modified generalised Jackson kernel. <br/></td></tr>
-<tr class="memitem:gaa84cb34c6d368599fb2f997eadb184a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa84cb34c6d368599fb2f997eadb184a7"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gaa84cb34c6d368599fb2f997eadb184a7">nfft_modified_sobolev</a> (double mu, int kk)</td></tr>
-<tr class="memdesc:gaa84cb34c6d368599fb2f997eadb184a7"><td class="mdescLeft"> </td><td class="mdescRight">Computes the damping factor for the modified Sobolev kernel. <br/></td></tr>
-<tr class="memitem:gac6201bc2aa806bd25cb14c5f96d644e9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gac6201bc2aa806bd25cb14c5f96d644e9"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gac6201bc2aa806bd25cb14c5f96d644e9">nfft_modified_multiquadric</a> (double mu, double c, int kk)</td></tr>
-<tr class="memdesc:gac6201bc2aa806bd25cb14c5f96d644e9"><td class="mdescLeft"> </td><td class="mdescRight">Computes the damping factor for the modified multiquadric kernel. <br/></td></tr>
-<tr class="memitem:ga2decee6fe50d50797a82737ba82cf97a"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga2decee6fe50d50797a82737ba82cf97a">nfft_smbi</a> (const double x, const double alpha, const int nb, const int ize, double *b)</td></tr>
-<tr class="memdesc:ga2decee6fe50d50797a82737ba82cf97a"><td class="mdescLeft"> </td><td class="mdescRight">Calculates the modified bessel function <img class="formulaInl" alt="$I_{n+\alpha}(x)$" src="form_82.png"/>, possibly scaled by <img class="formulaInl" alt="$\mathrm{e}^{-x}$" src="form_83.png"/>, for real non-negative <img class="formulaInl" alt="$x,alpha$" src="form_84.png"/> with <img class="formulaInl" alt="$0 \le \alpha < 1$" src="form_85.png"/>, and <img class="formulaInl" [...]
-<tr class="memitem:ga574571239f7dcf7474736d35a6242bb1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga574571239f7dcf7474736d35a6242bb1"></a>
-double </td><td class="memItemRight" valign="bottom"><b>nfft_drand48</b> (void)</td></tr>
-<tr class="memitem:gaef3ecf626cc0aab6ccdc363fd43ef0d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaef3ecf626cc0aab6ccdc363fd43ef0d8"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfft_srand48</b> (long int seed)</td></tr>
-<tr class="memitem:gad93b94e3c7e9149f89819504c2b3c738"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#gad93b94e3c7e9149f89819504c2b3c738">nfft_sort_node_indices_radix_lsdf</a> (int n, int *keys0, int *keys1, int rhigh)</td></tr>
-<tr class="memdesc:gad93b94e3c7e9149f89819504c2b3c738"><td class="mdescLeft"> </td><td class="mdescRight">Radix sort for node indices. <a href="group__nfftutil.html#gad93b94e3c7e9149f89819504c2b3c738"></a><br/></td></tr>
-<tr class="memitem:ga60a5123a8026a06807e14502d7cedcd5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfftutil.html#ga60a5123a8026a06807e14502d7cedcd5">nfft_sort_node_indices_radix_msdf</a> (int n, int *keys0, int *keys1, int rhigh)</td></tr>
-<tr class="memdesc:ga60a5123a8026a06807e14502d7cedcd5"><td class="mdescLeft"> </td><td class="mdescRight">Radix sort for node indices. <a href="group__nfftutil.html#ga60a5123a8026a06807e14502d7cedcd5"></a><br/></td></tr>
-<tr class="memitem:gafb4a11b0dff72fc3b827b0fee0a14611"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafb4a11b0dff72fc3b827b0fee0a14611"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfft_get_num_threads</b> (void)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Header file for utility functions used by the nfft3 library. </p>
-
-<p>Definition in file <a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft3util_8h_source.html b/doc/api/html/nfft3util_8h_source.html
deleted file mode 100644
index db7cf01..0000000
--- a/doc/api/html/nfft3util_8h_source.html
+++ /dev/null
@@ -1,214 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft3util.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft3util.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="nfft3util_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nfft3util.h 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifndef __UTIL_H__</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#define __UTIL_H__</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include <fftw3.h></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> </div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor"></span><span class="keyword">extern</span> <span class="stringliteral">"C"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> {</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment">/*###########################################################################*/</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment">/*###########################################################################*/</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment">/*###########################################################################*/</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5"> 52</a></span> <span class="preprocessor">#define NFFT_SWAP_complex(x,y) {fftw_complex* NFFT_SWAP_temp__; \</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor"> NFFT_SWAP_temp__=(x); (x)=(y); (y)=NFFT_SWAP_temp__;}</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e"> 57</a></span> <span class="preprocessor">#define NFFT_SWAP_double(x,y) {double* NFFT_SWAP_temp__; NFFT_SWAP_temp__=(x); \</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor"> (x)=(y); (y)=NFFT_SWAP_temp__;}</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca"> 62</a></span> <span class="preprocessor">#define PI 3.141592653589793238462643383279502884197169399375105820974944592</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor"></span><span class="preprocessor">#define PI2 6.283185307179586476925286766559005768394338798750211641949889185</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="preprocessor"></span><span class="preprocessor">#define PI4 12.56637061435917295385057353311801153678867759750042328389977837</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"><a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3"> 68</a></span> <span class="preprocessor">#define NFFT_MAX(a,b) ((a)>(b)? (a) : (b))</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308"> 72</a></span> <span class="preprocessor">#define NFFT_MIN(a,b) ((a)<(b)? (a) : (b))</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment">/* ######################################################################### */</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="comment">/* ########## Window function related ###################################### */</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="comment">/* ######################################################################### */</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga89bd624abdfb13abc10c144a8ff949cd" title="To test the new one.">nfft_bspline_old</a>(<span class="keywordtype">int</span> k,<span class="keywordtype">double</span> x,<span class="keywordtype">double</span> *A);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga2fd48f1f700153c050d27691c4b2a6cc" title="Computes the B-spline , scratch is used for de Boor's scheme.">nfft_bspline</a>(<span class="keywordtype">int</span> k, <span class="keywordtype">double</span> x, <span class="keywordtype">double</span> *scratch);</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="comment">/* ######################################################################### */</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment">/* ########## Vector routines ############################################## */</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="comment">/* ######################################################################### */</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordtype">int</span> <a class="code" href="group__nfftutil.html#ga2752ca372ee2622f173a706e86e2b116" title="Computes integer .">nfft_prod_int</a>(<span class="keywordtype">int</span> *vec, <span class="keywordtype">int</span> d);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordtype">int</span> <a class="code" href="group__nfftutil.html#ga8adc6bf59ec10f16243030ee00ad4a40" title="Computes integer .">nfst_prod_minus_a_int</a>(<span class="keywordtype">int</span> *vec, <span class="keywordtype">int</span> a, <span class="keywordtype">int</span> d);</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">int</span> <a class="code" href="group__nfftutil.html#gad979f626cc8397e26d1bd78a7ba342cd" title="Computes .">nfft_plain_loop</a>(<span class="keywordtype">int</span> *idx,<span class="keywordtype">int</span> *N,<span class="keywordtype">int</span> d);</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#gad7bad7074a695341742f57526f8695eb" title="Computes double .">nfft_prod_real</a>(<span class="keywordtype">double</span> *vec,<span class="keywordtype">int</span> d);</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(fftw_complex* x, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>( <span class="keywordtype">double</span>* x, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(fftw_complex* x, <span class="keywordtype">double</span>* w, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>( <span class="keywordtype">double</span>* x, <span class="keywordtype">double</span>* w, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga68268fc9bfad5a7e7383098ac1715674" title="Computes the weighted inner/dot product .">nfft_dot_w_w2_complex</a>(fftw_complex* x, <span class="keywordtype">double</span>* w, <span class="keywordtype">double</span>* w2, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga9b59288597d159357fe86395e635a075" title="Computes the weighted inner/dot product .">nfft_dot_w2_complex</a>(fftw_complex* x, <span class="keywordtype">double</span>* w2, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(fftw_complex* x, fftw_complex* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>( <span class="keywordtype">double</span>* x, <span class="keywordtype">double</span>* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga33409df91e7ad5e1dca3beaa63e0ef25" title="Copies .">nfft_cp_a_complex</a>(fftw_complex* x, <span class="keywordtype">double</span> a, fftw_complex* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga41f20c605269e701b3305e49010e0759" title="Copies .">nfft_cp_a_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga630054cb816785d766959a867965f619" title="Copies .">nfft_cp_w_complex</a>(fftw_complex* x, <span class="keywordtype">double</span>* w, fftw_complex* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099" title="Copies .">nfft_cp_w_double</a>( <span class="keywordtype">double</span>* x, <span class="keywordtype">double</span>* w, <span class="keywordtype">double</span>* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5" title="Updates .">nfft_upd_axpy_complex</a>(fftw_complex* x, <span class="keywordtype">double</span> a, fftw_complex* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> </div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3" title="Updates .">nfft_upd_axpy_double</a>( <span class="keywordtype">double</span>* x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span>* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4" title="Updates .">nfft_upd_xpay_complex</a>(fftw_complex* x, <span class="keywordtype">double</span> a, fftw_complex* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> </div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064" title="Updates .">nfft_upd_xpay_double</a>( <span class="keywordtype">double</span>* x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span>* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga903a4b3ed369dcfe67b9379a238ed23d" title="Updates .">nfft_upd_axpby_complex</a>(fftw_complex* x, <span class="keywordtype">double</span> a, fftw_complex* y, <span class="keywordtype">double</span> b, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> </div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga75e403e92875b0b919a555f8cede0e8d" title="Updates .">nfft_upd_axpby_double</a>( <span class="keywordtype">double</span>* x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span>* y, <span class="keywordtype">double</span> b, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gad8e10773e59818c88a8ea2cb560b936e" title="Updates .">nfft_upd_xpawy_complex</a>(fftw_complex* x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span>* w, fftw_complex* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> </div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0" title="Updates .">nfft_upd_xpawy_double</a>( <span class="keywordtype">double</span>* x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span>* w, <span class="keywordtype">double</span>* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> </div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga693919963b51cf396311b15660e04cd8" title="Updates .">nfft_upd_axpwy_complex</a>(fftw_complex* x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span>* w, fftw_complex* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> </div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gaf6777c4b8aa9f575f1600c51e8ae343a" title="Updates .">nfft_upd_axpwy_double</a>( <span class="keywordtype">double</span>* x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span>* w, <span class="keywordtype">double</span>* y, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770" title="Swaps each half over N[d]/2.">nfft_fftshift_complex</a>(fftw_complex *x, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span>* N);</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> </div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gaa8e0581d802c4b7bb153682a4c156409" title="Prints a vector of integer numbers.">nfft_vpr_int</a>(<span class="keywordtype">int</span> *x, <span class="keywordtype">int</span> n, <span class="keywordtype">char</span> *text);</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">int</span> n, <span class="keyword">const</span> <span class="keywordtype">char</span> *text);</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(fftw_complex *x, <span class="keywordtype">int</span> n, <span class="keyword">const</span> <span class="keywordtype">char</span> *text);</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> </div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(fftw_complex *x, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> </div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="comment">/* ######################################################################### */</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="comment">/* ########## Helpers for inverse transforms ############################### */</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="comment">/* ######################################################################### */</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga797e81f55e6379efabf4d98522d1ee9d" title="Computes non periodic voronoi weights, assumes ordered nodes .">nfft_voronoi_weights_1d</a>(<span class="keywordtype">double</span> *w, <span class="keywordtype">double</span> *x, <span class="keywordtype">int</span> M);</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga26a4ed487a23e99e01f111113be9f994" title="Computes voronoi weights for nodes on the sphere S^2.">nfft_voronoi_weights_S2</a>(<span class="keywordtype">double</span> *w, <span class="keywordtype">double</span> *xi, <span class="keywordtype">int</span> M);</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> </div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#gac9b810183abafb668f8aa777c7985256" title="Computes the damping factor for the modified Fejer kernel, ie .">nfft_modified_fejer</a>(<span class="keywordtype">int</span> N,<span class="keywordtype">int</span> kk);</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#gab45a6cd3528d3716522a0cf184375aaf" title="Computes the damping factor for the modified Jackson kernel.">nfft_modified_jackson2</a>(<span class="keywordtype">int</span> N,<span class="keywordtype">int</span> kk);</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> </div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga126ec2282393435f0d795ac79db8654b" title="Computes the damping factor for the modified generalised Jackson kernel.">nfft_modified_jackson4</a>(<span class="keywordtype">int</span> N,<span class="keywordtype">int</span> kk);</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> </div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#gaa84cb34c6d368599fb2f997eadb184a7" title="Computes the damping factor for the modified Sobolev kernel.">nfft_modified_sobolev</a>(<span class="keywordtype">double</span> mu,<span class="keywordtype">int</span> kk);</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> </div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#gac6201bc2aa806bd25cb14c5f96d644e9" title="Computes the damping factor for the modified multiquadric kernel.">nfft_modified_multiquadric</a>(<span class="keywordtype">double</span> mu,<span class="keywordtype">double</span> c,<span class="keywordtype">int</span> kk);</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> </div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="keywordtype">int</span> <a class="code" href="group__nfftutil.html#ga2decee6fe50d50797a82737ba82cf97a" title="Calculates the modified bessel function , possibly scaled by , for real non-negative with ...">nfft_smbi</a>(<span class="keyword">const</span> <span class="keywordtype">double</span> x, <span class="keyword">const</span> <span class="keywordtype">double</span> alpha, <span class="keyword" [...]
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="keywordtype">double</span> *b);</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="keywordtype">double</span> nfft_drand48(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> </div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordtype">void</span> nfft_srand48(<span class="keywordtype">long</span> <span class="keywordtype">int</span> seed);</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> </div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gad93b94e3c7e9149f89819504c2b3c738" title="Radix sort for node indices.">nfft_sort_node_indices_radix_lsdf</a>(<span class="keywordtype">int</span> n, <span class="keywordtype">int</span> *keys0, <span class="keywordtype">int</span> *keys1, <span class="keywordtype">int</span> rhigh);</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> </div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga60a5123a8026a06807e14502d7cedcd5" title="Radix sort for node indices.">nfft_sort_node_indices_radix_msdf</a>(<span class="keywordtype">int</span> n, <span class="keywordtype">int</span> *keys0, <span class="keywordtype">int</span> *keys1, <span class="keywordtype">int</span> rhigh);</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="keywordtype">int</span> nfft_get_num_threads(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> </div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="preprocessor"></span><span class="keywordtype">int</span> nfft_get_omp_num_threads(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="preprocessor">#ifdef __cplusplus</span></div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="preprocessor"></span>} <span class="comment">/* extern "C" */</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="preprocessor">#endif </span><span class="comment">/* __cplusplus */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="preprocessor">#endif</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft_2simple__test_8c_source.html b/doc/api/html/nfft_2simple__test_8c_source.html
deleted file mode 100644
index 55a18ca..0000000
--- a/doc/api/html/nfft_2simple__test_8c_source.html
+++ /dev/null
@@ -1,196 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft/simple_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">static</span> <span class="keywordtype">void</span> simple_test_nfft_1d(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> {</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">double</span> t;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">int</span> N=14;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">int</span> M=19;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> ticks t0, t1;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> nfft_init_1d(&p,N,M);</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number o [...]
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">if</span>(p.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22 [...]
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total nu [...]
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> t0 = getticks();</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> nfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> t1 = getticks();</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples." [...]
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> printf(<span class="stringliteral">" took %e seconds.\n"</span>,t);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples." [...]
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> nfft_adjoint_direct(&p);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total nu [...]
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> nfft_adjoint(&p);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total nu [...]
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> }</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keyword">static</span> <span class="keywordtype">void</span> simple_test_nfft_2d(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> {</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordtype">int</span> K,N[2],n[2],M;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordtype">double</span> t;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> ticks t0, t1;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> N[0]=32; n[0]=64;</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> N[1]=14; n[1]=32;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> M=N[0]*N[1];</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> K=16;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> t0 = getticks();</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> nfft_init_guru(&p, 2, N, M, n, 7,</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> PRE_PHI_HUT| PRE_FULL_PSI| MALLOC_F_HAT| MALLOC_X| MALLOC_F |</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> FFTW_ESTIMATE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka [...]
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">if</span>(p.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22 [...]
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> t1 = getticks();</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,K,</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="stringliteral">"given Fourier coefficients, vector f_hat (first few entries)"</span>);</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> printf(<span class="stringliteral">" ... initialisation took %e seconds.\n"</span>,t);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> t0 = getticks();</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> nfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> t1 = getticks();</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,K,<span class="stringliteral">"ndft, vector f (first few entries)"</span>);</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> printf(<span class="stringliteral">" took %e seconds.\n"</span>,t);</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> t0 = getticks();</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> t1 = getticks();</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,K,<span class="stringliteral">"nfft, vector f (first few entries)"</span>);</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> printf(<span class="stringliteral">" took %e seconds.\n"</span>,t);</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> t0 = getticks();</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> nfft_adjoint_direct(&p);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> t1 = getticks();</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,K,<span class="stringliteral">"adjoint ndft, vector f_hat (first few entries)"</span>);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> printf(<span class="stringliteral">" took %e seconds.\n"</span>,t);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> t0 = getticks();</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> nfft_adjoint(&p);</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> t1 = getticks();</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,K,<span class="stringliteral">"adjoint nfft, vector f_hat (first few entries)"</span>);</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> printf(<span class="stringliteral">" took %e seconds.\n"</span>,t);</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> }</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> {</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> printf(<span class="stringliteral">"1) computing a one dimensional ndft, nfft and an adjoint nfft\n\n"</span>);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> simple_test_nfft_1d();</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> getc(stdin);</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> </div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> printf(<span class="stringliteral">"2) computing a two dimensional ndft, nfft and an adjoint nfft\n\n"</span>);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> simple_test_nfft_2d();</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> </div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft_2simple__test__threads_8c_source.html b/doc/api/html/nfft_2simple__test__threads_8c_source.html
deleted file mode 100644
index c601d7e..0000000
--- a/doc/api/html/nfft_2simple__test__threads_8c_source.html
+++ /dev/null
@@ -1,128 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test_threads.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft/simple_test_threads.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3198 2009-05-27 14:16:50Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span><span class="preprocessor">#include <omp.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="comment">//#include <time.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> {</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N = 1000000;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keyword">const</span> <span class="keywordtype">int</span> M = 1000000;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> ticks t0, t1;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">double</span> t;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> printf(<span class="stringliteral">"nthreads = %d\n"</span>, nfft_get_num_threads());</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment">/* init */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> fftw_init_threads();</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> nfft_init_1d(&p,N,M);</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment">/* pseudo random nodes */</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number o [...]
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment">/* precompute psi, that is, the entries of the matrix B */</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> t0 = getticks();</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">if</span>(p.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> t1 = getticks();</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> fprintf(stderr,<span class="stringliteral">"precompute elapsed time: %.3f seconds\n"</span>,t);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment">/* pseudo random Fourier coefficients */</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22 [...]
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment">/* transformation */</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> t0 = getticks();</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> t1 = getticks();</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> fprintf(stderr,<span class="stringliteral">"compute elapsed time: %.3f seconds\n"</span>,t);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> fflush(stderr);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="comment">// nfft_vpr_complex(p.f,p.M_total,"ndft, vector f");</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment">/* cleanup */</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> fftw_cleanup_threads();</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft_8c_source.html b/doc/api/html/nfft_8c_source.html
deleted file mode 100644
index abdcedd..0000000
--- a/doc/api/html/nfft_8c_source.html
+++ /dev/null
@@ -1,5727 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_7eb6ea3471917cbff788e1046aaeac44.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nfft.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="comment">/* Nonequispaced FFT */</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">/* Authors: D. Potts, S. Kunis 2002-2009, Jens Keiner 2009, Toni Volkmer 2012 */</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="comment">/* configure header */</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment">/* complex datatype (maybe) */</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#include<complex.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment">/* NFFT headers */</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor"></span><span class="preprocessor">#include <omp.h></span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor"></span><span class="preprocessor">#include <assert.h></span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_sort_nodes_for_better_cache_handle(<span class="keywordtype">int</span> d,</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keyword">const</span> <span class="keywordtype">int</span> *n, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> local_x_num, <span class="keyword">const</span> R *local_x, <span class="keywordtype">int</span> *ar_x)</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> {</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">int</span> u_j[d], i, j, help, rhigh;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">int</span> *ar_x_temp;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">int</span> nprod;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">for</span>(i = 0; i < local_x_num; i++) {</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> ar_x[2*i] = 0;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> ar_x[2*i+1] = i;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span>(j = 0; j < d; j++) {</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> help = (int) floor( n[j]*local_x[d*i+j] - m);</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> u_j[j] = (help%n[j]+n[j])%n[j];</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> ar_x[2*i] += u_j[j];</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">if</span> (j+1 < d)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> ar_x[2*i] *= n[j+1];</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> }</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> }</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">for</span> (j = 0, nprod = 1; j < d; j++)</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> nprod *= n[j];</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> rhigh = (int) ceil(log2(nprod)) - 1;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> ar_x_temp = (<span class="keywordtype">int</span> *) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*local_x_num*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <a class="code" href="group__nfftutil.html#gad93b94e3c7e9149f89819504c2b3c738" title="Radix sort for node indices.">nfft_sort_node_indices_radix_lsdf</a>(local_x_num, ar_x, ar_x_temp, rhigh);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (i = 1; i < local_x_num; i++)</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> assert(ar_x[2*(i-1)] <= ar_x[2*i]);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="preprocessor"></span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ar_x_temp);</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> }</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_sort_nodes(<span class="keyword">const</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> {</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> nfft_sort_nodes_for_better_cache_handle(ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>, ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>, ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a544 [...]
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="comment">/* some macros to initialize arrays before executing a transformation */</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="preprocessor">#define MACRO_ndft_init_result_trafo memset(f,0,ths->M_total*sizeof(C));</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndft_init_result_conjugated MACRO_ndft_init_result_trafo</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndft_init_result_adjoint memset(f_hat,0,ths->N_total*sizeof(C));</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndft_init_result_transposed MACRO_ndft_init_result_adjoint</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="comment">/* exponent of complex exponentials */</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="preprocessor">#define MACRO_ndft_sign_trafo K2PI*ths->x[j*ths->d+t]</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndft_sign_conjugated -K2PI*ths->x[j*ths->d+t]</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndft_sign_adjoint K2PI*ths->x[j*ths->d+t]</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndft_sign_transposed -K2PI*ths->x[j*ths->d+t]</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="preprocessor">#define MACRO_init_k_N_Omega_x(which_one) \</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="preprocessor"> for (t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor"> k[t] = -ths->N[t]/2; \</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor"> x[t] = MACRO_ndft_sign_ ## which_one; \</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="preprocessor"> Omega[t+1] = k[t]*x[t] + Omega[t]; \</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="preprocessor"> omega = Omega[ths->d]; \</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="preprocessor">} \</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_count_k_N_Omega \</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="preprocessor"> for (t = ths->d-1; (t >= 1) && (k[t] == ths->N[t]/2-1); t--) \</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="preprocessor"> k[t]-= ths->N[t]-1; \</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="preprocessor"> k[t]++; \</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="preprocessor"> for (t2 = t; t2 < ths->d; t2++) \</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="preprocessor"> Omega[t2+1] = k[t2]*x[t2] + Omega[t2]; \</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="preprocessor"> omega = Omega[ths->d]; \</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="preprocessor">#define MACRO_ndft_compute_trafo f[j] += f_hat[k_L]*CEXP(-II*omega);</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndft_compute_conjugated MACRO_ndft_compute_trafo</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndft_compute_adjoint f_hat[k_L] += f[j]*CEXP(+II*omega);</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndft_compute_transposed MACRO_ndft_compute_adjoint</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="preprocessor">#define MACRO_ndft(which_one) \</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="preprocessor">void nfft_ ## which_one ## _direct (nfft_plan *ths) \</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="preprocessor"> C *f_hat = (C*)ths->f_hat, *f = (C*)ths->f; \</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="preprocessor"> MACRO_ndft_init_result_ ## which_one \</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="preprocessor"> if (ths->d == 1) \</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="preprocessor"> </span><span class="comment">/* specialize for univariate case, rationale: faster */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor"> const int t = 0; \</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="preprocessor"> int j; \</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="preprocessor"> for (j = 0; j < ths->M_total; j++) \</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="preprocessor"> int k_L; \</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor"> for(k_L = 0; k_L < ths->N_total; k_L++) \</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="preprocessor"> R omega = (k_L - (ths->N_total/2)) * MACRO_ndft_sign_ ## which_one; \</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="preprocessor"> MACRO_ndft_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="preprocessor"> </span><span class="comment">/* multivariate case */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="preprocessor"> int j; \</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor"> for (j = 0; j < ths->M_total; j++) \</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="preprocessor"> R x[ths->d], omega, Omega[ths->d+1]; \</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor"> int t, t2, k_L, k[ths->d]; \</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="preprocessor"> Omega[0] = K(0.0); \</span></div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="preprocessor"> MACRO_init_k_N_Omega_x(which_one); \</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor"> for(k_L = 0; k_L < ths->N_total; k_L++) \</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="preprocessor"> MACRO_ndft_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="preprocessor"> MACRO_count_k_N_Omega; \</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="comment">// macro expanded for OpenMP parallelization</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="comment">//MACRO_ndft(trafo)</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="keywordtype">void</span> nfft_trafo_direct (<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> {</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> C *f_hat = (C*)ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, *f = (C*)ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>;</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> </div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> memset(f,0,ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> </div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a> == 1)</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> {</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="comment">/* specialize for univariate case, rationale: faster */</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(j)</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (j = 0; j < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> {</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="keywordtype">int</span> k_L;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="keywordflow">for</span>(k_L = 0; k_L < ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k_L++)</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> {</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> R omega = (k_L - ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>/2) * K2PI * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j];</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> f[j] += f_hat[k_L]*cexp(-( 1.0iF)*omega);</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> }</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> }</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> }</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> {</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="comment">/* multivariate case */</span></div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(j)</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (j = 0; j < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> {</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> R x[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], omega, Omega[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1];</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="keywordtype">int</span> t, t2, k_L, k[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> Omega[0] = ((R) 0.0);</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="keywordflow">for</span> (t = 0; t < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> {</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> k[t] = -ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2;</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> x[t] = K2PI*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t];</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> Omega[t+1] = k[t]*x[t] + Omega[t];</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> }</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> omega = Omega[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> </div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="keywordflow">for</span>(k_L = 0; k_L < ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k_L++)</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> {</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> f[j] += f_hat[k_L]*cexp(-( 1.0iF)*omega);</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> {</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordflow">for</span> (t = ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>-1; (t >= 1) && (k[t] == ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2-1); t--)</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> k[t]-= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]-1;</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> </div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> k[t]++;</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> </div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="keywordflow">for</span> (t2 = t; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> Omega[t2+1] = k[t2]*x[t2] + Omega[t2];</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> </div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> omega = Omega[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> }</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> }</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> }</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> }</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> }</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> </div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="comment">// macro expanded for OpenMP parallelization since parallel calculation</span></div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="comment">// requires outer loop over frequencies and inner loop over nodes.</span></div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="comment">//MACRO_ndft(adjoint)</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="keywordtype">void</span> nfft_adjoint_direct (<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> {</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> C *f_hat = (C*)ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, *f = (C*)ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>;</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> </div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> memset(f_hat,0,ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> </div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a> == 1)</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> {</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="comment">/* specialize for univariate case, rationale: faster */</span></div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> k_L;</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k_L)</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(k_L = 0; k_L < ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k_L++)</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> {</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="keywordflow">for</span> (j = 0; j < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> {</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> R omega = (k_L - (ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>/2)) * K2PI * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j];</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> f_hat[k_L] += f[j]*cexp(+( 1.0iF)*omega);</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> }</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> }</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="keywordflow">for</span> (j = 0; j < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> {</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="keywordtype">int</span> k_L;</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="keywordflow">for</span>(k_L = 0; k_L < ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k_L++)</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> {</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> R omega = (k_L - (ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>/2)) * K2PI * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j];</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> f_hat[k_L] += f[j]*cexp(+( 1.0iF)*omega);</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> }</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> }</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> {</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment">/* multivariate case */</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="keywordtype">int</span> j, k_L;</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel for default(shared) private(j, k_L)</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(k_L = 0; k_L < ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k_L++)</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> {</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="keywordtype">int</span> k[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], k_temp, t;</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> </div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> k_temp = k_L;</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> </div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="keywordflow">for</span> (t = ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>-1; t >= 0; t--)</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> {</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> k[t] = k_temp % ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t] - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2;</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> k_temp /= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> }</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> </div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="keywordflow">for</span> (j = 0; j < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> {</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> R omega = 0.0;</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="keywordflow">for</span> (t = 0; t < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> omega += k[t] * K2PI * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t];</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> f_hat[k_L] += f[j]*cexp(+( 1.0iF)*omega);</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> }</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> }</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (j = 0; j < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> {</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> R x[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], omega, Omega[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1];</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="keywordtype">int</span> t, t2, k[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> Omega[0] = ((R) 0.0);</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="keywordflow">for</span> (t = 0; t < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> {</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> k[t] = -ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2;</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> x[t] = K2PI * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t];</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> Omega[t+1] = k[t]*x[t] + Omega[t];</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> }</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> omega = Omega[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="keywordflow">for</span>(k_L = 0; k_L < ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k_L++)</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> {</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> f_hat[k_L] += f[j]*cexp(+( 1.0iF)*omega);</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> </div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="keywordflow">for</span> (t = ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>-1; (t >= 1) && (k[t] == ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2-1); t--)</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> k[t]-= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]-1;</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> </div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> k[t]++;</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> </div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="keywordflow">for</span> (t2 = t; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> Omega[t2+1] = k[t2]*x[t2] + Omega[t2];</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> </div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> omega = Omega[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> }</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> }</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> }</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> </div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> nfft_uo(<span class="keyword">const</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> *ths, <span class="keyword">const</span> <span class="keywordtype">int</span> j, <span class="keywordtype">int</span> *up, <span class="keywordtype">int</span> *op,</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="keyword">const</span> <span class="keywordtype">int</span> act_dim)</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> {</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="keyword">const</span> R xj = ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j * ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a> + act_dim];</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="keywordtype">int</span> c = LRINT(FLOOR(xj * ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[act_dim]));</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> </div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> (*up) = c - (ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>);</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> (*op) = c + 1 + (ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>);</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> }</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> </div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> nfft_uo2(<span class="keywordtype">int</span> *u, <span class="keywordtype">int</span> *o, <span class="keyword">const</span> R x, <span class="keyword">const</span> <span class="keywordtype">int</span> n, <span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> {</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="keywordtype">int</span> c = LRINT(FLOOR(x * n));</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> </div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> *u = (c - m + n) % n;</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> *o = (c + 1 + m + n) % n;</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> }</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> </div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="preprocessor">#define MACRO_nfft_D_compute_A \</span></div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="preprocessor"> g_hat[k_plain[ths->d]] = f_hat[ks_plain[ths->d]] * c_phi_inv_k[ths->d]; \</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="preprocessor">#define MACRO_nfft_D_compute_T \</span></div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="preprocessor"> f_hat[ks_plain[ths->d]] = g_hat[k_plain[ths->d]] * c_phi_inv_k[ths->d]; \</span></div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="preprocessor">#define MACRO_nfft_D_init_result_A memset(g_hat,0,ths->n_total*sizeof(C));</span></div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="preprocessor">#define MACRO_nfft_D_init_result_T memset(f_hat,0,ths->N_total*sizeof(C));</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="preprocessor">#define MACRO_with_PRE_PHI_HUT * ths->c_phi_inv[t2][ks[t2]];</span></div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="preprocessor">#define MACRO_without_PRE_PHI_HUT / (PHI_HUT(ks[t2]-(ths->N[t2]/2),t2));</span></div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="preprocessor">#define MACRO_init_k_ks \</span></div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor"> for (t = ths->d-1; 0 <= t; t--) \</span></div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="preprocessor"> kp[t] = k[t] = 0; \</span></div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="preprocessor"> ks[t] = ths->N[t]/2; \</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="preprocessor"> t++; \</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="preprocessor">#define MACRO_update_c_phi_inv_k(which_one) \</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="preprocessor"> for (t2 = t; t2 < ths->d; t2++) \</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="preprocessor"> c_phi_inv_k[t2+1] = c_phi_inv_k[t2] MACRO_ ##which_one; \</span></div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="preprocessor"> ks_plain[t2+1] = ks_plain[t2]*ths->N[t2] + ks[t2]; \</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor"> k_plain[t2+1] = k_plain[t2]*ths->n[t2] + k[t2]; \</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="preprocessor">#define MACRO_count_k_ks \</span></div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="preprocessor"> for (t = ths->d-1; (t > 0) && (kp[t] == ths->N[t]-1); t--) \</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor"> kp[t] = k[t] = 0; \</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor"> ks[t]= ths->N[t]/2; \</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="preprocessor"> kp[t]++; k[t]++; ks[t]++; \</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="preprocessor"> if(kp[t] == ths->N[t]/2) \</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="preprocessor"> k[t] = ths->n[t] - ths->N[t]/2; \</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="preprocessor"> ks[t] = 0; \</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor">} \</span></div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="preprocessor">#define MACRO_nfft_D(which_one) \</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="preprocessor">static inline void nfft_D_serial_ ## which_one (nfft_plan *ths) \</span></div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="preprocessor"> C *f_hat, *g_hat; \</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="preprocessor"> R c_phi_inv_k[ths->d+1]; \</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="preprocessor"> int t, t2; \</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="preprocessor"> int k_L; \</span></div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="preprocessor"> int kp[ths->d]; \</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="preprocessor"> int k[ths->d]; \</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor"> int ks[ths->d]; \</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor"> int k_plain[ths->d+1]; \</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor"> int ks_plain[ths->d+1]; \</span></div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor"> f_hat = (C*)ths->f_hat; g_hat = (C*)ths->g_hat; \</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="preprocessor"> MACRO_nfft_D_init_result_ ## which_one; \</span></div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="preprocessor"> c_phi_inv_k[0] = K(1.0); \</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor"> k_plain[0] = 0; \</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="preprocessor"> ks_plain[0] = 0; \</span></div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="preprocessor"> if (ths->nfft_flags & PRE_PHI_HUT) \</span></div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="preprocessor"> MACRO_init_k_ks; \</span></div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="preprocessor"> for (k_L = 0; k_L < ths->N_total; k_L++) \</span></div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="preprocessor"> MACRO_update_c_phi_inv_k(with_PRE_PHI_HUT); \</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="preprocessor"> MACRO_nfft_D_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor"> MACRO_count_k_ks; \</span></div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="preprocessor"> } </span><span class="comment">/* for(k_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="preprocessor"> } </span><span class="comment">/* if(PRE_PHI_HUT) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="preprocessor"> MACRO_init_k_ks; \</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="preprocessor"> for (k_L = 0; k_L < ths->N_total; k_L++) \</span></div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="preprocessor"> MACRO_update_c_phi_inv_k(without_PRE_PHI_HUT); \</span></div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="preprocessor"> MACRO_nfft_D_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor"> MACRO_count_k_ks; \</span></div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="preprocessor"> } </span><span class="comment">/* for(k_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor"> } </span><span class="comment">/* else(PRE_PHI_HUT) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="preprocessor">} </span><span class="comment">/* nfft_D */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> nfft_D_openmp_A(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> {</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> C *f_hat, *g_hat; </div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="keywordtype">int</span> k_L; </div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> f_hat = (C*)ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>; g_hat = (C*)ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>;</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> memset(g_hat,0,ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> </div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> {</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k_L)</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k_L = 0; k_L < ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k_L++)</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> {</div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="keywordtype">int</span> kp[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">//0..N-1</span></div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="keywordtype">int</span> k[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="keywordtype">int</span> ks[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> R c_phi_inv_k_val = K(1.0);</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="keywordtype">int</span> k_plain_val = 0;</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="keywordtype">int</span> ks_plain_val = 0;</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="keywordtype">int</span> k_temp = k_L;</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> </div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="keywordflow">for</span> (t = ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>-1; t >= 0; t--)</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> {</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> kp[t] = k_temp % ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="keywordflow">if</span> (kp[t] >= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2)</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> k[t] = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t] - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t] + kp[t];</div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> k[t] = kp[t];</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> ks[t] = (kp[t] + ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2) % ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> k_temp /= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> }</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> </div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="keywordflow">for</span> (t = 0; t < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> {</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> c_phi_inv_k_val *= ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[t][ks[t]];</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> ks_plain_val = ks_plain_val*ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t] + ks[t];</div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> k_plain_val = k_plain_val*ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t] + k[t];</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> }</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> </div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> g_hat[k_plain_val] = f_hat[ks_plain_val] * c_phi_inv_k_val;</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> } <span class="comment">/* for(k_L) */</span></div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> } <span class="comment">/* if(PRE_PHI_HUT) */</span></div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> {</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k_L)</span></div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k_L = 0; k_L < ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k_L++)</div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> {</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="keywordtype">int</span> kp[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">//0..N-1</span></div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="keywordtype">int</span> k[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="keywordtype">int</span> ks[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> R c_phi_inv_k_val = K(1.0);</div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="keywordtype">int</span> k_plain_val = 0;</div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="keywordtype">int</span> ks_plain_val = 0;</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="keywordtype">int</span> k_temp = k_L;</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> </div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="keywordflow">for</span> (t = ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>-1; t >= 0; t--)</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> {</div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> kp[t] = k_temp % ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="keywordflow">if</span> (kp[t] >= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2)</div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> k[t] = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t] - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t] + kp[t];</div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> k[t] = kp[t];</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> ks[t] = (kp[t] + ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2) % ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> k_temp /= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> }</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> </div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="keywordflow">for</span> (t = 0; t < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> {</div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> c_phi_inv_k_val /= (PHI_HUT(ks[t]-(ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2),t));</div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> ks_plain_val = ks_plain_val*ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t] + ks[t];</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> k_plain_val = k_plain_val*ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t] + k[t];</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> }</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> </div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> g_hat[k_plain_val] = f_hat[ks_plain_val] * c_phi_inv_k_val;</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> } <span class="comment">/* for(k_L) */</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> } <span class="comment">/* else(PRE_PHI_HUT) */</span></div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> }</div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="preprocessor">#ifndef _OPENMP</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="preprocessor"></span>MACRO_nfft_D(A)</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_D_A(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> {</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor"></span> nfft_D_openmp_A(ths);</div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="preprocessor"></span> nfft_D_serial_A(ths);</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> </div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> nfft_D_openmp_T(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> {</div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> C *f_hat, *g_hat; </div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="keywordtype">int</span> k_L; </div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> f_hat = (C*)ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>; g_hat = (C*)ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>;</div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> memset(f_hat,0,ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> </div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> {</div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k_L)</span></div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k_L = 0; k_L < ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k_L++)</div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> {</div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <span class="keywordtype">int</span> kp[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">//0..N-1</span></div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="keywordtype">int</span> k[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="keywordtype">int</span> ks[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> R c_phi_inv_k_val = K(1.0);</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="keywordtype">int</span> k_plain_val = 0;</div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="keywordtype">int</span> ks_plain_val = 0;</div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="keywordtype">int</span> k_temp = k_L;</div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> </div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="keywordflow">for</span> (t = ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>-1; t >= 0; t--)</div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> {</div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> kp[t] = k_temp % ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="keywordflow">if</span> (kp[t] >= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2)</div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> k[t] = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t] - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t] + kp[t];</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> k[t] = kp[t];</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> ks[t] = (kp[t] + ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2) % ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> k_temp /= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> }</div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> </div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> <span class="keywordflow">for</span> (t = 0; t < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> {</div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> c_phi_inv_k_val *= ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[t][ks[t]];</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> ks_plain_val = ks_plain_val*ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t] + ks[t];</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> k_plain_val = k_plain_val*ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t] + k[t];</div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> }</div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> </div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> f_hat[ks_plain_val] = g_hat[k_plain_val] * c_phi_inv_k_val;</div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> } <span class="comment">/* for(k_L) */</span></div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> } <span class="comment">/* if(PRE_PHI_HUT) */</span></div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> {</div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k_L)</span></div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k_L = 0; k_L < ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; k_L++)</div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> {</div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="keywordtype">int</span> kp[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">//0..N-1</span></div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="keywordtype">int</span> k[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> <span class="keywordtype">int</span> ks[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> R c_phi_inv_k_val = K(1.0);</div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <span class="keywordtype">int</span> k_plain_val = 0;</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="keywordtype">int</span> ks_plain_val = 0;</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="keywordtype">int</span> k_temp = k_L;</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> </div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="keywordflow">for</span> (t = ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>-1; t >= 0; t--)</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> {</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> kp[t] = k_temp % ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="keywordflow">if</span> (kp[t] >= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2)</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> k[t] = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t] - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t] + kp[t];</div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> k[t] = kp[t];</div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> ks[t] = (kp[t] + ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2) % ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> k_temp /= ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t];</div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> }</div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> </div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <span class="keywordflow">for</span> (t = 0; t < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> {</div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> c_phi_inv_k_val /= (PHI_HUT(ks[t]-(ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]/2),t));</div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> ks_plain_val = ks_plain_val*ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t] + ks[t];</div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> k_plain_val = k_plain_val*ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t] + k[t];</div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> }</div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> </div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> f_hat[ks_plain_val] = g_hat[k_plain_val] * c_phi_inv_k_val;</div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> } <span class="comment">/* for(k_L) */</span></div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> } <span class="comment">/* else(PRE_PHI_HUT) */</span></div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> }</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="preprocessor">#ifndef _OPENMP</span></div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="preprocessor"></span>MACRO_nfft_D(T)</div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_D_T(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> {</div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <span class="preprocessor"></span> nfft_D_openmp_T(ths);</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> <span class="preprocessor"></span> nfft_D_serial_T(ths);</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> </div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> <span class="preprocessor">#define MACRO_nfft_B_init_result_A memset(f,0,ths->M_total*sizeof(C));</span></div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_B_init_result_T memset(g,0,ths->n_total*sizeof(C));</span></div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> <span class="preprocessor">#define MACRO_nfft_B_PRE_FULL_PSI_compute_A \</span></div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> <span class="preprocessor"> (*fj) += ths->psi[ix] * g[ths->psi_index_g[ix]]; \</span></div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> <span class="preprocessor">#define MACRO_nfft_B_PRE_FULL_PSI_compute_T \</span></div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="preprocessor"> g[ths->psi_index_g[ix]] += ths->psi[ix] * (*fj); \</span></div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> <span class="preprocessor">#define MACRO_nfft_B_compute_A \</span></div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="preprocessor"> (*fj) += phi_prod[ths->d] * g[ll_plain[ths->d]]; \</span></div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> <span class="preprocessor">#define MACRO_nfft_B_compute_T \</span></div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="preprocessor"> g[ll_plain[ths->d]] += phi_prod[ths->d] * (*fj); \</span></div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> <span class="preprocessor">#define MACRO_with_FG_PSI fg_psi[t2][lj[t2]]</span></div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> <span class="preprocessor">#define MACRO_with_PRE_PSI ths->psi[(j*ths->d+t2) * (2*ths->m+2)+lj[t2]]</span></div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> <span class="preprocessor">#define MACRO_without_PRE_PSI PHI(ths->x[j*ths->d+t2] \</span></div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> <span class="preprocessor"> - ((R)l[t2])/((R)ths->n[t2]), t2)</span></div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> <span class="preprocessor">#define MACRO_init_uo_l_lj_t \</span></div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> <span class="preprocessor"> for (t = ths->d-1; t >= 0; t--) \</span></div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> <span class="preprocessor"> nfft_uo(ths,j,&u[t],&o[t],t); \</span></div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> <span class="preprocessor"> l[t] = u[t]; \</span></div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> <span class="preprocessor"> lj[t] = 0; \</span></div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> <span class="preprocessor"> } </span><span class="comment">/* for(t) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> <span class="preprocessor"> t++; \</span></div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> <span class="preprocessor">#define MACRO_update_phi_prod_ll_plain(which_one) { \</span></div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> <span class="preprocessor"> for(t2=t; t2<ths->d; t2++) \</span></div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> <span class="preprocessor"> phi_prod[t2+1] = phi_prod[t2]* MACRO_ ## which_one; \</span></div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> <span class="preprocessor"> ll_plain[t2+1] = ll_plain[t2]*ths->n[t2] +(l[t2]+ths->n[t2])%ths->n[t2];\</span></div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> <span class="preprocessor"> } </span><span class="comment">/* for(t2) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> <span class="preprocessor">#define MACRO_count_uo_l_lj_t { \</span></div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> <span class="preprocessor"> for(t = ths->d-1; (t > 0) && (l[t] == o[t]); t--) \</span></div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> <span class="preprocessor"> l[t] = u[t]; \</span></div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> <span class="preprocessor"> lj[t] = 0; \</span></div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> <span class="preprocessor"> } </span><span class="comment">/* for(t) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> <span class="preprocessor"> l[t]++; \</span></div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> <span class="preprocessor"> lj[t]++; \</span></div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> <span class="preprocessor">#define MACRO_nfft_B(which_one) \</span></div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="preprocessor">static inline void nfft_B_serial_ ## which_one (nfft_plan *ths) \</span></div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="preprocessor"> int lprod; </span><span class="comment">/* 'regular bandwidth' of matrix B */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> <span class="preprocessor"> int u[ths->d], o[ths->d]; </span><span class="comment">/* multi band with respect to x_j */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> <span class="preprocessor"> int t, t2; </span><span class="comment">/* index dimensions */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> <span class="preprocessor"> int j; </span><span class="comment">/* index nodes */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> <span class="preprocessor"> int l_L, ix; </span><span class="comment">/* index one row of B */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> <span class="preprocessor"> int l[ths->d]; </span><span class="comment">/* multi index u<=l<=o */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> <span class="preprocessor"> int lj[ths->d]; </span><span class="comment">/* multi index 0<=lj<u+o+1 */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> <span class="preprocessor"> int ll_plain[ths->d+1]; </span><span class="comment">/* postfix plain index in g */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="preprocessor"> R phi_prod[ths->d+1]; </span><span class="comment">/* postfix product of PHI */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> <span class="preprocessor"> C *f, *g; </span><span class="comment">/* local copy */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> <span class="preprocessor"> C *fj; </span><span class="comment">/* local copy */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="preprocessor"> R y[ths->d]; \</span></div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="preprocessor"> R fg_psi[ths->d][2*ths->m+2]; \</span></div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> <span class="preprocessor"> R fg_exp_l[ths->d][2*ths->m+2]; \</span></div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <span class="preprocessor"> int l_fg,lj_fg; \</span></div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> <span class="preprocessor"> R tmpEXP1, tmpEXP2, tmpEXP2sq, tmp1, tmp2, tmp3; \</span></div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> <span class="preprocessor"> R ip_w; \</span></div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> <span class="preprocessor"> int ip_u; \</span></div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> <span class="preprocessor"> int ip_s = ths->K/(ths->m+2); \</span></div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> <span class="preprocessor"> f = (C*)ths->f; g = (C*)ths->g; \</span></div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> <span class="preprocessor"> MACRO_nfft_B_init_result_ ## which_one; \</span></div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> <span class="preprocessor"> if (ths->nfft_flags & PRE_FULL_PSI) \</span></div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <span class="preprocessor"> for (ix = 0, j = 0, fj = f; j < ths->M_total; j++, fj++) \</span></div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> <span class="preprocessor"> for (l_L = 0; l_L < ths->psi_index_f[j]; l_L++, ix++) \</span></div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> <span class="preprocessor"> MACRO_nfft_B_PRE_FULL_PSI_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> <span class="preprocessor"> phi_prod[0] = K(1.0); \</span></div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> <span class="preprocessor"> ll_plain[0] = 0; \</span></div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> <span class="preprocessor"> for (t = 0, lprod = 1; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> <span class="preprocessor"> lprod *= (2*ths->m+2); \</span></div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> <span class="preprocessor"> if (ths->nfft_flags & PRE_PSI) \</span></div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> <span class="preprocessor"> for (j = 0, fj = f; j < ths->M_total; j++, fj++) \</span></div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> <span class="preprocessor"> MACRO_init_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> <span class="preprocessor"> for (l_L = 0; l_L < lprod; l_L++) \</span></div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> <span class="preprocessor"> MACRO_update_phi_prod_ll_plain(with_PRE_PSI); \</span></div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> <span class="preprocessor"> MACRO_nfft_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> <span class="preprocessor"> MACRO_count_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> <span class="preprocessor"> } </span><span class="comment">/* for(l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> <span class="preprocessor"> } </span><span class="comment">/* if(PRE_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="preprocessor"> if (ths->nfft_flags & PRE_FG_PSI) \</span></div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> <span class="preprocessor"> for(t2 = 0; t2 < ths->d; t2++) \</span></div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> <span class="preprocessor"> tmpEXP2 = EXP(K(-1.0)/ths->b[t2]); \</span></div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> <span class="preprocessor"> tmpEXP2sq = tmpEXP2*tmpEXP2; \</span></div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> <span class="preprocessor"> tmp2 = K(1.0); \</span></div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> <span class="preprocessor"> tmp3 = K(1.0); \</span></div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> <span class="preprocessor"> fg_exp_l[t2][0] = K(1.0); \</span></div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> <span class="preprocessor"> for(lj_fg = 1; lj_fg <= (2*ths->m+2); lj_fg++) \</span></div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> <span class="preprocessor"> tmp3 = tmp2*tmpEXP2; \</span></div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> <span class="preprocessor"> tmp2 *= tmpEXP2sq; \</span></div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> <span class="preprocessor"> fg_exp_l[t2][lj_fg] = fg_exp_l[t2][lj_fg-1]*tmp3; \</span></div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> <span class="preprocessor"> for (j = 0, fj = f; j < ths->M_total; j++, fj++) \</span></div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> <span class="preprocessor"> MACRO_init_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> <span class="preprocessor"> for (t2 = 0; t2 < ths->d; t2++) \</span></div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> <span class="preprocessor"> fg_psi[t2][0] = ths->psi[2*(j*ths->d+t2)]; \</span></div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="preprocessor"> tmpEXP1 = ths->psi[2*(j*ths->d+t2)+1]; \</span></div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> <span class="preprocessor"> tmp1 = K(1.0); \</span></div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> <span class="preprocessor"> for (l_fg = u[t2]+1, lj_fg = 1; l_fg <= o[t2]; l_fg++, lj_fg++) \</span></div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="preprocessor"> tmp1 *= tmpEXP1; \</span></div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> <span class="preprocessor"> fg_psi[t2][lj_fg] = fg_psi[t2][0]*tmp1*fg_exp_l[t2][lj_fg]; \</span></div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> <span class="preprocessor"> for (l_L= 0; l_L < lprod; l_L++) \</span></div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> <span class="preprocessor"> MACRO_update_phi_prod_ll_plain(with_FG_PSI); \</span></div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> <span class="preprocessor"> MACRO_nfft_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> <span class="preprocessor"> MACRO_count_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> <span class="preprocessor"> } </span><span class="comment">/* for(l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> <span class="preprocessor"> } </span><span class="comment">/* if(PRE_FG_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> <span class="preprocessor"> if (ths->nfft_flags & FG_PSI) \</span></div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <span class="preprocessor"> for (t2 = 0; t2 < ths->d; t2++) \</span></div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> <span class="preprocessor"> tmpEXP2 = EXP(K(-1.0)/ths->b[t2]); \</span></div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> <span class="preprocessor"> tmpEXP2sq = tmpEXP2*tmpEXP2; \</span></div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> <span class="preprocessor"> tmp2 = K(1.0); \</span></div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> <span class="preprocessor"> tmp3 = K(1.0); \</span></div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> <span class="preprocessor"> fg_exp_l[t2][0] = K(1.0); \</span></div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> <span class="preprocessor"> for (lj_fg = 1; lj_fg <= (2*ths->m+2); lj_fg++) \</span></div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> <span class="preprocessor"> tmp3 = tmp2*tmpEXP2; \</span></div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> <span class="preprocessor"> tmp2 *= tmpEXP2sq; \</span></div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> <span class="preprocessor"> fg_exp_l[t2][lj_fg] = fg_exp_l[t2][lj_fg-1]*tmp3; \</span></div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> <span class="preprocessor"> for (j = 0, fj = f; j < ths->M_total; j++, fj++) \</span></div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> <span class="preprocessor"> MACRO_init_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> <span class="preprocessor"> for (t2 = 0; t2 < ths->d; t2++) \</span></div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> <span class="preprocessor"> fg_psi[t2][0] = (PHI((ths->x[j*ths->d+t2]-((R)u[t2])/ths->n[t2]),t2));\</span></div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> <span class="preprocessor"> tmpEXP1 = EXP(K(2.0)*(ths->n[t2]*ths->x[j*ths->d+t2] - u[t2]) \</span></div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> <span class="preprocessor"> /ths->b[t2]); \</span></div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> <span class="preprocessor"> tmp1 = K(1.0); \</span></div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> <span class="preprocessor"> for (l_fg = u[t2] + 1, lj_fg = 1; l_fg <= o[t2]; l_fg++, lj_fg++) \</span></div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="preprocessor"> tmp1 *= tmpEXP1; \</span></div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> <span class="preprocessor"> fg_psi[t2][lj_fg] = fg_psi[t2][0]*tmp1*fg_exp_l[t2][lj_fg]; \</span></div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> <span class="preprocessor"> for (l_L = 0; l_L < lprod; l_L++) \</span></div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> <span class="preprocessor"> MACRO_update_phi_prod_ll_plain(with_FG_PSI); \</span></div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> <span class="preprocessor"> MACRO_nfft_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> <span class="preprocessor"> MACRO_count_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="preprocessor"> } </span><span class="comment">/* for(l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> <span class="preprocessor"> } </span><span class="comment">/* if(FG_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> <span class="preprocessor"> if (ths->nfft_flags & PRE_LIN_PSI) \</span></div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> <span class="preprocessor"> for (j = 0, fj=f; j<ths->M_total; j++, fj++) \</span></div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> <span class="preprocessor"> MACRO_init_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> <span class="preprocessor"> for (t2 = 0; t2 < ths->d; t2++) \</span></div>
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> <span class="preprocessor"> y[t2] = ((ths->n[t2]*ths->x[j*ths->d+t2]-(R)u[t2]) \</span></div>
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> <span class="preprocessor"> * ((R)ths->K))/(ths->m+2); \</span></div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> <span class="preprocessor"> ip_u = LRINT(FLOOR(y[t2])); \</span></div>
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> <span class="preprocessor"> ip_w = y[t2]-ip_u; \</span></div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> <span class="preprocessor"> for (l_fg = u[t2], lj_fg = 0; l_fg <= o[t2]; l_fg++, lj_fg++) \</span></div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> <span class="preprocessor"> fg_psi[t2][lj_fg] = ths->psi[(ths->K+1)*t2 + ABS(ip_u-lj_fg*ip_s)] \</span></div>
-<div class="line"><a name="l00928"></a><span class="lineno"> 928</span> <span class="preprocessor"> * (1-ip_w) + ths->psi[(ths->K+1)*t2 + ABS(ip_u-lj_fg*ip_s+1)] \</span></div>
-<div class="line"><a name="l00929"></a><span class="lineno"> 929</span> <span class="preprocessor"> * (ip_w); \</span></div>
-<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> <span class="preprocessor"> for (l_L = 0; l_L < lprod; l_L++) \</span></div>
-<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> <span class="preprocessor"> MACRO_update_phi_prod_ll_plain(with_FG_PSI); \</span></div>
-<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> <span class="preprocessor"> MACRO_nfft_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> <span class="preprocessor"> MACRO_count_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> <span class="preprocessor"> } </span><span class="comment">/* for(l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> <span class="preprocessor"> } </span><span class="comment">/* if(PRE_LIN_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> <span class="preprocessor"> </span><span class="comment">/* no precomputed psi at all */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> <span class="preprocessor"> for (j = 0, fj = f; j < ths->M_total; j++, fj++) \</span></div>
-<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="preprocessor"> MACRO_init_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> <span class="preprocessor"> for (l_L = 0; l_L < lprod; l_L++) \</span></div>
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="preprocessor"> MACRO_update_phi_prod_ll_plain(without_PRE_PSI); \</span></div>
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> <span class="preprocessor"> MACRO_nfft_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> <span class="preprocessor"> MACRO_count_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> <span class="preprocessor"> } </span><span class="comment">/* for(l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> <span class="preprocessor">} </span><span class="comment">/* nfft_B */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> <span class="preprocessor"></span><span class="preprocessor">#ifndef _OPENMP</span></div>
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> <span class="preprocessor"></span>MACRO_nfft_B(A)</div>
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> nfft_B_openmp_A (<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> {</div>
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> <span class="keywordtype">int</span> lprod; <span class="comment">/* 'regular bandwidth' of matrix B */</span></div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> </div>
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> memset(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,0,ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> </div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> <span class="keywordflow">for</span> (k = 0, lprod = 1; k < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; k++)</div>
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> lprod *= (2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2);</div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> </div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> {</div>
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> {</div>
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = K(0.0);</div>
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> <span class="keywordflow">for</span> (l = 0; l < lprod; l++)</div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[j*lprod+l] * ths-><a class="code" href="structnfft__p [...]
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> }</div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> }</div>
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> </div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> {</div>
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> {</div>
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi band with respect to x_j */</span></div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> <span class="keywordtype">int</span> t, t2; <span class="comment">/* index dimensions */</span></div>
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> <span class="keywordtype">int</span> l_L; <span class="comment">/* index one row of B */</span></div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index u<=l<=o */</span></div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix plain index in g */</span></div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix product of PHI */</span></div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> </div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> phi_prod[0] = K(1.0);</div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> ll_plain[0] = 0;</div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> </div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> </div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> <span class="keywordflow">for</span> (l_L = 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> {</div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> MACRO_update_phi_prod_ll_plain(with_PRE_PSI);</div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> </div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>] * ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled v [...]
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> </div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> } <span class="comment">/* if(PRE_PSI) */</span></div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> </div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> {</div>
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> <span class="keywordtype">int</span> t, t2; <span class="comment">/* index dimensions */</span></div>
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span> R fg_exp_l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>][2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2];</div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> </div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> <span class="keywordflow">for</span>(t2 = 0; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span> {</div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> <span class="keywordtype">int</span> lj_fg;</div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> R tmpEXP2 = EXP(K(-1.0)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[t2]);</div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> R tmpEXP2sq = tmpEXP2*tmpEXP2;</div>
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span> R tmp2 = K(1.0);</div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> R tmp3 = K(1.0);</div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span> fg_exp_l[t2][0] = K(1.0);</div>
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> <span class="keywordflow">for</span>(lj_fg = 1; lj_fg <= (2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2); lj_fg++)</div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> {</div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> tmp3 = tmp2*tmpEXP2;</div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> tmp2 *= tmpEXP2sq;</div>
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span> fg_exp_l[t2][lj_fg] = fg_exp_l[t2][lj_fg-1]*tmp3;</div>
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> }</div>
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span> }</div>
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> </div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k,t,t2)</span></div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span> {</div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix plain index in g */</span></div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix product of PHI */</span></div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi band with respect to x_j */</span></div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index u<=l<=o */</span></div>
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> R fg_psi[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>][2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2];</div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span> R tmpEXP1, tmp1;</div>
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> <span class="keywordtype">int</span> l_fg,lj_fg;</div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> <span class="keywordtype">int</span> l_L;</div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> </div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> phi_prod[0] = K(1.0);</div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> ll_plain[0] = 0;</div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> </div>
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> </div>
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="keywordflow">for</span> (t2 = 0; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> {</div>
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> fg_psi[t2][0] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t2)];</div>
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span> tmpEXP1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t2)+1];</div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> tmp1 = K(1.0);</div>
-<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> <span class="keywordflow">for</span> (l_fg = u[t2]+1, lj_fg = 1; l_fg <= o[t2]; l_fg++, lj_fg++)</div>
-<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> {</div>
-<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> tmp1 *= tmpEXP1;</div>
-<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> fg_psi[t2][lj_fg] = fg_psi[t2][0]*tmp1*fg_exp_l[t2][lj_fg];</div>
-<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> }</div>
-<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> }</div>
-<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> </div>
-<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> <span class="keywordflow">for</span> (l_L= 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> {</div>
-<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> MACRO_update_phi_prod_ll_plain(with_FG_PSI);</div>
-<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> </div>
-<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>] * ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled v [...]
-<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> </div>
-<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> } <span class="comment">/* if(PRE_FG_PSI) */</span></div>
-<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> </div>
-<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FG_PSI)</div>
-<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> {</div>
-<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> <span class="keywordtype">int</span> t, t2; <span class="comment">/* index dimensions */</span></div>
-<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> R fg_exp_l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>][2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2];</div>
-<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> </div>
-<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> </div>
-<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> <span class="keywordflow">for</span> (t2 = 0; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> {</div>
-<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> <span class="keywordtype">int</span> lj_fg;</div>
-<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span> R tmpEXP2 = EXP(K(-1.0)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[t2]);</div>
-<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> R tmpEXP2sq = tmpEXP2*tmpEXP2;</div>
-<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> R tmp2 = K(1.0);</div>
-<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> R tmp3 = K(1.0);</div>
-<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> fg_exp_l[t2][0] = K(1.0);</div>
-<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span> <span class="keywordflow">for</span> (lj_fg = 1; lj_fg <= (2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2); lj_fg++)</div>
-<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> {</div>
-<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span> tmp3 = tmp2*tmpEXP2;</div>
-<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span> tmp2 *= tmpEXP2sq;</div>
-<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> fg_exp_l[t2][lj_fg] = fg_exp_l[t2][lj_fg-1]*tmp3;</div>
-<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> }</div>
-<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> }</div>
-<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span> </div>
-<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k,t,t2)</span></div>
-<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span> {</div>
-<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix plain index in g */</span></div>
-<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix product of PHI */</span></div>
-<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi band with respect to x_j */</span></div>
-<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index u<=l<=o */</span></div>
-<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span> R fg_psi[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>][2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2];</div>
-<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span> R tmpEXP1, tmp1;</div>
-<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span> <span class="keywordtype">int</span> l_fg,lj_fg;</div>
-<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span> <span class="keywordtype">int</span> l_L;</div>
-<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span> </div>
-<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span> phi_prod[0] = K(1.0);</div>
-<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span> ll_plain[0] = 0;</div>
-<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span> </div>
-<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span> </div>
-<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span> <span class="keywordflow">for</span> (t2 = 0; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span> {</div>
-<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span> fg_psi[t2][0] = (PHI((ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t2]-((R)u[t2])/ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW [...]
-<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span> </div>
-<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span> tmpEXP1 = EXP(K(2.0)*(ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t2]*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d48 [...]
-<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span> /ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[t2]);</div>
-<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span> tmp1 = K(1.0);</div>
-<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span> <span class="keywordflow">for</span> (l_fg = u[t2] + 1, lj_fg = 1; l_fg <= o[t2]; l_fg++, lj_fg++)</div>
-<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span> {</div>
-<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span> tmp1 *= tmpEXP1;</div>
-<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span> fg_psi[t2][lj_fg] = fg_psi[t2][0]*tmp1*fg_exp_l[t2][lj_fg];</div>
-<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span> }</div>
-<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span> }</div>
-<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span> </div>
-<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span> <span class="keywordflow">for</span> (l_L = 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span> {</div>
-<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span> MACRO_update_phi_prod_ll_plain(with_FG_PSI);</div>
-<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span> </div>
-<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>] * ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled v [...]
-<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span> </div>
-<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span> } <span class="comment">/* if(FG_PSI) */</span></div>
-<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span> </div>
-<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span> {</div>
-<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span> </div>
-<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span> {</div>
-<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi band with respect to x_j */</span></div>
-<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> <span class="keywordtype">int</span> t, t2; <span class="comment">/* index dimensions */</span></div>
-<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> <span class="keywordtype">int</span> l_L; <span class="comment">/* index one row of B */</span></div>
-<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index u<=l<=o */</span></div>
-<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix plain index in g */</span></div>
-<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix product of PHI */</span></div>
-<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span> R y[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> R fg_psi[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>][2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2];</div>
-<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> <span class="keywordtype">int</span> l_fg,lj_fg;</div>
-<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span> R ip_w;</div>
-<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span> <span class="keywordtype">int</span> ip_u;</div>
-<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span> <span class="keywordtype">int</span> ip_s = ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>/(ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B [...]
-<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> </div>
-<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span> phi_prod[0] = K(1.0);</div>
-<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> ll_plain[0] = 0;</div>
-<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> </div>
-<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span> </div>
-<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> <span class="keywordflow">for</span> (t2 = 0; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> {</div>
-<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> y[t2] = ((ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t2]*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96a [...]
-<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> * ((R)ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>))/(ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2 [...]
-<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span> ip_u = LRINT(FLOOR(y[t2]));</div>
-<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> ip_w = y[t2]-ip_u;</div>
-<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> <span class="keywordflow">for</span> (l_fg = u[t2], lj_fg = 0; l_fg <= o[t2]; l_fg++, lj_fg++)</div>
-<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> {</div>
-<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> fg_psi[t2][lj_fg] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>+1)*t2 + ABS(ip_u-lj_fg*ip_s)]</div>
-<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> * (1-ip_w) + ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>+1)*t2 + ABS(ip_u-lj_fg*ip_s+1)]</div>
-<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> * (ip_w);</div>
-<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> }</div>
-<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> }</div>
-<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> </div>
-<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span> <span class="keywordflow">for</span> (l_L = 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> {</div>
-<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> MACRO_update_phi_prod_ll_plain(with_FG_PSI);</div>
-<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> </div>
-<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>] * ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled v [...]
-<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span> </div>
-<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span> } <span class="comment">/* if(PRE_LIN_PSI) */</span></div>
-<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span> </div>
-<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> <span class="comment">/* no precomputed psi at all */</span></div>
-<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span> </div>
-<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> {</div>
-<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi band with respect to x_j */</span></div>
-<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> <span class="keywordtype">int</span> t, t2; <span class="comment">/* index dimensions */</span></div>
-<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> <span class="keywordtype">int</span> l_L; <span class="comment">/* index one row of B */</span></div>
-<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index u<=l<=o */</span></div>
-<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix plain index in g */</span></div>
-<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix product of PHI */</span></div>
-<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used when [...]
-<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span> </div>
-<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span> phi_prod[0] = K(1.0);</div>
-<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span> ll_plain[0] = 0;</div>
-<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span> </div>
-<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span> </div>
-<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span> <span class="keywordflow">for</span> (l_L = 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span> {</div>
-<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span> MACRO_update_phi_prod_ll_plain(without_PRE_PSI);</div>
-<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span> </div>
-<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>] * ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vec [...]
-<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span> </div>
-<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span> }</div>
-<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_B_A(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span> {</div>
-<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span> <span class="preprocessor"></span> nfft_B_openmp_A(ths);</div>
-<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span> <span class="preprocessor"></span> nfft_B_serial_A(ths);</div>
-<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> </div>
-<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> index_x_binary_search(<span class="keyword">const</span> <span class="keywordtype">int</span> *ar_x, <span class="keyword">const</span> <span class="keywordtype">int</span> len, <span class="keyword">const</span> <span class="keywordtype">int</span> key)</div>
-<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span> {</div>
-<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span> <span class="keywordtype">int</span> left = 0, right = len - 1;</div>
-<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span> </div>
-<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span> <span class="keywordflow">if</span> (len == 1)</div>
-<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span> </div>
-<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span> <span class="keywordflow">while</span> (left < right - 1)</div>
-<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span> {</div>
-<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span> <span class="keywordtype">int</span> i = (left + right) / 2;</div>
-<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span> <span class="keywordflow">if</span> (ar_x[2*i] >= key)</div>
-<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> right = i;</div>
-<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (ar_x[2*i] < key)</div>
-<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span> left = i;</div>
-<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span> }</div>
-<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span> </div>
-<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span> <span class="keywordflow">if</span> (ar_x[2*left] < key && left != len-1)</div>
-<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span> <span class="keywordflow">return</span> left+1;</div>
-<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span> </div>
-<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span> <span class="keywordflow">return</span> left;</div>
-<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span> }</div>
-<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_B_omp_blockwise_init(<span class="keywordtype">int</span> *my_u0, <span class="keywordtype">int</span> *my_o0, <span class="keywordtype">int</span> *min_u_a, <span class="keywordtype">int</span> *max_u_a, <span class="keywordtype">int</span> *min_u_b, <span class="keywordtype">int</span> *max_u_b, <span class="keyword">const< [...]
-<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span> {</div>
-<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0 = n[0];</div>
-<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> <span class="keywordtype">int</span> nthreads = omp_get_num_threads();</div>
-<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span> <span class="keywordtype">int</span> nthreads_used = MIN(nthreads, n0);</div>
-<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span> <span class="keywordtype">int</span> size_per_thread = n0 / nthreads_used;</div>
-<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span> <span class="keywordtype">int</span> size_left = n0 - size_per_thread * nthreads_used;</div>
-<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span> <span class="keywordtype">int</span> size_g[nthreads_used];</div>
-<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span> <span class="keywordtype">int</span> offset_g[nthreads_used];</div>
-<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span> <span class="keywordtype">int</span> my_id = omp_get_thread_num();</div>
-<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span> <span class="keywordtype">int</span> n_prod_rest = 1;</div>
-<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span> </div>
-<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span> <span class="keywordflow">for</span> (k = 1; k < d; k++)</div>
-<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span> n_prod_rest *= n[k];</div>
-<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span> </div>
-<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span> *min_u_a = -1;</div>
-<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> *max_u_a = -1;</div>
-<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span> *min_u_b = -1;</div>
-<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span> *max_u_b = -1;</div>
-<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span> *my_u0 = -1;</div>
-<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span> *my_o0 = -1;</div>
-<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span> </div>
-<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span> <span class="keywordflow">if</span> (my_id < nthreads_used)</div>
-<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span> {</div>
-<div class="line"><a name="l01327"></a><span class="lineno"> 1327</span> <span class="keyword">const</span> <span class="keywordtype">int</span> m22 = 2 * m + 2;</div>
-<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> </div>
-<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> offset_g[0] = 0;</div>
-<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span> <span class="keywordflow">for</span> (k = 0; k < nthreads_used; k++)</div>
-<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> {</div>
-<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> <span class="keywordflow">if</span> (k > 0)</div>
-<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span> offset_g[k] = offset_g[k-1] + size_g[k-1];</div>
-<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span> size_g[k] = size_per_thread;</div>
-<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span> <span class="keywordflow">if</span> (size_left > 0)</div>
-<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span> {</div>
-<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span> size_g[k]++;</div>
-<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span> size_left--;</div>
-<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span> }</div>
-<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span> }</div>
-<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span> </div>
-<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span> *my_u0 = offset_g[my_id];</div>
-<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span> *my_o0 = offset_g[my_id] + size_g[my_id] - 1;</div>
-<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span> </div>
-<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> <span class="keywordflow">if</span> (nthreads_used > 1)</div>
-<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> {</div>
-<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span> *max_u_a = n_prod_rest*(offset_g[my_id] + size_g[my_id]) - 1;</div>
-<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span> *min_u_a = n_prod_rest*(offset_g[my_id] - m22 + 1);</div>
-<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span> }</div>
-<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span> {</div>
-<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> *min_u_a = 0;</div>
-<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span> *max_u_a = n_prod_rest * n0 - 1;</div>
-<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span> }</div>
-<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> </div>
-<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span> <span class="keywordflow">if</span> (*min_u_a < 0)</div>
-<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span> {</div>
-<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span> *min_u_b = n_prod_rest * (offset_g[my_id] - m22 + 1 + n0);</div>
-<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span> *max_u_b = n_prod_rest * n0 - 1;</div>
-<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span> *min_u_a = 0;</div>
-<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span> }</div>
-<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span> </div>
-<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span> <span class="keywordflow">if</span> (*min_u_b != -1 && *min_u_b <= *max_u_a)</div>
-<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span> {</div>
-<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span> *max_u_a = *max_u_b;</div>
-<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span> *min_u_b = -1;</div>
-<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span> *max_u_b = -1;</div>
-<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span> }</div>
-<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span> <span class="preprocessor"></span> assert(*min_u_a <= *max_u_a);</div>
-<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span> assert(*min_u_b <= *max_u_b);</div>
-<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> assert(*min_u_b == -1 || *max_u_a < *min_u_b);</div>
-<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span> }</div>
-<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_B_compute_full_psi(</div>
-<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span> C *g, <span class="keyword">const</span> <span class="keywordtype">int</span> *psi_index_g, <span class="keyword">const</span> R *psi, <span class="keyword">const</span> C *f,</div>
-<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span> <span class="keyword">const</span> <span class="keywordtype">int</span> M, <span class="keyword">const</span> <span class="keywordtype">int</span> d, <span class="keyword">const</span> <span class="keywordtype">int</span> *n, <span class="keyword">const</span> <span class="keywordtype">int</span> m, <span class="keyword">const</span> <span class="keywordtype">int</span> nfft_flags, <span class="keyword">con [...]
-<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span> {</div>
-<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span> <span class="keywordtype">int</span> lprod, lprod_m1;</div>
-<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span> {</div>
-<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span> <span class="keywordflow">for</span>(t = 0, lprod = 1; t < d; t++)</div>
-<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span> lprod *= 2 * m + 2;</div>
-<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span> }</div>
-<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span> lprod_m1 = lprod / (2 * m + 2);</div>
-<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span> </div>
-<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span> <span class="preprocessor"></span> <span class="keywordflow">if</span> (nfft_flags & NFFT_OMP_BLOCKWISE_ADJOINT)</div>
-<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span> {</div>
-<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span> <span class="preprocessor"> #pragma omp parallel private(k)</span></div>
-<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span> <span class="keywordtype">int</span> my_u0, my_o0, min_u_a, max_u_a, min_u_b, max_u_b;</div>
-<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span> <span class="keyword">const</span> <span class="keywordtype">int</span> *ar_x = index_x;</div>
-<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span> <span class="keywordtype">int</span> n_prod_rest = 1;</div>
-<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span> </div>
-<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span> <span class="keywordflow">for</span> (k = 1; k < d; k++)</div>
-<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span> n_prod_rest *= n[k];</div>
-<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span> </div>
-<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span> nfft_adjoint_B_omp_blockwise_init(&my_u0, &my_o0, &min_u_a, &max_u_a, &min_u_b, &max_u_b, d, n, m);</div>
-<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span> </div>
-<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span> <span class="keywordflow">if</span> (min_u_a != -1)</div>
-<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span> {</div>
-<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span> k = index_x_binary_search(ar_x, M, min_u_a);</div>
-<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span> <span class="preprocessor"></span> assert(ar_x[2*k] >= min_u_a || k == M-1);</div>
-<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span> <span class="keywordflow">if</span> (k > 0)</div>
-<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span> assert(ar_x[2*k-2] < min_u_a);</div>
-<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span> <span class="preprocessor"></span> <span class="keywordflow">while</span> (k < M)</div>
-<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span> {</div>
-<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span> <span class="keywordtype">int</span> l0, lrest;</div>
-<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span> <span class="keywordtype">int</span> u_prod = ar_x[2*k];</div>
-<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span> <span class="keywordtype">int</span> j = ar_x[2*k+1];</div>
-<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span> </div>
-<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span> <span class="keywordflow">if</span> (u_prod < min_u_a || u_prod > max_u_a)</div>
-<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span> </div>
-<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span> <span class="keywordflow">for</span> (l0 = 0; l0 < 2 * m + 2; l0++)</div>
-<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span> {</div>
-<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span> <span class="keyword">const</span> <span class="keywordtype">int</span> start_index = psi_index_g[j * lprod + l0 * lprod_m1];</div>
-<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span> </div>
-<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span> <span class="keywordflow">if</span> (start_index < my_u0 * n_prod_rest || start_index > (my_o0+1) * n_prod_rest - 1)</div>
-<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span> <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span> </div>
-<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span> <span class="keywordflow">for</span> (lrest = 0; lrest < lprod_m1; lrest++)</div>
-<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span> {</div>
-<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span> <span class="keyword">const</span> <span class="keywordtype">int</span> l = l0 * lprod_m1 + lrest;</div>
-<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span> g[psi_index_g[j * lprod + l]] += psi[j * lprod + l] * f[j];</div>
-<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span> }</div>
-<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span> }</div>
-<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span> </div>
-<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span> k++;</div>
-<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span> }</div>
-<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span> }</div>
-<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span> </div>
-<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span> <span class="keywordflow">if</span> (min_u_b != -1)</div>
-<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span> {</div>
-<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span> k = index_x_binary_search(ar_x, M, min_u_b);</div>
-<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span> <span class="preprocessor"></span> assert(ar_x[2*k] >= min_u_b || k == M-1);</div>
-<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span> <span class="keywordflow">if</span> (k > 0)</div>
-<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span> assert(ar_x[2*k-2] < min_u_b);</div>
-<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span> <span class="preprocessor"></span> <span class="keywordflow">while</span> (k < M)</div>
-<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span> {</div>
-<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span> <span class="keywordtype">int</span> l0, lrest;</div>
-<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span> <span class="keywordtype">int</span> u_prod = ar_x[2*k];</div>
-<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span> <span class="keywordtype">int</span> j = ar_x[2*k+1];</div>
-<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span> </div>
-<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span> <span class="keywordflow">if</span> (u_prod < min_u_b || u_prod > max_u_b)</div>
-<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span> </div>
-<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span> <span class="keywordflow">for</span> (l0 = 0; l0 < 2 * m + 2; l0++)</div>
-<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span> {</div>
-<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span> <span class="keyword">const</span> <span class="keywordtype">int</span> start_index = psi_index_g[j * lprod + l0 * lprod_m1];</div>
-<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span> </div>
-<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span> <span class="keywordflow">if</span> (start_index < my_u0 * n_prod_rest || start_index > (my_o0+1) * n_prod_rest - 1)</div>
-<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span> <span class="keywordflow">continue</span>;</div>
-<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span> <span class="keywordflow">for</span> (lrest = 0; lrest < lprod_m1; lrest++)</div>
-<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span> {</div>
-<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span> <span class="keyword">const</span> <span class="keywordtype">int</span> l = l0 * lprod_m1 + lrest;</div>
-<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span> g[psi_index_g[j * lprod + l]] += psi[j * lprod + l] * f[j];</div>
-<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span> }</div>
-<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span> }</div>
-<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span> </div>
-<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span> k++;</div>
-<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span> }</div>
-<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> }</div>
-<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span> } <span class="comment">/* omp parallel */</span></div>
-<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span> } <span class="comment">/* if(NFFT_OMP_BLOCKWISE_ADJOINT) */</span></div>
-<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span> {</div>
-<div class="line"><a name="l01489"></a><span class="lineno"> 1489</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l01490"></a><span class="lineno"> 1490</span> <span class="keywordtype">int</span> j = (nfft_flags & NFFT_SORT_NODES) ? index_x[2*k+1] : k;</div>
-<div class="line"><a name="l01491"></a><span class="lineno"> 1491</span> </div>
-<div class="line"><a name="l01492"></a><span class="lineno"> 1492</span> <span class="keywordflow">for</span> (l = 0; l < lprod; l++)</div>
-<div class="line"><a name="l01493"></a><span class="lineno"> 1493</span> {</div>
-<div class="line"><a name="l01494"></a><span class="lineno"> 1494</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01495"></a><span class="lineno"> 1495</span> <span class="preprocessor"></span> C val = psi[j * lprod + l] * f[j];</div>
-<div class="line"><a name="l01496"></a><span class="lineno"> 1496</span> C *gref = g + psi_index_g[j * lprod + l];</div>
-<div class="line"><a name="l01497"></a><span class="lineno"> 1497</span> R *gref_real = (R*) gref;</div>
-<div class="line"><a name="l01498"></a><span class="lineno"> 1498</span> </div>
-<div class="line"><a name="l01499"></a><span class="lineno"> 1499</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01500"></a><span class="lineno"> 1500</span> <span class="preprocessor"></span> gref_real[0] += creal(val);</div>
-<div class="line"><a name="l01501"></a><span class="lineno"> 1501</span> </div>
-<div class="line"><a name="l01502"></a><span class="lineno"> 1502</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01503"></a><span class="lineno"> 1503</span> <span class="preprocessor"></span> gref_real[1] += cimag(val);</div>
-<div class="line"><a name="l01504"></a><span class="lineno"> 1504</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01505"></a><span class="lineno"> 1505</span> <span class="preprocessor"></span> g[psi_index_g[j * lprod + l]] += psi[j * lprod + l] * f[j];</div>
-<div class="line"><a name="l01506"></a><span class="lineno"> 1506</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01507"></a><span class="lineno"> 1507</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01508"></a><span class="lineno"> 1508</span> }</div>
-<div class="line"><a name="l01509"></a><span class="lineno"> 1509</span> }</div>
-<div class="line"><a name="l01510"></a><span class="lineno"> 1510</span> </div>
-<div class="line"><a name="l01511"></a><span class="lineno"> 1511</span> <span class="preprocessor">#ifndef _OPENMP</span></div>
-<div class="line"><a name="l01512"></a><span class="lineno"> 1512</span> <span class="preprocessor"></span>MACRO_nfft_B(T)</div>
-<div class="line"><a name="l01513"></a><span class="lineno"> 1513</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01514"></a><span class="lineno"> 1514</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01515"></a><span class="lineno"> 1515</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01516"></a><span class="lineno"> 1516</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> nfft_B_openmp_T(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l01517"></a><span class="lineno"> 1517</span> {</div>
-<div class="line"><a name="l01518"></a><span class="lineno"> 1518</span> <span class="keywordtype">int</span> lprod; <span class="comment">/* 'regular bandwidth' of matrix B */</span></div>
-<div class="line"><a name="l01519"></a><span class="lineno"> 1519</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l01520"></a><span class="lineno"> 1520</span> </div>
-<div class="line"><a name="l01521"></a><span class="lineno"> 1521</span> memset(ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>,0,ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l01522"></a><span class="lineno"> 1522</span> </div>
-<div class="line"><a name="l01523"></a><span class="lineno"> 1523</span> <span class="keywordflow">for</span> (k = 0, lprod = 1; k < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; k++)</div>
-<div class="line"><a name="l01524"></a><span class="lineno"> 1524</span> lprod *= (2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2);</div>
-<div class="line"><a name="l01525"></a><span class="lineno"> 1525</span> </div>
-<div class="line"><a name="l01526"></a><span class="lineno"> 1526</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l01527"></a><span class="lineno"> 1527</span> {</div>
-<div class="line"><a name="l01528"></a><span class="lineno"> 1528</span> nfft_adjoint_B_compute_full_psi(ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>, ths-><a class="code" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_g</a>, ths-><a class="code" href="structnfft__plan.html [...]
-<div class="line"><a name="l01529"></a><span class="lineno"> 1529</span> ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>, ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>, ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off paramete [...]
-<div class="line"><a name="l01530"></a><span class="lineno"> 1530</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01531"></a><span class="lineno"> 1531</span> }</div>
-<div class="line"><a name="l01532"></a><span class="lineno"> 1532</span> </div>
-<div class="line"><a name="l01533"></a><span class="lineno"> 1533</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l01534"></a><span class="lineno"> 1534</span> {</div>
-<div class="line"><a name="l01535"></a><span class="lineno"> 1535</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l01536"></a><span class="lineno"> 1536</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l01537"></a><span class="lineno"> 1537</span> {</div>
-<div class="line"><a name="l01538"></a><span class="lineno"> 1538</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi band with respect to x_j */</span></div>
-<div class="line"><a name="l01539"></a><span class="lineno"> 1539</span> <span class="keywordtype">int</span> t, t2; <span class="comment">/* index dimensions */</span></div>
-<div class="line"><a name="l01540"></a><span class="lineno"> 1540</span> <span class="keywordtype">int</span> l_L; <span class="comment">/* index one row of B */</span></div>
-<div class="line"><a name="l01541"></a><span class="lineno"> 1541</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index u<=l<=o */</span></div>
-<div class="line"><a name="l01542"></a><span class="lineno"> 1542</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l01543"></a><span class="lineno"> 1543</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix plain index in g */</span></div>
-<div class="line"><a name="l01544"></a><span class="lineno"> 1544</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix product of PHI */</span></div>
-<div class="line"><a name="l01545"></a><span class="lineno"> 1545</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l01546"></a><span class="lineno"> 1546</span> </div>
-<div class="line"><a name="l01547"></a><span class="lineno"> 1547</span> phi_prod[0] = K(1.0);</div>
-<div class="line"><a name="l01548"></a><span class="lineno"> 1548</span> ll_plain[0] = 0;</div>
-<div class="line"><a name="l01549"></a><span class="lineno"> 1549</span> </div>
-<div class="line"><a name="l01550"></a><span class="lineno"> 1550</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l01551"></a><span class="lineno"> 1551</span> </div>
-<div class="line"><a name="l01552"></a><span class="lineno"> 1552</span> <span class="keywordflow">for</span> (l_L = 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l01553"></a><span class="lineno"> 1553</span> {</div>
-<div class="line"><a name="l01554"></a><span class="lineno"> 1554</span> C *lhs;</div>
-<div class="line"><a name="l01555"></a><span class="lineno"> 1555</span> R *lhs_real;</div>
-<div class="line"><a name="l01556"></a><span class="lineno"> 1556</span> C val;</div>
-<div class="line"><a name="l01557"></a><span class="lineno"> 1557</span> </div>
-<div class="line"><a name="l01558"></a><span class="lineno"> 1558</span> MACRO_update_phi_prod_ll_plain(with_PRE_PSI);</div>
-<div class="line"><a name="l01559"></a><span class="lineno"> 1559</span> </div>
-<div class="line"><a name="l01560"></a><span class="lineno"> 1560</span> lhs = ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a> + ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l01561"></a><span class="lineno"> 1561</span> lhs_real = (R*)lhs;</div>
-<div class="line"><a name="l01562"></a><span class="lineno"> 1562</span> val = phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>] * ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l01563"></a><span class="lineno"> 1563</span> </div>
-<div class="line"><a name="l01564"></a><span class="lineno"> 1564</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01565"></a><span class="lineno"> 1565</span> <span class="preprocessor"></span> lhs_real[0] += creal(val);</div>
-<div class="line"><a name="l01566"></a><span class="lineno"> 1566</span> </div>
-<div class="line"><a name="l01567"></a><span class="lineno"> 1567</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01568"></a><span class="lineno"> 1568</span> <span class="preprocessor"></span> lhs_real[1] += cimag(val);</div>
-<div class="line"><a name="l01569"></a><span class="lineno"> 1569</span> </div>
-<div class="line"><a name="l01570"></a><span class="lineno"> 1570</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l01571"></a><span class="lineno"> 1571</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l01572"></a><span class="lineno"> 1572</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l01573"></a><span class="lineno"> 1573</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01574"></a><span class="lineno"> 1574</span> } <span class="comment">/* if(PRE_PSI) */</span></div>
-<div class="line"><a name="l01575"></a><span class="lineno"> 1575</span> </div>
-<div class="line"><a name="l01576"></a><span class="lineno"> 1576</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l01577"></a><span class="lineno"> 1577</span> {</div>
-<div class="line"><a name="l01578"></a><span class="lineno"> 1578</span> <span class="keywordtype">int</span> t, t2; <span class="comment">/* index dimensions */</span></div>
-<div class="line"><a name="l01579"></a><span class="lineno"> 1579</span> R fg_exp_l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>][2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2];</div>
-<div class="line"><a name="l01580"></a><span class="lineno"> 1580</span> <span class="keywordflow">for</span>(t2 = 0; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l01581"></a><span class="lineno"> 1581</span> {</div>
-<div class="line"><a name="l01582"></a><span class="lineno"> 1582</span> <span class="keywordtype">int</span> lj_fg;</div>
-<div class="line"><a name="l01583"></a><span class="lineno"> 1583</span> R tmpEXP2 = EXP(K(-1.0)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[t2]);</div>
-<div class="line"><a name="l01584"></a><span class="lineno"> 1584</span> R tmpEXP2sq = tmpEXP2*tmpEXP2;</div>
-<div class="line"><a name="l01585"></a><span class="lineno"> 1585</span> R tmp2 = K(1.0);</div>
-<div class="line"><a name="l01586"></a><span class="lineno"> 1586</span> R tmp3 = K(1.0);</div>
-<div class="line"><a name="l01587"></a><span class="lineno"> 1587</span> fg_exp_l[t2][0] = K(1.0);</div>
-<div class="line"><a name="l01588"></a><span class="lineno"> 1588</span> <span class="keywordflow">for</span>(lj_fg = 1; lj_fg <= (2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2); lj_fg++)</div>
-<div class="line"><a name="l01589"></a><span class="lineno"> 1589</span> {</div>
-<div class="line"><a name="l01590"></a><span class="lineno"> 1590</span> tmp3 = tmp2*tmpEXP2;</div>
-<div class="line"><a name="l01591"></a><span class="lineno"> 1591</span> tmp2 *= tmpEXP2sq;</div>
-<div class="line"><a name="l01592"></a><span class="lineno"> 1592</span> fg_exp_l[t2][lj_fg] = fg_exp_l[t2][lj_fg-1]*tmp3;</div>
-<div class="line"><a name="l01593"></a><span class="lineno"> 1593</span> }</div>
-<div class="line"><a name="l01594"></a><span class="lineno"> 1594</span> }</div>
-<div class="line"><a name="l01595"></a><span class="lineno"> 1595</span> </div>
-<div class="line"><a name="l01596"></a><span class="lineno"> 1596</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k,t,t2)</span></div>
-<div class="line"><a name="l01597"></a><span class="lineno"> 1597</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l01598"></a><span class="lineno"> 1598</span> {</div>
-<div class="line"><a name="l01599"></a><span class="lineno"> 1599</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix plain index in g */</span></div>
-<div class="line"><a name="l01600"></a><span class="lineno"> 1600</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix product of PHI */</span></div>
-<div class="line"><a name="l01601"></a><span class="lineno"> 1601</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi band with respect to x_j */</span></div>
-<div class="line"><a name="l01602"></a><span class="lineno"> 1602</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index u<=l<=o */</span></div>
-<div class="line"><a name="l01603"></a><span class="lineno"> 1603</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l01604"></a><span class="lineno"> 1604</span> R fg_psi[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>][2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2];</div>
-<div class="line"><a name="l01605"></a><span class="lineno"> 1605</span> R tmpEXP1, tmp1;</div>
-<div class="line"><a name="l01606"></a><span class="lineno"> 1606</span> <span class="keywordtype">int</span> l_fg,lj_fg;</div>
-<div class="line"><a name="l01607"></a><span class="lineno"> 1607</span> <span class="keywordtype">int</span> l_L;</div>
-<div class="line"><a name="l01608"></a><span class="lineno"> 1608</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l01609"></a><span class="lineno"> 1609</span> </div>
-<div class="line"><a name="l01610"></a><span class="lineno"> 1610</span> phi_prod[0] = K(1.0);</div>
-<div class="line"><a name="l01611"></a><span class="lineno"> 1611</span> ll_plain[0] = 0;</div>
-<div class="line"><a name="l01612"></a><span class="lineno"> 1612</span> </div>
-<div class="line"><a name="l01613"></a><span class="lineno"> 1613</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l01614"></a><span class="lineno"> 1614</span> </div>
-<div class="line"><a name="l01615"></a><span class="lineno"> 1615</span> <span class="keywordflow">for</span> (t2 = 0; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l01616"></a><span class="lineno"> 1616</span> {</div>
-<div class="line"><a name="l01617"></a><span class="lineno"> 1617</span> fg_psi[t2][0] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t2)];</div>
-<div class="line"><a name="l01618"></a><span class="lineno"> 1618</span> tmpEXP1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t2)+1];</div>
-<div class="line"><a name="l01619"></a><span class="lineno"> 1619</span> tmp1 = K(1.0);</div>
-<div class="line"><a name="l01620"></a><span class="lineno"> 1620</span> <span class="keywordflow">for</span> (l_fg = u[t2]+1, lj_fg = 1; l_fg <= o[t2]; l_fg++, lj_fg++)</div>
-<div class="line"><a name="l01621"></a><span class="lineno"> 1621</span> {</div>
-<div class="line"><a name="l01622"></a><span class="lineno"> 1622</span> tmp1 *= tmpEXP1;</div>
-<div class="line"><a name="l01623"></a><span class="lineno"> 1623</span> fg_psi[t2][lj_fg] = fg_psi[t2][0]*tmp1*fg_exp_l[t2][lj_fg];</div>
-<div class="line"><a name="l01624"></a><span class="lineno"> 1624</span> }</div>
-<div class="line"><a name="l01625"></a><span class="lineno"> 1625</span> }</div>
-<div class="line"><a name="l01626"></a><span class="lineno"> 1626</span> </div>
-<div class="line"><a name="l01627"></a><span class="lineno"> 1627</span> <span class="keywordflow">for</span> (l_L= 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l01628"></a><span class="lineno"> 1628</span> {</div>
-<div class="line"><a name="l01629"></a><span class="lineno"> 1629</span> C *lhs;</div>
-<div class="line"><a name="l01630"></a><span class="lineno"> 1630</span> R *lhs_real;</div>
-<div class="line"><a name="l01631"></a><span class="lineno"> 1631</span> C val;</div>
-<div class="line"><a name="l01632"></a><span class="lineno"> 1632</span> </div>
-<div class="line"><a name="l01633"></a><span class="lineno"> 1633</span> MACRO_update_phi_prod_ll_plain(with_FG_PSI);</div>
-<div class="line"><a name="l01634"></a><span class="lineno"> 1634</span> </div>
-<div class="line"><a name="l01635"></a><span class="lineno"> 1635</span> lhs = ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a> + ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l01636"></a><span class="lineno"> 1636</span> lhs_real = (R*)lhs;</div>
-<div class="line"><a name="l01637"></a><span class="lineno"> 1637</span> val = phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>] * ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l01638"></a><span class="lineno"> 1638</span> </div>
-<div class="line"><a name="l01639"></a><span class="lineno"> 1639</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01640"></a><span class="lineno"> 1640</span> <span class="preprocessor"></span> lhs_real[0] += creal(val);</div>
-<div class="line"><a name="l01641"></a><span class="lineno"> 1641</span> </div>
-<div class="line"><a name="l01642"></a><span class="lineno"> 1642</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01643"></a><span class="lineno"> 1643</span> <span class="preprocessor"></span> lhs_real[1] += cimag(val);</div>
-<div class="line"><a name="l01644"></a><span class="lineno"> 1644</span> </div>
-<div class="line"><a name="l01645"></a><span class="lineno"> 1645</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l01646"></a><span class="lineno"> 1646</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l01647"></a><span class="lineno"> 1647</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l01648"></a><span class="lineno"> 1648</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01649"></a><span class="lineno"> 1649</span> } <span class="comment">/* if(PRE_FG_PSI) */</span></div>
-<div class="line"><a name="l01650"></a><span class="lineno"> 1650</span> </div>
-<div class="line"><a name="l01651"></a><span class="lineno"> 1651</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FG_PSI)</div>
-<div class="line"><a name="l01652"></a><span class="lineno"> 1652</span> {</div>
-<div class="line"><a name="l01653"></a><span class="lineno"> 1653</span> <span class="keywordtype">int</span> t, t2; <span class="comment">/* index dimensions */</span></div>
-<div class="line"><a name="l01654"></a><span class="lineno"> 1654</span> R fg_exp_l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>][2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2];</div>
-<div class="line"><a name="l01655"></a><span class="lineno"> 1655</span> </div>
-<div class="line"><a name="l01656"></a><span class="lineno"> 1656</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l01657"></a><span class="lineno"> 1657</span> </div>
-<div class="line"><a name="l01658"></a><span class="lineno"> 1658</span> <span class="keywordflow">for</span> (t2 = 0; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l01659"></a><span class="lineno"> 1659</span> {</div>
-<div class="line"><a name="l01660"></a><span class="lineno"> 1660</span> <span class="keywordtype">int</span> lj_fg;</div>
-<div class="line"><a name="l01661"></a><span class="lineno"> 1661</span> R tmpEXP2 = EXP(K(-1.0)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[t2]);</div>
-<div class="line"><a name="l01662"></a><span class="lineno"> 1662</span> R tmpEXP2sq = tmpEXP2*tmpEXP2;</div>
-<div class="line"><a name="l01663"></a><span class="lineno"> 1663</span> R tmp2 = K(1.0);</div>
-<div class="line"><a name="l01664"></a><span class="lineno"> 1664</span> R tmp3 = K(1.0);</div>
-<div class="line"><a name="l01665"></a><span class="lineno"> 1665</span> fg_exp_l[t2][0] = K(1.0);</div>
-<div class="line"><a name="l01666"></a><span class="lineno"> 1666</span> <span class="keywordflow">for</span> (lj_fg = 1; lj_fg <= (2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2); lj_fg++)</div>
-<div class="line"><a name="l01667"></a><span class="lineno"> 1667</span> {</div>
-<div class="line"><a name="l01668"></a><span class="lineno"> 1668</span> tmp3 = tmp2*tmpEXP2;</div>
-<div class="line"><a name="l01669"></a><span class="lineno"> 1669</span> tmp2 *= tmpEXP2sq;</div>
-<div class="line"><a name="l01670"></a><span class="lineno"> 1670</span> fg_exp_l[t2][lj_fg] = fg_exp_l[t2][lj_fg-1]*tmp3;</div>
-<div class="line"><a name="l01671"></a><span class="lineno"> 1671</span> }</div>
-<div class="line"><a name="l01672"></a><span class="lineno"> 1672</span> }</div>
-<div class="line"><a name="l01673"></a><span class="lineno"> 1673</span> </div>
-<div class="line"><a name="l01674"></a><span class="lineno"> 1674</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k,t,t2)</span></div>
-<div class="line"><a name="l01675"></a><span class="lineno"> 1675</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l01676"></a><span class="lineno"> 1676</span> {</div>
-<div class="line"><a name="l01677"></a><span class="lineno"> 1677</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix plain index in g */</span></div>
-<div class="line"><a name="l01678"></a><span class="lineno"> 1678</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix product of PHI */</span></div>
-<div class="line"><a name="l01679"></a><span class="lineno"> 1679</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi band with respect to x_j */</span></div>
-<div class="line"><a name="l01680"></a><span class="lineno"> 1680</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index u<=l<=o */</span></div>
-<div class="line"><a name="l01681"></a><span class="lineno"> 1681</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l01682"></a><span class="lineno"> 1682</span> R fg_psi[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>][2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2];</div>
-<div class="line"><a name="l01683"></a><span class="lineno"> 1683</span> R tmpEXP1, tmp1;</div>
-<div class="line"><a name="l01684"></a><span class="lineno"> 1684</span> <span class="keywordtype">int</span> l_fg,lj_fg;</div>
-<div class="line"><a name="l01685"></a><span class="lineno"> 1685</span> <span class="keywordtype">int</span> l_L;</div>
-<div class="line"><a name="l01686"></a><span class="lineno"> 1686</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l01687"></a><span class="lineno"> 1687</span> </div>
-<div class="line"><a name="l01688"></a><span class="lineno"> 1688</span> phi_prod[0] = K(1.0);</div>
-<div class="line"><a name="l01689"></a><span class="lineno"> 1689</span> ll_plain[0] = 0;</div>
-<div class="line"><a name="l01690"></a><span class="lineno"> 1690</span> </div>
-<div class="line"><a name="l01691"></a><span class="lineno"> 1691</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l01692"></a><span class="lineno"> 1692</span> </div>
-<div class="line"><a name="l01693"></a><span class="lineno"> 1693</span> <span class="keywordflow">for</span> (t2 = 0; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l01694"></a><span class="lineno"> 1694</span> {</div>
-<div class="line"><a name="l01695"></a><span class="lineno"> 1695</span> fg_psi[t2][0] = (PHI((ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t2]-((R)u[t2])/ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW [...]
-<div class="line"><a name="l01696"></a><span class="lineno"> 1696</span> </div>
-<div class="line"><a name="l01697"></a><span class="lineno"> 1697</span> tmpEXP1 = EXP(K(2.0)*(ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t2]*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d48 [...]
-<div class="line"><a name="l01698"></a><span class="lineno"> 1698</span> /ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[t2]);</div>
-<div class="line"><a name="l01699"></a><span class="lineno"> 1699</span> tmp1 = K(1.0);</div>
-<div class="line"><a name="l01700"></a><span class="lineno"> 1700</span> <span class="keywordflow">for</span> (l_fg = u[t2] + 1, lj_fg = 1; l_fg <= o[t2]; l_fg++, lj_fg++)</div>
-<div class="line"><a name="l01701"></a><span class="lineno"> 1701</span> {</div>
-<div class="line"><a name="l01702"></a><span class="lineno"> 1702</span> tmp1 *= tmpEXP1;</div>
-<div class="line"><a name="l01703"></a><span class="lineno"> 1703</span> fg_psi[t2][lj_fg] = fg_psi[t2][0]*tmp1*fg_exp_l[t2][lj_fg];</div>
-<div class="line"><a name="l01704"></a><span class="lineno"> 1704</span> }</div>
-<div class="line"><a name="l01705"></a><span class="lineno"> 1705</span> }</div>
-<div class="line"><a name="l01706"></a><span class="lineno"> 1706</span> </div>
-<div class="line"><a name="l01707"></a><span class="lineno"> 1707</span> <span class="keywordflow">for</span> (l_L = 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l01708"></a><span class="lineno"> 1708</span> {</div>
-<div class="line"><a name="l01709"></a><span class="lineno"> 1709</span> C *lhs;</div>
-<div class="line"><a name="l01710"></a><span class="lineno"> 1710</span> R *lhs_real;</div>
-<div class="line"><a name="l01711"></a><span class="lineno"> 1711</span> C val;</div>
-<div class="line"><a name="l01712"></a><span class="lineno"> 1712</span> </div>
-<div class="line"><a name="l01713"></a><span class="lineno"> 1713</span> MACRO_update_phi_prod_ll_plain(with_FG_PSI);</div>
-<div class="line"><a name="l01714"></a><span class="lineno"> 1714</span> </div>
-<div class="line"><a name="l01715"></a><span class="lineno"> 1715</span> lhs = ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a> + ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l01716"></a><span class="lineno"> 1716</span> lhs_real = (R*)lhs;</div>
-<div class="line"><a name="l01717"></a><span class="lineno"> 1717</span> val = phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>] * ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l01718"></a><span class="lineno"> 1718</span> </div>
-<div class="line"><a name="l01719"></a><span class="lineno"> 1719</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01720"></a><span class="lineno"> 1720</span> <span class="preprocessor"></span> lhs_real[0] += creal(val);</div>
-<div class="line"><a name="l01721"></a><span class="lineno"> 1721</span> </div>
-<div class="line"><a name="l01722"></a><span class="lineno"> 1722</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01723"></a><span class="lineno"> 1723</span> <span class="preprocessor"></span> lhs_real[1] += cimag(val);</div>
-<div class="line"><a name="l01724"></a><span class="lineno"> 1724</span> </div>
-<div class="line"><a name="l01725"></a><span class="lineno"> 1725</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l01726"></a><span class="lineno"> 1726</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l01727"></a><span class="lineno"> 1727</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l01728"></a><span class="lineno"> 1728</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01729"></a><span class="lineno"> 1729</span> } <span class="comment">/* if(FG_PSI) */</span></div>
-<div class="line"><a name="l01730"></a><span class="lineno"> 1730</span> </div>
-<div class="line"><a name="l01731"></a><span class="lineno"> 1731</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l01732"></a><span class="lineno"> 1732</span> {</div>
-<div class="line"><a name="l01733"></a><span class="lineno"> 1733</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l01734"></a><span class="lineno"> 1734</span> </div>
-<div class="line"><a name="l01735"></a><span class="lineno"> 1735</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l01736"></a><span class="lineno"> 1736</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l01737"></a><span class="lineno"> 1737</span> {</div>
-<div class="line"><a name="l01738"></a><span class="lineno"> 1738</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi band with respect to x_j */</span></div>
-<div class="line"><a name="l01739"></a><span class="lineno"> 1739</span> <span class="keywordtype">int</span> t, t2; <span class="comment">/* index dimensions */</span></div>
-<div class="line"><a name="l01740"></a><span class="lineno"> 1740</span> <span class="keywordtype">int</span> l_L; <span class="comment">/* index one row of B */</span></div>
-<div class="line"><a name="l01741"></a><span class="lineno"> 1741</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index u<=l<=o */</span></div>
-<div class="line"><a name="l01742"></a><span class="lineno"> 1742</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l01743"></a><span class="lineno"> 1743</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix plain index in g */</span></div>
-<div class="line"><a name="l01744"></a><span class="lineno"> 1744</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix product of PHI */</span></div>
-<div class="line"><a name="l01745"></a><span class="lineno"> 1745</span> R y[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l01746"></a><span class="lineno"> 1746</span> R fg_psi[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>][2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2];</div>
-<div class="line"><a name="l01747"></a><span class="lineno"> 1747</span> <span class="keywordtype">int</span> l_fg,lj_fg;</div>
-<div class="line"><a name="l01748"></a><span class="lineno"> 1748</span> R ip_w;</div>
-<div class="line"><a name="l01749"></a><span class="lineno"> 1749</span> <span class="keywordtype">int</span> ip_u;</div>
-<div class="line"><a name="l01750"></a><span class="lineno"> 1750</span> <span class="keywordtype">int</span> ip_s = ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>/(ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B [...]
-<div class="line"><a name="l01751"></a><span class="lineno"> 1751</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l01752"></a><span class="lineno"> 1752</span> </div>
-<div class="line"><a name="l01753"></a><span class="lineno"> 1753</span> phi_prod[0] = K(1.0);</div>
-<div class="line"><a name="l01754"></a><span class="lineno"> 1754</span> ll_plain[0] = 0;</div>
-<div class="line"><a name="l01755"></a><span class="lineno"> 1755</span> </div>
-<div class="line"><a name="l01756"></a><span class="lineno"> 1756</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l01757"></a><span class="lineno"> 1757</span> </div>
-<div class="line"><a name="l01758"></a><span class="lineno"> 1758</span> <span class="keywordflow">for</span> (t2 = 0; t2 < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t2++)</div>
-<div class="line"><a name="l01759"></a><span class="lineno"> 1759</span> {</div>
-<div class="line"><a name="l01760"></a><span class="lineno"> 1760</span> y[t2] = ((ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t2]*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96a [...]
-<div class="line"><a name="l01761"></a><span class="lineno"> 1761</span> * ((R)ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>))/(ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2 [...]
-<div class="line"><a name="l01762"></a><span class="lineno"> 1762</span> ip_u = LRINT(FLOOR(y[t2]));</div>
-<div class="line"><a name="l01763"></a><span class="lineno"> 1763</span> ip_w = y[t2]-ip_u;</div>
-<div class="line"><a name="l01764"></a><span class="lineno"> 1764</span> <span class="keywordflow">for</span> (l_fg = u[t2], lj_fg = 0; l_fg <= o[t2]; l_fg++, lj_fg++)</div>
-<div class="line"><a name="l01765"></a><span class="lineno"> 1765</span> {</div>
-<div class="line"><a name="l01766"></a><span class="lineno"> 1766</span> fg_psi[t2][lj_fg] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>+1)*t2 + ABS(ip_u-lj_fg*ip_s)]</div>
-<div class="line"><a name="l01767"></a><span class="lineno"> 1767</span> * (1-ip_w) + ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>+1)*t2 + ABS(ip_u-lj_fg*ip_s+1)]</div>
-<div class="line"><a name="l01768"></a><span class="lineno"> 1768</span> * (ip_w);</div>
-<div class="line"><a name="l01769"></a><span class="lineno"> 1769</span> }</div>
-<div class="line"><a name="l01770"></a><span class="lineno"> 1770</span> }</div>
-<div class="line"><a name="l01771"></a><span class="lineno"> 1771</span> </div>
-<div class="line"><a name="l01772"></a><span class="lineno"> 1772</span> <span class="keywordflow">for</span> (l_L = 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l01773"></a><span class="lineno"> 1773</span> {</div>
-<div class="line"><a name="l01774"></a><span class="lineno"> 1774</span> C *lhs;</div>
-<div class="line"><a name="l01775"></a><span class="lineno"> 1775</span> R *lhs_real;</div>
-<div class="line"><a name="l01776"></a><span class="lineno"> 1776</span> C val;</div>
-<div class="line"><a name="l01777"></a><span class="lineno"> 1777</span> </div>
-<div class="line"><a name="l01778"></a><span class="lineno"> 1778</span> MACRO_update_phi_prod_ll_plain(with_FG_PSI);</div>
-<div class="line"><a name="l01779"></a><span class="lineno"> 1779</span> </div>
-<div class="line"><a name="l01780"></a><span class="lineno"> 1780</span> lhs = ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a> + ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l01781"></a><span class="lineno"> 1781</span> lhs_real = (R*)lhs;</div>
-<div class="line"><a name="l01782"></a><span class="lineno"> 1782</span> val = phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>] * ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l01783"></a><span class="lineno"> 1783</span> </div>
-<div class="line"><a name="l01784"></a><span class="lineno"> 1784</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01785"></a><span class="lineno"> 1785</span> <span class="preprocessor"></span> lhs_real[0] += creal(val);</div>
-<div class="line"><a name="l01786"></a><span class="lineno"> 1786</span> </div>
-<div class="line"><a name="l01787"></a><span class="lineno"> 1787</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01788"></a><span class="lineno"> 1788</span> <span class="preprocessor"></span> lhs_real[1] += cimag(val);</div>
-<div class="line"><a name="l01789"></a><span class="lineno"> 1789</span> </div>
-<div class="line"><a name="l01790"></a><span class="lineno"> 1790</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l01791"></a><span class="lineno"> 1791</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l01792"></a><span class="lineno"> 1792</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l01793"></a><span class="lineno"> 1793</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01794"></a><span class="lineno"> 1794</span> } <span class="comment">/* if(PRE_LIN_PSI) */</span></div>
-<div class="line"><a name="l01795"></a><span class="lineno"> 1795</span> </div>
-<div class="line"><a name="l01796"></a><span class="lineno"> 1796</span> <span class="comment">/* no precomputed psi at all */</span></div>
-<div class="line"><a name="l01797"></a><span class="lineno"> 1797</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l01798"></a><span class="lineno"> 1798</span> </div>
-<div class="line"><a name="l01799"></a><span class="lineno"> 1799</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l01800"></a><span class="lineno"> 1800</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; k++)</div>
-<div class="line"><a name="l01801"></a><span class="lineno"> 1801</span> {</div>
-<div class="line"><a name="l01802"></a><span class="lineno"> 1802</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi band with respect to x_j */</span></div>
-<div class="line"><a name="l01803"></a><span class="lineno"> 1803</span> <span class="keywordtype">int</span> t, t2; <span class="comment">/* index dimensions */</span></div>
-<div class="line"><a name="l01804"></a><span class="lineno"> 1804</span> <span class="keywordtype">int</span> l_L; <span class="comment">/* index one row of B */</span></div>
-<div class="line"><a name="l01805"></a><span class="lineno"> 1805</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index u<=l<=o */</span></div>
-<div class="line"><a name="l01806"></a><span class="lineno"> 1806</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; <span class="comment">/* multi index 0<=lj<u+o+1 */</span></div>
-<div class="line"><a name="l01807"></a><span class="lineno"> 1807</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix plain index in g */</span></div>
-<div class="line"><a name="l01808"></a><span class="lineno"> 1808</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; <span class="comment">/* postfix product of PHI */</span></div>
-<div class="line"><a name="l01809"></a><span class="lineno"> 1809</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used when [...]
-<div class="line"><a name="l01810"></a><span class="lineno"> 1810</span> </div>
-<div class="line"><a name="l01811"></a><span class="lineno"> 1811</span> phi_prod[0] = K(1.0);</div>
-<div class="line"><a name="l01812"></a><span class="lineno"> 1812</span> ll_plain[0] = 0;</div>
-<div class="line"><a name="l01813"></a><span class="lineno"> 1813</span> </div>
-<div class="line"><a name="l01814"></a><span class="lineno"> 1814</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l01815"></a><span class="lineno"> 1815</span> </div>
-<div class="line"><a name="l01816"></a><span class="lineno"> 1816</span> <span class="keywordflow">for</span> (l_L = 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l01817"></a><span class="lineno"> 1817</span> {</div>
-<div class="line"><a name="l01818"></a><span class="lineno"> 1818</span> C *lhs;</div>
-<div class="line"><a name="l01819"></a><span class="lineno"> 1819</span> R *lhs_real;</div>
-<div class="line"><a name="l01820"></a><span class="lineno"> 1820</span> C val;</div>
-<div class="line"><a name="l01821"></a><span class="lineno"> 1821</span> </div>
-<div class="line"><a name="l01822"></a><span class="lineno"> 1822</span> MACRO_update_phi_prod_ll_plain(without_PRE_PSI);</div>
-<div class="line"><a name="l01823"></a><span class="lineno"> 1823</span> </div>
-<div class="line"><a name="l01824"></a><span class="lineno"> 1824</span> lhs = ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a> + ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l01825"></a><span class="lineno"> 1825</span> lhs_real = (R*)lhs;</div>
-<div class="line"><a name="l01826"></a><span class="lineno"> 1826</span> val = phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>] * ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l01827"></a><span class="lineno"> 1827</span> </div>
-<div class="line"><a name="l01828"></a><span class="lineno"> 1828</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01829"></a><span class="lineno"> 1829</span> <span class="preprocessor"></span> lhs_real[0] += creal(val);</div>
-<div class="line"><a name="l01830"></a><span class="lineno"> 1830</span> </div>
-<div class="line"><a name="l01831"></a><span class="lineno"> 1831</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01832"></a><span class="lineno"> 1832</span> <span class="preprocessor"></span> lhs_real[1] += cimag(val);</div>
-<div class="line"><a name="l01833"></a><span class="lineno"> 1833</span> </div>
-<div class="line"><a name="l01834"></a><span class="lineno"> 1834</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l01835"></a><span class="lineno"> 1835</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l01836"></a><span class="lineno"> 1836</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l01837"></a><span class="lineno"> 1837</span> }</div>
-<div class="line"><a name="l01838"></a><span class="lineno"> 1838</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01839"></a><span class="lineno"> 1839</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01840"></a><span class="lineno"> 1840</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_B_T(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l01841"></a><span class="lineno"> 1841</span> {</div>
-<div class="line"><a name="l01842"></a><span class="lineno"> 1842</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01843"></a><span class="lineno"> 1843</span> <span class="preprocessor"></span> nfft_B_openmp_T(ths);</div>
-<div class="line"><a name="l01844"></a><span class="lineno"> 1844</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01845"></a><span class="lineno"> 1845</span> <span class="preprocessor"></span> nfft_B_serial_T(ths);</div>
-<div class="line"><a name="l01846"></a><span class="lineno"> 1846</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01847"></a><span class="lineno"> 1847</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l01848"></a><span class="lineno"> 1848</span> </div>
-<div class="line"><a name="l01849"></a><span class="lineno"> 1849</span> <span class="comment">/* ## specialized version for d=1 ########################################### */</span></div>
-<div class="line"><a name="l01850"></a><span class="lineno"> 1850</span> </div>
-<div class="line"><a name="l01851"></a><span class="lineno"> 1851</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_1d_init_fg_exp_l(R *fg_exp_l, <span class="keyword">const</span> <span class="keywordtype">int</span> m, <span class="keyword">const</span> R b)</div>
-<div class="line"><a name="l01852"></a><span class="lineno"> 1852</span> {</div>
-<div class="line"><a name="l01853"></a><span class="lineno"> 1853</span> <span class="keyword">const</span> <span class="keywordtype">int</span> tmp2 = 2*m+2;</div>
-<div class="line"><a name="l01854"></a><span class="lineno"> 1854</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l01855"></a><span class="lineno"> 1855</span> R fg_exp_b0, fg_exp_b1, fg_exp_b2, fg_exp_b0_sq;</div>
-<div class="line"><a name="l01856"></a><span class="lineno"> 1856</span> </div>
-<div class="line"><a name="l01857"></a><span class="lineno"> 1857</span> fg_exp_b0 = EXP(K(-1.0)/b);</div>
-<div class="line"><a name="l01858"></a><span class="lineno"> 1858</span> fg_exp_b0_sq = fg_exp_b0*fg_exp_b0;</div>
-<div class="line"><a name="l01859"></a><span class="lineno"> 1859</span> fg_exp_b1 = fg_exp_b2 =fg_exp_l[0] = K(1.0);</div>
-<div class="line"><a name="l01860"></a><span class="lineno"> 1860</span> </div>
-<div class="line"><a name="l01861"></a><span class="lineno"> 1861</span> <span class="keywordflow">for</span> (l = 1; l < tmp2; l++)</div>
-<div class="line"><a name="l01862"></a><span class="lineno"> 1862</span> {</div>
-<div class="line"><a name="l01863"></a><span class="lineno"> 1863</span> fg_exp_b2 = fg_exp_b1*fg_exp_b0;</div>
-<div class="line"><a name="l01864"></a><span class="lineno"> 1864</span> fg_exp_b1 *= fg_exp_b0_sq;</div>
-<div class="line"><a name="l01865"></a><span class="lineno"> 1865</span> fg_exp_l[l] = fg_exp_l[l-1]*fg_exp_b2;</div>
-<div class="line"><a name="l01866"></a><span class="lineno"> 1866</span> }</div>
-<div class="line"><a name="l01867"></a><span class="lineno"> 1867</span> }</div>
-<div class="line"><a name="l01868"></a><span class="lineno"> 1868</span> </div>
-<div class="line"><a name="l01869"></a><span class="lineno"> 1869</span> </div>
-<div class="line"><a name="l01870"></a><span class="lineno"> 1870</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_trafo_1d_compute(C *fj, <span class="keyword">const</span> C *g,<span class="keyword">const</span> R *psij_const,</div>
-<div class="line"><a name="l01871"></a><span class="lineno"> 1871</span> <span class="keyword">const</span> R *xj, <span class="keyword">const</span> <span class="keywordtype">int</span> n, <span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l01872"></a><span class="lineno"> 1872</span> {</div>
-<div class="line"><a name="l01873"></a><span class="lineno"> 1873</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l01874"></a><span class="lineno"> 1874</span> <span class="keyword">const</span> C *gj;</div>
-<div class="line"><a name="l01875"></a><span class="lineno"> 1875</span> <span class="keyword">const</span> R *psij;</div>
-<div class="line"><a name="l01876"></a><span class="lineno"> 1876</span> psij = psij_const;</div>
-<div class="line"><a name="l01877"></a><span class="lineno"> 1877</span> </div>
-<div class="line"><a name="l01878"></a><span class="lineno"> 1878</span> nfft_uo2(&u, &o, *xj, n, m);</div>
-<div class="line"><a name="l01879"></a><span class="lineno"> 1879</span> </div>
-<div class="line"><a name="l01880"></a><span class="lineno"> 1880</span> <span class="keywordflow">if</span> (u < o)</div>
-<div class="line"><a name="l01881"></a><span class="lineno"> 1881</span> {</div>
-<div class="line"><a name="l01882"></a><span class="lineno"> 1882</span> <span class="keywordflow">for</span> (l = 1, gj = g + u, (*fj) = (*psij++) * (*gj++); l <= 2*m+1; l++)</div>
-<div class="line"><a name="l01883"></a><span class="lineno"> 1883</span> (*fj) += (*psij++) * (*gj++);</div>
-<div class="line"><a name="l01884"></a><span class="lineno"> 1884</span> }</div>
-<div class="line"><a name="l01885"></a><span class="lineno"> 1885</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01886"></a><span class="lineno"> 1886</span> {</div>
-<div class="line"><a name="l01887"></a><span class="lineno"> 1887</span> <span class="keywordflow">for</span> (l = 1, gj = g + u, (*fj) = (*psij++) * (*gj++); l < 2*m+1 - o; l++)</div>
-<div class="line"><a name="l01888"></a><span class="lineno"> 1888</span> (*fj) += (*psij++) * (*gj++);</div>
-<div class="line"><a name="l01889"></a><span class="lineno"> 1889</span> <span class="keywordflow">for</span> (l = 0, gj = g; l <= o; l++)</div>
-<div class="line"><a name="l01890"></a><span class="lineno"> 1890</span> (*fj) += (*psij++) * (*gj++);</div>
-<div class="line"><a name="l01891"></a><span class="lineno"> 1891</span> }</div>
-<div class="line"><a name="l01892"></a><span class="lineno"> 1892</span> }</div>
-<div class="line"><a name="l01893"></a><span class="lineno"> 1893</span> </div>
-<div class="line"><a name="l01894"></a><span class="lineno"> 1894</span> <span class="preprocessor">#ifndef _OPENMP</span></div>
-<div class="line"><a name="l01895"></a><span class="lineno"> 1895</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_1d_compute_serial(<span class="keyword">const</span> C *fj, C *g,<span class="keyword">const</span> R *psij_const,</div>
-<div class="line"><a name="l01896"></a><span class="lineno"> 1896</span> <span class="keyword">const</span> R *xj, <span class="keyword">const</span> <span class="keywordtype">int</span> n, <span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l01897"></a><span class="lineno"> 1897</span> {</div>
-<div class="line"><a name="l01898"></a><span class="lineno"> 1898</span> <span class="keywordtype">int</span> u,o,l;</div>
-<div class="line"><a name="l01899"></a><span class="lineno"> 1899</span> C *gj;</div>
-<div class="line"><a name="l01900"></a><span class="lineno"> 1900</span> <span class="keyword">const</span> R *psij;</div>
-<div class="line"><a name="l01901"></a><span class="lineno"> 1901</span> psij=psij_const;</div>
-<div class="line"><a name="l01902"></a><span class="lineno"> 1902</span> </div>
-<div class="line"><a name="l01903"></a><span class="lineno"> 1903</span> nfft_uo2(&u,&o,*xj, n, m);</div>
-<div class="line"><a name="l01904"></a><span class="lineno"> 1904</span> </div>
-<div class="line"><a name="l01905"></a><span class="lineno"> 1905</span> <span class="keywordflow">if</span>(u<o)</div>
-<div class="line"><a name="l01906"></a><span class="lineno"> 1906</span> {</div>
-<div class="line"><a name="l01907"></a><span class="lineno"> 1907</span> <span class="keywordflow">for</span> (l = 0, gj = g+u; l <= 2*m+1; l++)</div>
-<div class="line"><a name="l01908"></a><span class="lineno"> 1908</span> (*gj++) += (*psij++) * (*fj);</div>
-<div class="line"><a name="l01909"></a><span class="lineno"> 1909</span> }</div>
-<div class="line"><a name="l01910"></a><span class="lineno"> 1910</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01911"></a><span class="lineno"> 1911</span> {</div>
-<div class="line"><a name="l01912"></a><span class="lineno"> 1912</span> <span class="keywordflow">for</span> (l = 0, gj = g+u; l < 2*m+1-o; l++)</div>
-<div class="line"><a name="l01913"></a><span class="lineno"> 1913</span> (*gj++) += (*psij++) * (*fj);</div>
-<div class="line"><a name="l01914"></a><span class="lineno"> 1914</span> <span class="keywordflow">for</span> (l = 0, gj = g; l <= o; l++)</div>
-<div class="line"><a name="l01915"></a><span class="lineno"> 1915</span> (*gj++) += (*psij++) * (*fj);</div>
-<div class="line"><a name="l01916"></a><span class="lineno"> 1916</span> }</div>
-<div class="line"><a name="l01917"></a><span class="lineno"> 1917</span> }</div>
-<div class="line"><a name="l01918"></a><span class="lineno"> 1918</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01919"></a><span class="lineno"> 1919</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01920"></a><span class="lineno"> 1920</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01921"></a><span class="lineno"> 1921</span> <span class="preprocessor"></span><span class="comment">/* adjoint NFFT one-dimensional case with OpenMP atomic operations */</span></div>
-<div class="line"><a name="l01922"></a><span class="lineno"> 1922</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_1d_compute_omp_atomic(<span class="keyword">const</span> C f, C *g,<span class="keyword">const</span> R *psij_const,</div>
-<div class="line"><a name="l01923"></a><span class="lineno"> 1923</span> <span class="keyword">const</span> R *xj, <span class="keyword">const</span> <span class="keywordtype">int</span> n, <span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l01924"></a><span class="lineno"> 1924</span> {</div>
-<div class="line"><a name="l01925"></a><span class="lineno"> 1925</span> <span class="keywordtype">int</span> u,o,l;</div>
-<div class="line"><a name="l01926"></a><span class="lineno"> 1926</span> C *gj;</div>
-<div class="line"><a name="l01927"></a><span class="lineno"> 1927</span> <span class="keywordtype">int</span> index_temp[2*m+2];</div>
-<div class="line"><a name="l01928"></a><span class="lineno"> 1928</span> </div>
-<div class="line"><a name="l01929"></a><span class="lineno"> 1929</span> nfft_uo2(&u,&o,*xj, n, m);</div>
-<div class="line"><a name="l01930"></a><span class="lineno"> 1930</span> </div>
-<div class="line"><a name="l01931"></a><span class="lineno"> 1931</span> <span class="keywordflow">for</span> (l=0; l<=2*m+1; l++)</div>
-<div class="line"><a name="l01932"></a><span class="lineno"> 1932</span> index_temp[l] = (l+u)%n;</div>
-<div class="line"><a name="l01933"></a><span class="lineno"> 1933</span> </div>
-<div class="line"><a name="l01934"></a><span class="lineno"> 1934</span> <span class="keywordflow">for</span> (l = 0, gj = g+u; l <= 2*m+1; l++)</div>
-<div class="line"><a name="l01935"></a><span class="lineno"> 1935</span> {</div>
-<div class="line"><a name="l01936"></a><span class="lineno"> 1936</span> <span class="keywordtype">int</span> i = index_temp[l];</div>
-<div class="line"><a name="l01937"></a><span class="lineno"> 1937</span> C *lhs = g+i;</div>
-<div class="line"><a name="l01938"></a><span class="lineno"> 1938</span> R *lhs_real = (R*)lhs;</div>
-<div class="line"><a name="l01939"></a><span class="lineno"> 1939</span> C val = psij_const[l] * f;</div>
-<div class="line"><a name="l01940"></a><span class="lineno"> 1940</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01941"></a><span class="lineno"> 1941</span> <span class="preprocessor"></span> lhs_real[0] += creal(val);</div>
-<div class="line"><a name="l01942"></a><span class="lineno"> 1942</span> </div>
-<div class="line"><a name="l01943"></a><span class="lineno"> 1943</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l01944"></a><span class="lineno"> 1944</span> <span class="preprocessor"></span> lhs_real[1] += cimag(val);</div>
-<div class="line"><a name="l01945"></a><span class="lineno"> 1945</span> }</div>
-<div class="line"><a name="l01946"></a><span class="lineno"> 1946</span> }</div>
-<div class="line"><a name="l01947"></a><span class="lineno"> 1947</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01948"></a><span class="lineno"> 1948</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01949"></a><span class="lineno"> 1949</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01950"></a><span class="lineno"> 1950</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01965"></a><span class="lineno"> 1965</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_1d_compute_omp_blockwise(<span class="keyword">const</span> C f, C *g,<span class="keyword">const</span> R *psij_const,</div>
-<div class="line"><a name="l01966"></a><span class="lineno"> 1966</span> <span class="keyword">const</span> R *xj, <span class="keyword">const</span> <span class="keywordtype">int</span> n, <span class="keyword">const</span> <span class="keywordtype">int</span> m, <span class="keyword">const</span> <span class="keywordtype">int</span> my_u0, <span class="keyword">const</span> <span class="keywordtype">int</span> my_o0)</div>
-<div class="line"><a name="l01967"></a><span class="lineno"> 1967</span> {</div>
-<div class="line"><a name="l01968"></a><span class="lineno"> 1968</span> <span class="keywordtype">int</span> ar_u,ar_o,l;</div>
-<div class="line"><a name="l01969"></a><span class="lineno"> 1969</span> </div>
-<div class="line"><a name="l01970"></a><span class="lineno"> 1970</span> nfft_uo2(&ar_u,&ar_o,*xj, n, m);</div>
-<div class="line"><a name="l01971"></a><span class="lineno"> 1971</span> </div>
-<div class="line"><a name="l01972"></a><span class="lineno"> 1972</span> <span class="keywordflow">if</span>(ar_u<ar_o)</div>
-<div class="line"><a name="l01973"></a><span class="lineno"> 1973</span> {</div>
-<div class="line"><a name="l01974"></a><span class="lineno"> 1974</span> <span class="keywordtype">int</span> u = MAX(my_u0,ar_u);</div>
-<div class="line"><a name="l01975"></a><span class="lineno"> 1975</span> <span class="keywordtype">int</span> o = MIN(my_o0,ar_o);</div>
-<div class="line"><a name="l01976"></a><span class="lineno"> 1976</span> <span class="keywordtype">int</span> offset_psij = u-ar_u;</div>
-<div class="line"><a name="l01977"></a><span class="lineno"> 1977</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l01978"></a><span class="lineno"> 1978</span> <span class="preprocessor"></span> assert(offset_psij >= 0);</div>
-<div class="line"><a name="l01979"></a><span class="lineno"> 1979</span> assert(o-u <= 2*m+1);</div>
-<div class="line"><a name="l01980"></a><span class="lineno"> 1980</span> assert(offset_psij+o-u <= 2*m+1);</div>
-<div class="line"><a name="l01981"></a><span class="lineno"> 1981</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01982"></a><span class="lineno"> 1982</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01983"></a><span class="lineno"> 1983</span> <span class="keywordflow">for</span> (l = 0; l <= o-u; l++)</div>
-<div class="line"><a name="l01984"></a><span class="lineno"> 1984</span> g[u+l] += psij_const[offset_psij+l] * f;</div>
-<div class="line"><a name="l01985"></a><span class="lineno"> 1985</span> }</div>
-<div class="line"><a name="l01986"></a><span class="lineno"> 1986</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01987"></a><span class="lineno"> 1987</span> {</div>
-<div class="line"><a name="l01988"></a><span class="lineno"> 1988</span> <span class="keywordtype">int</span> u = MAX(my_u0,ar_u);</div>
-<div class="line"><a name="l01989"></a><span class="lineno"> 1989</span> <span class="keywordtype">int</span> o = my_o0;</div>
-<div class="line"><a name="l01990"></a><span class="lineno"> 1990</span> <span class="keywordtype">int</span> offset_psij = u-ar_u;</div>
-<div class="line"><a name="l01991"></a><span class="lineno"> 1991</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l01992"></a><span class="lineno"> 1992</span> <span class="preprocessor"></span> assert(offset_psij >= 0);</div>
-<div class="line"><a name="l01993"></a><span class="lineno"> 1993</span> assert(o-u <= 2*m+1);</div>
-<div class="line"><a name="l01994"></a><span class="lineno"> 1994</span> assert(offset_psij+o-u <= 2*m+1);</div>
-<div class="line"><a name="l01995"></a><span class="lineno"> 1995</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01996"></a><span class="lineno"> 1996</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01997"></a><span class="lineno"> 1997</span> <span class="keywordflow">for</span> (l = 0; l <= o-u; l++)</div>
-<div class="line"><a name="l01998"></a><span class="lineno"> 1998</span> g[u+l] += psij_const[offset_psij+l] * f;</div>
-<div class="line"><a name="l01999"></a><span class="lineno"> 1999</span> </div>
-<div class="line"><a name="l02000"></a><span class="lineno"> 2000</span> u = my_u0;</div>
-<div class="line"><a name="l02001"></a><span class="lineno"> 2001</span> o = MIN(my_o0,ar_o);</div>
-<div class="line"><a name="l02002"></a><span class="lineno"> 2002</span> offset_psij += my_u0-ar_u+n;</div>
-<div class="line"><a name="l02003"></a><span class="lineno"> 2003</span> </div>
-<div class="line"><a name="l02004"></a><span class="lineno"> 2004</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l02005"></a><span class="lineno"> 2005</span> <span class="preprocessor"></span> <span class="keywordflow">if</span> (u<=o)</div>
-<div class="line"><a name="l02006"></a><span class="lineno"> 2006</span> {</div>
-<div class="line"><a name="l02007"></a><span class="lineno"> 2007</span> assert(o-u <= 2*m+1);</div>
-<div class="line"><a name="l02008"></a><span class="lineno"> 2008</span> <span class="keywordflow">if</span> (offset_psij+o-u > 2*m+1)</div>
-<div class="line"><a name="l02009"></a><span class="lineno"> 2009</span> {</div>
-<div class="line"><a name="l02010"></a><span class="lineno"> 2010</span> fprintf(stderr, <span class="stringliteral">"ERR: %d %d %d %d %d %d %d\n"</span>, ar_u, ar_o, my_u0, my_o0, u, o, offset_psij);</div>
-<div class="line"><a name="l02011"></a><span class="lineno"> 2011</span> }</div>
-<div class="line"><a name="l02012"></a><span class="lineno"> 2012</span> assert(offset_psij+o-u <= 2*m+1);</div>
-<div class="line"><a name="l02013"></a><span class="lineno"> 2013</span> }</div>
-<div class="line"><a name="l02014"></a><span class="lineno"> 2014</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02015"></a><span class="lineno"> 2015</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (l = 0; l <= o-u; l++)</div>
-<div class="line"><a name="l02016"></a><span class="lineno"> 2016</span> g[u+l] += psij_const[offset_psij+l] * f;</div>
-<div class="line"><a name="l02017"></a><span class="lineno"> 2017</span> }</div>
-<div class="line"><a name="l02018"></a><span class="lineno"> 2018</span> }</div>
-<div class="line"><a name="l02019"></a><span class="lineno"> 2019</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02020"></a><span class="lineno"> 2020</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02021"></a><span class="lineno"> 2021</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_trafo_1d_B(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l02022"></a><span class="lineno"> 2022</span> {</div>
-<div class="line"><a name="l02023"></a><span class="lineno"> 2023</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0], M = ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>, m = ths-><a class="cod [...]
-<div class="line"><a name="l02024"></a><span class="lineno"> 2024</span> <span class="keyword">const</span> C *g = (C*)ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>;</div>
-<div class="line"><a name="l02025"></a><span class="lineno"> 2025</span> </div>
-<div class="line"><a name="l02026"></a><span class="lineno"> 2026</span> if (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l02027"></a><span class="lineno"> 2027</span> {</div>
-<div class="line"><a name="l02028"></a><span class="lineno"> 2028</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02029"></a><span class="lineno"> 2029</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02030"></a><span class="lineno"> 2030</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02031"></a><span class="lineno"> 2031</span> {</div>
-<div class="line"><a name="l02032"></a><span class="lineno"> 2032</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l02033"></a><span class="lineno"> 2033</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02034"></a><span class="lineno"> 2034</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = K(0.0);</div>
-<div class="line"><a name="l02035"></a><span class="lineno"> 2035</span> <span class="keywordflow">for</span> (l = 0; l < m2p2; l++)</div>
-<div class="line"><a name="l02036"></a><span class="lineno"> 2036</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[j*m2p2+l] * g[ths-><a class="code" href="structnfft__ [...]
-<div class="line"><a name="l02037"></a><span class="lineno"> 2037</span> }</div>
-<div class="line"><a name="l02038"></a><span class="lineno"> 2038</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02039"></a><span class="lineno"> 2039</span> } <span class="comment">/* if(PRE_FULL_PSI) */</span></div>
-<div class="line"><a name="l02040"></a><span class="lineno"> 2040</span> </div>
-<div class="line"><a name="l02041"></a><span class="lineno"> 2041</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l02042"></a><span class="lineno"> 2042</span> {</div>
-<div class="line"><a name="l02043"></a><span class="lineno"> 2043</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02044"></a><span class="lineno"> 2044</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02045"></a><span class="lineno"> 2045</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02046"></a><span class="lineno"> 2046</span> {</div>
-<div class="line"><a name="l02047"></a><span class="lineno"> 2047</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02048"></a><span class="lineno"> 2048</span> nfft_trafo_1d_compute(&ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a> + j * (2 * m + 2),</div>
-<div class="line"><a name="l02049"></a><span class="lineno"> 2049</span> &ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j], n, m);</div>
-<div class="line"><a name="l02050"></a><span class="lineno"> 2050</span> }</div>
-<div class="line"><a name="l02051"></a><span class="lineno"> 2051</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02052"></a><span class="lineno"> 2052</span> } <span class="comment">/* if(PRE_PSI) */</span></div>
-<div class="line"><a name="l02053"></a><span class="lineno"> 2053</span> </div>
-<div class="line"><a name="l02054"></a><span class="lineno"> 2054</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l02055"></a><span class="lineno"> 2055</span> {</div>
-<div class="line"><a name="l02056"></a><span class="lineno"> 2056</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02057"></a><span class="lineno"> 2057</span> R fg_exp_l[m2p2];</div>
-<div class="line"><a name="l02058"></a><span class="lineno"> 2058</span> </div>
-<div class="line"><a name="l02059"></a><span class="lineno"> 2059</span> nfft_1d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l02060"></a><span class="lineno"> 2060</span> </div>
-<div class="line"><a name="l02061"></a><span class="lineno"> 2061</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02062"></a><span class="lineno"> 2062</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02063"></a><span class="lineno"> 2063</span> {</div>
-<div class="line"><a name="l02064"></a><span class="lineno"> 2064</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02065"></a><span class="lineno"> 2065</span> <span class="keyword">const</span> R fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2 * j], fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomp [...]
-<div class="line"><a name="l02066"></a><span class="lineno"> 2066</span> R fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l02067"></a><span class="lineno"> 2067</span> R psij_const[m2p2];</div>
-<div class="line"><a name="l02068"></a><span class="lineno"> 2068</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l02069"></a><span class="lineno"> 2069</span> </div>
-<div class="line"><a name="l02070"></a><span class="lineno"> 2070</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l02071"></a><span class="lineno"> 2071</span> </div>
-<div class="line"><a name="l02072"></a><span class="lineno"> 2072</span> <span class="keywordflow">for</span> (l = 1; l < m2p2; l++)</div>
-<div class="line"><a name="l02073"></a><span class="lineno"> 2073</span> {</div>
-<div class="line"><a name="l02074"></a><span class="lineno"> 2074</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l02075"></a><span class="lineno"> 2075</span> psij_const[l] = fg_psij0 * fg_psij2 * fg_exp_l[l];</div>
-<div class="line"><a name="l02076"></a><span class="lineno"> 2076</span> }</div>
-<div class="line"><a name="l02077"></a><span class="lineno"> 2077</span> </div>
-<div class="line"><a name="l02078"></a><span class="lineno"> 2078</span> nfft_trafo_1d_compute(&ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, &ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j], n, m);</div>
-<div class="line"><a name="l02079"></a><span class="lineno"> 2079</span> }</div>
-<div class="line"><a name="l02080"></a><span class="lineno"> 2080</span> </div>
-<div class="line"><a name="l02081"></a><span class="lineno"> 2081</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02082"></a><span class="lineno"> 2082</span> } <span class="comment">/* if(PRE_FG_PSI) */</span></div>
-<div class="line"><a name="l02083"></a><span class="lineno"> 2083</span> </div>
-<div class="line"><a name="l02084"></a><span class="lineno"> 2084</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FG_PSI)</div>
-<div class="line"><a name="l02085"></a><span class="lineno"> 2085</span> {</div>
-<div class="line"><a name="l02086"></a><span class="lineno"> 2086</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02087"></a><span class="lineno"> 2087</span> R fg_exp_l[m2p2];</div>
-<div class="line"><a name="l02088"></a><span class="lineno"> 2088</span> </div>
-<div class="line"><a name="l02089"></a><span class="lineno"> 2089</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l02090"></a><span class="lineno"> 2090</span> </div>
-<div class="line"><a name="l02091"></a><span class="lineno"> 2091</span> nfft_1d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l02092"></a><span class="lineno"> 2092</span> </div>
-<div class="line"><a name="l02093"></a><span class="lineno"> 2093</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02094"></a><span class="lineno"> 2094</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02095"></a><span class="lineno"> 2095</span> {</div>
-<div class="line"><a name="l02096"></a><span class="lineno"> 2096</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02097"></a><span class="lineno"> 2097</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l02098"></a><span class="lineno"> 2098</span> R fg_psij0, fg_psij1, fg_psij2;</div>
-<div class="line"><a name="l02099"></a><span class="lineno"> 2099</span> R psij_const[m2p2];</div>
-<div class="line"><a name="l02100"></a><span class="lineno"> 2100</span> </div>
-<div class="line"><a name="l02101"></a><span class="lineno"> 2101</span> nfft_uo(ths, (<span class="keywordtype">int</span>)j, &u, &o, 0);</div>
-<div class="line"><a name="l02102"></a><span class="lineno"> 2102</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j]-((R)u)/n,0));</div>
-<div class="line"><a name="l02103"></a><span class="lineno"> 2103</span> fg_psij1 = EXP(K(2.0) * (n * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] - u) / ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l02104"></a><span class="lineno"> 2104</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l02105"></a><span class="lineno"> 2105</span> </div>
-<div class="line"><a name="l02106"></a><span class="lineno"> 2106</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l02107"></a><span class="lineno"> 2107</span> </div>
-<div class="line"><a name="l02108"></a><span class="lineno"> 2108</span> <span class="keywordflow">for</span> (l = 1; l < m2p2; l++)</div>
-<div class="line"><a name="l02109"></a><span class="lineno"> 2109</span> {</div>
-<div class="line"><a name="l02110"></a><span class="lineno"> 2110</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l02111"></a><span class="lineno"> 2111</span> psij_const[l] = fg_psij0 * fg_psij2 * fg_exp_l[l];</div>
-<div class="line"><a name="l02112"></a><span class="lineno"> 2112</span> }</div>
-<div class="line"><a name="l02113"></a><span class="lineno"> 2113</span> </div>
-<div class="line"><a name="l02114"></a><span class="lineno"> 2114</span> nfft_trafo_1d_compute(&ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, &ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j], n, m);</div>
-<div class="line"><a name="l02115"></a><span class="lineno"> 2115</span> }</div>
-<div class="line"><a name="l02116"></a><span class="lineno"> 2116</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02117"></a><span class="lineno"> 2117</span> } <span class="comment">/* if(FG_PSI) */</span></div>
-<div class="line"><a name="l02118"></a><span class="lineno"> 2118</span> </div>
-<div class="line"><a name="l02119"></a><span class="lineno"> 2119</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l02120"></a><span class="lineno"> 2120</span> {</div>
-<div class="line"><a name="l02121"></a><span class="lineno"> 2121</span> <span class="keyword">const</span> <span class="keywordtype">int</span> K = ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>, ip_s = K / (m + 2);</div>
-<div class="line"><a name="l02122"></a><span class="lineno"> 2122</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02123"></a><span class="lineno"> 2123</span> </div>
-<div class="line"><a name="l02124"></a><span class="lineno"> 2124</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l02125"></a><span class="lineno"> 2125</span> </div>
-<div class="line"><a name="l02126"></a><span class="lineno"> 2126</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02127"></a><span class="lineno"> 2127</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02128"></a><span class="lineno"> 2128</span> {</div>
-<div class="line"><a name="l02129"></a><span class="lineno"> 2129</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l02130"></a><span class="lineno"> 2130</span> R ip_y, ip_w;</div>
-<div class="line"><a name="l02131"></a><span class="lineno"> 2131</span> <span class="keywordtype">int</span> ip_u;</div>
-<div class="line"><a name="l02132"></a><span class="lineno"> 2132</span> R psij_const[m2p2];</div>
-<div class="line"><a name="l02133"></a><span class="lineno"> 2133</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02134"></a><span class="lineno"> 2134</span> </div>
-<div class="line"><a name="l02135"></a><span class="lineno"> 2135</span> nfft_uo(ths, (<span class="keywordtype">int</span>)j, &u, &o, 0);</div>
-<div class="line"><a name="l02136"></a><span class="lineno"> 2136</span> </div>
-<div class="line"><a name="l02137"></a><span class="lineno"> 2137</span> ip_y = FABS(n * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] - u) * ((R)ip_s);</div>
-<div class="line"><a name="l02138"></a><span class="lineno"> 2138</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l02139"></a><span class="lineno"> 2139</span> ip_w = ip_y - ip_u;</div>
-<div class="line"><a name="l02140"></a><span class="lineno"> 2140</span> </div>
-<div class="line"><a name="l02141"></a><span class="lineno"> 2141</span> <span class="keywordflow">for</span> (l = 0; l < m2p2; l++)</div>
-<div class="line"><a name="l02142"></a><span class="lineno"> 2142</span> psij_const[l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s)] * (K(1.0) - ip_w)</div>
-<div class="line"><a name="l02143"></a><span class="lineno"> 2143</span> + ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s+1)] * (ip_w);</div>
-<div class="line"><a name="l02144"></a><span class="lineno"> 2144</span> </div>
-<div class="line"><a name="l02145"></a><span class="lineno"> 2145</span> nfft_trafo_1d_compute(&ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, &ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j], n, m);</div>
-<div class="line"><a name="l02146"></a><span class="lineno"> 2146</span> }</div>
-<div class="line"><a name="l02147"></a><span class="lineno"> 2147</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02148"></a><span class="lineno"> 2148</span> } <span class="comment">/* if(PRE_LIN_PSI) */</span></div>
-<div class="line"><a name="l02149"></a><span class="lineno"> 2149</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l02150"></a><span class="lineno"> 2150</span> {</div>
-<div class="line"><a name="l02151"></a><span class="lineno"> 2151</span> <span class="comment">/* no precomputed psi at all */</span></div>
-<div class="line"><a name="l02152"></a><span class="lineno"> 2152</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02153"></a><span class="lineno"> 2153</span> </div>
-<div class="line"><a name="l02154"></a><span class="lineno"> 2154</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l02155"></a><span class="lineno"> 2155</span> </div>
-<div class="line"><a name="l02156"></a><span class="lineno"> 2156</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02157"></a><span class="lineno"> 2157</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02158"></a><span class="lineno"> 2158</span> {</div>
-<div class="line"><a name="l02159"></a><span class="lineno"> 2159</span> R psij_const[m2p2];</div>
-<div class="line"><a name="l02160"></a><span class="lineno"> 2160</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l02161"></a><span class="lineno"> 2161</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02162"></a><span class="lineno"> 2162</span> </div>
-<div class="line"><a name="l02163"></a><span class="lineno"> 2163</span> nfft_uo(ths, (<span class="keywordtype">int</span>)j, &u, &o, 0);</div>
-<div class="line"><a name="l02164"></a><span class="lineno"> 2164</span> </div>
-<div class="line"><a name="l02165"></a><span class="lineno"> 2165</span> <span class="keywordflow">for</span> (l = 0; l < m2p2; l++)</div>
-<div class="line"><a name="l02166"></a><span class="lineno"> 2166</span> psij_const[l] = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j]-((R)((u+l)))/n,0));</div>
-<div class="line"><a name="l02167"></a><span class="lineno"> 2167</span> </div>
-<div class="line"><a name="l02168"></a><span class="lineno"> 2168</span> nfft_trafo_1d_compute(&ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, &ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j], n, m);</div>
-<div class="line"><a name="l02169"></a><span class="lineno"> 2169</span> }</div>
-<div class="line"><a name="l02170"></a><span class="lineno"> 2170</span> }</div>
-<div class="line"><a name="l02171"></a><span class="lineno"> 2171</span> }</div>
-<div class="line"><a name="l02172"></a><span class="lineno"> 2172</span> </div>
-<div class="line"><a name="l02173"></a><span class="lineno"> 2173</span> </div>
-<div class="line"><a name="l02174"></a><span class="lineno"> 2174</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l02175"></a><span class="lineno"> 2175</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_ASSERT_A \</span></div>
-<div class="line"><a name="l02176"></a><span class="lineno"> 2176</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l02177"></a><span class="lineno"> 2177</span> <span class="preprocessor"> assert(ar_x[2*k] >= min_u_a || k == M-1); \</span></div>
-<div class="line"><a name="l02178"></a><span class="lineno"> 2178</span> <span class="preprocessor"> if (k > 0) \</span></div>
-<div class="line"><a name="l02179"></a><span class="lineno"> 2179</span> <span class="preprocessor"> assert(ar_x[2*k-2] < min_u_a); \</span></div>
-<div class="line"><a name="l02180"></a><span class="lineno"> 2180</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l02181"></a><span class="lineno"> 2181</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l02182"></a><span class="lineno"> 2182</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_ASSERT_A</span></div>
-<div class="line"><a name="l02183"></a><span class="lineno"> 2183</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02184"></a><span class="lineno"> 2184</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02185"></a><span class="lineno"> 2185</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l02186"></a><span class="lineno"> 2186</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_ASSERT_B \</span></div>
-<div class="line"><a name="l02187"></a><span class="lineno"> 2187</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l02188"></a><span class="lineno"> 2188</span> <span class="preprocessor"> assert(ar_x[2*k] >= min_u_b || k == M-1); \</span></div>
-<div class="line"><a name="l02189"></a><span class="lineno"> 2189</span> <span class="preprocessor"> if (k > 0) \</span></div>
-<div class="line"><a name="l02190"></a><span class="lineno"> 2190</span> <span class="preprocessor"> assert(ar_x[2*k-2] < min_u_b); \</span></div>
-<div class="line"><a name="l02191"></a><span class="lineno"> 2191</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l02192"></a><span class="lineno"> 2192</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l02193"></a><span class="lineno"> 2193</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_ASSERT_B</span></div>
-<div class="line"><a name="l02194"></a><span class="lineno"> 2194</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02195"></a><span class="lineno"> 2195</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02196"></a><span class="lineno"> 2196</span> <span class="preprocessor">#define MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_COMPUTE_PRE_PSI \</span></div>
-<div class="line"><a name="l02197"></a><span class="lineno"> 2197</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l02198"></a><span class="lineno"> 2198</span> <span class="preprocessor"> nfft_adjoint_1d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l02199"></a><span class="lineno"> 2199</span> <span class="preprocessor"> ths->psi + j * (2 * m + 2), ths->x + j, n, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l02200"></a><span class="lineno"> 2200</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l02201"></a><span class="lineno"> 2201</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02202"></a><span class="lineno"> 2202</span> <span class="preprocessor">#define MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_COMPUTE_PRE_FG_PSI \</span></div>
-<div class="line"><a name="l02203"></a><span class="lineno"> 2203</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l02204"></a><span class="lineno"> 2204</span> <span class="preprocessor"> R psij_const[2 * m + 2]; \</span></div>
-<div class="line"><a name="l02205"></a><span class="lineno"> 2205</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l02206"></a><span class="lineno"> 2206</span> <span class="preprocessor"> R fg_psij0 = ths->psi[2 * j]; \</span></div>
-<div class="line"><a name="l02207"></a><span class="lineno"> 2207</span> <span class="preprocessor"> R fg_psij1 = ths->psi[2 * j + 1]; \</span></div>
-<div class="line"><a name="l02208"></a><span class="lineno"> 2208</span> <span class="preprocessor"> R fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l02209"></a><span class="lineno"> 2209</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02210"></a><span class="lineno"> 2210</span> <span class="preprocessor"> psij_const[0] = fg_psij0; \</span></div>
-<div class="line"><a name="l02211"></a><span class="lineno"> 2211</span> <span class="preprocessor"> for (l = 1; l <= 2 * m + 1; l++) \</span></div>
-<div class="line"><a name="l02212"></a><span class="lineno"> 2212</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l02213"></a><span class="lineno"> 2213</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l02214"></a><span class="lineno"> 2214</span> <span class="preprocessor"> psij_const[l] = fg_psij0 * fg_psij2 * fg_exp_l[l]; \</span></div>
-<div class="line"><a name="l02215"></a><span class="lineno"> 2215</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l02216"></a><span class="lineno"> 2216</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02217"></a><span class="lineno"> 2217</span> <span class="preprocessor"> nfft_adjoint_1d_compute_omp_blockwise(ths->f[j], g, psij_const, \</span></div>
-<div class="line"><a name="l02218"></a><span class="lineno"> 2218</span> <span class="preprocessor"> ths->x + j, n, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l02219"></a><span class="lineno"> 2219</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l02220"></a><span class="lineno"> 2220</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02221"></a><span class="lineno"> 2221</span> <span class="preprocessor">#define MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_COMPUTE_FG_PSI \</span></div>
-<div class="line"><a name="l02222"></a><span class="lineno"> 2222</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l02223"></a><span class="lineno"> 2223</span> <span class="preprocessor"> R psij_const[2 * m + 2]; \</span></div>
-<div class="line"><a name="l02224"></a><span class="lineno"> 2224</span> <span class="preprocessor"> R fg_psij0, fg_psij1, fg_psij2; \</span></div>
-<div class="line"><a name="l02225"></a><span class="lineno"> 2225</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l02226"></a><span class="lineno"> 2226</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02227"></a><span class="lineno"> 2227</span> <span class="preprocessor"> nfft_uo(ths, j, &u, &o, 0); \</span></div>
-<div class="line"><a name="l02228"></a><span class="lineno"> 2228</span> <span class="preprocessor"> fg_psij0 = (PHI(ths->x[j]-((R)u)/n,0)); \</span></div>
-<div class="line"><a name="l02229"></a><span class="lineno"> 2229</span> <span class="preprocessor"> fg_psij1 = EXP(K(2.0) * (n * (ths->x[j]) - u) / ths->b[0]); \</span></div>
-<div class="line"><a name="l02230"></a><span class="lineno"> 2230</span> <span class="preprocessor"> fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l02231"></a><span class="lineno"> 2231</span> <span class="preprocessor"> psij_const[0] = fg_psij0; \</span></div>
-<div class="line"><a name="l02232"></a><span class="lineno"> 2232</span> <span class="preprocessor"> for (l = 1; l <= 2 * m + 1; l++) \</span></div>
-<div class="line"><a name="l02233"></a><span class="lineno"> 2233</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l02234"></a><span class="lineno"> 2234</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l02235"></a><span class="lineno"> 2235</span> <span class="preprocessor"> psij_const[l] = fg_psij0 * fg_psij2 * fg_exp_l[l]; \</span></div>
-<div class="line"><a name="l02236"></a><span class="lineno"> 2236</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l02237"></a><span class="lineno"> 2237</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02238"></a><span class="lineno"> 2238</span> <span class="preprocessor"> nfft_adjoint_1d_compute_omp_blockwise(ths->f[j], g, psij_const, \</span></div>
-<div class="line"><a name="l02239"></a><span class="lineno"> 2239</span> <span class="preprocessor"> ths->x + j, n, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l02240"></a><span class="lineno"> 2240</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l02241"></a><span class="lineno"> 2241</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02242"></a><span class="lineno"> 2242</span> <span class="preprocessor">#define MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_COMPUTE_PRE_LIN_PSI \</span></div>
-<div class="line"><a name="l02243"></a><span class="lineno"> 2243</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l02244"></a><span class="lineno"> 2244</span> <span class="preprocessor"> R psij_const[2 * m + 2]; \</span></div>
-<div class="line"><a name="l02245"></a><span class="lineno"> 2245</span> <span class="preprocessor"> int ip_u; \</span></div>
-<div class="line"><a name="l02246"></a><span class="lineno"> 2246</span> <span class="preprocessor"> R ip_y, ip_w; \</span></div>
-<div class="line"><a name="l02247"></a><span class="lineno"> 2247</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l02248"></a><span class="lineno"> 2248</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02249"></a><span class="lineno"> 2249</span> <span class="preprocessor"> nfft_uo(ths, j, &u, &o, 0); \</span></div>
-<div class="line"><a name="l02250"></a><span class="lineno"> 2250</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02251"></a><span class="lineno"> 2251</span> <span class="preprocessor"> ip_y = FABS(n * ths->x[j] - u) * ((R)ip_s); \</span></div>
-<div class="line"><a name="l02252"></a><span class="lineno"> 2252</span> <span class="preprocessor"> ip_u = LRINT(FLOOR(ip_y)); \</span></div>
-<div class="line"><a name="l02253"></a><span class="lineno"> 2253</span> <span class="preprocessor"> ip_w = ip_y - ip_u; \</span></div>
-<div class="line"><a name="l02254"></a><span class="lineno"> 2254</span> <span class="preprocessor"> for (l = 0; l < 2 * m + 2; l++) \</span></div>
-<div class="line"><a name="l02255"></a><span class="lineno"> 2255</span> <span class="preprocessor"> psij_const[l] \</span></div>
-<div class="line"><a name="l02256"></a><span class="lineno"> 2256</span> <span class="preprocessor"> = ths->psi[ABS(ip_u-l*ip_s)] * (K(1.0) - ip_w) \</span></div>
-<div class="line"><a name="l02257"></a><span class="lineno"> 2257</span> <span class="preprocessor"> + ths->psi[ABS(ip_u-l*ip_s+1)] * (ip_w); \</span></div>
-<div class="line"><a name="l02258"></a><span class="lineno"> 2258</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02259"></a><span class="lineno"> 2259</span> <span class="preprocessor"> nfft_adjoint_1d_compute_omp_blockwise(ths->f[j], g, psij_const, \</span></div>
-<div class="line"><a name="l02260"></a><span class="lineno"> 2260</span> <span class="preprocessor"> ths->x + j, n, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l02261"></a><span class="lineno"> 2261</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l02262"></a><span class="lineno"> 2262</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02263"></a><span class="lineno"> 2263</span> <span class="preprocessor">#define MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_COMPUTE_NO_PSI \</span></div>
-<div class="line"><a name="l02264"></a><span class="lineno"> 2264</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l02265"></a><span class="lineno"> 2265</span> <span class="preprocessor"> R psij_const[2 * m + 2]; \</span></div>
-<div class="line"><a name="l02266"></a><span class="lineno"> 2266</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l02267"></a><span class="lineno"> 2267</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02268"></a><span class="lineno"> 2268</span> <span class="preprocessor"> nfft_uo(ths, j, &u, &o, 0); \</span></div>
-<div class="line"><a name="l02269"></a><span class="lineno"> 2269</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02270"></a><span class="lineno"> 2270</span> <span class="preprocessor"> for (l = 0; l <= 2 * m + 1; l++) \</span></div>
-<div class="line"><a name="l02271"></a><span class="lineno"> 2271</span> <span class="preprocessor"> psij_const[l] = (PHI(ths->x[j]-((R)((u+l)))/n,0)); \</span></div>
-<div class="line"><a name="l02272"></a><span class="lineno"> 2272</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02273"></a><span class="lineno"> 2273</span> <span class="preprocessor"> nfft_adjoint_1d_compute_omp_blockwise(ths->f[j], g, psij_const, \</span></div>
-<div class="line"><a name="l02274"></a><span class="lineno"> 2274</span> <span class="preprocessor"> ths->x + j, n, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l02275"></a><span class="lineno"> 2275</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l02276"></a><span class="lineno"> 2276</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02277"></a><span class="lineno"> 2277</span> <span class="preprocessor">#define MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE(whichone) \</span></div>
-<div class="line"><a name="l02278"></a><span class="lineno"> 2278</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l02279"></a><span class="lineno"> 2279</span> <span class="preprocessor"> if (ths->nfft_flags & NFFT_OMP_BLOCKWISE_ADJOINT) \</span></div>
-<div class="line"><a name="l02280"></a><span class="lineno"> 2280</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l02281"></a><span class="lineno"> 2281</span> <span class="preprocessor"> _Pragma("omp parallel private(k)") \</span></div>
-<div class="line"><a name="l02282"></a><span class="lineno"> 2282</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l02283"></a><span class="lineno"> 2283</span> <span class="preprocessor"> int my_u0, my_o0, min_u_a, max_u_a, min_u_b, max_u_b; \</span></div>
-<div class="line"><a name="l02284"></a><span class="lineno"> 2284</span> <span class="preprocessor"> int *ar_x = ths->index_x; \</span></div>
-<div class="line"><a name="l02285"></a><span class="lineno"> 2285</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02286"></a><span class="lineno"> 2286</span> <span class="preprocessor"> nfft_adjoint_B_omp_blockwise_init(&my_u0, &my_o0, &min_u_a, &max_u_a, \</span></div>
-<div class="line"><a name="l02287"></a><span class="lineno"> 2287</span> <span class="preprocessor"> &min_u_b, &max_u_b, 1, &n, m); \</span></div>
-<div class="line"><a name="l02288"></a><span class="lineno"> 2288</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02289"></a><span class="lineno"> 2289</span> <span class="preprocessor"> if (min_u_a != -1) \</span></div>
-<div class="line"><a name="l02290"></a><span class="lineno"> 2290</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l02291"></a><span class="lineno"> 2291</span> <span class="preprocessor"> k = index_x_binary_search(ar_x, M, min_u_a); \</span></div>
-<div class="line"><a name="l02292"></a><span class="lineno"> 2292</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02293"></a><span class="lineno"> 2293</span> <span class="preprocessor"> MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_ASSERT_A \</span></div>
-<div class="line"><a name="l02294"></a><span class="lineno"> 2294</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02295"></a><span class="lineno"> 2295</span> <span class="preprocessor"> while (k < M) \</span></div>
-<div class="line"><a name="l02296"></a><span class="lineno"> 2296</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l02297"></a><span class="lineno"> 2297</span> <span class="preprocessor"> int u_prod = ar_x[2*k]; \</span></div>
-<div class="line"><a name="l02298"></a><span class="lineno"> 2298</span> <span class="preprocessor"> int j = ar_x[2*k+1]; \</span></div>
-<div class="line"><a name="l02299"></a><span class="lineno"> 2299</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02300"></a><span class="lineno"> 2300</span> <span class="preprocessor"> if (u_prod < min_u_a || u_prod > max_u_a) \</span></div>
-<div class="line"><a name="l02301"></a><span class="lineno"> 2301</span> <span class="preprocessor"> break; \</span></div>
-<div class="line"><a name="l02302"></a><span class="lineno"> 2302</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02303"></a><span class="lineno"> 2303</span> <span class="preprocessor"> MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_COMPUTE_ ##whichone \</span></div>
-<div class="line"><a name="l02304"></a><span class="lineno"> 2304</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02305"></a><span class="lineno"> 2305</span> <span class="preprocessor"> k++; \</span></div>
-<div class="line"><a name="l02306"></a><span class="lineno"> 2306</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l02307"></a><span class="lineno"> 2307</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l02308"></a><span class="lineno"> 2308</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02309"></a><span class="lineno"> 2309</span> <span class="preprocessor"> if (min_u_b != -1) \</span></div>
-<div class="line"><a name="l02310"></a><span class="lineno"> 2310</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l02311"></a><span class="lineno"> 2311</span> <span class="preprocessor"> k = index_x_binary_search(ar_x, M, min_u_b); \</span></div>
-<div class="line"><a name="l02312"></a><span class="lineno"> 2312</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02313"></a><span class="lineno"> 2313</span> <span class="preprocessor"> MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_ASSERT_B \</span></div>
-<div class="line"><a name="l02314"></a><span class="lineno"> 2314</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02315"></a><span class="lineno"> 2315</span> <span class="preprocessor"> while (k < M) \</span></div>
-<div class="line"><a name="l02316"></a><span class="lineno"> 2316</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l02317"></a><span class="lineno"> 2317</span> <span class="preprocessor"> int u_prod = ar_x[2*k]; \</span></div>
-<div class="line"><a name="l02318"></a><span class="lineno"> 2318</span> <span class="preprocessor"> int j = ar_x[2*k+1]; \</span></div>
-<div class="line"><a name="l02319"></a><span class="lineno"> 2319</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02320"></a><span class="lineno"> 2320</span> <span class="preprocessor"> if (u_prod < min_u_b || u_prod > max_u_b) \</span></div>
-<div class="line"><a name="l02321"></a><span class="lineno"> 2321</span> <span class="preprocessor"> break; \</span></div>
-<div class="line"><a name="l02322"></a><span class="lineno"> 2322</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02323"></a><span class="lineno"> 2323</span> <span class="preprocessor"> MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE_COMPUTE_ ##whichone \</span></div>
-<div class="line"><a name="l02324"></a><span class="lineno"> 2324</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02325"></a><span class="lineno"> 2325</span> <span class="preprocessor"> k++; \</span></div>
-<div class="line"><a name="l02326"></a><span class="lineno"> 2326</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l02327"></a><span class="lineno"> 2327</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l02328"></a><span class="lineno"> 2328</span> <span class="preprocessor"> } </span><span class="comment">/* omp parallel */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02329"></a><span class="lineno"> 2329</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l02330"></a><span class="lineno"> 2330</span> <span class="preprocessor"> } </span><span class="comment">/* if(NFFT_OMP_BLOCKWISE_ADJOINT) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l02331"></a><span class="lineno"> 2331</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l02332"></a><span class="lineno"> 2332</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02333"></a><span class="lineno"> 2333</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_1d_B(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l02334"></a><span class="lineno"> 2334</span> {</div>
-<div class="line"><a name="l02335"></a><span class="lineno"> 2335</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0], M = ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>, m = ths-><a class="cod [...]
-<div class="line"><a name="l02336"></a><span class="lineno"> 2336</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02337"></a><span class="lineno"> 2337</span> C *g = (C*)ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>;</div>
-<div class="line"><a name="l02338"></a><span class="lineno"> 2338</span> </div>
-<div class="line"><a name="l02339"></a><span class="lineno"> 2339</span> memset(g,0,ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l02340"></a><span class="lineno"> 2340</span> </div>
-<div class="line"><a name="l02341"></a><span class="lineno"> 2341</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l02342"></a><span class="lineno"> 2342</span> {</div>
-<div class="line"><a name="l02343"></a><span class="lineno"> 2343</span> nfft_adjoint_B_compute_full_psi(g, ths-><a class="code" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_g</a>, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>, ths-><a class="code" href= [...]
-<div class="line"><a name="l02344"></a><span class="lineno"> 2344</span> 1, ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>, m, ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a>, ths-><a cl [...]
-<div class="line"><a name="l02345"></a><span class="lineno"> 2345</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02346"></a><span class="lineno"> 2346</span> } <span class="comment">/* if(PRE_FULL_PSI) */</span></div>
-<div class="line"><a name="l02347"></a><span class="lineno"> 2347</span> </div>
-<div class="line"><a name="l02348"></a><span class="lineno"> 2348</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l02349"></a><span class="lineno"> 2349</span> {</div>
-<div class="line"><a name="l02350"></a><span class="lineno"> 2350</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02351"></a><span class="lineno"> 2351</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE(PRE_PSI)</div>
-<div class="line"><a name="l02352"></a><span class="lineno"> 2352</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02353"></a><span class="lineno"> 2353</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02354"></a><span class="lineno"> 2354</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02355"></a><span class="lineno"> 2355</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02356"></a><span class="lineno"> 2356</span> {</div>
-<div class="line"><a name="l02357"></a><span class="lineno"> 2357</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02358"></a><span class="lineno"> 2358</span> #ifdef _OPENMP</div>
-<div class="line"><a name="l02359"></a><span class="lineno"> 2359</span> nfft_adjoint_1d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a> + j * (2 * m + 2), ths [...]
-<div class="line"><a name="l02360"></a><span class="lineno"> 2360</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l02361"></a><span class="lineno"> 2361</span> <span class="preprocessor"></span> nfft_adjoint_1d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> + j, g, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme." [...]
-<div class="line"><a name="l02362"></a><span class="lineno"> 2362</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02363"></a><span class="lineno"> 2363</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l02364"></a><span class="lineno"> 2364</span> </div>
-<div class="line"><a name="l02365"></a><span class="lineno"> 2365</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02366"></a><span class="lineno"> 2366</span> } <span class="comment">/* if(PRE_PSI) */</span></div>
-<div class="line"><a name="l02367"></a><span class="lineno"> 2367</span> </div>
-<div class="line"><a name="l02368"></a><span class="lineno"> 2368</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l02369"></a><span class="lineno"> 2369</span> {</div>
-<div class="line"><a name="l02370"></a><span class="lineno"> 2370</span> R fg_exp_l[2 * m + 2];</div>
-<div class="line"><a name="l02371"></a><span class="lineno"> 2371</span> </div>
-<div class="line"><a name="l02372"></a><span class="lineno"> 2372</span> nfft_1d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l02373"></a><span class="lineno"> 2373</span> </div>
-<div class="line"><a name="l02374"></a><span class="lineno"> 2374</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02375"></a><span class="lineno"> 2375</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE(PRE_FG_PSI)</div>
-<div class="line"><a name="l02376"></a><span class="lineno"> 2376</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02377"></a><span class="lineno"> 2377</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02378"></a><span class="lineno"> 2378</span> </div>
-<div class="line"><a name="l02379"></a><span class="lineno"> 2379</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02380"></a><span class="lineno"> 2380</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02381"></a><span class="lineno"> 2381</span> {</div>
-<div class="line"><a name="l02382"></a><span class="lineno"> 2382</span> R psij_const[2 * m + 2];</div>
-<div class="line"><a name="l02383"></a><span class="lineno"> 2383</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02384"></a><span class="lineno"> 2384</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l02385"></a><span class="lineno"> 2385</span> R fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2 * j];</div>
-<div class="line"><a name="l02386"></a><span class="lineno"> 2386</span> R fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2 * j + 1];</div>
-<div class="line"><a name="l02387"></a><span class="lineno"> 2387</span> R fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l02388"></a><span class="lineno"> 2388</span> </div>
-<div class="line"><a name="l02389"></a><span class="lineno"> 2389</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l02390"></a><span class="lineno"> 2390</span> <span class="keywordflow">for</span> (l = 1; l <= 2 * m + 1; l++)</div>
-<div class="line"><a name="l02391"></a><span class="lineno"> 2391</span> {</div>
-<div class="line"><a name="l02392"></a><span class="lineno"> 2392</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l02393"></a><span class="lineno"> 2393</span> psij_const[l] = fg_psij0 * fg_psij2 * fg_exp_l[l];</div>
-<div class="line"><a name="l02394"></a><span class="lineno"> 2394</span> }</div>
-<div class="line"><a name="l02395"></a><span class="lineno"> 2395</span> </div>
-<div class="line"><a name="l02396"></a><span class="lineno"> 2396</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02397"></a><span class="lineno"> 2397</span> <span class="preprocessor"></span> nfft_adjoint_1d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> + j, n, m);</div>
-<div class="line"><a name="l02398"></a><span class="lineno"> 2398</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l02399"></a><span class="lineno"> 2399</span> <span class="preprocessor"></span> nfft_adjoint_1d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> + j, g, psij_const, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> + j, n, m);</div>
-<div class="line"><a name="l02400"></a><span class="lineno"> 2400</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02401"></a><span class="lineno"> 2401</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l02402"></a><span class="lineno"> 2402</span> </div>
-<div class="line"><a name="l02403"></a><span class="lineno"> 2403</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02404"></a><span class="lineno"> 2404</span> } <span class="comment">/* if(PRE_FG_PSI) */</span></div>
-<div class="line"><a name="l02405"></a><span class="lineno"> 2405</span> </div>
-<div class="line"><a name="l02406"></a><span class="lineno"> 2406</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FG_PSI)</div>
-<div class="line"><a name="l02407"></a><span class="lineno"> 2407</span> {</div>
-<div class="line"><a name="l02408"></a><span class="lineno"> 2408</span> R fg_exp_l[2 * m + 2];</div>
-<div class="line"><a name="l02409"></a><span class="lineno"> 2409</span> </div>
-<div class="line"><a name="l02410"></a><span class="lineno"> 2410</span> nfft_1d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l02411"></a><span class="lineno"> 2411</span> </div>
-<div class="line"><a name="l02412"></a><span class="lineno"> 2412</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l02413"></a><span class="lineno"> 2413</span> </div>
-<div class="line"><a name="l02414"></a><span class="lineno"> 2414</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02415"></a><span class="lineno"> 2415</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE(FG_PSI)</div>
-<div class="line"><a name="l02416"></a><span class="lineno"> 2416</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02417"></a><span class="lineno"> 2417</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02418"></a><span class="lineno"> 2418</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02419"></a><span class="lineno"> 2419</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02420"></a><span class="lineno"> 2420</span> {</div>
-<div class="line"><a name="l02421"></a><span class="lineno"> 2421</span> <span class="keywordtype">int</span> u,o,l;</div>
-<div class="line"><a name="l02422"></a><span class="lineno"> 2422</span> R psij_const[2 * m + 2];</div>
-<div class="line"><a name="l02423"></a><span class="lineno"> 2423</span> R fg_psij0, fg_psij1, fg_psij2;</div>
-<div class="line"><a name="l02424"></a><span class="lineno"> 2424</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02425"></a><span class="lineno"> 2425</span> </div>
-<div class="line"><a name="l02426"></a><span class="lineno"> 2426</span> nfft_uo(ths, j, &u, &o, 0);</div>
-<div class="line"><a name="l02427"></a><span class="lineno"> 2427</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j]-((R)u)/n,0));</div>
-<div class="line"><a name="l02428"></a><span class="lineno"> 2428</span> fg_psij1 = EXP(K(2.0) * (n * (ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j]) - u) / ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l02429"></a><span class="lineno"> 2429</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l02430"></a><span class="lineno"> 2430</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l02431"></a><span class="lineno"> 2431</span> <span class="keywordflow">for</span> (l = 1; l <= 2 * m + 1; l++)</div>
-<div class="line"><a name="l02432"></a><span class="lineno"> 2432</span> {</div>
-<div class="line"><a name="l02433"></a><span class="lineno"> 2433</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l02434"></a><span class="lineno"> 2434</span> psij_const[l] = fg_psij0 * fg_psij2 * fg_exp_l[l];</div>
-<div class="line"><a name="l02435"></a><span class="lineno"> 2435</span> }</div>
-<div class="line"><a name="l02436"></a><span class="lineno"> 2436</span> </div>
-<div class="line"><a name="l02437"></a><span class="lineno"> 2437</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02438"></a><span class="lineno"> 2438</span> <span class="preprocessor"></span> nfft_adjoint_1d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> + j, n, m);</div>
-<div class="line"><a name="l02439"></a><span class="lineno"> 2439</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l02440"></a><span class="lineno"> 2440</span> <span class="preprocessor"></span> nfft_adjoint_1d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> + j, g, psij_const, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> + j, n, m);</div>
-<div class="line"><a name="l02441"></a><span class="lineno"> 2441</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02442"></a><span class="lineno"> 2442</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l02443"></a><span class="lineno"> 2443</span> </div>
-<div class="line"><a name="l02444"></a><span class="lineno"> 2444</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02445"></a><span class="lineno"> 2445</span> } <span class="comment">/* if(FG_PSI) */</span></div>
-<div class="line"><a name="l02446"></a><span class="lineno"> 2446</span> </div>
-<div class="line"><a name="l02447"></a><span class="lineno"> 2447</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l02448"></a><span class="lineno"> 2448</span> {</div>
-<div class="line"><a name="l02449"></a><span class="lineno"> 2449</span> <span class="keyword">const</span> <span class="keywordtype">int</span> K = ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>;</div>
-<div class="line"><a name="l02450"></a><span class="lineno"> 2450</span> <span class="keyword">const</span> <span class="keywordtype">int</span> ip_s = K / (m + 2);</div>
-<div class="line"><a name="l02451"></a><span class="lineno"> 2451</span> </div>
-<div class="line"><a name="l02452"></a><span class="lineno"> 2452</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l02453"></a><span class="lineno"> 2453</span> </div>
-<div class="line"><a name="l02454"></a><span class="lineno"> 2454</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02455"></a><span class="lineno"> 2455</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE(PRE_LIN_PSI)</div>
-<div class="line"><a name="l02456"></a><span class="lineno"> 2456</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02457"></a><span class="lineno"> 2457</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02458"></a><span class="lineno"> 2458</span> <span class="preprocessor"> #pragma openmp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02459"></a><span class="lineno"> 2459</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02460"></a><span class="lineno"> 2460</span> {</div>
-<div class="line"><a name="l02461"></a><span class="lineno"> 2461</span> <span class="keywordtype">int</span> u,o,l;</div>
-<div class="line"><a name="l02462"></a><span class="lineno"> 2462</span> <span class="keywordtype">int</span> ip_u;</div>
-<div class="line"><a name="l02463"></a><span class="lineno"> 2463</span> R ip_y, ip_w;</div>
-<div class="line"><a name="l02464"></a><span class="lineno"> 2464</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02465"></a><span class="lineno"> 2465</span> R psij_const[2 * m + 2];</div>
-<div class="line"><a name="l02466"></a><span class="lineno"> 2466</span> </div>
-<div class="line"><a name="l02467"></a><span class="lineno"> 2467</span> nfft_uo(ths, j, &u, &o, 0);</div>
-<div class="line"><a name="l02468"></a><span class="lineno"> 2468</span> </div>
-<div class="line"><a name="l02469"></a><span class="lineno"> 2469</span> ip_y = FABS(n * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] - u) * ((R)ip_s);</div>
-<div class="line"><a name="l02470"></a><span class="lineno"> 2470</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l02471"></a><span class="lineno"> 2471</span> ip_w = ip_y - ip_u;</div>
-<div class="line"><a name="l02472"></a><span class="lineno"> 2472</span> <span class="keywordflow">for</span> (l = 0; l < 2 * m + 2; l++)</div>
-<div class="line"><a name="l02473"></a><span class="lineno"> 2473</span> psij_const[l]</div>
-<div class="line"><a name="l02474"></a><span class="lineno"> 2474</span> = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s)] * (K(1.0) - ip_w)</div>
-<div class="line"><a name="l02475"></a><span class="lineno"> 2475</span> + ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s+1)] * (ip_w);</div>
-<div class="line"><a name="l02476"></a><span class="lineno"> 2476</span> </div>
-<div class="line"><a name="l02477"></a><span class="lineno"> 2477</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02478"></a><span class="lineno"> 2478</span> <span class="preprocessor"></span> nfft_adjoint_1d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> + j, n, m);</div>
-<div class="line"><a name="l02479"></a><span class="lineno"> 2479</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l02480"></a><span class="lineno"> 2480</span> <span class="preprocessor"></span> nfft_adjoint_1d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> + j, g, psij_const, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> + j, n, m);</div>
-<div class="line"><a name="l02481"></a><span class="lineno"> 2481</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02482"></a><span class="lineno"> 2482</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l02483"></a><span class="lineno"> 2483</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02484"></a><span class="lineno"> 2484</span> } <span class="comment">/* if(PRE_LIN_PSI) */</span></div>
-<div class="line"><a name="l02485"></a><span class="lineno"> 2485</span> </div>
-<div class="line"><a name="l02486"></a><span class="lineno"> 2486</span> <span class="comment">/* no precomputed psi at all */</span></div>
-<div class="line"><a name="l02487"></a><span class="lineno"> 2487</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l02488"></a><span class="lineno"> 2488</span> </div>
-<div class="line"><a name="l02489"></a><span class="lineno"> 2489</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02490"></a><span class="lineno"> 2490</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_1d_B_OMP_BLOCKWISE(NO_PSI)</div>
-<div class="line"><a name="l02491"></a><span class="lineno"> 2491</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02492"></a><span class="lineno"> 2492</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02493"></a><span class="lineno"> 2493</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02494"></a><span class="lineno"> 2494</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02495"></a><span class="lineno"> 2495</span> {</div>
-<div class="line"><a name="l02496"></a><span class="lineno"> 2496</span> <span class="keywordtype">int</span> u,o,l;</div>
-<div class="line"><a name="l02497"></a><span class="lineno"> 2497</span> R psij_const[2 * m + 2];</div>
-<div class="line"><a name="l02498"></a><span class="lineno"> 2498</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used when [...]
-<div class="line"><a name="l02499"></a><span class="lineno"> 2499</span> </div>
-<div class="line"><a name="l02500"></a><span class="lineno"> 2500</span> nfft_uo(ths, j, &u, &o, 0);</div>
-<div class="line"><a name="l02501"></a><span class="lineno"> 2501</span> </div>
-<div class="line"><a name="l02502"></a><span class="lineno"> 2502</span> <span class="keywordflow">for</span> (l = 0; l <= 2 * m + 1; l++)</div>
-<div class="line"><a name="l02503"></a><span class="lineno"> 2503</span> psij_const[l] = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j]-((R)((u+l)))/n,0));</div>
-<div class="line"><a name="l02504"></a><span class="lineno"> 2504</span> </div>
-<div class="line"><a name="l02505"></a><span class="lineno"> 2505</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02506"></a><span class="lineno"> 2506</span> <span class="preprocessor"></span> nfft_adjoint_1d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> + j, n, m);</div>
-<div class="line"><a name="l02507"></a><span class="lineno"> 2507</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l02508"></a><span class="lineno"> 2508</span> <span class="preprocessor"></span> nfft_adjoint_1d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> + j, g, psij_const, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> + j, n, m);</div>
-<div class="line"><a name="l02509"></a><span class="lineno"> 2509</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02510"></a><span class="lineno"> 2510</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l02511"></a><span class="lineno"> 2511</span> }</div>
-<div class="line"><a name="l02512"></a><span class="lineno"> 2512</span> </div>
-<div class="line"><a name="l02513"></a><span class="lineno"> 2513</span> <span class="keywordtype">void</span> nfft_trafo_1d(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l02514"></a><span class="lineno"> 2514</span> {</div>
-<div class="line"><a name="l02515"></a><span class="lineno"> 2515</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0], N2 = N/2, n = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0];</div>
-<div class="line"><a name="l02516"></a><span class="lineno"> 2516</span> C *f_hat1 = (C*)ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, *f_hat2 = (C*)&ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[N2];</div>
-<div class="line"><a name="l02517"></a><span class="lineno"> 2517</span> </div>
-<div class="line"><a name="l02518"></a><span class="lineno"> 2518</span> ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a> = ths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>;</div>
-<div class="line"><a name="l02519"></a><span class="lineno"> 2519</span> ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a> = ths-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>;</div>
-<div class="line"><a name="l02520"></a><span class="lineno"> 2520</span> </div>
-<div class="line"><a name="l02521"></a><span class="lineno"> 2521</span> {</div>
-<div class="line"><a name="l02522"></a><span class="lineno"> 2522</span> C *g_hat1 = (C*)&ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>[n-N/2], *g_hat2 = (C*)ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>;</div>
-<div class="line"><a name="l02523"></a><span class="lineno"> 2523</span> R *c_phi_inv1, *c_phi_inv2;</div>
-<div class="line"><a name="l02524"></a><span class="lineno"> 2524</span> </div>
-<div class="line"><a name="l02525"></a><span class="lineno"> 2525</span> TIC(0)</div>
-<div class="line"><a name="l02526"></a><span class="lineno"> 2526</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02527"></a><span class="lineno"> 2527</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l02528"></a><span class="lineno"> 2528</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02529"></a><span class="lineno"> 2529</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02530"></a><span class="lineno"> 2530</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>; k++)</div>
-<div class="line"><a name="l02531"></a><span class="lineno"> 2531</span> ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>[k] = 0.0;</div>
-<div class="line"><a name="l02532"></a><span class="lineno"> 2532</span> }</div>
-<div class="line"><a name="l02533"></a><span class="lineno"> 2533</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l02534"></a><span class="lineno"> 2534</span> <span class="preprocessor"></span> memset(ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>, 0, ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l02535"></a><span class="lineno"> 2535</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02536"></a><span class="lineno"> 2536</span> <span class="preprocessor"></span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l02537"></a><span class="lineno"> 2537</span> {</div>
-<div class="line"><a name="l02538"></a><span class="lineno"> 2538</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02539"></a><span class="lineno"> 2539</span> c_phi_inv1 = ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[0];</div>
-<div class="line"><a name="l02540"></a><span class="lineno"> 2540</span> c_phi_inv2 = &ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[0][N2];</div>
-<div class="line"><a name="l02541"></a><span class="lineno"> 2541</span> </div>
-<div class="line"><a name="l02542"></a><span class="lineno"> 2542</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02543"></a><span class="lineno"> 2543</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < N2; k++)</div>
-<div class="line"><a name="l02544"></a><span class="lineno"> 2544</span> {</div>
-<div class="line"><a name="l02545"></a><span class="lineno"> 2545</span> g_hat1[k] = f_hat1[k] * c_phi_inv1[k];</div>
-<div class="line"><a name="l02546"></a><span class="lineno"> 2546</span> g_hat2[k] = f_hat2[k] * c_phi_inv2[k];</div>
-<div class="line"><a name="l02547"></a><span class="lineno"> 2547</span> }</div>
-<div class="line"><a name="l02548"></a><span class="lineno"> 2548</span> }</div>
-<div class="line"><a name="l02549"></a><span class="lineno"> 2549</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l02550"></a><span class="lineno"> 2550</span> {</div>
-<div class="line"><a name="l02551"></a><span class="lineno"> 2551</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02552"></a><span class="lineno"> 2552</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02553"></a><span class="lineno"> 2553</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < N2; k++)</div>
-<div class="line"><a name="l02554"></a><span class="lineno"> 2554</span> {</div>
-<div class="line"><a name="l02555"></a><span class="lineno"> 2555</span> g_hat1[k] = f_hat1[k] / (PHI_HUT(k-N2,0));</div>
-<div class="line"><a name="l02556"></a><span class="lineno"> 2556</span> g_hat2[k] = f_hat2[k] / (PHI_HUT(k,0));</div>
-<div class="line"><a name="l02557"></a><span class="lineno"> 2557</span> }</div>
-<div class="line"><a name="l02558"></a><span class="lineno"> 2558</span> }</div>
-<div class="line"><a name="l02559"></a><span class="lineno"> 2559</span> TOC(0)</div>
-<div class="line"><a name="l02560"></a><span class="lineno"> 2560</span> </div>
-<div class="line"><a name="l02561"></a><span class="lineno"> 2561</span> TIC_FFTW(1)</div>
-<div class="line"><a name="l02562"></a><span class="lineno"> 2562</span> fftw_execute(ths->my_fftw_plan1);</div>
-<div class="line"><a name="l02563"></a><span class="lineno"> 2563</span> TOC_FFTW(1);</div>
-<div class="line"><a name="l02564"></a><span class="lineno"> 2564</span> </div>
-<div class="line"><a name="l02565"></a><span class="lineno"> 2565</span> TIC(2);</div>
-<div class="line"><a name="l02566"></a><span class="lineno"> 2566</span> nfft_trafo_1d_B(ths);</div>
-<div class="line"><a name="l02567"></a><span class="lineno"> 2567</span> TOC(2);</div>
-<div class="line"><a name="l02568"></a><span class="lineno"> 2568</span> }</div>
-<div class="line"><a name="l02569"></a><span class="lineno"> 2569</span> }</div>
-<div class="line"><a name="l02570"></a><span class="lineno"> 2570</span> </div>
-<div class="line"><a name="l02571"></a><span class="lineno"> 2571</span> <span class="keywordtype">void</span> nfft_adjoint_1d(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l02572"></a><span class="lineno"> 2572</span> {</div>
-<div class="line"><a name="l02573"></a><span class="lineno"> 2573</span> <span class="keywordtype">int</span> n,N;</div>
-<div class="line"><a name="l02574"></a><span class="lineno"> 2574</span> C *g_hat1,*g_hat2,*f_hat1,*f_hat2;</div>
-<div class="line"><a name="l02575"></a><span class="lineno"> 2575</span> R *c_phi_inv1, *c_phi_inv2;</div>
-<div class="line"><a name="l02576"></a><span class="lineno"> 2576</span> </div>
-<div class="line"><a name="l02577"></a><span class="lineno"> 2577</span> N=ths->N[0];</div>
-<div class="line"><a name="l02578"></a><span class="lineno"> 2578</span> n=ths->n[0];</div>
-<div class="line"><a name="l02579"></a><span class="lineno"> 2579</span> </div>
-<div class="line"><a name="l02580"></a><span class="lineno"> 2580</span> ths->g_hat=ths->g1;</div>
-<div class="line"><a name="l02581"></a><span class="lineno"> 2581</span> ths->g=ths->g2;</div>
-<div class="line"><a name="l02582"></a><span class="lineno"> 2582</span> </div>
-<div class="line"><a name="l02583"></a><span class="lineno"> 2583</span> f_hat1=(C*)ths->f_hat;</div>
-<div class="line"><a name="l02584"></a><span class="lineno"> 2584</span> f_hat2=(C*)&ths->f_hat[N/2];</div>
-<div class="line"><a name="l02585"></a><span class="lineno"> 2585</span> g_hat1=(C*)&ths->g_hat[n-N/2];</div>
-<div class="line"><a name="l02586"></a><span class="lineno"> 2586</span> g_hat2=(C*)ths->g_hat;</div>
-<div class="line"><a name="l02587"></a><span class="lineno"> 2587</span> </div>
-<div class="line"><a name="l02588"></a><span class="lineno"> 2588</span> TIC(2)</div>
-<div class="line"><a name="l02589"></a><span class="lineno"> 2589</span> nfft_adjoint_1d_B(ths);</div>
-<div class="line"><a name="l02590"></a><span class="lineno"> 2590</span> TOC(2)</div>
-<div class="line"><a name="l02591"></a><span class="lineno"> 2591</span> </div>
-<div class="line"><a name="l02592"></a><span class="lineno"> 2592</span> TIC_FFTW(1)</div>
-<div class="line"><a name="l02593"></a><span class="lineno"> 2593</span> fftw_execute(ths->my_fftw_plan2);</div>
-<div class="line"><a name="l02594"></a><span class="lineno"> 2594</span> TOC_FFTW(1);</div>
-<div class="line"><a name="l02595"></a><span class="lineno"> 2595</span> </div>
-<div class="line"><a name="l02596"></a><span class="lineno"> 2596</span> TIC(0)</div>
-<div class="line"><a name="l02597"></a><span class="lineno"> 2597</span> if(ths->nfft_flags & PRE_PHI_HUT)</div>
-<div class="line"><a name="l02598"></a><span class="lineno"> 2598</span> {</div>
-<div class="line"><a name="l02599"></a><span class="lineno"> 2599</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02600"></a><span class="lineno"> 2600</span> c_phi_inv1=ths->c_phi_inv[0];</div>
-<div class="line"><a name="l02601"></a><span class="lineno"> 2601</span> c_phi_inv2=&ths->c_phi_inv[0][N/2];</div>
-<div class="line"><a name="l02602"></a><span class="lineno"> 2602</span> </div>
-<div class="line"><a name="l02603"></a><span class="lineno"> 2603</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02604"></a><span class="lineno"> 2604</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < N/2; k++)</div>
-<div class="line"><a name="l02605"></a><span class="lineno"> 2605</span> {</div>
-<div class="line"><a name="l02606"></a><span class="lineno"> 2606</span> f_hat1[k] = g_hat1[k] * c_phi_inv1[k];</div>
-<div class="line"><a name="l02607"></a><span class="lineno"> 2607</span> f_hat2[k] = g_hat2[k] * c_phi_inv2[k];</div>
-<div class="line"><a name="l02608"></a><span class="lineno"> 2608</span> }</div>
-<div class="line"><a name="l02609"></a><span class="lineno"> 2609</span> }</div>
-<div class="line"><a name="l02610"></a><span class="lineno"> 2610</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l02611"></a><span class="lineno"> 2611</span> {</div>
-<div class="line"><a name="l02612"></a><span class="lineno"> 2612</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02613"></a><span class="lineno"> 2613</span> </div>
-<div class="line"><a name="l02614"></a><span class="lineno"> 2614</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02615"></a><span class="lineno"> 2615</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < N/2; k++)</div>
-<div class="line"><a name="l02616"></a><span class="lineno"> 2616</span> {</div>
-<div class="line"><a name="l02617"></a><span class="lineno"> 2617</span> f_hat1[k] = g_hat1[k] / (PHI_HUT(k-N/2,0));</div>
-<div class="line"><a name="l02618"></a><span class="lineno"> 2618</span> f_hat2[k] = g_hat2[k] / (PHI_HUT(k,0));</div>
-<div class="line"><a name="l02619"></a><span class="lineno"> 2619</span> }</div>
-<div class="line"><a name="l02620"></a><span class="lineno"> 2620</span> }</div>
-<div class="line"><a name="l02621"></a><span class="lineno"> 2621</span> TOC(0)</div>
-<div class="line"><a name="l02622"></a><span class="lineno"> 2622</span> }</div>
-<div class="line"><a name="l02623"></a><span class="lineno"> 2623</span> </div>
-<div class="line"><a name="l02624"></a><span class="lineno"> 2624</span> </div>
-<div class="line"><a name="l02625"></a><span class="lineno"> 2625</span> <span class="comment">/* ############################################################ SPECIFIC VERSIONS FOR d=2 */</span></div>
-<div class="line"><a name="l02626"></a><span class="lineno"> 2626</span> </div>
-<div class="line"><a name="l02627"></a><span class="lineno"> 2627</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_2d_init_fg_exp_l(R *fg_exp_l, <span class="keyword">const</span> <span class="keywordtype">int</span> m, <span class="keyword">const</span> R b)</div>
-<div class="line"><a name="l02628"></a><span class="lineno"> 2628</span> {</div>
-<div class="line"><a name="l02629"></a><span class="lineno"> 2629</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l02630"></a><span class="lineno"> 2630</span> R fg_exp_b0, fg_exp_b1, fg_exp_b2, fg_exp_b0_sq;</div>
-<div class="line"><a name="l02631"></a><span class="lineno"> 2631</span> </div>
-<div class="line"><a name="l02632"></a><span class="lineno"> 2632</span> fg_exp_b0 = EXP(K(-1.0)/b);</div>
-<div class="line"><a name="l02633"></a><span class="lineno"> 2633</span> fg_exp_b0_sq = fg_exp_b0*fg_exp_b0;</div>
-<div class="line"><a name="l02634"></a><span class="lineno"> 2634</span> fg_exp_b1 = K(1.0);</div>
-<div class="line"><a name="l02635"></a><span class="lineno"> 2635</span> fg_exp_b2 = K(1.0);</div>
-<div class="line"><a name="l02636"></a><span class="lineno"> 2636</span> fg_exp_l[0] = K(1.0);</div>
-<div class="line"><a name="l02637"></a><span class="lineno"> 2637</span> <span class="keywordflow">for</span>(l=1; l <= 2*m+1; l++)</div>
-<div class="line"><a name="l02638"></a><span class="lineno"> 2638</span> {</div>
-<div class="line"><a name="l02639"></a><span class="lineno"> 2639</span> fg_exp_b2 = fg_exp_b1*fg_exp_b0;</div>
-<div class="line"><a name="l02640"></a><span class="lineno"> 2640</span> fg_exp_b1 *= fg_exp_b0_sq;</div>
-<div class="line"><a name="l02641"></a><span class="lineno"> 2641</span> fg_exp_l[l] = fg_exp_l[l-1]*fg_exp_b2;</div>
-<div class="line"><a name="l02642"></a><span class="lineno"> 2642</span> }</div>
-<div class="line"><a name="l02643"></a><span class="lineno"> 2643</span> }</div>
-<div class="line"><a name="l02644"></a><span class="lineno"> 2644</span> </div>
-<div class="line"><a name="l02645"></a><span class="lineno"> 2645</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_trafo_2d_compute(C *fj, <span class="keyword">const</span> C *g,</div>
-<div class="line"><a name="l02646"></a><span class="lineno"> 2646</span> <span class="keyword">const</span> R *psij_const0, <span class="keyword">const</span> R *psij_const1,</div>
-<div class="line"><a name="l02647"></a><span class="lineno"> 2647</span> <span class="keyword">const</span> R *xj0, <span class="keyword">const</span> R *xj1,</div>
-<div class="line"><a name="l02648"></a><span class="lineno"> 2648</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0, <span class="keyword">const</span> <span class="keywordtype">int</span> n1, <span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l02649"></a><span class="lineno"> 2649</span> {</div>
-<div class="line"><a name="l02650"></a><span class="lineno"> 2650</span> <span class="keywordtype">int</span> u0,o0,l0,u1,o1,l1;</div>
-<div class="line"><a name="l02651"></a><span class="lineno"> 2651</span> <span class="keyword">const</span> C *gj;</div>
-<div class="line"><a name="l02652"></a><span class="lineno"> 2652</span> <span class="keyword">const</span> R *psij0,*psij1;</div>
-<div class="line"><a name="l02653"></a><span class="lineno"> 2653</span> </div>
-<div class="line"><a name="l02654"></a><span class="lineno"> 2654</span> psij0=psij_const0;</div>
-<div class="line"><a name="l02655"></a><span class="lineno"> 2655</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02656"></a><span class="lineno"> 2656</span> </div>
-<div class="line"><a name="l02657"></a><span class="lineno"> 2657</span> nfft_uo2(&u0,&o0,*xj0, n0, m);</div>
-<div class="line"><a name="l02658"></a><span class="lineno"> 2658</span> nfft_uo2(&u1,&o1,*xj1, n1, m);</div>
-<div class="line"><a name="l02659"></a><span class="lineno"> 2659</span> </div>
-<div class="line"><a name="l02660"></a><span class="lineno"> 2660</span> *fj=0;</div>
-<div class="line"><a name="l02661"></a><span class="lineno"> 2661</span> </div>
-<div class="line"><a name="l02662"></a><span class="lineno"> 2662</span> <span class="keywordflow">if</span>(u0<o0)</div>
-<div class="line"><a name="l02663"></a><span class="lineno"> 2663</span> <span class="keywordflow">if</span>(u1<o1)</div>
-<div class="line"><a name="l02664"></a><span class="lineno"> 2664</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l02665"></a><span class="lineno"> 2665</span> {</div>
-<div class="line"><a name="l02666"></a><span class="lineno"> 2666</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02667"></a><span class="lineno"> 2667</span> gj=g+(u0+l0)*n1+u1;</div>
-<div class="line"><a name="l02668"></a><span class="lineno"> 2668</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02669"></a><span class="lineno"> 2669</span> (*fj) += (*psij0) * (*psij1++) * (*gj++);</div>
-<div class="line"><a name="l02670"></a><span class="lineno"> 2670</span> }</div>
-<div class="line"><a name="l02671"></a><span class="lineno"> 2671</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l02672"></a><span class="lineno"> 2672</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l02673"></a><span class="lineno"> 2673</span> {</div>
-<div class="line"><a name="l02674"></a><span class="lineno"> 2674</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02675"></a><span class="lineno"> 2675</span> gj=g+(u0+l0)*n1+u1;</div>
-<div class="line"><a name="l02676"></a><span class="lineno"> 2676</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++)</div>
-<div class="line"><a name="l02677"></a><span class="lineno"> 2677</span> (*fj) += (*psij0) * (*psij1++) * (*gj++);</div>
-<div class="line"><a name="l02678"></a><span class="lineno"> 2678</span> gj=g+(u0+l0)*n1;</div>
-<div class="line"><a name="l02679"></a><span class="lineno"> 2679</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++)</div>
-<div class="line"><a name="l02680"></a><span class="lineno"> 2680</span> (*fj) += (*psij0) * (*psij1++) * (*gj++);</div>
-<div class="line"><a name="l02681"></a><span class="lineno"> 2681</span> }</div>
-<div class="line"><a name="l02682"></a><span class="lineno"> 2682</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l02683"></a><span class="lineno"> 2683</span> <span class="keywordflow">if</span>(u1<o1)</div>
-<div class="line"><a name="l02684"></a><span class="lineno"> 2684</span> {</div>
-<div class="line"><a name="l02685"></a><span class="lineno"> 2685</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l02686"></a><span class="lineno"> 2686</span> {</div>
-<div class="line"><a name="l02687"></a><span class="lineno"> 2687</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02688"></a><span class="lineno"> 2688</span> gj=g+(u0+l0)*n1+u1;</div>
-<div class="line"><a name="l02689"></a><span class="lineno"> 2689</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02690"></a><span class="lineno"> 2690</span> (*fj) += (*psij0) * (*psij1++) * (*gj++);</div>
-<div class="line"><a name="l02691"></a><span class="lineno"> 2691</span> }</div>
-<div class="line"><a name="l02692"></a><span class="lineno"> 2692</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l02693"></a><span class="lineno"> 2693</span> {</div>
-<div class="line"><a name="l02694"></a><span class="lineno"> 2694</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02695"></a><span class="lineno"> 2695</span> gj=g+l0*n1+u1;</div>
-<div class="line"><a name="l02696"></a><span class="lineno"> 2696</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02697"></a><span class="lineno"> 2697</span> (*fj) += (*psij0) * (*psij1++) * (*gj++);</div>
-<div class="line"><a name="l02698"></a><span class="lineno"> 2698</span> }</div>
-<div class="line"><a name="l02699"></a><span class="lineno"> 2699</span> }</div>
-<div class="line"><a name="l02700"></a><span class="lineno"> 2700</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l02701"></a><span class="lineno"> 2701</span> {</div>
-<div class="line"><a name="l02702"></a><span class="lineno"> 2702</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l02703"></a><span class="lineno"> 2703</span> {</div>
-<div class="line"><a name="l02704"></a><span class="lineno"> 2704</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02705"></a><span class="lineno"> 2705</span> gj=g+(u0+l0)*n1+u1;</div>
-<div class="line"><a name="l02706"></a><span class="lineno"> 2706</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++)</div>
-<div class="line"><a name="l02707"></a><span class="lineno"> 2707</span> (*fj) += (*psij0) * (*psij1++) * (*gj++);</div>
-<div class="line"><a name="l02708"></a><span class="lineno"> 2708</span> gj=g+(u0+l0)*n1;</div>
-<div class="line"><a name="l02709"></a><span class="lineno"> 2709</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++)</div>
-<div class="line"><a name="l02710"></a><span class="lineno"> 2710</span> (*fj) += (*psij0) * (*psij1++) * (*gj++);</div>
-<div class="line"><a name="l02711"></a><span class="lineno"> 2711</span> }</div>
-<div class="line"><a name="l02712"></a><span class="lineno"> 2712</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l02713"></a><span class="lineno"> 2713</span> {</div>
-<div class="line"><a name="l02714"></a><span class="lineno"> 2714</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02715"></a><span class="lineno"> 2715</span> gj=g+l0*n1+u1;</div>
-<div class="line"><a name="l02716"></a><span class="lineno"> 2716</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++)</div>
-<div class="line"><a name="l02717"></a><span class="lineno"> 2717</span> (*fj) += (*psij0) * (*psij1++) * (*gj++);</div>
-<div class="line"><a name="l02718"></a><span class="lineno"> 2718</span> gj=g+l0*n1;</div>
-<div class="line"><a name="l02719"></a><span class="lineno"> 2719</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++)</div>
-<div class="line"><a name="l02720"></a><span class="lineno"> 2720</span> (*fj) += (*psij0) * (*psij1++) * (*gj++);</div>
-<div class="line"><a name="l02721"></a><span class="lineno"> 2721</span> }</div>
-<div class="line"><a name="l02722"></a><span class="lineno"> 2722</span> }</div>
-<div class="line"><a name="l02723"></a><span class="lineno"> 2723</span> }</div>
-<div class="line"><a name="l02724"></a><span class="lineno"> 2724</span> </div>
-<div class="line"><a name="l02725"></a><span class="lineno"> 2725</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02726"></a><span class="lineno"> 2726</span> <span class="preprocessor"></span><span class="comment">/* adjoint NFFT two-dimensional case with OpenMP atomic operations */</span></div>
-<div class="line"><a name="l02727"></a><span class="lineno"> 2727</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_2d_compute_omp_atomic(<span class="keyword">const</span> C f, C *g,</div>
-<div class="line"><a name="l02728"></a><span class="lineno"> 2728</span> <span class="keyword">const</span> R *psij_const0, <span class="keyword">const</span> R *psij_const1,</div>
-<div class="line"><a name="l02729"></a><span class="lineno"> 2729</span> <span class="keyword">const</span> R *xj0, <span class="keyword">const</span> R *xj1,</div>
-<div class="line"><a name="l02730"></a><span class="lineno"> 2730</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0, <span class="keyword">const</span> <span class="keywordtype">int</span> n1, <span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l02731"></a><span class="lineno"> 2731</span> {</div>
-<div class="line"><a name="l02732"></a><span class="lineno"> 2732</span> <span class="keywordtype">int</span> u0,o0,l0,u1,o1,l1;</div>
-<div class="line"><a name="l02733"></a><span class="lineno"> 2733</span> <span class="keyword">const</span> <span class="keywordtype">int</span> lprod = (2*m+2) * (2*m+2); </div>
-<div class="line"><a name="l02734"></a><span class="lineno"> 2734</span> </div>
-<div class="line"><a name="l02735"></a><span class="lineno"> 2735</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> index_temp0[2*m+2];</div>
-<div class="line"><a name="l02736"></a><span class="lineno"> 2736</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> index_temp1[2*m+2];</div>
-<div class="line"><a name="l02737"></a><span class="lineno"> 2737</span> </div>
-<div class="line"><a name="l02738"></a><span class="lineno"> 2738</span> nfft_uo2(&u0,&o0,*xj0, n0, m);</div>
-<div class="line"><a name="l02739"></a><span class="lineno"> 2739</span> nfft_uo2(&u1,&o1,*xj1, n1, m);</div>
-<div class="line"><a name="l02740"></a><span class="lineno"> 2740</span> </div>
-<div class="line"><a name="l02741"></a><span class="lineno"> 2741</span> <span class="keywordflow">for</span> (l0=0; l0<=2*m+1; l0++)</div>
-<div class="line"><a name="l02742"></a><span class="lineno"> 2742</span> index_temp0[l0] = (u0+l0)%n0;</div>
-<div class="line"><a name="l02743"></a><span class="lineno"> 2743</span> </div>
-<div class="line"><a name="l02744"></a><span class="lineno"> 2744</span> <span class="keywordflow">for</span> (l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02745"></a><span class="lineno"> 2745</span> index_temp1[l1] = (u1+l1)%n1;</div>
-<div class="line"><a name="l02746"></a><span class="lineno"> 2746</span> </div>
-<div class="line"><a name="l02747"></a><span class="lineno"> 2747</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++)</div>
-<div class="line"><a name="l02748"></a><span class="lineno"> 2748</span> {</div>
-<div class="line"><a name="l02749"></a><span class="lineno"> 2749</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02750"></a><span class="lineno"> 2750</span> {</div>
-<div class="line"><a name="l02751"></a><span class="lineno"> 2751</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i = index_temp0[l0] * n1 + index_temp1[l1];</div>
-<div class="line"><a name="l02752"></a><span class="lineno"> 2752</span> C *lhs = g+i;</div>
-<div class="line"><a name="l02753"></a><span class="lineno"> 2753</span> R *lhs_real = (R*)lhs;</div>
-<div class="line"><a name="l02754"></a><span class="lineno"> 2754</span> C val = psij_const0[l0] * psij_const1[l1] * f;</div>
-<div class="line"><a name="l02755"></a><span class="lineno"> 2755</span> </div>
-<div class="line"><a name="l02756"></a><span class="lineno"> 2756</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l02757"></a><span class="lineno"> 2757</span> <span class="preprocessor"></span> lhs_real[0] += creal(val);</div>
-<div class="line"><a name="l02758"></a><span class="lineno"> 2758</span> </div>
-<div class="line"><a name="l02759"></a><span class="lineno"> 2759</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l02760"></a><span class="lineno"> 2760</span> <span class="preprocessor"></span> lhs_real[1] += cimag(val);</div>
-<div class="line"><a name="l02761"></a><span class="lineno"> 2761</span> }</div>
-<div class="line"><a name="l02762"></a><span class="lineno"> 2762</span> }</div>
-<div class="line"><a name="l02763"></a><span class="lineno"> 2763</span> }</div>
-<div class="line"><a name="l02764"></a><span class="lineno"> 2764</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02765"></a><span class="lineno"> 2765</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02766"></a><span class="lineno"> 2766</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l02767"></a><span class="lineno"> 2767</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02785"></a><span class="lineno"> 2785</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_2d_compute_omp_blockwise(<span class="keyword">const</span> C f, C *g,</div>
-<div class="line"><a name="l02786"></a><span class="lineno"> 2786</span> <span class="keyword">const</span> R *psij_const0, <span class="keyword">const</span> R *psij_const1,</div>
-<div class="line"><a name="l02787"></a><span class="lineno"> 2787</span> <span class="keyword">const</span> R *xj0, <span class="keyword">const</span> R *xj1,</div>
-<div class="line"><a name="l02788"></a><span class="lineno"> 2788</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0, <span class="keyword">const</span> <span class="keywordtype">int</span> n1, <span class="keyword">const</span> <span class="keywordtype">int</span> m,</div>
-<div class="line"><a name="l02789"></a><span class="lineno"> 2789</span> <span class="keyword">const</span> <span class="keywordtype">int</span> my_u0, <span class="keyword">const</span> <span class="keywordtype">int</span> my_o0)</div>
-<div class="line"><a name="l02790"></a><span class="lineno"> 2790</span> {</div>
-<div class="line"><a name="l02791"></a><span class="lineno"> 2791</span> <span class="keywordtype">int</span> ar_u0,ar_o0,l0,u1,o1,l1;</div>
-<div class="line"><a name="l02792"></a><span class="lineno"> 2792</span> <span class="keyword">const</span> <span class="keywordtype">int</span> lprod = (2*m+2) * (2*m+2); </div>
-<div class="line"><a name="l02793"></a><span class="lineno"> 2793</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> index_temp1[2*m+2];</div>
-<div class="line"><a name="l02794"></a><span class="lineno"> 2794</span> </div>
-<div class="line"><a name="l02795"></a><span class="lineno"> 2795</span> nfft_uo2(&ar_u0,&ar_o0,*xj0, n0, m);</div>
-<div class="line"><a name="l02796"></a><span class="lineno"> 2796</span> nfft_uo2(&u1,&o1,*xj1, n1, m);</div>
-<div class="line"><a name="l02797"></a><span class="lineno"> 2797</span> </div>
-<div class="line"><a name="l02798"></a><span class="lineno"> 2798</span> <span class="keywordflow">for</span> (l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02799"></a><span class="lineno"> 2799</span> index_temp1[l1] = (u1+l1)%n1;</div>
-<div class="line"><a name="l02800"></a><span class="lineno"> 2800</span> </div>
-<div class="line"><a name="l02801"></a><span class="lineno"> 2801</span> <span class="keywordflow">if</span>(ar_u0<ar_o0)</div>
-<div class="line"><a name="l02802"></a><span class="lineno"> 2802</span> {</div>
-<div class="line"><a name="l02803"></a><span class="lineno"> 2803</span> <span class="keywordtype">int</span> u0 = MAX(my_u0,ar_u0);</div>
-<div class="line"><a name="l02804"></a><span class="lineno"> 2804</span> <span class="keywordtype">int</span> o0 = MIN(my_o0,ar_o0);</div>
-<div class="line"><a name="l02805"></a><span class="lineno"> 2805</span> <span class="keywordtype">int</span> offset_psij = u0-ar_u0;</div>
-<div class="line"><a name="l02806"></a><span class="lineno"> 2806</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l02807"></a><span class="lineno"> 2807</span> <span class="preprocessor"></span> assert(offset_psij >= 0);</div>
-<div class="line"><a name="l02808"></a><span class="lineno"> 2808</span> assert(o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l02809"></a><span class="lineno"> 2809</span> assert(offset_psij+o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l02810"></a><span class="lineno"> 2810</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02811"></a><span class="lineno"> 2811</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02812"></a><span class="lineno"> 2812</span> <span class="keywordflow">for</span> (l0 = 0; l0 <= o0-u0; l0++)</div>
-<div class="line"><a name="l02813"></a><span class="lineno"> 2813</span> {</div>
-<div class="line"><a name="l02814"></a><span class="lineno"> 2814</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i0 = (u0+l0) * n1;</div>
-<div class="line"><a name="l02815"></a><span class="lineno"> 2815</span> <span class="keyword">const</span> C val0 = psij_const0[offset_psij+l0];</div>
-<div class="line"><a name="l02816"></a><span class="lineno"> 2816</span> </div>
-<div class="line"><a name="l02817"></a><span class="lineno"> 2817</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02818"></a><span class="lineno"> 2818</span> g[i0 + index_temp1[l1]] += val0 * psij_const1[l1] * f;</div>
-<div class="line"><a name="l02819"></a><span class="lineno"> 2819</span> }</div>
-<div class="line"><a name="l02820"></a><span class="lineno"> 2820</span> }</div>
-<div class="line"><a name="l02821"></a><span class="lineno"> 2821</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l02822"></a><span class="lineno"> 2822</span> {</div>
-<div class="line"><a name="l02823"></a><span class="lineno"> 2823</span> <span class="keywordtype">int</span> u0 = MAX(my_u0,ar_u0);</div>
-<div class="line"><a name="l02824"></a><span class="lineno"> 2824</span> <span class="keywordtype">int</span> o0 = my_o0;</div>
-<div class="line"><a name="l02825"></a><span class="lineno"> 2825</span> <span class="keywordtype">int</span> offset_psij = u0-ar_u0;</div>
-<div class="line"><a name="l02826"></a><span class="lineno"> 2826</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l02827"></a><span class="lineno"> 2827</span> <span class="preprocessor"></span> assert(offset_psij >= 0);</div>
-<div class="line"><a name="l02828"></a><span class="lineno"> 2828</span> assert(o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l02829"></a><span class="lineno"> 2829</span> assert(offset_psij+o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l02830"></a><span class="lineno"> 2830</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02831"></a><span class="lineno"> 2831</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02832"></a><span class="lineno"> 2832</span> <span class="keywordflow">for</span> (l0 = 0; l0 <= o0-u0; l0++)</div>
-<div class="line"><a name="l02833"></a><span class="lineno"> 2833</span> {</div>
-<div class="line"><a name="l02834"></a><span class="lineno"> 2834</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i0 = (u0+l0) * n1;</div>
-<div class="line"><a name="l02835"></a><span class="lineno"> 2835</span> <span class="keyword">const</span> C val0 = psij_const0[offset_psij+l0];</div>
-<div class="line"><a name="l02836"></a><span class="lineno"> 2836</span> </div>
-<div class="line"><a name="l02837"></a><span class="lineno"> 2837</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02838"></a><span class="lineno"> 2838</span> g[i0 + index_temp1[l1]] += val0 * psij_const1[l1] * f;</div>
-<div class="line"><a name="l02839"></a><span class="lineno"> 2839</span> }</div>
-<div class="line"><a name="l02840"></a><span class="lineno"> 2840</span> </div>
-<div class="line"><a name="l02841"></a><span class="lineno"> 2841</span> u0 = my_u0;</div>
-<div class="line"><a name="l02842"></a><span class="lineno"> 2842</span> o0 = MIN(my_o0,ar_o0);</div>
-<div class="line"><a name="l02843"></a><span class="lineno"> 2843</span> offset_psij += my_u0-ar_u0+n0;</div>
-<div class="line"><a name="l02844"></a><span class="lineno"> 2844</span> </div>
-<div class="line"><a name="l02845"></a><span class="lineno"> 2845</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l02846"></a><span class="lineno"> 2846</span> <span class="preprocessor"></span> <span class="keywordflow">if</span> (u0<=o0)</div>
-<div class="line"><a name="l02847"></a><span class="lineno"> 2847</span> {</div>
-<div class="line"><a name="l02848"></a><span class="lineno"> 2848</span> assert(o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l02849"></a><span class="lineno"> 2849</span> assert(offset_psij+o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l02850"></a><span class="lineno"> 2850</span> }</div>
-<div class="line"><a name="l02851"></a><span class="lineno"> 2851</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02852"></a><span class="lineno"> 2852</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02853"></a><span class="lineno"> 2853</span> <span class="keywordflow">for</span> (l0 = 0; l0 <= o0-u0; l0++)</div>
-<div class="line"><a name="l02854"></a><span class="lineno"> 2854</span> {</div>
-<div class="line"><a name="l02855"></a><span class="lineno"> 2855</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i0 = (u0+l0) * n1;</div>
-<div class="line"><a name="l02856"></a><span class="lineno"> 2856</span> <span class="keyword">const</span> C val0 = psij_const0[offset_psij+l0];</div>
-<div class="line"><a name="l02857"></a><span class="lineno"> 2857</span> </div>
-<div class="line"><a name="l02858"></a><span class="lineno"> 2858</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02859"></a><span class="lineno"> 2859</span> g[i0 + index_temp1[l1]] += val0 * psij_const1[l1] * f;</div>
-<div class="line"><a name="l02860"></a><span class="lineno"> 2860</span> }</div>
-<div class="line"><a name="l02861"></a><span class="lineno"> 2861</span> }</div>
-<div class="line"><a name="l02862"></a><span class="lineno"> 2862</span> }</div>
-<div class="line"><a name="l02863"></a><span class="lineno"> 2863</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02864"></a><span class="lineno"> 2864</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02865"></a><span class="lineno"> 2865</span> <span class="preprocessor">#ifndef _OPENMP</span></div>
-<div class="line"><a name="l02866"></a><span class="lineno"> 2866</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_2d_compute_serial(<span class="keyword">const</span> C *fj, C *g,</div>
-<div class="line"><a name="l02867"></a><span class="lineno"> 2867</span> <span class="keyword">const</span> R *psij_const0, <span class="keyword">const</span> R *psij_const1,</div>
-<div class="line"><a name="l02868"></a><span class="lineno"> 2868</span> <span class="keyword">const</span> R *xj0, <span class="keyword">const</span> R *xj1,</div>
-<div class="line"><a name="l02869"></a><span class="lineno"> 2869</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0, <span class="keyword">const</span> <span class="keywordtype">int</span> n1, <span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l02870"></a><span class="lineno"> 2870</span> {</div>
-<div class="line"><a name="l02871"></a><span class="lineno"> 2871</span> <span class="keywordtype">int</span> u0,o0,l0,u1,o1,l1;</div>
-<div class="line"><a name="l02872"></a><span class="lineno"> 2872</span> C *gj;</div>
-<div class="line"><a name="l02873"></a><span class="lineno"> 2873</span> <span class="keyword">const</span> R *psij0,*psij1;</div>
-<div class="line"><a name="l02874"></a><span class="lineno"> 2874</span> </div>
-<div class="line"><a name="l02875"></a><span class="lineno"> 2875</span> psij0=psij_const0;</div>
-<div class="line"><a name="l02876"></a><span class="lineno"> 2876</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02877"></a><span class="lineno"> 2877</span> </div>
-<div class="line"><a name="l02878"></a><span class="lineno"> 2878</span> nfft_uo2(&u0,&o0,*xj0, n0, m);</div>
-<div class="line"><a name="l02879"></a><span class="lineno"> 2879</span> nfft_uo2(&u1,&o1,*xj1, n1, m);</div>
-<div class="line"><a name="l02880"></a><span class="lineno"> 2880</span> </div>
-<div class="line"><a name="l02881"></a><span class="lineno"> 2881</span> <span class="keywordflow">if</span>(u0<o0)</div>
-<div class="line"><a name="l02882"></a><span class="lineno"> 2882</span> <span class="keywordflow">if</span>(u1<o1)</div>
-<div class="line"><a name="l02883"></a><span class="lineno"> 2883</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l02884"></a><span class="lineno"> 2884</span> {</div>
-<div class="line"><a name="l02885"></a><span class="lineno"> 2885</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02886"></a><span class="lineno"> 2886</span> gj=g+(u0+l0)*n1+u1;</div>
-<div class="line"><a name="l02887"></a><span class="lineno"> 2887</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02888"></a><span class="lineno"> 2888</span> (*gj++) += (*psij0) * (*psij1++) * (*fj);</div>
-<div class="line"><a name="l02889"></a><span class="lineno"> 2889</span> }</div>
-<div class="line"><a name="l02890"></a><span class="lineno"> 2890</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l02891"></a><span class="lineno"> 2891</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l02892"></a><span class="lineno"> 2892</span> {</div>
-<div class="line"><a name="l02893"></a><span class="lineno"> 2893</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02894"></a><span class="lineno"> 2894</span> gj=g+(u0+l0)*n1+u1;</div>
-<div class="line"><a name="l02895"></a><span class="lineno"> 2895</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++)</div>
-<div class="line"><a name="l02896"></a><span class="lineno"> 2896</span> (*gj++) += (*psij0) * (*psij1++) * (*fj);</div>
-<div class="line"><a name="l02897"></a><span class="lineno"> 2897</span> gj=g+(u0+l0)*n1;</div>
-<div class="line"><a name="l02898"></a><span class="lineno"> 2898</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++)</div>
-<div class="line"><a name="l02899"></a><span class="lineno"> 2899</span> (*gj++) += (*psij0) * (*psij1++) * (*fj);</div>
-<div class="line"><a name="l02900"></a><span class="lineno"> 2900</span> }</div>
-<div class="line"><a name="l02901"></a><span class="lineno"> 2901</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l02902"></a><span class="lineno"> 2902</span> <span class="keywordflow">if</span>(u1<o1)</div>
-<div class="line"><a name="l02903"></a><span class="lineno"> 2903</span> {</div>
-<div class="line"><a name="l02904"></a><span class="lineno"> 2904</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l02905"></a><span class="lineno"> 2905</span> {</div>
-<div class="line"><a name="l02906"></a><span class="lineno"> 2906</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02907"></a><span class="lineno"> 2907</span> gj=g+(u0+l0)*n1+u1;</div>
-<div class="line"><a name="l02908"></a><span class="lineno"> 2908</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02909"></a><span class="lineno"> 2909</span> (*gj++) += (*psij0) * (*psij1++) * (*fj);</div>
-<div class="line"><a name="l02910"></a><span class="lineno"> 2910</span> }</div>
-<div class="line"><a name="l02911"></a><span class="lineno"> 2911</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l02912"></a><span class="lineno"> 2912</span> {</div>
-<div class="line"><a name="l02913"></a><span class="lineno"> 2913</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02914"></a><span class="lineno"> 2914</span> gj=g+l0*n1+u1;</div>
-<div class="line"><a name="l02915"></a><span class="lineno"> 2915</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l02916"></a><span class="lineno"> 2916</span> (*gj++) += (*psij0) * (*psij1++) * (*fj);</div>
-<div class="line"><a name="l02917"></a><span class="lineno"> 2917</span> }</div>
-<div class="line"><a name="l02918"></a><span class="lineno"> 2918</span> }</div>
-<div class="line"><a name="l02919"></a><span class="lineno"> 2919</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l02920"></a><span class="lineno"> 2920</span> {</div>
-<div class="line"><a name="l02921"></a><span class="lineno"> 2921</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l02922"></a><span class="lineno"> 2922</span> {</div>
-<div class="line"><a name="l02923"></a><span class="lineno"> 2923</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02924"></a><span class="lineno"> 2924</span> gj=g+(u0+l0)*n1+u1;</div>
-<div class="line"><a name="l02925"></a><span class="lineno"> 2925</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++)</div>
-<div class="line"><a name="l02926"></a><span class="lineno"> 2926</span> (*gj++) += (*psij0) * (*psij1++) * (*fj);</div>
-<div class="line"><a name="l02927"></a><span class="lineno"> 2927</span> gj=g+(u0+l0)*n1;</div>
-<div class="line"><a name="l02928"></a><span class="lineno"> 2928</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++)</div>
-<div class="line"><a name="l02929"></a><span class="lineno"> 2929</span> (*gj++) += (*psij0) * (*psij1++) * (*fj);</div>
-<div class="line"><a name="l02930"></a><span class="lineno"> 2930</span> }</div>
-<div class="line"><a name="l02931"></a><span class="lineno"> 2931</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l02932"></a><span class="lineno"> 2932</span> {</div>
-<div class="line"><a name="l02933"></a><span class="lineno"> 2933</span> psij1=psij_const1;</div>
-<div class="line"><a name="l02934"></a><span class="lineno"> 2934</span> gj=g+l0*n1+u1;</div>
-<div class="line"><a name="l02935"></a><span class="lineno"> 2935</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++)</div>
-<div class="line"><a name="l02936"></a><span class="lineno"> 2936</span> (*gj++) += (*psij0) * (*psij1++) * (*fj);</div>
-<div class="line"><a name="l02937"></a><span class="lineno"> 2937</span> gj=g+l0*n1;</div>
-<div class="line"><a name="l02938"></a><span class="lineno"> 2938</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++)</div>
-<div class="line"><a name="l02939"></a><span class="lineno"> 2939</span> (*gj++) += (*psij0) * (*psij1++) * (*fj);</div>
-<div class="line"><a name="l02940"></a><span class="lineno"> 2940</span> }</div>
-<div class="line"><a name="l02941"></a><span class="lineno"> 2941</span> }</div>
-<div class="line"><a name="l02942"></a><span class="lineno"> 2942</span> }</div>
-<div class="line"><a name="l02943"></a><span class="lineno"> 2943</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l02944"></a><span class="lineno"> 2944</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l02945"></a><span class="lineno"> 2945</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_trafo_2d_B(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l02946"></a><span class="lineno"> 2946</span> {</div>
-<div class="line"><a name="l02947"></a><span class="lineno"> 2947</span> <span class="keyword">const</span> C *g = (C*)ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>;</div>
-<div class="line"><a name="l02948"></a><span class="lineno"> 2948</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N0 = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];</div>
-<div class="line"><a name="l02949"></a><span class="lineno"> 2949</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0 = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0];</div>
-<div class="line"><a name="l02950"></a><span class="lineno"> 2950</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N1 = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];</div>
-<div class="line"><a name="l02951"></a><span class="lineno"> 2951</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n1 = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[1];</div>
-<div class="line"><a name="l02952"></a><span class="lineno"> 2952</span> <span class="keyword">const</span> <span class="keywordtype">int</span> M = ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l02953"></a><span class="lineno"> 2953</span> <span class="keyword">const</span> <span class="keywordtype">int</span> m = ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>;</div>
-<div class="line"><a name="l02954"></a><span class="lineno"> 2954</span> </div>
-<div class="line"><a name="l02955"></a><span class="lineno"> 2955</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l02956"></a><span class="lineno"> 2956</span> </div>
-<div class="line"><a name="l02957"></a><span class="lineno"> 2957</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l02958"></a><span class="lineno"> 2958</span> {</div>
-<div class="line"><a name="l02959"></a><span class="lineno"> 2959</span> <span class="keyword">const</span> <span class="keywordtype">int</span> lprod = (2*m+2) * (2*m+2);</div>
-<div class="line"><a name="l02960"></a><span class="lineno"> 2960</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02961"></a><span class="lineno"> 2961</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02962"></a><span class="lineno"> 2962</span> {</div>
-<div class="line"><a name="l02963"></a><span class="lineno"> 2963</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l02964"></a><span class="lineno"> 2964</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02965"></a><span class="lineno"> 2965</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = K(0.0);</div>
-<div class="line"><a name="l02966"></a><span class="lineno"> 2966</span> <span class="keywordflow">for</span> (l = 0; l < lprod; l++)</div>
-<div class="line"><a name="l02967"></a><span class="lineno"> 2967</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[j*lprod+l] * g[ths-><a class="code" href="structnfft_ [...]
-<div class="line"><a name="l02968"></a><span class="lineno"> 2968</span> }</div>
-<div class="line"><a name="l02969"></a><span class="lineno"> 2969</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02970"></a><span class="lineno"> 2970</span> } <span class="comment">/* if(PRE_FULL_PSI) */</span></div>
-<div class="line"><a name="l02971"></a><span class="lineno"> 2971</span> </div>
-<div class="line"><a name="l02972"></a><span class="lineno"> 2972</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l02973"></a><span class="lineno"> 2973</span> {</div>
-<div class="line"><a name="l02974"></a><span class="lineno"> 2974</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02975"></a><span class="lineno"> 2975</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02976"></a><span class="lineno"> 2976</span> {</div>
-<div class="line"><a name="l02977"></a><span class="lineno"> 2977</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02978"></a><span class="lineno"> 2978</span> nfft_trafo_2d_compute(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>+j*2*(2*m+2), ths-><a class="code" [...]
-<div class="line"><a name="l02979"></a><span class="lineno"> 2979</span> }</div>
-<div class="line"><a name="l02980"></a><span class="lineno"> 2980</span> </div>
-<div class="line"><a name="l02981"></a><span class="lineno"> 2981</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l02982"></a><span class="lineno"> 2982</span> } <span class="comment">/* if(PRE_PSI) */</span></div>
-<div class="line"><a name="l02983"></a><span class="lineno"> 2983</span> </div>
-<div class="line"><a name="l02984"></a><span class="lineno"> 2984</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l02985"></a><span class="lineno"> 2985</span> {</div>
-<div class="line"><a name="l02986"></a><span class="lineno"> 2986</span> R fg_exp_l[2*(2*m+2)];</div>
-<div class="line"><a name="l02987"></a><span class="lineno"> 2987</span> </div>
-<div class="line"><a name="l02988"></a><span class="lineno"> 2988</span> nfft_2d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l02989"></a><span class="lineno"> 2989</span> nfft_2d_init_fg_exp_l(fg_exp_l+2*m+2, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l02990"></a><span class="lineno"> 2990</span> </div>
-<div class="line"><a name="l02991"></a><span class="lineno"> 2991</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l02992"></a><span class="lineno"> 2992</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l02993"></a><span class="lineno"> 2993</span> {</div>
-<div class="line"><a name="l02994"></a><span class="lineno"> 2994</span> R psij_const[2*(2*m+2)];</div>
-<div class="line"><a name="l02995"></a><span class="lineno"> 2995</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l02996"></a><span class="lineno"> 2996</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l02997"></a><span class="lineno"> 2997</span> R fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*j*2];</div>
-<div class="line"><a name="l02998"></a><span class="lineno"> 2998</span> R fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*j*2+1];</div>
-<div class="line"><a name="l02999"></a><span class="lineno"> 2999</span> R fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l03000"></a><span class="lineno"> 3000</span> </div>
-<div class="line"><a name="l03001"></a><span class="lineno"> 3001</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l03002"></a><span class="lineno"> 3002</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l03003"></a><span class="lineno"> 3003</span> {</div>
-<div class="line"><a name="l03004"></a><span class="lineno"> 3004</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l03005"></a><span class="lineno"> 3005</span> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l];</div>
-<div class="line"><a name="l03006"></a><span class="lineno"> 3006</span> }</div>
-<div class="line"><a name="l03007"></a><span class="lineno"> 3007</span> </div>
-<div class="line"><a name="l03008"></a><span class="lineno"> 3008</span> fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*2+1)];</div>
-<div class="line"><a name="l03009"></a><span class="lineno"> 3009</span> fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*2+1)+1];</div>
-<div class="line"><a name="l03010"></a><span class="lineno"> 3010</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l03011"></a><span class="lineno"> 3011</span> psij_const[2*m+2] = fg_psij0;</div>
-<div class="line"><a name="l03012"></a><span class="lineno"> 3012</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l03013"></a><span class="lineno"> 3013</span> {</div>
-<div class="line"><a name="l03014"></a><span class="lineno"> 3014</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l03015"></a><span class="lineno"> 3015</span> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l];</div>
-<div class="line"><a name="l03016"></a><span class="lineno"> 3016</span> }</div>
-<div class="line"><a name="l03017"></a><span class="lineno"> 3017</span> </div>
-<div class="line"><a name="l03018"></a><span class="lineno"> 3018</span> nfft_trafo_2d_compute(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>+2*j, ths-><a class="code" href="struc [...]
-<div class="line"><a name="l03019"></a><span class="lineno"> 3019</span> }</div>
-<div class="line"><a name="l03020"></a><span class="lineno"> 3020</span> </div>
-<div class="line"><a name="l03021"></a><span class="lineno"> 3021</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l03022"></a><span class="lineno"> 3022</span> } <span class="comment">/* if(PRE_FG_PSI) */</span></div>
-<div class="line"><a name="l03023"></a><span class="lineno"> 3023</span> </div>
-<div class="line"><a name="l03024"></a><span class="lineno"> 3024</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FG_PSI)</div>
-<div class="line"><a name="l03025"></a><span class="lineno"> 3025</span> {</div>
-<div class="line"><a name="l03026"></a><span class="lineno"> 3026</span> R fg_exp_l[2*(2*m+2)];</div>
-<div class="line"><a name="l03027"></a><span class="lineno"> 3027</span> </div>
-<div class="line"><a name="l03028"></a><span class="lineno"> 3028</span> nfft_2d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l03029"></a><span class="lineno"> 3029</span> nfft_2d_init_fg_exp_l(fg_exp_l+2*m+2, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l03030"></a><span class="lineno"> 3030</span> </div>
-<div class="line"><a name="l03031"></a><span class="lineno"> 3031</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l03032"></a><span class="lineno"> 3032</span> </div>
-<div class="line"><a name="l03033"></a><span class="lineno"> 3033</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l03034"></a><span class="lineno"> 3034</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l03035"></a><span class="lineno"> 3035</span> {</div>
-<div class="line"><a name="l03036"></a><span class="lineno"> 3036</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l03037"></a><span class="lineno"> 3037</span> R fg_psij0, fg_psij1, fg_psij2;</div>
-<div class="line"><a name="l03038"></a><span class="lineno"> 3038</span> R psij_const[2*(2*m+2)];</div>
-<div class="line"><a name="l03039"></a><span class="lineno"> 3039</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l03040"></a><span class="lineno"> 3040</span> </div>
-<div class="line"><a name="l03041"></a><span class="lineno"> 3041</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l03042"></a><span class="lineno"> 3042</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j]-((R)u)/n0,0));</div>
-<div class="line"><a name="l03043"></a><span class="lineno"> 3043</span> fg_psij1 = EXP(K(2.0)*(n0*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j]) - u)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l03044"></a><span class="lineno"> 3044</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l03045"></a><span class="lineno"> 3045</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l03046"></a><span class="lineno"> 3046</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l03047"></a><span class="lineno"> 3047</span> {</div>
-<div class="line"><a name="l03048"></a><span class="lineno"> 3048</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l03049"></a><span class="lineno"> 3049</span> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l];</div>
-<div class="line"><a name="l03050"></a><span class="lineno"> 3050</span> }</div>
-<div class="line"><a name="l03051"></a><span class="lineno"> 3051</span> </div>
-<div class="line"><a name="l03052"></a><span class="lineno"> 3052</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l03053"></a><span class="lineno"> 3053</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]-((R)u)/n1,1));</div>
-<div class="line"><a name="l03054"></a><span class="lineno"> 3054</span> fg_psij1 = EXP(K(2.0)*(n1*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]) - u)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l03055"></a><span class="lineno"> 3055</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l03056"></a><span class="lineno"> 3056</span> psij_const[2*m+2] = fg_psij0;</div>
-<div class="line"><a name="l03057"></a><span class="lineno"> 3057</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l03058"></a><span class="lineno"> 3058</span> {</div>
-<div class="line"><a name="l03059"></a><span class="lineno"> 3059</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l03060"></a><span class="lineno"> 3060</span> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l];</div>
-<div class="line"><a name="l03061"></a><span class="lineno"> 3061</span> }</div>
-<div class="line"><a name="l03062"></a><span class="lineno"> 3062</span> </div>
-<div class="line"><a name="l03063"></a><span class="lineno"> 3063</span> nfft_trafo_2d_compute(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>+2*j, ths-><a class="code" href="struc [...]
-<div class="line"><a name="l03064"></a><span class="lineno"> 3064</span> }</div>
-<div class="line"><a name="l03065"></a><span class="lineno"> 3065</span> </div>
-<div class="line"><a name="l03066"></a><span class="lineno"> 3066</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l03067"></a><span class="lineno"> 3067</span> } <span class="comment">/* if(FG_PSI) */</span></div>
-<div class="line"><a name="l03068"></a><span class="lineno"> 3068</span> </div>
-<div class="line"><a name="l03069"></a><span class="lineno"> 3069</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l03070"></a><span class="lineno"> 3070</span> {</div>
-<div class="line"><a name="l03071"></a><span class="lineno"> 3071</span> <span class="keyword">const</span> <span class="keywordtype">int</span> K = ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>, ip_s = K / (m + 2);</div>
-<div class="line"><a name="l03072"></a><span class="lineno"> 3072</span> </div>
-<div class="line"><a name="l03073"></a><span class="lineno"> 3073</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l03074"></a><span class="lineno"> 3074</span> </div>
-<div class="line"><a name="l03075"></a><span class="lineno"> 3075</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l03076"></a><span class="lineno"> 3076</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l03077"></a><span class="lineno"> 3077</span> {</div>
-<div class="line"><a name="l03078"></a><span class="lineno"> 3078</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l03079"></a><span class="lineno"> 3079</span> R ip_y, ip_w;</div>
-<div class="line"><a name="l03080"></a><span class="lineno"> 3080</span> <span class="keywordtype">int</span> ip_u;</div>
-<div class="line"><a name="l03081"></a><span class="lineno"> 3081</span> R psij_const[2*(2*m+2)];</div>
-<div class="line"><a name="l03082"></a><span class="lineno"> 3082</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l03083"></a><span class="lineno"> 3083</span> </div>
-<div class="line"><a name="l03084"></a><span class="lineno"> 3084</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l03085"></a><span class="lineno"> 3085</span> ip_y = FABS(n0*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j] - u)*((R)ip_s);</div>
-<div class="line"><a name="l03086"></a><span class="lineno"> 3086</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l03087"></a><span class="lineno"> 3087</span> ip_w = ip_y-ip_u;</div>
-<div class="line"><a name="l03088"></a><span class="lineno"> 3088</span> <span class="keywordflow">for</span>(l=0; l < 2*m+2; l++)</div>
-<div class="line"><a name="l03089"></a><span class="lineno"> 3089</span> psij_const[l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) + ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme. [...]
-<div class="line"><a name="l03090"></a><span class="lineno"> 3090</span> </div>
-<div class="line"><a name="l03091"></a><span class="lineno"> 3091</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l03092"></a><span class="lineno"> 3092</span> ip_y = FABS(n1*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] - u)*((R)ip_s);</div>
-<div class="line"><a name="l03093"></a><span class="lineno"> 3093</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l03094"></a><span class="lineno"> 3094</span> ip_w = ip_y-ip_u;</div>
-<div class="line"><a name="l03095"></a><span class="lineno"> 3095</span> <span class="keywordflow">for</span>(l=0; l < 2*m+2; l++)</div>
-<div class="line"><a name="l03096"></a><span class="lineno"> 3096</span> psij_const[2*m+2+l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(K+1)+ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) + ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputa [...]
-<div class="line"><a name="l03097"></a><span class="lineno"> 3097</span> </div>
-<div class="line"><a name="l03098"></a><span class="lineno"> 3098</span> nfft_trafo_2d_compute(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>+2*j, ths-><a class="code" href="struc [...]
-<div class="line"><a name="l03099"></a><span class="lineno"> 3099</span> }</div>
-<div class="line"><a name="l03100"></a><span class="lineno"> 3100</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l03101"></a><span class="lineno"> 3101</span> } <span class="comment">/* if(PRE_LIN_PSI) */</span></div>
-<div class="line"><a name="l03102"></a><span class="lineno"> 3102</span> </div>
-<div class="line"><a name="l03103"></a><span class="lineno"> 3103</span> <span class="comment">/* no precomputed psi at all */</span></div>
-<div class="line"><a name="l03104"></a><span class="lineno"> 3104</span> </div>
-<div class="line"><a name="l03105"></a><span class="lineno"> 3105</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l03106"></a><span class="lineno"> 3106</span> </div>
-<div class="line"><a name="l03107"></a><span class="lineno"> 3107</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l03108"></a><span class="lineno"> 3108</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l03109"></a><span class="lineno"> 3109</span> {</div>
-<div class="line"><a name="l03110"></a><span class="lineno"> 3110</span> R psij_const[2*(2*m+2)];</div>
-<div class="line"><a name="l03111"></a><span class="lineno"> 3111</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l03112"></a><span class="lineno"> 3112</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used when [...]
-<div class="line"><a name="l03113"></a><span class="lineno"> 3113</span> </div>
-<div class="line"><a name="l03114"></a><span class="lineno"> 3114</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l03115"></a><span class="lineno"> 3115</span> <span class="keywordflow">for</span>(l=0;l<=2*m+1;l++)</div>
-<div class="line"><a name="l03116"></a><span class="lineno"> 3116</span> psij_const[l]=(PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j]-((R)((u+l)))/n0,0));</div>
-<div class="line"><a name="l03117"></a><span class="lineno"> 3117</span> </div>
-<div class="line"><a name="l03118"></a><span class="lineno"> 3118</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l03119"></a><span class="lineno"> 3119</span> <span class="keywordflow">for</span>(l=0;l<=2*m+1;l++)</div>
-<div class="line"><a name="l03120"></a><span class="lineno"> 3120</span> psij_const[2*m+2+l]=(PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]-((R)((u+l)))/n1,1));</div>
-<div class="line"><a name="l03121"></a><span class="lineno"> 3121</span> </div>
-<div class="line"><a name="l03122"></a><span class="lineno"> 3122</span> nfft_trafo_2d_compute(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>+2*j, ths-><a class="code" href="structn [...]
-<div class="line"><a name="l03123"></a><span class="lineno"> 3123</span> }</div>
-<div class="line"><a name="l03124"></a><span class="lineno"> 3124</span> }</div>
-<div class="line"><a name="l03125"></a><span class="lineno"> 3125</span> </div>
-<div class="line"><a name="l03126"></a><span class="lineno"> 3126</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l03127"></a><span class="lineno"> 3127</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_ASSERT_A \</span></div>
-<div class="line"><a name="l03128"></a><span class="lineno"> 3128</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l03129"></a><span class="lineno"> 3129</span> <span class="preprocessor"> assert(ar_x[2*k] >= min_u_a || k == M-1); \</span></div>
-<div class="line"><a name="l03130"></a><span class="lineno"> 3130</span> <span class="preprocessor"> if (k > 0) \</span></div>
-<div class="line"><a name="l03131"></a><span class="lineno"> 3131</span> <span class="preprocessor"> assert(ar_x[2*k-2] < min_u_a); \</span></div>
-<div class="line"><a name="l03132"></a><span class="lineno"> 3132</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l03133"></a><span class="lineno"> 3133</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l03134"></a><span class="lineno"> 3134</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_ASSERT_A</span></div>
-<div class="line"><a name="l03135"></a><span class="lineno"> 3135</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03136"></a><span class="lineno"> 3136</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03137"></a><span class="lineno"> 3137</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l03138"></a><span class="lineno"> 3138</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_ASSERT_B \</span></div>
-<div class="line"><a name="l03139"></a><span class="lineno"> 3139</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l03140"></a><span class="lineno"> 3140</span> <span class="preprocessor"> assert(ar_x[2*k] >= min_u_b || k == M-1); \</span></div>
-<div class="line"><a name="l03141"></a><span class="lineno"> 3141</span> <span class="preprocessor"> if (k > 0) \</span></div>
-<div class="line"><a name="l03142"></a><span class="lineno"> 3142</span> <span class="preprocessor"> assert(ar_x[2*k-2] < min_u_b); \</span></div>
-<div class="line"><a name="l03143"></a><span class="lineno"> 3143</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l03144"></a><span class="lineno"> 3144</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l03145"></a><span class="lineno"> 3145</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_ASSERT_B</span></div>
-<div class="line"><a name="l03146"></a><span class="lineno"> 3146</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03147"></a><span class="lineno"> 3147</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03148"></a><span class="lineno"> 3148</span> <span class="preprocessor">#define MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_COMPUTE_PRE_PSI \</span></div>
-<div class="line"><a name="l03149"></a><span class="lineno"> 3149</span> <span class="preprocessor"> nfft_adjoint_2d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l03150"></a><span class="lineno"> 3150</span> <span class="preprocessor"> ths->psi+j*2*(2*m+2), ths->psi+(j*2+1)*(2*m+2), \</span></div>
-<div class="line"><a name="l03151"></a><span class="lineno"> 3151</span> <span class="preprocessor"> ths->x+2*j, ths->x+2*j+1, n0, n1, m, my_u0, my_o0);</span></div>
-<div class="line"><a name="l03152"></a><span class="lineno"> 3152</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03153"></a><span class="lineno"> 3153</span> <span class="preprocessor">#define MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_COMPUTE_PRE_FG_PSI \</span></div>
-<div class="line"><a name="l03154"></a><span class="lineno"> 3154</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l03155"></a><span class="lineno"> 3155</span> <span class="preprocessor"> R psij_const[2*(2*m+2)]; \</span></div>
-<div class="line"><a name="l03156"></a><span class="lineno"> 3156</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l03157"></a><span class="lineno"> 3157</span> <span class="preprocessor"> R fg_psij0 = ths->psi[2*j*2]; \</span></div>
-<div class="line"><a name="l03158"></a><span class="lineno"> 3158</span> <span class="preprocessor"> R fg_psij1 = ths->psi[2*j*2+1]; \</span></div>
-<div class="line"><a name="l03159"></a><span class="lineno"> 3159</span> <span class="preprocessor"> R fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l03160"></a><span class="lineno"> 3160</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03161"></a><span class="lineno"> 3161</span> <span class="preprocessor"> psij_const[0] = fg_psij0; \</span></div>
-<div class="line"><a name="l03162"></a><span class="lineno"> 3162</span> <span class="preprocessor"> for(l=1; l<=2*m+1; l++) \</span></div>
-<div class="line"><a name="l03163"></a><span class="lineno"> 3163</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l03164"></a><span class="lineno"> 3164</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l03165"></a><span class="lineno"> 3165</span> <span class="preprocessor"> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l]; \</span></div>
-<div class="line"><a name="l03166"></a><span class="lineno"> 3166</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l03167"></a><span class="lineno"> 3167</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03168"></a><span class="lineno"> 3168</span> <span class="preprocessor"> fg_psij0 = ths->psi[2*(j*2+1)]; \</span></div>
-<div class="line"><a name="l03169"></a><span class="lineno"> 3169</span> <span class="preprocessor"> fg_psij1 = ths->psi[2*(j*2+1)+1]; \</span></div>
-<div class="line"><a name="l03170"></a><span class="lineno"> 3170</span> <span class="preprocessor"> fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l03171"></a><span class="lineno"> 3171</span> <span class="preprocessor"> psij_const[2*m+2] = fg_psij0; \</span></div>
-<div class="line"><a name="l03172"></a><span class="lineno"> 3172</span> <span class="preprocessor"> for(l=1; l<=2*m+1; l++) \</span></div>
-<div class="line"><a name="l03173"></a><span class="lineno"> 3173</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l03174"></a><span class="lineno"> 3174</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l03175"></a><span class="lineno"> 3175</span> <span class="preprocessor"> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l]; \</span></div>
-<div class="line"><a name="l03176"></a><span class="lineno"> 3176</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l03177"></a><span class="lineno"> 3177</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03178"></a><span class="lineno"> 3178</span> <span class="preprocessor"> nfft_adjoint_2d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l03179"></a><span class="lineno"> 3179</span> <span class="preprocessor"> psij_const, psij_const+2*m+2, ths->x+2*j, ths->x+2*j+1, \</span></div>
-<div class="line"><a name="l03180"></a><span class="lineno"> 3180</span> <span class="preprocessor"> n0, n1, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l03181"></a><span class="lineno"> 3181</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l03182"></a><span class="lineno"> 3182</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03183"></a><span class="lineno"> 3183</span> <span class="preprocessor">#define MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_COMPUTE_FG_PSI \</span></div>
-<div class="line"><a name="l03184"></a><span class="lineno"> 3184</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l03185"></a><span class="lineno"> 3185</span> <span class="preprocessor"> R psij_const[2*(2*m+2)]; \</span></div>
-<div class="line"><a name="l03186"></a><span class="lineno"> 3186</span> <span class="preprocessor"> R fg_psij0, fg_psij1, fg_psij2; \</span></div>
-<div class="line"><a name="l03187"></a><span class="lineno"> 3187</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l03188"></a><span class="lineno"> 3188</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03189"></a><span class="lineno"> 3189</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,0); \</span></div>
-<div class="line"><a name="l03190"></a><span class="lineno"> 3190</span> <span class="preprocessor"> fg_psij0 = (PHI(ths->x[2*j]-((R)u)/n0,0)); \</span></div>
-<div class="line"><a name="l03191"></a><span class="lineno"> 3191</span> <span class="preprocessor"> fg_psij1 = EXP(K(2.0)*(n0*(ths->x[2*j]) - u)/ths->b[0]); \</span></div>
-<div class="line"><a name="l03192"></a><span class="lineno"> 3192</span> <span class="preprocessor"> fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l03193"></a><span class="lineno"> 3193</span> <span class="preprocessor"> psij_const[0] = fg_psij0; \</span></div>
-<div class="line"><a name="l03194"></a><span class="lineno"> 3194</span> <span class="preprocessor"> for(l=1; l<=2*m+1; l++) \</span></div>
-<div class="line"><a name="l03195"></a><span class="lineno"> 3195</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l03196"></a><span class="lineno"> 3196</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l03197"></a><span class="lineno"> 3197</span> <span class="preprocessor"> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l]; \</span></div>
-<div class="line"><a name="l03198"></a><span class="lineno"> 3198</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l03199"></a><span class="lineno"> 3199</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03200"></a><span class="lineno"> 3200</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,1); \</span></div>
-<div class="line"><a name="l03201"></a><span class="lineno"> 3201</span> <span class="preprocessor"> fg_psij0 = (PHI(ths->x[2*j+1]-((R)u)/n1,1)); \</span></div>
-<div class="line"><a name="l03202"></a><span class="lineno"> 3202</span> <span class="preprocessor"> fg_psij1 = EXP(K(2.0)*(n1*(ths->x[2*j+1]) - u)/ths->b[1]); \</span></div>
-<div class="line"><a name="l03203"></a><span class="lineno"> 3203</span> <span class="preprocessor"> fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l03204"></a><span class="lineno"> 3204</span> <span class="preprocessor"> psij_const[2*m+2] = fg_psij0; \</span></div>
-<div class="line"><a name="l03205"></a><span class="lineno"> 3205</span> <span class="preprocessor"> for(l=1; l<=2*m+1; l++) \</span></div>
-<div class="line"><a name="l03206"></a><span class="lineno"> 3206</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l03207"></a><span class="lineno"> 3207</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l03208"></a><span class="lineno"> 3208</span> <span class="preprocessor"> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l]; \</span></div>
-<div class="line"><a name="l03209"></a><span class="lineno"> 3209</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l03210"></a><span class="lineno"> 3210</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03211"></a><span class="lineno"> 3211</span> <span class="preprocessor"> nfft_adjoint_2d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l03212"></a><span class="lineno"> 3212</span> <span class="preprocessor"> psij_const, psij_const+2*m+2, ths->x+2*j, ths->x+2*j+1, \</span></div>
-<div class="line"><a name="l03213"></a><span class="lineno"> 3213</span> <span class="preprocessor"> n0, n1, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l03214"></a><span class="lineno"> 3214</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l03215"></a><span class="lineno"> 3215</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03216"></a><span class="lineno"> 3216</span> <span class="preprocessor">#define MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_COMPUTE_PRE_LIN_PSI \</span></div>
-<div class="line"><a name="l03217"></a><span class="lineno"> 3217</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l03218"></a><span class="lineno"> 3218</span> <span class="preprocessor"> R psij_const[2*(2*m+2)]; \</span></div>
-<div class="line"><a name="l03219"></a><span class="lineno"> 3219</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l03220"></a><span class="lineno"> 3220</span> <span class="preprocessor"> int ip_u; \</span></div>
-<div class="line"><a name="l03221"></a><span class="lineno"> 3221</span> <span class="preprocessor"> R ip_y, ip_w; \</span></div>
-<div class="line"><a name="l03222"></a><span class="lineno"> 3222</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03223"></a><span class="lineno"> 3223</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,0); \</span></div>
-<div class="line"><a name="l03224"></a><span class="lineno"> 3224</span> <span class="preprocessor"> ip_y = FABS(n0*(ths->x[2*j]) - u)*((R)ip_s); \</span></div>
-<div class="line"><a name="l03225"></a><span class="lineno"> 3225</span> <span class="preprocessor"> ip_u = LRINT(FLOOR(ip_y)); \</span></div>
-<div class="line"><a name="l03226"></a><span class="lineno"> 3226</span> <span class="preprocessor"> ip_w = ip_y-ip_u; \</span></div>
-<div class="line"><a name="l03227"></a><span class="lineno"> 3227</span> <span class="preprocessor"> for(l=0; l < 2*m+2; l++) \</span></div>
-<div class="line"><a name="l03228"></a><span class="lineno"> 3228</span> <span class="preprocessor"> psij_const[l] = ths->psi[ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) + \</span></div>
-<div class="line"><a name="l03229"></a><span class="lineno"> 3229</span> <span class="preprocessor"> ths->psi[ABS(ip_u-l*ip_s+1)]*(ip_w); \</span></div>
-<div class="line"><a name="l03230"></a><span class="lineno"> 3230</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03231"></a><span class="lineno"> 3231</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,1); \</span></div>
-<div class="line"><a name="l03232"></a><span class="lineno"> 3232</span> <span class="preprocessor"> ip_y = FABS(n1*(ths->x[2*j+1]) - u)*((R)ip_s); \</span></div>
-<div class="line"><a name="l03233"></a><span class="lineno"> 3233</span> <span class="preprocessor"> ip_u = LRINT(FLOOR(ip_y)); \</span></div>
-<div class="line"><a name="l03234"></a><span class="lineno"> 3234</span> <span class="preprocessor"> ip_w = ip_y-ip_u; \</span></div>
-<div class="line"><a name="l03235"></a><span class="lineno"> 3235</span> <span class="preprocessor"> for(l=0; l < 2*m+2; l++) \</span></div>
-<div class="line"><a name="l03236"></a><span class="lineno"> 3236</span> <span class="preprocessor"> psij_const[2*m+2+l] = ths->psi[(K+1)+ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) + \</span></div>
-<div class="line"><a name="l03237"></a><span class="lineno"> 3237</span> <span class="preprocessor"> ths->psi[(K+1)+ABS(ip_u-l*ip_s+1)]*(ip_w); \</span></div>
-<div class="line"><a name="l03238"></a><span class="lineno"> 3238</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03239"></a><span class="lineno"> 3239</span> <span class="preprocessor"> nfft_adjoint_2d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l03240"></a><span class="lineno"> 3240</span> <span class="preprocessor"> psij_const, psij_const+2*m+2, ths->x+2*j, ths->x+2*j+1, \</span></div>
-<div class="line"><a name="l03241"></a><span class="lineno"> 3241</span> <span class="preprocessor"> n0, n1, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l03242"></a><span class="lineno"> 3242</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l03243"></a><span class="lineno"> 3243</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03244"></a><span class="lineno"> 3244</span> <span class="preprocessor">#define MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_COMPUTE_NO_PSI \</span></div>
-<div class="line"><a name="l03245"></a><span class="lineno"> 3245</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l03246"></a><span class="lineno"> 3246</span> <span class="preprocessor"> R psij_const[2*(2*m+2)]; \</span></div>
-<div class="line"><a name="l03247"></a><span class="lineno"> 3247</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l03248"></a><span class="lineno"> 3248</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03249"></a><span class="lineno"> 3249</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,0); \</span></div>
-<div class="line"><a name="l03250"></a><span class="lineno"> 3250</span> <span class="preprocessor"> for(l=0;l<=2*m+1;l++) \</span></div>
-<div class="line"><a name="l03251"></a><span class="lineno"> 3251</span> <span class="preprocessor"> psij_const[l]=(PHI(ths->x[2*j]-((R)((u+l)))/n0,0)); \</span></div>
-<div class="line"><a name="l03252"></a><span class="lineno"> 3252</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03253"></a><span class="lineno"> 3253</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,1); \</span></div>
-<div class="line"><a name="l03254"></a><span class="lineno"> 3254</span> <span class="preprocessor"> for(l=0;l<=2*m+1;l++) \</span></div>
-<div class="line"><a name="l03255"></a><span class="lineno"> 3255</span> <span class="preprocessor"> psij_const[2*m+2+l]=(PHI(ths->x[2*j+1]-((R)((u+l)))/n1,1)); \</span></div>
-<div class="line"><a name="l03256"></a><span class="lineno"> 3256</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03257"></a><span class="lineno"> 3257</span> <span class="preprocessor"> nfft_adjoint_2d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l03258"></a><span class="lineno"> 3258</span> <span class="preprocessor"> psij_const, psij_const+2*m+2, ths->x+2*j, ths->x+2*j+1, \</span></div>
-<div class="line"><a name="l03259"></a><span class="lineno"> 3259</span> <span class="preprocessor"> n0, n1, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l03260"></a><span class="lineno"> 3260</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l03261"></a><span class="lineno"> 3261</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03262"></a><span class="lineno"> 3262</span> <span class="preprocessor">#define MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE(whichone) \</span></div>
-<div class="line"><a name="l03263"></a><span class="lineno"> 3263</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l03264"></a><span class="lineno"> 3264</span> <span class="preprocessor"> if (ths->nfft_flags & NFFT_OMP_BLOCKWISE_ADJOINT) \</span></div>
-<div class="line"><a name="l03265"></a><span class="lineno"> 3265</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l03266"></a><span class="lineno"> 3266</span> <span class="preprocessor"> _Pragma("omp parallel private(k)") \</span></div>
-<div class="line"><a name="l03267"></a><span class="lineno"> 3267</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l03268"></a><span class="lineno"> 3268</span> <span class="preprocessor"> int my_u0, my_o0, min_u_a, max_u_a, min_u_b, max_u_b; \</span></div>
-<div class="line"><a name="l03269"></a><span class="lineno"> 3269</span> <span class="preprocessor"> int *ar_x = ths->index_x; \</span></div>
-<div class="line"><a name="l03270"></a><span class="lineno"> 3270</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03271"></a><span class="lineno"> 3271</span> <span class="preprocessor"> nfft_adjoint_B_omp_blockwise_init(&my_u0, &my_o0, &min_u_a, &max_u_a, \</span></div>
-<div class="line"><a name="l03272"></a><span class="lineno"> 3272</span> <span class="preprocessor"> &min_u_b, &max_u_b, 2, ths->n, m); \</span></div>
-<div class="line"><a name="l03273"></a><span class="lineno"> 3273</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03274"></a><span class="lineno"> 3274</span> <span class="preprocessor"> if (min_u_a != -1) \</span></div>
-<div class="line"><a name="l03275"></a><span class="lineno"> 3275</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l03276"></a><span class="lineno"> 3276</span> <span class="preprocessor"> k = index_x_binary_search(ar_x, M, min_u_a); \</span></div>
-<div class="line"><a name="l03277"></a><span class="lineno"> 3277</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03278"></a><span class="lineno"> 3278</span> <span class="preprocessor"> MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_ASSERT_A \</span></div>
-<div class="line"><a name="l03279"></a><span class="lineno"> 3279</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03280"></a><span class="lineno"> 3280</span> <span class="preprocessor"> while (k < M) \</span></div>
-<div class="line"><a name="l03281"></a><span class="lineno"> 3281</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l03282"></a><span class="lineno"> 3282</span> <span class="preprocessor"> int u_prod = ar_x[2*k]; \</span></div>
-<div class="line"><a name="l03283"></a><span class="lineno"> 3283</span> <span class="preprocessor"> int j = ar_x[2*k+1]; \</span></div>
-<div class="line"><a name="l03284"></a><span class="lineno"> 3284</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03285"></a><span class="lineno"> 3285</span> <span class="preprocessor"> if (u_prod < min_u_a || u_prod > max_u_a) \</span></div>
-<div class="line"><a name="l03286"></a><span class="lineno"> 3286</span> <span class="preprocessor"> break; \</span></div>
-<div class="line"><a name="l03287"></a><span class="lineno"> 3287</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03288"></a><span class="lineno"> 3288</span> <span class="preprocessor"> MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_COMPUTE_ ##whichone \</span></div>
-<div class="line"><a name="l03289"></a><span class="lineno"> 3289</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03290"></a><span class="lineno"> 3290</span> <span class="preprocessor"> k++; \</span></div>
-<div class="line"><a name="l03291"></a><span class="lineno"> 3291</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l03292"></a><span class="lineno"> 3292</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l03293"></a><span class="lineno"> 3293</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03294"></a><span class="lineno"> 3294</span> <span class="preprocessor"> if (min_u_b != -1) \</span></div>
-<div class="line"><a name="l03295"></a><span class="lineno"> 3295</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l03296"></a><span class="lineno"> 3296</span> <span class="preprocessor"> int k = index_x_binary_search(ar_x, M, min_u_b); \</span></div>
-<div class="line"><a name="l03297"></a><span class="lineno"> 3297</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03298"></a><span class="lineno"> 3298</span> <span class="preprocessor"> MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_ASSERT_B \</span></div>
-<div class="line"><a name="l03299"></a><span class="lineno"> 3299</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03300"></a><span class="lineno"> 3300</span> <span class="preprocessor"> while (k < M) \</span></div>
-<div class="line"><a name="l03301"></a><span class="lineno"> 3301</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l03302"></a><span class="lineno"> 3302</span> <span class="preprocessor"> int u_prod = ar_x[2*k]; \</span></div>
-<div class="line"><a name="l03303"></a><span class="lineno"> 3303</span> <span class="preprocessor"> int j = ar_x[2*k+1]; \</span></div>
-<div class="line"><a name="l03304"></a><span class="lineno"> 3304</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03305"></a><span class="lineno"> 3305</span> <span class="preprocessor"> if (u_prod < min_u_b || u_prod > max_u_b) \</span></div>
-<div class="line"><a name="l03306"></a><span class="lineno"> 3306</span> <span class="preprocessor"> break; \</span></div>
-<div class="line"><a name="l03307"></a><span class="lineno"> 3307</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03308"></a><span class="lineno"> 3308</span> <span class="preprocessor"> MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE_COMPUTE_ ##whichone \</span></div>
-<div class="line"><a name="l03309"></a><span class="lineno"> 3309</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03310"></a><span class="lineno"> 3310</span> <span class="preprocessor"> k++; \</span></div>
-<div class="line"><a name="l03311"></a><span class="lineno"> 3311</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l03312"></a><span class="lineno"> 3312</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l03313"></a><span class="lineno"> 3313</span> <span class="preprocessor"> } </span><span class="comment">/* omp parallel */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03314"></a><span class="lineno"> 3314</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l03315"></a><span class="lineno"> 3315</span> <span class="preprocessor"> } </span><span class="comment">/* if(NFFT_OMP_BLOCKWISE_ADJOINT) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l03316"></a><span class="lineno"> 3316</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l03317"></a><span class="lineno"> 3317</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03318"></a><span class="lineno"> 3318</span> </div>
-<div class="line"><a name="l03319"></a><span class="lineno"> 3319</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_2d_B(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l03320"></a><span class="lineno"> 3320</span> {</div>
-<div class="line"><a name="l03321"></a><span class="lineno"> 3321</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N0 = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];</div>
-<div class="line"><a name="l03322"></a><span class="lineno"> 3322</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0 = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0];</div>
-<div class="line"><a name="l03323"></a><span class="lineno"> 3323</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N1 = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];</div>
-<div class="line"><a name="l03324"></a><span class="lineno"> 3324</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n1 = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[1];</div>
-<div class="line"><a name="l03325"></a><span class="lineno"> 3325</span> <span class="keyword">const</span> <span class="keywordtype">int</span> M = ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l03326"></a><span class="lineno"> 3326</span> <span class="keyword">const</span> <span class="keywordtype">int</span> m = ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>;</div>
-<div class="line"><a name="l03327"></a><span class="lineno"> 3327</span> C* g = (C*) ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>;</div>
-<div class="line"><a name="l03328"></a><span class="lineno"> 3328</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l03329"></a><span class="lineno"> 3329</span> </div>
-<div class="line"><a name="l03330"></a><span class="lineno"> 3330</span> memset(g,0,ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l03331"></a><span class="lineno"> 3331</span> </div>
-<div class="line"><a name="l03332"></a><span class="lineno"> 3332</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l03333"></a><span class="lineno"> 3333</span> {</div>
-<div class="line"><a name="l03334"></a><span class="lineno"> 3334</span> nfft_adjoint_B_compute_full_psi(g, ths-><a class="code" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_g</a>, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>, ths-><a class="code" href= [...]
-<div class="line"><a name="l03335"></a><span class="lineno"> 3335</span> 2, ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>, m, ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a>, ths-><a cl [...]
-<div class="line"><a name="l03336"></a><span class="lineno"> 3336</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l03337"></a><span class="lineno"> 3337</span> } <span class="comment">/* if(PRE_FULL_PSI) */</span></div>
-<div class="line"><a name="l03338"></a><span class="lineno"> 3338</span> </div>
-<div class="line"><a name="l03339"></a><span class="lineno"> 3339</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l03340"></a><span class="lineno"> 3340</span> {</div>
-<div class="line"><a name="l03341"></a><span class="lineno"> 3341</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03342"></a><span class="lineno"> 3342</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE(PRE_PSI)</div>
-<div class="line"><a name="l03343"></a><span class="lineno"> 3343</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03344"></a><span class="lineno"> 3344</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03345"></a><span class="lineno"> 3345</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l03346"></a><span class="lineno"> 3346</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l03347"></a><span class="lineno"> 3347</span> {</div>
-<div class="line"><a name="l03348"></a><span class="lineno"> 3348</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l03349"></a><span class="lineno"> 3349</span> #ifdef _OPENMP</div>
-<div class="line"><a name="l03350"></a><span class="lineno"> 3350</span> nfft_adjoint_2d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>+j*2*(2*m+2), ths->< [...]
-<div class="line"><a name="l03351"></a><span class="lineno"> 3351</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l03352"></a><span class="lineno"> 3352</span> <span class="preprocessor"></span> nfft_adjoint_2d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">p [...]
-<div class="line"><a name="l03353"></a><span class="lineno"> 3353</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03354"></a><span class="lineno"> 3354</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l03355"></a><span class="lineno"> 3355</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l03356"></a><span class="lineno"> 3356</span> } <span class="comment">/* if(PRE_PSI) */</span></div>
-<div class="line"><a name="l03357"></a><span class="lineno"> 3357</span> </div>
-<div class="line"><a name="l03358"></a><span class="lineno"> 3358</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l03359"></a><span class="lineno"> 3359</span> {</div>
-<div class="line"><a name="l03360"></a><span class="lineno"> 3360</span> R fg_exp_l[2*(2*m+2)];</div>
-<div class="line"><a name="l03361"></a><span class="lineno"> 3361</span> </div>
-<div class="line"><a name="l03362"></a><span class="lineno"> 3362</span> nfft_2d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l03363"></a><span class="lineno"> 3363</span> nfft_2d_init_fg_exp_l(fg_exp_l+2*m+2, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l03364"></a><span class="lineno"> 3364</span> </div>
-<div class="line"><a name="l03365"></a><span class="lineno"> 3365</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03366"></a><span class="lineno"> 3366</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE(PRE_FG_PSI)</div>
-<div class="line"><a name="l03367"></a><span class="lineno"> 3367</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03368"></a><span class="lineno"> 3368</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03369"></a><span class="lineno"> 3369</span> </div>
-<div class="line"><a name="l03370"></a><span class="lineno"> 3370</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l03371"></a><span class="lineno"> 3371</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l03372"></a><span class="lineno"> 3372</span> {</div>
-<div class="line"><a name="l03373"></a><span class="lineno"> 3373</span> R psij_const[2*(2*m+2)];</div>
-<div class="line"><a name="l03374"></a><span class="lineno"> 3374</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l03375"></a><span class="lineno"> 3375</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l03376"></a><span class="lineno"> 3376</span> R fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*j*2];</div>
-<div class="line"><a name="l03377"></a><span class="lineno"> 3377</span> R fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*j*2+1];</div>
-<div class="line"><a name="l03378"></a><span class="lineno"> 3378</span> R fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l03379"></a><span class="lineno"> 3379</span> </div>
-<div class="line"><a name="l03380"></a><span class="lineno"> 3380</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l03381"></a><span class="lineno"> 3381</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l03382"></a><span class="lineno"> 3382</span> {</div>
-<div class="line"><a name="l03383"></a><span class="lineno"> 3383</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l03384"></a><span class="lineno"> 3384</span> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l];</div>
-<div class="line"><a name="l03385"></a><span class="lineno"> 3385</span> }</div>
-<div class="line"><a name="l03386"></a><span class="lineno"> 3386</span> </div>
-<div class="line"><a name="l03387"></a><span class="lineno"> 3387</span> fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*2+1)];</div>
-<div class="line"><a name="l03388"></a><span class="lineno"> 3388</span> fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*2+1)+1];</div>
-<div class="line"><a name="l03389"></a><span class="lineno"> 3389</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l03390"></a><span class="lineno"> 3390</span> psij_const[2*m+2] = fg_psij0;</div>
-<div class="line"><a name="l03391"></a><span class="lineno"> 3391</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l03392"></a><span class="lineno"> 3392</span> {</div>
-<div class="line"><a name="l03393"></a><span class="lineno"> 3393</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l03394"></a><span class="lineno"> 3394</span> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l];</div>
-<div class="line"><a name="l03395"></a><span class="lineno"> 3395</span> }</div>
-<div class="line"><a name="l03396"></a><span class="lineno"> 3396</span> </div>
-<div class="line"><a name="l03397"></a><span class="lineno"> 3397</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03398"></a><span class="lineno"> 3398</span> <span class="preprocessor"></span> nfft_adjoint_2d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles. [...]
-<div class="line"><a name="l03399"></a><span class="lineno"> 3399</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l03400"></a><span class="lineno"> 3400</span> <span class="preprocessor"></span> nfft_adjoint_2d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</ [...]
-<div class="line"><a name="l03401"></a><span class="lineno"> 3401</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03402"></a><span class="lineno"> 3402</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l03403"></a><span class="lineno"> 3403</span> </div>
-<div class="line"><a name="l03404"></a><span class="lineno"> 3404</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l03405"></a><span class="lineno"> 3405</span> } <span class="comment">/* if(PRE_FG_PSI) */</span></div>
-<div class="line"><a name="l03406"></a><span class="lineno"> 3406</span> </div>
-<div class="line"><a name="l03407"></a><span class="lineno"> 3407</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FG_PSI)</div>
-<div class="line"><a name="l03408"></a><span class="lineno"> 3408</span> {</div>
-<div class="line"><a name="l03409"></a><span class="lineno"> 3409</span> R fg_exp_l[2*(2*m+2)];</div>
-<div class="line"><a name="l03410"></a><span class="lineno"> 3410</span> </div>
-<div class="line"><a name="l03411"></a><span class="lineno"> 3411</span> nfft_2d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l03412"></a><span class="lineno"> 3412</span> nfft_2d_init_fg_exp_l(fg_exp_l+2*m+2, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l03413"></a><span class="lineno"> 3413</span> </div>
-<div class="line"><a name="l03414"></a><span class="lineno"> 3414</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l03415"></a><span class="lineno"> 3415</span> </div>
-<div class="line"><a name="l03416"></a><span class="lineno"> 3416</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03417"></a><span class="lineno"> 3417</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE(FG_PSI)</div>
-<div class="line"><a name="l03418"></a><span class="lineno"> 3418</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03419"></a><span class="lineno"> 3419</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03420"></a><span class="lineno"> 3420</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l03421"></a><span class="lineno"> 3421</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l03422"></a><span class="lineno"> 3422</span> {</div>
-<div class="line"><a name="l03423"></a><span class="lineno"> 3423</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l03424"></a><span class="lineno"> 3424</span> R fg_psij0, fg_psij1, fg_psij2;</div>
-<div class="line"><a name="l03425"></a><span class="lineno"> 3425</span> R psij_const[2*(2*m+2)];</div>
-<div class="line"><a name="l03426"></a><span class="lineno"> 3426</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l03427"></a><span class="lineno"> 3427</span> </div>
-<div class="line"><a name="l03428"></a><span class="lineno"> 3428</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l03429"></a><span class="lineno"> 3429</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j]-((R)u)/n0,0));</div>
-<div class="line"><a name="l03430"></a><span class="lineno"> 3430</span> fg_psij1 = EXP(K(2.0)*(n0*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j]) - u)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l03431"></a><span class="lineno"> 3431</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l03432"></a><span class="lineno"> 3432</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l03433"></a><span class="lineno"> 3433</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l03434"></a><span class="lineno"> 3434</span> {</div>
-<div class="line"><a name="l03435"></a><span class="lineno"> 3435</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l03436"></a><span class="lineno"> 3436</span> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l];</div>
-<div class="line"><a name="l03437"></a><span class="lineno"> 3437</span> }</div>
-<div class="line"><a name="l03438"></a><span class="lineno"> 3438</span> </div>
-<div class="line"><a name="l03439"></a><span class="lineno"> 3439</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l03440"></a><span class="lineno"> 3440</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]-((R)u)/n1,1));</div>
-<div class="line"><a name="l03441"></a><span class="lineno"> 3441</span> fg_psij1 = EXP(K(2.0)*(n1*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]) - u)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l03442"></a><span class="lineno"> 3442</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l03443"></a><span class="lineno"> 3443</span> psij_const[2*m+2] = fg_psij0;</div>
-<div class="line"><a name="l03444"></a><span class="lineno"> 3444</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l03445"></a><span class="lineno"> 3445</span> {</div>
-<div class="line"><a name="l03446"></a><span class="lineno"> 3446</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l03447"></a><span class="lineno"> 3447</span> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l];</div>
-<div class="line"><a name="l03448"></a><span class="lineno"> 3448</span> }</div>
-<div class="line"><a name="l03449"></a><span class="lineno"> 3449</span> </div>
-<div class="line"><a name="l03450"></a><span class="lineno"> 3450</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03451"></a><span class="lineno"> 3451</span> <span class="preprocessor"></span> nfft_adjoint_2d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles. [...]
-<div class="line"><a name="l03452"></a><span class="lineno"> 3452</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l03453"></a><span class="lineno"> 3453</span> <span class="preprocessor"></span> nfft_adjoint_2d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</ [...]
-<div class="line"><a name="l03454"></a><span class="lineno"> 3454</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03455"></a><span class="lineno"> 3455</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l03456"></a><span class="lineno"> 3456</span> </div>
-<div class="line"><a name="l03457"></a><span class="lineno"> 3457</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l03458"></a><span class="lineno"> 3458</span> } <span class="comment">/* if(FG_PSI) */</span></div>
-<div class="line"><a name="l03459"></a><span class="lineno"> 3459</span> </div>
-<div class="line"><a name="l03460"></a><span class="lineno"> 3460</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l03461"></a><span class="lineno"> 3461</span> {</div>
-<div class="line"><a name="l03462"></a><span class="lineno"> 3462</span> <span class="keyword">const</span> <span class="keywordtype">int</span> K = ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>;</div>
-<div class="line"><a name="l03463"></a><span class="lineno"> 3463</span> <span class="keyword">const</span> <span class="keywordtype">int</span> ip_s = K / (m + 2);</div>
-<div class="line"><a name="l03464"></a><span class="lineno"> 3464</span> </div>
-<div class="line"><a name="l03465"></a><span class="lineno"> 3465</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l03466"></a><span class="lineno"> 3466</span> </div>
-<div class="line"><a name="l03467"></a><span class="lineno"> 3467</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03468"></a><span class="lineno"> 3468</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE(PRE_LIN_PSI)</div>
-<div class="line"><a name="l03469"></a><span class="lineno"> 3469</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03470"></a><span class="lineno"> 3470</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03471"></a><span class="lineno"> 3471</span> <span class="preprocessor"> #pragma openmp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l03472"></a><span class="lineno"> 3472</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l03473"></a><span class="lineno"> 3473</span> {</div>
-<div class="line"><a name="l03474"></a><span class="lineno"> 3474</span> <span class="keywordtype">int</span> u,o,l;</div>
-<div class="line"><a name="l03475"></a><span class="lineno"> 3475</span> <span class="keywordtype">int</span> ip_u;</div>
-<div class="line"><a name="l03476"></a><span class="lineno"> 3476</span> R ip_y, ip_w;</div>
-<div class="line"><a name="l03477"></a><span class="lineno"> 3477</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l03478"></a><span class="lineno"> 3478</span> R psij_const[2*(2*m+2)];</div>
-<div class="line"><a name="l03479"></a><span class="lineno"> 3479</span> </div>
-<div class="line"><a name="l03480"></a><span class="lineno"> 3480</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l03481"></a><span class="lineno"> 3481</span> ip_y = FABS(n0*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j]) - u)*((R)ip_s);</div>
-<div class="line"><a name="l03482"></a><span class="lineno"> 3482</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l03483"></a><span class="lineno"> 3483</span> ip_w = ip_y-ip_u;</div>
-<div class="line"><a name="l03484"></a><span class="lineno"> 3484</span> <span class="keywordflow">for</span>(l=0; l < 2*m+2; l++)</div>
-<div class="line"><a name="l03485"></a><span class="lineno"> 3485</span> psij_const[l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) +</div>
-<div class="line"><a name="l03486"></a><span class="lineno"> 3486</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s+1)]*(ip_w);</div>
-<div class="line"><a name="l03487"></a><span class="lineno"> 3487</span> </div>
-<div class="line"><a name="l03488"></a><span class="lineno"> 3488</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l03489"></a><span class="lineno"> 3489</span> ip_y = FABS(n1*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]) - u)*((R)ip_s);</div>
-<div class="line"><a name="l03490"></a><span class="lineno"> 3490</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l03491"></a><span class="lineno"> 3491</span> ip_w = ip_y-ip_u;</div>
-<div class="line"><a name="l03492"></a><span class="lineno"> 3492</span> <span class="keywordflow">for</span>(l=0; l < 2*m+2; l++)</div>
-<div class="line"><a name="l03493"></a><span class="lineno"> 3493</span> psij_const[2*m+2+l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(K+1)+ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) +</div>
-<div class="line"><a name="l03494"></a><span class="lineno"> 3494</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(K+1)+ABS(ip_u-l*ip_s+1)]*(ip_w);</div>
-<div class="line"><a name="l03495"></a><span class="lineno"> 3495</span> </div>
-<div class="line"><a name="l03496"></a><span class="lineno"> 3496</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03497"></a><span class="lineno"> 3497</span> <span class="preprocessor"></span> nfft_adjoint_2d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles. [...]
-<div class="line"><a name="l03498"></a><span class="lineno"> 3498</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l03499"></a><span class="lineno"> 3499</span> <span class="preprocessor"></span> nfft_adjoint_2d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</ [...]
-<div class="line"><a name="l03500"></a><span class="lineno"> 3500</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03501"></a><span class="lineno"> 3501</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l03502"></a><span class="lineno"> 3502</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l03503"></a><span class="lineno"> 3503</span> } <span class="comment">/* if(PRE_LIN_PSI) */</span></div>
-<div class="line"><a name="l03504"></a><span class="lineno"> 3504</span> </div>
-<div class="line"><a name="l03505"></a><span class="lineno"> 3505</span> <span class="comment">/* no precomputed psi at all */</span></div>
-<div class="line"><a name="l03506"></a><span class="lineno"> 3506</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l03507"></a><span class="lineno"> 3507</span> </div>
-<div class="line"><a name="l03508"></a><span class="lineno"> 3508</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03509"></a><span class="lineno"> 3509</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_2d_B_OMP_BLOCKWISE(NO_PSI)</div>
-<div class="line"><a name="l03510"></a><span class="lineno"> 3510</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03511"></a><span class="lineno"> 3511</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03512"></a><span class="lineno"> 3512</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l03513"></a><span class="lineno"> 3513</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l03514"></a><span class="lineno"> 3514</span> {</div>
-<div class="line"><a name="l03515"></a><span class="lineno"> 3515</span> <span class="keywordtype">int</span> u,o,l;</div>
-<div class="line"><a name="l03516"></a><span class="lineno"> 3516</span> R psij_const[2*(2*m+2)];</div>
-<div class="line"><a name="l03517"></a><span class="lineno"> 3517</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used when [...]
-<div class="line"><a name="l03518"></a><span class="lineno"> 3518</span> </div>
-<div class="line"><a name="l03519"></a><span class="lineno"> 3519</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l03520"></a><span class="lineno"> 3520</span> <span class="keywordflow">for</span>(l=0;l<=2*m+1;l++)</div>
-<div class="line"><a name="l03521"></a><span class="lineno"> 3521</span> psij_const[l]=(PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j]-((R)((u+l)))/n0,0));</div>
-<div class="line"><a name="l03522"></a><span class="lineno"> 3522</span> </div>
-<div class="line"><a name="l03523"></a><span class="lineno"> 3523</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l03524"></a><span class="lineno"> 3524</span> <span class="keywordflow">for</span>(l=0;l<=2*m+1;l++)</div>
-<div class="line"><a name="l03525"></a><span class="lineno"> 3525</span> psij_const[2*m+2+l]=(PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]-((R)((u+l)))/n1,1));</div>
-<div class="line"><a name="l03526"></a><span class="lineno"> 3526</span> </div>
-<div class="line"><a name="l03527"></a><span class="lineno"> 3527</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03528"></a><span class="lineno"> 3528</span> <span class="preprocessor"></span> nfft_adjoint_2d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles."> [...]
-<div class="line"><a name="l03529"></a><span class="lineno"> 3529</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l03530"></a><span class="lineno"> 3530</span> <span class="preprocessor"></span> nfft_adjoint_2d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> [...]
-<div class="line"><a name="l03531"></a><span class="lineno"> 3531</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03532"></a><span class="lineno"> 3532</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l03533"></a><span class="lineno"> 3533</span> }</div>
-<div class="line"><a name="l03534"></a><span class="lineno"> 3534</span> </div>
-<div class="line"><a name="l03535"></a><span class="lineno"> 3535</span> </div>
-<div class="line"><a name="l03536"></a><span class="lineno"> 3536</span> <span class="keywordtype">void</span> nfft_trafo_2d(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l03537"></a><span class="lineno"> 3537</span> {</div>
-<div class="line"><a name="l03538"></a><span class="lineno"> 3538</span> <span class="keywordtype">int</span> k0,k1,n0,n1,N0,N1;</div>
-<div class="line"><a name="l03539"></a><span class="lineno"> 3539</span> C *g_hat,*f_hat;</div>
-<div class="line"><a name="l03540"></a><span class="lineno"> 3540</span> R *c_phi_inv01, *c_phi_inv02, *c_phi_inv11, *c_phi_inv12;</div>
-<div class="line"><a name="l03541"></a><span class="lineno"> 3541</span> R ck01, ck02, ck11, ck12;</div>
-<div class="line"><a name="l03542"></a><span class="lineno"> 3542</span> C *g_hat11,*f_hat11,*g_hat21,*f_hat21,*g_hat12,*f_hat12,*g_hat22,*f_hat22;</div>
-<div class="line"><a name="l03543"></a><span class="lineno"> 3543</span> </div>
-<div class="line"><a name="l03544"></a><span class="lineno"> 3544</span> ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>=ths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>;</div>
-<div class="line"><a name="l03545"></a><span class="lineno"> 3545</span> ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>=ths-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>;</div>
-<div class="line"><a name="l03546"></a><span class="lineno"> 3546</span> </div>
-<div class="line"><a name="l03547"></a><span class="lineno"> 3547</span> N0=ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];</div>
-<div class="line"><a name="l03548"></a><span class="lineno"> 3548</span> N1=ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];</div>
-<div class="line"><a name="l03549"></a><span class="lineno"> 3549</span> n0=ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0];</div>
-<div class="line"><a name="l03550"></a><span class="lineno"> 3550</span> n1=ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[1];</div>
-<div class="line"><a name="l03551"></a><span class="lineno"> 3551</span> </div>
-<div class="line"><a name="l03552"></a><span class="lineno"> 3552</span> f_hat=(C*)ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l03553"></a><span class="lineno"> 3553</span> g_hat=(C*)ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>;</div>
-<div class="line"><a name="l03554"></a><span class="lineno"> 3554</span> </div>
-<div class="line"><a name="l03555"></a><span class="lineno"> 3555</span> TIC(0)</div>
-<div class="line"><a name="l03556"></a><span class="lineno"> 3556</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03557"></a><span class="lineno"> 3557</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel for default(shared) private(k0)</span></div>
-<div class="line"><a name="l03558"></a><span class="lineno"> 3558</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k0 = 0; k0 < ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>; k0++)</div>
-<div class="line"><a name="l03559"></a><span class="lineno"> 3559</span> ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>[k0] = 0.0;</div>
-<div class="line"><a name="l03560"></a><span class="lineno"> 3560</span> #<span class="keywordflow">else</span></div>
-<div class="line"><a name="l03561"></a><span class="lineno"> 3561</span> memset(ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>,0,ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l03562"></a><span class="lineno"> 3562</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l03563"></a><span class="lineno"> 3563</span> <span class="preprocessor"></span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l03564"></a><span class="lineno"> 3564</span> {</div>
-<div class="line"><a name="l03565"></a><span class="lineno"> 3565</span> c_phi_inv01=ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[0];</div>
-<div class="line"><a name="l03566"></a><span class="lineno"> 3566</span> c_phi_inv02=&ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[0][N0/2];</div>
-<div class="line"><a name="l03567"></a><span class="lineno"> 3567</span> </div>
-<div class="line"><a name="l03568"></a><span class="lineno"> 3568</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k0,k1,ck01,ck02,c_phi_inv11,c_phi_inv12,g_hat11,f_hat11,g_hat21,f_hat21,g_hat12,f_hat12,g_hat22,f_hat22,ck11,ck12)</span></div>
-<div class="line"><a name="l03569"></a><span class="lineno"> 3569</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(k0=0;k0<N0/2;k0++)</div>
-<div class="line"><a name="l03570"></a><span class="lineno"> 3570</span> {</div>
-<div class="line"><a name="l03571"></a><span class="lineno"> 3571</span> ck01=c_phi_inv01[k0];</div>
-<div class="line"><a name="l03572"></a><span class="lineno"> 3572</span> ck02=c_phi_inv02[k0];</div>
-<div class="line"><a name="l03573"></a><span class="lineno"> 3573</span> </div>
-<div class="line"><a name="l03574"></a><span class="lineno"> 3574</span> c_phi_inv11=ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[1];</div>
-<div class="line"><a name="l03575"></a><span class="lineno"> 3575</span> c_phi_inv12=&ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[1][N1/2];</div>
-<div class="line"><a name="l03576"></a><span class="lineno"> 3576</span> </div>
-<div class="line"><a name="l03577"></a><span class="lineno"> 3577</span> g_hat11=g_hat + (n0-(N0/2)+k0)*n1+n1-(N1/2);</div>
-<div class="line"><a name="l03578"></a><span class="lineno"> 3578</span> f_hat11=f_hat + k0*N1;</div>
-<div class="line"><a name="l03579"></a><span class="lineno"> 3579</span> g_hat21=g_hat + k0*n1+n1-(N1/2);</div>
-<div class="line"><a name="l03580"></a><span class="lineno"> 3580</span> f_hat21=f_hat + ((N0/2)+k0)*N1;</div>
-<div class="line"><a name="l03581"></a><span class="lineno"> 3581</span> g_hat12=g_hat + (n0-(N0/2)+k0)*n1;</div>
-<div class="line"><a name="l03582"></a><span class="lineno"> 3582</span> f_hat12=f_hat + k0*N1+(N1/2);</div>
-<div class="line"><a name="l03583"></a><span class="lineno"> 3583</span> g_hat22=g_hat + k0*n1;</div>
-<div class="line"><a name="l03584"></a><span class="lineno"> 3584</span> f_hat22=f_hat + ((N0/2)+k0)*N1+(N1/2);</div>
-<div class="line"><a name="l03585"></a><span class="lineno"> 3585</span> </div>
-<div class="line"><a name="l03586"></a><span class="lineno"> 3586</span> <span class="keywordflow">for</span>(k1=0;k1<N1/2;k1++)</div>
-<div class="line"><a name="l03587"></a><span class="lineno"> 3587</span> {</div>
-<div class="line"><a name="l03588"></a><span class="lineno"> 3588</span> ck11=c_phi_inv11[k1];</div>
-<div class="line"><a name="l03589"></a><span class="lineno"> 3589</span> ck12=c_phi_inv12[k1];</div>
-<div class="line"><a name="l03590"></a><span class="lineno"> 3590</span> </div>
-<div class="line"><a name="l03591"></a><span class="lineno"> 3591</span> g_hat11[k1] = f_hat11[k1] * ck01 * ck11;</div>
-<div class="line"><a name="l03592"></a><span class="lineno"> 3592</span> g_hat21[k1] = f_hat21[k1] * ck02 * ck11;</div>
-<div class="line"><a name="l03593"></a><span class="lineno"> 3593</span> g_hat12[k1] = f_hat12[k1] * ck01 * ck12;</div>
-<div class="line"><a name="l03594"></a><span class="lineno"> 3594</span> g_hat22[k1] = f_hat22[k1] * ck02 * ck12;</div>
-<div class="line"><a name="l03595"></a><span class="lineno"> 3595</span> }</div>
-<div class="line"><a name="l03596"></a><span class="lineno"> 3596</span> }</div>
-<div class="line"><a name="l03597"></a><span class="lineno"> 3597</span> }</div>
-<div class="line"><a name="l03598"></a><span class="lineno"> 3598</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l03599"></a><span class="lineno"> 3599</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k0,k1,ck01,ck02,ck11,ck12)</span></div>
-<div class="line"><a name="l03600"></a><span class="lineno"> 3600</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(k0=0;k0<N0/2;k0++)</div>
-<div class="line"><a name="l03601"></a><span class="lineno"> 3601</span> {</div>
-<div class="line"><a name="l03602"></a><span class="lineno"> 3602</span> ck01=K(1.0)/(PHI_HUT(k0-N0/2,0));</div>
-<div class="line"><a name="l03603"></a><span class="lineno"> 3603</span> ck02=K(1.0)/(PHI_HUT(k0,0));</div>
-<div class="line"><a name="l03604"></a><span class="lineno"> 3604</span> <span class="keywordflow">for</span>(k1=0;k1<N1/2;k1++)</div>
-<div class="line"><a name="l03605"></a><span class="lineno"> 3605</span> {</div>
-<div class="line"><a name="l03606"></a><span class="lineno"> 3606</span> ck11=K(1.0)/(PHI_HUT(k1-N1/2,1));</div>
-<div class="line"><a name="l03607"></a><span class="lineno"> 3607</span> ck12=K(1.0)/(PHI_HUT(k1,1));</div>
-<div class="line"><a name="l03608"></a><span class="lineno"> 3608</span> g_hat[(n0-N0/2+k0)*n1+n1-N1/2+k1] = f_hat[k0*N1+k1] * ck01 * ck11;</div>
-<div class="line"><a name="l03609"></a><span class="lineno"> 3609</span> g_hat[k0*n1+n1-N1/2+k1] = f_hat[(N0/2+k0)*N1+k1] * ck02 * ck11;</div>
-<div class="line"><a name="l03610"></a><span class="lineno"> 3610</span> g_hat[(n0-N0/2+k0)*n1+k1] = f_hat[k0*N1+N1/2+k1] * ck01 * ck12;</div>
-<div class="line"><a name="l03611"></a><span class="lineno"> 3611</span> g_hat[k0*n1+k1] = f_hat[(N0/2+k0)*N1+N1/2+k1] * ck02 * ck12;</div>
-<div class="line"><a name="l03612"></a><span class="lineno"> 3612</span> }</div>
-<div class="line"><a name="l03613"></a><span class="lineno"> 3613</span> }</div>
-<div class="line"><a name="l03614"></a><span class="lineno"> 3614</span> </div>
-<div class="line"><a name="l03615"></a><span class="lineno"> 3615</span> TOC(0)</div>
-<div class="line"><a name="l03616"></a><span class="lineno"> 3616</span> </div>
-<div class="line"><a name="l03617"></a><span class="lineno"> 3617</span> TIC_FFTW(1)</div>
-<div class="line"><a name="l03618"></a><span class="lineno"> 3618</span> fftw_execute(ths->my_fftw_plan1);</div>
-<div class="line"><a name="l03619"></a><span class="lineno"> 3619</span> TOC_FFTW(1);</div>
-<div class="line"><a name="l03620"></a><span class="lineno"> 3620</span> </div>
-<div class="line"><a name="l03621"></a><span class="lineno"> 3621</span> TIC(2);</div>
-<div class="line"><a name="l03622"></a><span class="lineno"> 3622</span> nfft_trafo_2d_B(ths);</div>
-<div class="line"><a name="l03623"></a><span class="lineno"> 3623</span> TOC(2);</div>
-<div class="line"><a name="l03624"></a><span class="lineno"> 3624</span> }</div>
-<div class="line"><a name="l03625"></a><span class="lineno"> 3625</span> </div>
-<div class="line"><a name="l03626"></a><span class="lineno"> 3626</span> <span class="keywordtype">void</span> nfft_adjoint_2d(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l03627"></a><span class="lineno"> 3627</span> {</div>
-<div class="line"><a name="l03628"></a><span class="lineno"> 3628</span> <span class="keywordtype">int</span> k0,k1,n0,n1,N0,N1;</div>
-<div class="line"><a name="l03629"></a><span class="lineno"> 3629</span> C *g_hat,*f_hat;</div>
-<div class="line"><a name="l03630"></a><span class="lineno"> 3630</span> R *c_phi_inv01, *c_phi_inv02, *c_phi_inv11, *c_phi_inv12;</div>
-<div class="line"><a name="l03631"></a><span class="lineno"> 3631</span> R ck01, ck02, ck11, ck12;</div>
-<div class="line"><a name="l03632"></a><span class="lineno"> 3632</span> C *g_hat11,*f_hat11,*g_hat21,*f_hat21,*g_hat12,*f_hat12,*g_hat22,*f_hat22;</div>
-<div class="line"><a name="l03633"></a><span class="lineno"> 3633</span> </div>
-<div class="line"><a name="l03634"></a><span class="lineno"> 3634</span> ths->g_hat=ths->g1;</div>
-<div class="line"><a name="l03635"></a><span class="lineno"> 3635</span> ths->g=ths->g2;</div>
-<div class="line"><a name="l03636"></a><span class="lineno"> 3636</span> </div>
-<div class="line"><a name="l03637"></a><span class="lineno"> 3637</span> N0=ths->N[0];</div>
-<div class="line"><a name="l03638"></a><span class="lineno"> 3638</span> N1=ths->N[1];</div>
-<div class="line"><a name="l03639"></a><span class="lineno"> 3639</span> n0=ths->n[0];</div>
-<div class="line"><a name="l03640"></a><span class="lineno"> 3640</span> n1=ths->n[1];</div>
-<div class="line"><a name="l03641"></a><span class="lineno"> 3641</span> </div>
-<div class="line"><a name="l03642"></a><span class="lineno"> 3642</span> f_hat=(C*)ths->f_hat;</div>
-<div class="line"><a name="l03643"></a><span class="lineno"> 3643</span> g_hat=(C*)ths->g_hat;</div>
-<div class="line"><a name="l03644"></a><span class="lineno"> 3644</span> </div>
-<div class="line"><a name="l03645"></a><span class="lineno"> 3645</span> TIC(2);</div>
-<div class="line"><a name="l03646"></a><span class="lineno"> 3646</span> nfft_adjoint_2d_B(ths);</div>
-<div class="line"><a name="l03647"></a><span class="lineno"> 3647</span> TOC(2);</div>
-<div class="line"><a name="l03648"></a><span class="lineno"> 3648</span> </div>
-<div class="line"><a name="l03649"></a><span class="lineno"> 3649</span> TIC_FFTW(1)</div>
-<div class="line"><a name="l03650"></a><span class="lineno"> 3650</span> fftw_execute(ths->my_fftw_plan2);</div>
-<div class="line"><a name="l03651"></a><span class="lineno"> 3651</span> TOC_FFTW(1);</div>
-<div class="line"><a name="l03652"></a><span class="lineno"> 3652</span> </div>
-<div class="line"><a name="l03653"></a><span class="lineno"> 3653</span> TIC(0)</div>
-<div class="line"><a name="l03654"></a><span class="lineno"> 3654</span> if(ths->nfft_flags & PRE_PHI_HUT)</div>
-<div class="line"><a name="l03655"></a><span class="lineno"> 3655</span> {</div>
-<div class="line"><a name="l03656"></a><span class="lineno"> 3656</span> c_phi_inv01=ths->c_phi_inv[0];</div>
-<div class="line"><a name="l03657"></a><span class="lineno"> 3657</span> c_phi_inv02=&ths->c_phi_inv[0][N0/2];</div>
-<div class="line"><a name="l03658"></a><span class="lineno"> 3658</span> </div>
-<div class="line"><a name="l03659"></a><span class="lineno"> 3659</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k0,k1,ck01,ck02,c_phi_inv11,c_phi_inv12,g_hat11,f_hat11,g_hat21,f_hat21,g_hat12,f_hat12,g_hat22,f_hat22,ck11,ck12)</span></div>
-<div class="line"><a name="l03660"></a><span class="lineno"> 3660</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(k0=0;k0<N0/2;k0++)</div>
-<div class="line"><a name="l03661"></a><span class="lineno"> 3661</span> {</div>
-<div class="line"><a name="l03662"></a><span class="lineno"> 3662</span> ck01=c_phi_inv01[k0];</div>
-<div class="line"><a name="l03663"></a><span class="lineno"> 3663</span> ck02=c_phi_inv02[k0];</div>
-<div class="line"><a name="l03664"></a><span class="lineno"> 3664</span> </div>
-<div class="line"><a name="l03665"></a><span class="lineno"> 3665</span> c_phi_inv11=ths->c_phi_inv[1];</div>
-<div class="line"><a name="l03666"></a><span class="lineno"> 3666</span> c_phi_inv12=&ths->c_phi_inv[1][N1/2];</div>
-<div class="line"><a name="l03667"></a><span class="lineno"> 3667</span> </div>
-<div class="line"><a name="l03668"></a><span class="lineno"> 3668</span> g_hat11=g_hat + (n0-(N0/2)+k0)*n1+n1-(N1/2);</div>
-<div class="line"><a name="l03669"></a><span class="lineno"> 3669</span> f_hat11=f_hat + k0*N1;</div>
-<div class="line"><a name="l03670"></a><span class="lineno"> 3670</span> g_hat21=g_hat + k0*n1+n1-(N1/2);</div>
-<div class="line"><a name="l03671"></a><span class="lineno"> 3671</span> f_hat21=f_hat + ((N0/2)+k0)*N1;</div>
-<div class="line"><a name="l03672"></a><span class="lineno"> 3672</span> g_hat12=g_hat + (n0-(N0/2)+k0)*n1;</div>
-<div class="line"><a name="l03673"></a><span class="lineno"> 3673</span> f_hat12=f_hat + k0*N1+(N1/2);</div>
-<div class="line"><a name="l03674"></a><span class="lineno"> 3674</span> g_hat22=g_hat + k0*n1;</div>
-<div class="line"><a name="l03675"></a><span class="lineno"> 3675</span> f_hat22=f_hat + ((N0/2)+k0)*N1+(N1/2);</div>
-<div class="line"><a name="l03676"></a><span class="lineno"> 3676</span> </div>
-<div class="line"><a name="l03677"></a><span class="lineno"> 3677</span> <span class="keywordflow">for</span>(k1=0;k1<N1/2;k1++)</div>
-<div class="line"><a name="l03678"></a><span class="lineno"> 3678</span> {</div>
-<div class="line"><a name="l03679"></a><span class="lineno"> 3679</span> ck11=c_phi_inv11[k1];</div>
-<div class="line"><a name="l03680"></a><span class="lineno"> 3680</span> ck12=c_phi_inv12[k1];</div>
-<div class="line"><a name="l03681"></a><span class="lineno"> 3681</span> </div>
-<div class="line"><a name="l03682"></a><span class="lineno"> 3682</span> f_hat11[k1] = g_hat11[k1] * ck01 * ck11;</div>
-<div class="line"><a name="l03683"></a><span class="lineno"> 3683</span> f_hat21[k1] = g_hat21[k1] * ck02 * ck11;</div>
-<div class="line"><a name="l03684"></a><span class="lineno"> 3684</span> f_hat12[k1] = g_hat12[k1] * ck01 * ck12;</div>
-<div class="line"><a name="l03685"></a><span class="lineno"> 3685</span> f_hat22[k1] = g_hat22[k1] * ck02 * ck12;</div>
-<div class="line"><a name="l03686"></a><span class="lineno"> 3686</span> }</div>
-<div class="line"><a name="l03687"></a><span class="lineno"> 3687</span> }</div>
-<div class="line"><a name="l03688"></a><span class="lineno"> 3688</span> }</div>
-<div class="line"><a name="l03689"></a><span class="lineno"> 3689</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l03690"></a><span class="lineno"> 3690</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k0,k1,ck01,ck02,ck11,ck12)</span></div>
-<div class="line"><a name="l03691"></a><span class="lineno"> 3691</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(k0=0;k0<N0/2;k0++)</div>
-<div class="line"><a name="l03692"></a><span class="lineno"> 3692</span> {</div>
-<div class="line"><a name="l03693"></a><span class="lineno"> 3693</span> ck01=K(1.0)/(PHI_HUT(k0-N0/2,0));</div>
-<div class="line"><a name="l03694"></a><span class="lineno"> 3694</span> ck02=K(1.0)/(PHI_HUT(k0,0));</div>
-<div class="line"><a name="l03695"></a><span class="lineno"> 3695</span> <span class="keywordflow">for</span>(k1=0;k1<N1/2;k1++)</div>
-<div class="line"><a name="l03696"></a><span class="lineno"> 3696</span> {</div>
-<div class="line"><a name="l03697"></a><span class="lineno"> 3697</span> ck11=K(1.0)/(PHI_HUT(k1-N1/2,1));</div>
-<div class="line"><a name="l03698"></a><span class="lineno"> 3698</span> ck12=K(1.0)/(PHI_HUT(k1,1));</div>
-<div class="line"><a name="l03699"></a><span class="lineno"> 3699</span> f_hat[k0*N1+k1] = g_hat[(n0-N0/2+k0)*n1+n1-N1/2+k1] * ck01 * ck11;</div>
-<div class="line"><a name="l03700"></a><span class="lineno"> 3700</span> f_hat[(N0/2+k0)*N1+k1] = g_hat[k0*n1+n1-N1/2+k1] * ck02 * ck11;</div>
-<div class="line"><a name="l03701"></a><span class="lineno"> 3701</span> f_hat[k0*N1+N1/2+k1] = g_hat[(n0-N0/2+k0)*n1+k1] * ck01 * ck12;</div>
-<div class="line"><a name="l03702"></a><span class="lineno"> 3702</span> f_hat[(N0/2+k0)*N1+N1/2+k1] = g_hat[k0*n1+k1] * ck02 * ck12;</div>
-<div class="line"><a name="l03703"></a><span class="lineno"> 3703</span> }</div>
-<div class="line"><a name="l03704"></a><span class="lineno"> 3704</span> }</div>
-<div class="line"><a name="l03705"></a><span class="lineno"> 3705</span> TOC(0)</div>
-<div class="line"><a name="l03706"></a><span class="lineno"> 3706</span> }</div>
-<div class="line"><a name="l03707"></a><span class="lineno"> 3707</span> </div>
-<div class="line"><a name="l03708"></a><span class="lineno"> 3708</span> <span class="comment">/* ############################################################ SPECIFIC VERSIONS FOR d=3 */</span></div>
-<div class="line"><a name="l03709"></a><span class="lineno"> 3709</span> </div>
-<div class="line"><a name="l03710"></a><span class="lineno"> 3710</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_3d_init_fg_exp_l(R *fg_exp_l, <span class="keyword">const</span> <span class="keywordtype">int</span> m, <span class="keyword">const</span> R b)</div>
-<div class="line"><a name="l03711"></a><span class="lineno"> 3711</span> {</div>
-<div class="line"><a name="l03712"></a><span class="lineno"> 3712</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l03713"></a><span class="lineno"> 3713</span> R fg_exp_b0, fg_exp_b1, fg_exp_b2, fg_exp_b0_sq;</div>
-<div class="line"><a name="l03714"></a><span class="lineno"> 3714</span> </div>
-<div class="line"><a name="l03715"></a><span class="lineno"> 3715</span> fg_exp_b0 = EXP(-1.0/b);</div>
-<div class="line"><a name="l03716"></a><span class="lineno"> 3716</span> fg_exp_b0_sq = fg_exp_b0*fg_exp_b0;</div>
-<div class="line"><a name="l03717"></a><span class="lineno"> 3717</span> fg_exp_b1 = K(1.0);</div>
-<div class="line"><a name="l03718"></a><span class="lineno"> 3718</span> fg_exp_b2 = K(1.0);</div>
-<div class="line"><a name="l03719"></a><span class="lineno"> 3719</span> fg_exp_l[0] = K(1.0);</div>
-<div class="line"><a name="l03720"></a><span class="lineno"> 3720</span> <span class="keywordflow">for</span>(l=1; l <= 2*m+1; l++)</div>
-<div class="line"><a name="l03721"></a><span class="lineno"> 3721</span> {</div>
-<div class="line"><a name="l03722"></a><span class="lineno"> 3722</span> fg_exp_b2 = fg_exp_b1*fg_exp_b0;</div>
-<div class="line"><a name="l03723"></a><span class="lineno"> 3723</span> fg_exp_b1 *= fg_exp_b0_sq;</div>
-<div class="line"><a name="l03724"></a><span class="lineno"> 3724</span> fg_exp_l[l] = fg_exp_l[l-1]*fg_exp_b2;</div>
-<div class="line"><a name="l03725"></a><span class="lineno"> 3725</span> }</div>
-<div class="line"><a name="l03726"></a><span class="lineno"> 3726</span> }</div>
-<div class="line"><a name="l03727"></a><span class="lineno"> 3727</span> </div>
-<div class="line"><a name="l03728"></a><span class="lineno"> 3728</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_trafo_3d_compute(C *fj, <span class="keyword">const</span> C *g,</div>
-<div class="line"><a name="l03729"></a><span class="lineno"> 3729</span> <span class="keyword">const</span> R *psij_const0, <span class="keyword">const</span> R *psij_const1, <span class="keyword">const</span> R *psij_const2,</div>
-<div class="line"><a name="l03730"></a><span class="lineno"> 3730</span> <span class="keyword">const</span> R *xj0, <span class="keyword">const</span> R *xj1, <span class="keyword">const</span> R *xj2,</div>
-<div class="line"><a name="l03731"></a><span class="lineno"> 3731</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0, <span class="keyword">const</span> <span class="keywordtype">int</span> n1, <span class="keyword">const</span> <span class="keywordtype">int</span> n2, <span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l03732"></a><span class="lineno"> 3732</span> {</div>
-<div class="line"><a name="l03733"></a><span class="lineno"> 3733</span> <span class="keywordtype">int</span> u0,o0,l0,u1,o1,l1,u2,o2,l2;</div>
-<div class="line"><a name="l03734"></a><span class="lineno"> 3734</span> <span class="keyword">const</span> C *gj;</div>
-<div class="line"><a name="l03735"></a><span class="lineno"> 3735</span> <span class="keyword">const</span> R *psij0,*psij1,*psij2;</div>
-<div class="line"><a name="l03736"></a><span class="lineno"> 3736</span> </div>
-<div class="line"><a name="l03737"></a><span class="lineno"> 3737</span> psij0=psij_const0;</div>
-<div class="line"><a name="l03738"></a><span class="lineno"> 3738</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03739"></a><span class="lineno"> 3739</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03740"></a><span class="lineno"> 3740</span> </div>
-<div class="line"><a name="l03741"></a><span class="lineno"> 3741</span> nfft_uo2(&u0,&o0,*xj0, n0, m);</div>
-<div class="line"><a name="l03742"></a><span class="lineno"> 3742</span> nfft_uo2(&u1,&o1,*xj1, n1, m);</div>
-<div class="line"><a name="l03743"></a><span class="lineno"> 3743</span> nfft_uo2(&u2,&o2,*xj2, n2, m);</div>
-<div class="line"><a name="l03744"></a><span class="lineno"> 3744</span> </div>
-<div class="line"><a name="l03745"></a><span class="lineno"> 3745</span> *fj=0;</div>
-<div class="line"><a name="l03746"></a><span class="lineno"> 3746</span> </div>
-<div class="line"><a name="l03747"></a><span class="lineno"> 3747</span> <span class="keywordflow">if</span>(u0<o0)</div>
-<div class="line"><a name="l03748"></a><span class="lineno"> 3748</span> <span class="keywordflow">if</span>(u1<o1)</div>
-<div class="line"><a name="l03749"></a><span class="lineno"> 3749</span> <span class="keywordflow">if</span>(u2<o2)</div>
-<div class="line"><a name="l03750"></a><span class="lineno"> 3750</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l03751"></a><span class="lineno"> 3751</span> {</div>
-<div class="line"><a name="l03752"></a><span class="lineno"> 3752</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03753"></a><span class="lineno"> 3753</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l03754"></a><span class="lineno"> 3754</span> {</div>
-<div class="line"><a name="l03755"></a><span class="lineno"> 3755</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03756"></a><span class="lineno"> 3756</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03757"></a><span class="lineno"> 3757</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l03758"></a><span class="lineno"> 3758</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03759"></a><span class="lineno"> 3759</span> }</div>
-<div class="line"><a name="l03760"></a><span class="lineno"> 3760</span> }</div>
-<div class="line"><a name="l03761"></a><span class="lineno"> 3761</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u2>o2)*/</span></div>
-<div class="line"><a name="l03762"></a><span class="lineno"> 3762</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l03763"></a><span class="lineno"> 3763</span> {</div>
-<div class="line"><a name="l03764"></a><span class="lineno"> 3764</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03765"></a><span class="lineno"> 3765</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l03766"></a><span class="lineno"> 3766</span> {</div>
-<div class="line"><a name="l03767"></a><span class="lineno"> 3767</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03768"></a><span class="lineno"> 3768</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03769"></a><span class="lineno"> 3769</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l03770"></a><span class="lineno"> 3770</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03771"></a><span class="lineno"> 3771</span> gj=g+((u0+l0)*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l03772"></a><span class="lineno"> 3772</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l03773"></a><span class="lineno"> 3773</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03774"></a><span class="lineno"> 3774</span> }</div>
-<div class="line"><a name="l03775"></a><span class="lineno"> 3775</span> }</div>
-<div class="line"><a name="l03776"></a><span class="lineno"> 3776</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u1>o1)*/</span></div>
-<div class="line"><a name="l03777"></a><span class="lineno"> 3777</span> <span class="keywordflow">if</span>(u2<o2)</div>
-<div class="line"><a name="l03778"></a><span class="lineno"> 3778</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l03779"></a><span class="lineno"> 3779</span> {</div>
-<div class="line"><a name="l03780"></a><span class="lineno"> 3780</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03781"></a><span class="lineno"> 3781</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l03782"></a><span class="lineno"> 3782</span> {</div>
-<div class="line"><a name="l03783"></a><span class="lineno"> 3783</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03784"></a><span class="lineno"> 3784</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03785"></a><span class="lineno"> 3785</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l03786"></a><span class="lineno"> 3786</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03787"></a><span class="lineno"> 3787</span> }</div>
-<div class="line"><a name="l03788"></a><span class="lineno"> 3788</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l03789"></a><span class="lineno"> 3789</span> {</div>
-<div class="line"><a name="l03790"></a><span class="lineno"> 3790</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03791"></a><span class="lineno"> 3791</span> gj=g+((u0+l0)*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l03792"></a><span class="lineno"> 3792</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l03793"></a><span class="lineno"> 3793</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03794"></a><span class="lineno"> 3794</span> }</div>
-<div class="line"><a name="l03795"></a><span class="lineno"> 3795</span> }</div>
-<div class="line"><a name="l03796"></a><span class="lineno"> 3796</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u2>o2) */</span></div>
-<div class="line"><a name="l03797"></a><span class="lineno"> 3797</span> {</div>
-<div class="line"><a name="l03798"></a><span class="lineno"> 3798</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l03799"></a><span class="lineno"> 3799</span> {</div>
-<div class="line"><a name="l03800"></a><span class="lineno"> 3800</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03801"></a><span class="lineno"> 3801</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l03802"></a><span class="lineno"> 3802</span> {</div>
-<div class="line"><a name="l03803"></a><span class="lineno"> 3803</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03804"></a><span class="lineno"> 3804</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03805"></a><span class="lineno"> 3805</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l03806"></a><span class="lineno"> 3806</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03807"></a><span class="lineno"> 3807</span> gj=g+((u0+l0)*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l03808"></a><span class="lineno"> 3808</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l03809"></a><span class="lineno"> 3809</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03810"></a><span class="lineno"> 3810</span> }</div>
-<div class="line"><a name="l03811"></a><span class="lineno"> 3811</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l03812"></a><span class="lineno"> 3812</span> {</div>
-<div class="line"><a name="l03813"></a><span class="lineno"> 3813</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03814"></a><span class="lineno"> 3814</span> gj=g+((u0+l0)*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l03815"></a><span class="lineno"> 3815</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l03816"></a><span class="lineno"> 3816</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03817"></a><span class="lineno"> 3817</span> gj=g+((u0+l0)*n1+l1)*n2;</div>
-<div class="line"><a name="l03818"></a><span class="lineno"> 3818</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l03819"></a><span class="lineno"> 3819</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03820"></a><span class="lineno"> 3820</span> }</div>
-<div class="line"><a name="l03821"></a><span class="lineno"> 3821</span> }</div>
-<div class="line"><a name="l03822"></a><span class="lineno"> 3822</span> }</div>
-<div class="line"><a name="l03823"></a><span class="lineno"> 3823</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u0>o0) */</span></div>
-<div class="line"><a name="l03824"></a><span class="lineno"> 3824</span> <span class="keywordflow">if</span>(u1<o1)</div>
-<div class="line"><a name="l03825"></a><span class="lineno"> 3825</span> <span class="keywordflow">if</span>(u2<o2)</div>
-<div class="line"><a name="l03826"></a><span class="lineno"> 3826</span> {</div>
-<div class="line"><a name="l03827"></a><span class="lineno"> 3827</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l03828"></a><span class="lineno"> 3828</span> {</div>
-<div class="line"><a name="l03829"></a><span class="lineno"> 3829</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03830"></a><span class="lineno"> 3830</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l03831"></a><span class="lineno"> 3831</span> {</div>
-<div class="line"><a name="l03832"></a><span class="lineno"> 3832</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03833"></a><span class="lineno"> 3833</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03834"></a><span class="lineno"> 3834</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l03835"></a><span class="lineno"> 3835</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03836"></a><span class="lineno"> 3836</span> }</div>
-<div class="line"><a name="l03837"></a><span class="lineno"> 3837</span> }</div>
-<div class="line"><a name="l03838"></a><span class="lineno"> 3838</span> </div>
-<div class="line"><a name="l03839"></a><span class="lineno"> 3839</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l03840"></a><span class="lineno"> 3840</span> {</div>
-<div class="line"><a name="l03841"></a><span class="lineno"> 3841</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03842"></a><span class="lineno"> 3842</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l03843"></a><span class="lineno"> 3843</span> {</div>
-<div class="line"><a name="l03844"></a><span class="lineno"> 3844</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03845"></a><span class="lineno"> 3845</span> gj=g+(l0*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03846"></a><span class="lineno"> 3846</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l03847"></a><span class="lineno"> 3847</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03848"></a><span class="lineno"> 3848</span> }</div>
-<div class="line"><a name="l03849"></a><span class="lineno"> 3849</span> }</div>
-<div class="line"><a name="l03850"></a><span class="lineno"> 3850</span> }</div>
-<div class="line"><a name="l03851"></a><span class="lineno"> 3851</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u2>o2) */</span></div>
-<div class="line"><a name="l03852"></a><span class="lineno"> 3852</span> {</div>
-<div class="line"><a name="l03853"></a><span class="lineno"> 3853</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l03854"></a><span class="lineno"> 3854</span> {</div>
-<div class="line"><a name="l03855"></a><span class="lineno"> 3855</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03856"></a><span class="lineno"> 3856</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l03857"></a><span class="lineno"> 3857</span> {</div>
-<div class="line"><a name="l03858"></a><span class="lineno"> 3858</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03859"></a><span class="lineno"> 3859</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03860"></a><span class="lineno"> 3860</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l03861"></a><span class="lineno"> 3861</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03862"></a><span class="lineno"> 3862</span> gj=g+((u0+l0)*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l03863"></a><span class="lineno"> 3863</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l03864"></a><span class="lineno"> 3864</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03865"></a><span class="lineno"> 3865</span> }</div>
-<div class="line"><a name="l03866"></a><span class="lineno"> 3866</span> }</div>
-<div class="line"><a name="l03867"></a><span class="lineno"> 3867</span> </div>
-<div class="line"><a name="l03868"></a><span class="lineno"> 3868</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l03869"></a><span class="lineno"> 3869</span> {</div>
-<div class="line"><a name="l03870"></a><span class="lineno"> 3870</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03871"></a><span class="lineno"> 3871</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l03872"></a><span class="lineno"> 3872</span> {</div>
-<div class="line"><a name="l03873"></a><span class="lineno"> 3873</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03874"></a><span class="lineno"> 3874</span> gj=g+(l0*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03875"></a><span class="lineno"> 3875</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l03876"></a><span class="lineno"> 3876</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03877"></a><span class="lineno"> 3877</span> gj=g+(l0*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l03878"></a><span class="lineno"> 3878</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l03879"></a><span class="lineno"> 3879</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03880"></a><span class="lineno"> 3880</span> }</div>
-<div class="line"><a name="l03881"></a><span class="lineno"> 3881</span> }</div>
-<div class="line"><a name="l03882"></a><span class="lineno"> 3882</span> }</div>
-<div class="line"><a name="l03883"></a><span class="lineno"> 3883</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u1>o1) */</span></div>
-<div class="line"><a name="l03884"></a><span class="lineno"> 3884</span> <span class="keywordflow">if</span>(u2<o2)</div>
-<div class="line"><a name="l03885"></a><span class="lineno"> 3885</span> {</div>
-<div class="line"><a name="l03886"></a><span class="lineno"> 3886</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l03887"></a><span class="lineno"> 3887</span> {</div>
-<div class="line"><a name="l03888"></a><span class="lineno"> 3888</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03889"></a><span class="lineno"> 3889</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l03890"></a><span class="lineno"> 3890</span> {</div>
-<div class="line"><a name="l03891"></a><span class="lineno"> 3891</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03892"></a><span class="lineno"> 3892</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03893"></a><span class="lineno"> 3893</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l03894"></a><span class="lineno"> 3894</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03895"></a><span class="lineno"> 3895</span> }</div>
-<div class="line"><a name="l03896"></a><span class="lineno"> 3896</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l03897"></a><span class="lineno"> 3897</span> {</div>
-<div class="line"><a name="l03898"></a><span class="lineno"> 3898</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03899"></a><span class="lineno"> 3899</span> gj=g+((u0+l0)*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l03900"></a><span class="lineno"> 3900</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l03901"></a><span class="lineno"> 3901</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03902"></a><span class="lineno"> 3902</span> }</div>
-<div class="line"><a name="l03903"></a><span class="lineno"> 3903</span> }</div>
-<div class="line"><a name="l03904"></a><span class="lineno"> 3904</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l03905"></a><span class="lineno"> 3905</span> {</div>
-<div class="line"><a name="l03906"></a><span class="lineno"> 3906</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03907"></a><span class="lineno"> 3907</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l03908"></a><span class="lineno"> 3908</span> {</div>
-<div class="line"><a name="l03909"></a><span class="lineno"> 3909</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03910"></a><span class="lineno"> 3910</span> gj=g+(l0*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03911"></a><span class="lineno"> 3911</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l03912"></a><span class="lineno"> 3912</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03913"></a><span class="lineno"> 3913</span> }</div>
-<div class="line"><a name="l03914"></a><span class="lineno"> 3914</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l03915"></a><span class="lineno"> 3915</span> {</div>
-<div class="line"><a name="l03916"></a><span class="lineno"> 3916</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03917"></a><span class="lineno"> 3917</span> gj=g+(l0*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l03918"></a><span class="lineno"> 3918</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l03919"></a><span class="lineno"> 3919</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03920"></a><span class="lineno"> 3920</span> }</div>
-<div class="line"><a name="l03921"></a><span class="lineno"> 3921</span> }</div>
-<div class="line"><a name="l03922"></a><span class="lineno"> 3922</span> }</div>
-<div class="line"><a name="l03923"></a><span class="lineno"> 3923</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u2>o2) */</span></div>
-<div class="line"><a name="l03924"></a><span class="lineno"> 3924</span> {</div>
-<div class="line"><a name="l03925"></a><span class="lineno"> 3925</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l03926"></a><span class="lineno"> 3926</span> {</div>
-<div class="line"><a name="l03927"></a><span class="lineno"> 3927</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03928"></a><span class="lineno"> 3928</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l03929"></a><span class="lineno"> 3929</span> {</div>
-<div class="line"><a name="l03930"></a><span class="lineno"> 3930</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03931"></a><span class="lineno"> 3931</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03932"></a><span class="lineno"> 3932</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l03933"></a><span class="lineno"> 3933</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03934"></a><span class="lineno"> 3934</span> gj=g+((u0+l0)*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l03935"></a><span class="lineno"> 3935</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l03936"></a><span class="lineno"> 3936</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03937"></a><span class="lineno"> 3937</span> }</div>
-<div class="line"><a name="l03938"></a><span class="lineno"> 3938</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l03939"></a><span class="lineno"> 3939</span> {</div>
-<div class="line"><a name="l03940"></a><span class="lineno"> 3940</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03941"></a><span class="lineno"> 3941</span> gj=g+((u0+l0)*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l03942"></a><span class="lineno"> 3942</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l03943"></a><span class="lineno"> 3943</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03944"></a><span class="lineno"> 3944</span> gj=g+((u0+l0)*n1+l1)*n2;</div>
-<div class="line"><a name="l03945"></a><span class="lineno"> 3945</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l03946"></a><span class="lineno"> 3946</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03947"></a><span class="lineno"> 3947</span> }</div>
-<div class="line"><a name="l03948"></a><span class="lineno"> 3948</span> }</div>
-<div class="line"><a name="l03949"></a><span class="lineno"> 3949</span> </div>
-<div class="line"><a name="l03950"></a><span class="lineno"> 3950</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l03951"></a><span class="lineno"> 3951</span> {</div>
-<div class="line"><a name="l03952"></a><span class="lineno"> 3952</span> psij1=psij_const1;</div>
-<div class="line"><a name="l03953"></a><span class="lineno"> 3953</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l03954"></a><span class="lineno"> 3954</span> {</div>
-<div class="line"><a name="l03955"></a><span class="lineno"> 3955</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03956"></a><span class="lineno"> 3956</span> gj=g+(l0*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l03957"></a><span class="lineno"> 3957</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l03958"></a><span class="lineno"> 3958</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03959"></a><span class="lineno"> 3959</span> gj=g+(l0*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l03960"></a><span class="lineno"> 3960</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l03961"></a><span class="lineno"> 3961</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03962"></a><span class="lineno"> 3962</span> }</div>
-<div class="line"><a name="l03963"></a><span class="lineno"> 3963</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l03964"></a><span class="lineno"> 3964</span> {</div>
-<div class="line"><a name="l03965"></a><span class="lineno"> 3965</span> psij2=psij_const2;</div>
-<div class="line"><a name="l03966"></a><span class="lineno"> 3966</span> gj=g+(l0*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l03967"></a><span class="lineno"> 3967</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l03968"></a><span class="lineno"> 3968</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03969"></a><span class="lineno"> 3969</span> gj=g+(l0*n1+l1)*n2;</div>
-<div class="line"><a name="l03970"></a><span class="lineno"> 3970</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l03971"></a><span class="lineno"> 3971</span> (*fj) += (*psij0) * (*psij1) * (*psij2++) * (*gj++);</div>
-<div class="line"><a name="l03972"></a><span class="lineno"> 3972</span> }</div>
-<div class="line"><a name="l03973"></a><span class="lineno"> 3973</span> }</div>
-<div class="line"><a name="l03974"></a><span class="lineno"> 3974</span> }</div>
-<div class="line"><a name="l03975"></a><span class="lineno"> 3975</span> }</div>
-<div class="line"><a name="l03976"></a><span class="lineno"> 3976</span> </div>
-<div class="line"><a name="l03977"></a><span class="lineno"> 3977</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l03978"></a><span class="lineno"> 3978</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l03999"></a><span class="lineno"> 3999</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_3d_compute_omp_blockwise(<span class="keyword">const</span> C f, C *g,</div>
-<div class="line"><a name="l04000"></a><span class="lineno"> 4000</span> <span class="keyword">const</span> R *psij_const0, <span class="keyword">const</span> R *psij_const1, <span class="keyword">const</span> R *psij_const2,</div>
-<div class="line"><a name="l04001"></a><span class="lineno"> 4001</span> <span class="keyword">const</span> R *xj0, <span class="keyword">const</span> R *xj1, <span class="keyword">const</span> R *xj2,</div>
-<div class="line"><a name="l04002"></a><span class="lineno"> 4002</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0, <span class="keyword">const</span> <span class="keywordtype">int</span> n1, <span class="keyword">const</span> <span class="keywordtype">int</span> n2, <span class="keyword">const</span> <span class="keywordtype">int</span> m,</div>
-<div class="line"><a name="l04003"></a><span class="lineno"> 4003</span> <span class="keyword">const</span> <span class="keywordtype">int</span> my_u0, <span class="keyword">const</span> <span class="keywordtype">int</span> my_o0)</div>
-<div class="line"><a name="l04004"></a><span class="lineno"> 4004</span> {</div>
-<div class="line"><a name="l04005"></a><span class="lineno"> 4005</span> <span class="keywordtype">int</span> ar_u0,ar_o0,l0,u1,o1,l1,u2,o2,l2;</div>
-<div class="line"><a name="l04006"></a><span class="lineno"> 4006</span> <span class="keyword">const</span> <span class="keywordtype">int</span> lprod = (2*m+2) * (2*m+2) * (2*m+2);</div>
-<div class="line"><a name="l04007"></a><span class="lineno"> 4007</span> </div>
-<div class="line"><a name="l04008"></a><span class="lineno"> 4008</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> index_temp1[2*m+2];</div>
-<div class="line"><a name="l04009"></a><span class="lineno"> 4009</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> index_temp2[2*m+2];</div>
-<div class="line"><a name="l04010"></a><span class="lineno"> 4010</span> </div>
-<div class="line"><a name="l04011"></a><span class="lineno"> 4011</span> nfft_uo2(&ar_u0,&ar_o0,*xj0, n0, m);</div>
-<div class="line"><a name="l04012"></a><span class="lineno"> 4012</span> nfft_uo2(&u1,&o1,*xj1, n1, m);</div>
-<div class="line"><a name="l04013"></a><span class="lineno"> 4013</span> nfft_uo2(&u2,&o2,*xj2, n2, m);</div>
-<div class="line"><a name="l04014"></a><span class="lineno"> 4014</span> </div>
-<div class="line"><a name="l04015"></a><span class="lineno"> 4015</span> <span class="keywordflow">for</span> (l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l04016"></a><span class="lineno"> 4016</span> index_temp1[l1] = (u1+l1)%n1;</div>
-<div class="line"><a name="l04017"></a><span class="lineno"> 4017</span> </div>
-<div class="line"><a name="l04018"></a><span class="lineno"> 4018</span> <span class="keywordflow">for</span> (l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04019"></a><span class="lineno"> 4019</span> index_temp2[l2] = (u2+l2)%n2;</div>
-<div class="line"><a name="l04020"></a><span class="lineno"> 4020</span> </div>
-<div class="line"><a name="l04021"></a><span class="lineno"> 4021</span> <span class="keywordflow">if</span>(ar_u0<ar_o0)</div>
-<div class="line"><a name="l04022"></a><span class="lineno"> 4022</span> {</div>
-<div class="line"><a name="l04023"></a><span class="lineno"> 4023</span> <span class="keywordtype">int</span> u0 = MAX(my_u0,ar_u0);</div>
-<div class="line"><a name="l04024"></a><span class="lineno"> 4024</span> <span class="keywordtype">int</span> o0 = MIN(my_o0,ar_o0);</div>
-<div class="line"><a name="l04025"></a><span class="lineno"> 4025</span> <span class="keywordtype">int</span> offset_psij = u0-ar_u0;</div>
-<div class="line"><a name="l04026"></a><span class="lineno"> 4026</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l04027"></a><span class="lineno"> 4027</span> <span class="preprocessor"></span> assert(offset_psij >= 0);</div>
-<div class="line"><a name="l04028"></a><span class="lineno"> 4028</span> assert(o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l04029"></a><span class="lineno"> 4029</span> assert(offset_psij+o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l04030"></a><span class="lineno"> 4030</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04031"></a><span class="lineno"> 4031</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04032"></a><span class="lineno"> 4032</span> <span class="keywordflow">for</span> (l0 = 0; l0 <= o0-u0; l0++)</div>
-<div class="line"><a name="l04033"></a><span class="lineno"> 4033</span> {</div>
-<div class="line"><a name="l04034"></a><span class="lineno"> 4034</span> <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i0 = (u0+l0) * n1;</div>
-<div class="line"><a name="l04035"></a><span class="lineno"> 4035</span> <span class="keyword">const</span> C val0 = psij_const0[offset_psij+l0];</div>
-<div class="line"><a name="l04036"></a><span class="lineno"> 4036</span> </div>
-<div class="line"><a name="l04037"></a><span class="lineno"> 4037</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l04038"></a><span class="lineno"> 4038</span> {</div>
-<div class="line"><a name="l04039"></a><span class="lineno"> 4039</span> <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i1 = (i0 + index_temp1[l1]) * n2;</div>
-<div class="line"><a name="l04040"></a><span class="lineno"> 4040</span> <span class="keyword">const</span> C val1 = psij_const1[l1];</div>
-<div class="line"><a name="l04041"></a><span class="lineno"> 4041</span> </div>
-<div class="line"><a name="l04042"></a><span class="lineno"> 4042</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04043"></a><span class="lineno"> 4043</span> g[i1 + index_temp2[l2]] += val0 * val1 * psij_const2[l2] * f;</div>
-<div class="line"><a name="l04044"></a><span class="lineno"> 4044</span> }</div>
-<div class="line"><a name="l04045"></a><span class="lineno"> 4045</span> } </div>
-<div class="line"><a name="l04046"></a><span class="lineno"> 4046</span> }</div>
-<div class="line"><a name="l04047"></a><span class="lineno"> 4047</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l04048"></a><span class="lineno"> 4048</span> {</div>
-<div class="line"><a name="l04049"></a><span class="lineno"> 4049</span> <span class="keywordtype">int</span> u0 = MAX(my_u0,ar_u0);</div>
-<div class="line"><a name="l04050"></a><span class="lineno"> 4050</span> <span class="keywordtype">int</span> o0 = my_o0;</div>
-<div class="line"><a name="l04051"></a><span class="lineno"> 4051</span> <span class="keywordtype">int</span> offset_psij = u0-ar_u0;</div>
-<div class="line"><a name="l04052"></a><span class="lineno"> 4052</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l04053"></a><span class="lineno"> 4053</span> <span class="preprocessor"></span> assert(offset_psij >= 0);</div>
-<div class="line"><a name="l04054"></a><span class="lineno"> 4054</span> assert(o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l04055"></a><span class="lineno"> 4055</span> assert(offset_psij+o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l04056"></a><span class="lineno"> 4056</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04057"></a><span class="lineno"> 4057</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04058"></a><span class="lineno"> 4058</span> <span class="keywordflow">for</span> (l0 = 0; l0 <= o0-u0; l0++)</div>
-<div class="line"><a name="l04059"></a><span class="lineno"> 4059</span> {</div>
-<div class="line"><a name="l04060"></a><span class="lineno"> 4060</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i0 = (u0+l0) * n1;</div>
-<div class="line"><a name="l04061"></a><span class="lineno"> 4061</span> <span class="keyword">const</span> C val0 = psij_const0[offset_psij+l0];</div>
-<div class="line"><a name="l04062"></a><span class="lineno"> 4062</span> </div>
-<div class="line"><a name="l04063"></a><span class="lineno"> 4063</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l04064"></a><span class="lineno"> 4064</span> {</div>
-<div class="line"><a name="l04065"></a><span class="lineno"> 4065</span> <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i1 = (i0 + index_temp1[l1]) * n2;</div>
-<div class="line"><a name="l04066"></a><span class="lineno"> 4066</span> <span class="keyword">const</span> C val1 = psij_const1[l1];</div>
-<div class="line"><a name="l04067"></a><span class="lineno"> 4067</span> </div>
-<div class="line"><a name="l04068"></a><span class="lineno"> 4068</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04069"></a><span class="lineno"> 4069</span> g[i1 + index_temp2[l2]] += val0 * val1 * psij_const2[l2] * f;</div>
-<div class="line"><a name="l04070"></a><span class="lineno"> 4070</span> }</div>
-<div class="line"><a name="l04071"></a><span class="lineno"> 4071</span> }</div>
-<div class="line"><a name="l04072"></a><span class="lineno"> 4072</span> </div>
-<div class="line"><a name="l04073"></a><span class="lineno"> 4073</span> u0 = my_u0;</div>
-<div class="line"><a name="l04074"></a><span class="lineno"> 4074</span> o0 = MIN(my_o0,ar_o0);</div>
-<div class="line"><a name="l04075"></a><span class="lineno"> 4075</span> offset_psij += my_u0-ar_u0+n0;</div>
-<div class="line"><a name="l04076"></a><span class="lineno"> 4076</span> </div>
-<div class="line"><a name="l04077"></a><span class="lineno"> 4077</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l04078"></a><span class="lineno"> 4078</span> <span class="preprocessor"></span> <span class="keywordflow">if</span> (u0<=o0)</div>
-<div class="line"><a name="l04079"></a><span class="lineno"> 4079</span> {</div>
-<div class="line"><a name="l04080"></a><span class="lineno"> 4080</span> assert(o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l04081"></a><span class="lineno"> 4081</span> assert(offset_psij+o0-u0 <= 2*m+1);</div>
-<div class="line"><a name="l04082"></a><span class="lineno"> 4082</span> }</div>
-<div class="line"><a name="l04083"></a><span class="lineno"> 4083</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04084"></a><span class="lineno"> 4084</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (l0 = 0; l0 <= o0-u0; l0++)</div>
-<div class="line"><a name="l04085"></a><span class="lineno"> 4085</span> {</div>
-<div class="line"><a name="l04086"></a><span class="lineno"> 4086</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i0 = (u0+l0) * n1;</div>
-<div class="line"><a name="l04087"></a><span class="lineno"> 4087</span> <span class="keyword">const</span> C val0 = psij_const0[offset_psij+l0];</div>
-<div class="line"><a name="l04088"></a><span class="lineno"> 4088</span> </div>
-<div class="line"><a name="l04089"></a><span class="lineno"> 4089</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l04090"></a><span class="lineno"> 4090</span> {</div>
-<div class="line"><a name="l04091"></a><span class="lineno"> 4091</span> <span class="keyword">const</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i1 = (i0 + index_temp1[l1]) * n2;</div>
-<div class="line"><a name="l04092"></a><span class="lineno"> 4092</span> <span class="keyword">const</span> C val1 = psij_const1[l1];</div>
-<div class="line"><a name="l04093"></a><span class="lineno"> 4093</span> </div>
-<div class="line"><a name="l04094"></a><span class="lineno"> 4094</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04095"></a><span class="lineno"> 4095</span> g[i1 + index_temp2[l2]] += val0 * val1 * psij_const2[l2] * f;</div>
-<div class="line"><a name="l04096"></a><span class="lineno"> 4096</span> }</div>
-<div class="line"><a name="l04097"></a><span class="lineno"> 4097</span> }</div>
-<div class="line"><a name="l04098"></a><span class="lineno"> 4098</span> }</div>
-<div class="line"><a name="l04099"></a><span class="lineno"> 4099</span> }</div>
-<div class="line"><a name="l04100"></a><span class="lineno"> 4100</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04101"></a><span class="lineno"> 4101</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04102"></a><span class="lineno"> 4102</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l04103"></a><span class="lineno"> 4103</span> <span class="preprocessor"></span><span class="comment">/* adjoint NFFT three-dimensional case with OpenMP atomic operations */</span></div>
-<div class="line"><a name="l04104"></a><span class="lineno"> 4104</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_3d_compute_omp_atomic(<span class="keyword">const</span> C f, C *g,</div>
-<div class="line"><a name="l04105"></a><span class="lineno"> 4105</span> <span class="keyword">const</span> R *psij_const0, <span class="keyword">const</span> R *psij_const1, <span class="keyword">const</span> R *psij_const2,</div>
-<div class="line"><a name="l04106"></a><span class="lineno"> 4106</span> <span class="keyword">const</span> R *xj0, <span class="keyword">const</span> R *xj1, <span class="keyword">const</span> R *xj2,</div>
-<div class="line"><a name="l04107"></a><span class="lineno"> 4107</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0, <span class="keyword">const</span> <span class="keywordtype">int</span> n1, <span class="keyword">const</span> <span class="keywordtype">int</span> n2, <span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l04108"></a><span class="lineno"> 4108</span> {</div>
-<div class="line"><a name="l04109"></a><span class="lineno"> 4109</span> <span class="keywordtype">int</span> u0,o0,l0,u1,o1,l1,u2,o2,l2;</div>
-<div class="line"><a name="l04110"></a><span class="lineno"> 4110</span> <span class="keyword">const</span> <span class="keywordtype">int</span> lprod = (2*m+2) * (2*m+2) * (2*m+2);</div>
-<div class="line"><a name="l04111"></a><span class="lineno"> 4111</span> </div>
-<div class="line"><a name="l04112"></a><span class="lineno"> 4112</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> index_temp0[2*m+2];</div>
-<div class="line"><a name="l04113"></a><span class="lineno"> 4113</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> index_temp1[2*m+2];</div>
-<div class="line"><a name="l04114"></a><span class="lineno"> 4114</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> index_temp2[2*m+2];</div>
-<div class="line"><a name="l04115"></a><span class="lineno"> 4115</span> </div>
-<div class="line"><a name="l04116"></a><span class="lineno"> 4116</span> nfft_uo2(&u0,&o0,*xj0, n0, m);</div>
-<div class="line"><a name="l04117"></a><span class="lineno"> 4117</span> nfft_uo2(&u1,&o1,*xj1, n1, m);</div>
-<div class="line"><a name="l04118"></a><span class="lineno"> 4118</span> nfft_uo2(&u2,&o2,*xj2, n2, m);</div>
-<div class="line"><a name="l04119"></a><span class="lineno"> 4119</span> </div>
-<div class="line"><a name="l04120"></a><span class="lineno"> 4120</span> <span class="keywordflow">for</span> (l0=0; l0<=2*m+1; l0++)</div>
-<div class="line"><a name="l04121"></a><span class="lineno"> 4121</span> index_temp0[l0] = (u0+l0)%n0;</div>
-<div class="line"><a name="l04122"></a><span class="lineno"> 4122</span> </div>
-<div class="line"><a name="l04123"></a><span class="lineno"> 4123</span> <span class="keywordflow">for</span> (l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l04124"></a><span class="lineno"> 4124</span> index_temp1[l1] = (u1+l1)%n1;</div>
-<div class="line"><a name="l04125"></a><span class="lineno"> 4125</span> </div>
-<div class="line"><a name="l04126"></a><span class="lineno"> 4126</span> <span class="keywordflow">for</span> (l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04127"></a><span class="lineno"> 4127</span> index_temp2[l2] = (u2+l2)%n2;</div>
-<div class="line"><a name="l04128"></a><span class="lineno"> 4128</span> </div>
-<div class="line"><a name="l04129"></a><span class="lineno"> 4129</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++)</div>
-<div class="line"><a name="l04130"></a><span class="lineno"> 4130</span> {</div>
-<div class="line"><a name="l04131"></a><span class="lineno"> 4131</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++)</div>
-<div class="line"><a name="l04132"></a><span class="lineno"> 4132</span> {</div>
-<div class="line"><a name="l04133"></a><span class="lineno"> 4133</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04134"></a><span class="lineno"> 4134</span> {</div>
-<div class="line"><a name="l04135"></a><span class="lineno"> 4135</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> <span class="keywordtype">int</span> i = (index_temp0[l0] * n1 + index_temp1[l1]) * n2 + index_temp2[l2];</div>
-<div class="line"><a name="l04136"></a><span class="lineno"> 4136</span> C *lhs = g+i;</div>
-<div class="line"><a name="l04137"></a><span class="lineno"> 4137</span> R *lhs_real = (R*)lhs;</div>
-<div class="line"><a name="l04138"></a><span class="lineno"> 4138</span> C val = psij_const0[l0] * psij_const1[l1] * psij_const2[l2] * f;</div>
-<div class="line"><a name="l04139"></a><span class="lineno"> 4139</span> </div>
-<div class="line"><a name="l04140"></a><span class="lineno"> 4140</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l04141"></a><span class="lineno"> 4141</span> <span class="preprocessor"></span> lhs_real[0] += creal(val);</div>
-<div class="line"><a name="l04142"></a><span class="lineno"> 4142</span> </div>
-<div class="line"><a name="l04143"></a><span class="lineno"> 4143</span> <span class="preprocessor"> #pragma omp atomic</span></div>
-<div class="line"><a name="l04144"></a><span class="lineno"> 4144</span> <span class="preprocessor"></span> lhs_real[1] += cimag(val);</div>
-<div class="line"><a name="l04145"></a><span class="lineno"> 4145</span> }</div>
-<div class="line"><a name="l04146"></a><span class="lineno"> 4146</span> }</div>
-<div class="line"><a name="l04147"></a><span class="lineno"> 4147</span> }</div>
-<div class="line"><a name="l04148"></a><span class="lineno"> 4148</span> }</div>
-<div class="line"><a name="l04149"></a><span class="lineno"> 4149</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04150"></a><span class="lineno"> 4150</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04151"></a><span class="lineno"> 4151</span> <span class="preprocessor">#ifndef _OPENMP</span></div>
-<div class="line"><a name="l04152"></a><span class="lineno"> 4152</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_3d_compute_serial(<span class="keyword">const</span> C *fj, C *g,</div>
-<div class="line"><a name="l04153"></a><span class="lineno"> 4153</span> <span class="keyword">const</span> R *psij_const0, <span class="keyword">const</span> R *psij_const1, <span class="keyword">const</span> R *psij_const2,</div>
-<div class="line"><a name="l04154"></a><span class="lineno"> 4154</span> <span class="keyword">const</span> R *xj0, <span class="keyword">const</span> R *xj1, <span class="keyword">const</span> R *xj2,</div>
-<div class="line"><a name="l04155"></a><span class="lineno"> 4155</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0, <span class="keyword">const</span> <span class="keywordtype">int</span> n1, <span class="keyword">const</span> <span class="keywordtype">int</span> n2, <span class="keyword">const</span> <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l04156"></a><span class="lineno"> 4156</span> {</div>
-<div class="line"><a name="l04157"></a><span class="lineno"> 4157</span> <span class="keywordtype">int</span> u0,o0,l0,u1,o1,l1,u2,o2,l2;</div>
-<div class="line"><a name="l04158"></a><span class="lineno"> 4158</span> C *gj;</div>
-<div class="line"><a name="l04159"></a><span class="lineno"> 4159</span> <span class="keyword">const</span> R *psij0,*psij1,*psij2;</div>
-<div class="line"><a name="l04160"></a><span class="lineno"> 4160</span> </div>
-<div class="line"><a name="l04161"></a><span class="lineno"> 4161</span> psij0=psij_const0;</div>
-<div class="line"><a name="l04162"></a><span class="lineno"> 4162</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04163"></a><span class="lineno"> 4163</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04164"></a><span class="lineno"> 4164</span> </div>
-<div class="line"><a name="l04165"></a><span class="lineno"> 4165</span> nfft_uo2(&u0,&o0,*xj0, n0, m);</div>
-<div class="line"><a name="l04166"></a><span class="lineno"> 4166</span> nfft_uo2(&u1,&o1,*xj1, n1, m);</div>
-<div class="line"><a name="l04167"></a><span class="lineno"> 4167</span> nfft_uo2(&u2,&o2,*xj2, n2, m);</div>
-<div class="line"><a name="l04168"></a><span class="lineno"> 4168</span> </div>
-<div class="line"><a name="l04169"></a><span class="lineno"> 4169</span> <span class="keywordflow">if</span>(u0<o0)</div>
-<div class="line"><a name="l04170"></a><span class="lineno"> 4170</span> <span class="keywordflow">if</span>(u1<o1)</div>
-<div class="line"><a name="l04171"></a><span class="lineno"> 4171</span> <span class="keywordflow">if</span>(u2<o2)</div>
-<div class="line"><a name="l04172"></a><span class="lineno"> 4172</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l04173"></a><span class="lineno"> 4173</span> {</div>
-<div class="line"><a name="l04174"></a><span class="lineno"> 4174</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04175"></a><span class="lineno"> 4175</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l04176"></a><span class="lineno"> 4176</span> {</div>
-<div class="line"><a name="l04177"></a><span class="lineno"> 4177</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04178"></a><span class="lineno"> 4178</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04179"></a><span class="lineno"> 4179</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04180"></a><span class="lineno"> 4180</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04181"></a><span class="lineno"> 4181</span> }</div>
-<div class="line"><a name="l04182"></a><span class="lineno"> 4182</span> }</div>
-<div class="line"><a name="l04183"></a><span class="lineno"> 4183</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u2>o2)*/</span></div>
-<div class="line"><a name="l04184"></a><span class="lineno"> 4184</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l04185"></a><span class="lineno"> 4185</span> {</div>
-<div class="line"><a name="l04186"></a><span class="lineno"> 4186</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04187"></a><span class="lineno"> 4187</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l04188"></a><span class="lineno"> 4188</span> {</div>
-<div class="line"><a name="l04189"></a><span class="lineno"> 4189</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04190"></a><span class="lineno"> 4190</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04191"></a><span class="lineno"> 4191</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l04192"></a><span class="lineno"> 4192</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04193"></a><span class="lineno"> 4193</span> gj=g+((u0+l0)*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l04194"></a><span class="lineno"> 4194</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l04195"></a><span class="lineno"> 4195</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04196"></a><span class="lineno"> 4196</span> }</div>
-<div class="line"><a name="l04197"></a><span class="lineno"> 4197</span> }</div>
-<div class="line"><a name="l04198"></a><span class="lineno"> 4198</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u1>o1)*/</span></div>
-<div class="line"><a name="l04199"></a><span class="lineno"> 4199</span> <span class="keywordflow">if</span>(u2<o2)</div>
-<div class="line"><a name="l04200"></a><span class="lineno"> 4200</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l04201"></a><span class="lineno"> 4201</span> {</div>
-<div class="line"><a name="l04202"></a><span class="lineno"> 4202</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04203"></a><span class="lineno"> 4203</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l04204"></a><span class="lineno"> 4204</span> {</div>
-<div class="line"><a name="l04205"></a><span class="lineno"> 4205</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04206"></a><span class="lineno"> 4206</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04207"></a><span class="lineno"> 4207</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04208"></a><span class="lineno"> 4208</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04209"></a><span class="lineno"> 4209</span> }</div>
-<div class="line"><a name="l04210"></a><span class="lineno"> 4210</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l04211"></a><span class="lineno"> 4211</span> {</div>
-<div class="line"><a name="l04212"></a><span class="lineno"> 4212</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04213"></a><span class="lineno"> 4213</span> gj=g+((u0+l0)*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l04214"></a><span class="lineno"> 4214</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04215"></a><span class="lineno"> 4215</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04216"></a><span class="lineno"> 4216</span> }</div>
-<div class="line"><a name="l04217"></a><span class="lineno"> 4217</span> }</div>
-<div class="line"><a name="l04218"></a><span class="lineno"> 4218</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u2>o2) */</span></div>
-<div class="line"><a name="l04219"></a><span class="lineno"> 4219</span> {</div>
-<div class="line"><a name="l04220"></a><span class="lineno"> 4220</span> <span class="keywordflow">for</span>(l0=0; l0<=2*m+1; l0++,psij0++)</div>
-<div class="line"><a name="l04221"></a><span class="lineno"> 4221</span> {</div>
-<div class="line"><a name="l04222"></a><span class="lineno"> 4222</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04223"></a><span class="lineno"> 4223</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l04224"></a><span class="lineno"> 4224</span> {</div>
-<div class="line"><a name="l04225"></a><span class="lineno"> 4225</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04226"></a><span class="lineno"> 4226</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04227"></a><span class="lineno"> 4227</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l04228"></a><span class="lineno"> 4228</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04229"></a><span class="lineno"> 4229</span> gj=g+((u0+l0)*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l04230"></a><span class="lineno"> 4230</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l04231"></a><span class="lineno"> 4231</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04232"></a><span class="lineno"> 4232</span> }</div>
-<div class="line"><a name="l04233"></a><span class="lineno"> 4233</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l04234"></a><span class="lineno"> 4234</span> {</div>
-<div class="line"><a name="l04235"></a><span class="lineno"> 4235</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04236"></a><span class="lineno"> 4236</span> gj=g+((u0+l0)*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l04237"></a><span class="lineno"> 4237</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l04238"></a><span class="lineno"> 4238</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04239"></a><span class="lineno"> 4239</span> gj=g+((u0+l0)*n1+l1)*n2;</div>
-<div class="line"><a name="l04240"></a><span class="lineno"> 4240</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l04241"></a><span class="lineno"> 4241</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04242"></a><span class="lineno"> 4242</span> }</div>
-<div class="line"><a name="l04243"></a><span class="lineno"> 4243</span> }</div>
-<div class="line"><a name="l04244"></a><span class="lineno"> 4244</span> }</div>
-<div class="line"><a name="l04245"></a><span class="lineno"> 4245</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u0>o0) */</span></div>
-<div class="line"><a name="l04246"></a><span class="lineno"> 4246</span> <span class="keywordflow">if</span>(u1<o1)</div>
-<div class="line"><a name="l04247"></a><span class="lineno"> 4247</span> <span class="keywordflow">if</span>(u2<o2)</div>
-<div class="line"><a name="l04248"></a><span class="lineno"> 4248</span> {</div>
-<div class="line"><a name="l04249"></a><span class="lineno"> 4249</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l04250"></a><span class="lineno"> 4250</span> {</div>
-<div class="line"><a name="l04251"></a><span class="lineno"> 4251</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04252"></a><span class="lineno"> 4252</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l04253"></a><span class="lineno"> 4253</span> {</div>
-<div class="line"><a name="l04254"></a><span class="lineno"> 4254</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04255"></a><span class="lineno"> 4255</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04256"></a><span class="lineno"> 4256</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04257"></a><span class="lineno"> 4257</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04258"></a><span class="lineno"> 4258</span> }</div>
-<div class="line"><a name="l04259"></a><span class="lineno"> 4259</span> }</div>
-<div class="line"><a name="l04260"></a><span class="lineno"> 4260</span> </div>
-<div class="line"><a name="l04261"></a><span class="lineno"> 4261</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l04262"></a><span class="lineno"> 4262</span> {</div>
-<div class="line"><a name="l04263"></a><span class="lineno"> 4263</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04264"></a><span class="lineno"> 4264</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l04265"></a><span class="lineno"> 4265</span> {</div>
-<div class="line"><a name="l04266"></a><span class="lineno"> 4266</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04267"></a><span class="lineno"> 4267</span> gj=g+(l0*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04268"></a><span class="lineno"> 4268</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04269"></a><span class="lineno"> 4269</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04270"></a><span class="lineno"> 4270</span> }</div>
-<div class="line"><a name="l04271"></a><span class="lineno"> 4271</span> }</div>
-<div class="line"><a name="l04272"></a><span class="lineno"> 4272</span> }</div>
-<div class="line"><a name="l04273"></a><span class="lineno"> 4273</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u2>o2) */</span></div>
-<div class="line"><a name="l04274"></a><span class="lineno"> 4274</span> {</div>
-<div class="line"><a name="l04275"></a><span class="lineno"> 4275</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l04276"></a><span class="lineno"> 4276</span> {</div>
-<div class="line"><a name="l04277"></a><span class="lineno"> 4277</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04278"></a><span class="lineno"> 4278</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l04279"></a><span class="lineno"> 4279</span> {</div>
-<div class="line"><a name="l04280"></a><span class="lineno"> 4280</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04281"></a><span class="lineno"> 4281</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04282"></a><span class="lineno"> 4282</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l04283"></a><span class="lineno"> 4283</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04284"></a><span class="lineno"> 4284</span> gj=g+((u0+l0)*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l04285"></a><span class="lineno"> 4285</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l04286"></a><span class="lineno"> 4286</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04287"></a><span class="lineno"> 4287</span> }</div>
-<div class="line"><a name="l04288"></a><span class="lineno"> 4288</span> }</div>
-<div class="line"><a name="l04289"></a><span class="lineno"> 4289</span> </div>
-<div class="line"><a name="l04290"></a><span class="lineno"> 4290</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l04291"></a><span class="lineno"> 4291</span> {</div>
-<div class="line"><a name="l04292"></a><span class="lineno"> 4292</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04293"></a><span class="lineno"> 4293</span> <span class="keywordflow">for</span>(l1=0; l1<=2*m+1; l1++,psij1++)</div>
-<div class="line"><a name="l04294"></a><span class="lineno"> 4294</span> {</div>
-<div class="line"><a name="l04295"></a><span class="lineno"> 4295</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04296"></a><span class="lineno"> 4296</span> gj=g+(l0*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04297"></a><span class="lineno"> 4297</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l04298"></a><span class="lineno"> 4298</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04299"></a><span class="lineno"> 4299</span> gj=g+(l0*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l04300"></a><span class="lineno"> 4300</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l04301"></a><span class="lineno"> 4301</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04302"></a><span class="lineno"> 4302</span> }</div>
-<div class="line"><a name="l04303"></a><span class="lineno"> 4303</span> }</div>
-<div class="line"><a name="l04304"></a><span class="lineno"> 4304</span> }</div>
-<div class="line"><a name="l04305"></a><span class="lineno"> 4305</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u1>o1) */</span></div>
-<div class="line"><a name="l04306"></a><span class="lineno"> 4306</span> <span class="keywordflow">if</span>(u2<o2)</div>
-<div class="line"><a name="l04307"></a><span class="lineno"> 4307</span> {</div>
-<div class="line"><a name="l04308"></a><span class="lineno"> 4308</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l04309"></a><span class="lineno"> 4309</span> {</div>
-<div class="line"><a name="l04310"></a><span class="lineno"> 4310</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04311"></a><span class="lineno"> 4311</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l04312"></a><span class="lineno"> 4312</span> {</div>
-<div class="line"><a name="l04313"></a><span class="lineno"> 4313</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04314"></a><span class="lineno"> 4314</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04315"></a><span class="lineno"> 4315</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04316"></a><span class="lineno"> 4316</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04317"></a><span class="lineno"> 4317</span> }</div>
-<div class="line"><a name="l04318"></a><span class="lineno"> 4318</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l04319"></a><span class="lineno"> 4319</span> {</div>
-<div class="line"><a name="l04320"></a><span class="lineno"> 4320</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04321"></a><span class="lineno"> 4321</span> gj=g+((u0+l0)*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l04322"></a><span class="lineno"> 4322</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04323"></a><span class="lineno"> 4323</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04324"></a><span class="lineno"> 4324</span> }</div>
-<div class="line"><a name="l04325"></a><span class="lineno"> 4325</span> }</div>
-<div class="line"><a name="l04326"></a><span class="lineno"> 4326</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l04327"></a><span class="lineno"> 4327</span> {</div>
-<div class="line"><a name="l04328"></a><span class="lineno"> 4328</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04329"></a><span class="lineno"> 4329</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l04330"></a><span class="lineno"> 4330</span> {</div>
-<div class="line"><a name="l04331"></a><span class="lineno"> 4331</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04332"></a><span class="lineno"> 4332</span> gj=g+(l0*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04333"></a><span class="lineno"> 4333</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04334"></a><span class="lineno"> 4334</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04335"></a><span class="lineno"> 4335</span> }</div>
-<div class="line"><a name="l04336"></a><span class="lineno"> 4336</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l04337"></a><span class="lineno"> 4337</span> {</div>
-<div class="line"><a name="l04338"></a><span class="lineno"> 4338</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04339"></a><span class="lineno"> 4339</span> gj=g+(l0*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l04340"></a><span class="lineno"> 4340</span> <span class="keywordflow">for</span>(l2=0; l2<=2*m+1; l2++)</div>
-<div class="line"><a name="l04341"></a><span class="lineno"> 4341</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04342"></a><span class="lineno"> 4342</span> }</div>
-<div class="line"><a name="l04343"></a><span class="lineno"> 4343</span> }</div>
-<div class="line"><a name="l04344"></a><span class="lineno"> 4344</span> }</div>
-<div class="line"><a name="l04345"></a><span class="lineno"> 4345</span> <span class="keywordflow">else</span><span class="comment">/* asserts (u2>o2) */</span></div>
-<div class="line"><a name="l04346"></a><span class="lineno"> 4346</span> {</div>
-<div class="line"><a name="l04347"></a><span class="lineno"> 4347</span> <span class="keywordflow">for</span>(l0=0; l0<2*m+1-o0; l0++,psij0++)</div>
-<div class="line"><a name="l04348"></a><span class="lineno"> 4348</span> {</div>
-<div class="line"><a name="l04349"></a><span class="lineno"> 4349</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04350"></a><span class="lineno"> 4350</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l04351"></a><span class="lineno"> 4351</span> {</div>
-<div class="line"><a name="l04352"></a><span class="lineno"> 4352</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04353"></a><span class="lineno"> 4353</span> gj=g+((u0+l0)*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04354"></a><span class="lineno"> 4354</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l04355"></a><span class="lineno"> 4355</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04356"></a><span class="lineno"> 4356</span> gj=g+((u0+l0)*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l04357"></a><span class="lineno"> 4357</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l04358"></a><span class="lineno"> 4358</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04359"></a><span class="lineno"> 4359</span> }</div>
-<div class="line"><a name="l04360"></a><span class="lineno"> 4360</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l04361"></a><span class="lineno"> 4361</span> {</div>
-<div class="line"><a name="l04362"></a><span class="lineno"> 4362</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04363"></a><span class="lineno"> 4363</span> gj=g+((u0+l0)*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l04364"></a><span class="lineno"> 4364</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l04365"></a><span class="lineno"> 4365</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04366"></a><span class="lineno"> 4366</span> gj=g+((u0+l0)*n1+l1)*n2;</div>
-<div class="line"><a name="l04367"></a><span class="lineno"> 4367</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l04368"></a><span class="lineno"> 4368</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04369"></a><span class="lineno"> 4369</span> }</div>
-<div class="line"><a name="l04370"></a><span class="lineno"> 4370</span> }</div>
-<div class="line"><a name="l04371"></a><span class="lineno"> 4371</span> </div>
-<div class="line"><a name="l04372"></a><span class="lineno"> 4372</span> <span class="keywordflow">for</span>(l0=0; l0<=o0; l0++,psij0++)</div>
-<div class="line"><a name="l04373"></a><span class="lineno"> 4373</span> {</div>
-<div class="line"><a name="l04374"></a><span class="lineno"> 4374</span> psij1=psij_const1;</div>
-<div class="line"><a name="l04375"></a><span class="lineno"> 4375</span> <span class="keywordflow">for</span>(l1=0; l1<2*m+1-o1; l1++,psij1++)</div>
-<div class="line"><a name="l04376"></a><span class="lineno"> 4376</span> {</div>
-<div class="line"><a name="l04377"></a><span class="lineno"> 4377</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04378"></a><span class="lineno"> 4378</span> gj=g+(l0*n1+(u1+l1))*n2+u2;</div>
-<div class="line"><a name="l04379"></a><span class="lineno"> 4379</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l04380"></a><span class="lineno"> 4380</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04381"></a><span class="lineno"> 4381</span> gj=g+(l0*n1+(u1+l1))*n2;</div>
-<div class="line"><a name="l04382"></a><span class="lineno"> 4382</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l04383"></a><span class="lineno"> 4383</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04384"></a><span class="lineno"> 4384</span> }</div>
-<div class="line"><a name="l04385"></a><span class="lineno"> 4385</span> <span class="keywordflow">for</span>(l1=0; l1<=o1; l1++,psij1++)</div>
-<div class="line"><a name="l04386"></a><span class="lineno"> 4386</span> {</div>
-<div class="line"><a name="l04387"></a><span class="lineno"> 4387</span> psij2=psij_const2;</div>
-<div class="line"><a name="l04388"></a><span class="lineno"> 4388</span> gj=g+(l0*n1+l1)*n2+u2;</div>
-<div class="line"><a name="l04389"></a><span class="lineno"> 4389</span> <span class="keywordflow">for</span>(l2=0; l2<2*m+1-o2; l2++)</div>
-<div class="line"><a name="l04390"></a><span class="lineno"> 4390</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04391"></a><span class="lineno"> 4391</span> gj=g+(l0*n1+l1)*n2;</div>
-<div class="line"><a name="l04392"></a><span class="lineno"> 4392</span> <span class="keywordflow">for</span>(l2=0; l2<=o2; l2++)</div>
-<div class="line"><a name="l04393"></a><span class="lineno"> 4393</span> (*gj++) += (*psij0) * (*psij1) * (*psij2++) * (*fj);</div>
-<div class="line"><a name="l04394"></a><span class="lineno"> 4394</span> }</div>
-<div class="line"><a name="l04395"></a><span class="lineno"> 4395</span> }</div>
-<div class="line"><a name="l04396"></a><span class="lineno"> 4396</span> }</div>
-<div class="line"><a name="l04397"></a><span class="lineno"> 4397</span> }</div>
-<div class="line"><a name="l04398"></a><span class="lineno"> 4398</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04399"></a><span class="lineno"> 4399</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04400"></a><span class="lineno"> 4400</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_trafo_3d_B(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l04401"></a><span class="lineno"> 4401</span> {</div>
-<div class="line"><a name="l04402"></a><span class="lineno"> 4402</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N0 = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];</div>
-<div class="line"><a name="l04403"></a><span class="lineno"> 4403</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0 = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0];</div>
-<div class="line"><a name="l04404"></a><span class="lineno"> 4404</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N1 = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];</div>
-<div class="line"><a name="l04405"></a><span class="lineno"> 4405</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n1 = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[1];</div>
-<div class="line"><a name="l04406"></a><span class="lineno"> 4406</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N2 = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2];</div>
-<div class="line"><a name="l04407"></a><span class="lineno"> 4407</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n2 = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[2];</div>
-<div class="line"><a name="l04408"></a><span class="lineno"> 4408</span> <span class="keyword">const</span> <span class="keywordtype">int</span> M = ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l04409"></a><span class="lineno"> 4409</span> <span class="keyword">const</span> <span class="keywordtype">int</span> m = ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>;</div>
-<div class="line"><a name="l04410"></a><span class="lineno"> 4410</span> </div>
-<div class="line"><a name="l04411"></a><span class="lineno"> 4411</span> <span class="keyword">const</span> C* g = (C*) ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>;</div>
-<div class="line"><a name="l04412"></a><span class="lineno"> 4412</span> </div>
-<div class="line"><a name="l04413"></a><span class="lineno"> 4413</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l04414"></a><span class="lineno"> 4414</span> </div>
-<div class="line"><a name="l04415"></a><span class="lineno"> 4415</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l04416"></a><span class="lineno"> 4416</span> {</div>
-<div class="line"><a name="l04417"></a><span class="lineno"> 4417</span> <span class="keyword">const</span> <span class="keywordtype">int</span> lprod = (2*m+2) * (2*m+2) * (2*m+2);</div>
-<div class="line"><a name="l04418"></a><span class="lineno"> 4418</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l04419"></a><span class="lineno"> 4419</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l04420"></a><span class="lineno"> 4420</span> {</div>
-<div class="line"><a name="l04421"></a><span class="lineno"> 4421</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l04422"></a><span class="lineno"> 4422</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l04423"></a><span class="lineno"> 4423</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = K(0.0);</div>
-<div class="line"><a name="l04424"></a><span class="lineno"> 4424</span> <span class="keywordflow">for</span> (l = 0; l < lprod; l++)</div>
-<div class="line"><a name="l04425"></a><span class="lineno"> 4425</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[j*lprod+l] * g[ths-><a class="code" href="structnfft_ [...]
-<div class="line"><a name="l04426"></a><span class="lineno"> 4426</span> }</div>
-<div class="line"><a name="l04427"></a><span class="lineno"> 4427</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l04428"></a><span class="lineno"> 4428</span> } <span class="comment">/* if(PRE_FULL_PSI) */</span></div>
-<div class="line"><a name="l04429"></a><span class="lineno"> 4429</span> </div>
-<div class="line"><a name="l04430"></a><span class="lineno"> 4430</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l04431"></a><span class="lineno"> 4431</span> {</div>
-<div class="line"><a name="l04432"></a><span class="lineno"> 4432</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l04433"></a><span class="lineno"> 4433</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l04434"></a><span class="lineno"> 4434</span> {</div>
-<div class="line"><a name="l04435"></a><span class="lineno"> 4435</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l04436"></a><span class="lineno"> 4436</span> nfft_trafo_3d_compute(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>+j*3*(2*m+2), ths-><a class="code" [...]
-<div class="line"><a name="l04437"></a><span class="lineno"> 4437</span> }</div>
-<div class="line"><a name="l04438"></a><span class="lineno"> 4438</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l04439"></a><span class="lineno"> 4439</span> } <span class="comment">/* if(PRE_PSI) */</span></div>
-<div class="line"><a name="l04440"></a><span class="lineno"> 4440</span> </div>
-<div class="line"><a name="l04441"></a><span class="lineno"> 4441</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l04442"></a><span class="lineno"> 4442</span> {</div>
-<div class="line"><a name="l04443"></a><span class="lineno"> 4443</span> R fg_exp_l[3*(2*m+2)];</div>
-<div class="line"><a name="l04444"></a><span class="lineno"> 4444</span> </div>
-<div class="line"><a name="l04445"></a><span class="lineno"> 4445</span> nfft_3d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l04446"></a><span class="lineno"> 4446</span> nfft_3d_init_fg_exp_l(fg_exp_l+2*m+2, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l04447"></a><span class="lineno"> 4447</span> nfft_3d_init_fg_exp_l(fg_exp_l+2*(2*m+2), m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[2]);</div>
-<div class="line"><a name="l04448"></a><span class="lineno"> 4448</span> </div>
-<div class="line"><a name="l04449"></a><span class="lineno"> 4449</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l04450"></a><span class="lineno"> 4450</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l04451"></a><span class="lineno"> 4451</span> {</div>
-<div class="line"><a name="l04452"></a><span class="lineno"> 4452</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l04453"></a><span class="lineno"> 4453</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l04454"></a><span class="lineno"> 4454</span> R psij_const[3*(2*m+2)];</div>
-<div class="line"><a name="l04455"></a><span class="lineno"> 4455</span> R fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*j*3];</div>
-<div class="line"><a name="l04456"></a><span class="lineno"> 4456</span> R fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*j*3+1];</div>
-<div class="line"><a name="l04457"></a><span class="lineno"> 4457</span> R fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04458"></a><span class="lineno"> 4458</span> </div>
-<div class="line"><a name="l04459"></a><span class="lineno"> 4459</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l04460"></a><span class="lineno"> 4460</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04461"></a><span class="lineno"> 4461</span> {</div>
-<div class="line"><a name="l04462"></a><span class="lineno"> 4462</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04463"></a><span class="lineno"> 4463</span> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l];</div>
-<div class="line"><a name="l04464"></a><span class="lineno"> 4464</span> }</div>
-<div class="line"><a name="l04465"></a><span class="lineno"> 4465</span> </div>
-<div class="line"><a name="l04466"></a><span class="lineno"> 4466</span> fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*3+1)];</div>
-<div class="line"><a name="l04467"></a><span class="lineno"> 4467</span> fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*3+1)+1];</div>
-<div class="line"><a name="l04468"></a><span class="lineno"> 4468</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04469"></a><span class="lineno"> 4469</span> psij_const[2*m+2] = fg_psij0;</div>
-<div class="line"><a name="l04470"></a><span class="lineno"> 4470</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04471"></a><span class="lineno"> 4471</span> {</div>
-<div class="line"><a name="l04472"></a><span class="lineno"> 4472</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04473"></a><span class="lineno"> 4473</span> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l];</div>
-<div class="line"><a name="l04474"></a><span class="lineno"> 4474</span> }</div>
-<div class="line"><a name="l04475"></a><span class="lineno"> 4475</span> </div>
-<div class="line"><a name="l04476"></a><span class="lineno"> 4476</span> fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*3+2)];</div>
-<div class="line"><a name="l04477"></a><span class="lineno"> 4477</span> fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*3+2)+1];</div>
-<div class="line"><a name="l04478"></a><span class="lineno"> 4478</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04479"></a><span class="lineno"> 4479</span> psij_const[2*(2*m+2)] = fg_psij0;</div>
-<div class="line"><a name="l04480"></a><span class="lineno"> 4480</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04481"></a><span class="lineno"> 4481</span> {</div>
-<div class="line"><a name="l04482"></a><span class="lineno"> 4482</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04483"></a><span class="lineno"> 4483</span> psij_const[2*(2*m+2)+l] = fg_psij0*fg_psij2*fg_exp_l[2*(2*m+2)+l];</div>
-<div class="line"><a name="l04484"></a><span class="lineno"> 4484</span> }</div>
-<div class="line"><a name="l04485"></a><span class="lineno"> 4485</span> </div>
-<div class="line"><a name="l04486"></a><span class="lineno"> 4486</span> nfft_trafo_3d_compute(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>+3*j, ths-><a cl [...]
-<div class="line"><a name="l04487"></a><span class="lineno"> 4487</span> }</div>
-<div class="line"><a name="l04488"></a><span class="lineno"> 4488</span> </div>
-<div class="line"><a name="l04489"></a><span class="lineno"> 4489</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l04490"></a><span class="lineno"> 4490</span> } <span class="comment">/* if(PRE_FG_PSI) */</span></div>
-<div class="line"><a name="l04491"></a><span class="lineno"> 4491</span> </div>
-<div class="line"><a name="l04492"></a><span class="lineno"> 4492</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FG_PSI)</div>
-<div class="line"><a name="l04493"></a><span class="lineno"> 4493</span> {</div>
-<div class="line"><a name="l04494"></a><span class="lineno"> 4494</span> R fg_exp_l[3*(2*m+2)];</div>
-<div class="line"><a name="l04495"></a><span class="lineno"> 4495</span> </div>
-<div class="line"><a name="l04496"></a><span class="lineno"> 4496</span> nfft_3d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l04497"></a><span class="lineno"> 4497</span> nfft_3d_init_fg_exp_l(fg_exp_l+2*m+2, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l04498"></a><span class="lineno"> 4498</span> nfft_3d_init_fg_exp_l(fg_exp_l+2*(2*m+2), m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[2]);</div>
-<div class="line"><a name="l04499"></a><span class="lineno"> 4499</span> </div>
-<div class="line"><a name="l04500"></a><span class="lineno"> 4500</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l04501"></a><span class="lineno"> 4501</span> </div>
-<div class="line"><a name="l04502"></a><span class="lineno"> 4502</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l04503"></a><span class="lineno"> 4503</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l04504"></a><span class="lineno"> 4504</span> {</div>
-<div class="line"><a name="l04505"></a><span class="lineno"> 4505</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l04506"></a><span class="lineno"> 4506</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l04507"></a><span class="lineno"> 4507</span> R psij_const[3*(2*m+2)];</div>
-<div class="line"><a name="l04508"></a><span class="lineno"> 4508</span> R fg_psij0, fg_psij1, fg_psij2;</div>
-<div class="line"><a name="l04509"></a><span class="lineno"> 4509</span> </div>
-<div class="line"><a name="l04510"></a><span class="lineno"> 4510</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l04511"></a><span class="lineno"> 4511</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j]-((R)u)/n0,0));</div>
-<div class="line"><a name="l04512"></a><span class="lineno"> 4512</span> fg_psij1 = EXP(K(2.0)*(n0*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j]) - u)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l04513"></a><span class="lineno"> 4513</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04514"></a><span class="lineno"> 4514</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l04515"></a><span class="lineno"> 4515</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04516"></a><span class="lineno"> 4516</span> {</div>
-<div class="line"><a name="l04517"></a><span class="lineno"> 4517</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04518"></a><span class="lineno"> 4518</span> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l];</div>
-<div class="line"><a name="l04519"></a><span class="lineno"> 4519</span> }</div>
-<div class="line"><a name="l04520"></a><span class="lineno"> 4520</span> </div>
-<div class="line"><a name="l04521"></a><span class="lineno"> 4521</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l04522"></a><span class="lineno"> 4522</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]-((R)u)/n1,1));</div>
-<div class="line"><a name="l04523"></a><span class="lineno"> 4523</span> fg_psij1 = EXP(K(2.0)*(n1*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]) - u)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l04524"></a><span class="lineno"> 4524</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04525"></a><span class="lineno"> 4525</span> psij_const[2*m+2] = fg_psij0;</div>
-<div class="line"><a name="l04526"></a><span class="lineno"> 4526</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04527"></a><span class="lineno"> 4527</span> {</div>
-<div class="line"><a name="l04528"></a><span class="lineno"> 4528</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04529"></a><span class="lineno"> 4529</span> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l];</div>
-<div class="line"><a name="l04530"></a><span class="lineno"> 4530</span> }</div>
-<div class="line"><a name="l04531"></a><span class="lineno"> 4531</span> </div>
-<div class="line"><a name="l04532"></a><span class="lineno"> 4532</span> nfft_uo(ths,j,&u,&o,2);</div>
-<div class="line"><a name="l04533"></a><span class="lineno"> 4533</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]-((R)u)/n2,2));</div>
-<div class="line"><a name="l04534"></a><span class="lineno"> 4534</span> fg_psij1 = EXP(K(2.0)*(n2*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]) - u)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[2]);</div>
-<div class="line"><a name="l04535"></a><span class="lineno"> 4535</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04536"></a><span class="lineno"> 4536</span> psij_const[2*(2*m+2)] = fg_psij0;</div>
-<div class="line"><a name="l04537"></a><span class="lineno"> 4537</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04538"></a><span class="lineno"> 4538</span> {</div>
-<div class="line"><a name="l04539"></a><span class="lineno"> 4539</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04540"></a><span class="lineno"> 4540</span> psij_const[2*(2*m+2)+l] = fg_psij0*fg_psij2*fg_exp_l[2*(2*m+2)+l];</div>
-<div class="line"><a name="l04541"></a><span class="lineno"> 4541</span> }</div>
-<div class="line"><a name="l04542"></a><span class="lineno"> 4542</span> </div>
-<div class="line"><a name="l04543"></a><span class="lineno"> 4543</span> nfft_trafo_3d_compute(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>+3*j, ths-><a cl [...]
-<div class="line"><a name="l04544"></a><span class="lineno"> 4544</span> }</div>
-<div class="line"><a name="l04545"></a><span class="lineno"> 4545</span> </div>
-<div class="line"><a name="l04546"></a><span class="lineno"> 4546</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l04547"></a><span class="lineno"> 4547</span> } <span class="comment">/* if(FG_PSI) */</span></div>
-<div class="line"><a name="l04548"></a><span class="lineno"> 4548</span> </div>
-<div class="line"><a name="l04549"></a><span class="lineno"> 4549</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l04550"></a><span class="lineno"> 4550</span> {</div>
-<div class="line"><a name="l04551"></a><span class="lineno"> 4551</span> <span class="keyword">const</span> <span class="keywordtype">int</span> K = ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>, ip_s = K / (m + 2);</div>
-<div class="line"><a name="l04552"></a><span class="lineno"> 4552</span> </div>
-<div class="line"><a name="l04553"></a><span class="lineno"> 4553</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l04554"></a><span class="lineno"> 4554</span> </div>
-<div class="line"><a name="l04555"></a><span class="lineno"> 4555</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l04556"></a><span class="lineno"> 4556</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l04557"></a><span class="lineno"> 4557</span> {</div>
-<div class="line"><a name="l04558"></a><span class="lineno"> 4558</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l04559"></a><span class="lineno"> 4559</span> R ip_y, ip_w;</div>
-<div class="line"><a name="l04560"></a><span class="lineno"> 4560</span> <span class="keywordtype">int</span> ip_u;</div>
-<div class="line"><a name="l04561"></a><span class="lineno"> 4561</span> R psij_const[3*(2*m+2)];</div>
-<div class="line"><a name="l04562"></a><span class="lineno"> 4562</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l04563"></a><span class="lineno"> 4563</span> </div>
-<div class="line"><a name="l04564"></a><span class="lineno"> 4564</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l04565"></a><span class="lineno"> 4565</span> ip_y = FABS(n0*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0] - u)*((R)ip_s);</div>
-<div class="line"><a name="l04566"></a><span class="lineno"> 4566</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l04567"></a><span class="lineno"> 4567</span> ip_w = ip_y-ip_u;</div>
-<div class="line"><a name="l04568"></a><span class="lineno"> 4568</span> <span class="keywordflow">for</span>(l=0; l < 2*m+2; l++)</div>
-<div class="line"><a name="l04569"></a><span class="lineno"> 4569</span> psij_const[l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) +</div>
-<div class="line"><a name="l04570"></a><span class="lineno"> 4570</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s+1)]*(ip_w);</div>
-<div class="line"><a name="l04571"></a><span class="lineno"> 4571</span> </div>
-<div class="line"><a name="l04572"></a><span class="lineno"> 4572</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l04573"></a><span class="lineno"> 4573</span> ip_y = FABS(n1*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1] - u)*((R)ip_s);</div>
-<div class="line"><a name="l04574"></a><span class="lineno"> 4574</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l04575"></a><span class="lineno"> 4575</span> ip_w = ip_y-ip_u;</div>
-<div class="line"><a name="l04576"></a><span class="lineno"> 4576</span> <span class="keywordflow">for</span>(l=0; l < 2*m+2; l++)</div>
-<div class="line"><a name="l04577"></a><span class="lineno"> 4577</span> psij_const[2*m+2+l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(K+1)+ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) +</div>
-<div class="line"><a name="l04578"></a><span class="lineno"> 4578</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(K+1)+ABS(ip_u-l*ip_s+1)]*(ip_w);</div>
-<div class="line"><a name="l04579"></a><span class="lineno"> 4579</span> </div>
-<div class="line"><a name="l04580"></a><span class="lineno"> 4580</span> nfft_uo(ths,j,&u,&o,2);</div>
-<div class="line"><a name="l04581"></a><span class="lineno"> 4581</span> ip_y = FABS(n2*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2] - u)*((R)ip_s);</div>
-<div class="line"><a name="l04582"></a><span class="lineno"> 4582</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l04583"></a><span class="lineno"> 4583</span> ip_w = ip_y-ip_u;</div>
-<div class="line"><a name="l04584"></a><span class="lineno"> 4584</span> <span class="keywordflow">for</span>(l=0; l < 2*m+2; l++)</div>
-<div class="line"><a name="l04585"></a><span class="lineno"> 4585</span> psij_const[2*(2*m+2)+l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(K+1)+ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) +</div>
-<div class="line"><a name="l04586"></a><span class="lineno"> 4586</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(K+1)+ABS(ip_u-l*ip_s+1)]*(ip_w);</div>
-<div class="line"><a name="l04587"></a><span class="lineno"> 4587</span> </div>
-<div class="line"><a name="l04588"></a><span class="lineno"> 4588</span> nfft_trafo_3d_compute(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>+3*j, ths-><a cl [...]
-<div class="line"><a name="l04589"></a><span class="lineno"> 4589</span> }</div>
-<div class="line"><a name="l04590"></a><span class="lineno"> 4590</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l04591"></a><span class="lineno"> 4591</span> } <span class="comment">/* if(PRE_LIN_PSI) */</span></div>
-<div class="line"><a name="l04592"></a><span class="lineno"> 4592</span> </div>
-<div class="line"><a name="l04593"></a><span class="lineno"> 4593</span> <span class="comment">/* no precomputed psi at all */</span></div>
-<div class="line"><a name="l04594"></a><span class="lineno"> 4594</span> </div>
-<div class="line"><a name="l04595"></a><span class="lineno"> 4595</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l04596"></a><span class="lineno"> 4596</span> </div>
-<div class="line"><a name="l04597"></a><span class="lineno"> 4597</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l04598"></a><span class="lineno"> 4598</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l04599"></a><span class="lineno"> 4599</span> {</div>
-<div class="line"><a name="l04600"></a><span class="lineno"> 4600</span> R psij_const[3*(2*m+2)];</div>
-<div class="line"><a name="l04601"></a><span class="lineno"> 4601</span> <span class="keywordtype">int</span> u, o, l;</div>
-<div class="line"><a name="l04602"></a><span class="lineno"> 4602</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used when [...]
-<div class="line"><a name="l04603"></a><span class="lineno"> 4603</span> </div>
-<div class="line"><a name="l04604"></a><span class="lineno"> 4604</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l04605"></a><span class="lineno"> 4605</span> <span class="keywordflow">for</span>(l=0;l<=2*m+1;l++)</div>
-<div class="line"><a name="l04606"></a><span class="lineno"> 4606</span> psij_const[l]=(PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j]-((R)((u+l)))/n0,0));</div>
-<div class="line"><a name="l04607"></a><span class="lineno"> 4607</span> </div>
-<div class="line"><a name="l04608"></a><span class="lineno"> 4608</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l04609"></a><span class="lineno"> 4609</span> <span class="keywordflow">for</span>(l=0;l<=2*m+1;l++)</div>
-<div class="line"><a name="l04610"></a><span class="lineno"> 4610</span> psij_const[2*m+2+l]=(PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]-((R)((u+l)))/n1,1));</div>
-<div class="line"><a name="l04611"></a><span class="lineno"> 4611</span> </div>
-<div class="line"><a name="l04612"></a><span class="lineno"> 4612</span> nfft_uo(ths,j,&u,&o,2);</div>
-<div class="line"><a name="l04613"></a><span class="lineno"> 4613</span> <span class="keywordflow">for</span>(l=0;l<=2*m+1;l++)</div>
-<div class="line"><a name="l04614"></a><span class="lineno"> 4614</span> psij_const[2*(2*m+2)+l]=(PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]-((R)((u+l)))/n2,2));</div>
-<div class="line"><a name="l04615"></a><span class="lineno"> 4615</span> </div>
-<div class="line"><a name="l04616"></a><span class="lineno"> 4616</span> nfft_trafo_3d_compute(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>+3*j, ths-><a clas [...]
-<div class="line"><a name="l04617"></a><span class="lineno"> 4617</span> }</div>
-<div class="line"><a name="l04618"></a><span class="lineno"> 4618</span> }</div>
-<div class="line"><a name="l04619"></a><span class="lineno"> 4619</span> </div>
-<div class="line"><a name="l04620"></a><span class="lineno"> 4620</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l04621"></a><span class="lineno"> 4621</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_ASSERT_A \</span></div>
-<div class="line"><a name="l04622"></a><span class="lineno"> 4622</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l04623"></a><span class="lineno"> 4623</span> <span class="preprocessor"> assert(ar_x[2*k] >= min_u_a || k == M-1); \</span></div>
-<div class="line"><a name="l04624"></a><span class="lineno"> 4624</span> <span class="preprocessor"> if (k > 0) \</span></div>
-<div class="line"><a name="l04625"></a><span class="lineno"> 4625</span> <span class="preprocessor"> assert(ar_x[2*k-2] < min_u_a); \</span></div>
-<div class="line"><a name="l04626"></a><span class="lineno"> 4626</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l04627"></a><span class="lineno"> 4627</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l04628"></a><span class="lineno"> 4628</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_ASSERT_A</span></div>
-<div class="line"><a name="l04629"></a><span class="lineno"> 4629</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04630"></a><span class="lineno"> 4630</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04631"></a><span class="lineno"> 4631</span> <span class="preprocessor">#ifdef OMP_ASSERT</span></div>
-<div class="line"><a name="l04632"></a><span class="lineno"> 4632</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_ASSERT_B \</span></div>
-<div class="line"><a name="l04633"></a><span class="lineno"> 4633</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l04634"></a><span class="lineno"> 4634</span> <span class="preprocessor"> assert(ar_x[2*k] >= min_u_b || k == M-1); \</span></div>
-<div class="line"><a name="l04635"></a><span class="lineno"> 4635</span> <span class="preprocessor"> if (k > 0) \</span></div>
-<div class="line"><a name="l04636"></a><span class="lineno"> 4636</span> <span class="preprocessor"> assert(ar_x[2*k-2] < min_u_b); \</span></div>
-<div class="line"><a name="l04637"></a><span class="lineno"> 4637</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l04638"></a><span class="lineno"> 4638</span> <span class="preprocessor"></span><span class="preprocessor">#else</span></div>
-<div class="line"><a name="l04639"></a><span class="lineno"> 4639</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_ASSERT_B</span></div>
-<div class="line"><a name="l04640"></a><span class="lineno"> 4640</span> <span class="preprocessor"></span><span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04641"></a><span class="lineno"> 4641</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04642"></a><span class="lineno"> 4642</span> <span class="preprocessor">#define MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_COMPUTE_PRE_PSI \</span></div>
-<div class="line"><a name="l04643"></a><span class="lineno"> 4643</span> <span class="preprocessor"> nfft_adjoint_3d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l04644"></a><span class="lineno"> 4644</span> <span class="preprocessor"> ths->psi+j*3*(2*m+2), \</span></div>
-<div class="line"><a name="l04645"></a><span class="lineno"> 4645</span> <span class="preprocessor"> ths->psi+(j*3+1)*(2*m+2), \</span></div>
-<div class="line"><a name="l04646"></a><span class="lineno"> 4646</span> <span class="preprocessor"> ths->psi+(j*3+2)*(2*m+2), \</span></div>
-<div class="line"><a name="l04647"></a><span class="lineno"> 4647</span> <span class="preprocessor"> ths->x+3*j, ths->x+3*j+1, ths->x+3*j+2, \</span></div>
-<div class="line"><a name="l04648"></a><span class="lineno"> 4648</span> <span class="preprocessor"> n0, n1, n2, m, my_u0, my_o0);</span></div>
-<div class="line"><a name="l04649"></a><span class="lineno"> 4649</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04650"></a><span class="lineno"> 4650</span> <span class="preprocessor">#define MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_COMPUTE_PRE_FG_PSI \</span></div>
-<div class="line"><a name="l04651"></a><span class="lineno"> 4651</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l04652"></a><span class="lineno"> 4652</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l04653"></a><span class="lineno"> 4653</span> <span class="preprocessor"> R psij_const[3*(2*m+2)]; \</span></div>
-<div class="line"><a name="l04654"></a><span class="lineno"> 4654</span> <span class="preprocessor"> R fg_psij0 = ths->psi[2*j*3]; \</span></div>
-<div class="line"><a name="l04655"></a><span class="lineno"> 4655</span> <span class="preprocessor"> R fg_psij1 = ths->psi[2*j*3+1]; \</span></div>
-<div class="line"><a name="l04656"></a><span class="lineno"> 4656</span> <span class="preprocessor"> R fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l04657"></a><span class="lineno"> 4657</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04658"></a><span class="lineno"> 4658</span> <span class="preprocessor"> psij_const[0] = fg_psij0; \</span></div>
-<div class="line"><a name="l04659"></a><span class="lineno"> 4659</span> <span class="preprocessor"> for(l=1; l<=2*m+1; l++) \</span></div>
-<div class="line"><a name="l04660"></a><span class="lineno"> 4660</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04661"></a><span class="lineno"> 4661</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l04662"></a><span class="lineno"> 4662</span> <span class="preprocessor"> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l]; \</span></div>
-<div class="line"><a name="l04663"></a><span class="lineno"> 4663</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l04664"></a><span class="lineno"> 4664</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04665"></a><span class="lineno"> 4665</span> <span class="preprocessor"> fg_psij0 = ths->psi[2*(j*3+1)]; \</span></div>
-<div class="line"><a name="l04666"></a><span class="lineno"> 4666</span> <span class="preprocessor"> fg_psij1 = ths->psi[2*(j*3+1)+1]; \</span></div>
-<div class="line"><a name="l04667"></a><span class="lineno"> 4667</span> <span class="preprocessor"> fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l04668"></a><span class="lineno"> 4668</span> <span class="preprocessor"> psij_const[2*m+2] = fg_psij0; \</span></div>
-<div class="line"><a name="l04669"></a><span class="lineno"> 4669</span> <span class="preprocessor"> for(l=1; l<=2*m+1; l++) \</span></div>
-<div class="line"><a name="l04670"></a><span class="lineno"> 4670</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04671"></a><span class="lineno"> 4671</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l04672"></a><span class="lineno"> 4672</span> <span class="preprocessor"> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l]; \</span></div>
-<div class="line"><a name="l04673"></a><span class="lineno"> 4673</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l04674"></a><span class="lineno"> 4674</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04675"></a><span class="lineno"> 4675</span> <span class="preprocessor"> fg_psij0 = ths->psi[2*(j*3+2)]; \</span></div>
-<div class="line"><a name="l04676"></a><span class="lineno"> 4676</span> <span class="preprocessor"> fg_psij1 = ths->psi[2*(j*3+2)+1]; \</span></div>
-<div class="line"><a name="l04677"></a><span class="lineno"> 4677</span> <span class="preprocessor"> fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l04678"></a><span class="lineno"> 4678</span> <span class="preprocessor"> psij_const[2*(2*m+2)] = fg_psij0; \</span></div>
-<div class="line"><a name="l04679"></a><span class="lineno"> 4679</span> <span class="preprocessor"> for(l=1; l<=2*m+1; l++) \</span></div>
-<div class="line"><a name="l04680"></a><span class="lineno"> 4680</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04681"></a><span class="lineno"> 4681</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l04682"></a><span class="lineno"> 4682</span> <span class="preprocessor"> psij_const[2*(2*m+2)+l] = fg_psij0*fg_psij2*fg_exp_l[2*(2*m+2)+l]; \</span></div>
-<div class="line"><a name="l04683"></a><span class="lineno"> 4683</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l04684"></a><span class="lineno"> 4684</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04685"></a><span class="lineno"> 4685</span> <span class="preprocessor"> nfft_adjoint_3d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l04686"></a><span class="lineno"> 4686</span> <span class="preprocessor"> psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, \</span></div>
-<div class="line"><a name="l04687"></a><span class="lineno"> 4687</span> <span class="preprocessor"> ths->x+3*j, ths->x+3*j+1, ths->x+3*j+2, \</span></div>
-<div class="line"><a name="l04688"></a><span class="lineno"> 4688</span> <span class="preprocessor"> n0, n1, n2, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l04689"></a><span class="lineno"> 4689</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l04690"></a><span class="lineno"> 4690</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04691"></a><span class="lineno"> 4691</span> <span class="preprocessor">#define MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_COMPUTE_FG_PSI \</span></div>
-<div class="line"><a name="l04692"></a><span class="lineno"> 4692</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l04693"></a><span class="lineno"> 4693</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l04694"></a><span class="lineno"> 4694</span> <span class="preprocessor"> R psij_const[3*(2*m+2)]; \</span></div>
-<div class="line"><a name="l04695"></a><span class="lineno"> 4695</span> <span class="preprocessor"> R fg_psij0, fg_psij1, fg_psij2; \</span></div>
-<div class="line"><a name="l04696"></a><span class="lineno"> 4696</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04697"></a><span class="lineno"> 4697</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,0); \</span></div>
-<div class="line"><a name="l04698"></a><span class="lineno"> 4698</span> <span class="preprocessor"> fg_psij0 = (PHI(ths->x[3*j]-((R)u)/n0,0)); \</span></div>
-<div class="line"><a name="l04699"></a><span class="lineno"> 4699</span> <span class="preprocessor"> fg_psij1 = EXP(K(2.0)*(n0*(ths->x[3*j]) - u)/ths->b[0]); \</span></div>
-<div class="line"><a name="l04700"></a><span class="lineno"> 4700</span> <span class="preprocessor"> fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l04701"></a><span class="lineno"> 4701</span> <span class="preprocessor"> psij_const[0] = fg_psij0; \</span></div>
-<div class="line"><a name="l04702"></a><span class="lineno"> 4702</span> <span class="preprocessor"> for(l=1; l<=2*m+1; l++) \</span></div>
-<div class="line"><a name="l04703"></a><span class="lineno"> 4703</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04704"></a><span class="lineno"> 4704</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l04705"></a><span class="lineno"> 4705</span> <span class="preprocessor"> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l]; \</span></div>
-<div class="line"><a name="l04706"></a><span class="lineno"> 4706</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l04707"></a><span class="lineno"> 4707</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04708"></a><span class="lineno"> 4708</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,1); \</span></div>
-<div class="line"><a name="l04709"></a><span class="lineno"> 4709</span> <span class="preprocessor"> fg_psij0 = (PHI(ths->x[3*j+1]-((R)u)/n1,1)); \</span></div>
-<div class="line"><a name="l04710"></a><span class="lineno"> 4710</span> <span class="preprocessor"> fg_psij1 = EXP(K(2.0)*(n1*(ths->x[3*j+1]) - u)/ths->b[1]); \</span></div>
-<div class="line"><a name="l04711"></a><span class="lineno"> 4711</span> <span class="preprocessor"> fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l04712"></a><span class="lineno"> 4712</span> <span class="preprocessor"> psij_const[2*m+2] = fg_psij0; \</span></div>
-<div class="line"><a name="l04713"></a><span class="lineno"> 4713</span> <span class="preprocessor"> for(l=1; l<=2*m+1; l++) \</span></div>
-<div class="line"><a name="l04714"></a><span class="lineno"> 4714</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04715"></a><span class="lineno"> 4715</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l04716"></a><span class="lineno"> 4716</span> <span class="preprocessor"> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l]; \</span></div>
-<div class="line"><a name="l04717"></a><span class="lineno"> 4717</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l04718"></a><span class="lineno"> 4718</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04719"></a><span class="lineno"> 4719</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,2); \</span></div>
-<div class="line"><a name="l04720"></a><span class="lineno"> 4720</span> <span class="preprocessor"> fg_psij0 = (PHI(ths->x[3*j+2]-((R)u)/n2,2)); \</span></div>
-<div class="line"><a name="l04721"></a><span class="lineno"> 4721</span> <span class="preprocessor"> fg_psij1 = EXP(K(2.0)*(n2*(ths->x[3*j+2]) - u)/ths->b[2]); \</span></div>
-<div class="line"><a name="l04722"></a><span class="lineno"> 4722</span> <span class="preprocessor"> fg_psij2 = K(1.0); \</span></div>
-<div class="line"><a name="l04723"></a><span class="lineno"> 4723</span> <span class="preprocessor"> psij_const[2*(2*m+2)] = fg_psij0; \</span></div>
-<div class="line"><a name="l04724"></a><span class="lineno"> 4724</span> <span class="preprocessor"> for(l=1; l<=2*m+1; l++) \</span></div>
-<div class="line"><a name="l04725"></a><span class="lineno"> 4725</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04726"></a><span class="lineno"> 4726</span> <span class="preprocessor"> fg_psij2 *= fg_psij1; \</span></div>
-<div class="line"><a name="l04727"></a><span class="lineno"> 4727</span> <span class="preprocessor"> psij_const[2*(2*m+2)+l] = fg_psij0*fg_psij2*fg_exp_l[2*(2*m+2)+l]; \</span></div>
-<div class="line"><a name="l04728"></a><span class="lineno"> 4728</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l04729"></a><span class="lineno"> 4729</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04730"></a><span class="lineno"> 4730</span> <span class="preprocessor"> nfft_adjoint_3d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l04731"></a><span class="lineno"> 4731</span> <span class="preprocessor"> psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, \</span></div>
-<div class="line"><a name="l04732"></a><span class="lineno"> 4732</span> <span class="preprocessor"> ths->x+3*j, ths->x+3*j+1, ths->x+3*j+2, \</span></div>
-<div class="line"><a name="l04733"></a><span class="lineno"> 4733</span> <span class="preprocessor"> n0, n1, n2, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l04734"></a><span class="lineno"> 4734</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l04735"></a><span class="lineno"> 4735</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04736"></a><span class="lineno"> 4736</span> <span class="preprocessor">#define MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_COMPUTE_PRE_LIN_PSI \</span></div>
-<div class="line"><a name="l04737"></a><span class="lineno"> 4737</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l04738"></a><span class="lineno"> 4738</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l04739"></a><span class="lineno"> 4739</span> <span class="preprocessor"> R psij_const[3*(2*m+2)]; \</span></div>
-<div class="line"><a name="l04740"></a><span class="lineno"> 4740</span> <span class="preprocessor"> int ip_u; \</span></div>
-<div class="line"><a name="l04741"></a><span class="lineno"> 4741</span> <span class="preprocessor"> R ip_y, ip_w; \</span></div>
-<div class="line"><a name="l04742"></a><span class="lineno"> 4742</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04743"></a><span class="lineno"> 4743</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,0); \</span></div>
-<div class="line"><a name="l04744"></a><span class="lineno"> 4744</span> <span class="preprocessor"> ip_y = FABS(n0*ths->x[3*j+0] - u)*((R)ip_s); \</span></div>
-<div class="line"><a name="l04745"></a><span class="lineno"> 4745</span> <span class="preprocessor"> ip_u = LRINT(FLOOR(ip_y)); \</span></div>
-<div class="line"><a name="l04746"></a><span class="lineno"> 4746</span> <span class="preprocessor"> ip_w = ip_y-ip_u; \</span></div>
-<div class="line"><a name="l04747"></a><span class="lineno"> 4747</span> <span class="preprocessor"> for(l=0; l < 2*m+2; l++) \</span></div>
-<div class="line"><a name="l04748"></a><span class="lineno"> 4748</span> <span class="preprocessor"> psij_const[l] = ths->psi[ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) + \</span></div>
-<div class="line"><a name="l04749"></a><span class="lineno"> 4749</span> <span class="preprocessor"> ths->psi[ABS(ip_u-l*ip_s+1)]*(ip_w); \</span></div>
-<div class="line"><a name="l04750"></a><span class="lineno"> 4750</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04751"></a><span class="lineno"> 4751</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,1); \</span></div>
-<div class="line"><a name="l04752"></a><span class="lineno"> 4752</span> <span class="preprocessor"> ip_y = FABS(n1*ths->x[3*j+1] - u)*((R)ip_s); \</span></div>
-<div class="line"><a name="l04753"></a><span class="lineno"> 4753</span> <span class="preprocessor"> ip_u = LRINT(FLOOR(ip_y)); \</span></div>
-<div class="line"><a name="l04754"></a><span class="lineno"> 4754</span> <span class="preprocessor"> ip_w = ip_y-ip_u; \</span></div>
-<div class="line"><a name="l04755"></a><span class="lineno"> 4755</span> <span class="preprocessor"> for(l=0; l < 2*m+2; l++) \</span></div>
-<div class="line"><a name="l04756"></a><span class="lineno"> 4756</span> <span class="preprocessor"> psij_const[2*m+2+l] = ths->psi[(K+1)+ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) + \</span></div>
-<div class="line"><a name="l04757"></a><span class="lineno"> 4757</span> <span class="preprocessor"> ths->psi[(K+1)+ABS(ip_u-l*ip_s+1)]*(ip_w); \</span></div>
-<div class="line"><a name="l04758"></a><span class="lineno"> 4758</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04759"></a><span class="lineno"> 4759</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,2); \</span></div>
-<div class="line"><a name="l04760"></a><span class="lineno"> 4760</span> <span class="preprocessor"> ip_y = FABS(n2*ths->x[3*j+2] - u)*((R)ip_s); \</span></div>
-<div class="line"><a name="l04761"></a><span class="lineno"> 4761</span> <span class="preprocessor"> ip_u = LRINT(FLOOR(ip_y)); \</span></div>
-<div class="line"><a name="l04762"></a><span class="lineno"> 4762</span> <span class="preprocessor"> ip_w = ip_y-ip_u; \</span></div>
-<div class="line"><a name="l04763"></a><span class="lineno"> 4763</span> <span class="preprocessor"> for(l=0; l < 2*m+2; l++) \</span></div>
-<div class="line"><a name="l04764"></a><span class="lineno"> 4764</span> <span class="preprocessor"> psij_const[2*(2*m+2)+l] = ths->psi[2*(K+1)+ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) + \</span></div>
-<div class="line"><a name="l04765"></a><span class="lineno"> 4765</span> <span class="preprocessor"> ths->psi[2*(K+1)+ABS(ip_u-l*ip_s+1)]*(ip_w); \</span></div>
-<div class="line"><a name="l04766"></a><span class="lineno"> 4766</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04767"></a><span class="lineno"> 4767</span> <span class="preprocessor"> nfft_adjoint_3d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l04768"></a><span class="lineno"> 4768</span> <span class="preprocessor"> psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, \</span></div>
-<div class="line"><a name="l04769"></a><span class="lineno"> 4769</span> <span class="preprocessor"> ths->x+3*j, ths->x+3*j+1, ths->x+3*j+2, \</span></div>
-<div class="line"><a name="l04770"></a><span class="lineno"> 4770</span> <span class="preprocessor"> n0, n1, n2, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l04771"></a><span class="lineno"> 4771</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l04772"></a><span class="lineno"> 4772</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04773"></a><span class="lineno"> 4773</span> <span class="preprocessor">#define MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_COMPUTE_NO_PSI \</span></div>
-<div class="line"><a name="l04774"></a><span class="lineno"> 4774</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l04775"></a><span class="lineno"> 4775</span> <span class="preprocessor"> int u, o, l; \</span></div>
-<div class="line"><a name="l04776"></a><span class="lineno"> 4776</span> <span class="preprocessor"> R psij_const[3*(2*m+2)]; \</span></div>
-<div class="line"><a name="l04777"></a><span class="lineno"> 4777</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04778"></a><span class="lineno"> 4778</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,0); \</span></div>
-<div class="line"><a name="l04779"></a><span class="lineno"> 4779</span> <span class="preprocessor"> for(l=0;l<=2*m+1;l++) \</span></div>
-<div class="line"><a name="l04780"></a><span class="lineno"> 4780</span> <span class="preprocessor"> psij_const[l]=(PHI(ths->x[3*j]-((R)((u+l)))/n0,0)); \</span></div>
-<div class="line"><a name="l04781"></a><span class="lineno"> 4781</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04782"></a><span class="lineno"> 4782</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,1); \</span></div>
-<div class="line"><a name="l04783"></a><span class="lineno"> 4783</span> <span class="preprocessor"> for(l=0;l<=2*m+1;l++) \</span></div>
-<div class="line"><a name="l04784"></a><span class="lineno"> 4784</span> <span class="preprocessor"> psij_const[2*m+2+l]=(PHI(ths->x[3*j+1]-((R)((u+l)))/n1,1)); \</span></div>
-<div class="line"><a name="l04785"></a><span class="lineno"> 4785</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04786"></a><span class="lineno"> 4786</span> <span class="preprocessor"> nfft_uo(ths,j,&u,&o,2); \</span></div>
-<div class="line"><a name="l04787"></a><span class="lineno"> 4787</span> <span class="preprocessor"> for(l=0;l<=2*m+1;l++) \</span></div>
-<div class="line"><a name="l04788"></a><span class="lineno"> 4788</span> <span class="preprocessor"> psij_const[2*(2*m+2)+l]=(PHI(ths->x[3*j+2]-((R)((u+l)))/n2,2)); \</span></div>
-<div class="line"><a name="l04789"></a><span class="lineno"> 4789</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04790"></a><span class="lineno"> 4790</span> <span class="preprocessor"> nfft_adjoint_3d_compute_omp_blockwise(ths->f[j], g, \</span></div>
-<div class="line"><a name="l04791"></a><span class="lineno"> 4791</span> <span class="preprocessor"> psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, \</span></div>
-<div class="line"><a name="l04792"></a><span class="lineno"> 4792</span> <span class="preprocessor"> ths->x+3*j, ths->x+3*j+1, ths->x+3*j+2, \</span></div>
-<div class="line"><a name="l04793"></a><span class="lineno"> 4793</span> <span class="preprocessor"> n0, n1, n2, m, my_u0, my_o0); \</span></div>
-<div class="line"><a name="l04794"></a><span class="lineno"> 4794</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l04795"></a><span class="lineno"> 4795</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04796"></a><span class="lineno"> 4796</span> <span class="preprocessor">#define MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE(whichone) \</span></div>
-<div class="line"><a name="l04797"></a><span class="lineno"> 4797</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l04798"></a><span class="lineno"> 4798</span> <span class="preprocessor"> if (ths->nfft_flags & NFFT_OMP_BLOCKWISE_ADJOINT) \</span></div>
-<div class="line"><a name="l04799"></a><span class="lineno"> 4799</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04800"></a><span class="lineno"> 4800</span> <span class="preprocessor"> _Pragma("omp parallel private(k)") \</span></div>
-<div class="line"><a name="l04801"></a><span class="lineno"> 4801</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04802"></a><span class="lineno"> 4802</span> <span class="preprocessor"> int my_u0, my_o0, min_u_a, max_u_a, min_u_b, max_u_b; \</span></div>
-<div class="line"><a name="l04803"></a><span class="lineno"> 4803</span> <span class="preprocessor"> int *ar_x = ths->index_x; \</span></div>
-<div class="line"><a name="l04804"></a><span class="lineno"> 4804</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04805"></a><span class="lineno"> 4805</span> <span class="preprocessor"> nfft_adjoint_B_omp_blockwise_init(&my_u0, &my_o0, &min_u_a, &max_u_a, \</span></div>
-<div class="line"><a name="l04806"></a><span class="lineno"> 4806</span> <span class="preprocessor"> &min_u_b, &max_u_b, 3, ths->n, m); \</span></div>
-<div class="line"><a name="l04807"></a><span class="lineno"> 4807</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04808"></a><span class="lineno"> 4808</span> <span class="preprocessor"> if (min_u_a != -1) \</span></div>
-<div class="line"><a name="l04809"></a><span class="lineno"> 4809</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04810"></a><span class="lineno"> 4810</span> <span class="preprocessor"> k = index_x_binary_search(ar_x, M, min_u_a); \</span></div>
-<div class="line"><a name="l04811"></a><span class="lineno"> 4811</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04812"></a><span class="lineno"> 4812</span> <span class="preprocessor"> MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_ASSERT_A \</span></div>
-<div class="line"><a name="l04813"></a><span class="lineno"> 4813</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04814"></a><span class="lineno"> 4814</span> <span class="preprocessor"> while (k < M) \</span></div>
-<div class="line"><a name="l04815"></a><span class="lineno"> 4815</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04816"></a><span class="lineno"> 4816</span> <span class="preprocessor"> int u_prod = ar_x[2*k]; \</span></div>
-<div class="line"><a name="l04817"></a><span class="lineno"> 4817</span> <span class="preprocessor"> int j = ar_x[2*k+1]; \</span></div>
-<div class="line"><a name="l04818"></a><span class="lineno"> 4818</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04819"></a><span class="lineno"> 4819</span> <span class="preprocessor"> if (u_prod < min_u_a || u_prod > max_u_a) \</span></div>
-<div class="line"><a name="l04820"></a><span class="lineno"> 4820</span> <span class="preprocessor"> break; \</span></div>
-<div class="line"><a name="l04821"></a><span class="lineno"> 4821</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04822"></a><span class="lineno"> 4822</span> <span class="preprocessor"> MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_COMPUTE_ ##whichone \</span></div>
-<div class="line"><a name="l04823"></a><span class="lineno"> 4823</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04824"></a><span class="lineno"> 4824</span> <span class="preprocessor"> k++; \</span></div>
-<div class="line"><a name="l04825"></a><span class="lineno"> 4825</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l04826"></a><span class="lineno"> 4826</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l04827"></a><span class="lineno"> 4827</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04828"></a><span class="lineno"> 4828</span> <span class="preprocessor"> if (min_u_b != -1) \</span></div>
-<div class="line"><a name="l04829"></a><span class="lineno"> 4829</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04830"></a><span class="lineno"> 4830</span> <span class="preprocessor"> int k = index_x_binary_search(ar_x, M, min_u_b); \</span></div>
-<div class="line"><a name="l04831"></a><span class="lineno"> 4831</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04832"></a><span class="lineno"> 4832</span> <span class="preprocessor"> MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_ASSERT_B \</span></div>
-<div class="line"><a name="l04833"></a><span class="lineno"> 4833</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04834"></a><span class="lineno"> 4834</span> <span class="preprocessor"> while (k < M) \</span></div>
-<div class="line"><a name="l04835"></a><span class="lineno"> 4835</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l04836"></a><span class="lineno"> 4836</span> <span class="preprocessor"> int u_prod = ar_x[2*k]; \</span></div>
-<div class="line"><a name="l04837"></a><span class="lineno"> 4837</span> <span class="preprocessor"> int j = ar_x[2*k+1]; \</span></div>
-<div class="line"><a name="l04838"></a><span class="lineno"> 4838</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04839"></a><span class="lineno"> 4839</span> <span class="preprocessor"> if (u_prod < min_u_b || u_prod > max_u_b) \</span></div>
-<div class="line"><a name="l04840"></a><span class="lineno"> 4840</span> <span class="preprocessor"> break; \</span></div>
-<div class="line"><a name="l04841"></a><span class="lineno"> 4841</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04842"></a><span class="lineno"> 4842</span> <span class="preprocessor"> MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE_COMPUTE_ ##whichone \</span></div>
-<div class="line"><a name="l04843"></a><span class="lineno"> 4843</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04844"></a><span class="lineno"> 4844</span> <span class="preprocessor"> k++; \</span></div>
-<div class="line"><a name="l04845"></a><span class="lineno"> 4845</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l04846"></a><span class="lineno"> 4846</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l04847"></a><span class="lineno"> 4847</span> <span class="preprocessor"> } </span><span class="comment">/* omp parallel */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04848"></a><span class="lineno"> 4848</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l04849"></a><span class="lineno"> 4849</span> <span class="preprocessor"> } </span><span class="comment">/* if(NFFT_OMP_BLOCKWISE_ADJOINT) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l04850"></a><span class="lineno"> 4850</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l04851"></a><span class="lineno"> 4851</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04852"></a><span class="lineno"> 4852</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_adjoint_3d_B(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l04853"></a><span class="lineno"> 4853</span> {</div>
-<div class="line"><a name="l04854"></a><span class="lineno"> 4854</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l04855"></a><span class="lineno"> 4855</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N0 = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];</div>
-<div class="line"><a name="l04856"></a><span class="lineno"> 4856</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n0 = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0];</div>
-<div class="line"><a name="l04857"></a><span class="lineno"> 4857</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N1 = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];</div>
-<div class="line"><a name="l04858"></a><span class="lineno"> 4858</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n1 = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[1];</div>
-<div class="line"><a name="l04859"></a><span class="lineno"> 4859</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N2 = ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2];</div>
-<div class="line"><a name="l04860"></a><span class="lineno"> 4860</span> <span class="keyword">const</span> <span class="keywordtype">int</span> n2 = ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[2];</div>
-<div class="line"><a name="l04861"></a><span class="lineno"> 4861</span> <span class="keyword">const</span> <span class="keywordtype">int</span> M = ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l04862"></a><span class="lineno"> 4862</span> <span class="keyword">const</span> <span class="keywordtype">int</span> m = ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>;</div>
-<div class="line"><a name="l04863"></a><span class="lineno"> 4863</span> </div>
-<div class="line"><a name="l04864"></a><span class="lineno"> 4864</span> C* g = (C*) ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>;</div>
-<div class="line"><a name="l04865"></a><span class="lineno"> 4865</span> </div>
-<div class="line"><a name="l04866"></a><span class="lineno"> 4866</span> memset(g,0,ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l04867"></a><span class="lineno"> 4867</span> </div>
-<div class="line"><a name="l04868"></a><span class="lineno"> 4868</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l04869"></a><span class="lineno"> 4869</span> {</div>
-<div class="line"><a name="l04870"></a><span class="lineno"> 4870</span> nfft_adjoint_B_compute_full_psi(g, ths-><a class="code" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_g</a>, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>, ths-><a class="code" href= [...]
-<div class="line"><a name="l04871"></a><span class="lineno"> 4871</span> 3, ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>, m, ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a>, ths-><a cl [...]
-<div class="line"><a name="l04872"></a><span class="lineno"> 4872</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l04873"></a><span class="lineno"> 4873</span> } <span class="comment">/* if(PRE_FULL_PSI) */</span></div>
-<div class="line"><a name="l04874"></a><span class="lineno"> 4874</span> </div>
-<div class="line"><a name="l04875"></a><span class="lineno"> 4875</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l04876"></a><span class="lineno"> 4876</span> {</div>
-<div class="line"><a name="l04877"></a><span class="lineno"> 4877</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l04878"></a><span class="lineno"> 4878</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE(PRE_PSI)</div>
-<div class="line"><a name="l04879"></a><span class="lineno"> 4879</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04880"></a><span class="lineno"> 4880</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04881"></a><span class="lineno"> 4881</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l04882"></a><span class="lineno"> 4882</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l04883"></a><span class="lineno"> 4883</span> {</div>
-<div class="line"><a name="l04884"></a><span class="lineno"> 4884</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l04885"></a><span class="lineno"> 4885</span> #ifdef _OPENMP</div>
-<div class="line"><a name="l04886"></a><span class="lineno"> 4886</span> nfft_adjoint_3d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>+j*3*(2*m+2), ths->< [...]
-<div class="line"><a name="l04887"></a><span class="lineno"> 4887</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l04888"></a><span class="lineno"> 4888</span> <span class="preprocessor"></span> nfft_adjoint_3d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">p [...]
-<div class="line"><a name="l04889"></a><span class="lineno"> 4889</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04890"></a><span class="lineno"> 4890</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l04891"></a><span class="lineno"> 4891</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l04892"></a><span class="lineno"> 4892</span> } <span class="comment">/* if(PRE_PSI) */</span></div>
-<div class="line"><a name="l04893"></a><span class="lineno"> 4893</span> </div>
-<div class="line"><a name="l04894"></a><span class="lineno"> 4894</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l04895"></a><span class="lineno"> 4895</span> {</div>
-<div class="line"><a name="l04896"></a><span class="lineno"> 4896</span> R fg_exp_l[3*(2*m+2)];</div>
-<div class="line"><a name="l04897"></a><span class="lineno"> 4897</span> </div>
-<div class="line"><a name="l04898"></a><span class="lineno"> 4898</span> nfft_3d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l04899"></a><span class="lineno"> 4899</span> nfft_3d_init_fg_exp_l(fg_exp_l+2*m+2, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l04900"></a><span class="lineno"> 4900</span> nfft_3d_init_fg_exp_l(fg_exp_l+2*(2*m+2), m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[2]);</div>
-<div class="line"><a name="l04901"></a><span class="lineno"> 4901</span> </div>
-<div class="line"><a name="l04902"></a><span class="lineno"> 4902</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l04903"></a><span class="lineno"> 4903</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE(PRE_FG_PSI)</div>
-<div class="line"><a name="l04904"></a><span class="lineno"> 4904</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04905"></a><span class="lineno"> 4905</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04906"></a><span class="lineno"> 4906</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l04907"></a><span class="lineno"> 4907</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l04908"></a><span class="lineno"> 4908</span> {</div>
-<div class="line"><a name="l04909"></a><span class="lineno"> 4909</span> R psij_const[3*(2*m+2)];</div>
-<div class="line"><a name="l04910"></a><span class="lineno"> 4910</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l04911"></a><span class="lineno"> 4911</span> <span class="keywordtype">int</span> l;</div>
-<div class="line"><a name="l04912"></a><span class="lineno"> 4912</span> R fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*j*3];</div>
-<div class="line"><a name="l04913"></a><span class="lineno"> 4913</span> R fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*j*3+1];</div>
-<div class="line"><a name="l04914"></a><span class="lineno"> 4914</span> R fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04915"></a><span class="lineno"> 4915</span> </div>
-<div class="line"><a name="l04916"></a><span class="lineno"> 4916</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l04917"></a><span class="lineno"> 4917</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04918"></a><span class="lineno"> 4918</span> {</div>
-<div class="line"><a name="l04919"></a><span class="lineno"> 4919</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04920"></a><span class="lineno"> 4920</span> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l];</div>
-<div class="line"><a name="l04921"></a><span class="lineno"> 4921</span> }</div>
-<div class="line"><a name="l04922"></a><span class="lineno"> 4922</span> </div>
-<div class="line"><a name="l04923"></a><span class="lineno"> 4923</span> fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*3+1)];</div>
-<div class="line"><a name="l04924"></a><span class="lineno"> 4924</span> fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*3+1)+1];</div>
-<div class="line"><a name="l04925"></a><span class="lineno"> 4925</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04926"></a><span class="lineno"> 4926</span> psij_const[2*m+2] = fg_psij0;</div>
-<div class="line"><a name="l04927"></a><span class="lineno"> 4927</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04928"></a><span class="lineno"> 4928</span> {</div>
-<div class="line"><a name="l04929"></a><span class="lineno"> 4929</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04930"></a><span class="lineno"> 4930</span> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l];</div>
-<div class="line"><a name="l04931"></a><span class="lineno"> 4931</span> }</div>
-<div class="line"><a name="l04932"></a><span class="lineno"> 4932</span> </div>
-<div class="line"><a name="l04933"></a><span class="lineno"> 4933</span> fg_psij0 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*3+2)];</div>
-<div class="line"><a name="l04934"></a><span class="lineno"> 4934</span> fg_psij1 = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*3+2)+1];</div>
-<div class="line"><a name="l04935"></a><span class="lineno"> 4935</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04936"></a><span class="lineno"> 4936</span> psij_const[2*(2*m+2)] = fg_psij0;</div>
-<div class="line"><a name="l04937"></a><span class="lineno"> 4937</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04938"></a><span class="lineno"> 4938</span> {</div>
-<div class="line"><a name="l04939"></a><span class="lineno"> 4939</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04940"></a><span class="lineno"> 4940</span> psij_const[2*(2*m+2)+l] = fg_psij0*fg_psij2*fg_exp_l[2*(2*m+2)+l];</div>
-<div class="line"><a name="l04941"></a><span class="lineno"> 4941</span> }</div>
-<div class="line"><a name="l04942"></a><span class="lineno"> 4942</span> </div>
-<div class="line"><a name="l04943"></a><span class="lineno"> 4943</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l04944"></a><span class="lineno"> 4944</span> <span class="preprocessor"></span> nfft_adjoint_3d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial dom [...]
-<div class="line"><a name="l04945"></a><span class="lineno"> 4945</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l04946"></a><span class="lineno"> 4946</span> <span class="preprocessor"></span> nfft_adjoint_3d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, [...]
-<div class="line"><a name="l04947"></a><span class="lineno"> 4947</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04948"></a><span class="lineno"> 4948</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l04949"></a><span class="lineno"> 4949</span> </div>
-<div class="line"><a name="l04950"></a><span class="lineno"> 4950</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l04951"></a><span class="lineno"> 4951</span> } <span class="comment">/* if(PRE_FG_PSI) */</span></div>
-<div class="line"><a name="l04952"></a><span class="lineno"> 4952</span> </div>
-<div class="line"><a name="l04953"></a><span class="lineno"> 4953</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FG_PSI)</div>
-<div class="line"><a name="l04954"></a><span class="lineno"> 4954</span> {</div>
-<div class="line"><a name="l04955"></a><span class="lineno"> 4955</span> R fg_exp_l[3*(2*m+2)];</div>
-<div class="line"><a name="l04956"></a><span class="lineno"> 4956</span> </div>
-<div class="line"><a name="l04957"></a><span class="lineno"> 4957</span> nfft_3d_init_fg_exp_l(fg_exp_l, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l04958"></a><span class="lineno"> 4958</span> nfft_3d_init_fg_exp_l(fg_exp_l+2*m+2, m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l04959"></a><span class="lineno"> 4959</span> nfft_3d_init_fg_exp_l(fg_exp_l+2*(2*m+2), m, ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[2]);</div>
-<div class="line"><a name="l04960"></a><span class="lineno"> 4960</span> </div>
-<div class="line"><a name="l04961"></a><span class="lineno"> 4961</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l04962"></a><span class="lineno"> 4962</span> </div>
-<div class="line"><a name="l04963"></a><span class="lineno"> 4963</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l04964"></a><span class="lineno"> 4964</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE(FG_PSI)</div>
-<div class="line"><a name="l04965"></a><span class="lineno"> 4965</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l04966"></a><span class="lineno"> 4966</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l04967"></a><span class="lineno"> 4967</span> <span class="preprocessor"> #pragma openmp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l04968"></a><span class="lineno"> 4968</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l04969"></a><span class="lineno"> 4969</span> {</div>
-<div class="line"><a name="l04970"></a><span class="lineno"> 4970</span> <span class="keywordtype">int</span> u,o,l;</div>
-<div class="line"><a name="l04971"></a><span class="lineno"> 4971</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l04972"></a><span class="lineno"> 4972</span> R psij_const[3*(2*m+2)];</div>
-<div class="line"><a name="l04973"></a><span class="lineno"> 4973</span> R fg_psij0, fg_psij1, fg_psij2;</div>
-<div class="line"><a name="l04974"></a><span class="lineno"> 4974</span> </div>
-<div class="line"><a name="l04975"></a><span class="lineno"> 4975</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l04976"></a><span class="lineno"> 4976</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j]-((R)u)/n0,0));</div>
-<div class="line"><a name="l04977"></a><span class="lineno"> 4977</span> fg_psij1 = EXP(K(2.0)*(n0*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j]) - u)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[0]);</div>
-<div class="line"><a name="l04978"></a><span class="lineno"> 4978</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04979"></a><span class="lineno"> 4979</span> psij_const[0] = fg_psij0;</div>
-<div class="line"><a name="l04980"></a><span class="lineno"> 4980</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04981"></a><span class="lineno"> 4981</span> {</div>
-<div class="line"><a name="l04982"></a><span class="lineno"> 4982</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04983"></a><span class="lineno"> 4983</span> psij_const[l] = fg_psij0*fg_psij2*fg_exp_l[l];</div>
-<div class="line"><a name="l04984"></a><span class="lineno"> 4984</span> }</div>
-<div class="line"><a name="l04985"></a><span class="lineno"> 4985</span> </div>
-<div class="line"><a name="l04986"></a><span class="lineno"> 4986</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l04987"></a><span class="lineno"> 4987</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]-((R)u)/n1,1));</div>
-<div class="line"><a name="l04988"></a><span class="lineno"> 4988</span> fg_psij1 = EXP(K(2.0)*(n1*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]) - u)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[1]);</div>
-<div class="line"><a name="l04989"></a><span class="lineno"> 4989</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l04990"></a><span class="lineno"> 4990</span> psij_const[2*m+2] = fg_psij0;</div>
-<div class="line"><a name="l04991"></a><span class="lineno"> 4991</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l04992"></a><span class="lineno"> 4992</span> {</div>
-<div class="line"><a name="l04993"></a><span class="lineno"> 4993</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l04994"></a><span class="lineno"> 4994</span> psij_const[2*m+2+l] = fg_psij0*fg_psij2*fg_exp_l[2*m+2+l];</div>
-<div class="line"><a name="l04995"></a><span class="lineno"> 4995</span> }</div>
-<div class="line"><a name="l04996"></a><span class="lineno"> 4996</span> </div>
-<div class="line"><a name="l04997"></a><span class="lineno"> 4997</span> nfft_uo(ths,j,&u,&o,2);</div>
-<div class="line"><a name="l04998"></a><span class="lineno"> 4998</span> fg_psij0 = (PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]-((R)u)/n2,2));</div>
-<div class="line"><a name="l04999"></a><span class="lineno"> 4999</span> fg_psij1 = EXP(K(2.0)*(n2*(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]) - u)/ths-><a class="code" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a" title="Shape parameter of the window function.">b</a>[2]);</div>
-<div class="line"><a name="l05000"></a><span class="lineno"> 5000</span> fg_psij2 = K(1.0);</div>
-<div class="line"><a name="l05001"></a><span class="lineno"> 5001</span> psij_const[2*(2*m+2)] = fg_psij0;</div>
-<div class="line"><a name="l05002"></a><span class="lineno"> 5002</span> <span class="keywordflow">for</span>(l=1; l<=2*m+1; l++)</div>
-<div class="line"><a name="l05003"></a><span class="lineno"> 5003</span> {</div>
-<div class="line"><a name="l05004"></a><span class="lineno"> 5004</span> fg_psij2 *= fg_psij1;</div>
-<div class="line"><a name="l05005"></a><span class="lineno"> 5005</span> psij_const[2*(2*m+2)+l] = fg_psij0*fg_psij2*fg_exp_l[2*(2*m+2)+l];</div>
-<div class="line"><a name="l05006"></a><span class="lineno"> 5006</span> }</div>
-<div class="line"><a name="l05007"></a><span class="lineno"> 5007</span> </div>
-<div class="line"><a name="l05008"></a><span class="lineno"> 5008</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05009"></a><span class="lineno"> 5009</span> <span class="preprocessor"></span> nfft_adjoint_3d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial dom [...]
-<div class="line"><a name="l05010"></a><span class="lineno"> 5010</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l05011"></a><span class="lineno"> 5011</span> <span class="preprocessor"></span> nfft_adjoint_3d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, [...]
-<div class="line"><a name="l05012"></a><span class="lineno"> 5012</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05013"></a><span class="lineno"> 5013</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l05014"></a><span class="lineno"> 5014</span> </div>
-<div class="line"><a name="l05015"></a><span class="lineno"> 5015</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l05016"></a><span class="lineno"> 5016</span> } <span class="comment">/* if(FG_PSI) */</span></div>
-<div class="line"><a name="l05017"></a><span class="lineno"> 5017</span> </div>
-<div class="line"><a name="l05018"></a><span class="lineno"> 5018</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l05019"></a><span class="lineno"> 5019</span> {</div>
-<div class="line"><a name="l05020"></a><span class="lineno"> 5020</span> <span class="keyword">const</span> <span class="keywordtype">int</span> K = ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>;</div>
-<div class="line"><a name="l05021"></a><span class="lineno"> 5021</span> <span class="keyword">const</span> <span class="keywordtype">int</span> ip_s = K / (m + 2);</div>
-<div class="line"><a name="l05022"></a><span class="lineno"> 5022</span> </div>
-<div class="line"><a name="l05023"></a><span class="lineno"> 5023</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l05024"></a><span class="lineno"> 5024</span> </div>
-<div class="line"><a name="l05025"></a><span class="lineno"> 5025</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05026"></a><span class="lineno"> 5026</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE(PRE_LIN_PSI)</div>
-<div class="line"><a name="l05027"></a><span class="lineno"> 5027</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05028"></a><span class="lineno"> 5028</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l05029"></a><span class="lineno"> 5029</span> <span class="preprocessor"> #pragma openmp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l05030"></a><span class="lineno"> 5030</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l05031"></a><span class="lineno"> 5031</span> {</div>
-<div class="line"><a name="l05032"></a><span class="lineno"> 5032</span> <span class="keywordtype">int</span> u,o,l;</div>
-<div class="line"><a name="l05033"></a><span class="lineno"> 5033</span> <span class="keywordtype">int</span> ip_u;</div>
-<div class="line"><a name="l05034"></a><span class="lineno"> 5034</span> R ip_y, ip_w;</div>
-<div class="line"><a name="l05035"></a><span class="lineno"> 5035</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used whe [...]
-<div class="line"><a name="l05036"></a><span class="lineno"> 5036</span> R psij_const[3*(2*m+2)];</div>
-<div class="line"><a name="l05037"></a><span class="lineno"> 5037</span> </div>
-<div class="line"><a name="l05038"></a><span class="lineno"> 5038</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l05039"></a><span class="lineno"> 5039</span> ip_y = FABS(n0*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0] - u)*((R)ip_s);</div>
-<div class="line"><a name="l05040"></a><span class="lineno"> 5040</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l05041"></a><span class="lineno"> 5041</span> ip_w = ip_y-ip_u;</div>
-<div class="line"><a name="l05042"></a><span class="lineno"> 5042</span> <span class="keywordflow">for</span>(l=0; l < 2*m+2; l++)</div>
-<div class="line"><a name="l05043"></a><span class="lineno"> 5043</span> psij_const[l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) +</div>
-<div class="line"><a name="l05044"></a><span class="lineno"> 5044</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ABS(ip_u-l*ip_s+1)]*(ip_w);</div>
-<div class="line"><a name="l05045"></a><span class="lineno"> 5045</span> </div>
-<div class="line"><a name="l05046"></a><span class="lineno"> 5046</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l05047"></a><span class="lineno"> 5047</span> ip_y = FABS(n1*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1] - u)*((R)ip_s);</div>
-<div class="line"><a name="l05048"></a><span class="lineno"> 5048</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l05049"></a><span class="lineno"> 5049</span> ip_w = ip_y-ip_u;</div>
-<div class="line"><a name="l05050"></a><span class="lineno"> 5050</span> <span class="keywordflow">for</span>(l=0; l < 2*m+2; l++)</div>
-<div class="line"><a name="l05051"></a><span class="lineno"> 5051</span> psij_const[2*m+2+l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(K+1)+ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) +</div>
-<div class="line"><a name="l05052"></a><span class="lineno"> 5052</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(K+1)+ABS(ip_u-l*ip_s+1)]*(ip_w);</div>
-<div class="line"><a name="l05053"></a><span class="lineno"> 5053</span> </div>
-<div class="line"><a name="l05054"></a><span class="lineno"> 5054</span> nfft_uo(ths,j,&u,&o,2);</div>
-<div class="line"><a name="l05055"></a><span class="lineno"> 5055</span> ip_y = FABS(n2*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2] - u)*((R)ip_s);</div>
-<div class="line"><a name="l05056"></a><span class="lineno"> 5056</span> ip_u = LRINT(FLOOR(ip_y));</div>
-<div class="line"><a name="l05057"></a><span class="lineno"> 5057</span> ip_w = ip_y-ip_u;</div>
-<div class="line"><a name="l05058"></a><span class="lineno"> 5058</span> <span class="keywordflow">for</span>(l=0; l < 2*m+2; l++)</div>
-<div class="line"><a name="l05059"></a><span class="lineno"> 5059</span> psij_const[2*(2*m+2)+l] = ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(K+1)+ABS(ip_u-l*ip_s)]*(K(1.0)-ip_w) +</div>
-<div class="line"><a name="l05060"></a><span class="lineno"> 5060</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(K+1)+ABS(ip_u-l*ip_s+1)]*(ip_w);</div>
-<div class="line"><a name="l05061"></a><span class="lineno"> 5061</span> </div>
-<div class="line"><a name="l05062"></a><span class="lineno"> 5062</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05063"></a><span class="lineno"> 5063</span> <span class="preprocessor"></span> nfft_adjoint_3d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial dom [...]
-<div class="line"><a name="l05064"></a><span class="lineno"> 5064</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l05065"></a><span class="lineno"> 5065</span> <span class="preprocessor"></span> nfft_adjoint_3d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, [...]
-<div class="line"><a name="l05066"></a><span class="lineno"> 5066</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05067"></a><span class="lineno"> 5067</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l05068"></a><span class="lineno"> 5068</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l05069"></a><span class="lineno"> 5069</span> } <span class="comment">/* if(PRE_LIN_PSI) */</span></div>
-<div class="line"><a name="l05070"></a><span class="lineno"> 5070</span> </div>
-<div class="line"><a name="l05071"></a><span class="lineno"> 5071</span> <span class="comment">/* no precomputed psi at all */</span></div>
-<div class="line"><a name="l05072"></a><span class="lineno"> 5072</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l05073"></a><span class="lineno"> 5073</span> </div>
-<div class="line"><a name="l05074"></a><span class="lineno"> 5074</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05075"></a><span class="lineno"> 5075</span> <span class="preprocessor"></span> MACRO_nfft_adjoint_3d_B_OMP_BLOCKWISE(NO_PSI)</div>
-<div class="line"><a name="l05076"></a><span class="lineno"> 5076</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05077"></a><span class="lineno"> 5077</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l05078"></a><span class="lineno"> 5078</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k)</span></div>
-<div class="line"><a name="l05079"></a><span class="lineno"> 5079</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l05080"></a><span class="lineno"> 5080</span> {</div>
-<div class="line"><a name="l05081"></a><span class="lineno"> 5081</span> <span class="keywordtype">int</span> u,o,l;</div>
-<div class="line"><a name="l05082"></a><span class="lineno"> 5082</span> R psij_const[3*(2*m+2)];</div>
-<div class="line"><a name="l05083"></a><span class="lineno"> 5083</span> <span class="keywordtype">int</span> j = (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES) ? ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used when [...]
-<div class="line"><a name="l05084"></a><span class="lineno"> 5084</span> </div>
-<div class="line"><a name="l05085"></a><span class="lineno"> 5085</span> nfft_uo(ths,j,&u,&o,0);</div>
-<div class="line"><a name="l05086"></a><span class="lineno"> 5086</span> <span class="keywordflow">for</span>(l=0;l<=2*m+1;l++)</div>
-<div class="line"><a name="l05087"></a><span class="lineno"> 5087</span> psij_const[l]=(PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j]-((R)((u+l)))/n0,0));</div>
-<div class="line"><a name="l05088"></a><span class="lineno"> 5088</span> </div>
-<div class="line"><a name="l05089"></a><span class="lineno"> 5089</span> nfft_uo(ths,j,&u,&o,1);</div>
-<div class="line"><a name="l05090"></a><span class="lineno"> 5090</span> <span class="keywordflow">for</span>(l=0;l<=2*m+1;l++)</div>
-<div class="line"><a name="l05091"></a><span class="lineno"> 5091</span> psij_const[2*m+2+l]=(PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]-((R)((u+l)))/n1,1));</div>
-<div class="line"><a name="l05092"></a><span class="lineno"> 5092</span> </div>
-<div class="line"><a name="l05093"></a><span class="lineno"> 5093</span> nfft_uo(ths,j,&u,&o,2);</div>
-<div class="line"><a name="l05094"></a><span class="lineno"> 5094</span> <span class="keywordflow">for</span>(l=0;l<=2*m+1;l++)</div>
-<div class="line"><a name="l05095"></a><span class="lineno"> 5095</span> psij_const[2*(2*m+2)+l]=(PHI(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]-((R)((u+l)))/n2,2));</div>
-<div class="line"><a name="l05096"></a><span class="lineno"> 5096</span> </div>
-<div class="line"><a name="l05097"></a><span class="lineno"> 5097</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05098"></a><span class="lineno"> 5098</span> <span class="preprocessor"></span> nfft_adjoint_3d_compute_omp_atomic(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j], g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domai [...]
-<div class="line"><a name="l05099"></a><span class="lineno"> 5099</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l05100"></a><span class="lineno"> 5100</span> <span class="preprocessor"></span> nfft_adjoint_3d_compute_serial(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>+j, g, psij_const, psij_const+2*m+2, psij_const+(2*m+2)*2, ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, si [...]
-<div class="line"><a name="l05101"></a><span class="lineno"> 5101</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05102"></a><span class="lineno"> 5102</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l05103"></a><span class="lineno"> 5103</span> }</div>
-<div class="line"><a name="l05104"></a><span class="lineno"> 5104</span> </div>
-<div class="line"><a name="l05105"></a><span class="lineno"> 5105</span> </div>
-<div class="line"><a name="l05106"></a><span class="lineno"> 5106</span> <span class="keywordtype">void</span> nfft_trafo_3d(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05107"></a><span class="lineno"> 5107</span> {</div>
-<div class="line"><a name="l05108"></a><span class="lineno"> 5108</span> <span class="keywordtype">int</span> k0,k1,k2,n0,n1,n2,N0,N1,N2;</div>
-<div class="line"><a name="l05109"></a><span class="lineno"> 5109</span> C *g_hat,*f_hat;</div>
-<div class="line"><a name="l05110"></a><span class="lineno"> 5110</span> R *c_phi_inv01, *c_phi_inv02, *c_phi_inv11, *c_phi_inv12, *c_phi_inv21, *c_phi_inv22;</div>
-<div class="line"><a name="l05111"></a><span class="lineno"> 5111</span> R ck01, ck02, ck11, ck12, ck21, ck22;</div>
-<div class="line"><a name="l05112"></a><span class="lineno"> 5112</span> C *g_hat111,*f_hat111,*g_hat211,*f_hat211,*g_hat121,*f_hat121,*g_hat221,*f_hat221;</div>
-<div class="line"><a name="l05113"></a><span class="lineno"> 5113</span> C *g_hat112,*f_hat112,*g_hat212,*f_hat212,*g_hat122,*f_hat122,*g_hat222,*f_hat222;</div>
-<div class="line"><a name="l05114"></a><span class="lineno"> 5114</span> </div>
-<div class="line"><a name="l05115"></a><span class="lineno"> 5115</span> ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>=ths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>;</div>
-<div class="line"><a name="l05116"></a><span class="lineno"> 5116</span> ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>=ths-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>;</div>
-<div class="line"><a name="l05117"></a><span class="lineno"> 5117</span> </div>
-<div class="line"><a name="l05118"></a><span class="lineno"> 5118</span> N0=ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];</div>
-<div class="line"><a name="l05119"></a><span class="lineno"> 5119</span> N1=ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];</div>
-<div class="line"><a name="l05120"></a><span class="lineno"> 5120</span> N2=ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2];</div>
-<div class="line"><a name="l05121"></a><span class="lineno"> 5121</span> n0=ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0];</div>
-<div class="line"><a name="l05122"></a><span class="lineno"> 5122</span> n1=ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[1];</div>
-<div class="line"><a name="l05123"></a><span class="lineno"> 5123</span> n2=ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[2];</div>
-<div class="line"><a name="l05124"></a><span class="lineno"> 5124</span> </div>
-<div class="line"><a name="l05125"></a><span class="lineno"> 5125</span> f_hat=(C*)ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l05126"></a><span class="lineno"> 5126</span> g_hat=(C*)ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>;</div>
-<div class="line"><a name="l05127"></a><span class="lineno"> 5127</span> </div>
-<div class="line"><a name="l05128"></a><span class="lineno"> 5128</span> TIC(0)</div>
-<div class="line"><a name="l05129"></a><span class="lineno"> 5129</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05130"></a><span class="lineno"> 5130</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel for default(shared) private(k0)</span></div>
-<div class="line"><a name="l05131"></a><span class="lineno"> 5131</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k0 = 0; k0 < ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>; k0++)</div>
-<div class="line"><a name="l05132"></a><span class="lineno"> 5132</span> ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>[k0] = 0.0;</div>
-<div class="line"><a name="l05133"></a><span class="lineno"> 5133</span> #<span class="keywordflow">else</span></div>
-<div class="line"><a name="l05134"></a><span class="lineno"> 5134</span> memset(ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>,0,ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l05135"></a><span class="lineno"> 5135</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05136"></a><span class="lineno"> 5136</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l05137"></a><span class="lineno"> 5137</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l05138"></a><span class="lineno"> 5138</span> {</div>
-<div class="line"><a name="l05139"></a><span class="lineno"> 5139</span> c_phi_inv01=ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[0];</div>
-<div class="line"><a name="l05140"></a><span class="lineno"> 5140</span> c_phi_inv02=&ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[0][N0/2];</div>
-<div class="line"><a name="l05141"></a><span class="lineno"> 5141</span> </div>
-<div class="line"><a name="l05142"></a><span class="lineno"> 5142</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k0,k1,k2,ck01,ck02,c_phi_inv11,c_phi_inv12,ck11,ck12,c_phi_inv21,c_phi_inv22,g_hat111,f_hat111,g_hat211,f_hat211,g_hat121,f_hat121,g_hat221,f_hat221,g_hat112,f_hat112,g_hat212,f_hat212,g_hat122,f_hat122,g_hat222,f_hat222,ck21,ck22)</span></div>
-<div class="line"><a name="l05143"></a><span class="lineno"> 5143</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(k0=0;k0<N0/2;k0++)</div>
-<div class="line"><a name="l05144"></a><span class="lineno"> 5144</span> {</div>
-<div class="line"><a name="l05145"></a><span class="lineno"> 5145</span> ck01=c_phi_inv01[k0];</div>
-<div class="line"><a name="l05146"></a><span class="lineno"> 5146</span> ck02=c_phi_inv02[k0];</div>
-<div class="line"><a name="l05147"></a><span class="lineno"> 5147</span> c_phi_inv11=ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[1];</div>
-<div class="line"><a name="l05148"></a><span class="lineno"> 5148</span> c_phi_inv12=&ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[1][N1/2];</div>
-<div class="line"><a name="l05149"></a><span class="lineno"> 5149</span> </div>
-<div class="line"><a name="l05150"></a><span class="lineno"> 5150</span> <span class="keywordflow">for</span>(k1=0;k1<N1/2;k1++)</div>
-<div class="line"><a name="l05151"></a><span class="lineno"> 5151</span> {</div>
-<div class="line"><a name="l05152"></a><span class="lineno"> 5152</span> ck11=c_phi_inv11[k1];</div>
-<div class="line"><a name="l05153"></a><span class="lineno"> 5153</span> ck12=c_phi_inv12[k1];</div>
-<div class="line"><a name="l05154"></a><span class="lineno"> 5154</span> c_phi_inv21=ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[2];</div>
-<div class="line"><a name="l05155"></a><span class="lineno"> 5155</span> c_phi_inv22=&ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[2][N2/2];</div>
-<div class="line"><a name="l05156"></a><span class="lineno"> 5156</span> </div>
-<div class="line"><a name="l05157"></a><span class="lineno"> 5157</span> g_hat111=g_hat + ((n0-(N0/2)+k0)*n1+n1-(N1/2)+k1)*n2+n2-(N2/2);</div>
-<div class="line"><a name="l05158"></a><span class="lineno"> 5158</span> f_hat111=f_hat + (k0*N1+k1)*N2;</div>
-<div class="line"><a name="l05159"></a><span class="lineno"> 5159</span> g_hat211=g_hat + (k0*n1+n1-(N1/2)+k1)*n2+n2-(N2/2);</div>
-<div class="line"><a name="l05160"></a><span class="lineno"> 5160</span> f_hat211=f_hat + (((N0/2)+k0)*N1+k1)*N2;</div>
-<div class="line"><a name="l05161"></a><span class="lineno"> 5161</span> g_hat121=g_hat + ((n0-(N0/2)+k0)*n1+k1)*n2+n2-(N2/2);</div>
-<div class="line"><a name="l05162"></a><span class="lineno"> 5162</span> f_hat121=f_hat + (k0*N1+(N1/2)+k1)*N2;</div>
-<div class="line"><a name="l05163"></a><span class="lineno"> 5163</span> g_hat221=g_hat + (k0*n1+k1)*n2+n2-(N2/2);</div>
-<div class="line"><a name="l05164"></a><span class="lineno"> 5164</span> f_hat221=f_hat + (((N0/2)+k0)*N1+(N1/2)+k1)*N2;</div>
-<div class="line"><a name="l05165"></a><span class="lineno"> 5165</span> </div>
-<div class="line"><a name="l05166"></a><span class="lineno"> 5166</span> g_hat112=g_hat + ((n0-(N0/2)+k0)*n1+n1-(N1/2)+k1)*n2;</div>
-<div class="line"><a name="l05167"></a><span class="lineno"> 5167</span> f_hat112=f_hat + (k0*N1+k1)*N2+(N2/2);</div>
-<div class="line"><a name="l05168"></a><span class="lineno"> 5168</span> g_hat212=g_hat + (k0*n1+n1-(N1/2)+k1)*n2;</div>
-<div class="line"><a name="l05169"></a><span class="lineno"> 5169</span> f_hat212=f_hat + (((N0/2)+k0)*N1+k1)*N2+(N2/2);</div>
-<div class="line"><a name="l05170"></a><span class="lineno"> 5170</span> g_hat122=g_hat + ((n0-(N0/2)+k0)*n1+k1)*n2;</div>
-<div class="line"><a name="l05171"></a><span class="lineno"> 5171</span> f_hat122=f_hat + (k0*N1+N1/2+k1)*N2+(N2/2);</div>
-<div class="line"><a name="l05172"></a><span class="lineno"> 5172</span> g_hat222=g_hat + (k0*n1+k1)*n2;</div>
-<div class="line"><a name="l05173"></a><span class="lineno"> 5173</span> f_hat222=f_hat + (((N0/2)+k0)*N1+(N1/2)+k1)*N2+(N2/2);</div>
-<div class="line"><a name="l05174"></a><span class="lineno"> 5174</span> </div>
-<div class="line"><a name="l05175"></a><span class="lineno"> 5175</span> <span class="keywordflow">for</span>(k2=0;k2<N2/2;k2++)</div>
-<div class="line"><a name="l05176"></a><span class="lineno"> 5176</span> {</div>
-<div class="line"><a name="l05177"></a><span class="lineno"> 5177</span> ck21=c_phi_inv21[k2];</div>
-<div class="line"><a name="l05178"></a><span class="lineno"> 5178</span> ck22=c_phi_inv22[k2];</div>
-<div class="line"><a name="l05179"></a><span class="lineno"> 5179</span> </div>
-<div class="line"><a name="l05180"></a><span class="lineno"> 5180</span> g_hat111[k2] = f_hat111[k2] * ck01 * ck11 * ck21;</div>
-<div class="line"><a name="l05181"></a><span class="lineno"> 5181</span> g_hat211[k2] = f_hat211[k2] * ck02 * ck11 * ck21;</div>
-<div class="line"><a name="l05182"></a><span class="lineno"> 5182</span> g_hat121[k2] = f_hat121[k2] * ck01 * ck12 * ck21;</div>
-<div class="line"><a name="l05183"></a><span class="lineno"> 5183</span> g_hat221[k2] = f_hat221[k2] * ck02 * ck12 * ck21;</div>
-<div class="line"><a name="l05184"></a><span class="lineno"> 5184</span> </div>
-<div class="line"><a name="l05185"></a><span class="lineno"> 5185</span> g_hat112[k2] = f_hat112[k2] * ck01 * ck11 * ck22;</div>
-<div class="line"><a name="l05186"></a><span class="lineno"> 5186</span> g_hat212[k2] = f_hat212[k2] * ck02 * ck11 * ck22;</div>
-<div class="line"><a name="l05187"></a><span class="lineno"> 5187</span> g_hat122[k2] = f_hat122[k2] * ck01 * ck12 * ck22;</div>
-<div class="line"><a name="l05188"></a><span class="lineno"> 5188</span> g_hat222[k2] = f_hat222[k2] * ck02 * ck12 * ck22;</div>
-<div class="line"><a name="l05189"></a><span class="lineno"> 5189</span> }</div>
-<div class="line"><a name="l05190"></a><span class="lineno"> 5190</span> }</div>
-<div class="line"><a name="l05191"></a><span class="lineno"> 5191</span> }</div>
-<div class="line"><a name="l05192"></a><span class="lineno"> 5192</span> }</div>
-<div class="line"><a name="l05193"></a><span class="lineno"> 5193</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l05194"></a><span class="lineno"> 5194</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k0,k1,k2,ck01,ck02,ck11,ck12,ck21,ck22)</span></div>
-<div class="line"><a name="l05195"></a><span class="lineno"> 5195</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(k0=0;k0<N0/2;k0++)</div>
-<div class="line"><a name="l05196"></a><span class="lineno"> 5196</span> {</div>
-<div class="line"><a name="l05197"></a><span class="lineno"> 5197</span> ck01=K(1.0)/(PHI_HUT(k0-N0/2,0));</div>
-<div class="line"><a name="l05198"></a><span class="lineno"> 5198</span> ck02=K(1.0)/(PHI_HUT(k0,0));</div>
-<div class="line"><a name="l05199"></a><span class="lineno"> 5199</span> <span class="keywordflow">for</span>(k1=0;k1<N1/2;k1++)</div>
-<div class="line"><a name="l05200"></a><span class="lineno"> 5200</span> {</div>
-<div class="line"><a name="l05201"></a><span class="lineno"> 5201</span> ck11=K(1.0)/(PHI_HUT(k1-N1/2,1));</div>
-<div class="line"><a name="l05202"></a><span class="lineno"> 5202</span> ck12=K(1.0)/(PHI_HUT(k1,1));</div>
-<div class="line"><a name="l05203"></a><span class="lineno"> 5203</span> </div>
-<div class="line"><a name="l05204"></a><span class="lineno"> 5204</span> <span class="keywordflow">for</span>(k2=0;k2<N2/2;k2++)</div>
-<div class="line"><a name="l05205"></a><span class="lineno"> 5205</span> {</div>
-<div class="line"><a name="l05206"></a><span class="lineno"> 5206</span> ck21=K(1.0)/(PHI_HUT(k2-N2/2,2));</div>
-<div class="line"><a name="l05207"></a><span class="lineno"> 5207</span> ck22=K(1.0)/(PHI_HUT(k2,2));</div>
-<div class="line"><a name="l05208"></a><span class="lineno"> 5208</span> </div>
-<div class="line"><a name="l05209"></a><span class="lineno"> 5209</span> g_hat[((n0-N0/2+k0)*n1+n1-N1/2+k1)*n2+n2-N2/2+k2] = f_hat[(k0*N1+k1)*N2+k2] * ck01 * ck11 * ck21;</div>
-<div class="line"><a name="l05210"></a><span class="lineno"> 5210</span> g_hat[(k0*n1+n1-N1/2+k1)*n2+n2-N2/2+k2] = f_hat[((N0/2+k0)*N1+k1)*N2+k2] * ck02 * ck11 * ck21;</div>
-<div class="line"><a name="l05211"></a><span class="lineno"> 5211</span> g_hat[((n0-N0/2+k0)*n1+k1)*n2+n2-N2/2+k2] = f_hat[(k0*N1+N1/2+k1)*N2+k2] * ck01 * ck12 * ck21;</div>
-<div class="line"><a name="l05212"></a><span class="lineno"> 5212</span> g_hat[(k0*n1+k1)*n2+n2-N2/2+k2] = f_hat[((N0/2+k0)*N1+N1/2+k1)*N2+k2] * ck02 * ck12 * ck21;</div>
-<div class="line"><a name="l05213"></a><span class="lineno"> 5213</span> </div>
-<div class="line"><a name="l05214"></a><span class="lineno"> 5214</span> g_hat[((n0-N0/2+k0)*n1+n1-N1/2+k1)*n2+k2] = f_hat[(k0*N1+k1)*N2+N2/2+k2] * ck01 * ck11 * ck22;</div>
-<div class="line"><a name="l05215"></a><span class="lineno"> 5215</span> g_hat[(k0*n1+n1-N1/2+k1)*n2+k2] = f_hat[((N0/2+k0)*N1+k1)*N2+N2/2+k2] * ck02 * ck11 * ck22;</div>
-<div class="line"><a name="l05216"></a><span class="lineno"> 5216</span> g_hat[((n0-N0/2+k0)*n1+k1)*n2+k2] = f_hat[(k0*N1+N1/2+k1)*N2+N2/2+k2] * ck01 * ck12 * ck22;</div>
-<div class="line"><a name="l05217"></a><span class="lineno"> 5217</span> g_hat[(k0*n1+k1)*n2+k2] = f_hat[((N0/2+k0)*N1+N1/2+k1)*N2+N2/2+k2] * ck02 * ck12 * ck22;</div>
-<div class="line"><a name="l05218"></a><span class="lineno"> 5218</span> }</div>
-<div class="line"><a name="l05219"></a><span class="lineno"> 5219</span> }</div>
-<div class="line"><a name="l05220"></a><span class="lineno"> 5220</span> }</div>
-<div class="line"><a name="l05221"></a><span class="lineno"> 5221</span> </div>
-<div class="line"><a name="l05222"></a><span class="lineno"> 5222</span> TOC(0)</div>
-<div class="line"><a name="l05223"></a><span class="lineno"> 5223</span> </div>
-<div class="line"><a name="l05224"></a><span class="lineno"> 5224</span> TIC_FFTW(1)</div>
-<div class="line"><a name="l05225"></a><span class="lineno"> 5225</span> fftw_execute(ths->my_fftw_plan1);</div>
-<div class="line"><a name="l05226"></a><span class="lineno"> 5226</span> TOC_FFTW(1);</div>
-<div class="line"><a name="l05227"></a><span class="lineno"> 5227</span> </div>
-<div class="line"><a name="l05228"></a><span class="lineno"> 5228</span> TIC(2);</div>
-<div class="line"><a name="l05229"></a><span class="lineno"> 5229</span> nfft_trafo_3d_B(ths);</div>
-<div class="line"><a name="l05230"></a><span class="lineno"> 5230</span> TOC(2);</div>
-<div class="line"><a name="l05231"></a><span class="lineno"> 5231</span> }</div>
-<div class="line"><a name="l05232"></a><span class="lineno"> 5232</span> </div>
-<div class="line"><a name="l05233"></a><span class="lineno"> 5233</span> <span class="keywordtype">void</span> nfft_adjoint_3d(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05234"></a><span class="lineno"> 5234</span> {</div>
-<div class="line"><a name="l05235"></a><span class="lineno"> 5235</span> <span class="keywordtype">int</span> k0,k1,k2,n0,n1,n2,N0,N1,N2;</div>
-<div class="line"><a name="l05236"></a><span class="lineno"> 5236</span> C *g_hat,*f_hat;</div>
-<div class="line"><a name="l05237"></a><span class="lineno"> 5237</span> R *c_phi_inv01, *c_phi_inv02, *c_phi_inv11, *c_phi_inv12, *c_phi_inv21, *c_phi_inv22;</div>
-<div class="line"><a name="l05238"></a><span class="lineno"> 5238</span> R ck01, ck02, ck11, ck12, ck21, ck22;</div>
-<div class="line"><a name="l05239"></a><span class="lineno"> 5239</span> C *g_hat111,*f_hat111,*g_hat211,*f_hat211,*g_hat121,*f_hat121,*g_hat221,*f_hat221;</div>
-<div class="line"><a name="l05240"></a><span class="lineno"> 5240</span> C *g_hat112,*f_hat112,*g_hat212,*f_hat212,*g_hat122,*f_hat122,*g_hat222,*f_hat222;</div>
-<div class="line"><a name="l05241"></a><span class="lineno"> 5241</span> </div>
-<div class="line"><a name="l05242"></a><span class="lineno"> 5242</span> ths->g_hat=ths->g1;</div>
-<div class="line"><a name="l05243"></a><span class="lineno"> 5243</span> ths->g=ths->g2;</div>
-<div class="line"><a name="l05244"></a><span class="lineno"> 5244</span> </div>
-<div class="line"><a name="l05245"></a><span class="lineno"> 5245</span> N0=ths->N[0];</div>
-<div class="line"><a name="l05246"></a><span class="lineno"> 5246</span> N1=ths->N[1];</div>
-<div class="line"><a name="l05247"></a><span class="lineno"> 5247</span> N2=ths->N[2];</div>
-<div class="line"><a name="l05248"></a><span class="lineno"> 5248</span> n0=ths->n[0];</div>
-<div class="line"><a name="l05249"></a><span class="lineno"> 5249</span> n1=ths->n[1];</div>
-<div class="line"><a name="l05250"></a><span class="lineno"> 5250</span> n2=ths->n[2];</div>
-<div class="line"><a name="l05251"></a><span class="lineno"> 5251</span> </div>
-<div class="line"><a name="l05252"></a><span class="lineno"> 5252</span> f_hat=(C*)ths->f_hat;</div>
-<div class="line"><a name="l05253"></a><span class="lineno"> 5253</span> g_hat=(C*)ths->g_hat;</div>
-<div class="line"><a name="l05254"></a><span class="lineno"> 5254</span> </div>
-<div class="line"><a name="l05255"></a><span class="lineno"> 5255</span> TIC(2);</div>
-<div class="line"><a name="l05256"></a><span class="lineno"> 5256</span> nfft_adjoint_3d_B(ths);</div>
-<div class="line"><a name="l05257"></a><span class="lineno"> 5257</span> TOC(2);</div>
-<div class="line"><a name="l05258"></a><span class="lineno"> 5258</span> </div>
-<div class="line"><a name="l05259"></a><span class="lineno"> 5259</span> TIC_FFTW(1)</div>
-<div class="line"><a name="l05260"></a><span class="lineno"> 5260</span> fftw_execute(ths->my_fftw_plan2);</div>
-<div class="line"><a name="l05261"></a><span class="lineno"> 5261</span> TOC_FFTW(1);</div>
-<div class="line"><a name="l05262"></a><span class="lineno"> 5262</span> </div>
-<div class="line"><a name="l05263"></a><span class="lineno"> 5263</span> TIC(0)</div>
-<div class="line"><a name="l05264"></a><span class="lineno"> 5264</span> if(ths->nfft_flags & PRE_PHI_HUT)</div>
-<div class="line"><a name="l05265"></a><span class="lineno"> 5265</span> {</div>
-<div class="line"><a name="l05266"></a><span class="lineno"> 5266</span> c_phi_inv01=ths->c_phi_inv[0];</div>
-<div class="line"><a name="l05267"></a><span class="lineno"> 5267</span> c_phi_inv02=&ths->c_phi_inv[0][N0/2];</div>
-<div class="line"><a name="l05268"></a><span class="lineno"> 5268</span> </div>
-<div class="line"><a name="l05269"></a><span class="lineno"> 5269</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k0,k1,k2,ck01,ck02,c_phi_inv11,c_phi_inv12,ck11,ck12,c_phi_inv21,c_phi_inv22,g_hat111,f_hat111,g_hat211,f_hat211,g_hat121,f_hat121,g_hat221,f_hat221,g_hat112,f_hat112,g_hat212,f_hat212,g_hat122,f_hat122,g_hat222,f_hat222,ck21,ck22)</span></div>
-<div class="line"><a name="l05270"></a><span class="lineno"> 5270</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(k0=0;k0<N0/2;k0++)</div>
-<div class="line"><a name="l05271"></a><span class="lineno"> 5271</span> {</div>
-<div class="line"><a name="l05272"></a><span class="lineno"> 5272</span> ck01=c_phi_inv01[k0];</div>
-<div class="line"><a name="l05273"></a><span class="lineno"> 5273</span> ck02=c_phi_inv02[k0];</div>
-<div class="line"><a name="l05274"></a><span class="lineno"> 5274</span> c_phi_inv11=ths->c_phi_inv[1];</div>
-<div class="line"><a name="l05275"></a><span class="lineno"> 5275</span> c_phi_inv12=&ths->c_phi_inv[1][N1/2];</div>
-<div class="line"><a name="l05276"></a><span class="lineno"> 5276</span> </div>
-<div class="line"><a name="l05277"></a><span class="lineno"> 5277</span> <span class="keywordflow">for</span>(k1=0;k1<N1/2;k1++)</div>
-<div class="line"><a name="l05278"></a><span class="lineno"> 5278</span> {</div>
-<div class="line"><a name="l05279"></a><span class="lineno"> 5279</span> ck11=c_phi_inv11[k1];</div>
-<div class="line"><a name="l05280"></a><span class="lineno"> 5280</span> ck12=c_phi_inv12[k1];</div>
-<div class="line"><a name="l05281"></a><span class="lineno"> 5281</span> c_phi_inv21=ths->c_phi_inv[2];</div>
-<div class="line"><a name="l05282"></a><span class="lineno"> 5282</span> c_phi_inv22=&ths->c_phi_inv[2][N2/2];</div>
-<div class="line"><a name="l05283"></a><span class="lineno"> 5283</span> </div>
-<div class="line"><a name="l05284"></a><span class="lineno"> 5284</span> g_hat111=g_hat + ((n0-(N0/2)+k0)*n1+n1-(N1/2)+k1)*n2+n2-(N2/2);</div>
-<div class="line"><a name="l05285"></a><span class="lineno"> 5285</span> f_hat111=f_hat + (k0*N1+k1)*N2;</div>
-<div class="line"><a name="l05286"></a><span class="lineno"> 5286</span> g_hat211=g_hat + (k0*n1+n1-(N1/2)+k1)*n2+n2-(N2/2);</div>
-<div class="line"><a name="l05287"></a><span class="lineno"> 5287</span> f_hat211=f_hat + (((N0/2)+k0)*N1+k1)*N2;</div>
-<div class="line"><a name="l05288"></a><span class="lineno"> 5288</span> g_hat121=g_hat + ((n0-(N0/2)+k0)*n1+k1)*n2+n2-(N2/2);</div>
-<div class="line"><a name="l05289"></a><span class="lineno"> 5289</span> f_hat121=f_hat + (k0*N1+(N1/2)+k1)*N2;</div>
-<div class="line"><a name="l05290"></a><span class="lineno"> 5290</span> g_hat221=g_hat + (k0*n1+k1)*n2+n2-(N2/2);</div>
-<div class="line"><a name="l05291"></a><span class="lineno"> 5291</span> f_hat221=f_hat + (((N0/2)+k0)*N1+(N1/2)+k1)*N2;</div>
-<div class="line"><a name="l05292"></a><span class="lineno"> 5292</span> </div>
-<div class="line"><a name="l05293"></a><span class="lineno"> 5293</span> g_hat112=g_hat + ((n0-(N0/2)+k0)*n1+n1-(N1/2)+k1)*n2;</div>
-<div class="line"><a name="l05294"></a><span class="lineno"> 5294</span> f_hat112=f_hat + (k0*N1+k1)*N2+(N2/2);</div>
-<div class="line"><a name="l05295"></a><span class="lineno"> 5295</span> g_hat212=g_hat + (k0*n1+n1-(N1/2)+k1)*n2;</div>
-<div class="line"><a name="l05296"></a><span class="lineno"> 5296</span> f_hat212=f_hat + (((N0/2)+k0)*N1+k1)*N2+(N2/2);</div>
-<div class="line"><a name="l05297"></a><span class="lineno"> 5297</span> g_hat122=g_hat + ((n0-(N0/2)+k0)*n1+k1)*n2;</div>
-<div class="line"><a name="l05298"></a><span class="lineno"> 5298</span> f_hat122=f_hat + (k0*N1+(N1/2)+k1)*N2+(N2/2);</div>
-<div class="line"><a name="l05299"></a><span class="lineno"> 5299</span> g_hat222=g_hat + (k0*n1+k1)*n2;</div>
-<div class="line"><a name="l05300"></a><span class="lineno"> 5300</span> f_hat222=f_hat + (((N0/2)+k0)*N1+(N1/2)+k1)*N2+(N2/2);</div>
-<div class="line"><a name="l05301"></a><span class="lineno"> 5301</span> </div>
-<div class="line"><a name="l05302"></a><span class="lineno"> 5302</span> <span class="keywordflow">for</span>(k2=0;k2<N2/2;k2++)</div>
-<div class="line"><a name="l05303"></a><span class="lineno"> 5303</span> {</div>
-<div class="line"><a name="l05304"></a><span class="lineno"> 5304</span> ck21=c_phi_inv21[k2];</div>
-<div class="line"><a name="l05305"></a><span class="lineno"> 5305</span> ck22=c_phi_inv22[k2];</div>
-<div class="line"><a name="l05306"></a><span class="lineno"> 5306</span> </div>
-<div class="line"><a name="l05307"></a><span class="lineno"> 5307</span> f_hat111[k2] = g_hat111[k2] * ck01 * ck11 * ck21;</div>
-<div class="line"><a name="l05308"></a><span class="lineno"> 5308</span> f_hat211[k2] = g_hat211[k2] * ck02 * ck11 * ck21;</div>
-<div class="line"><a name="l05309"></a><span class="lineno"> 5309</span> f_hat121[k2] = g_hat121[k2] * ck01 * ck12 * ck21;</div>
-<div class="line"><a name="l05310"></a><span class="lineno"> 5310</span> f_hat221[k2] = g_hat221[k2] * ck02 * ck12 * ck21;</div>
-<div class="line"><a name="l05311"></a><span class="lineno"> 5311</span> </div>
-<div class="line"><a name="l05312"></a><span class="lineno"> 5312</span> f_hat112[k2] = g_hat112[k2] * ck01 * ck11 * ck22;</div>
-<div class="line"><a name="l05313"></a><span class="lineno"> 5313</span> f_hat212[k2] = g_hat212[k2] * ck02 * ck11 * ck22;</div>
-<div class="line"><a name="l05314"></a><span class="lineno"> 5314</span> f_hat122[k2] = g_hat122[k2] * ck01 * ck12 * ck22;</div>
-<div class="line"><a name="l05315"></a><span class="lineno"> 5315</span> f_hat222[k2] = g_hat222[k2] * ck02 * ck12 * ck22;</div>
-<div class="line"><a name="l05316"></a><span class="lineno"> 5316</span> }</div>
-<div class="line"><a name="l05317"></a><span class="lineno"> 5317</span> }</div>
-<div class="line"><a name="l05318"></a><span class="lineno"> 5318</span> }</div>
-<div class="line"><a name="l05319"></a><span class="lineno"> 5319</span> }</div>
-<div class="line"><a name="l05320"></a><span class="lineno"> 5320</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l05321"></a><span class="lineno"> 5321</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k0,k1,k2,ck01,ck02,ck11,ck12,ck21,ck22)</span></div>
-<div class="line"><a name="l05322"></a><span class="lineno"> 5322</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(k0=0;k0<N0/2;k0++)</div>
-<div class="line"><a name="l05323"></a><span class="lineno"> 5323</span> {</div>
-<div class="line"><a name="l05324"></a><span class="lineno"> 5324</span> ck01=K(1.0)/(PHI_HUT(k0-N0/2,0));</div>
-<div class="line"><a name="l05325"></a><span class="lineno"> 5325</span> ck02=K(1.0)/(PHI_HUT(k0,0));</div>
-<div class="line"><a name="l05326"></a><span class="lineno"> 5326</span> <span class="keywordflow">for</span>(k1=0;k1<N1/2;k1++)</div>
-<div class="line"><a name="l05327"></a><span class="lineno"> 5327</span> {</div>
-<div class="line"><a name="l05328"></a><span class="lineno"> 5328</span> ck11=K(1.0)/(PHI_HUT(k1-N1/2,1));</div>
-<div class="line"><a name="l05329"></a><span class="lineno"> 5329</span> ck12=K(1.0)/(PHI_HUT(k1,1));</div>
-<div class="line"><a name="l05330"></a><span class="lineno"> 5330</span> </div>
-<div class="line"><a name="l05331"></a><span class="lineno"> 5331</span> <span class="keywordflow">for</span>(k2=0;k2<N2/2;k2++)</div>
-<div class="line"><a name="l05332"></a><span class="lineno"> 5332</span> {</div>
-<div class="line"><a name="l05333"></a><span class="lineno"> 5333</span> ck21=K(1.0)/(PHI_HUT(k2-N2/2,2));</div>
-<div class="line"><a name="l05334"></a><span class="lineno"> 5334</span> ck22=K(1.0)/(PHI_HUT(k2,2));</div>
-<div class="line"><a name="l05335"></a><span class="lineno"> 5335</span> </div>
-<div class="line"><a name="l05336"></a><span class="lineno"> 5336</span> f_hat[(k0*N1+k1)*N2+k2] = g_hat[((n0-N0/2+k0)*n1+n1-N1/2+k1)*n2+n2-N2/2+k2] * ck01 * ck11 * ck21;</div>
-<div class="line"><a name="l05337"></a><span class="lineno"> 5337</span> f_hat[((N0/2+k0)*N1+k1)*N2+k2] = g_hat[(k0*n1+n1-N1/2+k1)*n2+n2-N2/2+k2] * ck02 * ck11 * ck21;</div>
-<div class="line"><a name="l05338"></a><span class="lineno"> 5338</span> f_hat[(k0*N1+N1/2+k1)*N2+k2] = g_hat[((n0-N0/2+k0)*n1+k1)*n2+n2-N2/2+k2] * ck01 * ck12 * ck21;</div>
-<div class="line"><a name="l05339"></a><span class="lineno"> 5339</span> f_hat[((N0/2+k0)*N1+N1/2+k1)*N2+k2] = g_hat[(k0*n1+k1)*n2+n2-N2/2+k2] * ck02 * ck12 * ck21;</div>
-<div class="line"><a name="l05340"></a><span class="lineno"> 5340</span> </div>
-<div class="line"><a name="l05341"></a><span class="lineno"> 5341</span> f_hat[(k0*N1+k1)*N2+N2/2+k2] = g_hat[((n0-N0/2+k0)*n1+n1-N1/2+k1)*n2+k2] * ck01 * ck11 * ck22;</div>
-<div class="line"><a name="l05342"></a><span class="lineno"> 5342</span> f_hat[((N0/2+k0)*N1+k1)*N2+N2/2+k2] = g_hat[(k0*n1+n1-N1/2+k1)*n2+k2] * ck02 * ck11 * ck22;</div>
-<div class="line"><a name="l05343"></a><span class="lineno"> 5343</span> f_hat[(k0*N1+N1/2+k1)*N2+N2/2+k2] = g_hat[((n0-N0/2+k0)*n1+k1)*n2+k2] * ck01 * ck12 * ck22;</div>
-<div class="line"><a name="l05344"></a><span class="lineno"> 5344</span> f_hat[((N0/2+k0)*N1+N1/2+k1)*N2+N2/2+k2] = g_hat[(k0*n1+k1)*n2+k2] * ck02 * ck12 * ck22;</div>
-<div class="line"><a name="l05345"></a><span class="lineno"> 5345</span> }</div>
-<div class="line"><a name="l05346"></a><span class="lineno"> 5346</span> }</div>
-<div class="line"><a name="l05347"></a><span class="lineno"> 5347</span> }</div>
-<div class="line"><a name="l05348"></a><span class="lineno"> 5348</span> </div>
-<div class="line"><a name="l05349"></a><span class="lineno"> 5349</span> TOC(0)</div>
-<div class="line"><a name="l05350"></a><span class="lineno"> 5350</span> }</div>
-<div class="line"><a name="l05351"></a><span class="lineno"> 5351</span> </div>
-<div class="line"><a name="l05354"></a><span class="lineno"><a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421"> 5354</a></span> <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05355"></a><span class="lineno"> 5355</span> {</div>
-<div class="line"><a name="l05356"></a><span class="lineno"> 5356</span> <span class="keywordflow">switch</span>(ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>)</div>
-<div class="line"><a name="l05357"></a><span class="lineno"> 5357</span> {</div>
-<div class="line"><a name="l05358"></a><span class="lineno"> 5358</span> <span class="keywordflow">case</span> 1: nfft_trafo_1d(ths); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l05359"></a><span class="lineno"> 5359</span> <span class="keywordflow">case</span> 2: nfft_trafo_2d(ths); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l05360"></a><span class="lineno"> 5360</span> <span class="keywordflow">case</span> 3: nfft_trafo_3d(ths); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l05361"></a><span class="lineno"> 5361</span> <span class="keywordflow">default</span>:</div>
-<div class="line"><a name="l05362"></a><span class="lineno"> 5362</span> <span class="comment">/* use ths->my_fftw_plan1 */</span></div>
-<div class="line"><a name="l05363"></a><span class="lineno"> 5363</span> ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>=ths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>;</div>
-<div class="line"><a name="l05364"></a><span class="lineno"> 5364</span> ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>=ths-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>;</div>
-<div class="line"><a name="l05365"></a><span class="lineno"> 5365</span> </div>
-<div class="line"><a name="l05369"></a><span class="lineno"> 5369</span> TIC(0)</div>
-<div class="line"><a name="l05370"></a><span class="lineno"> 5370</span> nfft_D_A(ths);</div>
-<div class="line"><a name="l05371"></a><span class="lineno"> 5371</span> TOC(0)</div>
-<div class="line"><a name="l05372"></a><span class="lineno"> 5372</span> </div>
-<div class="line"><a name="l05373"></a><span class="lineno"> 5373</span> </div>
-<div class="line"><a name="l05377"></a><span class="lineno"> 5377</span> TIC_FFTW(1)</div>
-<div class="line"><a name="l05378"></a><span class="lineno"> 5378</span> fftw_execute(ths->my_fftw_plan1);</div>
-<div class="line"><a name="l05379"></a><span class="lineno"> 5379</span> TOC_FFTW(1)</div>
-<div class="line"><a name="l05380"></a><span class="lineno"> 5380</span> </div>
-<div class="line"><a name="l05381"></a><span class="lineno"> 5381</span> </div>
-<div class="line"><a name="l05384"></a><span class="lineno"> 5384</span> TIC(2)</div>
-<div class="line"><a name="l05385"></a><span class="lineno"> 5385</span> nfft_B_A(ths);</div>
-<div class="line"><a name="l05386"></a><span class="lineno"> 5386</span> TOC(2)</div>
-<div class="line"><a name="l05387"></a><span class="lineno"> 5387</span> }</div>
-<div class="line"><a name="l05388"></a><span class="lineno"> 5388</span> } <span class="comment">/* nfft_trafo */</span></div>
-<div class="line"><a name="l05389"></a><span class="lineno"> 5389</span> </div>
-<div class="line"><a name="l05390"></a><span class="lineno"> 5390</span> <span class="keywordtype">void</span> nfft_adjoint(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05391"></a><span class="lineno"> 5391</span> {</div>
-<div class="line"><a name="l05392"></a><span class="lineno"> 5392</span> <span class="keywordflow">switch</span>(ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>)</div>
-<div class="line"><a name="l05393"></a><span class="lineno"> 5393</span> {</div>
-<div class="line"><a name="l05394"></a><span class="lineno"> 5394</span> <span class="keywordflow">case</span> 1: nfft_adjoint_1d(ths); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l05395"></a><span class="lineno"> 5395</span> <span class="keywordflow">case</span> 2: nfft_adjoint_2d(ths); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l05396"></a><span class="lineno"> 5396</span> <span class="keywordflow">case</span> 3: nfft_adjoint_3d(ths); <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l05397"></a><span class="lineno"> 5397</span> <span class="keywordflow">default</span>:</div>
-<div class="line"><a name="l05398"></a><span class="lineno"> 5398</span> <span class="comment">/* use ths->my_fftw_plan2 */</span></div>
-<div class="line"><a name="l05399"></a><span class="lineno"> 5399</span> ths-><a class="code" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5" title="Zero-padded vector of Fourier coefficients, size is n_total fftw_complex.">g_hat</a>=ths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>;</div>
-<div class="line"><a name="l05400"></a><span class="lineno"> 5400</span> ths-><a class="code" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539" title="Oversampled vector of samples, size is n_total double complex.">g</a>=ths-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>;</div>
-<div class="line"><a name="l05401"></a><span class="lineno"> 5401</span> </div>
-<div class="line"><a name="l05405"></a><span class="lineno"> 5405</span> TIC(2)</div>
-<div class="line"><a name="l05406"></a><span class="lineno"> 5406</span> nfft_B_T(ths);</div>
-<div class="line"><a name="l05407"></a><span class="lineno"> 5407</span> TOC(2)</div>
-<div class="line"><a name="l05408"></a><span class="lineno"> 5408</span> </div>
-<div class="line"><a name="l05413"></a><span class="lineno"> 5413</span> TIC_FFTW(1)</div>
-<div class="line"><a name="l05414"></a><span class="lineno"> 5414</span> fftw_execute(ths->my_fftw_plan2);</div>
-<div class="line"><a name="l05415"></a><span class="lineno"> 5415</span> TOC_FFTW(1)</div>
-<div class="line"><a name="l05416"></a><span class="lineno"> 5416</span> </div>
-<div class="line"><a name="l05420"></a><span class="lineno"> 5420</span> TIC(0)</div>
-<div class="line"><a name="l05421"></a><span class="lineno"> 5421</span> nfft_D_T(ths);</div>
-<div class="line"><a name="l05422"></a><span class="lineno"> 5422</span> TOC(0)</div>
-<div class="line"><a name="l05423"></a><span class="lineno"> 5423</span> }</div>
-<div class="line"><a name="l05424"></a><span class="lineno"> 5424</span> } <span class="comment">/* nfft_adjoint */</span></div>
-<div class="line"><a name="l05425"></a><span class="lineno"> 5425</span> </div>
-<div class="line"><a name="l05426"></a><span class="lineno"> 5426</span> </div>
-<div class="line"><a name="l05429"></a><span class="lineno"> 5429</span> static <span class="keywordtype">void</span> nfft_precompute_phi_hut(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05430"></a><span class="lineno"> 5430</span> {</div>
-<div class="line"><a name="l05431"></a><span class="lineno"> 5431</span> <span class="keywordtype">int</span> ks[ths->d]; </div>
-<div class="line"><a name="l05432"></a><span class="lineno"> 5432</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l05434"></a><span class="lineno"> 5434</span> ths->c_phi_inv = (R**) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths->d*<span class="keyword">sizeof</span>(R*));</div>
-<div class="line"><a name="l05435"></a><span class="lineno"> 5435</span> </div>
-<div class="line"><a name="l05436"></a><span class="lineno"> 5436</span> <span class="keywordflow">for</span>(t=0; t<ths->d; t++)</div>
-<div class="line"><a name="l05437"></a><span class="lineno"> 5437</span> {</div>
-<div class="line"><a name="l05438"></a><span class="lineno"> 5438</span> ths->c_phi_inv[t]= (R*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths->N[t]*<span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l05439"></a><span class="lineno"> 5439</span> <span class="keywordflow">for</span>(ks[t]=0; ks[t]<ths->N[t]; ks[t]++)</div>
-<div class="line"><a name="l05440"></a><span class="lineno"> 5440</span> ths->c_phi_inv[t][ks[t]]= K(1.0)/(PHI_HUT(ks[t]-ths->N[t]/2,t));</div>
-<div class="line"><a name="l05441"></a><span class="lineno"> 5441</span> }</div>
-<div class="line"><a name="l05442"></a><span class="lineno"> 5442</span> } <span class="comment">/* nfft_phi_hut */</span></div>
-<div class="line"><a name="l05443"></a><span class="lineno"> 5443</span> </div>
-<div class="line"><a name="l05449"></a><span class="lineno"><a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc"> 5449</a></span> <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05450"></a><span class="lineno"> 5450</span> {</div>
-<div class="line"><a name="l05451"></a><span class="lineno"> 5451</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l05452"></a><span class="lineno"> 5452</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l05453"></a><span class="lineno"> 5453</span> R step; </div>
-<div class="line"><a name="l05455"></a><span class="lineno"> 5455</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l05456"></a><span class="lineno"> 5456</span> {</div>
-<div class="line"><a name="l05457"></a><span class="lineno"> 5457</span> step=((R)(ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2))/(((R)ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K [...]
-<div class="line"><a name="l05458"></a><span class="lineno"> 5458</span> <span class="keywordflow">for</span>(j=0;j<=ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>;j++)</div>
-<div class="line"><a name="l05459"></a><span class="lineno"> 5459</span> {</div>
-<div class="line"><a name="l05460"></a><span class="lineno"> 5460</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>+1)*t + j] = PHI(j*step,t);</div>
-<div class="line"><a name="l05461"></a><span class="lineno"> 5461</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l05462"></a><span class="lineno"> 5462</span> } <span class="comment">/* for(t) */</span></div>
-<div class="line"><a name="l05463"></a><span class="lineno"> 5463</span> }</div>
-<div class="line"><a name="l05464"></a><span class="lineno"> 5464</span> </div>
-<div class="line"><a name="l05465"></a><span class="lineno"> 5465</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_precompute_fg_psi(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05466"></a><span class="lineno"> 5466</span> {</div>
-<div class="line"><a name="l05467"></a><span class="lineno"> 5467</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l05468"></a><span class="lineno"> 5468</span> <span class="keywordtype">int</span> u, o; </div>
-<div class="line"><a name="l05470"></a><span class="lineno"> 5470</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l05471"></a><span class="lineno"> 5471</span> </div>
-<div class="line"><a name="l05472"></a><span class="lineno"> 5472</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l05473"></a><span class="lineno"> 5473</span> {</div>
-<div class="line"><a name="l05474"></a><span class="lineno"> 5474</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l05475"></a><span class="lineno"> 5475</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(j,u,o)</span></div>
-<div class="line"><a name="l05476"></a><span class="lineno"> 5476</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (j = 0; j < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l05477"></a><span class="lineno"> 5477</span> {</div>
-<div class="line"><a name="l05478"></a><span class="lineno"> 5478</span> nfft_uo(ths,j,&u,&o,t);</div>
-<div class="line"><a name="l05479"></a><span class="lineno"> 5479</span> </div>
-<div class="line"><a name="l05480"></a><span class="lineno"> 5480</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t)]=</div>
-<div class="line"><a name="l05481"></a><span class="lineno"> 5481</span> (PHI((ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t]-((R)u)/ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to [...]
-<div class="line"><a name="l05482"></a><span class="lineno"> 5482</span> </div>
-<div class="line"><a name="l05483"></a><span class="lineno"> 5483</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[2*(j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t)+1]=</div>
-<div class="line"><a name="l05484"></a><span class="lineno"> 5484</span> EXP(K(2.0)*(ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t]*ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac94 [...]
-<div class="line"><a name="l05485"></a><span class="lineno"> 5485</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l05486"></a><span class="lineno"> 5486</span> }</div>
-<div class="line"><a name="l05487"></a><span class="lineno"> 5487</span> <span class="comment">/* for(t) */</span></div>
-<div class="line"><a name="l05488"></a><span class="lineno"> 5488</span> } <span class="comment">/* nfft_precompute_fg_psi */</span></div>
-<div class="line"><a name="l05489"></a><span class="lineno"> 5489</span> </div>
-<div class="line"><a name="l05490"></a><span class="lineno"> 5490</span> <span class="keywordtype">void</span> nfft_precompute_psi(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05491"></a><span class="lineno"> 5491</span> {</div>
-<div class="line"><a name="l05492"></a><span class="lineno"> 5492</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l05493"></a><span class="lineno"> 5493</span> <span class="keywordtype">int</span> l; </div>
-<div class="line"><a name="l05494"></a><span class="lineno"> 5494</span> <span class="keywordtype">int</span> lj; </div>
-<div class="line"><a name="l05495"></a><span class="lineno"> 5495</span> <span class="keywordtype">int</span> u, o; </div>
-<div class="line"><a name="l05497"></a><span class="lineno"> 5497</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l05498"></a><span class="lineno"> 5498</span> </div>
-<div class="line"><a name="l05499"></a><span class="lineno"> 5499</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l05500"></a><span class="lineno"> 5500</span> {</div>
-<div class="line"><a name="l05501"></a><span class="lineno"> 5501</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l05502"></a><span class="lineno"> 5502</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(j,l,lj,u,o)</span></div>
-<div class="line"><a name="l05503"></a><span class="lineno"> 5503</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (j = 0; j < ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l05504"></a><span class="lineno"> 5504</span> {</div>
-<div class="line"><a name="l05505"></a><span class="lineno"> 5505</span> nfft_uo(ths,j,&u,&o,t);</div>
-<div class="line"><a name="l05506"></a><span class="lineno"> 5506</span> </div>
-<div class="line"><a name="l05507"></a><span class="lineno"> 5507</span> <span class="keywordflow">for</span>(l=u, lj=0; l <= o; l++, lj++)</div>
-<div class="line"><a name="l05508"></a><span class="lineno"> 5508</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[(j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t)*(2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut- [...]
-<div class="line"><a name="l05509"></a><span class="lineno"> 5509</span> (PHI((ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+t]-((R)l)/ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma [...]
-<div class="line"><a name="l05510"></a><span class="lineno"> 5510</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l05511"></a><span class="lineno"> 5511</span> }</div>
-<div class="line"><a name="l05512"></a><span class="lineno"> 5512</span> <span class="comment">/* for(t) */</span></div>
-<div class="line"><a name="l05513"></a><span class="lineno"> 5513</span> } <span class="comment">/* nfft_precompute_psi */</span></div>
-<div class="line"><a name="l05514"></a><span class="lineno"> 5514</span> </div>
-<div class="line"><a name="l05515"></a><span class="lineno"> 5515</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05516"></a><span class="lineno"> 5516</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> nfft_precompute_full_psi_omp(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05517"></a><span class="lineno"> 5517</span> {</div>
-<div class="line"><a name="l05518"></a><span class="lineno"> 5518</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l05519"></a><span class="lineno"> 5519</span> <span class="keywordtype">int</span> lprod; </div>
-<div class="line"><a name="l05521"></a><span class="lineno"> 5521</span> {</div>
-<div class="line"><a name="l05522"></a><span class="lineno"> 5522</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l05523"></a><span class="lineno"> 5523</span> <span class="keywordflow">for</span>(t=0,lprod = 1; t<ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l05524"></a><span class="lineno"> 5524</span> lprod *= 2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2;</div>
-<div class="line"><a name="l05525"></a><span class="lineno"> 5525</span> }</div>
-<div class="line"><a name="l05526"></a><span class="lineno"> 5526</span> </div>
-<div class="line"><a name="l05527"></a><span class="lineno"> 5527</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(j)</span></div>
-<div class="line"><a name="l05528"></a><span class="lineno"> 5528</span> <span class="preprocessor"></span> <span class="keywordflow">for</span>(j=0; j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l05529"></a><span class="lineno"> 5529</span> {</div>
-<div class="line"><a name="l05530"></a><span class="lineno"> 5530</span> <span class="keywordtype">int</span> t,t2; </div>
-<div class="line"><a name="l05531"></a><span class="lineno"> 5531</span> <span class="keywordtype">int</span> l_L; </div>
-<div class="line"><a name="l05532"></a><span class="lineno"> 5532</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l05533"></a><span class="lineno"> 5533</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l05534"></a><span class="lineno"> 5534</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; </div>
-<div class="line"><a name="l05536"></a><span class="lineno"> 5536</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l05538"></a><span class="lineno"> 5538</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1];</div>
-<div class="line"><a name="l05539"></a><span class="lineno"> 5539</span> <span class="keywordtype">int</span> ix = j*lprod;</div>
-<div class="line"><a name="l05540"></a><span class="lineno"> 5540</span> </div>
-<div class="line"><a name="l05541"></a><span class="lineno"> 5541</span> phi_prod[0]=1;</div>
-<div class="line"><a name="l05542"></a><span class="lineno"> 5542</span> ll_plain[0]=0;</div>
-<div class="line"><a name="l05543"></a><span class="lineno"> 5543</span> </div>
-<div class="line"><a name="l05544"></a><span class="lineno"> 5544</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l05545"></a><span class="lineno"> 5545</span> </div>
-<div class="line"><a name="l05546"></a><span class="lineno"> 5546</span> <span class="keywordflow">for</span>(l_L=0; l_L<lprod; l_L++, ix++)</div>
-<div class="line"><a name="l05547"></a><span class="lineno"> 5547</span> {</div>
-<div class="line"><a name="l05548"></a><span class="lineno"> 5548</span> MACRO_update_phi_prod_ll_plain(without_PRE_PSI);</div>
-<div class="line"><a name="l05549"></a><span class="lineno"> 5549</span> </div>
-<div class="line"><a name="l05550"></a><span class="lineno"> 5550</span> ths-><a class="code" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_g</a>[ix]=ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l05551"></a><span class="lineno"> 5551</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ix]=phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l05552"></a><span class="lineno"> 5552</span> </div>
-<div class="line"><a name="l05553"></a><span class="lineno"> 5553</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l05554"></a><span class="lineno"> 5554</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l05555"></a><span class="lineno"> 5555</span> </div>
-<div class="line"><a name="l05556"></a><span class="lineno"> 5556</span> ths-><a class="code" href="structnfft__plan.html#a2ed144cf7d6043a93c07b6f6ba7bbe2a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_f</a>[j]=lprod;</div>
-<div class="line"><a name="l05557"></a><span class="lineno"> 5557</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l05558"></a><span class="lineno"> 5558</span> }</div>
-<div class="line"><a name="l05559"></a><span class="lineno"> 5559</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05560"></a><span class="lineno"> 5560</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l05561"></a><span class="lineno"> 5561</span> <span class="keywordtype">void</span> nfft_precompute_full_psi(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05562"></a><span class="lineno"> 5562</span> {</div>
-<div class="line"><a name="l05563"></a><span class="lineno"> 5563</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05564"></a><span class="lineno"> 5564</span> <span class="preprocessor"></span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l05565"></a><span class="lineno"> 5565</span> </div>
-<div class="line"><a name="l05566"></a><span class="lineno"> 5566</span> nfft_precompute_full_psi_omp(ths);</div>
-<div class="line"><a name="l05567"></a><span class="lineno"> 5567</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l05568"></a><span class="lineno"> 5568</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> t,t2; </div>
-<div class="line"><a name="l05569"></a><span class="lineno"> 5569</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l05570"></a><span class="lineno"> 5570</span> <span class="keywordtype">int</span> l_L; </div>
-<div class="line"><a name="l05571"></a><span class="lineno"> 5571</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l05572"></a><span class="lineno"> 5572</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l05573"></a><span class="lineno"> 5573</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1]; </div>
-<div class="line"><a name="l05574"></a><span class="lineno"> 5574</span> <span class="keywordtype">int</span> lprod; </div>
-<div class="line"><a name="l05575"></a><span class="lineno"> 5575</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>], o[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>]; </div>
-<div class="line"><a name="l05577"></a><span class="lineno"> 5577</span> R phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>+1];</div>
-<div class="line"><a name="l05578"></a><span class="lineno"> 5578</span> </div>
-<div class="line"><a name="l05579"></a><span class="lineno"> 5579</span> <span class="keywordtype">int</span> ix,ix_old;</div>
-<div class="line"><a name="l05580"></a><span class="lineno"> 5580</span> </div>
-<div class="line"><a name="l05581"></a><span class="lineno"> 5581</span> nfft_sort_nodes(ths);</div>
-<div class="line"><a name="l05582"></a><span class="lineno"> 5582</span> </div>
-<div class="line"><a name="l05583"></a><span class="lineno"> 5583</span> phi_prod[0]=1;</div>
-<div class="line"><a name="l05584"></a><span class="lineno"> 5584</span> ll_plain[0]=0;</div>
-<div class="line"><a name="l05585"></a><span class="lineno"> 5585</span> </div>
-<div class="line"><a name="l05586"></a><span class="lineno"> 5586</span> <span class="keywordflow">for</span>(t=0,lprod = 1; t<ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l05587"></a><span class="lineno"> 5587</span> lprod *= 2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2;</div>
-<div class="line"><a name="l05588"></a><span class="lineno"> 5588</span> </div>
-<div class="line"><a name="l05589"></a><span class="lineno"> 5589</span> <span class="keywordflow">for</span>(j=0,ix=0,ix_old=0; j<ths->M_total; j++)</div>
-<div class="line"><a name="l05590"></a><span class="lineno"> 5590</span> {</div>
-<div class="line"><a name="l05591"></a><span class="lineno"> 5591</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l05592"></a><span class="lineno"> 5592</span> </div>
-<div class="line"><a name="l05593"></a><span class="lineno"> 5593</span> <span class="keywordflow">for</span>(l_L=0; l_L<lprod; l_L++, ix++)</div>
-<div class="line"><a name="l05594"></a><span class="lineno"> 5594</span> {</div>
-<div class="line"><a name="l05595"></a><span class="lineno"> 5595</span> MACRO_update_phi_prod_ll_plain(without_PRE_PSI);</div>
-<div class="line"><a name="l05596"></a><span class="lineno"> 5596</span> </div>
-<div class="line"><a name="l05597"></a><span class="lineno"> 5597</span> ths-><a class="code" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_g</a>[ix]=ll_plain[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l05598"></a><span class="lineno"> 5598</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>[ix]=phi_prod[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>];</div>
-<div class="line"><a name="l05599"></a><span class="lineno"> 5599</span> </div>
-<div class="line"><a name="l05600"></a><span class="lineno"> 5600</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l05601"></a><span class="lineno"> 5601</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l05602"></a><span class="lineno"> 5602</span> </div>
-<div class="line"><a name="l05603"></a><span class="lineno"> 5603</span> </div>
-<div class="line"><a name="l05604"></a><span class="lineno"> 5604</span> ths-><a class="code" href="structnfft__plan.html#a2ed144cf7d6043a93c07b6f6ba7bbe2a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_f</a>[j]=ix-ix_old;</div>
-<div class="line"><a name="l05605"></a><span class="lineno"> 5605</span> ix_old=ix;</div>
-<div class="line"><a name="l05606"></a><span class="lineno"> 5606</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l05607"></a><span class="lineno"> 5607</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05608"></a><span class="lineno"> 5608</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l05609"></a><span class="lineno"> 5609</span> </div>
-<div class="line"><a name="l05610"></a><span class="lineno"> 5610</span> <span class="keywordtype">void</span> nfft_precompute_one_psi(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05611"></a><span class="lineno"> 5611</span> {</div>
-<div class="line"><a name="l05612"></a><span class="lineno"> 5612</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l05613"></a><span class="lineno"> 5613</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(ths);</div>
-<div class="line"><a name="l05614"></a><span class="lineno"> 5614</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l05615"></a><span class="lineno"> 5615</span> nfft_precompute_fg_psi(ths);</div>
-<div class="line"><a name="l05616"></a><span class="lineno"> 5616</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l05617"></a><span class="lineno"> 5617</span> nfft_precompute_psi(ths);</div>
-<div class="line"><a name="l05618"></a><span class="lineno"> 5618</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l05619"></a><span class="lineno"> 5619</span> nfft_precompute_full_psi(ths);</div>
-<div class="line"><a name="l05620"></a><span class="lineno"> 5620</span> }</div>
-<div class="line"><a name="l05621"></a><span class="lineno"> 5621</span> </div>
-<div class="line"><a name="l05622"></a><span class="lineno"> 5622</span> </div>
-<div class="line"><a name="l05623"></a><span class="lineno"> 5623</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_init_help(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05624"></a><span class="lineno"> 5624</span> {</div>
-<div class="line"><a name="l05625"></a><span class="lineno"> 5625</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l05626"></a><span class="lineno"> 5626</span> <span class="keywordtype">int</span> lprod; </div>
-<div class="line"><a name="l05628"></a><span class="lineno"> 5628</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_OMP_BLOCKWISE_ADJOINT)</div>
-<div class="line"><a name="l05629"></a><span class="lineno"> 5629</span> ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> |= NFFT_SORT_NODES;</div>
-<div class="line"><a name="l05630"></a><span class="lineno"> 5630</span> </div>
-<div class="line"><a name="l05631"></a><span class="lineno"> 5631</span> ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>=<a class="code" href="group__nfftutil.html#ga2752ca372ee2622f173a706e86e2b116" title="Computes integer .">nfft_prod_int</a>(ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>, ths-><a class="code" h [...]
-<div class="line"><a name="l05632"></a><span class="lineno"> 5632</span> ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>=<a class="code" href="group__nfftutil.html#ga2752ca372ee2622f173a706e86e2b116" title="Computes integer .">nfft_prod_int</a>(ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that [...]
-<div class="line"><a name="l05633"></a><span class="lineno"> 5633</span> </div>
-<div class="line"><a name="l05634"></a><span class="lineno"> 5634</span> ths-><a class="code" href="structnfft__plan.html#a09340f6465c23f3d94636f4f0da30f8a" title="oversampling-factor">sigma</a> = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>*<span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l05635"></a><span class="lineno"> 5635</span> <span class="keywordflow">for</span>(t = 0;t < ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l05636"></a><span class="lineno"> 5636</span> ths-><a class="code" href="structnfft__plan.html#a09340f6465c23f3d94636f4f0da30f8a" title="oversampling-factor">sigma</a>[t] = ((R)ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t])/ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-ba [...]
-<div class="line"><a name="l05637"></a><span class="lineno"> 5637</span> </div>
-<div class="line"><a name="l05638"></a><span class="lineno"> 5638</span> WINDOW_HELP_INIT;</div>
-<div class="line"><a name="l05639"></a><span class="lineno"> 5639</span> </div>
-<div class="line"><a name="l05640"></a><span class="lineno"> 5640</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & MALLOC_X)</div>
-<div class="line"><a name="l05641"></a><span class="lineno"> 5641</span> ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> = (R*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>*ths-><a class="code" href="structnfft__plan.h [...]
-<div class="line"><a name="l05642"></a><span class="lineno"> 5642</span> </div>
-<div class="line"><a name="l05643"></a><span class="lineno"> 5643</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & MALLOC_F_HAT)</div>
-<div class="line"><a name="l05644"></a><span class="lineno"> 5644</span> ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = (fftw_complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficien [...]
-<div class="line"><a name="l05645"></a><span class="lineno"> 5645</span> </div>
-<div class="line"><a name="l05646"></a><span class="lineno"> 5646</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & MALLOC_F)</div>
-<div class="line"><a name="l05647"></a><span class="lineno"> 5647</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = (fftw_complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>*<span class=" [...]
-<div class="line"><a name="l05648"></a><span class="lineno"> 5648</span> </div>
-<div class="line"><a name="l05649"></a><span class="lineno"> 5649</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l05650"></a><span class="lineno"> 5650</span> nfft_precompute_phi_hut(ths);</div>
-<div class="line"><a name="l05651"></a><span class="lineno"> 5651</span> </div>
-<div class="line"><a name="l05652"></a><span class="lineno"> 5652</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l05653"></a><span class="lineno"> 5653</span> {</div>
-<div class="line"><a name="l05654"></a><span class="lineno"> 5654</span> ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>=(1U<< 10)*(ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</ [...]
-<div class="line"><a name="l05655"></a><span class="lineno"> 5655</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a> = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((ths-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the [...]
-<div class="line"><a name="l05656"></a><span class="lineno"> 5656</span> }</div>
-<div class="line"><a name="l05657"></a><span class="lineno"> 5657</span> </div>
-<div class="line"><a name="l05658"></a><span class="lineno"> 5658</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l05659"></a><span class="lineno"> 5659</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a> = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>*t [...]
-<div class="line"><a name="l05660"></a><span class="lineno"> 5660</span> </div>
-<div class="line"><a name="l05661"></a><span class="lineno"> 5661</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l05662"></a><span class="lineno"> 5662</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a> = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>*t [...]
-<div class="line"><a name="l05663"></a><span class="lineno"> 5663</span> (2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2)*<span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l05664"></a><span class="lineno"> 5664</span> </div>
-<div class="line"><a name="l05665"></a><span class="lineno"> 5665</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l05666"></a><span class="lineno"> 5666</span> {</div>
-<div class="line"><a name="l05667"></a><span class="lineno"> 5667</span> <span class="keywordflow">for</span>(t=0,lprod = 1; t<ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l05668"></a><span class="lineno"> 5668</span> lprod *= 2*ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>+2;</div>
-<div class="line"><a name="l05669"></a><span class="lineno"> 5669</span> </div>
-<div class="line"><a name="l05670"></a><span class="lineno"> 5670</span> ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a> = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a> [...]
-<div class="line"><a name="l05671"></a><span class="lineno"> 5671</span> </div>
-<div class="line"><a name="l05672"></a><span class="lineno"> 5672</span> ths-><a class="code" href="structnfft__plan.html#a2ed144cf7d6043a93c07b6f6ba7bbe2a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_f</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples. [...]
-<div class="line"><a name="l05673"></a><span class="lineno"> 5673</span> ths-><a class="code" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_g</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples. [...]
-<div class="line"><a name="l05674"></a><span class="lineno"> 5674</span> }</div>
-<div class="line"><a name="l05675"></a><span class="lineno"> 5675</span> </div>
-<div class="line"><a name="l05676"></a><span class="lineno"> 5676</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FFTW_INIT)</div>
-<div class="line"><a name="l05677"></a><span class="lineno"> 5677</span> {</div>
-<div class="line"><a name="l05678"></a><span class="lineno"> 5678</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05679"></a><span class="lineno"> 5679</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> nthreads = nfft_get_omp_num_threads();</div>
-<div class="line"><a name="l05680"></a><span class="lineno"> 5680</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05681"></a><span class="lineno"> 5681</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l05682"></a><span class="lineno"> 5682</span> ths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>=(fftw_complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l05683"></a><span class="lineno"> 5683</span> </div>
-<div class="line"><a name="l05684"></a><span class="lineno"> 5684</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FFT_OUT_OF_PLACE)</div>
-<div class="line"><a name="l05685"></a><span class="lineno"> 5685</span> ths-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a> = (fftw_complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l05686"></a><span class="lineno"> 5686</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l05687"></a><span class="lineno"> 5687</span> ths-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a> = ths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>;</div>
-<div class="line"><a name="l05688"></a><span class="lineno"> 5688</span> </div>
-<div class="line"><a name="l05689"></a><span class="lineno"> 5689</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05690"></a><span class="lineno"> 5690</span> <span class="preprocessor"></span><span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l05691"></a><span class="lineno"> 5691</span> <span class="preprocessor"></span>{</div>
-<div class="line"><a name="l05692"></a><span class="lineno"> 5692</span> fftw_plan_with_nthreads(nthreads);</div>
-<div class="line"><a name="l05693"></a><span class="lineno"> 5693</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05694"></a><span class="lineno"> 5694</span> <span class="preprocessor"></span> ths->my_fftw_plan1 = fftw_plan_dft(ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>, ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>, ths-><a class="code" href="structnfft__plan [...]
-<div class="line"><a name="l05695"></a><span class="lineno"> 5695</span> ths->my_fftw_plan2 = fftw_plan_dft(ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>, ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>, ths-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43 [...]
-<div class="line"><a name="l05696"></a><span class="lineno"> 5696</span> FFTW_BACKWARD, ths-><a class="code" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805" title="Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT.">fftw_flags</a>);</div>
-<div class="line"><a name="l05697"></a><span class="lineno"> 5697</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05698"></a><span class="lineno"> 5698</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l05699"></a><span class="lineno"> 5699</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05700"></a><span class="lineno"> 5700</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l05701"></a><span class="lineno"> 5701</span> </div>
-<div class="line"><a name="l05702"></a><span class="lineno"> 5702</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES)</div>
-<div class="line"><a name="l05703"></a><span class="lineno"> 5703</span> ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used when flag NFFT_SORT_NODES is set.">index_x</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>)*2*ths-><a class="code" href="struc [...]
-<div class="line"><a name="l05704"></a><span class="lineno"> 5704</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l05705"></a><span class="lineno"> 5705</span> ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used when flag NFFT_SORT_NODES is set.">index_x</a> = NULL;</div>
-<div class="line"><a name="l05706"></a><span class="lineno"> 5706</span> </div>
-<div class="line"><a name="l05707"></a><span class="lineno"> 5707</span> ths-><a class="code" href="structnfft__plan.html#a9ebd66f2964cca6a02fc50d640df3557" title="Pointer to the own transform.">mv_trafo</a> = (void (*) (<span class="keywordtype">void</span>* ))<a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>;</div>
-<div class="line"><a name="l05708"></a><span class="lineno"> 5708</span> ths-><a class="code" href="structnfft__plan.html#abbe724645c96ef34c3e98d821f6648a3" title="Pointer to the own adjoint.">mv_adjoint</a> = (void (*) (<span class="keywordtype">void</span>* ))nfft_adjoint;</div>
-<div class="line"><a name="l05709"></a><span class="lineno"> 5709</span> }</div>
-<div class="line"><a name="l05710"></a><span class="lineno"> 5710</span> </div>
-<div class="line"><a name="l05711"></a><span class="lineno"> 5711</span> <span class="keywordtype">void</span> nfft_init(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l05712"></a><span class="lineno"> 5712</span> {</div>
-<div class="line"><a name="l05713"></a><span class="lineno"> 5713</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l05715"></a><span class="lineno"> 5715</span> ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a> = d;</div>
-<div class="line"><a name="l05716"></a><span class="lineno"> 5716</span> </div>
-<div class="line"><a name="l05717"></a><span class="lineno"> 5717</span> ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>=(<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(d*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l05718"></a><span class="lineno"> 5718</span> </div>
-<div class="line"><a name="l05719"></a><span class="lineno"> 5719</span> <span class="keywordflow">for</span> (t = 0;t < d; t++)</div>
-<div class="line"><a name="l05720"></a><span class="lineno"> 5720</span> ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t] = N[t];</div>
-<div class="line"><a name="l05721"></a><span class="lineno"> 5721</span> </div>
-<div class="line"><a name="l05722"></a><span class="lineno"> 5722</span> ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a> = M_total;</div>
-<div class="line"><a name="l05723"></a><span class="lineno"> 5723</span> </div>
-<div class="line"><a name="l05724"></a><span class="lineno"> 5724</span> ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(d*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l05725"></a><span class="lineno"> 5725</span> <span class="keywordflow">for</span> (t = 0;t < d; t++)</div>
-<div class="line"><a name="l05726"></a><span class="lineno"> 5726</span> ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t] = 2*X(next_power_of_2)(ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]);</div>
-<div class="line"><a name="l05727"></a><span class="lineno"> 5727</span> </div>
-<div class="line"><a name="l05728"></a><span class="lineno"> 5728</span> ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a> = WINDOW_HELP_ESTIMATE_m;</div>
-<div class="line"><a name="l05729"></a><span class="lineno"> 5729</span> </div>
-<div class="line"><a name="l05730"></a><span class="lineno"> 5730</span> <span class="keywordflow">if</span> (d > 1)</div>
-<div class="line"><a name="l05731"></a><span class="lineno"> 5731</span> {</div>
-<div class="line"><a name="l05732"></a><span class="lineno"> 5732</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l05733"></a><span class="lineno"> 5733</span> <span class="preprocessor"></span> ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = PRE_PHI_HUT | PRE_PSI | MALLOC_X| MALLOC_F_HAT | MALLOC_F |</div>
-<div class="line"><a name="l05734"></a><span class="lineno"> 5734</span> FFTW_INIT | FFT_OUT_OF_PLACE | NFFT_SORT_NODES |</div>
-<div class="line"><a name="l05735"></a><span class="lineno"> 5735</span> NFFT_OMP_BLOCKWISE_ADJOINT;</div>
-<div class="line"><a name="l05736"></a><span class="lineno"> 5736</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l05737"></a><span class="lineno"> 5737</span> <span class="preprocessor"></span> ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = PRE_PHI_HUT | PRE_PSI | MALLOC_X| MALLOC_F_HAT | MALLOC_F |</div>
-<div class="line"><a name="l05738"></a><span class="lineno"> 5738</span> FFTW_INIT | FFT_OUT_OF_PLACE | NFFT_SORT_NODES;</div>
-<div class="line"><a name="l05739"></a><span class="lineno"> 5739</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l05740"></a><span class="lineno"> 5740</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l05741"></a><span class="lineno"> 5741</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l05742"></a><span class="lineno"> 5742</span> ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = PRE_PHI_HUT | PRE_PSI | MALLOC_X| MALLOC_F_HAT | MALLOC_F |</div>
-<div class="line"><a name="l05743"></a><span class="lineno"> 5743</span> FFTW_INIT | FFT_OUT_OF_PLACE;</div>
-<div class="line"><a name="l05744"></a><span class="lineno"> 5744</span> </div>
-<div class="line"><a name="l05745"></a><span class="lineno"> 5745</span> ths-><a class="code" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805" title="Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT.">fftw_flags</a>= FFTW_ESTIMATE| FFTW_DESTROY_INPUT;</div>
-<div class="line"><a name="l05746"></a><span class="lineno"> 5746</span> </div>
-<div class="line"><a name="l05747"></a><span class="lineno"> 5747</span> nfft_init_help(ths);</div>
-<div class="line"><a name="l05748"></a><span class="lineno"> 5748</span> }</div>
-<div class="line"><a name="l05749"></a><span class="lineno"> 5749</span> </div>
-<div class="line"><a name="l05750"></a><span class="lineno"> 5750</span> <span class="keywordtype">void</span> nfft_init_guru(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M_total, <span class="keywordtype">int</span> *n,</div>
-<div class="line"><a name="l05751"></a><span class="lineno"> 5751</span> <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> nfft_flags, <span class="keywordtype">unsigned</span> fftw_flags)</div>
-<div class="line"><a name="l05752"></a><span class="lineno"> 5752</span> {</div>
-<div class="line"><a name="l05753"></a><span class="lineno"> 5753</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l05755"></a><span class="lineno"> 5755</span> ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a> =d;</div>
-<div class="line"><a name="l05756"></a><span class="lineno"> 5756</span> ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>= (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>*<span class="keyword">sizeof</span>(<span class [...]
-<div class="line"><a name="l05757"></a><span class="lineno"> 5757</span> <span class="keywordflow">for</span>(t=0; t<d; t++)</div>
-<div class="line"><a name="l05758"></a><span class="lineno"> 5758</span> ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[t]= N[t];</div>
-<div class="line"><a name="l05759"></a><span class="lineno"> 5759</span> ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>= M_total;</div>
-<div class="line"><a name="l05760"></a><span class="lineno"> 5760</span> ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>= (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank"> [...]
-<div class="line"><a name="l05761"></a><span class="lineno"> 5761</span> <span class="keywordflow">for</span>(t=0; t<d; t++)</div>
-<div class="line"><a name="l05762"></a><span class="lineno"> 5762</span> ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[t]= n[t];</div>
-<div class="line"><a name="l05763"></a><span class="lineno"> 5763</span> ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>= m;</div>
-<div class="line"><a name="l05764"></a><span class="lineno"> 5764</span> ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a>= nfft_flags;</div>
-<div class="line"><a name="l05765"></a><span class="lineno"> 5765</span> ths-><a class="code" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805" title="Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT.">fftw_flags</a>= fftw_flags;</div>
-<div class="line"><a name="l05766"></a><span class="lineno"> 5766</span> </div>
-<div class="line"><a name="l05767"></a><span class="lineno"> 5767</span> nfft_init_help(ths);</div>
-<div class="line"><a name="l05768"></a><span class="lineno"> 5768</span> }</div>
-<div class="line"><a name="l05769"></a><span class="lineno"> 5769</span> </div>
-<div class="line"><a name="l05770"></a><span class="lineno"> 5770</span> <span class="keywordtype">void</span> nfft_init_1d(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths, <span class="keywordtype">int</span> N1, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l05771"></a><span class="lineno"> 5771</span> {</div>
-<div class="line"><a name="l05772"></a><span class="lineno"> 5772</span> <span class="keywordtype">int</span> N[1];</div>
-<div class="line"><a name="l05773"></a><span class="lineno"> 5773</span> </div>
-<div class="line"><a name="l05774"></a><span class="lineno"> 5774</span> N[0]=N1;</div>
-<div class="line"><a name="l05775"></a><span class="lineno"> 5775</span> </div>
-<div class="line"><a name="l05776"></a><span class="lineno"> 5776</span> nfft_init(ths, 1, N, M_total);</div>
-<div class="line"><a name="l05777"></a><span class="lineno"> 5777</span> }</div>
-<div class="line"><a name="l05778"></a><span class="lineno"> 5778</span> </div>
-<div class="line"><a name="l05779"></a><span class="lineno"> 5779</span> <span class="keywordtype">void</span> nfft_init_2d(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths, <span class="keywordtype">int</span> N1, <span class="keywordtype">int</span> N2, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l05780"></a><span class="lineno"> 5780</span> {</div>
-<div class="line"><a name="l05781"></a><span class="lineno"> 5781</span> <span class="keywordtype">int</span> N[2];</div>
-<div class="line"><a name="l05782"></a><span class="lineno"> 5782</span> </div>
-<div class="line"><a name="l05783"></a><span class="lineno"> 5783</span> N[0]=N1;</div>
-<div class="line"><a name="l05784"></a><span class="lineno"> 5784</span> N[1]=N2;</div>
-<div class="line"><a name="l05785"></a><span class="lineno"> 5785</span> nfft_init(ths,2,N,M_total);</div>
-<div class="line"><a name="l05786"></a><span class="lineno"> 5786</span> }</div>
-<div class="line"><a name="l05787"></a><span class="lineno"> 5787</span> </div>
-<div class="line"><a name="l05788"></a><span class="lineno"> 5788</span> <span class="keywordtype">void</span> nfft_init_3d(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths, <span class="keywordtype">int</span> N1, <span class="keywordtype">int</span> N2, <span class="keywordtype">int</span> N3, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l05789"></a><span class="lineno"> 5789</span> {</div>
-<div class="line"><a name="l05790"></a><span class="lineno"> 5790</span> <span class="keywordtype">int</span> N[3];</div>
-<div class="line"><a name="l05791"></a><span class="lineno"> 5791</span> </div>
-<div class="line"><a name="l05792"></a><span class="lineno"> 5792</span> N[0]=N1;</div>
-<div class="line"><a name="l05793"></a><span class="lineno"> 5793</span> N[1]=N2;</div>
-<div class="line"><a name="l05794"></a><span class="lineno"> 5794</span> N[2]=N3;</div>
-<div class="line"><a name="l05795"></a><span class="lineno"> 5795</span> nfft_init(ths,3,N,M_total);</div>
-<div class="line"><a name="l05796"></a><span class="lineno"> 5796</span> }</div>
-<div class="line"><a name="l05797"></a><span class="lineno"> 5797</span> </div>
-<div class="line"><a name="l05798"></a><span class="lineno"> 5798</span> <span class="keyword">const</span> <span class="keywordtype">char</span>* nfft_check(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05799"></a><span class="lineno"> 5799</span> {</div>
-<div class="line"><a name="l05800"></a><span class="lineno"> 5800</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l05801"></a><span class="lineno"> 5801</span> </div>
-<div class="line"><a name="l05802"></a><span class="lineno"> 5802</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>*ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>;j++)</div>
-<div class="line"><a name="l05803"></a><span class="lineno"> 5803</span> <span class="keywordflow">if</span>((ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j]<-K(0.5)) || (ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j]>= K(0.5)))</div>
-<div class="line"><a name="l05804"></a><span class="lineno"> 5804</span> <span class="keywordflow">return</span> <span class="stringliteral">"ths->x out of range [-0.5,0.5)"</span>;</div>
-<div class="line"><a name="l05805"></a><span class="lineno"> 5805</span> </div>
-<div class="line"><a name="l05806"></a><span class="lineno"> 5806</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>;j++)</div>
-<div class="line"><a name="l05807"></a><span class="lineno"> 5807</span> {</div>
-<div class="line"><a name="l05808"></a><span class="lineno"> 5808</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a09340f6465c23f3d94636f4f0da30f8a" title="oversampling-factor">sigma</a>[j]<=1)</div>
-<div class="line"><a name="l05809"></a><span class="lineno"> 5809</span> <span class="keywordflow">return</span> <span class="stringliteral">"nfft_check: oversampling factor too small"</span>;</div>
-<div class="line"><a name="l05810"></a><span class="lineno"> 5810</span> </div>
-<div class="line"><a name="l05811"></a><span class="lineno"> 5811</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[j]<=ths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>)</div>
-<div class="line"><a name="l05812"></a><span class="lineno"> 5812</span> <span class="keywordflow">return</span> <span class="stringliteral">"Polynomial degree N is smaller than cut-off m"</span>;</div>
-<div class="line"><a name="l05813"></a><span class="lineno"> 5813</span> </div>
-<div class="line"><a name="l05814"></a><span class="lineno"> 5814</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[j]%2==1)</div>
-<div class="line"><a name="l05815"></a><span class="lineno"> 5815</span> <span class="keywordflow">return</span> <span class="stringliteral">"polynomial degree N has to be even"</span>;</div>
-<div class="line"><a name="l05816"></a><span class="lineno"> 5816</span> }</div>
-<div class="line"><a name="l05817"></a><span class="lineno"> 5817</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l05818"></a><span class="lineno"> 5818</span> }</div>
-<div class="line"><a name="l05819"></a><span class="lineno"> 5819</span> </div>
-<div class="line"><a name="l05820"></a><span class="lineno"> 5820</span> <span class="keywordtype">void</span> nfft_finalize(<a class="code" href="structnfft__plan.html">nfft_plan</a> *ths)</div>
-<div class="line"><a name="l05821"></a><span class="lineno"> 5821</span> {</div>
-<div class="line"><a name="l05822"></a><span class="lineno"> 5822</span> <span class="keywordtype">int</span> t; <span class="comment">/* index over dimensions */</span></div>
-<div class="line"><a name="l05823"></a><span class="lineno"> 5823</span> </div>
-<div class="line"><a name="l05824"></a><span class="lineno"> 5824</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & NFFT_SORT_NODES)</div>
-<div class="line"><a name="l05825"></a><span class="lineno"> 5825</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735" title="Index array for nodes x used when flag NFFT_SORT_NODES is set.">index_x</a>);</div>
-<div class="line"><a name="l05826"></a><span class="lineno"> 5826</span> </div>
-<div class="line"><a name="l05827"></a><span class="lineno"> 5827</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FFTW_INIT)</div>
-<div class="line"><a name="l05828"></a><span class="lineno"> 5828</span> {</div>
-<div class="line"><a name="l05829"></a><span class="lineno"> 5829</span> <span class="preprocessor">#pragma omp critical (nfft_omp_critical_fftw_plan)</span></div>
-<div class="line"><a name="l05830"></a><span class="lineno"> 5830</span> <span class="preprocessor"></span>{</div>
-<div class="line"><a name="l05831"></a><span class="lineno"> 5831</span> fftw_destroy_plan(ths->my_fftw_plan2);</div>
-<div class="line"><a name="l05832"></a><span class="lineno"> 5832</span> fftw_destroy_plan(ths->my_fftw_plan1);</div>
-<div class="line"><a name="l05833"></a><span class="lineno"> 5833</span> }</div>
-<div class="line"><a name="l05834"></a><span class="lineno"> 5834</span> </div>
-<div class="line"><a name="l05835"></a><span class="lineno"> 5835</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & FFT_OUT_OF_PLACE)</div>
-<div class="line"><a name="l05836"></a><span class="lineno"> 5836</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>);</div>
-<div class="line"><a name="l05837"></a><span class="lineno"> 5837</span> </div>
-<div class="line"><a name="l05838"></a><span class="lineno"> 5838</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>);</div>
-<div class="line"><a name="l05839"></a><span class="lineno"> 5839</span> }</div>
-<div class="line"><a name="l05840"></a><span class="lineno"> 5840</span> </div>
-<div class="line"><a name="l05841"></a><span class="lineno"> 5841</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l05842"></a><span class="lineno"> 5842</span> {</div>
-<div class="line"><a name="l05843"></a><span class="lineno"> 5843</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_g</a>);</div>
-<div class="line"><a name="l05844"></a><span class="lineno"> 5844</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a2ed144cf7d6043a93c07b6f6ba7bbe2a" title="Indices in source/target vector for PRE_FULL_PSI.">psi_index_f</a>);</div>
-<div class="line"><a name="l05845"></a><span class="lineno"> 5845</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>);</div>
-<div class="line"><a name="l05846"></a><span class="lineno"> 5846</span> }</div>
-<div class="line"><a name="l05847"></a><span class="lineno"> 5847</span> </div>
-<div class="line"><a name="l05848"></a><span class="lineno"> 5848</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l05849"></a><span class="lineno"> 5849</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>);</div>
-<div class="line"><a name="l05850"></a><span class="lineno"> 5850</span> </div>
-<div class="line"><a name="l05851"></a><span class="lineno"> 5851</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FG_PSI)</div>
-<div class="line"><a name="l05852"></a><span class="lineno"> 5852</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>);</div>
-<div class="line"><a name="l05853"></a><span class="lineno"> 5853</span> </div>
-<div class="line"><a name="l05854"></a><span class="lineno"> 5854</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l05855"></a><span class="lineno"> 5855</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>);</div>
-<div class="line"><a name="l05856"></a><span class="lineno"> 5856</span> </div>
-<div class="line"><a name="l05857"></a><span class="lineno"> 5857</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l05858"></a><span class="lineno"> 5858</span> {</div>
-<div class="line"><a name="l05859"></a><span class="lineno"> 5859</span> <span class="keywordflow">for</span>(t=0; t<ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l05860"></a><span class="lineno"> 5860</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>[t]);</div>
-<div class="line"><a name="l05861"></a><span class="lineno"> 5861</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce" title="Precomputed data for the diagonal matrix , size \ is doubles.">c_phi_inv</a>);</div>
-<div class="line"><a name="l05862"></a><span class="lineno"> 5862</span> }</div>
-<div class="line"><a name="l05863"></a><span class="lineno"> 5863</span> </div>
-<div class="line"><a name="l05864"></a><span class="lineno"> 5864</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & MALLOC_F)</div>
-<div class="line"><a name="l05865"></a><span class="lineno"> 5865</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>);</div>
-<div class="line"><a name="l05866"></a><span class="lineno"> 5866</span> </div>
-<div class="line"><a name="l05867"></a><span class="lineno"> 5867</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & MALLOC_F_HAT)</div>
-<div class="line"><a name="l05868"></a><span class="lineno"> 5868</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>);</div>
-<div class="line"><a name="l05869"></a><span class="lineno"> 5869</span> </div>
-<div class="line"><a name="l05870"></a><span class="lineno"> 5870</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & MALLOC_X)</div>
-<div class="line"><a name="l05871"></a><span class="lineno"> 5871</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>);</div>
-<div class="line"><a name="l05872"></a><span class="lineno"> 5872</span> </div>
-<div class="line"><a name="l05873"></a><span class="lineno"> 5873</span> WINDOW_HELP_FINALIZE;</div>
-<div class="line"><a name="l05874"></a><span class="lineno"> 5874</span> </div>
-<div class="line"><a name="l05875"></a><span class="lineno"> 5875</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a09340f6465c23f3d94636f4f0da30f8a" title="oversampling-factor">sigma</a>);</div>
-<div class="line"><a name="l05876"></a><span class="lineno"> 5876</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>);</div>
-<div class="line"><a name="l05877"></a><span class="lineno"> 5877</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>);</div>
-<div class="line"><a name="l05878"></a><span class="lineno"> 5878</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft__benchomp_8c_source.html b/doc/api/html/nfft__benchomp_8c_source.html
deleted file mode 100644
index 7f6c860..0000000
--- a/doc/api/html/nfft__benchomp_8c_source.html
+++ /dev/null
@@ -1,640 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft_benchomp.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft_benchomp.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <unistd.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <<a class="code" href="nfft3_8h.html">nfft3.h</a>></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#define NREPEAT 5</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">static</span> FILE* file_out_tex = NULL;</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keywordtype">int</span> get_nthreads_array(<span class="keywordtype">int</span> **arr)</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> {</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">int</span> max_threads = nfft_get_omp_num_threads();</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> alloc_num = 2;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">int</span> ret_number = 0;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keywordtype">int</span> max_threads_pw2 = (max_threads / 2) * 2 == max_threads ? 1 : 0;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordflow">if</span> (max_threads <= 5)</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> *arr = (<span class="keywordtype">int</span>*) malloc(max_threads*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">for</span> (k = 0; k < max_threads; k++)</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> *(*arr + k) = k+1;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">return</span> max_threads;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> }</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">for</span> (k = 1; k <= max_threads; k*=2, alloc_num++);</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> *arr = (<span class="keywordtype">int</span>*) malloc(alloc_num*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">for</span> (k = 1; k <= max_threads; k*=2)</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> {</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">if</span> (k != max_threads && 2*k > max_threads && max_threads_pw2)</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> {</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> *(*arr + ret_number) = max_threads/2;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> ret_number++;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> }</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> *(*arr + ret_number) = k;</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> ret_number++;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">if</span> (k != max_threads && 2*k > max_threads)</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> {</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> *(*arr + ret_number) = max_threads;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> ret_number++;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> }</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> }</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">return</span> ret_number;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> } </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">void</span> check_result_value(<span class="keyword">const</span> <span class="keywordtype">int</span> val, <span class="keyword">const</span> <span class="keywordtype">int</span> ok, <span class="keyword">const</span> <span class="keywordtype">char</span> *msg)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> {</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">if</span> (val != ok)</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> {</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> fprintf(stderr, <span class="stringliteral">"ERROR %s: %d not %d\n"</span>, msg, val, ok);</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> exit(1);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> }</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">void</span> run_test_create(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> trafo_adjoint, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">double</span> sigma)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> {</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">char</span> cmd[1025];</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">if</span> (d==1)</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> snprintf(cmd, 1024, <span class="stringliteral">"./nfft_benchomp_createdataset %d %d %d %d %lg > nfft_benchomp_test.data"</span>, d, trafo_adjoint, N, M, sigma);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (d==2) </div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> snprintf(cmd, 1024, <span class="stringliteral">"./nfft_benchomp_createdataset %d %d %d %d %d %lg > nfft_benchomp_test.data"</span>, d, trafo_adjoint, N, N, M, sigma);</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (d==3) </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> snprintf(cmd, 1024, <span class="stringliteral">"./nfft_benchomp_createdataset %d %d %d %d %d %d %lg > nfft_benchomp_test.data"</span>, d, trafo_adjoint, N, N, N, M, sigma);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (d==4) </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> snprintf(cmd, 1024, <span class="stringliteral">"./nfft_benchomp_createdataset %d %d %d %d %d %d %d %lg > nfft_benchomp_test.data"</span>, d, trafo_adjoint, N, N, N, N, M, sigma);</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> exit(1);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> fprintf(stderr, <span class="stringliteral">"%s\n"</span>, cmd);</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> check_result_value(system(cmd), 0, <span class="stringliteral">"createdataset"</span>);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">void</span> run_test_init_output()</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> {</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> FILE *f = fopen(<span class="stringliteral">"nfft_benchomp_test.result"</span>, <span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordflow">if</span> (f!= NULL)</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> fclose(f);</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> }</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"><a class="code" href="structs__param.html"> 110</a></span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> {</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordtype">int</span> d;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordtype">int</span> trafo_adjoint;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordtype">int</span> N;</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">int</span> M;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">double</span> sigma;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordtype">int</span> m;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">int</span> flags;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> } <a class="code" href="structs__param.html">s_param</a>;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
-<div class="line"><a name="l00121"></a><span class="lineno"><a class="code" href="structs__resval.html"> 121</a></span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> {</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordtype">double</span> avg;</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keywordtype">double</span> min;</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordtype">double</span> max;</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> } <a class="code" href="structs__resval.html">s_resval</a>;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"><a class="code" href="structs__result.html"> 128</a></span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> {</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordtype">int</span> nthreads;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <a class="code" href="structs__resval.html">s_resval</a> resval[6];</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> } <a class="code" href="structs__result.html">s_result</a>;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div>
-<div class="line"><a name="l00134"></a><span class="lineno"><a class="code" href="structs__testset.html"> 134</a></span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> {</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <a class="code" href="structs__param.html">s_param</a> param;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <a class="code" href="structs__result.html">s_result</a> *results;</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordtype">int</span> nresults;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> } <a class="code" href="structs__testset.html">s_testset</a>;</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="keywordtype">void</span> run_test(<a class="code" href="structs__resval.html">s_resval</a> *res, <span class="keywordtype">int</span> nrepeat, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> flags, <span class="keywordtype">int</span> nthreads)</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> {</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordtype">char</span> cmd[1025];</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordtype">int</span> r,t;</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="keywordflow">for</span> (t = 0; t < 6; t++)</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> {</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> res[t].avg = 0.0; res[t].min = 1.0/0.0; res[t].max = 0.0;</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> }</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="keywordflow">if</span> (nthreads < 2)</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> snprintf(cmd, 1024, <span class="stringliteral">"./nfft_benchomp_detail_single %d %d < nfft_benchomp_test.data > nfft_benchomp_test.out"</span>, m, flags);</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> snprintf(cmd, 1024, <span class="stringliteral">"./nfft_benchomp_detail_threads %d %d %d < nfft_benchomp_test.data > nfft_benchomp_test.out"</span>, m, flags, nthreads);</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> fprintf(stderr, <span class="stringliteral">"%s\n"</span>, cmd);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> check_result_value(system(cmd), 0, cmd);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="keywordflow">for</span> (r = 0; r < nrepeat; r++)</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> {</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordtype">int</span> retval;</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="keywordtype">double</span> v[6];</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> FILE *f;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> check_result_value(system(cmd), 0, cmd);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> f = fopen(<span class="stringliteral">"nfft_benchomp_test.out"</span>, <span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> retval = fscanf(f, <span class="stringliteral">"%lg %lg %lg %lg %lg %lg"</span>, v, v+1, v+2, v+3, v+4, v+5);</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> check_result_value(retval, 6, <span class="stringliteral">"read nfft_benchomp_test.out"</span>);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> fclose(f);</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> </div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="keywordflow">for</span> (t = 0; t < 6; t++)</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> {</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> res[t].avg += v[t];</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">if</span> (res[t].min > v[t])</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> res[t].min = v[t];</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">if</span> (res[t].max < v[t])</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> res[t].max = v[t];</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> }</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> }</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">for</span> (t = 0; t < 6; t++)</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> res[t].avg /= nrepeat;</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> fprintf(stderr, <span class="stringliteral">"%d %d: "</span>, nthreads, nrepeat);</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">for</span> (t = 0; t < 6; t++)</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> fprintf(stderr, <span class="stringliteral">"%.3e %.3e %.3e | "</span>, res[t].avg, res[t].min, res[t].max);</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> fprintf(stderr, <span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> }</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *get_psi_string(<span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> {</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">if</span> (flags & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keywordflow">return</span> <span class="stringliteral">"unknownPSI"</span>;</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> </div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">return</span> <span class="stringliteral">"nopsi"</span>;</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> }</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *get_sort_string(<span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> {</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">if</span> (flags & NFFT_SORT_NODES)</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="keywordflow">return</span> <span class="stringliteral">"sorted"</span>;</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="keywordflow">return</span> <span class="stringliteral">"unsorted"</span>;</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> }</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> </div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *get_adjoint_omp_string(<span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> {</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">if</span> (flags & NFFT_OMP_BLOCKWISE_ADJOINT)</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="keywordflow">return</span> <span class="stringliteral">"blockwise"</span>;</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="keywordflow">return</span> <span class="stringliteral">""</span>;</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> }</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="preprocessor">#define MASK_D (1U<<0)</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_TA (1U<<1)</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_N (1U<<2)</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_SIGMA (1U<<3)</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_M (1U<<4)</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_WINM (1U<<5)</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FLAGS_PSI (1U<<6)</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FLAGS_SORT (1U<<7)</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FLAGS_BW (1U<<8)</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> determine_different_parameters(<a class="code" href="structs__testset.html">s_testset</a> *testsets, <span class="keywordtype">int</span> ntestsets)</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> {</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> mask = 0;</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">if</span> (ntestsets < 2)</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> </div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="keywordflow">for</span> (t = 1; t < ntestsets; t++)</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> {</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="keywordflow">if</span> (testsets[t-1].param.d != testsets[t].param.d)</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> mask |= MASK_D;</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="keywordflow">if</span> (testsets[t-1].param.trafo_adjoint != testsets[t].param.trafo_adjoint)</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> mask |= MASK_TA;</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="keywordflow">if</span> (testsets[t-1].param.N != testsets[t].param.N)</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> mask |= MASK_N;</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="keywordflow">if</span> (testsets[t-1].param.sigma != testsets[t].param.sigma)</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> mask |= MASK_SIGMA;</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">if</span> (testsets[t-1].param.M != testsets[t].param.M)</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> mask |= MASK_M;</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="keywordflow">if</span> (testsets[t-1].param.m != testsets[t].param.m)</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> mask |= MASK_WINM;</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="keywordflow">if</span> ((testsets[t-1].param.flags & PRE_ONE_PSI) != (testsets[t].param.flags & PRE_ONE_PSI))</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> mask |= MASK_FLAGS_PSI;</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="keywordflow">if</span> ((testsets[t-1].param.flags & NFFT_SORT_NODES) != (testsets[t].param.flags & NFFT_SORT_NODES))</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> mask |= MASK_FLAGS_SORT;</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="keywordflow">if</span> ((testsets[t-1].param.flags & NFFT_OMP_BLOCKWISE_ADJOINT) != (testsets[t].param.flags & NFFT_OMP_BLOCKWISE_ADJOINT))</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> mask |= MASK_FLAGS_BW;</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> }</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> </div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="keywordflow">return</span> mask;</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> }</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> </div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="keywordtype">void</span> get_plot_title(<span class="keywordtype">char</span> *outstr, <span class="keywordtype">int</span> maxlen, <span class="keywordtype">char</span> *hostname, <a class="code" href="structs__param.html">s_param</a> param, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> diff_mask)</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> {</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> mask = ~diff_mask;</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordtype">int</span> offset = 0;</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="keywordtype">int</span> len;</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> </div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> len = snprintf(outstr, maxlen, <span class="stringliteral">"%s"</span>, hostname);</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> offset += len;</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> </div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="keywordflow">if</span> (mask & MASK_D)</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> {</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" %dd"</span>, param.d);</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> offset += len;</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> }</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="keywordflow">if</span> (mask & MASK_TA)</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> {</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" $\\mathrm{NFFT}%s$"</span>, param.trafo_adjoint==0?<span class="stringliteral">""</span>:<span class="stringliteral">"^\\top"</span>);</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> offset += len;</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> }</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="keywordflow">if</span> (mask & MASK_N)</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> {</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" N=%d"</span>, param.N);</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> offset += len;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> }</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> </div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="keywordflow">if</span> (mask & MASK_SIGMA)</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> {</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" N=%g"</span>, param.sigma);</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> offset += len;</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> }</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="keywordflow">if</span> (mask & MASK_M)</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> {</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" M=%d"</span>, param.M);</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> offset += len;</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> }</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> </div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="keywordflow">if</span> (mask & MASK_WINM)</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> {</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" m=%d"</span>, param.m);</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> offset += len;</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> }</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> </div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="keywordflow">if</span> (mask & MASK_FLAGS_PSI)</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> {</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" %s"</span>, get_psi_string(param.flags));</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> offset += len;</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> }</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> </div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="keywordflow">if</span> (mask & MASK_FLAGS_SORT)</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> {</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" %s"</span>, get_sort_string(param.flags));</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> offset += len;</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> }</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> </div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="keywordflow">if</span> ((mask & MASK_FLAGS_BW) && strlen(get_adjoint_omp_string(param.flags)) > 0)</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> {</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" %s"</span>, get_adjoint_omp_string(param.flags));</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> offset += len;</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> }</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> }</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="keywordtype">void</span> print_output_speedup_total_tref(FILE *out, <a class="code" href="structs__testset.html">s_testset</a> *testsets, <span class="keywordtype">int</span> ntestsets, <span class="keywordtype">double</span> tref)</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> {</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="keywordtype">int</span> i, t;</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="keywordtype">char</span> hostname[1025];</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="keywordtype">char</span> plottitle[1025];</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> diff_mask = determine_different_parameters(testsets, ntestsets);</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> </div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="keywordflow">if</span> (gethostname(hostname, 1024) != 0)</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> strncpy(hostname, <span class="stringliteral">"unnamed"</span>, 1024);</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> </div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> get_plot_title(plottitle, 1024, hostname, testsets[0].param, diff_mask | MASK_FLAGS_SORT);</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> </div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> fprintf(out, <span class="stringliteral">"\\begin{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> fprintf(out, <span class="stringliteral">"\\begin{axis}["</span>);</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> fprintf(out, <span class="stringliteral">"width=0.9\\textwidth, height=0.6\\textwidth, x tick label style={ /pgf/number format/1000 sep=}, xlabel=Number of threads, ylabel=Speedup, xtick=data, legend style={ legend pos = north west, legend columns=1}, ymajorgrids=true, yminorgrids=true, minor y tick num=4, "</span>);</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> fprintf(out, <span class="stringliteral">" title={%s}"</span>, plottitle);</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> fprintf(out, <span class="stringliteral">" ]\n"</span>);</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> </div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="keywordflow">for</span> (t = 0; t < ntestsets; t++)</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> {</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <a class="code" href="structs__testset.html">s_testset</a> testset = testsets[t];</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> fprintf(stderr, <span class="stringliteral">"%s %dd $\\mathrm{NFFT}%s$ N=%d $\\sigma$=%g M=%d m=%d %s %s %s}"</span>, hostname, testset.param.d, testset.param.trafo_adjoint==0?<span class="stringliteral">""</span>:<span class="stringliteral">"^\\top"</span>, testset.param.N, testset.param.sigma, testset.param.M, testset.param.m, get_psi_string(testset.param.flags), get_sort_str [...]
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> fprintf(stderr, <span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> </div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="keywordflow">for</span> (i = 0; i < testset.nresults; i++)</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, tref/testset.results[i].resval[5].avg);</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> </div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="keywordflow">for</span> (i = 0; i < testset.nresults; i++)</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> {</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> fprintf(stderr, <span class="stringliteral">"%d:%.3f "</span>, testset.results[i].nthreads, tref/testset.results[i].resval[5].avg);</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> }</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> fprintf(stderr, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> }</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> </div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> fprintf(out, <span class="stringliteral">"\\legend{{"</span>);</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="keywordflow">for</span> (t = 0; t < ntestsets; t++)</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> {</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="keywordtype">char</span> title[256];</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="keywordflow">if</span> (t > 0)</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> fprintf(out, <span class="stringliteral">"},{"</span>);</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> get_plot_title(title, 255, <span class="stringliteral">""</span>, testsets[t].param, ~(diff_mask | MASK_FLAGS_SORT));</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> fprintf(out, <span class="stringliteral">"%s"</span>, title);</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> }</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> fprintf(out, <span class="stringliteral">"}}\n"</span>);</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> fprintf(out, <span class="stringliteral">"\\end{axis}\n"</span>);</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> fprintf(out, <span class="stringliteral">"\\end{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> fprintf(out, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> </div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> fflush(out);</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> }</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> </div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="keywordtype">void</span> print_output_speedup_total(FILE *out, <a class="code" href="structs__testset.html">s_testset</a> *testsets, <span class="keywordtype">int</span> ntestsets)</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> {</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="keywordtype">double</span> tref = 1.0/0.0;</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="keywordtype">int</span> t, k;</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> </div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="keywordflow">for</span> (t = 0; t < ntestsets; t++)</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="keywordflow">for</span> (k = 0; k < testsets[t].nresults; k++)</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="keywordflow">if</span> (testsets[t].results[k].nthreads == 1 && testsets[t].results[k].resval[5].avg < tref)</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> tref = testsets[t].results[k].resval[5].avg;</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> </div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> print_output_speedup_total_tref(out, testsets, ntestsets, tref);</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> }</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> </div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="keywordtype">void</span> print_output_histo_DFBRT(FILE *out, <a class="code" href="structs__testset.html">s_testset</a> testset)</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> {</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="keywordtype">int</span> i, size = testset.nresults;</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="keywordtype">char</span> hostname[1025];</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> </div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="keywordflow">if</span> (gethostname(hostname, 1024) != 0)</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> strncpy(hostname, <span class="stringliteral">"unnamed"</span>, 1024);</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> </div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> fprintf(out, <span class="stringliteral">"\\begin{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> fprintf(out, <span class="stringliteral">"\\begin{axis}["</span>);</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> fprintf(out, <span class="stringliteral">"width=0.9\\textwidth, height=0.6\\textwidth, "</span>);</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> fprintf(out, <span class="stringliteral">"symbolic x coords={"</span>);</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="keywordflow">if</span> (i > 0)</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> fprintf(out, <span class="stringliteral">",%d"</span>, testset.results[i].nthreads);</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> fprintf(out, <span class="stringliteral">"%d"</span>, testset.results[i].nthreads);</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> fprintf(stderr, <span class="stringliteral">"FLAGS: %d\n"</span>, testset.param.flags);</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> </div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> fprintf(out, <span class="stringliteral">"}, x tick label style={ /pgf/number format/1000 sep=}, xlabel=Number of threads, ylabel=Time in s, xtick=data, legend style={legend columns=-1}, ybar, bar width=7pt, ymajorgrids=true, yminorgrids=true, minor y tick num=1, "</span>);</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> fprintf(out, <span class="stringliteral">" title={%s %dd $\\mathrm{NFFT}%s$ N=%d $\\sigma$=%g M=%d m=%d %s %s %s}"</span>, hostname, testset.param.d, testset.param.trafo_adjoint==0?<span class="stringliteral">""</span>:<span class="stringliteral">"^\\top"</span>, testset.param.N, testset.param.sigma, testset.param.M, testset.param.m, get_psi_string(testset.param.flags), get_sort_ [...]
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> fprintf(out, <span class="stringliteral">" ]\n"</span>);</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[1].avg);</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> </div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[2].avg);</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> </div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[3].avg);</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> </div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[0].avg + testset.results[i].resval[4].avg);</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> </div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[5].avg);</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> fprintf(out, <span class="stringliteral">"\\legend{D,F,B,rest,total}\n"</span>);</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> fprintf(out, <span class="stringliteral">"\\end{axis}\n"</span>);</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> fprintf(out, <span class="stringliteral">"\\end{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> fprintf(out, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> </div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> fflush(out);</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> }</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> </div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="keywordtype">void</span> run_testset(<a class="code" href="structs__testset.html">s_testset</a> *testset, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> trafo_adjoint, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">double</span> sigma, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> [...]
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> {</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="keywordtype">int</span> i;</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> testset->param.d = d;</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> testset->param.trafo_adjoint = trafo_adjoint;</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> testset->param.N = N;</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> testset->param.M = M;</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> testset->param.sigma = sigma;</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> testset->param.m = m;</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> testset->param.flags = flags;</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> </div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> testset->results = (<a class="code" href="structs__result.html">s_result</a>*) malloc(n_threads_array_size*<span class="keyword">sizeof</span>(<a class="code" href="structs__result.html">s_result</a>));</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> testset->nresults = n_threads_array_size;</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> </div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> run_test_create(testset->param.d, testset->param.trafo_adjoint, testset->param.N, testset->param.M, testset->param.sigma);</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="keywordflow">for</span> (i = 0; i < n_threads_array_size; i++)</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> {</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> testset->results[i].nthreads = nthreads_array[i];</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> run_test(testset->results[i].resval, NREPEAT, testset->param.m, testset->param.flags, testset->results[i].nthreads = nthreads_array[i]);</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> }</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> </div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> }</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> </div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="keywordtype">void</span> test1(<span class="keywordtype">int</span> *nthreads_array, <span class="keywordtype">int</span> n_threads_array_size, <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> {</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <a class="code" href="structs__testset.html">s_testset</a> testsets[15];</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> </div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> run_testset(&testsets[0], 1, 0, 2097152, 2097152, 2.0, m, 0, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[0]);</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> run_testset(&testsets[1], 1, 0, 2097152, 2097152, 2.0, m, NFFT_SORT_NODES, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[1]);</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> print_output_speedup_total(file_out_tex, testsets, 2);</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> </div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> run_testset(&testsets[2], 1, 1, 2097152, 2097152, 2.0, m, 0, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[2]);</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> run_testset(&testsets[3], 1, 1, 2097152, 2097152, 2.0, m, NFFT_SORT_NODES, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[3]);</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> run_testset(&testsets[4], 1, 1, 2097152, 2097152, 2.0, m, NFFT_SORT_NODES | NFFT_OMP_BLOCKWISE_ADJOINT, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[4]);</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> print_output_speedup_total(file_out_tex, testsets+2, 3);</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> </div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> run_testset(&testsets[5], 2, 0, 1024, 1048576, 2.0, m, 0, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[5]);</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> run_testset(&testsets[6], 2, 0, 1024, 1048576, 2.0, m, NFFT_SORT_NODES, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[6]);</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> print_output_speedup_total(file_out_tex, testsets+5, 2);</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> </div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> run_testset(&testsets[7], 2, 1, 1024, 1048576, 2.0, m, 0, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[7]);</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> run_testset(&testsets[8], 2, 1, 1024, 1048576, 2.0, m, NFFT_SORT_NODES, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[8]);</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> run_testset(&testsets[9], 2, 1, 1024, 1048576, 2.0, m, NFFT_SORT_NODES | NFFT_OMP_BLOCKWISE_ADJOINT, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[9]);</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> print_output_speedup_total(file_out_tex, testsets+7, 3);</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> </div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> run_testset(&testsets[10], 3, 0, 128, 2097152, 2.0, m, 0, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[10]);</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> run_testset(&testsets[11], 3, 0, 128, 2097152, 2.0, m, NFFT_SORT_NODES, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[11]);</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> print_output_speedup_total(file_out_tex, testsets+10, 2);</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> </div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> run_testset(&testsets[12], 3, 1, 128, 2097152, 2.0, m, 0, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[12]);</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> run_testset(&testsets[13], 3, 1, 128, 2097152, 2.0, m, NFFT_SORT_NODES, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[13]);</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> run_testset(&testsets[14], 3, 1, 128, 2097152, 2.0, m, NFFT_SORT_NODES | NFFT_OMP_BLOCKWISE_ADJOINT, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="preprocessor"></span> print_output_histo_DFBRT(file_out_tex, testsets[14]);</div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> print_output_speedup_total(file_out_tex, testsets+12, 3);</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> </div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> }</div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> </div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>** argv)</div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> {</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="keywordtype">int</span> *nthreads_array;</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="keywordtype">int</span> n_threads_array_size = get_nthreads_array(&nthreads_array);</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> </div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="preprocessor">#if !(defined MEASURE_TIME && defined MEASURE_TIME_FFTW)</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="preprocessor"></span> fprintf(stderr, <span class="stringliteral">"WARNING: Detailed time measurements for NFFT are not activated.\n"</span>);</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> fprintf(stderr, <span class="stringliteral">"For more detailed plots, please re-run the configure script with options\n"</span>);</div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> fprintf(stderr, <span class="stringliteral">"--enable-measure-time --enable-measure-time-fftw --enable-openmp\n"</span>);</div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> fprintf(stderr, <span class="stringliteral">"and run \"make clean all\"\n\n"</span>);</div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="keywordflow">for</span> (k = 0; k < n_threads_array_size; k++)</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> fprintf(stderr, <span class="stringliteral">"%d "</span>, nthreads_array[k]);</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> fprintf(stderr, <span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> </div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> file_out_tex = fopen(<span class="stringliteral">"nfft_benchomp_results_plots.tex"</span>, <span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> </div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> test1(nthreads_array, n_threads_array_size, 2);</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> test1(nthreads_array, n_threads_array_size, 4);</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> test1(nthreads_array, n_threads_array_size, 6);</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> </div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> fclose(file_out_tex);</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> </div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft__benchomp__createdataset_8c_source.html b/doc/api/html/nfft__benchomp__createdataset_8c_source.html
deleted file mode 100644
index 4f0df98..0000000
--- a/doc/api/html/nfft__benchomp__createdataset_8c_source.html
+++ /dev/null
@@ -1,193 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft_benchomp_createdataset.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft_benchomp_createdataset.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3372 2009-10-21 06:04:05Z skunis $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keywordtype">void</span> nfft_benchomp_createdataset(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> d, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> trafo_adjoint, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M, <span class="keywordtype">double</span> sigma)</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> n[d];</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">int</span> t, j;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> R *x;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> C *f, *f_hat;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">int</span> N_total = 1;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">for</span> (t = 0; t < d; t++)</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> N_total *= N[t];</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> x = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(d*M*<span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> f = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> f_hat = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(N_total*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> n[t] = sigma*nfft_next_power_of_2(N[t]);</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(x,d*M);</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">if</span> (trafo_adjoint==0)</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> {</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(f_hat,N_total);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> }</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> {</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(f,M);</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> }</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> printf(<span class="stringliteral">"%d %d "</span>, d, trafo_adjoint);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> printf(<span class="stringliteral">"%d "</span>, N[t]);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> printf(<span class="stringliteral">"%d "</span>, n[t]);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> printf(<span class="stringliteral">"%d\n"</span>, M);</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">for</span> (j=0; j < M; j++)</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> {</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">for</span> (t=0; t < d; t++)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> printf(<span class="stringliteral">"%.16e "</span>, x[d*j+t]);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> }</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">if</span> (trafo_adjoint==0)</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> {</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">for</span> (j=0; j < N_total; j++)</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> printf(<span class="stringliteral">"%.16e %.16e\n"</span>, creal(f_hat[j]), cimag(f_hat[j]));</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> }</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> {</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">for</span> (j=0; j < M; j++)</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> printf(<span class="stringliteral">"%.16e %.16e\n"</span>, creal(f[j]), cimag(f[j]));</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> }</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> }</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> {</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordtype">int</span> d;</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="keywordtype">int</span> *N;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordtype">int</span> M;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordtype">int</span> trafo_adjoint;</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">double</span> sigma;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">if</span> (argc < 6) {</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> fprintf(stderr, <span class="stringliteral">"usage: d tr_adj N_1 ... N_d M sigma\n"</span>);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> }</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> d = atoi(argv[1]);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> fprintf(stderr, <span class="stringliteral">"d=%d"</span>, d);</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">if</span> (d < 1 || argc < 5+d) {</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> fprintf(stderr, <span class="stringliteral">"usage: d tr_adj N_1 ... N_d M sigma\n"</span>);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> }</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> N = malloc(d*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> trafo_adjoint = atoi(argv[2]);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">if</span> (trafo_adjoint < 0 && trafo_adjoint > 1)</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> trafo_adjoint = 1;</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> fprintf(stderr, <span class="stringliteral">", tr_adj=%d, N="</span>, trafo_adjoint);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> N[t] = atoi(argv[3+t]);</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> fprintf(stderr, <span class="stringliteral">"%d "</span>,N[t]);</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> M = atoi(argv[3+d]);</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> sigma = atof(argv[4+d]);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> fprintf(stderr, <span class="stringliteral">", M=%d, sigma=%.16g\n"</span>, M, sigma);</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> nfft_benchomp_createdataset(d, trafo_adjoint, N, M, sigma);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> free(N);</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> </div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft__benchomp__detail_8c_source.html b/doc/api/html/nfft__benchomp__detail_8c_source.html
deleted file mode 100644
index 286a681..0000000
--- a/doc/api/html/nfft__benchomp__detail_8c_source.html
+++ /dev/null
@@ -1,201 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft_benchomp_detail.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft_benchomp_detail.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3372 2009-10-21 06:04:05Z skunis $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor"></span><span class="preprocessor">#include <omp.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">void</span> bench_openmp(FILE *infile, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> psi_flag)</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> {</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">int</span> *N;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keywordtype">int</span> *n;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">int</span> M, d, trafo_adjoint;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">int</span> t, j;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordtype">double</span> re,im;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> ticks t0, t1;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">double</span> tt_total, tt_preonepsi;</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> fscanf(infile, <span class="stringliteral">"%d %d"</span>, &d, &trafo_adjoint);</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> N = malloc(d*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> n = malloc(d*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> fscanf(infile, <span class="stringliteral">"%d"</span>, N+t);</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">for</span> (t=0; t<d; t++)</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> fscanf(infile, <span class="stringliteral">"%d"</span>, n+t);</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> fscanf(infile, <span class="stringliteral">"%d"</span>, &M);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor"></span> fftw_import_wisdom_from_filename(<span class="stringliteral">"nfft_benchomp_detail_threads.plan"</span>);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="preprocessor"></span> fftw_import_wisdom_from_filename(<span class="stringliteral">"nfft_benchomp_detail_single.plan"</span>);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> nfft_init_guru(&p, d, N, M, n, m,</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> PRE_PHI_HUT| psi_flag | MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor"></span> fftw_export_wisdom_to_filename(<span class="stringliteral">"nfft_benchomp_detail_threads.plan"</span>);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor"></span> fftw_export_wisdom_to_filename(<span class="stringliteral">"nfft_benchomp_detail_single.plan"</span>);</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">for</span> (j=0; j < p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> {</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">for</span> (t=0; t < p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>; t++)</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> fscanf(infile, <span class="stringliteral">"%lg"</span>, p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>+p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank">d</a>*j+t);</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> }</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">if</span> (trafo_adjoint==0)</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> {</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">for</span> (j=0; j < p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; j++)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> {</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> fscanf(infile, <span class="stringliteral">"%lg %lg"</span>, &re, &im);</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j] = re + _Complex_I * im;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> }</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> }</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> {</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">for</span> (j=0; j < p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> {</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> fscanf(infile, <span class="stringliteral">"%lg %lg"</span>, &re, &im);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = re + _Complex_I * im;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> }</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> }</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> t0 = getticks();</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">if</span>(p.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> t1 = getticks();</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> tt_preonepsi = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">if</span> (trafo_adjoint==0)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> nfft_adjoint(&p);</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> t1 = getticks();</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> tt_total = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="preprocessor">#ifndef MEASURE_TIME</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="preprocessor"></span> p.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = 0.0;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> p.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = 0.0;</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="preprocessor">#ifndef MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="preprocessor"></span> p.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = 0.0;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> printf(<span class="stringliteral">"%.6e %.6e %6e %.6e %.6e %.6e\n"</span>, tt_preonepsi, p.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0], p.<a class="code" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848" title="Measured time for each step if MEASURE_TIME is set.">MEASURE [...]
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment">// printf("%.6e\n", tt);</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> free(N);</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> free(n);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> }</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> {</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="keywordtype">int</span> m, psi_flag;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> nthreads;</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">if</span> (argc != 4)</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> nthreads = atoi(argv[3]);</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> fftw_init_threads();</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> omp_set_num_threads(nthreads);</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="preprocessor"></span> <span class="keywordflow">if</span> (argc != 3)</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> m = atoi(argv[1]);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> psi_flag = atoi(argv[2]);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> bench_openmp(stdin, m, psi_flag);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfft__times_8c_source.html b/doc/api/html/nfft__times_8c_source.html
deleted file mode 100644
index 09f8303..0000000
--- a/doc/api/html/nfft__times_8c_source.html
+++ /dev/null
@@ -1,1070 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft_times.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfft_times.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nfft_times.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">int</span> global_n;</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> global_d;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keyword">static</span> <span class="keywordtype">int</span> comp1(<span class="keyword">const</span> <span class="keywordtype">void</span> *x,<span class="keyword">const</span> <span class="keywordtype">void</span> *y)</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> {</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordflow">return</span> ((* (<span class="keywordtype">double</span>*) x)<(* (<span class="keywordtype">double</span>*) y)?-1:1);</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> }</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">static</span> <span class="keywordtype">int</span> comp2(<span class="keyword">const</span> <span class="keywordtype">void</span> *x,<span class="keyword">const</span> <span class="keywordtype">void</span> *y)</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> {</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">int</span> nx0,nx1,ny0,ny1;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> nx0=global_n*(* ((<span class="keywordtype">double</span>*)x+0));</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> nx1=global_n*(* ((<span class="keywordtype">double</span>*)x+1));</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> ny0=global_n*(* ((<span class="keywordtype">double</span>*)y+0));</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> ny1=global_n*(* ((<span class="keywordtype">double</span>*)y+1));</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">if</span>(nx0<ny0)</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordflow">if</span>(nx0==ny0)</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">if</span>(nx1<ny1)</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> }</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keyword">static</span> <span class="keywordtype">int</span> comp3(<span class="keyword">const</span> <span class="keywordtype">void</span> *x,<span class="keyword">const</span> <span class="keywordtype">void</span> *y)</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> {</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">int</span> nx0,nx1,nx2,ny0,ny1,ny2;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> nx0=global_n*(* ((<span class="keywordtype">double</span>*)x+0));</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> nx1=global_n*(* ((<span class="keywordtype">double</span>*)x+1));</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> nx2=global_n*(* ((<span class="keywordtype">double</span>*)x+2));</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> ny0=global_n*(* ((<span class="keywordtype">double</span>*)y+0));</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> ny1=global_n*(* ((<span class="keywordtype">double</span>*)y+1));</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> ny2=global_n*(* ((<span class="keywordtype">double</span>*)y+2));</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">if</span>(nx0<ny0)</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordflow">if</span>(nx0==ny0)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">if</span>(nx1<ny1)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">if</span>(nx1==ny1)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">if</span>(nx2<ny2)</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> }</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">void</span> measure_time_nfft(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N, <span class="keywordtype">unsigned</span> test_ndft)</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> {</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">int</span> r, M, NN[d], nn[d];</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordtype">double</span> t, t_fft, t_ndft, t_nfft;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> ticks t0, t1;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> fftw_plan p_fft;</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> printf(<span class="stringliteral">"\\verb+%d+&\t"</span>,(<span class="keywordtype">int</span>)(log(N)/log(2)*d+0.5));</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keywordflow">for</span>(r=0,M=1;r<d;r++)</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> {</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> M=N*M;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> NN[r]=N;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> nn[r]=2*N;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> }</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> nfft_init_guru(&p, d, NN, M, nn, 2,</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> PRE_PHI_HUT|</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> PRE_FULL_PSI| MALLOC_F_HAT| MALLOC_X| MALLOC_F|</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> p_fft=fftw_plan_dft(d, NN, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, FFTW_FORWARD, FFTW_MEASURE);</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka [...]
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> global_n=nn[0];</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> global_d=d;</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">switch</span>(d)</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> {</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">case</span> 1: { qsort(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>,d*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>),comp1); <sp [...]
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keywordflow">case</span> 2: { qsort(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>,d*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>),comp2); <sp [...]
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">case</span> 3: { qsort(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>,d*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>),comp3); <sp [...]
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> }</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d2 [...]
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> t_fft=0;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> r=0;</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">while</span>(t_fft<1)</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> {</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> r++;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> t0 = getticks();</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> fftw_execute(p_fft);</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> t1 = getticks();</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> t_fft+=t;</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> t_fft/=r;</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="comment">// printf("\\verb+%.1e+ & \\verb+(%.1f)+ &\t",t_fft,t_fft/(p.N_total*(log(N)/log(2)*d))*auxC);</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> printf(<span class="stringliteral">"\\verb+%.1e+ &\t"</span>,t_fft);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> {</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> t_ndft=0;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> r=0;</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="keywordflow">while</span>(t_ndft<1)</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> {</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> r++;</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> t0 = getticks();</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> nfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> t1 = getticks();</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> t_ndft+=t;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> }</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> t_ndft/=r;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="comment">//printf("\\verb+%.1e+ & \\verb+(%d)+&\t",t_ndft,(int)round(t_ndft/(p.N_total*p.N_total)*auxC));</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> printf(<span class="stringliteral">"\\verb+%.1e+ &\t"</span>,t_ndft);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> }</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="comment">// printf("\\verb+*+\t&\t&\t");</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> printf(<span class="stringliteral">"\\verb+*+\t&\t"</span>);</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> t_nfft=0;</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> r=0;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="keywordflow">while</span>(t_nfft<1)</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> {</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> r++;</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> t0 = getticks();</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">switch</span>(d)</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> {</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">case</span> 1: { nfft_trafo_1d(&p); <span class="keywordflow">break</span>; }</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">case</span> 2: { nfft_trafo_2d(&p); <span class="keywordflow">break</span>; }</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">case</span> 3: { nfft_trafo_3d(&p); <span class="keywordflow">break</span>; }</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="keywordflow">default</span>: <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> }</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> t1 = getticks();</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> t_nfft+=t;</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> }</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> t_nfft/=r;</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> </div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment">// printf("\\verb+%.1e+ & \\verb+(%d)+ & \\verb+(%.1e)+\\\\\n",t_nfft,(int)round(t_nfft/(p.N_total*(log(N)/log(2)*d))*auxC),t_nfft/t_fft);</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> printf(<span class="stringliteral">"\\verb+%.1e+ & \\verb+(%3.1f)+\\\\\n"</span>,t_nfft,t_nfft/t_fft);</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> fftw_destroy_plan(p_fft);</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> }</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordtype">void</span> measure_time_nfft_XXX2(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N, <span class="keywordtype">unsigned</span> test_ndft)</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> {</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordtype">int</span> r, M, NN[d], nn[d];</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="keywordtype">double</span> t, t_fft, t_ndft, t_nfft;</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> ticks t0, t1;</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> fftw_plan p_fft;</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> printf(<span class="stringliteral">"%d\t"</span>,(<span class="keywordtype">int</span>)(log(N)/log(2)*d+0.5)); fflush(stdout);</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordflow">for</span>(r=0,M=1;r<d;r++)</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> {</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> M=N*M;</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> NN[r]=N;</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> nn[r]=2*N;</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> }</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> nfft_init_guru(&p, d, NN, M, nn, 2,</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> PRE_PHI_HUT|</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> PRE_PSI|</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> MALLOC_F_HAT| MALLOC_X| MALLOC_F|</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> p_fft=fftw_plan_dft(d, NN, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, FFTW_FORWARD, FFTW_MEASURE);</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordtype">double</span> _Complex *swapndft=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka [...]
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> </div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> qsort(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>,d*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>),comp1);</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="comment">//nfft_vpr_double(p.x,p.M_total,"nodes x");</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> </div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d2 [...]
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> </div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> t_fft=0;</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> r=0;</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">while</span>(t_fft<0.1)</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> {</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> r++;</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> t0 = getticks();</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> fftw_execute(p_fft);</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> t1 = getticks();</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> t_fft+=t;</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> }</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> t_fft/=r;</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> </div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_fft);</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> {</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> t_ndft=0;</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> r=0;</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="keywordflow">while</span>(t_ndft<0.1)</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> {</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> r++;</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> t0 = getticks();</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> nfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> t1 = getticks();</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> t_ndft+=t;</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> }</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> t_ndft/=r;</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_ndft);</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> }</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> printf(<span class="stringliteral">"\t"</span>);</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> </div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> t_nfft=0;</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> r=0;</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> {</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> r++;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> t0 = getticks();</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> t1 = getticks();</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> t_nfft+=t;</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> }</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> t_nfft/=r;</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>));</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> </div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> t_nfft=0;</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> r=0;</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> {</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> r++;</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> t0 = getticks();</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> nfft_trafo_1d(&p);</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> t1 = getticks();</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> t_nfft+=t;</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> }</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> t_nfft/=r;</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>));</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> </div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> </div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swapndft);</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> fftw_destroy_plan(p_fft);</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> }</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> </div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="keywordtype">void</span> measure_time_nfft_XXX3(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N, <span class="keywordtype">unsigned</span> test_ndft)</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> {</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="keywordtype">int</span> r, M, NN[d], nn[d];</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="keywordtype">double</span> t, t_fft, t_ndft, t_nfft;</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> ticks t0, t1;</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> </div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> fftw_plan p_fft;</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> </div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> printf(<span class="stringliteral">"%d\t"</span>,(<span class="keywordtype">int</span>)(log(N)/log(2)*d+0.5)); fflush(stdout);</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> </div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="keywordflow">for</span>(r=0,M=1;r<d;r++)</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> {</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> M=N*M;</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> NN[r]=N;</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> nn[r]=2*N;</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> }</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> </div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> nfft_init_guru(&p, d, NN, M, nn, 2,</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> PRE_PHI_HUT|</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> PRE_PSI|</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> MALLOC_F_HAT| MALLOC_X| MALLOC_F|</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> </div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> p_fft=fftw_plan_dft(d, NN, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, FFTW_BACKWARD, FFTW_MEASURE);</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> </div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="keywordtype">double</span> _Complex *swapndft=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> [...]
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka [...]
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> </div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> qsort(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>,d*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>),comp1);</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="comment">//nfft_vpr_double(p.x,p.M_total,"nodes x");</span></div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> </div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> </div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total n [...]
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> </div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> t_fft=0;</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> r=0;</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="keywordflow">while</span>(t_fft<0.1)</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> {</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> r++;</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> t0 = getticks();</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> fftw_execute(p_fft);</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> t1 = getticks();</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> t_fft+=t;</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> }</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> t_fft/=r;</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> </div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_fft);</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> </div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> {</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,swapndft);</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> t_ndft=0;</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> r=0;</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="keywordflow">while</span>(t_ndft<0.1)</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> {</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> r++;</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> t0 = getticks();</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> nfft_adjoint_direct(&p);</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> t1 = getticks();</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> t_ndft+=t;</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> }</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> t_ndft/=r;</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_ndft);</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,swapndft);</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> }</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> printf(<span class="stringliteral">"\t"</span>);</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> </div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> t_nfft=0;</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> r=0;</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> {</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> r++;</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> t0 = getticks();</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> nfft_adjoint(&p);</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> t1 = getticks();</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> t_nfft+=t;</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> }</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> t_nfft/=r;</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>));</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> </div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> t_nfft=0;</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> r=0;</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> {</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> r++;</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> t0 = getticks();</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> nfft_adjoint_1d(&p);</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> t1 = getticks();</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> t_nfft+=t;</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> }</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> t_nfft/=r;</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>));</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> </div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> </div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swapndft);</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> fftw_destroy_plan(p_fft);</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> }</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> </div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> </div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> </div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> </div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="keywordtype">void</span> measure_time_nfft_XXX4(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N, <span class="keywordtype">unsigned</span> test_ndft)</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> {</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="keywordtype">int</span> r, M, NN[d], nn[d];</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="keywordtype">double</span> t, t_fft, t_ndft, t_nfft;</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> ticks t0, t1;</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> </div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> fftw_plan p_fft;</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> printf(<span class="stringliteral">"%d\t"</span>,(<span class="keywordtype">int</span>)(log(N)/log(2)*d+0.5)); fflush(stdout);</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> </div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="keywordflow">for</span>(r=0,M=1;r<d;r++)</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> {</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> M=N*M;</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> NN[r]=N;</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> nn[r]=2*N;</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> }</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> </div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> nfft_init_guru(&p, d, NN, M, nn, 4,</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> PRE_PHI_HUT|</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> PRE_PSI|</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> MALLOC_F_HAT| MALLOC_X| MALLOC_F|</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> </div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> p_fft=fftw_plan_dft(d, NN, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, FFTW_FORWARD, FFTW_MEASURE);</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> </div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="keywordtype">double</span> _Complex *swapndft=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> </div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka [...]
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> </div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="comment">//for(j=0;j<2*M;j+=2)</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="comment">// p.x[j]=0.5*p.x[j]+0.25*(p.x[j]>=0?1:-1);</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> </div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="comment">//qsort(p.x,p.M_total,d*sizeof(double),comp1);</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="comment">//nfft_vpr_double(p.x,p.M_total,"nodes x");</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> </div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> </div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d2 [...]
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> </div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> t_fft=0;</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> r=0;</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="keywordflow">while</span>(t_fft<0.1)</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> {</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> r++;</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> t0 = getticks();</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> fftw_execute(p_fft);</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> t1 = getticks();</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> t_fft+=t;</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> }</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> t_fft/=r;</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> </div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_fft);</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> </div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d2 [...]
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> </div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> {</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> t_ndft=0;</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> r=0;</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="keywordflow">while</span>(t_ndft<0.1)</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> {</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> r++;</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> t0 = getticks();</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> nfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> t1 = getticks();</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> t_ndft+=t;</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> }</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> t_ndft/=r;</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_ndft);</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> </div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="comment">//printf("f=%e+i%e\t",creal(p.f[0]),cimag(p.f[0]));</span></div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> </div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> }</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> printf(<span class="stringliteral">"\t"</span>);</div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> </div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> t_nfft=0;</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> r=0;</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> {</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> r++;</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> t0 = getticks();</div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> t1 = getticks();</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> t_nfft+=t;</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> }</div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> t_nfft/=r;</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>));</div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> </div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="comment">//printf("f=%e+i%e\t",creal(p.f[0]),cimag(p.f[0]));</span></div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> </div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> t_nfft=0;</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> r=0;</div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> {</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> r++;</div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> t0 = getticks();</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> nfft_trafo_2d(&p);</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> t1 = getticks();</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> t_nfft+=t;</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> }</div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> t_nfft/=r;</div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>));</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> </div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <span class="comment">//printf("f=%e+i%e\t",creal(p.f[0]),cimag(p.f[0]));</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> </div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> </div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swapndft);</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> fftw_destroy_plan(p_fft);</div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> }</div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> </div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> </div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="keywordtype">void</span> measure_time_nfft_XXX5(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N, <span class="keywordtype">unsigned</span> test_ndft)</div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> {</div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="keywordtype">int</span> r, M, NN[d], nn[d];</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="keywordtype">double</span> t, t_fft, t_ndft, t_nfft;</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> ticks t0, t1;</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> </div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> fftw_plan p_fft;</div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> </div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> printf(<span class="stringliteral">"%d\t"</span>,(<span class="keywordtype">int</span>)(log(N)/log(2)*d+0.5)); fflush(stdout);</div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> </div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="keywordflow">for</span>(r=0,M=1;r<d;r++)</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> {</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> M=N*M;</div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> NN[r]=N;</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> nn[r]=2*N;</div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> }</div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> </div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> nfft_init_guru(&p, d, NN, M, nn, 4,</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> PRE_PHI_HUT|</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> PRE_PSI|</div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> MALLOC_F_HAT| MALLOC_X| MALLOC_F|</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> </div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> p_fft=fftw_plan_dft(d, NN, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, FFTW_FORWARD, FFTW_MEASURE);</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> </div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="keywordtype">double</span> _Complex *swapndft=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> [...]
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> </div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka [...]
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> </div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="comment">//sort_nodes(p.x,p.d,p.M_total,</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> </div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> </div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total n [...]
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> </div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> t_fft=0;</div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> r=0;</div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="keywordflow">while</span>(t_fft<0.1)</div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> {</div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> r++;</div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> t0 = getticks();</div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> fftw_execute(p_fft);</div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> t1 = getticks();</div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> t_fft+=t;</div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> }</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> t_fft/=r;</div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> </div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_fft);</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> </div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total n [...]
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> </div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> {</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,swapndft);</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> t_ndft=0;</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> r=0;</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="keywordflow">while</span>(t_ndft<0.1)</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> {</div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> r++;</div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> t0 = getticks();</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> nfft_adjoint_direct(&p);</div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> t1 = getticks();</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> t_ndft+=t;</div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> }</div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> t_ndft/=r;</div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_ndft);</div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> </div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="comment">//printf("\nf_hat=%e+i%e\t",creal(p.f_hat[0]),cimag(p.f_hat[0]));</span></div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> </div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,swapndft);</div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> }</div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> printf(<span class="stringliteral">"\t"</span>);</div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> </div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> t_nfft=0;</div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> r=0;</div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> {</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> r++;</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> t0 = getticks();</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> nfft_adjoint(&p);</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> t1 = getticks();</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> t_nfft+=t;</div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> }</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> t_nfft/=r;</div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>));</div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> </div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="comment">//printf("\nf_hat=%e+i%e\t",creal(p.f_hat[0]),cimag(p.f_hat[0]));</span></div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> </div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> t_nfft=0;</div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> r=0;</div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> {</div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> r++;</div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> t0 = getticks();</div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> nfft_adjoint_2d(&p);</div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> t1 = getticks();</div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> t_nfft+=t;</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> }</div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> t_nfft/=r;</div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>));</div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> </div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="comment">//printf("\nf_hat=%e+i%e\t",creal(p.f_hat[0]),cimag(p.f_hat[0]));</span></div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> </div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> </div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swapndft);</div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> fftw_destroy_plan(p_fft);</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> }</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> </div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> </div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> <span class="keywordtype">void</span> measure_time_nfft_XXX6(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N, <span class="keywordtype">unsigned</span> test_ndft)</div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> {</div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> <span class="keywordtype">int</span> r, M, NN[d], nn[d];</div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="keywordtype">double</span> t, t_fft, t_ndft, t_nfft;</div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> ticks t0, t1;</div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> </div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> fftw_plan p_fft;</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> </div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> printf(<span class="stringliteral">"%d\t"</span>,(<span class="keywordtype">int</span>)(log(N)/log(2)*d+0.5)); fflush(stdout);</div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> </div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> <span class="keywordflow">for</span>(r=0,M=1;r<d;r++)</div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> {</div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> M=N*M;</div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> NN[r]=N;</div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> nn[r]=2*N;</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> }</div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> </div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> nfft_init_guru(&p, d, NN, M, nn, 2,</div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> PRE_PHI_HUT|</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> FG_PSI|</div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> MALLOC_F_HAT| MALLOC_X| MALLOC_F|</div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> </div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> p_fft=fftw_plan_dft(d, NN, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, FFTW_FORWARD, FFTW_MEASURE);</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> </div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> <span class="keywordtype">double</span> _Complex *swapndft=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> </div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka [...]
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> </div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> <span class="comment">//qsort(p.x,p.M_total,d*sizeof(double),comp1);</span></div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> <span class="comment">//nfft_vpr_double(p.x,p.M_total,"nodes x");</span></div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> </div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> </div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d2 [...]
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> </div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> t_fft=0;</div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> r=0;</div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> <span class="keywordflow">while</span>(t_fft<0.1)</div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> {</div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> r++;</div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> t0 = getticks();</div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> fftw_execute(p_fft);</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> t1 = getticks();</div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> t_fft+=t;</div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> }</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> t_fft/=r;</div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> </div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_fft);</div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> </div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d2 [...]
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> </div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> {</div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> t_ndft=0;</div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> r=0;</div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="keywordflow">while</span>(t_ndft<0.1)</div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> {</div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> r++;</div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> t0 = getticks();</div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> nfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> t1 = getticks();</div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> t_ndft+=t;</div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> }</div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> t_ndft/=r;</div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_ndft);</div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> </div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="comment">//printf("f=%e+i%e\t",creal(p.f[0]),cimag(p.f[0]));</span></div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> </div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> }</div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> printf(<span class="stringliteral">"\t"</span>);</div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> </div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> t_nfft=0;</div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> r=0;</div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> {</div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> r++;</div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> t0 = getticks();</div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> t1 = getticks();</div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> t_nfft+=t;</div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> }</div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> t_nfft/=r;</div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>));</div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> </div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> <span class="comment">//printf("f=%e+i%e\t",creal(p.f[0]),cimag(p.f[0]));</span></div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> </div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> t_nfft=0;</div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> r=0;</div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> {</div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> r++;</div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> t0 = getticks();</div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> nfft_trafo_3d(&p);</div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> t1 = getticks();</div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> t_nfft+=t;</div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> }</div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> t_nfft/=r;</div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>));</div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> </div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> <span class="comment">//printf("f=%e+i%e\t",creal(p.f[0]),cimag(p.f[0]));</span></div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> </div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> </div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swapndft);</div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> fftw_destroy_plan(p_fft);</div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> }</div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> </div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> </div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> <span class="keywordtype">void</span> measure_time_nfft_XXX7(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N, <span class="keywordtype">unsigned</span> test_ndft)</div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> {</div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> <span class="keywordtype">int</span> r, M, NN[d], nn[d];</div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> <span class="keywordtype">double</span> t, t_fft, t_ndft, t_nfft;</div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> ticks t0, t1;</div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> </div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p;</div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> fftw_plan p_fft;</div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> </div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> printf(<span class="stringliteral">"%d\t"</span>,(<span class="keywordtype">int</span>)(log(N)/log(2)*d+0.5)); fflush(stdout);</div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> </div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> <span class="keywordflow">for</span>(r=0,M=1;r<d;r++)</div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> {</div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> M=N*M;</div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> NN[r]=N;</div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> nn[r]=2*N;</div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> }</div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> </div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> nfft_init_guru(&p, d, NN, M, nn, 2,</div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> PRE_PHI_HUT|</div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> FG_PSI|</div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> MALLOC_F_HAT| MALLOC_X| MALLOC_F|</div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> </div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> p_fft=fftw_plan_dft(d, NN, p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, FFTW_FORWARD, FFTW_MEASURE);</div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> </div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> <span class="keywordtype">double</span> _Complex *swapndft=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> [...]
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> </div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, p.<a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka [...]
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> </div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="comment">//sort_nodes(p.x,p.d,p.M_total,</span></div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> </div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> </div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total n [...]
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> </div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> t_fft=0;</div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> r=0;</div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> <span class="keywordflow">while</span>(t_fft<0.1)</div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> {</div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> r++;</div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> t0 = getticks();</div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> fftw_execute(p_fft);</div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> t1 = getticks();</div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> t_fft+=t;</div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> }</div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> t_fft/=r;</div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> </div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_fft);</div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> </div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total n [...]
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> </div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> {</div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,swapndft);</div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> t_ndft=0;</div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> r=0;</div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="keywordflow">while</span>(t_ndft<0.1)</div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> {</div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> r++;</div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> t0 = getticks();</div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> nfft_adjoint_direct(&p);</div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> t1 = getticks();</div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> t_ndft+=t;</div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> }</div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> t_ndft/=r;</div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_ndft);</div>
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> </div>
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="comment">//printf("\nf_hat=%e+i%e\t",creal(p.f_hat[0]),cimag(p.f_hat[0]));</span></div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> </div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,swapndft);</div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> }</div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> printf(<span class="stringliteral">"\t"</span>);</div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> </div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> t_nfft=0;</div>
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> r=0;</div>
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> {</div>
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> r++;</div>
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> t0 = getticks();</div>
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> nfft_adjoint(&p);</div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> t1 = getticks();</div>
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> t_nfft+=t;</div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> }</div>
-<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> t_nfft/=r;</div>
-<div class="line"><a name="l00928"></a><span class="lineno"> 928</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00929"></a><span class="lineno"> 929</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>));</div>
-<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> </div>
-<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <span class="comment">//printf("\nf_hat=%e+i%e\t",creal(p.f_hat[0]),cimag(p.f_hat[0]));</span></div>
-<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> </div>
-<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> t_nfft=0;</div>
-<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> r=0;</div>
-<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> {</div>
-<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> r++;</div>
-<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> t0 = getticks();</div>
-<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> nfft_adjoint_3d(&p);</div>
-<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> t1 = getticks();</div>
-<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> t_nfft+=t;</div>
-<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> }</div>
-<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> t_nfft/=r;</div>
-<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> printf(<span class="stringliteral">"%.1e\t"</span>,t_nfft);</div>
-<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="keywordflow">if</span>(test_ndft)</div>
-<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> printf(<span class="stringliteral">"(%.1e)\t"</span>,X(error_l_2_complex)(swapndft, p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>));</div>
-<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> </div>
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="comment">//printf("\nf_hat=%e+i%e\t",creal(p.f_hat[0]),cimag(p.f_hat[0]));</span></div>
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> </div>
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> </div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swapndft);</div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> fftw_destroy_plan(p_fft);</div>
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> }</div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> </div>
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> <span class="keywordtype">int</span> main2(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> {</div>
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> <span class="keywordtype">int</span> l,d,logIN;</div>
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> </div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="keywordflow">for</span>(l=3;l<=6;l++)</div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> {</div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> d=3;</div>
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> logIN=d*l;</div>
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> <span class="keywordflow">if</span>(logIN<=15)</div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> {</div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> measure_time_nfft_XXX6(d,(1U<< (logIN/d)),1);</div>
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> measure_time_nfft_XXX7(d,(1U<< (logIN/d)),1);</div>
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> }</div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> {</div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> measure_time_nfft_XXX6(d,(1U<< (logIN/d)),0);</div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> measure_time_nfft_XXX7(d,(1U<< (logIN/d)),0);</div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> }</div>
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> }</div>
-<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> </div>
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> exit(-1);</div>
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> </div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> </div>
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> <span class="keywordflow">for</span>(l=7;l<=12;l++)</div>
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> {</div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> d=2;</div>
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> logIN=d*l;</div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> <span class="keywordflow">if</span>(logIN<=15)</div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> {</div>
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> measure_time_nfft_XXX4(d,(1U<< (logIN/d)),1);</div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> measure_time_nfft_XXX5(d,(1U<< (logIN/d)),1);</div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> }</div>
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> {</div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> measure_time_nfft_XXX4(d,(1U<< (logIN/d)),0);</div>
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> measure_time_nfft_XXX5(d,(1U<< (logIN/d)),0);</div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> }</div>
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> }</div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> </div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> exit(-1);</div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> </div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> <span class="keywordflow">for</span>(l=3;l<=12;l++)</div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> {</div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> logIN=l;</div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> <span class="keywordflow">if</span>(logIN<=15)</div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> {</div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> measure_time_nfft_XXX2(1,(1U<< (logIN)),1);</div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> measure_time_nfft_XXX3(1,(1U<< (logIN)),1);</div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> }</div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> {</div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> measure_time_nfft_XXX2(1,(1U<< (logIN)),0);</div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> measure_time_nfft_XXX3(1,(1U<< (logIN)),0);</div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> }</div>
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> }</div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> </div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> exit(-1);</div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> }</div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> </div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> {</div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> <span class="keywordtype">int</span> l,d,logIN;</div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> </div>
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> printf(<span class="stringliteral">"\\hline $l_N$ & FFT & NDFT & NFFT & NFFT/FFT\\\\\n"</span>);</div>
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span> printf(<span class="stringliteral">"\\hline \\hline \\multicolumn{5}{|c|}{$d=1$} \\\\ \\hline\n"</span>);</div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> <span class="keywordflow">for</span>(l=3;l<=22;l++)</div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> {</div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span> d=1;</div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> logIN=l;</div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> <span class="keywordflow">if</span>(logIN<=15)</div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> measure_time_nfft(d,(1U<< (logIN/d)),1);</div>
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> measure_time_nfft(d,(1U<< (logIN/d)),0);</div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span> </div>
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> fflush(stdout);</div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> }</div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> </div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> printf(<span class="stringliteral">"\\hline $l_N$ & FFT & NDFT & NFFT & NFFT/FFT\\\\\n"</span>);</div>
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span> printf(<span class="stringliteral">"\\hline \\hline \\multicolumn{5}{|c|}{$d=2$} \\\\ \\hline\n"</span>);</div>
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> <span class="keywordflow">for</span>(l=3;l<=11;l++)</div>
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span> {</div>
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> d=2;</div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> logIN=d*l;</div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span> <span class="keywordflow">if</span>(logIN<=15)</div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span> measure_time_nfft(d,(1U<< (logIN/d)),1);</div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> measure_time_nfft(d,(1U<< (logIN/d)),0);</div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span> </div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> fflush(stdout);</div>
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span> }</div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> </div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span> printf(<span class="stringliteral">"\\hline \\hline \\multicolumn{5}{|c|}{$d=3$} \\\\ \\hline\n"</span>);</div>
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> <span class="keywordflow">for</span>(l=3;l<=7;l++)</div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> {</div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> d=3;</div>
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> logIN=d*l;</div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> <span class="keywordflow">if</span>(logIN<=15)</div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> measure_time_nfft(d,(1U<< (logIN/d)),1);</div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> measure_time_nfft(d,(1U<< (logIN/d)),0);</div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> </div>
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> fflush(stdout);</div>
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> }</div>
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> </div>
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfsft_2simple__test_8c_source.html b/doc/api/html/nfsft_2simple__test_8c_source.html
deleted file mode 100644
index bc7f5a9..0000000
--- a/doc/api/html/nfsft_2simple__test_8c_source.html
+++ /dev/null
@@ -1,178 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_e6016a3bd4e6017d6b851aae5334ffd2.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsft/simple_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3902 2012-10-16 14:02:31Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">/* standard headers */</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment">/* It is important to include complex.h before nfft3.h. */</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span> <span class="comment">/* NFFT3 header */</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span> <span class="comment">/* NFFT3 utilities header*/</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#include "infft.h"</span> <span class="comment">/* NFFT3 internal header */</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keyword">static</span> <span class="keywordtype">void</span> simple_test_nfsft(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> {</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N = 4; <span class="comment">/* bandwidth/maximum degree */</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keyword">const</span> <span class="keywordtype">int</span> M = 8; <span class="comment">/* number of nodes */</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan; <span class="comment">/* transform plan */</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">int</span> j, k, n; <span class="comment">/* loop variables */</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment">/* precomputation (for fast polynomial transform) */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> nfsft_precompute(N,1000.0,0U,0U);</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment">/* Initialize transform plan using the guru interface. All input and output</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment"> * arrays are allocated by nfsft_init_guru(). Computations are performed with</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment"> * respect to L^2-normalized spherical harmonics Y_k^n. The array of spherical</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment"> * Fourier coefficients is preserved during transformations. The NFFT uses a</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment"> * cut-off parameter m = 6. See the NFFT 3 manual for details.</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> nfsft_init_guru(&plan, N, M, NFSFT_MALLOC_X | NFSFT_MALLOC_F |</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> NFSFT_MALLOC_F_HAT | NFSFT_NORMALIZED | NFSFT_PRESERVE_F_HAT,</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> PRE_PHI_HUT | PRE_PSI | FFTW_INIT | FFT_OUT_OF_PLACE, 6);</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment">/* pseudo-random nodes */</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">for</span> (j = 0; j < plan.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> {</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j]= nfft_drand48() - K(0.5);</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+1]= K(0.5) * nfft_drand48();</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> }</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment">/* precomputation (for NFFT, node-dependent) */</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> nfsft_precompute_x(&plan);</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment">/* pseudo-random Fourier coefficients */</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">for</span> (k = 0; k <= plan.<a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)] =</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> nfft_drand48() - K(0.5) + _Complex_I*(nfft_drand48() - K(0.5));</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment">/* Direct transformation, display result. */</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> nfsft_trafo_direct(&plan);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> printf(<span class="stringliteral">"Vector f (NDSFT):\n"</span>);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">for</span> (j = 0; j < plan.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> printf(<span class="stringliteral">"f[%+2d] = %+5.3"</span> FE <span class="stringliteral">" %+5.3"</span> FE <span class="stringliteral">"*I\n"</span>,j,</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> creal(plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]), cimag(plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]));</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="comment">/* Fast approximate transformation, display result. */</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> nfsft_trafo(&plan);</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> printf(<span class="stringliteral">"Vector f (NFSFT):\n"</span>);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">for</span> (j = 0; j < plan.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> printf(<span class="stringliteral">"f[%+2d] = %+5.3"</span> FE <span class="stringliteral">" %+5.3"</span> FE <span class="stringliteral">"*I\n"</span>,j,</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> creal(plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]), cimag(plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]));</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">/* Direct adjoint transformation, display result. */</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> nfsft_adjoint_direct(&plan);</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> printf(<span class="stringliteral">"Vector f_hat (NDSFT):\n"</span>);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">for</span> (k = 0; k <= plan.<a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> fprintf(stdout,<span class="stringliteral">"f_hat[%+2d,%+2d] = %+5.3"</span> FE <span class="stringliteral">" %+5.3"</span> FE <span class="stringliteral">"*I\n"</span>,k,n,</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> creal(plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)]),</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> cimag(plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)]));</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="comment">/* Fast approximate adjoint transformation, display result. */</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> nfsft_adjoint(&plan);</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> printf(<span class="stringliteral">"Vector f_hat (NFSFT):\n"</span>);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">for</span> (k = 0; k <= plan.<a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> {</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> {</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> fprintf(stdout,<span class="stringliteral">"f_hat[%+2d,%+2d] = %+5.3"</span> FE <span class="stringliteral">" %+5.3"</span> FE <span class="stringliteral">"*I\n"</span>,k,n,</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> creal(plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)]),</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> cimag(plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)]));</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> }</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> }</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment">/* Finalize the plan. */</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> nfsft_finalize(&plan);</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="comment">/* Destroy data precomputed for fast polynomial transform. */</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> nfsft_forget();</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> }</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> {</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> printf(<span class="stringliteral">"Computing an NDSFT, an NFSFT, an adjoint NDSFT, and an adjoint NFSFT"</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="stringliteral">"...\n\n"</span>);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> simple_test_nfsft();</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfsft_2simple__test__threads_8c_source.html b/doc/api/html/nfsft_2simple__test__threads_8c_source.html
deleted file mode 100644
index 6b4582b..0000000
--- a/doc/api/html/nfsft_2simple__test__threads_8c_source.html
+++ /dev/null
@@ -1,183 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test_threads.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_e6016a3bd4e6017d6b851aae5334ffd2.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsft/simple_test_threads.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3498 2010-05-07 18:46:08Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">/* standard headers */</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment">/* It is important to include complex.h before nfft3.h. */</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor"></span><span class="preprocessor">#include <omp.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span> <span class="comment">/* NFFT3 header */</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span> <span class="comment">/* NFFT3 utilities header*/</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include "infft.h"</span> <span class="comment">/* NFFT3 internal header */</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">static</span> <span class="keywordtype">void</span> simple_test_nfsft(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> {</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N = 4; <span class="comment">/* bandwidth/maximum degree */</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keyword">const</span> <span class="keywordtype">int</span> M = 8; <span class="comment">/* number of nodes */</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan; <span class="comment">/* transform plan */</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">int</span> j, k, n; <span class="comment">/* loop variables */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment">/* precomputation (for fast polynomial transform) */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> nfsft_precompute(N,1000.0,0U,0U);</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="comment">/* Initialize transform plan using the guru interface. All input and output</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment"> * arrays are allocated by nfsft_init_guru(). Computations are performed with</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment"> * respect to L^2-normalized spherical harmonics Y_k^n. The array of spherical</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment"> * Fourier coefficients is preserved during transformations. The NFFT uses a</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment"> * cut-off parameter m = 6. See the NFFT 3 manual for details.</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> nfsft_init_guru(&plan, N, M, NFSFT_MALLOC_X | NFSFT_MALLOC_F |</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> NFSFT_MALLOC_F_HAT | NFSFT_NORMALIZED | NFSFT_PRESERVE_F_HAT,</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> PRE_PHI_HUT | PRE_PSI | FFTW_INIT | FFT_OUT_OF_PLACE, 6);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">/* pseudo-random nodes */</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">for</span> (j = 0; j < plan.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> {</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j]= nfft_drand48() - K(0.5);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+1]= K(0.5) * nfft_drand48();</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> }</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">/* precomputation (for NFFT, node-dependent) */</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> nfsft_precompute_x(&plan);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">/* pseudo-random Fourier coefficients */</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">for</span> (k = 0; k <= plan.<a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)] =</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> nfft_drand48() - K(0.5) + _Complex_I*(nfft_drand48() - K(0.5));</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment">/* Direct transformation, display result. */</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> nfsft_trafo_direct(&plan);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> printf(<span class="stringliteral">"Vector f (NDSFT):\n"</span>);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">for</span> (j = 0; j < plan.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> printf(<span class="stringliteral">"f[%+2d] = %+5.3"</span> FE <span class="stringliteral">" %+5.3"</span> FE <span class="stringliteral">"*I\n"</span>,j,</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> creal(plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]), cimag(plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]));</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> </div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="comment">/* Fast approximate transformation, display result. */</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> printf(<span class="stringliteral">"Vector f (NDSFT):\n"</span>);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">for</span> (j = 0; j < plan.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> printf(<span class="stringliteral">"f[%+2d] = %+5.3"</span> FE <span class="stringliteral">" %+5.3"</span> FE <span class="stringliteral">"*I\n"</span>,j,</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> creal(plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]), cimag(plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]));</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> </div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">/* Direct adjoint transformation, display result. */</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> nfsft_adjoint_direct(&plan);</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> printf(<span class="stringliteral">"Vector f_hat (NDSFT):\n"</span>);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">for</span> (k = 0; k <= plan.<a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> fprintf(stdout,<span class="stringliteral">"f_hat[%+2d,%+2d] = %+5.3"</span> FE <span class="stringliteral">" %+5.3"</span> FE <span class="stringliteral">"*I\n"</span>,k,n,</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> creal(plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)]),</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> cimag(plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)]));</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="comment">/* Fast approximate adjoint transformation, display result. */</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> nfsft_adjoint(&plan);</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> printf(<span class="stringliteral">"Vector f_hat (NFSFT):\n"</span>);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">for</span> (k = 0; k <= plan.<a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> {</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> {</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> fprintf(stdout,<span class="stringliteral">"f_hat[%+2d,%+2d] = %+5.3"</span> FE <span class="stringliteral">" %+5.3"</span> FE <span class="stringliteral">"*I\n"</span>,k,n,</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> creal(plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)]),</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> cimag(plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)]));</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> }</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> }</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment">/* Finalize the plan. */</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> nfsft_finalize(&plan);</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="comment">/* Destroy data precomputed for fast polynomial transform. */</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> nfsft_forget();</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> }</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> {</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> printf(<span class="stringliteral">"nthreads = %d\n"</span>, nfft_get_omp_num_threads());</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="comment">/* init */</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> fftw_init_threads();</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> printf(<span class="stringliteral">"Computing an NDSFT, an NFSFT, an adjoint NDSFT, and an adjoint NFSFT"</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="stringliteral">"...\n\n"</span>);</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> simple_test_nfsft();</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfsft_8c.html b/doc/api/html/nfsft_8c.html
deleted file mode 100644
index d6d241c..0000000
--- a/doc/api/html/nfsft_8c.html
+++ /dev/null
@@ -1,125 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsft.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_25564cacf5a7ef2ec915d9f7b609853e.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#define-members">Macros</a> |
-<a href="#func-members">Functions</a> |
-<a href="#var-members">Variables</a> </div>
- <div class="headertitle">
-<div class="title">nfsft.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Implementation file for the NFSFT module.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <math.h></code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include <string.h></code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-<code>#include "legendre.h"</code><br/>
-<code>#include "api.h"</code><br/>
-</div>
-<p><a href="nfsft_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:ga206c4faaf800b49dcb14e26148fa9ac6"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga206c4faaf800b49dcb14e26148fa9ac6">NFSFT_DEFAULT_NFFT_CUTOFF</a> 6</td></tr>
-<tr class="memdesc:ga206c4faaf800b49dcb14e26148fa9ac6"><td class="mdescLeft"> </td><td class="mdescRight">The default NFFT cutoff parameter. <a href="group__nfsft.html#ga206c4faaf800b49dcb14e26148fa9ac6"></a><br/></td></tr>
-<tr class="memitem:gab7d25b80464387893b3c773f92e5c4f3"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#gab7d25b80464387893b3c773f92e5c4f3">NFSFT_DEFAULT_THRESHOLD</a> 1000</td></tr>
-<tr class="memdesc:gab7d25b80464387893b3c773f92e5c4f3"><td class="mdescLeft"> </td><td class="mdescRight">The default threshold for the FPT. <a href="group__nfsft.html#gab7d25b80464387893b3c773f92e5c4f3"></a><br/></td></tr>
-<tr class="memitem:ga54b840898df97bcd14af4cb004650ed3"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga54b840898df97bcd14af4cb004650ed3">NFSFT_BREAK_EVEN</a> 5</td></tr>
-<tr class="memdesc:ga54b840898df97bcd14af4cb004650ed3"><td class="mdescLeft"> </td><td class="mdescRight">The break-even bandwidth <img class="formulaInl" alt="$N \in \mathbb{N}_0$" src="form_49.png"/>. <a href="group__nfsft.html#ga54b840898df97bcd14af4cb004650ed3"></a><br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga47209b28b6561fca7349ed8afa5f9656"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656">c2e</a> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memdesc:ga47209b28b6561fca7349ed8afa5f9656"><td class="mdescLeft"> </td><td class="mdescRight">Converts coefficients <img class="formulaInl" alt="$\left(b_k^n\right)_{k=0}^M$" src="form_50.png"/> with <img class="formulaInl" alt="$M \in \mathbb{N}_0$" src="form_36.png"/>, <img class="formulaInl" alt="$-M \le n \le M$" src="form_51.png"/> from a linear combination of Chebyshev polynomials </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ f(\cos\vartheta) = \sum_{k=0}^{2\lfloor\frac{M}{2}\rfloor} a_k (\sin\vartheta)^{n\;\mathrm{mod}\;2} T_k(\cos\vartheta) \]" src="form_52.png"/>
-</p>
-<p> to coefficients <img class="formulaInl" alt="$\left(c_k^n\right)_{k=0}^M$" src="form_53.png"/> matching the representation by complex exponentials </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ f(\cos\vartheta) = \sum_{k=-M}^{M} c_k \mathrm{e}^{\mathrm{i}k\vartheta} \]" src="form_54.png"/>
-</p>
-<p> for each order <img class="formulaInl" alt="$n=-M,\ldots,M$" src="form_55.png"/>. <a href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656"></a><br/></td></tr>
-<tr class="memitem:ga0e033457136bc0ecb18bb57d3ee5aa37"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga0e033457136bc0ecb18bb57d3ee5aa37">c2e_transposed</a> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memdesc:ga0e033457136bc0ecb18bb57d3ee5aa37"><td class="mdescLeft"> </td><td class="mdescRight">Transposed version of the function <a class="el" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656">c2e</a>. <a href="group__nfsft.html#ga0e033457136bc0ecb18bb57d3ee5aa37"></a><br/></td></tr>
-<tr class="memitem:ga65cda3f4a3edc5eb39c697cf34b1f0b9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga65cda3f4a3edc5eb39c697cf34b1f0b9"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_init</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan, int N, int M)</td></tr>
-<tr class="memitem:ga2812aa5beba0eb7efd3072bf323a0155"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga2812aa5beba0eb7efd3072bf323a0155"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_init_advanced</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan, int N, int M, unsigned int flags)</td></tr>
-<tr class="memitem:gafff6158abcefa9a75bcfa41af5a79089"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gafff6158abcefa9a75bcfa41af5a79089"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_init_guru</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan, int N, int M, unsigned int flags, unsigned int nfft_flags, int nfft_cutoff)</td></tr>
-<tr class="memitem:gabe87aeea1f7cfef9ae8febb16d702f3b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gabe87aeea1f7cfef9ae8febb16d702f3b"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_precompute</b> (int N, double kappa, unsigned int nfsft_flags, unsigned int fpt_flags)</td></tr>
-<tr class="memitem:ga3b69bca6c76a63877534f5a9781bf285"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3b69bca6c76a63877534f5a9781bf285"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_forget</b> (void)</td></tr>
-<tr class="memitem:gaa63e193a27d84059742ff25ff81e2ed1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaa63e193a27d84059742ff25ff81e2ed1"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_finalize</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga7628057164579a29cc77487cda6772e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7628057164579a29cc77487cda6772e5"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_trafo_direct</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga7cfaacc3393dea5c895859fa035e3e06"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7cfaacc3393dea5c895859fa035e3e06"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_adjoint_direct</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga5796fc68c432d46dfcab7abd8c56ee22"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga5796fc68c432d46dfcab7abd8c56ee22"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_trafo</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga813bb48d404c7286310733c99a81a169"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga813bb48d404c7286310733c99a81a169"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_adjoint</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-<tr class="memitem:ga7a7fa6722d6ba3aade4c69299af86e4e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga7a7fa6722d6ba3aade4c69299af86e4e"></a>
-void </td><td class="memItemRight" valign="bottom"><b>nfsft_precompute_x</b> (<a class="el" href="structnfsft__plan.html">nfsft_plan</a> *plan)</td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="var-members"></a>
-Variables</h2></td></tr>
-<tr class="memitem:ga0af81d81e1b436949ddc46dbd27346e5"><td class="memItemLeft" align="right" valign="top">static struct <a class="el" href="structnfsft__wisdom.html">nfsft_wisdom</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__nfsft.html#ga0af81d81e1b436949ddc46dbd27346e5">wisdom</a> = {false,0U,-1,-1,0,0,0,0,0}</td></tr>
-<tr class="memdesc:ga0af81d81e1b436949ddc46dbd27346e5"><td class="mdescLeft"> </td><td class="mdescRight">The global wisdom structure for precomputed data. <a href="group__nfsft.html#ga0af81d81e1b436949ddc46dbd27346e5"></a><br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Implementation file for the NFSFT module. </p>
-<dl class="section author"><dt>Author:</dt><dd>Jens Keiner </dd></dl>
-
-<p>Definition in file <a class="el" href="nfsft_8c_source.html">nfsft.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfsft_8c_source.html b/doc/api/html/nfsft_8c_source.html
deleted file mode 100644
index e819159..0000000
--- a/doc/api/html/nfsft_8c_source.html
+++ /dev/null
@@ -1,1248 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsft.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_25564cacf5a7ef2ec915d9f7b609853e.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsft.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="nfsft_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nfsft.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="comment">/* Include standard C headers. */</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor"></span><span class="preprocessor">#include <omp.h></span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">/* Include NFFT3 utilities header. */</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="comment">/* Include NFFT3 library header. */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment">/* Include private associated Legendre functions header. */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#include "legendre.h"</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment">/* Include private API header. */</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor">#include "api.h"</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"><a class="code" href="group__nfsft.html#ga206c4faaf800b49dcb14e26148fa9ac6"> 65</a></span> <span class="preprocessor">#define NFSFT_DEFAULT_NFFT_CUTOFF 6</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"><a class="code" href="group__nfsft.html#gab7d25b80464387893b3c773f92e5c4f3"> 72</a></span> <span class="preprocessor">#define NFSFT_DEFAULT_THRESHOLD 1000</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"><a class="code" href="group__nfsft.html#ga54b840898df97bcd14af4cb004650ed3"> 79</a></span> <span class="preprocessor">#define NFSFT_BREAK_EVEN 5</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"><a class="code" href="group__nfsft.html#ga0af81d81e1b436949ddc46dbd27346e5"> 87</a></span> <span class="keyword">static</span> <span class="keyword">struct </span><a class="code" href="structnfsft__wisdom.html" title="Wisdom structure.">nfsft_wisdom</a> <a class="code" href="group__nfsft.html#ga0af81d81e1b436949ddc46dbd27346e5" title="The global wisdom structure for precomputed data.">wisdom</a> = {<span class="keyword">f [...]
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00111"></a><span class="lineno"><a class="code" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656"> 111</a></span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656" title="Converts coefficients with , from a linear combination of Chebyshev polynomials to coefficients m...">c2e</a>(<a class="code" href="struc [...]
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> {</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordtype">int</span> k; </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordtype">int</span> n; </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">double</span> _Complex last; </div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">double</span> _Complex act; </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordtype">double</span> _Complex *xp; </div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">double</span> _Complex *xm; </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="keywordtype">int</span> low; </div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordtype">int</span> up; </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordtype">int</span> lowe; </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordtype">int</span> upe; </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment">/* Set the first row to order to zero since it is unused. */</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> memset(plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>,0U,(2*plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>+2)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="comment">/* Determine lower and upper bounds for loop processing even terms. */</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> lowe = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> + (plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>%2);</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> upe = -lowe;</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="comment">/* Process even terms. */</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">for</span> (n = lowe; n <= upe; n += 2)</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> {</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="comment">/* Compute new coefficients \f$\left(c_k^n\right)_{k=-M,\ldots,M}\f$ from</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment"> * old coefficients $\left(b_k^n\right)_{k=0,\ldots,M}$. */</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> xm = &(plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(-1,n,plan)]);</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> xp = &(plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(+1,n,plan)]);</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">for</span>(k = 1; k <= plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> {</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> *xp *= 0.5;</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> *xm-- = *xp++;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="comment">/* Set the first coefficient in the array corresponding to this order to</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="comment"> * zero since it is unused. */</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> *xm = 0.0;</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> }</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> </div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="comment">/* Determine lower and upper bounds for loop processing odd terms. */</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> low = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> + (1-plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>%2);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> up = -low;</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="comment">/* Process odd terms incorporating the additional sine term</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="comment"> * \f$\sin \vartheta\f$. */</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">for</span> (n = low; n <= up; n += 2)</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> {</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="comment">/* Compute new coefficients \f$\left(c_k^n\right)_{k=-M,\ldots,M}\f$ from</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="comment"> * old coefficients $\left(b_k^n\right)_{k=0,\ldots,M-1}$ incorporating</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="comment"> * the additional term \f$\sin \vartheta\f$. */</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(0,n,plan)] *= 2.0;</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> xp = &(plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(-plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>-1,n,plan)]);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="comment">/* Set the first coefficient in the array corresponding to this order to zero</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="comment"> * since it is unused. */</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> *xp++ = 0.0;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> xm = &(plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>,n,plan)]);</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> last = *xm;</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> *xm = 0.5 * _Complex_I * (0.5*xm[-1]);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> *xp++ = -(*xm--);</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">for</span> (k = plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>-1; k > 0; k--)</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> {</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> act = *xm;</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> *xm = 0.5 * _Complex_I * (0.5*(xm[-1] - last));</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> *xp++ = -(*xm--);</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> last = act;</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> }</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> *xm = 0.0;</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> }</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> }</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div>
-<div class="line"><a name="l00189"></a><span class="lineno"><a class="code" href="group__nfsft.html#ga0e033457136bc0ecb18bb57d3ee5aa37"> 189</a></span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#ga0e033457136bc0ecb18bb57d3ee5aa37" title="Transposed version of the function c2e.">c2e_transposed</a>(<a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan)</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> {</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keywordtype">int</span> k; </div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="keywordtype">int</span> n; </div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordtype">double</span> _Complex last; </div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordtype">double</span> _Complex act; </div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordtype">double</span> _Complex *xp; </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="keywordtype">double</span> _Complex *xm; </div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keywordtype">int</span> low; </div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="keywordtype">int</span> up; </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordtype">int</span> lowe; </div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="keywordtype">int</span> upe; </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="comment">/* Determine lower and upper bounds for loop processing even terms. */</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> lowe = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> + (plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>%2);</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> upe = -lowe;</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> </div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="comment">/* Process even terms. */</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">for</span> (n = lowe; n <= upe; n += 2)</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> {</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="comment">/* Compute new coefficients \f$\left(b_k^n\right)_{k=0,\ldots,M}\f$ from</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="comment"> * old coefficients $\left(c_k^n\right)_{k=-M,\ldots,M}$. */</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> xm = &(plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(-1,n,plan)]);</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> xp = &(plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(+1,n,plan)]);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="keywordflow">for</span>(k = 1; k <= plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> {</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> *xp += *xm--;</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> *xp++ *= 0.5;;</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> }</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> }</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> </div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="comment">/* Determine lower and upper bounds for loop processing odd terms. */</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> low = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> + (1-plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>%2);</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> up = -low;</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="comment">/* Process odd terms. */</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="keywordflow">for</span> (n = low; n <= up; n += 2)</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> {</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="comment">/* Compute new coefficients \f$\left(b_k^n\right)_{k=0,\ldots,M-1}\f$ from</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="comment"> * old coefficients $\left(c_k^n\right)_{k=0,\ldots,M-1}$. */</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> xm = &(plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(-1,n,plan)]);</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> xp = &(plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(+1,n,plan)]);</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="keywordflow">for</span>(k = 1; k <= plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> {</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> *xp++ -= *xm--;</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> }</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(0,n,plan)] =</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> -0.25*_Complex_I*plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(1,n,plan)];</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> last = plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(1,n,plan)];</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(1,n,plan)] =</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> -0.25*_Complex_I*plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(2,n,plan)];</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> </div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> xp = &(plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(2,n,plan)]);</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="keywordflow">for</span> (k = 2; k < plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> {</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> act = *xp;</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> *xp = -0.25 * _Complex_I * (xp[1] - last);</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> xp++;</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> last = act;</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> }</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> *xp = 0.25 * _Complex_I * last;</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> </div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(0,n,plan)] *= 2.0;</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> }</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> }</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> </div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="keywordtype">void</span> nfsft_init(<a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M)</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> {</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="comment">/* Call nfsft_init_advanced with default flags. */</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> nfsft_init_advanced(plan, N, M, NFSFT_MALLOC_X | NFSFT_MALLOC_F |</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> NFSFT_MALLOC_F_HAT);</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> }</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> </div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keywordtype">void</span> nfsft_init_advanced(<a class="code" href="structnfsft__plan.html">nfsft_plan</a>* plan, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M,</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> {</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="comment">/* Call nfsft_init_guru with the flags and default NFFT cut-off. */</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> nfsft_init_guru(plan, N, M, flags, PRE_PHI_HUT | PRE_PSI | FFTW_INIT |</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> FFT_OUT_OF_PLACE, <a class="code" href="group__nfsft.html#ga206c4faaf800b49dcb14e26148fa9ac6" title="The default NFFT cutoff parameter.">NFSFT_DEFAULT_NFFT_CUTOFF</a>);</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> }</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="keywordtype">void</span> nfsft_init_guru(<a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags,</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nfft_flags, <span class="keywordtype">int</span> nfft_cutoff)</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> {</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordtype">int</span> *nfft_size; <span class="comment">/*< NFFT size */</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="keywordtype">int</span> *fftw_size; <span class="comment">/*< FFTW size */</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> </div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> <span class="comment">/* Save the flags in the plan. */</span></div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> = flags;</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="comment">/* Save the bandwidth N and the number of samples M in the plan. */</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> = N;</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> plan-><a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a> = M;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> </div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="comment">/* Calculate the next greater power of two with respect to the bandwidth N</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="comment"> * and the corresponding exponent. */</span></div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="comment">//next_power_of_2_exp(plan->N,&plan->NPT,&plan->t);</span></div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> </div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="comment">/* Save length of array of Fourier coefficients. Owing to the data layout the</span></div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="comment"> * length is (2N+2)(2N+2) */</span></div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> plan-><a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" title="Total number of Fourier coefficients.">N_total</a> = (2*plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>+2)*(2*plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>+2);</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="comment">/* Allocate memory for auxilliary array of spherical Fourier coefficients,</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="comment"> * if neccesary. */</span></div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_PRESERVE_F_HAT)</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> {</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a> = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(plan-><a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" title=" [...]
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> }</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> </div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="comment">/* Allocate memory for spherical Fourier coefficients, if neccesary. */</span></div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_MALLOC_F_HAT)</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> {</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(plan-><a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" [...]
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> }</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> </div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="comment">/* Allocate memory for samples, if neccesary. */</span></div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_MALLOC_F)</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> {</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> plan-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(plan-><a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total numb [...]
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> }</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> </div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="comment">/* Allocate memory for nodes, if neccesary. */</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_MALLOC_X)</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> {</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(plan-><a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>*2*<span class="keyword" [...]
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> }</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> </div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="comment">/* Check if fast algorithm is activated. */</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_NO_FAST_ALGORITHM)</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> {</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> }</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> {</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> nfft_size = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> fftw_size = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> nfft_size[0] = 2*plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>+2;</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> nfft_size[1] = 2*plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>+2;</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> fftw_size[0] = 4*plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>;</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> fftw_size[1] = 4*plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>;</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> </div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> nfft_init_guru(&plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>, 2, nfft_size, plan-><a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>, fftw_size,</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> nfft_cutoff, nfft_flags,</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> FFTW_ESTIMATE | FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> </div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="comment">/* Assign angle array. */</span></div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> = plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>;</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="comment">/* Assign result array. */</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = plan-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size [...]
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="comment">/* Assign Fourier coefficients array. */</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector [...]
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> </div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="comment">/* Precompute. */</span></div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="comment">//nfft_precompute_one_psi(&plan->plan_nfft);</span></div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> </div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="comment">/* Free auxilliary arrays. */</span></div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(nfft_size);</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(fftw_size);</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> }</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> </div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> plan-><a class="code" href="structnfsft__plan.html#a01bf30c31f886ffa9d486c010a452051" title="Pointer to the own transform.">mv_trafo</a> = (void (*) (<span class="keywordtype">void</span>* ))nfsft_trafo;</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> plan-><a class="code" href="structnfsft__plan.html#a14cc99f56f6a61958aef26f80aac6f12" title="Pointer to the own adjoint.">mv_adjoint</a> = (void (*) (<span class="keywordtype">void</span>* ))nfsft_adjoint;</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> }</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> </div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="keywordtype">void</span> nfsft_precompute(<span class="keywordtype">int</span> N, <span class="keywordtype">double</span> kappa, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nfsft_flags,</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fpt_flags)</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> {</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="keywordtype">int</span> n; <span class="comment">/*< The order n */</span></div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> </div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="comment">/* Check if already initialized. */</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="keywordflow">if</span> (wisdom.<a class="code" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740" title="Indicates wether the structure has been initialized.">initialized</a> == <span class="keyword">true</span>)</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> {</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> }</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> </div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel default(shared)</span></div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="keywordtype">int</span> nthreads = omp_get_num_threads();</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="keywordtype">int</span> threadid = omp_get_thread_num();</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="preprocessor"> #pragma omp single</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> wisdom.nthreads = nthreads;</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> }</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> }</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="comment">/* Save the precomputation flags. */</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> wisdom.flags = nfsft_flags;</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> </div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="comment">/* Compute and save N_max = 2^{\ceil{log_2 N}} as next greater</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="comment"> * power of two with respect to N. */</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> X(next_power_of_2_exp)(N,&wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>,&wisdom.<a class="code" href="structnfsft__wisdom.html#ae6c31fe1bc09d2894948358c2bea27e4" title="The logarithm /f$t = N_{{max}}/f$ of the maximum bandwidth.">T_MAX</a>);</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> </div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="comment">/* Check, if precomputation for direct algorithms needs to be performed. */</span></div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="keywordflow">if</span> (wisdom.flags & NFSFT_NO_DIRECT_ALGORITHM)</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> {</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a> = NULL;</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a> = NULL;</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a> = NULL;</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> }</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> {</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="comment">/* Allocate memory for three-term recursion coefficients. */</span></div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((wisdom.<a class="code" href="st [...]
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((wisdom.<a class="code" href="str [...]
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((wisdom.<a class="code" href="st [...]
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="comment">/* Compute three-term recurrence coefficients alpha_k^n, beta_k^n, and</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="comment"> * gamma_k^n. */</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <a class="code" href="group__nfsft.html#ga6b01d5f2e8b3a026906e977118d7b0d2" title="Compute three-term-recurrence coefficients of associated Legendre functions for .">alpha_al_all</a>(wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P [...]
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <a class="code" href="group__nfsft.html#gaf0fb6a3993b3c956bea8fa75e3a71290" title="Compute three-term-recurrence coefficients of associated Legendre functions for .">beta_al_all</a>(wisdom.<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_ [...]
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <a class="code" href="group__nfsft.html#ga88de851c8f9a4c042ad101cb4fb8c51d" title="Compute three-term-recurrence coefficients of associated Legendre functions for .">gamma_al_all</a>(wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P [...]
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> }</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> </div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="comment">/* Check, if precomputation for fast algorithms needs to be performed. */</span></div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="keywordflow">if</span> (wisdom.flags & NFSFT_NO_FAST_ALGORITHM)</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> {</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> }</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a> >= <a class="code" href="group__nfsft.html#ga54b840898df97bcd14af4cb004650ed3" title="The break-even bandwidth .">NFSFT_BREAK_EVEN</a>)</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> {</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="comment">/* Precompute data for DPT/FPT. */</span></div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> </div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="comment">/* Check, if recursion coefficients have already been calculated. */</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="keywordflow">if</span> (wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a> != NULL)</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> {</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel default(shared) private(n)</span></div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="keywordtype">int</span> nthreads = omp_get_num_threads();</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="keywordtype">int</span> threadid = omp_get_thread_num();</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor"> #pragma omp single</span></div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> wisdom.nthreads = nthreads;</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> wisdom.set_threads = (<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(nthreads*<span class="keyword">sizeof</span>(<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a>));</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> }</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> </div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> wisdom.set_threads[threadid] = fpt_init(wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>+1, wisdom.<a class="code" href="structnfsft__wisdom.html#ae6c31fe1bc09d2894948358c2bea27e4" title="The logarithm /f$t = N_{{max}}/f$ of the maximum bandwidth.">T_MAX</a>,</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> fpt_flags | FPT_AL_SYMMETRY | FPT_PERSISTENT_DATA);</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="keywordflow">for</span> (n = 0; n <= wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>; n++)</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> fpt_precompute(wisdom.set_threads[threadid],n,&wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>[ROW(n)],</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> &wisdom.<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>[ROW(n)], &wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f [...]
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> }</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> </div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor"></span> <span class="comment">/* Use the recursion coefficients to precompute FPT data using persistent</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="comment"> * arrays. */</span></div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a> = fpt_init(wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>+1, wisdom.<a class="code" href="structnfsft__wisdom.html#ae6c31fe1bc09d2894948358c2bea27e4" title="The log [...]
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> fpt_flags | FPT_AL_SYMMETRY | FPT_PERSISTENT_DATA);</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="keywordflow">for</span> (n = 0; n <= wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>; n++)</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> {</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="comment">/*fprintf(stderr,"%d\n",n);</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="comment"> fflush(stderr);*/</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="comment">/* Precompute data for FPT transformation for order n. */</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> fpt_precompute(wisdom.<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>,n,&wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^ [...]
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> &wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>[ROW(n)],n,kappa);</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> }</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> {</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel default(shared) private(n)</span></div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>, *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients [...]
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="keywordtype">int</span> nthreads = omp_get_num_threads();</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="keywordtype">int</span> threadid = omp_get_thread_num();</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor"> #pragma omp single</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> wisdom.nthreads = nthreads;</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> wisdom.set_threads = (<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(nthreads*<span class="keyword">sizeof</span>(<a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a>));</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> }</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> </div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> alpha = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>+2)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> beta = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>+2)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> gamma = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>+2)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> wisdom.set_threads[threadid] = fpt_init(wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>+1, wisdom.<a class="code" href="structnfsft__wisdom.html#ae6c31fe1bc09d2894948358c2bea27e4" title="The logarithm /f$t = N_{{max}}/f$ of the maximum bandwidth.">T_MAX</a>,</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> fpt_flags | FPT_AL_SYMMETRY);</div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> </div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="keywordflow">for</span> (n = 0; n <= wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>; n++)</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> {</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> alpha_al_row(alpha,wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>,n);</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> beta_al_row(beta,wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>,n);</div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> gamma_al_row(gamma,wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>,n);</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> </div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="comment">/* Precompute data for FPT transformation for order n. */</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> fpt_precompute(wisdom.set_threads[threadid],n,alpha,beta,gamma,n,</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> kappa);</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> }</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="comment">/* Free auxilliary arrays. */</span></div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(alpha);</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(beta);</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(gamma);</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> }</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="preprocessor"></span> <span class="comment">/* Allocate memory for three-term recursion coefficients. */</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((wisdom.<a class="code" href=" [...]
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((wisdom.<a class="code" href="s [...]
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((wisdom.<a class="code" href=" [...]
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a> = fpt_init(wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>+1, wisdom.<a class="code" href="structnfsft__wisdom.html#ae6c31fe1bc09d2894948358c2bea27e4" title="The log [...]
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> fpt_flags | FPT_AL_SYMMETRY);</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="keywordflow">for</span> (n = 0; n <= wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>; n++)</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> {</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="comment">/*fprintf(stderr,"%d NO_DIRECT\n",n);</span></div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="comment"> fflush(stderr);*/</span></div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="comment">/* Compute three-term recurrence coefficients alpha_k^n, beta_k^n, and</span></div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="comment"> * gamma_k^n. */</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> alpha_al_row(wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>,wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>,n);</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> beta_al_row(wisdom.<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>,wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>,n);</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> gamma_al_row(wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>,wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>,n);</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> </div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="comment">/* Precompute data for FPT transformation for order n. */</span></div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> fpt_precompute(wisdom.<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>,n,wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$. [...]
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> kappa);</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> }</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="comment">/* Free auxilliary arrays. */</span></div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>);</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(wisdom.<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>);</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>);</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="preprocessor"></span> wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a> = NULL;</div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a> = NULL;</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a> = NULL;</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> }</div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> }</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> </div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="comment">/* Wisdom has been initialised. */</span></div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> wisdom.<a class="code" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740" title="Indicates wether the structure has been initialized.">initialized</a> = <span class="keyword">true</span>;</div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> }</div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> </div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="keywordtype">void</span> nfsft_forget(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> {</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="comment">/* Check if wisdom has been initialised. */</span></div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="keywordflow">if</span> (wisdom.<a class="code" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740" title="Indicates wether the structure has been initialized.">initialized</a> == <span class="keyword">false</span>)</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> {</div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="comment">/* Nothing to do. */</span></div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> }</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> </div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="comment">/* Check, if precomputation for direct algorithms has been performed. */</span></div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="keywordflow">if</span> (wisdom.flags & NFSFT_NO_DIRECT_ALGORITHM)</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> {</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> }</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> {</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="comment">/* Free arrays holding three-term recurrence coefficients. */</span></div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>);</div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(wisdom.<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>);</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>);</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a> = NULL;</div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a> = NULL;</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a> = NULL;</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> }</div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> </div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="comment">/* Check, if precomputation for fast algorithms has been performed. */</span></div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="keywordflow">if</span> (wisdom.flags & NFSFT_NO_FAST_ALGORITHM)</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> {</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> }</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a> >= <a class="code" href="group__nfsft.html#ga54b840898df97bcd14af4cb004650ed3" title="The break-even bandwidth .">NFSFT_BREAK_EVEN</a>)</div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> {</div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="keywordflow">for</span> (k = 0; k < wisdom.nthreads; k++)</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> fpt_finalize(wisdom.set_threads[k]);</div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(wisdom.set_threads);</div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="preprocessor"></span> <span class="comment">/* Free precomputed data for FPT transformation. */</span></div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> fpt_finalize(wisdom.<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>);</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> </div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="comment">/* Wisdom is now uninitialised. */</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> wisdom.<a class="code" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740" title="Indicates wether the structure has been initialized.">initialized</a> = <span class="keyword">false</span>;</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> }</div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> </div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> </div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="keywordtype">void</span> nfsft_finalize(<a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan)</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> {</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="keywordflow">if</span> (!plan)</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> </div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="comment">/* Finalise the nfft plan. */</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> nfft_finalize(&plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>);</div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> </div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="comment">/* De-allocate memory for auxilliary array of spherical Fourier coefficients,</span></div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="comment"> * if neccesary. */</span></div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_PRESERVE_F_HAT)</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> {</div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>);</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> }</div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> </div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="comment">/* De-allocate memory for spherical Fourier coefficients, if necessary. */</span></div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_MALLOC_F_HAT)</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> {</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="comment">//fprintf(stderr,"deallocating f_hat\n");</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>);</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> }</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> </div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="comment">/* De-allocate memory for samples, if neccesary. */</span></div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_MALLOC_F)</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> {</div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="comment">//fprintf(stderr,"deallocating f\n");</span></div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(plan-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>);</div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> }</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> </div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="comment">/* De-allocate memory for nodes, if neccesary. */</span></div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_MALLOC_X)</div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> {</div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="comment">//fprintf(stderr,"deallocating x\n");</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>);</div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> }</div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> }</div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> </div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="keywordtype">void</span> nfsft_trafo_direct(<a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan)</div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> {</div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="keywordtype">int</span> m; <span class="comment">/*< The node index */</span></div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="keywordtype">int</span> k; <span class="comment">/*< The degree k */</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="keywordtype">int</span> n; <span class="comment">/*< The order n */</span></div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="keywordtype">int</span> n_abs; <span class="comment">/*< The absolute value of the order n, ie n_abs = |n| */</span></div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>; <span class="comment">/*< Pointer to current three-term recurrence</span></div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="comment"> coefficient alpha_k^n for associated Legendre</span></div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <span class="comment"> functions P_k^n */</span></div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>; <span class="comment">/*< Pointer to current three-term recurrence</span></div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="comment"> coefficient beta_k^n for associated Legendre</span></div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="comment"> functions P_k^n */</span></div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="keywordtype">double</span> _Complex *a; <span class="comment">/*< Pointer to auxilliary array for Clenshaw algor. */</span></div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="keywordtype">double</span> _Complex it1; <span class="comment">/*< Auxilliary variable for Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="keywordtype">double</span> _Complex it2; <span class="comment">/*< Auxilliary variable for Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="keywordtype">double</span> _Complex temp; <span class="comment">/*< Auxilliary variable for Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="keywordtype">double</span> _Complex f_m; <span class="comment">/*< The final function value f_m = f(x_m) for a</span></div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="comment"> single node. */</span></div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="keywordtype">double</span> stheta; <span class="comment">/*< Current angle theta for Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="keywordtype">double</span> sphi; <span class="comment">/*< Current angle phi for Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> </div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="preprocessor"></span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = 0.0;</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = 0.0;</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = 0.0;</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="keywordflow">if</span> (wisdom.flags & NFSFT_NO_DIRECT_ALGORITHM)</div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> {</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> }</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> </div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <span class="comment">/* Copy spherical Fourier coefficients, if necessary. */</span></div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_PRESERVE_F_HAT)</div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> {</div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> memcpy(plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>,plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,plan-><a class="code" href="structnfsft__plan.h [...]
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> }</div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> {</div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a> = plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> }</div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> </div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="comment">/* Check, if we compute with L^2-normalized spherical harmonics. If so,</span></div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="comment"> * multiply spherical Fourier coefficients with corresponding normalization</span></div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> <span class="comment"> * weight. */</span></div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_NORMALIZED)</div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> {</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="comment">/* Traverse Fourier coefficients array. */</span></div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k,n)</span></div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k <= plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> {</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> {</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="comment">/* Multiply with normalization weight. */</span></div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(k,n,plan)] *=</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> sqrt((2*k+1)/(4.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>));</div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> }</div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> }</div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> }</div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> </div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="comment">/* Distinguish by bandwidth M. */</span></div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> == 0)</div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> {</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="comment">/* N = 0 */</span></div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> </div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="comment">/* Constant function */</span></div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <span class="keywordflow">for</span> (m = 0; m < plan-><a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; m++)</div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> {</div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> plan-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[m] = plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(0,0,plan)];</div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> }</div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> }</div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> {</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="comment">/* N > 0 */</span></div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> </div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <span class="comment">/* Evaluate</span></div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="comment"> * \sum_{k=0}^N \sum_{n=-k}^k a_k^n P_k^{|n|}(cos theta_m) e^{i n phi_m}</span></div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> <span class="comment"> * = \sum_{n=-N}^N \sum_{k=|n|}^N a_k^n P_k^{|n|}(cos theta_m)</span></div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <span class="comment"> * e^{i n phi_m}.</span></div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(m,stheta,sphi,f_m,n,a,n_abs,alpha,gamma,it2,it1,k,temp)</span></div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (m = 0; m < plan-><a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; m++)</div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> {</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> <span class="comment">/* Scale angle theta from [0,1/2] to [0,pi] and apply cosine. */</span></div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> stheta = cos(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*m+1]);</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="comment">/* Scale angle phi from [-1/2,1/2] to [-pi,pi]. */</span></div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> sphi = 2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*m];</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> </div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> <span class="comment">/* Initialize result for current node. */</span></div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> f_m = 0.0;</div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> </div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> <span class="comment">/* For n = -N,...,N, evaluate</span></div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="comment"> * b_n := \sum_{k=|n|}^N a_k^n P_k^{|n|}(cos theta_m)</span></div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> <span class="comment"> * using Clenshaw's algorithm.</span></div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> {</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> <span class="comment">/* Get pointer to Fourier coefficients vector for current order n. */</span></div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> a = &(plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(0,n,plan)]);</div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> </div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> <span class="comment">/* Take absolute value of n. */</span></div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> n_abs = abs(n);</div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> </div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> <span class="comment">/* Get pointers to three-term recurrence coefficients arrays. */</span></div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> alpha = &(wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>[ROW(n_abs)]);</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> gamma = &(wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>[ROW(n_abs)]);</div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> </div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> <span class="comment">/* Clenshaw's algorithm */</span></div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> it2 = a[plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>];</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> it1 = a[plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>-1];</div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="keywordflow">for</span> (k = plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k > n_abs + 1; k--)</div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> {</div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> temp = a[k-2] + it2 * gamma[k];</div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> it2 = it1 + it2 * alpha[k] * stheta;</div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> it1 = temp;</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> }</div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> </div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> <span class="comment">/* Compute final step if neccesary. */</span></div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> <span class="keywordflow">if</span> (n_abs < plan->N)</div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> {</div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> it2 = it1 + it2 * wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>[ROWK(n_abs)+1] * stheta;</div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> }</div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> </div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> <span class="comment">/* Compute final result by multiplying the fixed part</span></div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> <span class="comment"> * gamma_|n| (1-cos^2(theta))^{|n|/2}</span></div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> <span class="comment"> * for order n and the exponential part</span></div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> <span class="comment"> * e^{i n phi}</span></div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> <span class="comment"> * and add the result to f_m.</span></div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> f_m += it2 * wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>[ROW(n_abs)] *</div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> pow(1- stheta * stheta, 0.5*n_abs) * cexp(_Complex_I*n*sphi);</div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> }</div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> </div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> <span class="comment">/* Write result f_m for current node to array f. */</span></div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> plan-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[m] = f_m;</div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> }</div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> }</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> }</div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> </div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> <span class="keywordtype">void</span> nfsft_adjoint_direct(<a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan)</div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> {</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> <span class="keywordtype">int</span> m; <span class="comment">/*< The node index */</span></div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> <span class="keywordtype">int</span> k; <span class="comment">/*< The degree k */</span></div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> <span class="keywordtype">int</span> n; <span class="comment">/*< The order n */</span></div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> <span class="keywordtype">int</span> n_abs; <span class="comment">/*< The absolute value of the order n, ie n_abs = |n| */</span></div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>; <span class="comment">/*< Pointer to current three-term recurrence</span></div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> <span class="comment"> coefficient alpha_k^n for associated Legendre</span></div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> <span class="comment"> functions P_k^n */</span></div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>; <span class="comment">/*< Pointer to current three-term recurrence</span></div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> <span class="comment"> coefficient beta_k^n for associated Legendre</span></div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="comment"> functions P_k^n */</span></div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> <span class="keywordtype">double</span> _Complex it1; <span class="comment">/*< Auxilliary variable for Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="keywordtype">double</span> _Complex it2; <span class="comment">/*< Auxilliary variable for Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> <span class="keywordtype">double</span> _Complex temp; <span class="comment">/*< Auxilliary variable for Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="keywordtype">double</span> stheta; <span class="comment">/*< Current angle theta for Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> <span class="keywordtype">double</span> sphi; <span class="comment">/*< Current angle phi for Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> </div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> <span class="preprocessor"></span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = 0.0;</div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = 0.0;</div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = 0.0;</div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> <span class="keywordflow">if</span> (wisdom.flags & NFSFT_NO_DIRECT_ALGORITHM)</div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> {</div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> }</div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> </div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <span class="comment">/* Initialise spherical Fourier coefficients array with zeros. */</span></div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> memset(plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,0U,plan-><a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> [...]
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> </div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> <span class="comment">/* Distinguish by bandwidth N. */</span></div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> == 0)</div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> {</div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> <span class="comment">/* N == 0 */</span></div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> </div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> <span class="comment">/* Constant function */</span></div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="keywordflow">for</span> (m = 0; m < plan-><a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; m++)</div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> {</div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(0,0,plan)] += plan-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[m];</div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> }</div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> }</div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> {</div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="comment">/* N > 0 */</span></div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> </div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> <span class="preprocessor"></span> <span class="comment">/* Traverse all orders n. */</span></div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(n,n_abs,alpha,gamma,m,stheta,sphi,it2,it1,k,temp)</span></div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> {</div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="comment">/* Take absolute value of n. */</span></div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> n_abs = abs(n);</div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> </div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> <span class="comment">/* Get pointers to three-term recurrence coefficients arrays. */</span></div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> alpha = &(wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>[ROW(n_abs)]);</div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> gamma = &(wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>[ROW(n_abs)]);</div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> </div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> <span class="comment">/* Traverse all nodes. */</span></div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> <span class="keywordflow">for</span> (m = 0; m < plan-><a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; m++)</div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> {</div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> <span class="comment">/* Scale angle theta from [0,1/2] to [0,pi] and apply cosine. */</span></div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> stheta = cos(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*m+1]);</div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> <span class="comment">/* Scale angle phi from [-1/2,1/2] to [-pi,pi]. */</span></div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> sphi = 2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*m];</div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> </div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="comment">/* Transposed Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> </div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> <span class="comment">/* Initial step */</span></div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> it1 = plan-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[m] * wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n [...]
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> pow(1 - stheta * stheta, 0.5*n_abs) * cexp(-_Complex_I*n*sphi);</div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(n_abs,n,plan)] += it1;</div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> it2 = 0.0;</div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> </div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> <span class="keywordflow">if</span> (n_abs < plan->N)</div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> {</div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> it2 = it1 * wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>[ROWK(n_abs)+1] * stheta;</div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(n_abs+1,n,plan)] += it2;</div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> }</div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> </div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> <span class="comment">/* Loop for transposed Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> <span class="keywordflow">for</span> (k = n_abs+2; k <= plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> {</div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> temp = it2;</div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> it2 = alpha[k] * stheta * it2 + gamma[k] * it1;</div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> it1 = temp;</div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,plan)] += it2;</div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> }</div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> }</div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> }</div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> <span class="preprocessor"></span> <span class="comment">/* Traverse all nodes. */</span></div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> <span class="keywordflow">for</span> (m = 0; m < plan-><a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; m++)</div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> {</div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> <span class="comment">/* Scale angle theta from [0,1/2] to [0,pi] and apply cosine. */</span></div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> stheta = cos(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*m+1]);</div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="comment">/* Scale angle phi from [-1/2,1/2] to [-pi,pi]. */</span></div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> sphi = 2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*m];</div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> </div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="comment">/* Traverse all orders n. */</span></div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> {</div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> <span class="comment">/* Take absolute value of n. */</span></div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> n_abs = abs(n);</div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> </div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> <span class="comment">/* Get pointers to three-term recurrence coefficients arrays. */</span></div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> alpha = &(wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>[ROW(n_abs)]);</div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> gamma = &(wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>[ROW(n_abs)]);</div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> </div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> <span class="comment">/* Transposed Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> </div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="comment">/* Initial step */</span></div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> it1 = plan-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[m] * wisdom.<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f [...]
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> pow(1 - stheta * stheta, 0.5*n_abs) * cexp(-_Complex_I*n*sphi);</div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(n_abs,n,plan)] += it1;</div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> it2 = 0.0;</div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> </div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="keywordflow">if</span> (n_abs < plan->N)</div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> {</div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> it2 = it1 * wisdom.<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>[ROWK(n_abs)+1] * stheta;</div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(n_abs+1,n,plan)] += it2;</div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> }</div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> </div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> <span class="comment">/* Loop for transposed Clenshaw algorithm */</span></div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> <span class="keywordflow">for</span> (k = n_abs+2; k <= plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> {</div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> temp = it2;</div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> it2 = alpha[k] * stheta * it2 + gamma[k] * it1;</div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> it1 = temp;</div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,plan)] += it2;</div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> }</div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> }</div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> }</div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> </div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> <span class="comment">/* Check, if we compute with L^2-normalized spherical harmonics. If so,</span></div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> <span class="comment"> * multiply spherical Fourier coefficients with corresponding normalization</span></div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> <span class="comment"> * weight. */</span></div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_NORMALIZED)</div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> {</div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> <span class="comment">/* Traverse Fourier coefficients array. */</span></div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k,n)</span></div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k <= plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> {</div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> {</div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> <span class="comment">/* Multiply with normalization weight. */</span></div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,plan)] *=</div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> sqrt((2*k+1)/(4.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>));</div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> }</div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> }</div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> }</div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> </div>
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> <span class="comment">/* Set unused coefficients to zero. */</span></div>
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_ZERO_F_HAT)</div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> {</div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N+1; n++)</div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> {</div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> memset(&plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(-plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>-1,n,plan)],0U,</div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> (plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>+1+abs(n))*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> }</div>
-<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> }</div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> }</div>
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> </div>
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> <span class="keywordtype">void</span> nfsft_trafo(<a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan)</div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> {</div>
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> <span class="keywordtype">int</span> k; <span class="comment">/*< The degree k */</span></div>
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> <span class="keywordtype">int</span> n; <span class="comment">/*< The order n */</span></div>
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> <span class="preprocessor"></span> ticks t0, t1;</div>
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> <span class="preprocessor"></span><span class="preprocessor"> #ifdef DEBUG</span></div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> <span class="preprocessor"></span> <span class="keywordtype">double</span> t, t_pre, t_nfft, t_fpt, t_c2e, t_norm;</div>
-<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> t_pre = 0.0;</div>
-<div class="line"><a name="l00928"></a><span class="lineno"> 928</span> t_norm = 0.0;</div>
-<div class="line"><a name="l00929"></a><span class="lineno"> 929</span> t_fpt = 0.0;</div>
-<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> t_c2e = 0.0;</div>
-<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> t_nfft = 0.0;</div>
-<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <span class="preprocessor"> #endif</span></div>
-<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> <span class="preprocessor"></span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = 0.0;</div>
-<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = 0.0;</div>
-<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = 0.0;</div>
-<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> <span class="keywordflow">if</span> (wisdom.flags & NFSFT_NO_FAST_ALGORITHM)</div>
-<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> {</div>
-<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> }</div>
-<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> </div>
-<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> <span class="comment">/* Check, if precomputation was done and that the bandwidth N is not too</span></div>
-<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> <span class="comment"> * big.</span></div>
-<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="keywordflow">if</span> (wisdom.<a class="code" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740" title="Indicates wether the structure has been initialized.">initialized</a> == 0 || plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> > wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b [...]
-<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> {</div>
-<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> }</div>
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> </div>
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> <span class="comment">/* Check, if slow transformation should be used due to small bandwidth. */</span></div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> < <a class="code" href="group__nfsft.html#ga54b840898df97bcd14af4cb004650ed3" title="The break-even bandwidth .">NFSFT_BREAK_EVEN</a>)</div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> {</div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> <span class="comment">/* Use NDSFT. */</span></div>
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> nfsft_trafo_direct(plan);</div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> }</div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> </div>
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> <span class="comment">/* Check for correct value of the bandwidth N. */</span></div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> <= wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>)</div>
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> {</div>
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> <span class="comment">/* Copy spherical Fourier coefficients, if necessary. */</span></div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_PRESERVE_F_HAT)</div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> {</div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> memcpy(plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>,plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,plan-><a class="code" href="structnfsft__plan [...]
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> }</div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> {</div>
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a> = plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> }</div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> </div>
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> <span class="comment">/* Propagate pointer values to the internal NFFT plan to assure</span></div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> <span class="comment"> * consistency. Pointers may have been modified externally.</span></div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> = plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>;</div>
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = plan-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size i [...]
-<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internal [...]
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> </div>
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> <span class="comment">/* Check, if we compute with L^2-normalized spherical harmonics. If so,</span></div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> <span class="comment"> * multiply spherical Fourier coefficients with corresponding normalization</span></div>
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> <span class="comment"> * weight. */</span></div>
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_NORMALIZED)</div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> {</div>
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> <span class="comment">/* Traverse Fourier coefficients array. */</span></div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k,n)</span></div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k <= plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> {</div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> {</div>
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> <span class="comment">/* Multiply with normalization weight. */</span></div>
-<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(k,n,plan)] *=</div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> sqrt((2*k+1)/(4.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>));</div>
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> }</div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> }</div>
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> }</div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> </div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="preprocessor"></span> <span class="comment">/* Check, which polynomial transform algorithm should be used. */</span></div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_USE_DPT)</div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> {</div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel for default(shared) private(n) num_threads(wisdom.nthreads)</span></div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> fpt_trafo_direct(wisdom.set_threads[omp_get_thread_num()],abs(n),</div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> &plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(abs(n),n,plan)],</div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> &plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(0,n,plan)],</div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>,0U);</div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="preprocessor"></span> <span class="comment">/* Use direct discrete polynomial transform DPT. */</span></div>
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> {</div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> <span class="comment">//fprintf(stderr,"nfsft_trafo: n = %d\n",n);</span></div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> fpt_trafo_direct(wisdom.<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>,abs(n),</div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> &plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(abs(n),n,plan)],</div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> &plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(0,n,plan)],</div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>,0U);</div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> }</div>
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> {</div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel for default(shared) private(n) num_threads(wisdom.nthreads)</span></div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> fpt_trafo(wisdom.set_threads[omp_get_thread_num()],abs(n),</div>
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span> &plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(abs(n),n,plan)],</div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> &plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(0,n,plan)],</div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span> plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>,0U);</div>
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> <span class="preprocessor"></span> <span class="comment">/* Use fast polynomial transform FPT. */</span></div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> {</div>
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span> <span class="comment">//fprintf(stderr,"nfsft_trafo: n = %d\n",n);</span></div>
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span> fpt_trafo(wisdom.<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>,abs(n),</div>
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> &plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(abs(n),n,plan)],</div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> &plan-><a class="code" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548" title="Internally used pointer to spherical Fourier coefficients.">f_hat_intern</a>[NFSFT_INDEX(0,n,plan)],</div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span> plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>,0U);</div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span> }</div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> <span class="preprocessor"></span> <span class="comment">/* Convert Chebyshev coefficients to Fourier coefficients. */</span></div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> <a class="code" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656" title="Converts coefficients with , from a linear combination of Chebyshev polynomials to coefficients m...">c2e</a>(plan);</div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> <span class="preprocessor"></span> <span class="comment">/* Check, which nonequispaced discrete Fourier transform algorithm should</span></div>
-<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> <span class="comment"> * be used.</span></div>
-<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_USE_NDFT)</div>
-<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> {</div>
-<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> <span class="comment">/* Use NDFT. */</span></div>
-<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> nfft_trafo_direct(&plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>);</div>
-<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> }</div>
-<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> {</div>
-<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> <span class="comment">/* Use NFFT. */</span></div>
-<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: nfft_trafo\n");</span></div>
-<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> nfft_trafo_2d(&plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>);</div>
-<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> }</div>
-<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> }</div>
-<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> </div>
-<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="keywordtype">void</span> nfsft_adjoint(<a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan)</div>
-<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> {</div>
-<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> <span class="keywordtype">int</span> k; <span class="comment">/*< The degree k */</span></div>
-<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> <span class="keywordtype">int</span> n; <span class="comment">/*< The order n */</span></div>
-<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> <span class="preprocessor"></span> ticks t0, t1;</div>
-<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span> <span class="preprocessor"></span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = 0.0;</div>
-<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = 0.0;</div>
-<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = 0.0;</div>
-<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span> <span class="keywordflow">if</span> (wisdom.flags & NFSFT_NO_FAST_ALGORITHM)</div>
-<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> {</div>
-<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span> }</div>
-<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> </div>
-<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> <span class="comment">/* Check, if precomputation was done and that the bandwidth N is not too</span></div>
-<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> <span class="comment"> * big.</span></div>
-<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span> <span class="keywordflow">if</span> (wisdom.<a class="code" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740" title="Indicates wether the structure has been initialized.">initialized</a> == 0 || plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> > wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b [...]
-<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span> {</div>
-<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span> }</div>
-<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span> </div>
-<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span> <span class="comment">/* Check, if slow transformation should be used due to small bandwidth. */</span></div>
-<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> < <a class="code" href="group__nfsft.html#ga54b840898df97bcd14af4cb004650ed3" title="The break-even bandwidth .">NFSFT_BREAK_EVEN</a>)</div>
-<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span> {</div>
-<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span> <span class="comment">/* Use adjoint NDSFT. */</span></div>
-<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span> nfsft_adjoint_direct(plan);</div>
-<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span> }</div>
-<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span> <span class="comment">/* Check for correct value of the bandwidth N. */</span></div>
-<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a> <= wisdom.<a class="code" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51" title="Stores precomputation flags.">N_MAX</a>)</div>
-<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span> {</div>
-<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: Starting\n");</span></div>
-<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span> <span class="comment">/* Propagate pointer values to the internal NFFT plan to assure</span></div>
-<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span> <span class="comment"> * consistency. Pointers may have been modified externally.</span></div>
-<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span> plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> = plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>;</div>
-<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span> plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = plan-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size i [...]
-<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span> plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector o [...]
-<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span> </div>
-<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span> <span class="preprocessor"></span> <span class="comment">/* Check, which adjoint nonequispaced discrete Fourier transform algorithm</span></div>
-<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span> <span class="comment"> * should be used.</span></div>
-<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_USE_NDFT)</div>
-<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span> {</div>
-<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: Executing nfft_adjoint_direct\n");</span></div>
-<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span> <span class="comment">/* Use adjoint NDFT. */</span></div>
-<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span> nfft_adjoint_direct(&plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>);</div>
-<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span> }</div>
-<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span> {</div>
-<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: Executing nfft_adjoint\n");</span></div>
-<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: nfft_adjoint\n");</span></div>
-<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span> <span class="comment">/* Use adjoint NFFT. */</span></div>
-<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span> nfft_adjoint_2d(&plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>);</div>
-<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span> }</div>
-<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: Executing c2e_transposed\n");</span></div>
-<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> <span class="preprocessor"></span> <span class="comment">/* Convert Fourier coefficients to Chebyshev coefficients. */</span></div>
-<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> <a class="code" href="group__nfsft.html#ga0e033457136bc0ecb18bb57d3ee5aa37" title="Transposed version of the function c2e.">c2e_transposed</a>(plan);</div>
-<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span> <span class="preprocessor"></span> t0 = getticks();</div>
-<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span> <span class="preprocessor"></span> <span class="comment">/* Check, which transposed polynomial transform algorithm should be used */</span></div>
-<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_USE_DPT)</div>
-<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> {</div>
-<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel for default(shared) private(n) num_threads(wisdom.nthreads)</span></div>
-<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> fpt_transposed_direct(wisdom.set_threads[omp_get_thread_num()],abs(n),</div>
-<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span> &plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(abs(n),n,plan)],</div>
-<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> &plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(0,n,plan)],</div>
-<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>,0U);</div>
-<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> <span class="preprocessor"></span> <span class="comment">/* Use transposed DPT. */</span></div>
-<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> {</div>
-<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: Executing dpt_transposed\n");</span></div>
-<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> fpt_transposed_direct(wisdom.<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>,abs(n),</div>
-<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> &plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(abs(n),n,plan)],</div>
-<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> &plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(0,n,plan)],</div>
-<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>,0U);</div>
-<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> }</div>
-<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> {</div>
-<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel for default(shared) private(n) num_threads(wisdom.nthreads)</span></div>
-<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span> fpt_transposed(wisdom.set_threads[omp_get_thread_num()],abs(n),</div>
-<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span> &plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(abs(n),n,plan)],</div>
-<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span> &plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(0,n,plan)],</div>
-<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>,0U);</div>
-<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span> <span class="preprocessor"></span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: fpt_transposed\n");</span></div>
-<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> <span class="comment">/* Use transposed FPT. */</span></div>
-<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N; n++)</div>
-<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span> {</div>
-<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: Executing fpt_transposed\n");</span></div>
-<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> fpt_transposed(wisdom.<a class="code" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2" title="Structure for discrete polynomial transform (DPT)">set</a>,abs(n),</div>
-<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> &plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(abs(n),n,plan)],</div>
-<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> &plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(0,n,plan)],</div>
-<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>,0U);</div>
-<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> }</div>
-<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> <span class="preprocessor">#ifdef MEASURE_TIME</span></div>
-<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> <span class="preprocessor"></span> t1 = getticks();</div>
-<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span> plan-><a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span> <span class="comment">/* Check, if we compute with L^2-normalized spherical harmonics. If so,</span></div>
-<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span> <span class="comment"> * multiply spherical Fourier coefficients with corresponding normalization</span></div>
-<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span> <span class="comment"> * weight. */</span></div>
-<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_NORMALIZED)</div>
-<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span> {</div>
-<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: Normalizing\n");</span></div>
-<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span> <span class="comment">/* Traverse Fourier coefficients array. */</span></div>
-<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span> <span class="preprocessor"> #pragma omp parallel for default(shared) private(k,n)</span></div>
-<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span> <span class="preprocessor"></span> <span class="keywordflow">for</span> (k = 0; k <= plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span> {</div>
-<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span> {</div>
-<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span> <span class="comment">/* Multiply with normalization weight. */</span></div>
-<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span> plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,plan)] *=</div>
-<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span> sqrt((2*k+1)/(4.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>));</div>
-<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span> }</div>
-<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span> }</div>
-<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span> }</div>
-<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span> </div>
-<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span> <span class="comment">/* Set unused coefficients to zero. */</span></div>
-<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694" title="the planner flags">flags</a> & NFSFT_ZERO_F_HAT)</div>
-<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span> {</div>
-<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: Setting to zero\n");</span></div>
-<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> <span class="keywordflow">for</span> (n = -plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; n <= plan->N+1; n++)</div>
-<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span> {</div>
-<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span> memset(&plan-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(-plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>-1,n,plan)],0U,</div>
-<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span> (plan-><a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>+1+abs(n))*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span> }</div>
-<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span> }</div>
-<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span> <span class="comment">//fprintf(stderr,"nfsft_adjoint: Finished\n");</span></div>
-<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> }</div>
-<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span> }</div>
-<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span> </div>
-<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span> <span class="keywordtype">void</span> nfsft_precompute_x(<a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan)</div>
-<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span> {</div>
-<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span> <span class="comment">/* Pass angle array to NFFT plan. */</span></div>
-<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span> plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> = plan-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>;</div>
-<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span> </div>
-<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span> <span class="comment">/* Precompute. */</span></div>
-<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span> nfft_precompute_one_psi(&plan-><a class="code" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e" title="the internal NFFT plan">plan_nfft</a>);</div>
-<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span> }</div>
-<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfsft__benchomp_8c_source.html b/doc/api/html/nfsft__benchomp_8c_source.html
deleted file mode 100644
index 139527d..0000000
--- a/doc/api/html/nfsft__benchomp_8c_source.html
+++ /dev/null
@@ -1,567 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsft_benchomp.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_e6016a3bd4e6017d6b851aae5334ffd2.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsft_benchomp.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <unistd.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> </div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <<a class="code" href="nfft3_8h.html">nfft3.h</a>></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#define NREPEAT 5</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keyword">static</span> FILE* file_out_tex = NULL;</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keywordtype">int</span> get_nthreads_array(<span class="keywordtype">int</span> **arr)</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> {</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">int</span> max_threads = nfft_get_omp_num_threads();</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> alloc_num = 2;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">int</span> ret_number = 0;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keywordtype">int</span> max_threads_pw2 = (max_threads / 2) * 2 == max_threads ? 1 : 0;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordflow">if</span> (max_threads <= 5)</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> *arr = (<span class="keywordtype">int</span>*) malloc(max_threads*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">for</span> (k = 0; k < max_threads; k++)</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> *(*arr + k) = k+1;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">return</span> max_threads;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> }</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordflow">for</span> (k = 1; k <= max_threads; k*=2, alloc_num++);</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> *arr = (<span class="keywordtype">int</span>*) malloc(alloc_num*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">for</span> (k = 1; k <= max_threads; k*=2)</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> {</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordflow">if</span> (k != max_threads && 2*k > max_threads && max_threads_pw2)</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> {</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> *(*arr + ret_number) = max_threads/2;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> ret_number++;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> }</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> *(*arr + ret_number) = k;</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> ret_number++;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">if</span> (k != max_threads && 2*k > max_threads)</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> {</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> *(*arr + ret_number) = max_threads;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> ret_number++;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> }</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> }</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">return</span> ret_number;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> } </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">void</span> check_result_value(<span class="keyword">const</span> <span class="keywordtype">int</span> val, <span class="keyword">const</span> <span class="keywordtype">int</span> ok, <span class="keyword">const</span> <span class="keywordtype">char</span> *msg)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> {</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">if</span> (val != ok)</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> {</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> fprintf(stderr, <span class="stringliteral">"ERROR %s: %d not %d\n"</span>, msg, val, ok);</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> exit(1);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> }</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">void</span> run_test_create(<span class="keywordtype">int</span> trafo_adjoint, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> {</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">char</span> cmd[1025];</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> snprintf(cmd, 1024, <span class="stringliteral">"./nfsft_benchomp_createdataset %d %d %d > nfsft_benchomp_test.data"</span>, trafo_adjoint, N, M);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> fprintf(stderr, <span class="stringliteral">"%s\n"</span>, cmd);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> check_result_value(system(cmd), 0, <span class="stringliteral">"createdataset"</span>);</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> }</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keywordtype">void</span> run_test_init_output()</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> {</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> FILE *f = fopen(<span class="stringliteral">"nfsft_benchomp_test.result"</span>, <span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">if</span> (f!= NULL)</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> fclose(f);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> }</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> {</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">int</span> trafo_adjoint;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordtype">int</span> N;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordtype">int</span> M;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordtype">int</span> m;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordtype">int</span> nfsft_flags;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordtype">int</span> psi_flags;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> } <a class="code" href="structs__param.html">s_param</a>;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> {</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordtype">double</span> avg;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordtype">double</span> min;</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">double</span> max;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> } <a class="code" href="structs__resval.html">s_resval</a>;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> {</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordtype">int</span> nthreads;</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <a class="code" href="structs__resval.html">s_resval</a> resval[6];</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> } <a class="code" href="structs__result.html">s_result</a>;</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> {</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <a class="code" href="structs__param.html">s_param</a> param;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <a class="code" href="structs__result.html">s_result</a> *results;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">int</span> nresults;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> } <a class="code" href="structs__testset.html">s_testset</a>;</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordtype">void</span> run_test(<a class="code" href="structs__resval.html">s_resval</a> *res, <span class="keywordtype">int</span> nrepeat, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> nfsft_flags, <span class="keywordtype">int</span> psi_flags, <span class="keywordtype">int</span> nthreads)</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> {</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> FILE *f;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordtype">char</span> cmd[1025];</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordtype">int</span> r,t;</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">for</span> (t = 0; t < 6; t++)</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> {</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> res[t].avg = 0.0; res[t].min = 1.0/0.0; res[t].max = 0.0;</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> }</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">if</span> (nthreads < 2)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> snprintf(cmd, 1024, <span class="stringliteral">"./nfsft_benchomp_detail_single %d %d %d %d < nfsft_benchomp_test.data > nfsft_benchomp_test.out"</span>, m, nfsft_flags, psi_flags, nrepeat);</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> snprintf(cmd, 1024, <span class="stringliteral">"./nfsft_benchomp_detail_threads %d %d %d %d %d < nfsft_benchomp_test.data > nfsft_benchomp_test.out"</span>, m, nfsft_flags, psi_flags, nrepeat, nthreads);</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> fprintf(stderr, <span class="stringliteral">"%s\n"</span>, cmd);</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> </div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> check_result_value(system(cmd), 0, cmd);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> </div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> f = fopen(<span class="stringliteral">"nfsft_benchomp_test.out"</span>, <span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="keywordflow">for</span> (r = 0; r < nrepeat; r++)</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> {</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordtype">int</span> retval;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keywordtype">double</span> v[6];</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="comment">// FILE *f;</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="comment">// check_result_value(system(cmd), 0, cmd);</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="comment">// f = fopen("nfsft_benchomp_test.out", "r");</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> retval = fscanf(f, <span class="stringliteral">"%lg %lg %lg %lg %lg %lg"</span>, v, v+1, v+2, v+3, v+4, v+5);</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> check_result_value(retval, 6, <span class="stringliteral">"read nfsft_benchomp_test.out"</span>);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="comment">// fclose(f);</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="comment">// fprintf(stderr, "%.3e %.3e %.3e %.3e %.3e %.3e\n", v[0], v[1], v[2], v[3], v[4], v[5]);</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">for</span> (t = 0; t < 6; t++)</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> {</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> res[t].avg += v[t];</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">if</span> (res[t].min > v[t])</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> res[t].min = v[t];</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="keywordflow">if</span> (res[t].max < v[t])</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> res[t].max = v[t];</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> }</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> }</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> fclose(f);</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">for</span> (t = 0; t < 6; t++)</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> res[t].avg /= nrepeat;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> fprintf(stderr, <span class="stringliteral">"%d %d: "</span>, nthreads, nrepeat);</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">for</span> (t = 0; t < 6; t++)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> fprintf(stderr, <span class="stringliteral">"%.3e %.3e %.3e | "</span>, res[t].avg, res[t].min, res[t].max);</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> fprintf(stderr, <span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> }</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *get_psi_string(<span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> {</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="keywordflow">if</span> (flags & PRE_PSI)</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">return</span> <span class="stringliteral">"prepsi"</span>;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (flags & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">return</span> <span class="stringliteral">"unknownPSI"</span>;</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> </div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">return</span> <span class="stringliteral">"nopsi"</span>;</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> }</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *get_sort_string(<span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> {</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">if</span> (flags & NFFT_SORT_NODES)</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordflow">return</span> <span class="stringliteral">"sorted"</span>;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">return</span> <span class="stringliteral">"unsorted"</span>;</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> }</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keyword">const</span> <span class="keywordtype">char</span> *get_adjoint_omp_string(<span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> {</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">if</span> (flags & NFFT_OMP_BLOCKWISE_ADJOINT)</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="keywordflow">return</span> <span class="stringliteral">"blockwise"</span>;</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">return</span> <span class="stringliteral">""</span>;</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> }</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> </div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="preprocessor">#define MASK_TA (1U<<1)</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_N (1U<<2)</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_M (1U<<4)</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_WINM (1U<<5)</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FLAGS_PSI (1U<<6)</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FLAGS_SORT (1U<<7)</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FLAGS_BW (1U<<8)</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="preprocessor"></span><span class="preprocessor">#define MASK_FLAGS_FPT (1U<<9)</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> determine_different_parameters(<a class="code" href="structs__testset.html">s_testset</a> *testsets, <span class="keywordtype">int</span> ntestsets)</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> {</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> mask = 0;</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> </div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordflow">if</span> (ntestsets < 2)</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="keywordflow">for</span> (t = 1; t < ntestsets; t++)</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> {</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">if</span> (testsets[t-1].param.trafo_adjoint != testsets[t].param.trafo_adjoint)</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> mask |= MASK_TA;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="keywordflow">if</span> (testsets[t-1].param.N != testsets[t].param.N)</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> mask |= MASK_N;</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="keywordflow">if</span> (testsets[t-1].param.M != testsets[t].param.M)</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> mask |= MASK_M;</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="keywordflow">if</span> (testsets[t-1].param.m != testsets[t].param.m)</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> mask |= MASK_WINM;</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="keywordflow">if</span> ((testsets[t-1].param.psi_flags & PRE_ONE_PSI) != (testsets[t].param.psi_flags & PRE_ONE_PSI))</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> mask |= MASK_FLAGS_PSI;</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="keywordflow">if</span> ((testsets[t-1].param.psi_flags & NFFT_SORT_NODES) != (testsets[t].param.psi_flags & NFFT_SORT_NODES))</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> mask |= MASK_FLAGS_SORT;</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keywordflow">if</span> ((testsets[t-1].param.psi_flags & NFFT_OMP_BLOCKWISE_ADJOINT) != (testsets[t].param.psi_flags & NFFT_OMP_BLOCKWISE_ADJOINT))</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> mask |= MASK_FLAGS_BW;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="keywordflow">if</span> ((testsets[t-1].param.nfsft_flags & NFSFT_USE_DPT) != (testsets[t].param.nfsft_flags & NFSFT_USE_DPT))</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> mask |= MASK_FLAGS_FPT;</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> }</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> </div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="keywordflow">return</span> mask;</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> }</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> </div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="keywordtype">void</span> get_plot_title(<span class="keywordtype">char</span> *outstr, <span class="keywordtype">int</span> maxlen, <span class="keywordtype">char</span> *hostname, <a class="code" href="structs__param.html">s_param</a> param, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> diff_mask)</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> {</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> mask = ~diff_mask;</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="keywordtype">int</span> offset = 0;</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="keywordtype">int</span> len;</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> </div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> len = snprintf(outstr, maxlen, <span class="stringliteral">"%s"</span>, hostname);</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> offset += len;</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> </div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordflow">if</span> (mask & MASK_TA)</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> {</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" $\\mathrm{NFSFT}%s$"</span>, param.trafo_adjoint==0?<span class="stringliteral">""</span>:<span class="stringliteral">"^\\top"</span>);</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> offset += len;</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> }</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> </div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="keywordflow">if</span> (mask & MASK_N)</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> {</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" N=%d"</span>, param.N);</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> offset += len;</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> }</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="keywordflow">if</span> (mask & MASK_M)</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> {</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" M=%d"</span>, param.M);</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> offset += len;</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> }</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="keywordflow">if</span> (mask & MASK_WINM)</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> {</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" m=%d"</span>, param.m);</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> offset += len;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> }</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> </div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="keywordflow">if</span> (mask & MASK_FLAGS_PSI)</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> {</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" %s"</span>, get_psi_string(param.psi_flags));</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> offset += len;</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> }</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="keywordflow">if</span> (mask & MASK_FLAGS_SORT)</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> {</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" %s"</span>, get_sort_string(param.psi_flags));</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> offset += len;</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> }</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> </div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="keywordflow">if</span> ((mask & MASK_FLAGS_BW) && strlen(get_adjoint_omp_string(param.psi_flags)) > 0)</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> {</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> len = snprintf(outstr+offset, maxlen-offset, <span class="stringliteral">" %s"</span>, get_adjoint_omp_string(param.psi_flags));</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> offset += len;</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> }</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> </div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="keywordflow">if</span> (mask & MASK_FLAGS_FPT)</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> {</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> len = snprintf(outstr+offset, maxlen-offset, param.nfsft_flags & NFSFT_USE_DPT ? <span class="stringliteral">" DPT"</span> : <span class="stringliteral">""</span>);</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="keywordflow">if</span> (len < 0 || len+offset >= maxlen-1) <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> offset += len;</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> }</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> </div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> }</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> </div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="keywordtype">void</span> print_output_speedup_total_tref(FILE *out, <a class="code" href="structs__testset.html">s_testset</a> *testsets, <span class="keywordtype">int</span> ntestsets, <span class="keywordtype">int</span> use_tref, <span class="keywordtype">double</span> tref)</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> {</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="keywordtype">int</span> i, t;</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="keywordtype">char</span> hostname[1025];</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="keywordtype">char</span> plottitle[1025];</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> diff_mask = determine_different_parameters(testsets, ntestsets);</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordflow">if</span> (gethostname(hostname, 1024) != 0)</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> strncpy(hostname, <span class="stringliteral">"unnamed"</span>, 1024);</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> </div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> get_plot_title(plottitle, 1024, hostname, testsets[0].param, diff_mask);</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> </div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> fprintf(out, <span class="stringliteral">"\\begin{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> fprintf(out, <span class="stringliteral">"\\begin{axis}["</span>);</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> fprintf(out, <span class="stringliteral">"width=0.9\\textwidth, height=0.6\\textwidth, x tick label style={ /pgf/number format/1000 sep=}, xlabel=Number of threads, ylabel=Speedup, xtick=data, legend style={ legend pos = north west, legend columns=1}, ymajorgrids=true, yminorgrids=true, minor y tick num=4, "</span>);</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> fprintf(out, <span class="stringliteral">" title={%s}"</span>, plottitle);</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> fprintf(out, <span class="stringliteral">" ]\n"</span>);</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> </div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="keywordflow">for</span> (t = 0; t < ntestsets; t++)</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> {</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <a class="code" href="structs__testset.html">s_testset</a> testset = testsets[t];</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> fprintf(stderr, <span class="stringliteral">"%s $\\mathrm{NFSFT}%s$ N=%d M=%d m=%d %s %s %s}"</span>, hostname, testset.param.trafo_adjoint==0?<span class="stringliteral">""</span>:<span class="stringliteral">"^\\top"</span>, testset.param.N, testset.param.M, testset.param.m, get_psi_string(testset.param.psi_flags), get_sort_string(testset.param.psi_flags), get_adjoint_omp_stri [...]
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> fprintf(stderr, <span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> </div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="keywordflow">for</span> (i = 0; i < testset.nresults; i++)</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="keywordflow">if</span> (use_tref == 1)</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, tref/testset.results[i].resval[5].avg);</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[0].resval[5].avg/testset.results[i].resval[5].avg);</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="keywordflow">for</span> (i = 0; i < testset.nresults; i++)</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="keywordflow">if</span> (use_tref == 1)</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> fprintf(stderr, <span class="stringliteral">"%d:%.3f "</span>, testset.results[i].nthreads, tref/testset.results[i].resval[5].avg);</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> fprintf(stderr, <span class="stringliteral">"%d:%.3f "</span>, testset.results[i].nthreads, testset.results[0].resval[5].avg/testset.results[i].resval[5].avg);</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> fprintf(stderr, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> }</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> </div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> fprintf(out, <span class="stringliteral">"\\legend{{"</span>);</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="keywordflow">for</span> (t = 0; t < ntestsets; t++)</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> {</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="keywordtype">char</span> title[256];</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="keywordflow">if</span> (t > 0)</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> fprintf(out, <span class="stringliteral">"},{"</span>);</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> get_plot_title(title, 255, <span class="stringliteral">""</span>, testsets[t].param, ~(diff_mask));</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> fprintf(out, <span class="stringliteral">"%s"</span>, title);</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> }</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> fprintf(out, <span class="stringliteral">"}}\n"</span>);</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> fprintf(out, <span class="stringliteral">"\\end{axis}\n"</span>);</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> fprintf(out, <span class="stringliteral">"\\end{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> fprintf(out, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> </div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> fflush(out);</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> }</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> </div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="keywordtype">void</span> print_output_speedup_total(FILE *out, <a class="code" href="structs__testset.html">s_testset</a> *testsets, <span class="keywordtype">int</span> ntestsets, <span class="keywordtype">int</span> use_tref)</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> {</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="keywordtype">double</span> tref = 1.0/0.0;</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="keywordtype">int</span> t, k;</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> </div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="keywordflow">if</span> (use_tref == 1)</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="keywordflow">for</span> (t = 0; t < ntestsets; t++)</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="keywordflow">for</span> (k = 0; k < testsets[t].nresults; k++)</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="keywordflow">if</span> (testsets[t].results[k].nthreads == 1 && testsets[t].results[k].resval[5].avg < tref)</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> tref = testsets[t].results[k].resval[5].avg;</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> </div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> print_output_speedup_total_tref(out, testsets, ntestsets, use_tref, tref);</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> }</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> </div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="keywordtype">void</span> print_output_histo_PENRT(FILE *out, <a class="code" href="structs__testset.html">s_testset</a> testset)</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> {</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="keywordtype">int</span> i, size = testset.nresults;</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="keywordtype">char</span> hostname[1025];</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> </div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="keywordflow">if</span> (gethostname(hostname, 1024) != 0)</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> strncpy(hostname, <span class="stringliteral">"unnamed"</span>, 1024);</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> </div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> fprintf(out, <span class="stringliteral">"\\begin{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> fprintf(out, <span class="stringliteral">"\\begin{axis}["</span>);</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> fprintf(out, <span class="stringliteral">"width=0.9\\textwidth, height=0.6\\textwidth, "</span>);</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> fprintf(out, <span class="stringliteral">"symbolic x coords={"</span>);</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="keywordflow">if</span> (i > 0)</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> fprintf(out, <span class="stringliteral">",%d"</span>, testset.results[i].nthreads);</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> fprintf(out, <span class="stringliteral">"%d"</span>, testset.results[i].nthreads);</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> </div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> fprintf(out, <span class="stringliteral">"}, x tick label style={ /pgf/number format/1000 sep=}, xlabel=Number of threads, ylabel=Time in s, xtick=data, legend style={legend columns=-1}, ybar, bar width=7pt, ymajorgrids=true, yminorgrids=true, minor y tick num=1, "</span>);</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> fprintf(out, <span class="stringliteral">" title={%s $\\mathrm{NFSFT}%s$ N=%d M=%d m=%d %s %s %s}"</span>, hostname, testset.param.trafo_adjoint==0?<span class="stringliteral">""</span>:<span class="stringliteral">"^\\top"</span>, testset.param.N, testset.param.M, testset.param.m, get_psi_string(testset.param.psi_flags), get_sort_string(testset.param.psi_flags), get_adjoint_omp_s [...]
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> fprintf(out, <span class="stringliteral">" ]\n"</span>);</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[1].avg);</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> </div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[2].avg);</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> </div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[3].avg);</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> </div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[0].avg + testset.results[i].resval[4].avg);</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> fprintf(out, <span class="stringliteral">"\\addplot coordinates {"</span>);</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> fprintf(out, <span class="stringliteral">"(%d, %.6e) "</span>, testset.results[i].nthreads, testset.results[i].resval[5].avg);</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> fprintf(out, <span class="stringliteral">"};\n"</span>);</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> fprintf(out, <span class="stringliteral">"\\legend{%s,%s,$\\mathrm{NFFT}%s$,rest,total}\n"</span>, testset.param.nfsft_flags & NFSFT_USE_DPT ? <span class="stringliteral">"DPT"</span> : <span class="stringliteral">"FPT"</span>, testset.param.trafo_adjoint==0?<span class="stringliteral">"c2e"</span>:<span class="stringliteral">"$\\mathrm{c2e}^\\top$"</span> [...]
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> fprintf(out, <span class="stringliteral">"\\end{axis}\n"</span>);</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> fprintf(out, <span class="stringliteral">"\\end{tikzpicture}\n"</span>);</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> fprintf(out, <span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> </div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> fflush(out);</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> }</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> </div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="keywordtype">void</span> run_testset(<a class="code" href="structs__testset.html">s_testset</a> *testset, <span class="keywordtype">int</span> trafo_adjoint, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> nfsft_flags, <span class="keywordtype">int</span> psi_flags, <span class="keywordtype" [...]
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> {</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="keywordtype">int</span> i;</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> testset->param.trafo_adjoint = trafo_adjoint;</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> testset->param.N = N;</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> testset->param.M = M;</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> testset->param.m = m;</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> testset->param.nfsft_flags = nfsft_flags;</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> testset->param.psi_flags = psi_flags;</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> testset->results = (<a class="code" href="structs__result.html">s_result</a>*) malloc(n_threads_array_size*<span class="keyword">sizeof</span>(<a class="code" href="structs__result.html">s_result</a>));</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> testset->nresults = n_threads_array_size;</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> </div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> run_test_create(testset->param.trafo_adjoint, testset->param.N, testset->param.M);</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="keywordflow">for</span> (i = 0; i < n_threads_array_size; i++)</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> {</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> testset->results[i].nthreads = nthreads_array[i];</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> run_test(testset->results[i].resval, NREPEAT, testset->param.m, testset->param.nfsft_flags, testset->param.psi_flags, testset->results[i].nthreads = nthreads_array[i]);</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> }</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> </div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> }</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> </div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="keywordtype">void</span> test1(<span class="keywordtype">int</span> *nthreads_array, <span class="keywordtype">int</span> n_threads_array_size, <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> {</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <a class="code" href="structs__testset.html">s_testset</a> testsets[4];</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> </div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> run_testset(&testsets[0], 0, 1024, 1000000, m, 0, NFFT_SORT_NODES, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="preprocessor"></span> print_output_histo_PENRT(file_out_tex, testsets[0]);</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> run_testset(&testsets[1], 1, 1024, 1000000, m, 0, NFFT_SORT_NODES | NFFT_OMP_BLOCKWISE_ADJOINT, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="preprocessor"></span> print_output_histo_PENRT(file_out_tex, testsets[1]);</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> print_output_speedup_total(file_out_tex, testsets, 2, 0);</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> </div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> run_testset(&testsets[2], 0, 1024, 1000000, m, NFSFT_USE_DPT, NFFT_SORT_NODES, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor"></span> print_output_histo_PENRT(file_out_tex, testsets[2]);</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> run_testset(&testsets[3], 1, 1024, 1000000, m, NFSFT_USE_DPT, NFFT_SORT_NODES | NFFT_OMP_BLOCKWISE_ADJOINT, nthreads_array, n_threads_array_size);</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="preprocessor">#if defined MEASURE_TIME && defined MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="preprocessor"></span> print_output_histo_PENRT(file_out_tex, testsets[3]);</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> print_output_speedup_total(file_out_tex, testsets+2, 2, 0);</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> }</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> </div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span>** argv)</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> {</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="keywordtype">int</span> *nthreads_array;</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="keywordtype">int</span> n_threads_array_size = get_nthreads_array(&nthreads_array);</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> </div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor">#if !(defined MEASURE_TIME && defined MEASURE_TIME_FFTW)</span></div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="preprocessor"></span> fprintf(stderr, <span class="stringliteral">"WARNING: Detailed time measurements for NFSFT are not activated.\n"</span>);</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> fprintf(stderr, <span class="stringliteral">"For more detailed plots, please re-run the configure script with options\n"</span>);</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> fprintf(stderr, <span class="stringliteral">"--enable-measure-time --enable-measure-time-fftw --enable-nfsft --enable-openmp\n"</span>);</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> fprintf(stderr, <span class="stringliteral">"and run \"make clean all\"\n\n"</span>);</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="keywordflow">for</span> (k = 0; k < n_threads_array_size; k++)</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> fprintf(stderr, <span class="stringliteral">"%d "</span>, nthreads_array[k]);</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> fprintf(stderr, <span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> </div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> file_out_tex = fopen(<span class="stringliteral">"nfsft_benchomp_results_plots.tex"</span>, <span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> </div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> test1(nthreads_array, n_threads_array_size, 2);</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> test1(nthreads_array, n_threads_array_size, 4);</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> test1(nthreads_array, n_threads_array_size, 6);</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> test1(nthreads_array, n_threads_array_size, 8);</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> </div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> fclose(file_out_tex);</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> </div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfsft__benchomp__createdataset_8c_source.html b/doc/api/html/nfsft__benchomp__createdataset_8c_source.html
deleted file mode 100644
index 272cc7d..0000000
--- a/doc/api/html/nfsft__benchomp__createdataset_8c_source.html
+++ /dev/null
@@ -1,165 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsft_benchomp_createdataset.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_e6016a3bd4e6017d6b851aae5334ffd2.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsft_benchomp_createdataset.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3372 2009-10-21 06:04:05Z skunis $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keywordtype">void</span> nfsft_benchomp_createdataset(<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> trafo_adjoint, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M)</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> t, j, k, n;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> R *x;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> C *f, *f_hat;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keywordtype">int</span> N_total = (2*N+2) * (2*N+2);</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> ptemp;</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> nfsft_init_guru(&ptemp, N, M, NFSFT_MALLOC_X | NFSFT_MALLOC_F |</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> NFSFT_MALLOC_F_HAT | NFSFT_NORMALIZED | NFSFT_PRESERVE_F_HAT,</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> PRE_PHI_HUT | PRE_PSI | FFTW_INIT | FFT_OUT_OF_PLACE, 6);</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> x = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*M*<span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> f = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> f_hat = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(N_total*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment">/* init pseudo-random nodes */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">for</span> (j = 0; j < M; j++)</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> {</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> x[2*j]= nfft_drand48() - K(0.5);</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> x[2*j+1]= K(0.5) * nfft_drand48();</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> }</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">if</span> (trafo_adjoint==0)</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> {</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">for</span> (k = 0; k <= N; k++)</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(f_hat+NFSFT_INDEX(k,n,&ptemp),1);</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> }</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> {</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(f,M);</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> }</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> printf(<span class="stringliteral">"%d %d %d\n"</span>, trafo_adjoint, N, M);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">for</span> (j=0; j < M; j++)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> {</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span> (t=0; t < 2; t++)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> printf(<span class="stringliteral">"%.16e "</span>, x[2*j+t]);</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> }</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">if</span> (trafo_adjoint==0)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> {</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">for</span> (k = 0; k <= N; k++)</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> printf(<span class="stringliteral">"%.16e %.16e\n"</span>, creal(f_hat[NFSFT_INDEX(k,n,&ptemp)]), cimag(f_hat[NFSFT_INDEX(k,n,&ptemp)]));</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> }</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> {</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">for</span> (j=0; j < M; j++)</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> printf(<span class="stringliteral">"%.16e %.16e\n"</span>, creal(f[j]), cimag(f[j]));</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> }</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> }</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> {</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordtype">int</span> trafo_adjoint;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordtype">int</span> N;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordtype">int</span> M;</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">if</span> (argc < 4) {</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> fprintf(stderr, <span class="stringliteral">"usage: tr_adj N M\n"</span>);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> trafo_adjoint = atoi(argv[1]);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">if</span> (trafo_adjoint < 0 && trafo_adjoint > 1)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> trafo_adjoint = 1;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> N = atoi(argv[2]);</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> M = atoi(argv[3]);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> fprintf(stderr, <span class="stringliteral">"tr_adj=%d, N=%d, M=%d\n"</span>, trafo_adjoint, N, M);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> nfsft_benchomp_createdataset(trafo_adjoint, N, M);</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfsft__benchomp__detail_8c_source.html b/doc/api/html/nfsft__benchomp__detail_8c_source.html
deleted file mode 100644
index a09ac95..0000000
--- a/doc/api/html/nfsft__benchomp__detail_8c_source.html
+++ /dev/null
@@ -1,267 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsft_benchomp_detail.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_e6016a3bd4e6017d6b851aae5334ffd2.html">nfsft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsft_benchomp_detail.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3372 2009-10-21 06:04:05Z skunis $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor"></span><span class="preprocessor">#include <omp.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">void</span> bench_openmp_readfile(FILE *infile, <span class="keywordtype">int</span> *trafo_adjoint, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> *M, <span class="keywordtype">double</span> **x, C **f_hat, C **f)</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> {</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">double</span> re,im;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">int</span> k, n, j, t;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> fscanf(infile, <span class="stringliteral">"%d %d %d"</span>, trafo_adjoint, N, M);</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> *x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*(*M)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> *f_hat = (C*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((2*(*N)+2) * (2*(*N)+2) * <span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> *f = (C*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((*M)*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> memset(*f_hat,0U,(2*(*N)+2) * (2*(*N)+2) * <span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> memset(*f,0U,(*M)*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor"></span> fftw_import_wisdom_from_filename(<span class="stringliteral">"nfsft_benchomp_detail_threads.plan"</span>);</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor"></span> fftw_import_wisdom_from_filename(<span class="stringliteral">"nfsft_benchomp_detail_single.plan"</span>);</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> nfsft_init_guru(&plan, *N, *M, NFSFT_MALLOC_X | NFSFT_MALLOC_F |</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> NFSFT_MALLOC_F_HAT | NFSFT_NORMALIZED | NFSFT_PRESERVE_F_HAT,</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> PRE_PHI_HUT | FFTW_INIT | FFT_OUT_OF_PLACE, 6);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor"></span> fftw_export_wisdom_to_filename(<span class="stringliteral">"nfsft_benchomp_detail_threads.plan"</span>);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="preprocessor"></span> fftw_export_wisdom_to_filename(<span class="stringliteral">"nfsft_benchomp_detail_single.plan"</span>);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">for</span> (j=0; j < *M; j++)</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">for</span> (t=0; t < 2; t++)</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> fscanf(infile, <span class="stringliteral">"%lg"</span>, (*x)+2*j+t);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">if</span> (trafo_adjoint==0)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> {</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">for</span> (k = 0; k <= *N; k++)</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> fscanf(infile, <span class="stringliteral">"%lg %lg"</span>, &re, &im);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> (*f_hat)[NFSFT_INDEX(k,n,&plan)] = re + _Complex_I * im;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> }</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> }</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> {</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">for</span> (j=0; j < *M; j++)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> {</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> fscanf(infile, <span class="stringliteral">"%lg %lg"</span>, &re, &im);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> (*f)[j] = re + _Complex_I * im;</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> }</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> }</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> nfsft_finalize(&plan);</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> }</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">void</span> bench_openmp(<span class="keywordtype">int</span> trafo_adjoint, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">double</span> *x, C *f_hat, C *f, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> nfsft_flags, <span class="keywordtype">int</span> psi_flags)</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> {</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">int</span> k, n;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="comment">// int N, M, trafo_adjoint;</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keywordtype">int</span> t, j;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> ticks t0, t1;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordtype">double</span> tt_total, tt_pre;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="comment">// fscanf(infile, "%d %d %d", &trafo_adjoint, &N, &M);</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="comment">/*#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="comment"> fftw_import_wisdom_from_filename("nfsft_benchomp_detail_threads.plan");</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="comment">#else</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="comment"> fftw_import_wisdom_from_filename("nfsft_benchomp_detail_single.plan");</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="comment">#endif*/</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="comment">/* precomputation (for fast polynomial transform) */</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="comment">// nfsft_precompute(N,1000.0,0U,0U);</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="comment">/* Initialize transform plan using the guru interface. All input and output</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="comment"> * arrays are allocated by nfsft_init_guru(). Computations are performed with</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment"> * respect to L^2-normalized spherical harmonics Y_k^n. The array of spherical</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment"> * Fourier coefficients is preserved during transformations. The NFFT uses a</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment"> * cut-off parameter m = 6. See the NFFT 3 manual for details.</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> nfsft_init_guru(&plan, N, M, nfsft_flags | NFSFT_MALLOC_X | NFSFT_MALLOC_F |</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> NFSFT_MALLOC_F_HAT | NFSFT_NORMALIZED | NFSFT_PRESERVE_F_HAT,</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> PRE_PHI_HUT | psi_flags | FFTW_INIT | FFT_OUT_OF_PLACE, m);</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="comment">/*#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment"> fftw_export_wisdom_to_filename("nfsft_benchomp_detail_threads.plan");</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="comment">#else</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment"> fftw_export_wisdom_to_filename("nfsft_benchomp_detail_single.plan");</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="comment">#endif*/</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">for</span> (j=0; j < plan.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> {</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordflow">for</span> (t=0; t < 2; t++)</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="comment">// fscanf(infile, "%lg", plan.x+2*j+t);</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a>[2*j+t] = x[2*j+t];</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> }</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">if</span> (trafo_adjoint==0)</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> {</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> memset(plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,0U,plan.<a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Comp [...]
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">for</span> (k = 0; k <= plan.<a class="code" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403" title="the bandwidth ">N</a>; k++)</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> {</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="comment">// fscanf(infile, "%lg %lg", &re, &im);</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="comment">// plan.f_hat[NFSFT_INDEX(k,n,&plan)] = re + _Complex_I * im;</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSFT_INDEX(k,n,&plan)] = f_hat[NFSFT_INDEX(k,n,&plan)];</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> }</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> {</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordflow">for</span> (j=0; j < plan.<a class="code" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> {</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="comment">// fscanf(infile, "%lg %lg", &re, &im);</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="comment">// plan.f[j] = re + _Complex_I * im;</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = f[j];</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> }</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> memset(plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,0U,plan.<a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Comp [...]
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> }</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> </div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> t0 = getticks();</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="comment">/* precomputation (for NFFT, node-dependent) */</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> nfsft_precompute_x(&plan);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> t1 = getticks();</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> tt_pre = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> </div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="keywordflow">if</span> (trafo_adjoint==0)</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> nfsft_trafo(&plan);</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> nfsft_adjoint(&plan);</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> t1 = getticks();</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> tt_total = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="preprocessor">#ifndef MEASURE_TIME</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="preprocessor"></span> plan.<a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0] = 0.0;</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> plan.<a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[2] = 0.0;</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="preprocessor">#ifndef MEASURE_TIME_FFTW</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="preprocessor"></span> plan.<a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[1] = 0.0;</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> printf(<span class="stringliteral">"%.6e %.6e %6e %.6e %.6e %.6e\n"</span>, tt_pre, plan.<a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASURE_TIME_t</a>[0], plan.<a class="code" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db" title="Measured time for each step if MEASURE_TIME is set.">MEASU [...]
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> nfsft_finalize(&plan);</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> }</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> {</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordtype">int</span> m, nfsft_flags, psi_flags;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="keywordtype">int</span> nrepeat;</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordtype">int</span> trafo_adjoint, N, M, r;</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="keywordtype">double</span> *x;</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> C *f_hat, *f;</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor"></span> <span class="keywordtype">int</span> nthreads;</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> </div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">if</span> (argc != 6)</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> nthreads = atoi(argv[5]);</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> fftw_init_threads();</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> omp_set_num_threads(nthreads);</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor"></span> <span class="keywordflow">if</span> (argc != 5)</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> m = atoi(argv[1]);</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> nfsft_flags = atoi(argv[2]);</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> psi_flags = atoi(argv[3]);</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> nrepeat = atoi(argv[4]);</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> bench_openmp_readfile(stdin, &trafo_adjoint, &N, &M, &x, &f_hat, &f);</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="comment">/* precomputation (for fast polynomial transform) */</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> nfsft_precompute(N,1000.0,0U,0U);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="keywordflow">for</span> (r = 0; r < nrepeat; r++)</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> bench_openmp(trafo_adjoint, N, M, x, f_hat, f, m, nfsft_flags, psi_flags);</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfsoft_2simple__test_8c_source.html b/doc/api/html/nfsoft_2simple__test_8c_source.html
deleted file mode 100644
index 1f86f80..0000000
--- a/doc/api/html/nfsoft_2simple__test_8c_source.html
+++ /dev/null
@@ -1,225 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8d554148c8057b12dc5cb11ef005c62c.html">nfsoft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsoft/simple_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="comment">/* Include standard C headers. */</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment">/* Include NFFT 3 utilities headers. */</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="comment">/* Include NFFT3 library header. */</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">static</span> <span class="keywordtype">void</span> simple_test_nfsoft(<span class="keywordtype">int</span> bw, <span class="keywordtype">int</span> M)</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> {</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> plan_nfsoft; </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> plan_ndsoft; </div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> ticks t0, t1;</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">int</span> k, m; </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">double</span> d1, d2, d3; </div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">double</span> time, error; </div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags = NFSOFT_MALLOC_X | NFSOFT_MALLOC_F | NFSOFT_MALLOC_F_HAT; </div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> k = 1000; </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> m = 5; </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> nfsoft_init_guru(&plan_ndsoft, bw, M, flags | NFSOFT_USE_NDFT</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> | NFSOFT_USE_DPT, PRE_PHI_HUT | PRE_PSI | MALLOC_X | MALLOC_F_HAT</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> | MALLOC_F | FFTW_INIT | FFT_OUT_OF_PLACE, m, k);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> nfsoft_init_guru(&plan_nfsoft, bw, M, flags, PRE_PHI_HUT | PRE_PSI | MALLOC_X</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> | MALLOC_F_HAT | MALLOC_F | FFTW_INIT | FFT_OUT_OF_PLACE, m, k);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">for</span> (j = 0; j < plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> {</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> d1 = ((R) rand()) / RAND_MAX - 0.5;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> d2 = 0.5 * ((R) rand()) / RAND_MAX;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> d3 = ((R) rand()) / RAND_MAX - 0.5;</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a>[3* j ] = d1; </div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a>[3* j + 1] = d2; </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a>[3* j + 2] = d3; </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a>[3* j ] = d1; </div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a>[3* j + 1] = d2; </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a>[3* j + 2] = d3; </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">for</span> (j = 0; j < (bw + 1) * (4* (bw +1)*(bw+1)-1)/3;j++)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> {</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> d1=((R)rand())/RAND_MAX - 0.5;</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> d2=((R)rand())/RAND_MAX - 0.5;</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j]=d1 + I*d2;</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j]=d1 + I*d2;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> }</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">if</span> ((bw+1)*(4*(bw+1)*(bw+1)-1)/3<=20)</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,(bw+1)*(4*(bw+1)*(bw+1)-1)/3,<span class="stringliteral">"randomly generated [...]
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,20,<span class="stringliteral">"1st-20th randomly generated SO(3) Fourier coe [...]
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> printf(<span class="stringliteral">"\n---------------------------------------------\n"</span>);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> nfsoft_precompute(&plan_nfsoft);</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> nfsoft_precompute(&plan_ndsoft);</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> t0 = getticks();</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> nfsoft_trafo(&plan_nfsoft);</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> t1 = getticks();</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">if</span> (plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" title="Total number of samples.">M_total</a><=20)</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" ti [...]
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,20,<span class="stringliteral">"NFSOFT, 1st-20th function sample"</span>);</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> printf(<span class="stringliteral">" computed in %11le seconds\n"</span>,time);</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> t0 = getticks();</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> nfsoft_trafo(&plan_ndsoft);</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> t1 = getticks();</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">if</span> (plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" title="Total number of samples.">M_total</a><=20)</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" ti [...]
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,20,<span class="stringliteral">"NDSOFT, 1st-20th function sample"</span>);</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> printf(<span class="stringliteral">" computed in %11le seconds\n"</span>,time);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> error= X(error_l_infty_complex)(plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, plan_nfsoft.<a class="code" href="structn [...]
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> printf(<span class="stringliteral">"\n The NFSOFT of bandwidth=%d for %d rotations has infty-error %11le \n"</span>,bw, M,error);</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> printf(<span class="stringliteral">"\n---------------------------------------------\n"</span>);</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[0]=1.0;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[0]=1.0;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" titl [...]
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> </div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> t0 = getticks();</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> nfsoft_adjoint(&plan_nfsoft);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> t1 = getticks();</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">if</span> ((bw+1)*(4*(bw+1)*(bw+1)-1)/3<=20)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,(bw+1)*(4*(bw+1)*(bw+1)-1)/3,<span class="stringliteral">"SO(3) Fourier co [...]
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,20,<span class="stringliteral">"adjoint NFSOFT, 1st-20th Fourier coefficie [...]
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> printf(<span class="stringliteral">" computed in %11le seconds\n"</span>,time);</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> </div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> t0 = getticks();</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> nfsoft_adjoint(&plan_ndsoft);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> t1 = getticks();</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> time = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">if</span> ((bw+1)*(4*(bw+1)*(bw+1)-1)/3<=20)</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,(bw+1)*(4*(bw+1)*(bw+1)-1)/3,<span class="stringliteral">"SO(3) Fourier coeff [...]
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,20,<span class="stringliteral">"adjoint NDSOFT, 1st-20th Fourier coefficien [...]
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> printf(<span class="stringliteral">" computed in %11le seconds\n"</span>,time);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> </div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> error=X(error_l_infty_complex)(plan_ndsoft.<a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,plan_nfsoft.<a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, (bw+1)*( [...]
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> printf(<span class="stringliteral">"\n The adjoint NFSOFT of bandwidth=%d for %d rotations has infty-error %11le \n"</span>,bw, M,error);</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> printf(<span class="stringliteral">"\n---------------------------------------------\n"</span>);</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> </div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> nfsoft_finalize(&plan_ndsoft);</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> nfsoft_finalize(&plan_nfsoft);</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> }</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> </div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> {</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="keywordtype">int</span> N; </div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="keywordtype">int</span> M; </div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="keywordflow">if</span> (argc < 2)</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> {</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> printf(</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="stringliteral">"This test programm computes the NFSOFT with maximum polynomial degree N at M input rotations\n"</span>);</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> printf(<span class="stringliteral">"Usage: simple_test N M \n"</span>);</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> printf(<span class="stringliteral">"e.g.: simple_test 8 64\n"</span>);</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> exit(0);</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> }</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> N = atoi(argv[1]);</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> M = atoi(argv[2]);</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> printf(</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="stringliteral">"computing an NDSOFT, an NFSOFT, an adjoint NDSOFT, and an adjoint NFSOFT\n\n"</span>);</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> simple_test_nfsoft(N, M);</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> </div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="comment">/* Exit the program. */</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> </div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfsoft_8c_source.html b/doc/api/html/nfsoft_8c_source.html
deleted file mode 100644
index 083952b..0000000
--- a/doc/api/html/nfsoft_8c_source.html
+++ /dev/null
@@ -1,747 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsoft.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_8f3c7156d7272f1462551f3a6c5fabd1.html">nfsoft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfsoft.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nfsoft.c 3919 2012-11-20 13:31:45Z grman $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "<a class="code" href="wigner_8h.html" title="Header file for functions related to Wigner-d/D functions.">wigner.h</a>"</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> </div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#define DEFAULT_NFFT_CUTOFF 6</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span><span class="preprocessor">#define FPT_THRESHOLD 1000</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">static</span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> SO3_fpt_init(<span class="keywordtype">int</span> l, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags, <span class="keywordtype">int</span> kappa);</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">void</span> nfsoft_init(<a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M)</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> nfsoft_init_advanced(plan, N, M, NFSOFT_MALLOC_X | NFSOFT_MALLOC_F</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> | NFSOFT_MALLOC_F_HAT);</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> }</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">void</span> nfsoft_init_advanced(<a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M,</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nfsoft_flags)</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> {</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> nfsoft_init_guru(plan, N, M, nfsoft_flags, PRE_PHI_HUT | PRE_PSI | MALLOC_X</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> | MALLOC_F_HAT | MALLOC_F | FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> DEFAULT_NFFT_CUTOFF, FPT_THRESHOLD);</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> }</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">void</span> nfsoft_init_guru(<a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan, <span class="keywordtype">int</span> B, <span class="keywordtype">int</span> M,</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nfsoft_flags, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> nfft_flags, <span class="keywordtype">int</span> nfft_cutoff,</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordtype">int</span> fpt_kappa)</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> {</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">int</span> N[3];</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">int</span> n[3];</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> N[0] = 2* B + 2;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> N[1] = 2* B + 2;</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> N[2] = 2* B + 2;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> n[0] = 8* B ;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> n[1] = 8* B ;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> n[2] = 8* B ;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> nfft_init_guru(&plan-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>, 3, N, M, n, nfft_cutoff, nfft_flags,</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> FFTW_ESTIMATE | FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="keywordflow">if</span> ((plan-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>).nfft_flags & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> {</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&(plan-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>));</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> }</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> plan-><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a> = B;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> plan-><a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" title="Total number of samples.">M_total</a> = M;</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> plan->fpt_kappa = fpt_kappa;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> plan-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> = nfsoft_flags;</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_MALLOC_F_HAT)</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> {</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> plan-><a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((B + 1) * (4* (B +1)*(B+1)-1)/3*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> == NULL ) printf(<span class="stringliteral">"Allocation failed!\n"</span>);</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> }</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_MALLOC_X)</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> plan-><a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a> = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(plan-><a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" title="Total number of samples.">M_total</a>*3*<span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a> == NULL ) printf(<span class="stringliteral">"Allocation failed!\n"</span>);</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> }</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_MALLOC_F)</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> {</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> plan-><a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(plan-><a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" title="Total number of samples.">M_total</a>*<span class=" [...]
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> == NULL ) printf(<span class="stringliteral">"Allocation failed!\n"</span>);</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> }</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> plan-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a> = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((X(next_power_of_2)(B)+1)*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a> = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((2*B+2)*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> plan-><a class="code" href="structnfsoft__plan__.html#ae31e501405bebb72dcfe9831b34be76c" title="used when converting Chebychev to Fourier coeffcients">aux</a> = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((2*B+4)*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a> == NULL ) printf(<span class="stringliteral">"Allocation failed!\n"</span>);</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a> == NULL ) printf(<span class="stringliteral">"Allocation failed!\n"</span>);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#ae31e501405bebb72dcfe9831b34be76c" title="used when converting Chebychev to Fourier coeffcients">aux</a> == NULL ) printf(<span class="stringliteral">"Allocation failed!\n"</span>);</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> plan-><a class="code" href="structnfsoft__plan__.html#ae7c72bdbce93cb99dcbd14d764d08502" title="Pointer to the own transform.">mv_trafo</a> = (void (*) (<span class="keywordtype">void</span>* ))nfsoft_trafo;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> plan-><a class="code" href="structnfsoft__plan__.html#a33d5fb830b3021ddb85320139be034b8" title="Pointer to the own adjoint.">mv_adjoint</a> = (void (*) (<span class="keywordtype">void</span>* ))nfsoft_adjoint;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> plan-><a class="code" href="structnfsoft__plan__.html#a39a07d81bf6117dca5530d76beaf6b31" title="the internal FPT plan">internal_fpt_set</a> = SO3_fpt_init(plan-><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>, plan-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the [...]
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> }</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656" title="Converts coefficients with , from a linear combination of Chebyshev polynomials to coefficients m...">c2e</a>(<a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> *my_plan, <span class="keywordtype">int</span> even)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> {</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">int</span> j, N;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> N = 2* (my_plan -><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>+1);</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[my_plan-><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>+1] = my_plan-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e9869 [...]
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[0]=0.0;</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">for</span> (j=1;j<my_plan-><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>+1;j++)</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> {</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[my_plan-><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>+1+j]=0.5* my_plan-><a class="code" href="structnfsoft__plan__.html#af6fb25c [...]
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[my_plan-><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>+1-j]=0.5* my_plan-><a class="code" href="structnfsoft__plan__.html#af6fb25c [...]
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> }</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> C *aux= (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N+2)*<span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="keywordflow">for</span>(j=1;j<N;j++)</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> aux[j]=my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[j];</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> aux[0]=0.;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> aux[N]=0.;</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> if (even>0)</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> {</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[0]=(C) (-1.)/(2.*_Complex_I) * aux[1];</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">for</span> (j=1;j<N;j++)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> {</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[j]=(1./(2.*_Complex_I)*(aux[j+1]-aux[j-1]));</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> }</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> }</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> free(aux);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> aux = NULL;</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> }</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keyword">static</span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> SO3_fpt_init(<span class="keywordtype">int</span> l, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags, <span class="keywordtype">int</span> kappa)</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> {</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span> = 0;</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="keywordtype">int</span> N, t, k_start, k_end, k, m;</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="keywordtype">int</span> glo = 0;</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> R *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>, *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=- [...]
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> </div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="keywordflow">if</span> (flags & NFSOFT_USE_DPT)</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> {</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordflow">if</span> (l < 2)</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> N = 2;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> N = l;</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> t = (int) log2(X(next_power_of_2)(N));</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> </div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> }</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> {</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">if</span> (l < 2)</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> N = 2;</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> N = X(next_power_of_2)(l);</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> t = (int) log2(N);</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> }</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> alpha = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N + 2) * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> beta = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N + 2) * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> gamma = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N + 2) * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="keywordflow">if</span> (flags & NFSOFT_NO_STABILIZATION)</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> {</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="keyword">set</span> = fpt_init((2* N + 1) * (2* N + 1), t, 0U | FPT_NO_STABILIZATION);</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> }</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> {</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keyword">set</span> = fpt_init((2* N + 1) * (2* N + 1), t, 0U);</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> }</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="keywordflow">for</span> (k = -N; k <= N; k++)</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="keywordflow">for</span> (m = -N; m <= N; m++)</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> {</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> k_start = (ABS(k) >= ABS(m)) ? ABS(k) : ABS(m);</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> k_end = N;</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> SO3_alpha_row(alpha, N, k, m);</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> SO3_beta_row(beta, N, k, m);</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> SO3_gamma_row(gamma, N, k, m);</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> fpt_precompute(<span class="keyword">set</span>, glo, alpha, beta, gamma, k_start, kappa);</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> glo++;</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> }</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> </div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> free(alpha);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> free(beta);</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> free(gamma);</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> alpha = NULL;</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> beta = NULL;</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> gamma = NULL;</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> </div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="keywordflow">return</span> <span class="keyword">set</span>;</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> }</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> </div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="keyword">static</span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> SO3_single_fpt_init(<span class="keywordtype">int</span> l, <span class="keywordtype">int</span> k, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags, <span class="keywordtype">int</span> kap [...]
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> {</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="keywordtype">int</span> N, t, k_start, k_end;</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> R *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>, *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=- [...]
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span> = 0;</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="keywordflow">if</span> (flags & NFSOFT_USE_DPT)</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> {</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="keywordflow">if</span> (l < 2)</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> N = 2;</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> N = l;</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> t = (int) log2(X(next_power_of_2)(N));</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> </div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> }</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> {</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">if</span> (l < 2)</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> N = 2;</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> N = X(next_power_of_2)(l);</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> </div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> t = (int) log2(N);</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> }</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> </div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> alpha = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N + 2) * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> beta = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N + 2) * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> gamma = (R*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((N + 2) * <span class="keyword">sizeof</span>(R));</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> {</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> fptflags = 0U </div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> | IF(flags & NFSOFT_USE_DPT,FPT_NO_FAST_ALGORITHM,IF(t > 1,FPT_NO_DIRECT_ALGORITHM,0U))</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> | IF(flags & NFSOFT_NO_STABILIZATION,FPT_NO_STABILIZATION,0U);</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="keyword">set</span> = fpt_init(1, t, fptflags);</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> }</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> </div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> k_start = (ABS(k) >= ABS(m)) ? ABS(k) : ABS(m);</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> k_end = N;</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> SO3_alpha_row(alpha, N, k, m);</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> SO3_beta_row(beta, N, k, m);</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> SO3_gamma_row(gamma, N, k, m);</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="comment">/*{</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="comment"> int rr;</span></div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <span class="comment"> for (rr = 0; rr < N + 2; rr++)</span></div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="comment"> fprintf(stderr, "a[%4d] = %10e b[%4d] = %10e c[%4d] = %10e\n",rr,alpha[rr],rr,beta[rr],rr,gamma[rr]);</span></div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="comment"> }*/</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> </div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> fpt_precompute(<span class="keyword">set</span>, 0, alpha, beta, gamma, k_start, kappa);</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> </div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> free(alpha);</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> free(beta);</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> free(gamma);</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> alpha = NULL;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> beta = NULL;</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> gamma = NULL;</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> </div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="keywordflow">return</span> <span class="keyword">set</span>;</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> }</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> </div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="keywordtype">void</span> SO3_fpt(C *coeffs, <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>, <span class="keywordtype">int</span> l, <span class="keywordtype">int</span> k, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> {</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="keywordtype">int</span> N;</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> C* x;</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> C* y;</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> </div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="keywordtype">int</span> trafo_nr; </div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="keywordtype">int</span> k_start, k_end, j;</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="keywordtype">int</span> function_values = 0;</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> </div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">if</span> (flags & NFSOFT_USE_DPT)</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> {</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> N = l;</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="keywordflow">if</span> (l < 2)</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> N = 2;</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> }</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> {</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="keywordflow">if</span> (l < 2)</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> N = 2;</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> N = X(next_power_of_2)(l);</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> }</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> </div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> k_start = (ABS(k) >= ABS(m)) ? ABS(k) : ABS(m);</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> k_end = N;</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> trafo_nr = (N + k) * (2* N + 1) + (m + N);</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> </div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> x = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((k_end + 1) * <span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> </div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="keywordflow">for</span> (j = 0; j <= k_end; j++)</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> x[j] = K(0.0);</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> </div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="keywordflow">for</span> (j = 0; j <= l - k_start; j++)</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> {</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> x[j + k_start] = coeffs[j];</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> }</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="keywordflow">for</span> (j = l - k_start + 1; j <= k_end - k_start; j++)</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> {</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> x[j + k_start] = K(0.0);</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> }</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> y = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((k_end + 1) * <span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> </div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="keywordflow">if</span> (flags & NFSOFT_USE_DPT)</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> { </div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> fpt_trafo_direct(<span class="keyword">set</span>, trafo_nr, &x[k_start], y, k_end, 0U</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> | (function_values ? FPT_FUNCTION_VALUES : 0U));</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> }</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> { </div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> fpt_trafo(<span class="keyword">set</span>, trafo_nr, &x[k_start], y, k_end, 0U</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> | (function_values ? FPT_FUNCTION_VALUES : 0U));</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> }</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> </div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="keywordflow">for</span> (j = 0; j <= l; j++)</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> {</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> coeffs[j] = y[j];</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> }</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> </div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> free(x);</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> free(y);</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> x = NULL;</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> y = NULL;</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> }</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> </div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="keywordtype">void</span> SO3_fpt_transposed(C *coeffs, <a class="code" href="structfpt__set__s__.html" title="Holds data for a set of cascade summations.">fpt_set</a> <span class="keyword">set</span>, <span class="keywordtype">int</span> l, <span class="keywordtype">int</span> k, <span class="keywordtype">int</span> m,</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> flags)</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> {</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="keywordtype">int</span> N, k_start, k_end, j;</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="keywordtype">int</span> trafo_nr; </div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="keywordtype">int</span> function_values = 0;</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> C* x;</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> C* y;</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> </div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="keywordflow">if</span> (flags & NFSOFT_USE_DPT)</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> {</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> N = l;</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="keywordflow">if</span> (l < 2)</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> N = 2;</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> }</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> {</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="keywordflow">if</span> (l < 2)</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> N = 2;</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> N = X(next_power_of_2)(l);</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> }</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> </div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> k_start = (ABS(k) >= ABS(m)) ? ABS(k) : ABS(m);</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> k_end = N;</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> trafo_nr = (N + k) * (2* N + 1) + (m + N);</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> </div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> y = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((k_end + 1) * <span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> x = (C*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((k_end + 1) * <span class="keyword">sizeof</span>(C));</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> </div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="keywordflow">for</span> (j = 0; j <= l; j++)</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> {</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> y[j] = coeffs[j];</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> }</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="keywordflow">for</span> (j = l + 1; j <= k_end; j++)</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> {</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> y[j] = K(0.0);</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> }</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> </div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="keywordflow">if</span> (flags & NFSOFT_USE_DPT)</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> {</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> fpt_transposed_direct(<span class="keyword">set</span>, trafo_nr, &x[k_start], y, k_end, 0U</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> | (function_values ? FPT_FUNCTION_VALUES : 0U));</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> }</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> {</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> fpt_transposed(<span class="keyword">set</span>, trafo_nr, &x[k_start], y, k_end, 0U</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> | (function_values ? FPT_FUNCTION_VALUES : 0U));</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> }</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> </div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="keywordflow">for</span> (j = 0; j <= l; j++)</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> {</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> coeffs[j] = x[j];</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> }</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> free(x);</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> free(y);</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> x = NULL;</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> y = NULL;</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> }</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> </div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="keywordtype">void</span> nfsoft_precompute(<a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan3D)</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> {</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="keywordtype">int</span> N = plan3D-><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>;</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="keywordtype">int</span> M = plan3D-><a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> </div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="keywordflow">for</span> (j = 0; j < M; j++)</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> {</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3* j ] = plan3D-><a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a>[3* j [...]
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3* j + 1] = plan3D-><a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a>[3 [...]
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3* j + 2] = plan3D-><a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a>[3 [...]
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> }</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="keywordflow">for</span> (j = 0; j < 3* plan3D -><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> {</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] = plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_n [...]
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> }</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> </div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="keywordflow">if</span> ((plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>).nfft_flags & FG_PSI)</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> {</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> nfft_precompute_one_psi(&(plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>));</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> }</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="keywordflow">if</span> ((plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>).nfft_flags & PRE_PSI)</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> {</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> nfft_precompute_one_psi(&(plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>));</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> }</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> </div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> }</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> </div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="keywordtype">void</span> nfsoft_trafo(<a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan3D)</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> {</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="keywordtype">int</span> i, j, m, k, max, glo1, glo2;</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> </div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> i = 0;</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> glo1 = 0;</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> glo2 = 0;</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> </div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="keywordtype">int</span> N = plan3D-><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>;</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="keywordtype">int</span> M = plan3D-><a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> </div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="keywordflow">if</span> (N == 0)</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> {</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="keywordflow">for</span> (j = 0; j < M; j++)</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = plan3D-><a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[0];</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> }</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> </div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="keywordflow">for</span> (j = 0; j < plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>; j++)</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[j] = 0.0;</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> </div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> for (k = -N; k <= N; k++)</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> {</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="keywordflow">for</span> (m = -N; m <= N; m++)</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> {</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> </div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> max = (ABS(m) > ABS(k) ? ABS(m) : ABS(k));</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> </div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="keywordflow">for</span> (j = 0; j <= N - max; j++)</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> {</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] = plan3D-><a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[glo1];</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> </div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="keywordflow">if</span> ((plan3D-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_NORMALIZED))</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> {</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] = plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] * (1. / (2. * <a class [...]
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> * SQRT(0.5 * (2. * (max + j) + 1.));</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> }</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> </div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="keywordflow">if</span> ((plan3D-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_REPRESENT))</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> {</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="keywordflow">if</span> ((k < 0) && (k % 2))</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> {</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] = plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] * (-1);</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> }</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="keywordflow">if</span> ((m < 0) && (m % 2))</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] = plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] * (-1);</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> </div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="keywordflow">if</span> ((m + k) % 2)</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] = plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] * (-1);</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> </div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> }</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> </div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> glo1++;</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> }</div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> </div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> <span class="keywordflow">for</span> (j = N - max + 1; j < X(next_power_of_2)(N) + 1; j++)</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] = 0.0;</div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="comment">//fprintf(stdout,"\n k= %d, m= %d \n",k,m);</span></div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> SO3_fpt(plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>, plan3D-><a class="code" href="structnfsoft__plan__.html#a39a07d81bf6117dca5530d76beaf6b31" title="the internal FPT plan">internal_fpt_set</a>, N, k, m, plan3D-><a class="code" href="structnfsoft__plan__.htm [...]
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> </div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <a class="code" href="group__nfsft.html#ga47209b28b6561fca7349ed8afa5f9656" title="Converts coefficients with , from a linear combination of Chebyshev polynomials to coefficients m...">c2e</a>(plan3D, ABS((k + m) % 2));</div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> </div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="keywordflow">for</span> (i = 1; i <= 2* plan3D -><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a> + 2; i++)</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> {</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[NFSOFT_INDEX(k, m, i - N - 1, N) - 1]</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> = plan3D-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[i - 1];</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="comment">//fprintf(stdout,"%f \t", plan3D->nfft_plan.f_hat[NFSOFT_INDEX(k,m,i-N-1,N)-1]);</span></div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="comment">//fprintf(stdout,"another index: %d for k=%d,m=%d,l=%d,N=%d \n", NFSOFT_INDEX(k,m,i-N-1,N)-1,k,m,i-N-1,N);</span></div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> }</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> </div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> }</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> }</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> </div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="keywordflow">if</span> (plan3D-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_USE_NDFT)</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> {</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> nfft_trafo_direct(&(plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>));</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> }</div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> {</div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&(plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>));</div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> }</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> </div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="keywordflow">for</span> (j = 0; j < plan3D-><a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of sampl [...]
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> </div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> }</div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> </div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="keyword">static</span> <span class="keywordtype">void</span> e2c(<a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> *my_plan, <span class="keywordtype">int</span> even)</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> {</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="keywordtype">int</span> N;</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> </div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> N = 2* (my_plan -><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>+1);</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="comment">//nfft_vpr_complex(my_plan->cheby,N+1,"chebychev");</span></div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> </div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> </div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <span class="keywordflow">if</span> (even>0)</div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> {</div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="comment">//my_plan->aux[N-1]= -1/(2*I)* my_plan->cheby[N-2];</span></div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> my_plan-><a class="code" href="structnfsoft__plan__.html#ae31e501405bebb72dcfe9831b34be76c" title="used when converting Chebychev to Fourier coeffcients">aux</a>[0]= 1/(2*_Complex_I)*my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[1];</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> </div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="keywordflow">for</span>(j=1;j<N-1;j++)</div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> {</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> my_plan-><a class="code" href="structnfsoft__plan__.html#ae31e501405bebb72dcfe9831b34be76c" title="used when converting Chebychev to Fourier coeffcients">aux</a>[j]=1/(2*_Complex_I)*(my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[j+1]-my_plan-><a class="code" href=" [...]
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> }</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> my_plan-><a class="code" href="structnfsoft__plan__.html#ae31e501405bebb72dcfe9831b34be76c" title="used when converting Chebychev to Fourier coeffcients">aux</a>[N-1]=1/(2*_Complex_I)*(-my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[j-1]);</div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> </div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> </div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="keywordflow">for</span>(j=0;j<N;j++)</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> {</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[j]= my_plan-><a class="code" href="structnfsoft__plan__.html#ae31e501405bebb72dcfe9831b34be76c" title="used when converting Chebychev to Fourier coeffcients">aux</a>[j];</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> }</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> }</div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> </div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> my_plan-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[0]=my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[my_plan-><a class="code" href="structnfso [...]
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> </div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="keywordflow">for</span>(j=1;j<=my_plan-><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> {</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> my_plan-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j]=0.5*(my_plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[my_plan-><a class="code" href="struc [...]
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> }</div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> </div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> </div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> </div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="comment">//nfft_vpr_complex(my_plan->wig_coeffs,my_plan->N_total,"chebychev ");</span></div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> </div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> }</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> </div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="keywordtype">void</span> nfsoft_adjoint(<a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan3D)</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> {</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="keywordtype">int</span> i, j, m, k, max, glo1, glo2;</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> </div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> i = 0;</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> glo1 = 0;</div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> glo2 = 0;</div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> </div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="keywordtype">int</span> N = plan3D-><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a>;</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="keywordtype">int</span> M = plan3D-><a class="code" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> </div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="comment">//nothing much to be done for polynomial degree 0</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="keywordflow">if</span> (N == 0)</div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> {</div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[0]=0;</div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="keywordflow">for</span> (j = 0; j < M; j++)</div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[0] += plan3D-><a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> }</div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> </div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="keywordflow">for</span> (j = 0; j < M; j++)</div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> {</div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = plan3D-><a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of sampl [...]
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> }</div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> </div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="keywordflow">if</span> (plan3D-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_USE_NDFT)</div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> {</div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> nfft_adjoint_direct(&(plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>));</div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> }</div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> {</div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> nfft_adjoint(&(plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>));</div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> }</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> </div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="comment">//nfft_vpr_complex(plan3D->nfft_plan.f_hat,plan3D->nfft_plan.N_total,"all results");</span></div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> </div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> glo1 = 0;</div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> </div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="keywordflow">for</span> (k = -N; k <= N; k++)</div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> {</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="keywordflow">for</span> (m = -N; m <= N; m++)</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> {</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> </div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> max = (ABS(m) > ABS(k) ? ABS(m) : ABS(k));</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> </div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="keywordflow">for</span> (i = 1; i < 2* plan3D -><a class="code" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e" title="Total number of Fourier coefficients.">N_total</a> + 3; i++)</div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> {</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>[i - 1] = plan3D-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" titl [...]
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> - 1, N) - 1];</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> }</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> </div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> <span class="comment">//fprintf(stdout,"k=%d,m=%d \n",k,m);</span></div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="comment">//nfft_vpr_complex(plan3D->cheby,2*plan3D->N_total+2,"euler");</span></div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> e2c(plan3D, ABS((k + m) % 2));</div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> </div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="comment">//nfft_vpr_complex(plan3D->wig_coeffs,plan3D->N_total+1,"chebys");</span></div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> SO3_fpt_transposed(plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>, plan3D-><a class="code" href="structnfsoft__plan__.html#a39a07d81bf6117dca5530d76beaf6b31" title="the internal FPT plan">internal_fpt_set</a>, N, k, m,</div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> plan3D-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a>);</div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="comment">//nfft_vpr_complex(plan3D->wig_coeffs,plan3D->N_total+1,"wigners");</span></div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="comment">// SO3_fpt_transposed(plan3D->wig_coeffs,N,k,m,plan3D->flags,plan3D->fpt_kappa);</span></div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> </div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> </div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="keywordflow">for</span> (j = max; j <= N; j++)</div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> {</div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="keywordflow">if</span> ((plan3D-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_REPRESENT))</div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> {</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <span class="keywordflow">if</span> ((k < 0) && (k % 2))</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> {</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] = -plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j];</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> }</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="keywordflow">if</span> ((m < 0) && (m % 2))</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] = -plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j];</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> </div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> <span class="keywordflow">if</span> ((m + k) % 2)</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] = plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j] * (-1);</div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> </div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> }</div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> </div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[glo1] = plan3D-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>[j];</div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> </div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="keywordflow">if</span> ((plan3D-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_NORMALIZED))</div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> {</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> plan3D-><a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[glo1] = plan3D-><a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[glo1] * (1 / (2. * <a clas [...]
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> 0.5 * (2. * (j) + 1.));</div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> }</div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> </div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> glo1++;</div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> }</div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> </div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> }</div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> }</div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> }</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> </div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> <span class="keywordtype">void</span> nfsoft_finalize(<a class="code" href="structnfsoft__plan__.html">nfsoft_plan</a> *plan)</div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> {</div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="comment">/* Finalise the nfft plan. */</span></div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> nfft_finalize(&plan-><a class="code" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c" title="the internal NFFT plan">p_nfft</a>);</div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> free(plan-><a class="code" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c" title="contains a set of SO(3) Fourier coefficients for fixed orders m and n">wig_coeffs</a>);</div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> free(plan-><a class="code" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f" title="contains a set of Chebychev coefficients for fixed orders m and n">cheby</a>);</div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> free(plan-><a class="code" href="structnfsoft__plan__.html#ae31e501405bebb72dcfe9831b34be76c" title="used when converting Chebychev to Fourier coeffcients">aux</a>);</div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> </div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> fpt_finalize(plan-><a class="code" href="structnfsoft__plan__.html#a39a07d81bf6117dca5530d76beaf6b31" title="the internal FPT plan">internal_fpt_set</a>);</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> plan-><a class="code" href="structnfsoft__plan__.html#a39a07d81bf6117dca5530d76beaf6b31" title="the internal FPT plan">internal_fpt_set</a> = NULL;</div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> </div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_MALLOC_F_HAT)</div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> {</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> <span class="comment">//fprintf(stderr,"deallocating f_hat\n");</span></div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> free(plan-><a class="code" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>);</div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> }</div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> </div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> <span class="comment">/* De-allocate memory for samples, if neccesary. */</span></div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_MALLOC_F)</div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> {</div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> <span class="comment">//fprintf(stderr,"deallocating f\n");</span></div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> free(plan-><a class="code" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>);</div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> }</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> </div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> <span class="comment">/* De-allocate memory for nodes, if neccesary. */</span></div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> <span class="keywordflow">if</span> (plan-><a class="code" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca" title="the planner flags">flags</a> & NFSOFT_MALLOC_X)</div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> {</div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="comment">//fprintf(stderr,"deallocating x\n");</span></div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> free(plan-><a class="code" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383" title="input nodes">x</a>);</div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> }</div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> }</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> </div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="keywordtype">int</span> posN(<span class="keywordtype">int</span> n, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> B)</div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> {</div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> <span class="keywordtype">int</span> pos;</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> </div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="keywordflow">if</span> (n > -B)</div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> pos = posN(n - 1, m, B) + B + 1 - MAX(ABS(m), ABS(n - 1));</div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> pos = 0;</div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> <span class="comment">//(n > -B? pos=posN(n-1,m,B)+B+1-MAX(ABS(m),ABS(n-1)): pos= 0)</span></div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> <span class="keywordflow">return</span> pos;</div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> }</div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfst_2simple__test_8c_source.html b/doc/api/html/nfst_2simple__test_8c_source.html
deleted file mode 100644
index cf76534..0000000
--- a/doc/api/html/nfst_2simple__test_8c_source.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_fa65d2cfa17fd1e7f6091ef3f0c886ac.html">nfst</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfst/simple_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> </div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">static</span> <span class="keywordtype">void</span> simple_test_nfst_1d(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> {</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="keywordtype">int</span> j,k;</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <a class="code" href="structnfst__plan.html">nfst_plan</a> p;</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">int</span> N=14;</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordtype">int</span> M=19;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> </div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> nfst_init_1d(&p,N,M);</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">for</span>(j = 0; j < p.<a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>*p.<a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> p.<a class="code" href="structnfst__plan.html#a048ebad4f2abe3821988fa06a5e308d8" title="nodes (in time/spatial domain)">x</a>[j] = 0.5 * ((<span class="keywordtype">double</span>)rand()) / RAND_MAX;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">if</span>( p.<a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> nfst_precompute_psi( &p);</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">for</span>(k = 0; k < p.<a class="code" href="structnfst__plan.html#a5622220bff0d3174b4dcae2a91313eed" title="Total number of Fourier coefficients.">N_total</a>; k++)</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> p.<a class="code" href="structnfst__plan.html#a8e7ed6ed137f58dea8f3871d959f8d9c" title="Vector of Fourier coefficients, size is N_total * sizeof( double )">f_hat</a>[k] = (<span class="keywordtype">double</span>)rand() / RAND_MAX;</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(p.<a class="code" href="structnfst__plan.html#a8e7ed6ed137f58dea8f3871d959f8d9c" title="Vector of Fourier coefficients, size is N_total * sizeof( double )">f_hat</a>,p.<a class="code" href="structnfst__plan.html#a5622220bff0d3174b4dcae2a91313eed" title="Total number of [...]
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> nfst_trafo_direct(&p);</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(p.<a class="code" href="structnfst__plan.html#a314e2d828775d6aa93a26d7c40b7b931" title="Vector of samples, size is M_total * sizeof( double )">f</a>,p.<a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_tota [...]
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <a class="code" href="nfft3_8h.html#ac80b86521428ec2191919cc96c82f416" title="user routines">nfst_trafo</a>(&p);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(p.<a class="code" href="structnfst__plan.html#a314e2d828775d6aa93a26d7c40b7b931" title="Vector of samples, size is M_total * sizeof( double )">f</a>,p.<a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_tota [...]
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> nfst_adjoint_direct(&p);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(p.<a class="code" href="structnfst__plan.html#a8e7ed6ed137f58dea8f3871d959f8d9c" title="Vector of Fourier coefficients, size is N_total * sizeof( double )">f_hat</a>,p.<a class="code" href="structnfst__plan.html#a5622220bff0d3174b4dcae2a91313eed" title="Total number of [...]
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> nfst_adjoint(&p);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <a class="code" href="group__nfftutil.html#ga5021b4c5ea2a24b0014786deb81cca91" title="Prints a vector of doubles numbers.">nfft_vpr_double</a>(p.<a class="code" href="structnfst__plan.html#a8e7ed6ed137f58dea8f3871d959f8d9c" title="Vector of Fourier coefficients, size is N_total * sizeof( double )">f_hat</a>,p.<a class="code" href="structnfst__plan.html#a5622220bff0d3174b4dcae2a91313eed" title="Total number of [...]
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> nfst_finalize(&p);</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> }</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> {</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> system(<span class="stringliteral">"clear"</span>);</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> printf(<span class="stringliteral">"computing one dimensional ndst, nfst and adjoint ndst, nfst\n\n"</span>);</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> simple_test_nfst_1d();</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> printf(<span class="stringliteral">"\n\n"</span>);</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nfst_8c_source.html b/doc/api/html/nfst_8c_source.html
deleted file mode 100644
index 7b8b8c2..0000000
--- a/doc/api/html/nfst_8c_source.html
+++ /dev/null
@@ -1,1031 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfst.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_d46f6e04c6f21c2dce6558b4c13d80de.html">nfst</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nfst.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nfst.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#define NFST_DEFAULT_FLAGS PRE_PHI_HUT|\</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor"> PRE_PSI|\</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor"> MALLOC_X|\</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor"> MALLOC_F_HAT|\</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor"> MALLOC_F|\</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor"> FFTW_INIT|\</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor"> FFT_OUT_OF_PLACE</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#define FFTW_DEFAULT_FLAGS FFTW_ESTIMATE|\</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor"> FFTW_DESTROY_INPUT</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#define NFST_SUMMANDS ( 2 * ths->m + 2)</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor"></span><span class="preprocessor">#define NODE(p,r) ( ths->x[(p) * ths->d + (r)])</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor">#define MACRO_ndst_init_result_trafo \</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor"> memset( f, 0, ths->M_total * sizeof( double));</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_ndst_init_result_adjoint \</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor"> memset( f_hat, 0, ths->N_total * sizeof( double));</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor">#define MACRO_nfst_D_init_result_A \</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor"> memset(g_hat, 0, nfst_prod_minus_a_int( ths->n, 0, ths->d) * sizeof( double));</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfst_D_init_result_T \</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="preprocessor"> memset(f_hat, 0, ths->N_total * sizeof( double));</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="preprocessor">#define MACRO_nfst_B_init_result_A \</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="preprocessor"> memset(f, 0, ths->M_total * sizeof( double));</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nfst_B_init_result_T \</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="preprocessor"> memset(g, 0, nfst_prod_minus_a_int( ths->n, 0, ths->d) * sizeof( double));</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor">#define NFST_PRE_WINFUN( d) ths->N[d] = 2 * ths->N[d]; \</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor"> ths->n[d] = nfst_fftw_2N( ths->n[d]);</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor">#define NFST_POST_WINFUN( d) ths->N[d] = (LRINT(0.5 * ths->N[d])); \</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="preprocessor"> ths->n[d] = nfst_fftw_2N_rev( ths->n[d]);</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="preprocessor">#define NFST_WINDOW_HELP_INIT WINDOW_HELP_INIT</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordtype">double</span> nfst_phi_hut( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths, <span class="keywordtype">int</span> k, <span class="keywordtype">int</span> d)</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> {</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> NFST_PRE_WINFUN( d);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordtype">double</span> phi_hut_tmp = PHI_HUT( k, d);</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> NFST_POST_WINFUN( d);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">return</span> phi_hut_tmp;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> }</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">double</span> nfst_phi( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths, <span class="keywordtype">double</span> x, <span class="keywordtype">int</span> d)</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> {</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> NFST_PRE_WINFUN( d);</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">double</span> phi_tmp = PHI( x, d);</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> NFST_POST_WINFUN( d);</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> </div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">return</span> phi_tmp;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> }</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordtype">int</span> nfst_fftw_2N( <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> {</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">return</span> 2 * ( n + 1);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">int</span> nfst_fftw_2N_rev( <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> {</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> div_t n_div;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> n_div = div(n, 2);</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">return</span> n_div.quot - 1;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> }</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="preprocessor">#define MACRO_with_sin_vec sin_vec[t][ka[t]]</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_without_sin_vec sin( 2.0 * PI * (ka[t]+1) * NODE(j,t))</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="preprocessor">#define MACRO_with_PRE_PHI_HUT ths->c_phi_inv[t][kg[t]];</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_compute_PHI_HUT_INV (1.0 / (nfst_phi_hut( ths, kg[t]+1, t)))</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="preprocessor">#define MACRO_with_PRE_PSI ths->psi[(j * ths->d + t) * NFST_SUMMANDS + lc[t]];</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_compute_PSI \</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="preprocessor"> nfst_phi( ths, NODE(j,t) - (( double)(lc[t] + lb[t])) / nfst_fftw_2N( ths->n[t]), t)</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor">#define MACRO_ndst_malloc__sin_vec \</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="preprocessor"> double **sin_vec; \</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="preprocessor"> sin_vec = (double**)nfft_malloc( ths->d * sizeof( double*)); \</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="preprocessor"> for( t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="preprocessor"> sin_vec[t] = (double*)nfft_malloc( ( ths->N[t] - 1) * sizeof( double)); \</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> </div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="preprocessor">#define MACRO_ndst_free__sin_vec \</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="preprocessor"> </span><span class="comment">/* free allocated memory */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="preprocessor"> for( t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="preprocessor"> nfft_free( sin_vec[t]); \</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="preprocessor"> nfft_free( sin_vec); \</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="preprocessor">#define MACRO_ndst_init__sin_vec \</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="preprocessor"> for( t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="preprocessor"> cos_x[t] = cos( 2.0 * PI * NODE(j,t)); \</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="preprocessor"> sin_vec[t][0] = sin( 2.0 * PI * NODE(j,t)); \</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="preprocessor"> sin_vec[t][1] = sin( 4.0 * PI * NODE(j,t)); \</span></div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="preprocessor"> for( k = 2; k < ths->N[t] - 1; k++) \</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="preprocessor"> sin_vec[t][k] = 2.0 * cos_x[t] * sin_vec[t][k-1] \</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="preprocessor"> - sin_vec[t][k-2]; \</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="preprocessor">#define MACRO_ndst_init__k__sin_k( which_one) \</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="preprocessor"> sin_k[0] = 1.0; \</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="preprocessor"> for( t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="preprocessor"> ka[t] = 0; \</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="preprocessor"> for( t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor"> sin_k[t+1] = sin_k[t] * MACRO_ ##which_one; \</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor">#define MACRO_ndst_count__k__sin_k( which_one) \</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="preprocessor"> ka[ths->d-1]++; \</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="preprocessor"> i = ths->d - 1; \</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="preprocessor"> while( ( ka[i] == ths->N[i] - 1) && ( i > 0)) \</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="preprocessor"> ka[i - 1]++; \</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="preprocessor"> ka[i] = 0; \</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="preprocessor"> i--; \</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor"> for( t = i; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="preprocessor"> sin_k[t+1] = sin_k[t] * MACRO_ ##which_one; \</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="preprocessor">#define MACRO_ndst_compute__trafo \</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor"> f[j] += f_hat[k] * sin_k[ths->d]; \</span></div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="preprocessor">#define MACRO_ndst_compute__adjoint \</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="preprocessor"> f_hat[k] += f[j] * sin_k[ths->d]; \</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> </div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="comment">/* slow (trafo) transform */</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="preprocessor">#define MACRO_ndst( which_one) \</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor"> void nfst_ ## which_one ## _direct ( nfst_plan *ths) \</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="preprocessor"> int j, k, t, i; \</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="preprocessor"> int ka[ths->d]; \</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="preprocessor"> double sin_k[ths->d+1]; \</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="preprocessor"> double cos_x[ths->d]; \</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="preprocessor"> double *f = ths->f; \</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="preprocessor"> double *f_hat = ths->f_hat; \</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="preprocessor"> MACRO_ndst_init_result_ ## which_one; \</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="preprocessor"> if( ths->d == 1) \</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="preprocessor"> for( j = 0; j < ths->M_total; j++) \</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="preprocessor"> for( k = 0; k < ths->N_total; k++) \</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="preprocessor"> sin_k[ths->d] = sin( 2.0 * PI * (k+1) * NODE(j,0)); \</span></div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="preprocessor"> MACRO_ndst_compute__ ## which_one; \</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="preprocessor"> if( 1 == 0) </span><span class="comment">/*FIXME: remove slow slow ... */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="preprocessor"> </span><span class="comment">/* slow ndst */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="preprocessor"> for( j = 0; j < ths->M_total; j++) \</span></div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="preprocessor"> MACRO_ndst_init__k__sin_k(without_sin_vec); \</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="preprocessor"> for( k = 0; k < ths->N_total; k++) \</span></div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="preprocessor"> MACRO_ndst_compute__ ## which_one; \</span></div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor"> MACRO_ndst_count__k__sin_k(without_sin_vec); \</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="preprocessor"> </span><span class="comment">/* fast nfst_trafo_direct */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor"> MACRO_ndst_malloc__sin_vec; \</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor"> for( j = 0; j < ths->M_total; j++) \</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="preprocessor"> MACRO_ndst_init__sin_vec; \</span></div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor"> MACRO_ndst_init__k__sin_k(with_sin_vec); \</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor"> for( k = 0; k < ths->N_total; k++) \</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor"> MACRO_ndst_compute__ ## which_one; \</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="preprocessor"> MACRO_ndst_count__k__sin_k(with_sin_vec); \</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="preprocessor"> MACRO_ndst_free__sin_vec; \</span></div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="preprocessor"> } </span><span class="comment">/* ndst_{trafo, adjoint} */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> MACRO_ndst(trafo)</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> MACRO_ndst(adjoint)</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> </div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> </div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> </div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> </div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="preprocessor">#define MACRO_nfst__lower_boundary( j,act_dim) \</span></div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <span class="preprocessor"> lb[(act_dim)] = \</span></div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="preprocessor"> (LRINT(NODE((j),(act_dim)) * nfst_fftw_2N( ths->n[(act_dim)]))) - ths->m; \</span></div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="preprocessor">#define MACRO_nfst_D_compute_A \</span></div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="preprocessor"> g_hat[kg_plain[ths->d]] = f_hat[k_L] * c_phi_inv_k[ths->d]; \</span></div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="preprocessor">#define MACRO_nfst_D_compute_T \</span></div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="preprocessor"> f_hat[k_L] = g_hat[kg_plain[ths->d]] * c_phi_inv_k[ths->d]; \</span></div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> </div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <span class="preprocessor">#define MACRO_init__kg \</span></div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="preprocessor"> for( t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="preprocessor"> kg[t] = 0; \</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="preprocessor"> i = 0; \</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> </div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="preprocessor">#define MACRO_count__kg \</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="preprocessor"> kg[ths->d - 1]++; \</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="preprocessor"> i = ths->d - 1; \</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="preprocessor"> while( ( kg[i] == ths->N[i] - 1) && ( i > 0)) \</span></div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="preprocessor"> kg[i - 1]++; \</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="preprocessor"> kg[i] = 0; \</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="preprocessor"> i--; \</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> </div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="preprocessor">#define MACRO_update__c_phi_inv_k__lg_plain( which_one, which_phi) \</span></div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="preprocessor"> for( t = i; t < ths->d; t++) { \</span></div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="preprocessor"> MACRO__c_phi_inv_k( which_phi); \</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="preprocessor"> kg_plain[t+1] = kg_plain[t] * ths->n[t] + kg[t]; \</span></div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> </div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> <span class="preprocessor">#define MACRO__c_phi_inv_k( which_phi) \</span></div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <span class="preprocessor"> c_phi_inv_k[t+1] = 0.5 * c_phi_inv_k[t] * MACRO_ ## which_phi; \</span></div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> </div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="preprocessor">#define MACRO_nfst_D(which_one) \</span></div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="preprocessor">static inline void nfst_D_ ## which_one (nfst_plan *ths) \</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="preprocessor"> int k_L; \</span></div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="preprocessor"> int i, t; \</span></div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="preprocessor"> int kg[ths->d]; \</span></div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="preprocessor"> double c_phi_inv_k[ths->d+1]; \</span></div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="preprocessor"> int kg_plain[ths->d+1]; \</span></div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="preprocessor"> double *g_hat, *f_hat; \</span></div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="preprocessor"> g_hat = ths->g_hat; \</span></div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="preprocessor"> f_hat = ths->f_hat; \</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <span class="preprocessor"> MACRO_nfst_D_init_result_ ## which_one \</span></div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="preprocessor"> c_phi_inv_k[0] = 1; \</span></div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="preprocessor"> kg_plain[0] = 0; \</span></div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="preprocessor"> MACRO_init__kg; \</span></div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="preprocessor"> if( ths->nfst_flags & PRE_PHI_HUT) \</span></div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="preprocessor"> for( k_L = 0; k_L < ths->N_total; k_L++) \</span></div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="preprocessor"> MACRO_update__c_phi_inv_k__lg_plain( which_one, with_PRE_PHI_HUT); \</span></div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="preprocessor"> MACRO_nfst_D_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="preprocessor"> MACRO_count__kg; \</span></div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="preprocessor"> } </span><span class="comment">/* for(k_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="preprocessor"> for( k_L = 0; k_L < ths->N_total; k_L++) \</span></div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> <span class="preprocessor"> MACRO_update__c_phi_inv_k__lg_plain( which_one, compute_PHI_HUT_INV); \</span></div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="preprocessor"> MACRO_nfst_D_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="preprocessor"> MACRO_count__kg \</span></div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="preprocessor"> } </span><span class="comment">/* for(k_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="preprocessor">} </span><span class="comment">/* nfst_D */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> MACRO_nfst_D(A)</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> MACRO_nfst_D(T)</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> </div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> </div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> </div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> </div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> </div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> </div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> </div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="preprocessor">#define MACRO_nfst_B_PRE_FULL_PSI_compute_A \</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="preprocessor"> (*fj) += ths->psi[ix] * g[ths->psi_index_g[ix]]; \</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="preprocessor">#define MACRO_nfst_B_PRE_FULL_PSI_compute_T \</span></div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="preprocessor"> g[ths->psi_index_g[ix]] += ths->psi[ix] * (*fj); \</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> </div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> </div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="preprocessor">#define MACRO_nfst_B_compute_A \</span></div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="preprocessor"> (*fj) += phi_tilde[ths->d] * g[lg_plain[ths->d]]; \</span></div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> <span class="preprocessor">#define MACRO_nfst_B_compute_T \</span></div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="preprocessor"> g[lg_plain[ths->d]] += phi_tilde[ths->d] * (*fj); \</span></div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> </div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> </div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="preprocessor">#define MACRO_compute_lg_offset__count_lg( i0) \</span></div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="preprocessor"> </span><span class="comment">/* determine index in g-array corresponding to lb[(i0)] */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="preprocessor"> if( lb[(i0)] < 0) \</span></div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="preprocessor"> lg_offset[(i0)] = \</span></div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="preprocessor"> (lb[(i0)] % nfst_fftw_2N( ths->n[(i0)])) + nfst_fftw_2N( ths->n[(i0)]); \</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="preprocessor"> lg_offset[(i0)] = lb[(i0)] % nfst_fftw_2N( ths->n[(i0)]); \</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="preprocessor"> if( lg_offset[(i0)] > ths->n[(i0)]+1) \</span></div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="preprocessor"> lg_offset[(i0)] = -( nfst_fftw_2N( ths->n[(i0)]) - lg_offset[(i0)]); \</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> </div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> </div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="preprocessor">#define MACRO_set__lg__to__lg_offset \</span></div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="preprocessor"> if( lg_offset[i] <= 0) \</span></div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="preprocessor"> lg[i] = -lg_offset[i]; \</span></div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="preprocessor"> count_lg[i] = -1; \</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="preprocessor"> lg[i] = +lg_offset[i]; \</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="preprocessor"> count_lg[i] = +1; \</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> </div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> </div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="preprocessor">#define MACRO_count__lg(dim) \</span></div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="preprocessor"> </span><span class="comment">/* turn around when we hit one of the boundaries */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="preprocessor"> if( ((lg[(dim)] == 0) || (lg[(dim)] == (ths->n[(dim)] + 1))) ) \</span></div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> <span class="preprocessor"> count_lg[(dim)] *= -1; \</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="preprocessor"> lg[(dim)] += count_lg[(dim)]; \</span></div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> </div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> </div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="preprocessor">#define MACRO_init_lb_lg_lc_phi_tilde_lg_plain( which_psi) \</span></div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="preprocessor"> for( i = 0; i < ths->d; i++) \</span></div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="preprocessor"> MACRO_nfst__lower_boundary( j, i); \</span></div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="preprocessor"> MACRO_compute_lg_offset__count_lg( i); \</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="preprocessor"> MACRO_set__lg__to__lg_offset; \</span></div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="preprocessor"> </span><span class="comment">/* counter for lg */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="preprocessor"> lc[i] = 0; \</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="preprocessor"> for( t = 0; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="preprocessor"> if( lg[t] == 0) \</span></div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="preprocessor"> lg_plain[t+1] = lg_plain[t] * ths->n[t]; \</span></div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor"> phi_tilde[t+1] = 0.0; \</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor"> if( lg[t] == ths->n[t]+1) \</span></div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="preprocessor"> lg_plain[t+1] = lg_plain[t] * ths->n[t] + ths->n[t]-1; \</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="preprocessor"> phi_tilde[t+1] = 0.0; \</span></div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="preprocessor"> MACRO__phi_tilde( which_psi); \</span></div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <span class="preprocessor"> lg_plain[t+1] = lg_plain[t] * ths->n[t] + lg[t]-1; \</span></div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="preprocessor"> i = 0; \</span></div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> </div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> </div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="preprocessor">#define MACRO_count__lg_lc \</span></div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> <span class="preprocessor"> MACRO_count__lg( ths->d-1); \</span></div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="preprocessor"> lc[ths->d - 1]++; \</span></div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="preprocessor"> i = ths->d - 1; \</span></div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="preprocessor"> while( (lc[i] == NFST_SUMMANDS) && (i > 0)) \</span></div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="preprocessor"> lc[i - 1]++; \</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="preprocessor"> lc[i] = 0; \</span></div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="preprocessor"> </span><span class="comment">/* ansonsten lg[i-1] verschieben */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="preprocessor"> MACRO_count__lg( i - 1); \</span></div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="preprocessor"> </span><span class="comment">/* lg[i] = anfangswert */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="preprocessor"> MACRO_set__lg__to__lg_offset; \</span></div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="preprocessor"> i--; \</span></div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> </div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="preprocessor">#define MACRO_update__phi_tilde__lg_plain( which_psi) \</span></div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="preprocessor"> for( t = i; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="preprocessor"> if( (lg[t] != 0) && (lg[t] != ths->n[t]+1)) \</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="preprocessor"> MACRO__phi_tilde( which_psi); \</span></div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="preprocessor"> lg_plain[t+1] = lg_plain[t] * ths->n[t] + lg[t]-1; \</span></div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="preprocessor"> phi_tilde[t+1] = 0.0; \</span></div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> </div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> </div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="preprocessor">#define MACRO__phi_tilde( which_psi) \</span></div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="preprocessor"> phi_tilde[t+1] = (double)count_lg[t] * phi_tilde[t] * MACRO_ ## which_psi; \</span></div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> </div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> </div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> </div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="preprocessor">#define MACRO_nfst_B( which_one) \</span></div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="preprocessor"> static inline void nfst_B_ ## which_one ( nfst_plan *ths) \</span></div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="preprocessor"> { </span><span class="comment">/* MACRO_nfst_B */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="preprocessor"> int lb[ths->d]; \</span></div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <span class="preprocessor"> int j, t, i; \</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="preprocessor"> int lprod, l_L, ix; \</span></div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="preprocessor"> int lc[ths->d]; \</span></div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="preprocessor"> int lg[ths->d]; \</span></div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="preprocessor"> int lg_offset[ths->d]; \</span></div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> <span class="preprocessor"> int count_lg[ths->d]; \</span></div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="preprocessor"> int lg_plain[ths->d+1]; \</span></div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="preprocessor"> double *f, *g; \</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="preprocessor"> double phi_tilde[ths->d+1]; \</span></div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="preprocessor"> double *fj; \</span></div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> <span class="preprocessor"> f = ths->f; g = ths->g; \</span></div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="preprocessor"> MACRO_nfst_B_init_result_ ## which_one \</span></div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <span class="preprocessor"> </span><span class="comment">/* both flags are set */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="preprocessor"> if( (ths->nfst_flags & PRE_PSI) && (ths->nfst_flags & PRE_FULL_PSI)) \</span></div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="preprocessor"> for( ix = 0, j = 0, fj = &f[0]; j < ths->M_total; j++, fj += 1) \</span></div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="preprocessor"> for( l_L = 0; l_L < ths->psi_index_f[j]; l_L++, ix++) \</span></div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="preprocessor"> MACRO_nfst_B_PRE_FULL_PSI_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="preprocessor"> phi_tilde[0] = 1; \</span></div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="preprocessor"> lg_plain[0] = 0; \</span></div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> <span class="preprocessor"> for( t = 0, lprod = 1; t < ths->d; t++) \</span></div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="preprocessor"> lprod *= NFST_SUMMANDS; \</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="preprocessor"> </span><span class="comment">/* PRE_PSI flag is set */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="preprocessor"> if( ths->nfst_flags & PRE_PSI) \</span></div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="preprocessor"> for( j = 0, fj = &f[0]; j < ths->M_total; j++, fj += 1) \</span></div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor"> MACRO_init_lb_lg_lc_phi_tilde_lg_plain( with_PRE_PSI); \</span></div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="preprocessor"> for( l_L = 0; l_L < lprod; l_L++) \</span></div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="preprocessor"> MACRO_update__phi_tilde__lg_plain( with_PRE_PSI); \</span></div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="preprocessor"> MACRO_nfst_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="preprocessor"> MACRO_count__lg_lc; \</span></div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="preprocessor"> } </span><span class="comment">/* for( l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="preprocessor"> } </span><span class="comment">/* for( j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="preprocessor"> } </span><span class="comment">/* if( PRE_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <span class="preprocessor"> </span><span class="comment">/* no PSI flag is set */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="preprocessor"> else \</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor"> for( j = 0, fj = &f[0]; j < ths->M_total; j++, fj += 1) \</span></div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="preprocessor"> MACRO_init_lb_lg_lc_phi_tilde_lg_plain( compute_PSI); \</span></div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="preprocessor"> for( l_L = 0; l_L < lprod; l_L++) \</span></div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="preprocessor"> MACRO_update__phi_tilde__lg_plain( compute_PSI); \</span></div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="preprocessor"> MACRO_nfst_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> <span class="preprocessor"> MACRO_count__lg_lc; \</span></div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="preprocessor"> } </span><span class="comment">/* for(l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="preprocessor"> } </span><span class="comment">/* else(PRE_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="preprocessor"> }</span><span class="comment">/* else( PRE_PRE && FULL_PRE_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="preprocessor">} </span><span class="comment">/* nfst_B */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> MACRO_nfst_B(A)</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> MACRO_nfst_B(T)</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> </div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> </div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> </div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> </div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> </div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> </div>
-<div class="line"><a name="l00647"></a><span class="lineno"><a class="code" href="nfft3_8h.html#ac80b86521428ec2191919cc96c82f416"> 647</a></span> <span class="keywordtype">void</span> nfst_trafo( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths)</div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> {</div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> ths->g_hat = ths->g1;</div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> ths->g = ths->g2;</div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> </div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> </div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> TIC(0)</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> nfst_D_A( ths);</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> TOC(0)</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> </div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> </div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> </div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> TIC(1)</div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> fftw_execute( ths->my_fftw_r2r_plan);</div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> TOC(1)</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> </div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> </div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> </div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> TIC(2)</div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> nfst_B_A( ths);</div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> TOC(2)</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> </div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> } <span class="comment">/* nfst_trafo */</span></div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> </div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> </div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> </div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> </div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="keywordtype">void</span> nfst_adjoint( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths)</div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> {</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> ths->g_hat = ths-><a class="code" href="structnfst__plan.html#a7b67e2cf657227ae46d13fa239d534f7" title="output of fftw">g2</a>;</div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> ths->g = ths-><a class="code" href="structnfst__plan.html#a06cd5d11b13d590c9ab3a88d93b21fb2" title="input of fftw">g1</a>;</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> </div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> </div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> TIC(2)</div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> nfst_B_T( ths);</div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> TOC(2)</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> </div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> </div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> TIC(1)</div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> fftw_execute( ths->my_fftw_r2r_plan);</div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> TOC(1)</div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> </div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> </div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> TIC(0)</div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> nfst_D_T( ths);</div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> TOC(0)</div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> </div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> } <span class="comment">/* nfst_adjoint */</span></div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> </div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> </div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> </div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> <span class="keywordtype">void</span> nfst_precompute_phi_hut( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths)</div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> {</div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> <span class="keywordtype">int</span> kg[ths->d]; </div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> ths->c_phi_inv = (<span class="keywordtype">double</span>**)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths->d * <span class="keyword">sizeof</span>( <span class="keywordtype">double</span>*));</div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> </div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> <span class="keywordflow">for</span>( t = 0; t < ths->d; t++)</div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> {</div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> ths->c_phi_inv[t] = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ( ths->N[t] - 1) * <span class="keyword">sizeof</span>( double));</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> </div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> <span class="keywordflow">for</span>( kg[t] = 0; kg[t] < ths->N[t] - 1; kg[t]++)</div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> {</div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> ths->c_phi_inv[t][kg[t]] = MACRO_compute_PHI_HUT_INV;</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> }</div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> }</div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> } <span class="comment">/* nfst_phi_hut */</span></div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> </div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> </div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> </div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> <span class="keywordtype">void</span> nfst_precompute_psi( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths)</div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> {</div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> <span class="keywordtype">int</span> lc[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>]; </div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="keywordtype">int</span> lb[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>]; </div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="keywordflow">for</span> (t = 0; t < ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>; t++)</div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> {</div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> <span class="keywordflow">for</span>(j = 0; j < ths-><a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> {</div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> MACRO_nfst__lower_boundary( j, t);</div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> </div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> <span class="keywordflow">for</span>( lc[t] = 0; lc[t] < NFST_SUMMANDS; lc[t]++)</div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> ths-><a class="code" href="structnfst__plan.html#a59c1ef7493650838cf31086a46ff2e3f" title="precomputed data, matrix B">psi</a>[(j * ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> + t) * NFST_SUMMANDS + lc[t]] = MACRO_compute_PSI;</div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> </div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> } <span class="comment">/* for(t) */</span></div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> </div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="comment">/* full precomputation of psi */</span></div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> <span class="keywordflow">if</span> ( ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <a class="code" href="nfft3_8h.html#a02d072e80ccaca6482b396540eaef585" title="more memory usage, a bit faster">nfst_full_psi</a>( ths, ths->nfst_full_psi_eps);</div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> </div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> } <span class="comment">/* nfst_precompute_psi */</span></div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> </div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> </div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> </div>
-<div class="line"><a name="l00788"></a><span class="lineno"><a class="code" href="nfft3_8h.html#a02d072e80ccaca6482b396540eaef585"> 788</a></span> <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#a02d072e80ccaca6482b396540eaef585" title="more memory usage, a bit faster">nfst_full_psi</a>(<a class="code" href="structnfst__plan.html">nfst_plan</a> *ths, <span class="keywordtype">double</span> eps)</div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> {</div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="keywordtype">int</span> t, i; </div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="keywordtype">int</span> l_L; </div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> <span class="keywordtype">int</span> lc[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>]; </div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> <span class="keywordtype">int</span> lg_plain[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>+1]; </div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> <span class="keywordtype">int</span> count_lg[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>];</div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> <span class="keywordtype">int</span> lg_offset[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>];</div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="keywordtype">int</span> lg[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>];</div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> <span class="keywordtype">int</span> lprod; </div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> <span class="keywordtype">int</span> lb[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>]; </div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> <span class="keywordtype">double</span> phi_tilde[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>+1];</div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> </div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> <span class="keywordtype">int</span> *index_g, *index_f;</div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="keywordtype">double</span> *new_psi;</div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> <span class="keywordtype">int</span> ix, ix_old, size_psi;</div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> </div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> phi_tilde[0] = 1.0;</div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> lg_plain[0] = 0;</div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> </div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> {</div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> size_psi = ths-><a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> index_f = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths-><a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_total</a> * <span class="keyword">sizeof</span>( <span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> index_g = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( size_psi * <span class="keyword">sizeof</span>( <span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> new_psi = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( size_psi * <span class="keyword">sizeof</span>( <span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> </div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> <span class="keywordflow">for</span>( t = 0,lprod = 1; t < ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>; t++)</div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> {</div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> lprod *= NFST_SUMMANDS;</div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> eps *= PHI( 0, t);</div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> }</div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> </div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="keywordflow">for</span>( ix = 0, ix_old = 0, j = 0; j < ths-><a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> {</div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> MACRO_init_lb_lg_lc_phi_tilde_lg_plain( with_PRE_PSI);</div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> </div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> <span class="keywordflow">for</span>( l_L = 0; l_L < lprod; l_L++)</div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> {</div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> MACRO_update__phi_tilde__lg_plain( with_PRE_PSI);</div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> </div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> <span class="keywordflow">if</span>( fabs(phi_tilde[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>]) > eps)</div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> {</div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> index_g[ix] = lg_plain[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>];</div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> new_psi[ix] = phi_tilde[ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>];</div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> </div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> ix++;</div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="keywordflow">if</span>( ix == size_psi)</div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> {</div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> size_psi += ths-><a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> index_g = (<span class="keywordtype">int</span>*)realloc( index_g, size_psi * <span class="keyword">sizeof</span>( <span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> new_psi = (<span class="keywordtype">double</span>*)realloc( new_psi, size_psi * <span class="keyword">sizeof</span>( <span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> }</div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> }</div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> MACRO_count__lg_lc;</div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> </div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> </div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> index_f[j] = ix - ix_old;</div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> ix_old = ix;</div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> </div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> </div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a59c1ef7493650838cf31086a46ff2e3f" title="precomputed data, matrix B">psi</a>);</div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> </div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> size_psi = ix;</div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> ths-><a class="code" href="structnfst__plan.html#a1780e54f9fed43e92c22a1e70274e7ad" title="only for thin B">size_psi</a> = size_psi;</div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> index_g = (<span class="keywordtype">int</span>*)realloc( index_g, size_psi * <span class="keyword">sizeof</span>( <span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> new_psi = (<span class="keywordtype">double</span>*)realloc( new_psi, size_psi * <span class="keyword">sizeof</span>( <span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> </div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> ths-><a class="code" href="structnfst__plan.html#a59c1ef7493650838cf31086a46ff2e3f" title="precomputed data, matrix B">psi</a> = new_psi;</div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> ths-><a class="code" href="structnfst__plan.html#a2d2a4a4d3c7ff12f35045b5466f41811" title="only for thin B">psi_index_g</a> = index_g;</div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> ths-><a class="code" href="structnfst__plan.html#a028609e96fa5f10d4197e4b50312180c" title="only for thin B">psi_index_f</a> = index_f;</div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> </div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> } <span class="comment">/* if(PRE_PSI) */</span></div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> } <span class="comment">/* nfst_full_psi */</span></div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> </div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> </div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> </div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> </div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> <span class="keywordtype">void</span> nfst_init_help( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths)</div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> {</div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> ths-><a class="code" href="structnfst__plan.html#a5622220bff0d3174b4dcae2a91313eed" title="Total number of Fourier coefficients.">N_total</a> = <a class="code" href="group__nfftutil.html#ga8adc6bf59ec10f16243030ee00ad4a40" title="Computes integer .">nfst_prod_minus_a_int</a>( ths-><a class="code" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b" title="bandwidth">N</a>, 1, ths-><a class= [...]
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> </div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> ths-><a class="code" href="structnfst__plan.html#a7a8028a0e7348e5fa7717eebf07b76d1" title="oversampling-factor">sigma</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> * <span class="keyword">sizeof</span [...]
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> </div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> <span class="keywordflow">for</span>( t = 0; t < ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>; t++)</div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> <span class="comment">/* FIXME: n/N or (n+1)/N */</span></div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> ths-><a class="code" href="structnfst__plan.html#a7a8028a0e7348e5fa7717eebf07b76d1" title="oversampling-factor">sigma</a>[t] = ((<span class="keywordtype">double</span>)ths-><a class="code" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2" title="length of DST-1">n</a>[t] + 1) / ths-><a class="code" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b" title="bandwidth">N</a>[ [...]
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> </div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> <span class="comment">/* assign r2r transform kinds for each dimension */</span></div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> ths->r2r_kind = (fftw_r2r_kind*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a> ( ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> * <span class="keyword">sizeof</span>( fftw_r2r_kind));</div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> <span class="keywordflow">for</span> (t = 0; t < ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>; t++)</div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> ths->r2r_kind[t] = FFTW_RODFT00;</div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> </div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> </div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> WINDOW_HELP_INIT;</div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> </div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & MALLOC_X)</div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> ths-><a class="code" href="structnfst__plan.html#a048ebad4f2abe3821988fa06a5e308d8" title="nodes (in time/spatial domain)">x</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> * ths-><a class="code" hre [...]
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> </div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & MALLOC_F_HAT)</div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> ths-><a class="code" href="structnfst__plan.html#a8e7ed6ed137f58dea8f3871d959f8d9c" title="Vector of Fourier coefficients, size is N_total * sizeof( double )">f_hat</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths-><a class="code" href="structnfst__plan.html#a5622220bff0d3174b4dcae2a91313eed" title="Total number [...]
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> </div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & MALLOC_F)</div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> ths-><a class="code" href="structnfst__plan.html#a314e2d828775d6aa93a26d7c40b7b931" title="Vector of samples, size is M_total * sizeof( double )">f</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths-><a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_t [...]
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> </div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> nfst_precompute_phi_hut( ths);</div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> </div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> <span class="comment">/* NO FFTW_MALLOC HERE */</span></div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> {</div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> ths-><a class="code" href="structnfst__plan.html#a59c1ef7493650838cf31086a46ff2e3f" title="precomputed data, matrix B">psi</a> =</div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths-><a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_total</a> * ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> * NFST_SUMMANDS * <span cla [...]
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> </div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> ths->nfst_full_psi_eps = pow(10, -10);</div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> }</div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> </div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & FFTW_INIT)</div>
-<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> {</div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> ths-><a class="code" href="structnfst__plan.html#a06cd5d11b13d590c9ab3a88d93b21fb2" title="input of fftw">g1</a> =</div>
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( <a class="code" href="group__nfftutil.html#ga8adc6bf59ec10f16243030ee00ad4a40" title="Computes integer .">nfst_prod_minus_a_int</a>( ths-><a class="code" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2" title="length of DST-1">n</a>, 0, ths-><a class="code [...]
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> </div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & FFT_OUT_OF_PLACE)</div>
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> ths-><a class="code" href="structnfst__plan.html#a7b67e2cf657227ae46d13fa239d534f7" title="output of fftw">g2</a> =</div>
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( <a class="code" href="group__nfftutil.html#ga8adc6bf59ec10f16243030ee00ad4a40" title="Computes integer .">nfst_prod_minus_a_int</a>( ths-><a class="code" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2" title="length of DST-1">n</a>, 0, ths-><a class="co [...]
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> ths-><a class="code" href="structnfst__plan.html#a7b67e2cf657227ae46d13fa239d534f7" title="output of fftw">g2</a> = ths-><a class="code" href="structnfst__plan.html#a06cd5d11b13d590c9ab3a88d93b21fb2" title="input of fftw">g1</a>;</div>
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> </div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> ths->my_fftw_r2r_plan =</div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> fftw_plan_r2r( ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>, ths-><a class="code" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2" title="length of DST-1">n</a>, ths-><a class="code" href="structnfst__plan.html#a06cd5d11b13d590c9ab3a88d93b21fb2" title="input of fftw">g1</a>, ths-><a class="code" href="structnf [...]
-<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> }</div>
-<div class="line"><a name="l00928"></a><span class="lineno"> 928</span> </div>
-<div class="line"><a name="l00929"></a><span class="lineno"> 929</span> ths-><a class="code" href="structnfst__plan.html#a4a3b2ecc26204b3087d1c19b7857943f" title="Pointer to the own transform.">mv_trafo</a> = (void (*) (<span class="keywordtype">void</span>* ))<a class="code" href="nfft3_8h.html#ac80b86521428ec2191919cc96c82f416" title="user routines">nfst_trafo</a>;</div>
-<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> ths-><a class="code" href="structnfst__plan.html#aedfe6da9afb5dc0457cc4f2197034fc0" title="Pointer to the own adjoint.">mv_adjoint</a> = (void (*) (<span class="keywordtype">void</span>* ))nfst_adjoint;</div>
-<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> }</div>
-<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> </div>
-<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> <span class="keywordtype">void</span> nfst_init( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> {</div>
-<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> = d;</div>
-<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> </div>
-<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> ths-><a class="code" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b" title="bandwidth">N</a> = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> * <span class="keyword">sizeof</span>( <span class [...]
-<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> </div>
-<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> <span class="keywordflow">for</span>(t = 0;t < d; t++)</div>
-<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> ths-><a class="code" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b" title="bandwidth">N</a>[t] = N[t];</div>
-<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> </div>
-<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> ths-><a class="code" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2" title="length of DST-1">n</a> = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> * <span class="keyword">sizeof</span>( <span [...]
-<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> </div>
-<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> <span class="keywordflow">for</span>( t = 0; t < d; t++)</div>
-<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> ths-><a class="code" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2" title="length of DST-1">n</a>[t] = 2 * X(next_power_of_2)( ths-><a class="code" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b" title="bandwidth">N</a>[t]) - 1;</div>
-<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> </div>
-<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> ths-><a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_total</a> = M_total;</div>
-<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> </div>
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="comment">/* Was soll dieser Ausdruck machen? Es handelt sich um eine Ganzzahl!</span></div>
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="comment"></span></div>
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> <span class="comment"> WINDOW_HELP_ESTIMATE_m;</span></div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> <span class="comment">*/</span> </div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> </div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> = NFST_DEFAULT_FLAGS;</div>
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> ths-><a class="code" href="structnfst__plan.html#a69d37e02b7a2868e3861c582e76e35d8" title="flags for the fftw">fftw_flags</a> = FFTW_DEFAULT_FLAGS;</div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> </div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> nfst_init_help( ths);</div>
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> }</div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> </div>
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> </div>
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> <span class="keywordtype">void</span> nfst_init_m( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> M_total, <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> {</div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="keywordtype">int</span> t, n[d];</div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> </div>
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> <span class="keywordflow">for</span>( t = 0; t < d; t++)</div>
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> n[t] = nfst_fftw_2N( X(next_power_of_2)( N[t]));</div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> </div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> nfst_init_guru( ths, d, N, M_total, n, m, NFST_DEFAULT_FLAGS, FFTW_DEFAULT_FLAGS);</div>
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> }</div>
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> </div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> </div>
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> <span class="keywordtype">void</span> nfst_init_guru( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> *N,</div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> <span class="keywordtype">int</span> M_total, <span class="keywordtype">int</span> *n, <span class="keywordtype">int</span> m,</div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="keywordtype">unsigned</span> nfst_flags, <span class="keywordtype">unsigned</span> fftw_flags)</div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> {</div>
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> = d;</div>
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> ths-><a class="code" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98" title="Total number of samples.">M_total</a> = M_total;</div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> </div>
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> ths-><a class="code" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b" title="bandwidth">N</a> = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> * <span class="keyword">sizeof</span>( <span class [...]
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> </div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> <span class="keywordflow">for</span>( t = 0; t < d; t++)</div>
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> ths-><a class="code" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b" title="bandwidth">N</a>[t] = N[t];</div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> </div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> ths-><a class="code" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2" title="length of DST-1">n</a> = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>( ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a> * <span class="keyword">sizeof</span>( <span [...]
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> </div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="keywordflow">for</span>( t = 0; t < d; t++)</div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> ths-><a class="code" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2" title="length of DST-1">n</a>[t] = n[t];</div>
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> </div>
-<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> ths-><a class="code" href="structnfst__plan.html#ac3aacf128a897c132809411ef9d41d7d" title="cut-off parameter in time-domain">m</a> = m;</div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> </div>
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> = nfst_flags;</div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> ths-><a class="code" href="structnfst__plan.html#a69d37e02b7a2868e3861c582e76e35d8" title="flags for the fftw">fftw_flags</a> = fftw_flags;</div>
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> </div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> nfst_init_help( ths);</div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> }</div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> </div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> </div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="keywordtype">void</span> nfst_init_1d( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths, <span class="keywordtype">int</span> N0, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> {</div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> <span class="keywordtype">int</span> N[1];</div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> </div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> N[0] = N0;</div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> nfst_init( ths, 1, N, M_total);</div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> }</div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> </div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> <span class="keywordtype">void</span> nfst_init_2d( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths, <span class="keywordtype">int</span> N0, <span class="keywordtype">int</span> N1, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> {</div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> <span class="keywordtype">int</span> N[2];</div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> </div>
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> N[0] = N0;</div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> N[1] = N1;</div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> nfst_init( ths, 2, N, M_total);</div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> }</div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> </div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> <span class="keywordtype">void</span> nfst_init_3d( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths, <span class="keywordtype">int</span> N0, <span class="keywordtype">int</span> N1, <span class="keywordtype">int</span> N2, <span class="keywordtype">int</span> M_total)</div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> {</div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> <span class="keywordtype">int</span> N[3];</div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> </div>
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> N[0] = N0;</div>
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span> N[1] = N1;</div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> N[2] = N2;</div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> nfst_init( ths, 3, N, M_total);</div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span> }</div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> </div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> <span class="keywordtype">void</span> nfst_finalize( <a class="code" href="structnfst__plan.html">nfst_plan</a> *ths)</div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> {</div>
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span> <span class="keywordtype">int</span> t; <span class="comment">/* index over dimensions */</span></div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> </div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span> <span class="keywordflow">if</span>( ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & FFTW_INIT)</div>
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> {</div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> fftw_destroy_plan( ths->my_fftw_r2r_plan);</div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> </div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> <span class="keywordflow">if</span>( ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & FFT_OUT_OF_PLACE)</div>
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a7b67e2cf657227ae46d13fa239d534f7" title="output of fftw">g2</a>);</div>
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> </div>
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a06cd5d11b13d590c9ab3a88d93b21fb2" title="input of fftw">g1</a>);</div>
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> }</div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> </div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span> <span class="comment">/* NO FFTW_FREE HERE */</span></div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span> <span class="keywordflow">if</span>( ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> {</div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> <span class="keywordflow">if</span>( ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span> {</div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a2d2a4a4d3c7ff12f35045b5466f41811" title="only for thin B">psi_index_g</a>);</div>
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a028609e96fa5f10d4197e4b50312180c" title="only for thin B">psi_index_f</a>);</div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> }</div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span> </div>
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a59c1ef7493650838cf31086a46ff2e3f" title="precomputed data, matrix B">psi</a>);</div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> }</div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> </div>
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> <span class="keywordflow">if</span>( ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & PRE_PHI_HUT) {</div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> <span class="keywordflow">for</span>( t = 0; t < ths-><a class="code" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8" title="dimension, rank">d</a>; t++)</div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a2c42ae2c8ca95bb4c0c1dfc279bc2cab" title="precomputed data, matrix D">c_phi_inv</a>[t]);</div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a2c42ae2c8ca95bb4c0c1dfc279bc2cab" title="precomputed data, matrix D">c_phi_inv</a>);</div>
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> }</div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> </div>
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="keywordflow">if</span>( ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & MALLOC_F)</div>
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a314e2d828775d6aa93a26d7c40b7b931" title="Vector of samples, size is M_total * sizeof( double )">f</a>);</div>
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> </div>
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span> <span class="keywordflow">if</span>( ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & MALLOC_F_HAT)</div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a8e7ed6ed137f58dea8f3871d959f8d9c" title="Vector of Fourier coefficients, size is N_total * sizeof( double )">f_hat</a>);</div>
-<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> </div>
-<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> <span class="keywordflow">if</span>( ths-><a class="code" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9" title="flags for precomputation, malloc">nfst_flags</a> & MALLOC_X)</div>
-<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a048ebad4f2abe3821988fa06a5e308d8" title="nodes (in time/spatial domain)">x</a>);</div>
-<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> </div>
-<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> WINDOW_HELP_FINALIZE;</div>
-<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> </div>
-<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b" title="bandwidth">N</a>);</div>
-<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2" title="length of DST-1">n</a>);</div>
-<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>( ths-><a class="code" href="structnfst__plan.html#a7a8028a0e7348e5fa7717eebf07b76d1" title="oversampling-factor">sigma</a>);</div>
-<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> </div>
-<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->r2r_kind);</div>
-<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> } <span class="comment">/* nfst_finalize */</span></div>
-<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nnfft_2simple__test_8c_source.html b/doc/api/html/nnfft_2simple__test_8c_source.html
deleted file mode 100644
index 5a949c3..0000000
--- a/doc/api/html/nnfft_2simple__test_8c_source.html
+++ /dev/null
@@ -1,352 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_0c9e32fd27b7f4e80ec4ebeb6c427e2d.html">nnfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nnfft/simple_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keywordtype">void</span> simple_test_nnfft_1d(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> {</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <a class="code" href="structnnfft__plan.html">nnfft_plan</a> my_plan; </div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">int</span> N[1];</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> N[0]=12;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> nnfft_init(&my_plan, 1, 3, 19, N);</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> {</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j]=((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> }</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> {</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> my_plan.<a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>[j]=((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> }</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> nnfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <a class="code" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9" title="computes all entries of B explicitly">nnfft_precompute_full_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <a class="code" href="nfft3_8h.html#a65983eef73b9f5740214bf720f62fcd6" title="create a lookup table">nnfft_precompute_lin_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <a class="code" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580" title="initialisation of direct transform">nnfft_precompute_phi_hut</a>(&my_plan);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> my_plan.<a class="code" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = ((<span class="keywordtype">double</span>)rand())/((double)RAND_MAX) + _Complex_I*((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.f_hat,my_plan.N_total,"given Fourier coefficients, vector f_hat");</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> nnfft_trafo_direct(&my_plan);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.f,my_plan.M_total,"nndft, vector f");</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> nnfft_trafo(&my_plan);</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.f,my_plan.M_total,"nnfft, vector f");</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> nnfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> }</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> static <span class="keywordtype">void</span> simple_test_adjoint_nnfft_1d(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> {</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <a class="code" href="structnnfft__plan.html">nnfft_plan</a> my_plan; </div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordtype">int</span> N[1];</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> N[0]=12;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> nnfft_init(&my_plan, 1, 20, 33, N);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> {</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j]=((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> {</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> my_plan.<a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>[j]=((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> }</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> nnfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <a class="code" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9" title="computes all entries of B explicitly">nnfft_precompute_full_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <a class="code" href="nfft3_8h.html#a65983eef73b9f5740214bf720f62fcd6" title="create a lookup table">nnfft_precompute_lin_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <a class="code" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580" title="initialisation of direct transform">nnfft_precompute_phi_hut</a>(&my_plan);</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> my_plan.<a class="code" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = ((<span class="keywordtype">double</span>)rand())/((double)RAND_MAX) + _Complex_I*((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX);</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.f,my_plan.M_total,"given Samples, vector f");</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> nnfft_adjoint_direct(&my_plan);</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.f_hat,my_plan.N_total,"adjoint nndft, vector f_hat");</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> nnfft_adjoint(&my_plan);</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.f_hat,my_plan.N_total,"adjoint nnfft, vector f_hat");</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> nnfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> }</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> static <span class="keywordtype">void</span> simple_test_nnfft_2d(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> {</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <a class="code" href="structnnfft__plan.html">nnfft_plan</a> my_plan; </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordtype">int</span> N[2];</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> N[0]=12;</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> N[1]=14;</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> nnfft_init(&my_plan, 2,12*14,19, N);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> {</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[2*j]=((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[2*j+1]=((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> }</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> {</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> my_plan.<a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>[2*j]=((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> my_plan.<a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>[2*j+1]=((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> }</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> </div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> nnfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> </div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <a class="code" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9" title="computes all entries of B explicitly">nnfft_precompute_full_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <a class="code" href="nfft3_8h.html#a65983eef73b9f5740214bf720f62fcd6" title="create a lookup table">nnfft_precompute_lin_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <a class="code" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580" title="initialisation of direct transform">nnfft_precompute_phi_hut</a>(&my_plan);</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> </div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> my_plan.<a class="code" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = ((<span class="keywordtype">double</span>)rand())/((double)RAND_MAX) + _Complex_I*((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX);</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> </div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.f_hat,12,</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> "given Fourier coefficients, vector f_hat (first 12 entries)");</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> nnfft_trafo_direct(&my_plan);</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.f,my_plan.M_total,"ndft, vector f");</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> </div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> nnfft_trafo(&my_plan);</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.f,my_plan.M_total,"nfft, vector f");</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> nnfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> }</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> static <span class="keywordtype">void</span> simple_test_innfft_1d(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> {</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordtype">int</span> j,k,l,N=8; </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <a class="code" href="structnnfft__plan.html">nnfft_plan</a> my_plan; </div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_iplan; </div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> nnfft_init(&my_plan,1 ,8 ,8 ,&N);</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> solver_init_advanced_complex(&my_iplan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&my_plan),CGNR);</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j]=((<span class="keywordtype">double</span>)rand())/((double)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> </div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> my_plan.<a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>[k]=((<span class="keywordtype">double</span>)rand())/((<span class="keywordtype">double</span>)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> </div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> nnfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> </div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <a class="code" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9" title="computes all entries of B explicitly">nnfft_precompute_full_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <a class="code" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580" title="initialisation of direct transform">nnfft_precompute_phi_hut</a>(&my_plan);</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> </div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j] = ((<span class="keywordtype">double</span>)rand())/((double)RAND_MAX);</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> </div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>,my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</ [...]
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k] = 0.0;</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> </div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>,my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coeffici [...]
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="stringliteral">"approximate solution, vector f_hat_iter"</span>);</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> </div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> solver_before_loop_complex(&my_iplan);</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> </div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="keywordflow">for</span>(l=0;l<8;l++)</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> {</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> printf(<span class="stringliteral">"iteration l=%d\n"</span>,l);</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>,my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coeffi [...]
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="stringliteral">"approximate solution, vector f_hat_iter"</span>);</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> </div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>,my_plan.<a class="code" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b" title="Vector of Fourier coefficients, size is [...]
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <a class="code" href="nfft3_8h.html#a994c1748ebe1371c53dd2cb437054d4f" title="user routines">nnfft_trafo</a>(&my_plan);</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(my_plan.<a class="code" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total num [...]
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>,my_plan.<a class="code" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b" title="Vector of Fourier coefficients, size is [...]
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> }</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> </div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> nnfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> }</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> </div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keyword">static</span> <span class="keywordtype">void</span> measure_time_nnfft_1d(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> {</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <a class="code" href="structnnfft__plan.html">nnfft_plan</a> my_plan; </div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="keywordtype">int</span> my_N,N=4;</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="keywordtype">double</span> t;</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> ticks t0, t1;</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="keywordflow">for</span>(my_N=16; my_N<=16384; my_N*=2)</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> {</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> nnfft_init(&my_plan,1,my_N,my_N,&N);</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> </div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j]=((<span class="keywordtype">double</span>)rand())/((double)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> my_plan.<a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>[j]=((<span class="keywordtype">double</span>)rand())/((<span class="keywordtype">double</span>)RAND_MAX)-0.5;</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> </div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> nnfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> </div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <a class="code" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9" title="computes all entries of B explicitly">nnfft_precompute_full_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> </div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <a class="code" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580" title="initialisation of direct transform">nnfft_precompute_phi_hut</a>(&my_plan);</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> </div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> my_plan.<a class="code" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = ((<span class="keywordtype">double</span>)rand())/((double)RAND_MAX) + _Complex_I*((double)rand())/((<span class="keywordtype">double</span>)RAND_MAX);</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> </div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> t0 = getticks();</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> nnfft_trafo_direct(&my_plan);</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> t1 = getticks();</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> printf("t_nndft=%e,\t",t);</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> </div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> t0 = getticks();</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> nnfft_trafo(&my_plan);</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> t1 = getticks();</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> printf("t_nnfft=%e\t",t);</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> printf("(N=M=%d)\n",my_N);</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> </div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> nnfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> }</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> }</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> </div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> {</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> system(<span class="stringliteral">"clear"</span>);</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> printf(<span class="stringliteral">"1) computing a one dimensional nndft, nnfft\n\n"</span>);</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> simple_test_nnfft_1d();</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> </div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> getc(stdin);</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> </div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> system(<span class="stringliteral">"clear"</span>);</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> printf(<span class="stringliteral">"1a) computing a one dimensional adjoint nndft, nnfft\n\n"</span>);</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> simple_test_adjoint_nnfft_1d();</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> </div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> getc(stdin);</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> </div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> system(<span class="stringliteral">"clear"</span>);</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> printf(<span class="stringliteral">"2) computing a two dimensional nndft, nnfft\n\n"</span>);</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> simple_test_nnfft_2d();</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> </div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> getc(stdin);</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> </div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> system(<span class="stringliteral">"clear"</span>);</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> printf(<span class="stringliteral">"3) computing a one dimensional innfft\n\n"</span>);</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> simple_test_innfft_1d();</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> </div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> getc(stdin);</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> system(<span class="stringliteral">"clear"</span>);</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> printf(<span class="stringliteral">"4) computing times for one dimensional nnfft\n\n"</span>);</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> measure_time_nnfft_1d();</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> </div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nnfft_8c_source.html b/doc/api/html/nnfft_8c_source.html
deleted file mode 100644
index 9bdb897..0000000
--- a/doc/api/html/nnfft_8c_source.html
+++ /dev/null
@@ -1,704 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nnfft.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_ea25627ea6e0d39c26e4e31bca7b94c4.html">nnfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nnfft.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nnfft.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> </div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#define MACRO_nndft_init_result_trafo memset(f,0,ths->M_total*sizeof(double _Complex));</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nndft_init_result_conjugated MACRO_nndft_init_result_trafo</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nndft_init_result_adjoint memset(f_hat,0,ths->N_total*sizeof(double _Complex));</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nndft_init_result_transposed MACRO_nndft_init_result_adjoint</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#define MACRO_nndft_sign_trafo (-2.0*PI)</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nndft_sign_conjugated (+2.0*PI)</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nndft_sign_adjoint (+2.0*PI)</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nndft_sign_transposed (-2.0*PI)</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor">#define MACRO_nndft_compute_trafo (*fj) += (*f_hat_k)*cexp(+ _Complex_I*omega);</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor">#define MACRO_nndft_compute_conjugated MACRO_nndft_compute_trafo</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor">#define MACRO_nndft_compute_adjoint (*f_hat_k) += (*fj)*cexp(+ _Complex_I*omega);</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor">#define MACRO_nndft_compute_transposed MACRO_nndft_compute_adjoint</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor">#define MACRO_nndft(which_one) \</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor">void nnfft_ ## which_one ## _direct (nnfft_plan *ths) \</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor"> int j; \</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor"> int t; \</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor"> int l; \</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor"> double _Complex *f_hat, *f; \</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor"> double _Complex *f_hat_k; \</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="preprocessor"> double _Complex *fj; \</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="preprocessor"> double omega; \</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="preprocessor"> f_hat=ths->f_hat; f=ths->f; \</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="preprocessor"> MACRO_nndft_init_result_ ## which_one \</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="preprocessor"> for(j=0, fj=f; j<ths->M_total; j++, fj++) \</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor"> for(l=0, f_hat_k=f_hat; l<ths->N_total; l++, f_hat_k++) \</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor"> omega=0.0; \</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor"> for(t = 0; t<ths->d; t++) \</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="preprocessor"> omega+=ths->v[l*ths->d+t] * ths->x[j*ths->d+t] * ths->N[t]; \</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="preprocessor"> omega*= MACRO_nndft_sign_ ## which_one; \</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="preprocessor"> MACRO_nndft_compute_ ## which_one \</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="preprocessor"> } </span><span class="comment">/* for(l) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="preprocessor">} </span><span class="comment">/* nndft_trafo */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="preprocessor"></span>MACRO_nndft(trafo)</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> MACRO_nndft(adjoint)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> static <span class="keywordtype">void</span> nnfft_uo(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths,<span class="keywordtype">int</span> j,<span class="keywordtype">int</span> *up,<span class="keywordtype">int</span> *op,<span class="keywordtype">int</span> act_dim)</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> {</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordtype">double</span> c;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">int</span> u,o;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> c = ths->v[j*ths->d+act_dim] * ths->n[act_dim];</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> u = c; o = c;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">if</span>(c < 0)</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> u = u-1;</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> o = o+1;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> u = u - (ths->m); o = o + (ths->m);</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> up[0]=u; op[0]=o;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> }</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="preprocessor">#define MACRO_nnfft_B_init_result_A memset(f,0,ths->N_total*sizeof(double _Complex));</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_nnfft_B_init_result_T memset(g,0,ths->aN1_total*sizeof(double _Complex));</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="preprocessor">#define MACRO_nnfft_B_PRE_FULL_PSI_compute_A { \</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="preprocessor"> (*fj) += ths->psi[ix] * g[ths->psi_index_g[ix]]; \</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="preprocessor">#define MACRO_nnfft_B_PRE_FULL_PSI_compute_T { \</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="preprocessor"> g[ths->psi_index_g[ix]] += ths->psi[ix] * (*fj); \</span></div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="preprocessor">#define MACRO_nnfft_B_compute_A { \</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="preprocessor"> (*fj) += phi_prod[ths->d] * g[ll_plain[ths->d]]; \</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="preprocessor">#define MACRO_nnfft_B_compute_T { \</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="preprocessor"> g[ll_plain[ths->d]] += phi_prod[ths->d] * (*fj); \</span></div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="preprocessor">#define MACRO_with_PRE_LIN_PSI (ths->psi[(ths->K+1)*t2+y_u[t2]]* \</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="preprocessor"> (y_u[t2]+1-y[t2]) + \</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="preprocessor"> ths->psi[(ths->K+1)*t2+y_u[t2]+1]* \</span></div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="preprocessor"> (y[t2]-y_u[t2]))</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_with_PRE_PSI ths->psi[(j*ths->d+t2)*(2*ths->m+2)+lj[t2]]</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="preprocessor"></span><span class="preprocessor">#define MACRO_without_PRE_PSI PHI(-ths->v[j*ths->d+t2]+ \</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="preprocessor"> ((double)l[t2])/ths->N1[t2], t2)</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="preprocessor">#define MACRO_init_uo_l_lj_t { \</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="preprocessor"> for(t = ths->d-1; t>=0; t--) \</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="preprocessor"> nnfft_uo(ths,j,&u[t],&o[t],t); \</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="preprocessor"> l[t] = u[t]; \</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="preprocessor"> lj[t] = 0; \</span></div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="preprocessor"> } </span><span class="comment">/* for(t) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="preprocessor"> t++; \</span></div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="preprocessor">#define MACRO_update_with_PRE_PSI_LIN { \</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="preprocessor"> for(t2=t; t2<ths->d; t2++) \</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="preprocessor"> y[t2] = fabs(((-ths->N1[t2]*ths->v[j*ths->d+t2]+(double)l[t2]) \</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="preprocessor"> * ((double)ths->K))/(ths->m+1)); \</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="preprocessor"> y_u[t2] = (int)y[t2]; \</span></div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="preprocessor"> } </span><span class="comment">/* for(t2) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="preprocessor">#define MACRO_update_phi_prod_ll_plain(which_one) { \</span></div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="preprocessor"> for(t2=t; t2<ths->d; t2++) \</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="preprocessor"> phi_prod[t2+1]=phi_prod[t2]* MACRO_ ## which_one; \</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="preprocessor"> ll_plain[t2+1]=ll_plain[t2]*ths->aN1[t2] + \</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="preprocessor"> (l[t2]+ths->aN1[t2]*3/2)%ths->aN1[t2]; \</span></div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="preprocessor"> </span><span class="comment">/* 3/2 because of the (not needed) fftshift and to be in [0 aN1[t2]]?!*/</span><span class="preprocessor">\</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="preprocessor"> } </span><span class="comment">/* for(t2) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="preprocessor">#define MACRO_count_uo_l_lj_t { \</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="preprocessor"> for(t = ths->d-1; (t>0)&&(l[t]==o[t]); t--) \</span></div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="preprocessor"> l[t] = u[t]; \</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="preprocessor"> lj[t] = 0; \</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="preprocessor"> } </span><span class="comment">/* for(t) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="preprocessor"> l[t]++; \</span></div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="preprocessor"> lj[t]++; \</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="preprocessor">}</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="preprocessor">#define MACRO_nnfft_B(which_one) \</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="preprocessor">static inline void nnfft_B_ ## which_one (nnfft_plan *ths) \</span></div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="preprocessor"> int lprod; \</span></div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="preprocessor"> int u[ths->d], o[ths->d]; \</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="preprocessor"> int t, t2; \</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="preprocessor"> int j; \</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="preprocessor"> int l_L, ix; \</span></div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="preprocessor"> int l[ths->d]; \</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="preprocessor"> int lj[ths->d]; \</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="preprocessor"> int ll_plain[ths->d+1]; \</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="preprocessor"> double phi_prod[ths->d+1]; \</span></div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="preprocessor"> double _Complex *f, *g; \</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="preprocessor"> double _Complex *fj; \</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="preprocessor"> double y[ths->d]; \</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="preprocessor"> int y_u[ths->d]; \</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="preprocessor"> f=ths->f_hat; g=ths->F; \</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="preprocessor"> MACRO_nnfft_B_init_result_ ## which_one \</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="preprocessor"> if(ths->nnfft_flags & PRE_FULL_PSI) \</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="preprocessor"> for(ix=0, j=0, fj=f; j<ths->N_total; j++,fj++) \</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="preprocessor"> for(l_L=0; l_L<ths->psi_index_f[j]; l_L++, ix++) \</span></div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="preprocessor"> MACRO_nnfft_B_PRE_FULL_PSI_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="preprocessor"> } \</span></div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="preprocessor"> phi_prod[0]=1; \</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="preprocessor"> ll_plain[0]=0; \</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="preprocessor"> for(t=0,lprod = 1; t<ths->d; t++) \</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="preprocessor"> lprod *= (2*ths->m+2); \</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="preprocessor"> if(ths->nnfft_flags & PRE_PSI) \</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="preprocessor"> for(j=0, fj=f; j<ths->N_total; j++, fj++) \</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="preprocessor"> MACRO_init_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="preprocessor"> for(l_L=0; l_L<lprod; l_L++) \</span></div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="preprocessor"> MACRO_update_phi_prod_ll_plain(with_PRE_PSI); \</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="preprocessor"> MACRO_nnfft_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="preprocessor"> MACRO_count_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="preprocessor"> } </span><span class="comment">/* for(l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="preprocessor"> } </span><span class="comment">/* if(PRE_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="preprocessor"> if(ths->nnfft_flags & PRE_LIN_PSI) \</span></div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="preprocessor"> for(j=0, fj=f; j<ths->N_total; j++, fj++) \</span></div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="preprocessor"> MACRO_init_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="preprocessor"> for(l_L=0; l_L<lprod; l_L++) \</span></div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="preprocessor"> MACRO_update_with_PRE_PSI_LIN; \</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="preprocessor"> MACRO_update_phi_prod_ll_plain(with_PRE_LIN_PSI); \</span></div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="preprocessor"> MACRO_nnfft_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="preprocessor"> MACRO_count_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="preprocessor"> } </span><span class="comment">/* for(l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="preprocessor"> return; \</span></div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="preprocessor"> } </span><span class="comment">/* if(PRE_LIN_PSI) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="preprocessor"> </span><span class="comment">/* no precomputed psi at all */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="preprocessor"> for(j=0, fj=f; j<ths->N_total; j++, fj++) \</span></div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> <span class="preprocessor"> MACRO_init_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="preprocessor"> for(l_L=0; l_L<lprod; l_L++) \</span></div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <span class="preprocessor"> { \</span></div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="preprocessor"> MACRO_update_phi_prod_ll_plain(without_PRE_PSI); \</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="preprocessor"> MACRO_nnfft_B_compute_ ## which_one; \</span></div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="preprocessor"> MACRO_count_uo_l_lj_t; \</span></div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="preprocessor"> } </span><span class="comment">/* for(l_L) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="preprocessor"> } </span><span class="comment">/* for(j) */</span><span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <span class="preprocessor">} </span><span class="comment">/* nnfft_B */</span><span class="preprocessor"></span></div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> MACRO_nnfft_B(A)</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> MACRO_nnfft_B(T)</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> </div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> static inline <span class="keywordtype">void</span> nnfft_D (<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths){</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="keywordtype">int</span> j,t;</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="keywordtype">double</span> tmp;</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> </div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">if</span>(ths->nnfft_flags & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> {</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> <span class="keywordflow">for</span>(j=0; j<ths->M_total; j++)</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> ths->f[j] *= ths->c_phi_inv[j];</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> }</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> {</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="keywordflow">for</span>(j=0; j<ths->M_total; j++)</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> {</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> tmp = 1.0;</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="comment">/* multiply with N1, because x was modified */</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="keywordflow">for</span>(t=0; t<ths->d; t++)</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> tmp*= 1.0 /((PHI_HUT(ths->x[ths->d*j + t]*((<span class="keywordtype">double</span>)ths->N[t]),t)) );</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> ths->f[j] *= tmp;</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> }</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> }</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> }</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div>
-<div class="line"><a name="l00294"></a><span class="lineno"><a class="code" href="nfft3_8h.html#a994c1748ebe1371c53dd2cb437054d4f"> 294</a></span> <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#a994c1748ebe1371c53dd2cb437054d4f" title="user routines">nnfft_trafo</a>(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths)</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> {</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="keywordtype">int</span> j,t;</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> </div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> nnfft_B_T(ths);</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> </div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++) {</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="keywordflow">for</span>(t=0;t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>;t++) {</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+t]= ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class [...]
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> }</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> }</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> </div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="comment">/* allows for external swaps of ths->f */</span></div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = ths-><a class="code" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb" title="Vector of samples, size is M [...]
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> </div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>);</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> </div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++) {</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="keywordflow">for</span>(t=0;t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>;t++) {</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+t]= ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class [...]
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> }</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> }</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> </div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> nnfft_D(ths);</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> } <span class="comment">/* nnfft_trafo */</span></div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> </div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="keywordtype">void</span> nnfft_adjoint(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths)</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> {</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordtype">int</span> j,t;</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> </div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> nnfft_D(ths);</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> </div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++) {</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="keywordflow">for</span>(t=0;t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>;t++) {</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+t]= ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class [...]
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> }</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> }</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> </div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="comment">/* allows for external swaps of ths->f */</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>=ths-><a class="code" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb" title="Vector of samples, size is M_t [...]
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> </div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> nfft_adjoint(ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>);</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++) {</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> <span class="keywordflow">for</span>(t=0;t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>;t++) {</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+t]= ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class [...]
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> }</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> }</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> </div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> nnfft_B_A(ths);</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> } <span class="comment">/* nnfft_adjoint */</span></div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> </div>
-<div class="line"><a name="l00348"></a><span class="lineno"><a class="code" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580"> 348</a></span> <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580" title="initialisation of direct transform">nnfft_precompute_phi_hut</a>(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths)</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> {</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="keywordtype">double</span> tmp;</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> </div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> ths-><a class="code" href="structnnfft__plan.html#a9073b3c76f70f8b9caedac7f5574ce89" title="precomputed data, matrix D">c_phi_inv</a>= (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>*<span class= [...]
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> </div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="keywordflow">for</span>(j=0; j<ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>; j++)</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> {</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> tmp = 1.0;</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="keywordflow">for</span>(t=0; t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>; t++)</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> tmp*= 1.0 /(PHI_HUT(ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>*j + t]*((<span class="keywordtype">double</span>)ths-><a class="code" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7 [...]
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> ths-><a class="code" href="structnnfft__plan.html#a9073b3c76f70f8b9caedac7f5574ce89" title="precomputed data, matrix D">c_phi_inv</a>[j]=tmp;</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> }</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> } <span class="comment">/* nnfft_phi_hut */</span></div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> </div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> </div>
-<div class="line"><a name="l00368"></a><span class="lineno"><a class="code" href="nfft3_8h.html#a65983eef73b9f5740214bf720f62fcd6"> 368</a></span> <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#a65983eef73b9f5740214bf720f62fcd6" title="create a lookup table">nnfft_precompute_lin_psi</a>(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths)</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> {</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="keywordtype">double</span> step; </div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>);</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> </div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>; t++)</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> {</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> step=((double)(ths-><a class="code" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da" title="cut-off parameter in time-domain">m</a>+1))/(ths-><a class="code" href="structnnfft__plan.html#a4ee39bebbff40746c2701ade2e13f1f8" title="number of precomp.">K</a>*ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a>[t]);</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> <span class="keywordflow">for</span>(j=0;j<=ths-><a class="code" href="structnnfft__plan.html#a4ee39bebbff40746c2701ade2e13f1f8" title="number of precomp.">K</a>;j++)</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> {</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> ths-><a class="code" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4" title="precomputed data, matrix B">psi</a>[(ths-><a class="code" href="structnnfft__plan.html#a4ee39bebbff40746c2701ade2e13f1f8" title="number of precomp.">K</a>+1)*t + j] = PHI(j*step,t);</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> } <span class="comment">/* for(t) */</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> }</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> </div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> <span class="keywordtype">void</span> nnfft_precompute_psi(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths)</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> {</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="keywordtype">int</span> l; </div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="keywordtype">int</span> lj; </div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="keywordtype">int</span> u, o; </div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="keywordflow">for</span> (t=0; t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>; t++)</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> {</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> nnfft_uo(ths,j,&u,&o,t);</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> </div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="keywordflow">for</span>(l=u, lj=0; l <= o; l++, lj++)</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> ths-><a class="code" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4" title="precomputed data, matrix B">psi</a>[(j*ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+t)*(2*ths-><a class="code" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da" title="cut-off parameter in time-domain">m</a>+2)+lj]=</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> (PHI((-ths-><a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>[j*ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+t]+((<span class="keywordtype">double</span>)l)/((<span class="keywordtype">double</span>)ths-><a class="code" href="structnnfft__plan.html#a746 [...]
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> </div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++) {</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="keywordflow">for</span>(t=0;t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>;t++) {</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+t]= ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class [...]
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> }</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> }</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> </div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> nfft_precompute_psi(ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>);</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> </div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++) {</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="keywordflow">for</span>(t=0;t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>;t++) {</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+t]= ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class [...]
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> }</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> }</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="comment">/* for(t) */</span></div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> } <span class="comment">/* nfft_precompute_psi */</span></div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> </div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> </div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> </div>
-<div class="line"><a name="l00425"></a><span class="lineno"><a class="code" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9"> 425</a></span> <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9" title="computes all entries of B explicitly">nnfft_precompute_full_psi</a>(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths)</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> {</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> <span class="keywordtype">int</span> t,t2; </div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="keywordtype">int</span> j; </div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> <span class="keywordtype">int</span> l_L; </div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="keywordtype">int</span> l[ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>]; </div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="keywordtype">int</span> lj[ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>]; </div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="keywordtype">int</span> ll_plain[ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+1]; </div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="keywordtype">int</span> lprod; </div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="keywordtype">int</span> u[ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>], o[ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>]; </div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="keywordtype">double</span> phi_prod[ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+1];</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> </div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="keywordtype">int</span> ix,ix_old;</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> </div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++) {</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> <span class="keywordflow">for</span>(t=0;t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>;t++) {</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+t]= ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class [...]
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> }</div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> }</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> </div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> nnfft_precompute_psi(ths);</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> </div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> nfft_precompute_full_psi(ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>);</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> </div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++) {</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <span class="keywordflow">for</span>(t=0;t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>;t++) {</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>+t]= ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[j*ths-><a class [...]
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> }</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> }</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> </div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> phi_prod[0]=1;</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> ll_plain[0]=0;</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> </div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="keywordflow">for</span>(t=0,lprod = 1; t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>; t++)</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> lprod *= 2*ths-><a class="code" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da" title="cut-off parameter in time-domain">m</a>+2;</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> </div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> <span class="keywordflow">for</span>(j=0,ix=0,ix_old=0; j<ths->N_total; j++)</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> {</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> MACRO_init_uo_l_lj_t;</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> </div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="keywordflow">for</span>(l_L=0; l_L<lprod; l_L++, ix++)</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> {</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> MACRO_update_phi_prod_ll_plain(without_PRE_PSI);</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> </div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> ths-><a class="code" href="structnnfft__plan.html#aa0b2be91e59a45c809c68398ceb41232" title="only for thin B">psi_index_g</a>[ix]=ll_plain[ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>];</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> ths-><a class="code" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4" title="precomputed data, matrix B">psi</a>[ix]=phi_prod[ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>];</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> </div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> MACRO_count_uo_l_lj_t;</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> } <span class="comment">/* for(l_L) */</span></div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> </div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> </div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> ths-><a class="code" href="structnnfft__plan.html#a2ada74222958e630640e6456e9bd2a8d" title="only for thin B">psi_index_f</a>[j]=ix-ix_old;</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> ix_old=ix;</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> } <span class="comment">/* for(j) */</span></div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> }</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> </div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nnfft_init_help(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths, <span class="keywordtype">int</span> m2, <span class="keywordtype">unsigned</span> nfft_flags, <span class="keywordtype">unsigned</span> fftw_flags)</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> {</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="keywordtype">int</span> lprod; </div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="keywordtype">int</span> N2[ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>];</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> </div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> ths-><a class="code" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb" title="sigma*a*N">aN1</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>*<span class="keyword">sizeof</span>(<span class="ke [...]
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> </div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> ths-><a class="code" href="structnnfft__plan.html#a0a30183077239e2de76e5de626dc92e9" title="1 + 2*m/N1">a</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>*<span class="keyword">sizeof</span>(<span class=" [...]
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> </div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> ths-><a class="code" href="structnnfft__plan.html#a6a3e11978f1e2c6279bd12785ef56b5d" title="oversampling-factor">sigma</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>*<span class="keyword">sizeof</span>( [...]
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> </div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> ths-><a class="code" href="structnnfft__plan.html#a6b2de2633dd4347692e96887f98c1020" title="n=N1, for the window function">n</a> = ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a>;</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> </div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> ths-><a class="code" href="structnnfft__plan.html#acb1a1fa5fdb73d2187e9e9d8e4415921" title="aN1_total=aN1[0]* ...">aN1_total</a>=1;</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> </div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="keywordflow">for</span>(t = 0; t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>; t++) {</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> ths-><a class="code" href="structnnfft__plan.html#a0a30183077239e2de76e5de626dc92e9" title="1 + 2*m/N1">a</a>[t] = 1.0 + (2.0*((double)ths-><a class="code" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da" title="cut-off parameter in time-domain">m</a>))/((<span class="keywordtype">double</span>)ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title [...]
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> ths-><a class="code" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb" title="sigma*a*N">aN1</a>[t] = ths-><a class="code" href="structnnfft__plan.html#a0a30183077239e2de76e5de626dc92e9" title="1 + 2*m/N1">a</a>[t] * ((double)ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a>[t]);</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="comment">/* aN1 should be even */</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb" title="sigma*a*N">aN1</a>[t]%2 != 0)</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> ths-><a class="code" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb" title="sigma*a*N">aN1</a>[t] = ths-><a class="code" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb" title="sigma*a*N">aN1</a>[t] +1;</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> </div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> ths-><a class="code" href="structnnfft__plan.html#acb1a1fa5fdb73d2187e9e9d8e4415921" title="aN1_total=aN1[0]* ...">aN1_total</a>*=ths-><a class="code" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb" title="sigma*a*N">aN1</a>[t];</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> ths-><a class="code" href="structnnfft__plan.html#a6a3e11978f1e2c6279bd12785ef56b5d" title="oversampling-factor">sigma</a>[t] = ((double) ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a>[t] )/((double) ths-><a class="code" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7" title="cut-off-frequencies">N</a>[t]);;</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> </div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="comment">/* take the same oversampling factor in the inner NFFT */</span></div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> N2[t] = ceil(ths-><a class="code" href="structnnfft__plan.html#a6a3e11978f1e2c6279bd12785ef56b5d" title="oversampling-factor">sigma</a>[t]*(ths-><a class="code" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb" title="sigma*a*N">aN1</a>[t]));</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> </div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="comment">/* N2 should be even */</span></div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="keywordflow">if</span>(N2[t]%2 != 0)</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> N2[t] = N2[t] +1;</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> }</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> </div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> WINDOW_HELP_INIT</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> </div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & MALLOC_X)</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>*ths-><a class="code" href [...]
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & MALLOC_F)</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> ths-><a class="code" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of [...]
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> </div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & MALLOC_V)</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> ths-><a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>*ths-><a class="code" href="str [...]
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & MALLOC_F_HAT)</div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> ths-><a class="code" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = (<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" tit [...]
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> </div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> {</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> ths-><a class="code" href="structnnfft__plan.html#a4ee39bebbff40746c2701ade2e13f1f8" title="number of precomp.">K</a>=(1U<< 10)*(ths-><a class="code" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da" title="cut-off parameter in time-domain">m</a>+1);</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> ths-><a class="code" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4" title="precomputed data, matrix B">psi</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((ths-><a class="code" href="structnnfft__plan.html#a4ee39bebbff40746c2701ade2e13f1f8" title="number of precomp.">K</a>+1)*ths-><a class="code [...]
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> }</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> </div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> ths-><a class="code" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4" title="precomputed data, matrix B">psi</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>*th [...]
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> </div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> {</div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="keywordflow">for</span>(t=0,lprod = 1; t<ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>; t++)</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> lprod *= 2*ths-><a class="code" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da" title="cut-off parameter in time-domain">m</a>+2;</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> </div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> ths-><a class="code" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4" title="precomputed data, matrix B">psi</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>* [...]
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> </div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> ths-><a class="code" href="structnnfft__plan.html#a2ada74222958e630640e6456e9bd2a8d" title="only for thin B">psi_index_f</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>*<span [...]
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> ths-><a class="code" href="structnnfft__plan.html#aa0b2be91e59a45c809c68398ceb41232" title="only for thin B">psi_index_g</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>*lprod [...]
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> }</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> </div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a> = (<a class="code" href="structnfft__plan.html">nfft_plan</a>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<a class="code" href="structnfft__plan.html">nfft_plan</a>));</div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> </div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> nfft_init_guru(ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>, ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>, ths-><a class="code" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb" title="sigma*a*N">aN1</a>, ths-><a class="code" href="st [...]
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> nfft_flags, fftw_flags);</div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> </div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a> = ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>;</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = ths-><a class="code" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb" title="Vector of samples, size is M [...]
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> ths->F = ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>;</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> </div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> ths-><a class="code" href="structnnfft__plan.html#ac2beab555e72c8f10921db21dc094069" title="Pointer to the own transform.">mv_trafo</a> = (void (*) (<span class="keywordtype">void</span>* ))<a class="code" href="nfft3_8h.html#a994c1748ebe1371c53dd2cb437054d4f" title="user routines">nnfft_trafo</a>;</div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> ths-><a class="code" href="structnnfft__plan.html#a0afd6961b8b0b24b526e034d89874c7c" title="Pointer to the own adjoint.">mv_adjoint</a> = (void (*) (<span class="keywordtype">void</span>* ))nnfft_adjoint;</div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> }</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> </div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="keywordtype">void</span> nnfft_init_guru(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N_total, <span class="keywordtype">int</span> M_total, <span class="keywordtype">int</span> *N, <span class="keywordtype">int</span> *N1,</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> nnfft_flags)</div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> {</div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="keywordtype">unsigned</span> nfft_flags;</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="keywordtype">unsigned</span> fftw_flags;</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> </div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>= d;</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>= M_total;</div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> ths-><a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>= N_total;</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> ths-><a class="code" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da" title="cut-off parameter in time-domain">m</a>= m;</div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a>= nnfft_flags;</div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> fftw_flags= FFTW_ESTIMATE| FFTW_DESTROY_INPUT;</div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> nfft_flags= PRE_PHI_HUT| MALLOC_F_HAT| FFTW_INIT| FFT_OUT_OF_PLACE;</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> </div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> nfft_flags = nfft_flags | PRE_PSI;</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> </div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> nfft_flags = nfft_flags | PRE_FULL_PSI;</div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> </div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> nfft_flags = nfft_flags | PRE_LIN_PSI;</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> </div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> ths-><a class="code" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7" title="cut-off-frequencies">N</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>*<span class="keyword">sizeof</span>(<span c [...]
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>*<span class="keyword">sizeof</span>(<span class="keywo [...]
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> </div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="keywordflow">for</span>(t=0; t<d; t++) {</div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> ths-><a class="code" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7" title="cut-off-frequencies">N</a>[t] = N[t];</div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a>[t] = N1[t];</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> }</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> nnfft_init_help(ths,m,nfft_flags,fftw_flags);</div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> }</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> </div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="keywordtype">void</span> nnfft_init(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> N_total, <span class="keywordtype">int</span> M_total, <span class="keywordtype">int</span> *N)</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> {</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="keywordtype">int</span> t; </div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="keywordtype">unsigned</span> nfft_flags;</div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="keywordtype">unsigned</span> fftw_flags;</div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> </div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a> = d;</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> ths-><a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a> = M_total;</div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> ths-><a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a> = N_total;</div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> </div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="comment">/* m should be greater to get the same accuracy as the nfft */</span></div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="comment">/* Was soll dieser Ausdruck machen? Es handelt sich um eine Ganzzahl!</span></div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="comment"></span></div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="comment"> WINDOW_HELP_ESTIMATE_m;</span></div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="comment">*/</span></div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> </div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> ths-><a class="code" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7" title="cut-off-frequencies">N</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>*<span class="keyword">sizeof</span>(<span c [...]
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a> = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6" title="dimension, rank">d</a>*<span class="keyword">sizeof</span>(<span class="keywo [...]
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> </div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <span class="keywordflow">for</span>(t=0; t<d; t++) {</div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> ths-><a class="code" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7" title="cut-off-frequencies">N</a>[t] = N[t];</div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> </div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="comment">/* the standard oversampling factor in the nnfft is 1.5 */</span></div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a>[t] = ceil(1.5*ths-><a class="code" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7" title="cut-off-frequencies">N</a>[t]);</div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> </div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="comment">/* N1 should be even */</span></div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a>[t]%2 != 0)</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a>[t] = ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a>[t] +1;</div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> }</div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> </div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a>=PRE_PSI| PRE_PHI_HUT| MALLOC_X| MALLOC_V| MALLOC_F_HAT| MALLOC_F;</div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> nfft_flags= PRE_PSI| PRE_PHI_HUT| MALLOC_F_HAT| FFTW_INIT| FFT_OUT_OF_PLACE;</div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> </div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> fftw_flags= FFTW_ESTIMATE| FFTW_DESTROY_INPUT;</div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> </div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> nnfft_init_help(ths,ths-><a class="code" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da" title="cut-off parameter in time-domain">m</a>,nfft_flags,fftw_flags);</div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> }</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> </div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> <span class="keywordtype">void</span> nnfft_finalize(<a class="code" href="structnnfft__plan.html">nnfft_plan</a> *ths)</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> {</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> </div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> nfft_finalize(ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>);</div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> </div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f" title="plan for the nfft">direct_plan</a>);</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> </div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb" title="sigma*a*N">aN1</a>);</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7" title="cut-off-frequencies">N</a>);</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643" title="sigma*N">N1</a>);</div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> </div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> {</div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#aa0b2be91e59a45c809c68398ceb41232" title="only for thin B">psi_index_g</a>);</div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#a2ada74222958e630640e6456e9bd2a8d" title="only for thin B">psi_index_f</a>);</div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4" title="precomputed data, matrix B">psi</a>);</div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> }</div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> </div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4" title="precomputed data, matrix B">psi</a>);</div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> </div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4" title="precomputed data, matrix B">psi</a>);</div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> </div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#a9073b3c76f70f8b9caedac7f5574ce89" title="precomputed data, matrix D">c_phi_inv</a>);</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> </div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & MALLOC_F)</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>);</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> </div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & MALLOC_F_HAT)</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>);</div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> </div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & MALLOC_X)</div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>);</div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> </div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & MALLOC_V)</div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>);</div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nsfft_2simple__test_8c_source.html b/doc/api/html/nsfft_2simple__test_8c_source.html
deleted file mode 100644
index c62174c..0000000
--- a/doc/api/html/nsfft_2simple__test_8c_source.html
+++ /dev/null
@@ -1,130 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_390363ac6c75087990c53a11ba2c3b15.html">nsfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nsfft/simple_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">static</span> <span class="keywordtype">void</span> simple_test_nsfft(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> J, <span class="keywordtype">int</span> M)</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> {</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordtype">int</span> K=12;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <a class="code" href="structnsfft__plan.html">nsfft_plan</a> p;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> nsfft_init(&p, d, J, M, 6, NSDFT);</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> nsfft_init_random_nodes_coeffs(&p);</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, K, <span class="stringliteral">"frequencies, vector f_hat (first few entries)"</span [...]
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> nsfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, K, <span class="stringliteral">"nsdft, vector f (first few entries)"</span>);</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> nsfft_trafo(&p);</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, K, <span class="stringliteral">"nsfft, vector f (first few entries)"</span>);</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> nsfft_adjoint_direct(&p);</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, K, <span class="stringliteral">"adjoint nsdft, vector f_hat, (first few entries)"</s [...]
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> nsfft_adjoint(&p);</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, K, <span class="stringliteral">"adjoint nsfft, vector f_hat, (first few entries)"</s [...]
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> nsfft_finalize(&p);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> }</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> {</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordtype">int</span> d, J, M;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> system(<span class="stringliteral">"clear"</span>);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> printf(<span class="stringliteral">"1) computing a two dimensional nsdft, nsfft and adjoints\n\n"</span>);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> d=2;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> J=5;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> M=(J+4)*X(exp2i)(J+1);</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> simple_test_nsfft(d,J,M);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> getc(stdin);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> system(<span class="stringliteral">"clear"</span>);</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> printf(<span class="stringliteral">"2) computing a three dimensional nsdft, nsfft and adjoints\n\n"</span>);</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> d=3;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> J=5;</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> M=6*X(exp2i)(J)*(X(exp2i)((J+1)/2+1)-1)+X(exp2i)(3*(J/2+1));</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> simple_test_nsfft(d,J,M);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nsfft_8c_source.html b/doc/api/html/nsfft_8c_source.html
deleted file mode 100644
index 7be5a67..0000000
--- a/doc/api/html/nsfft_8c_source.html
+++ /dev/null
@@ -1,1944 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nsfft.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_a42734e8bce3bbae48210591d0fac63c.html">nsfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nsfft.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nsfft.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#define NSFTT_DISABLE_TEST</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment">/* computes a 2d ndft by 1d nfft along the dimension 1 times</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment"> 1d ndft along dimension 0</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment">*/</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">static</span> <span class="keywordtype">void</span> short_nfft_trafo_2d(<a class="code" href="structnfft__plan.html">nfft_plan</a>* ths, <a class="code" href="structnfft__plan.html">nfft_plan</a>* plan_1d)</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> {</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordtype">int</span> j,k0;</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordtype">double</span> omega;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> {</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= 0;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> plan_1d-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] = ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimensi [...]
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> }</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordflow">for</span>(k0=0;k0<ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];k0++) <span class="comment">/* for shorties */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> {</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> plan_1d-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> + k0*ths-><a class="code" href="structnfft_ [...]
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(plan_1d);</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> {</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> omega = ((double)(k0 - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2)) * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank [...]
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += plan_1d-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] * cexp( - I*2*<a class="code" href="group__nfftutil.html#ga598a3330b3 [...]
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> }</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> }</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> }</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keyword">static</span> <span class="keywordtype">void</span> short_nfft_adjoint_2d(<a class="code" href="structnfft__plan.html">nfft_plan</a>* ths, <a class="code" href="structnfft__plan.html">nfft_plan</a>* plan_1d)</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> {</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">int</span> j,k0;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordtype">double</span> omega;</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> plan_1d-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] = ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension [...]
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">for</span>(k0=0;k0<ths->N[0];k0++) <span class="comment">/* for shorties */</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> {</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> {</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> omega = ((double)(k0 - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2)) * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank [...]
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> plan_1d-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] * cexp( + _Complex_I*2*<a class="code" href="group__nfftutil.html#ga59 [...]
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> }</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> plan_1d-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> + k0*ths-><a class="code" href="structnfft_ [...]
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> nfft_adjoint(plan_1d);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> }</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="comment">/* computes a 3d ndft by 1d nfft along the dimension 2 times</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="comment"> 2d ndft along dimension 0,1</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="comment">*/</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keyword">static</span> <span class="keywordtype">void</span> short_nfft_trafo_3d_1(<a class="code" href="structnfft__plan.html">nfft_plan</a>* ths, <a class="code" href="structnfft__plan.html">nfft_plan</a>* plan_1d)</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">int</span> j,k0,k1;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordtype">double</span> omega;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> {</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = 0;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> plan_1d-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] = ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimensi [...]
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> }</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="keywordflow">for</span>(k0=0;k0<ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];k0++) <span class="comment">/* for shorties */</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">for</span>(k1=0;k1<ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];k1++)</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> {</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> plan_1d-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> + (k0*ths-><a class="code" href="structnfft__pl [...]
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(plan_1d);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> {</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> omega = ((double)(k0 - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2)) * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka ra [...]
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> + ((<span class="keywordtype">double</span>)(k1 - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]/2)) * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc [...]
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += plan_1d-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] * cexp( - I*2*<a class="code" href="group__nfftutil.html#ga598a3330 [...]
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> }</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> }</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> }</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keyword">static</span> <span class="keywordtype">void</span> short_nfft_adjoint_3d_1(<a class="code" href="structnfft__plan.html">nfft_plan</a>* ths, <a class="code" href="structnfft__plan.html">nfft_plan</a>* plan_1d)</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> {</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordtype">int</span> j,k0,k1;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">double</span> omega;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> </div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> plan_1d-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] = ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension [...]
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">for</span>(k0=0;k0<ths->N[0];k0++) <span class="comment">/* for shorties */</span></div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keywordflow">for</span>(k1=0;k1<ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];k1++)</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> {</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> {</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> omega = ((double)(k0 - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2)) * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka ra [...]
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> + ((<span class="keywordtype">double</span>)(k1 - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]/2)) * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc [...]
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> plan_1d-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] * cexp( + _Complex_I*2*<a class="code" href="group__nfftutil.html#ga [...]
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> }</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> plan_1d-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> + (k0*ths-><a class="code" href="structnfft__pl [...]
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> nfft_adjoint(plan_1d);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> }</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> }</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="comment">/* computes a 3d ndft by 2d nfft along the dimension 1,2 times</span></div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="comment"> 1d ndft along dimension 0</span></div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="comment">*/</span></div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keyword">static</span> <span class="keywordtype">void</span> short_nfft_trafo_3d_2(<a class="code" href="structnfft__plan.html">nfft_plan</a>* ths, <a class="code" href="structnfft__plan.html">nfft_plan</a>* plan_2d)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> {</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordtype">int</span> j,k0;</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordtype">double</span> omega;</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> {</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = 0;</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> plan_2d-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dim [...]
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> plan_2d-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dim [...]
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> }</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">for</span>(k0=0;k0<ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];k0++) <span class="comment">/* for shorties */</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> {</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> plan_2d-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> + k0*ths-><a class="code" href="structnfft_ [...]
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(plan_2d);</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> </div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> {</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> omega = ((double)(k0 - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2)) * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank [...]
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += plan_2d-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] * cexp( - I*2*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701 [...]
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> }</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> }</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> }</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keyword">static</span> <span class="keywordtype">void</span> short_nfft_adjoint_3d_2(<a class="code" href="structnfft__plan.html">nfft_plan</a>* ths, <a class="code" href="structnfft__plan.html">nfft_plan</a>* plan_2d)</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> {</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordtype">int</span> j,k0;</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keywordtype">double</span> omega;</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> {</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> plan_2d-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dim [...]
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> plan_2d-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dim [...]
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> }</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">for</span>(k0=0;k0<ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];k0++) <span class="comment">/* for shorties */</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> {</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> {</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> omega = ((double)(k0 - ths-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2)) * ths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[ths-><a class="code" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8" title="dimension aka rank [...]
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> plan_2d-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = ths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] * cexp( + _Complex_I*2*<a class="code" href="group__nfftutil.html#ga598a3330 [...]
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> }</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> plan_2d-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = ths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> + k0*ths-><a class="code" href="structnfft_ [...]
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> </div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> nfft_adjoint(plan_2d);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> }</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> }</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> </div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment">/*---------------------------------------------------------------------------*/</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="preprocessor">#ifdef GAUSSIAN</span></div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">int</span> index_sparse_to_full_direct_2d(<span class="keywordtype">int</span> J, <span class="keywordtype">int</span> k)</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> {</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <span class="keywordtype">int</span> N=X(exp2i)(J+2); <span class="comment">/* number of full coeffs */</span></div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordtype">int</span> N_B=X(exp2i)(J); <span class="comment">/* number in each sparse block */</span></div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> </div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordtype">int</span> j=k/N_B; <span class="comment">/* consecutive number of Block */</span></div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="keywordtype">int</span> r=j/4; <span class="comment">/* level of block */</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="keywordtype">int</span> i, o, a, b,s,l,m1,m2;</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordtype">int</span> k1,k2;</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> </div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">if</span> (k>=(J+4)*X(exp2i)(J+1))</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> {</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> printf(<span class="stringliteral">"Fehler!\n"</span>);</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> }</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> {</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="keywordflow">if</span> (r>(J+1)/2) <span class="comment">/* center block */</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> {</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> i=k-4*((J+1)/2+1)*N_B;</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> a=X(exp2i)(J/2+1);</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> m1=i/a;</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> m2=i%a;</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> k1=N/2-a/2+m1;</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> k2=N/2-a/2+m2;</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> }</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordflow">else</span> <span class="comment">/* no center block */</span></div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> {</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> i=k-j*N_B; <span class="comment">/* index in specific block */</span></div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> o=j%4; <span class="comment">/* kind of specific block */</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> a=X(exp2i)(r);</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> b=X(exp2i)(J-r);</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> l=<a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(a,b); <span class="comment">/* long dimension of block */</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> s=<a class="code" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308" title="Mimimum of its two arguments.">NFFT_MIN</a>(a,b); <span class="comment">/* short dimension of block */</span></div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> m1=i/l;</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> m2=i%l;</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> </div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="keywordflow">switch</span>(o)</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> {</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="keywordflow">case</span> 0:</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> {</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> k1=N/2-a/2 ;</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> k2=N/2+ b ;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="keywordflow">if</span> (b>=a)</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> {</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> k1+=m1;</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> k2+=m2;</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> }</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> {</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> k1+=m2;</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> k2+=m1;</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> }</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> }</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="keywordflow">case</span> 1:</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> {</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> k1=N/2+ b ;</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> k2=N/2-a/2 ;</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> </div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="keywordflow">if</span> (b>a)</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> {</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> k1+=m2;</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> k2+=m1;</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> }</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> {</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> k1+=m1;</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> k2+=m2;</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> }</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> }</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="keywordflow">case</span> 2:</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> {</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> k1=N/2-a/2 ;</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> k2=N/2-2*b ;</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> </div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="keywordflow">if</span> (b>=a)</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> {</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> k1+=m1;</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> k2+=m2;</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> }</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> {</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> k1+=m2;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> k2+=m1;</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> }</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> }</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> <span class="keywordflow">case</span> 3:</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> {</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> k1=N/2-2*b ;</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> k2=N/2-a/2 ;</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> </div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="keywordflow">if</span> (b>a)</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> {</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> k1+=m2;</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> k2+=m1;</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> }</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> {</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> k1+=m1;</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> k2+=m2;</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> }</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> }</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="keywordflow">default</span>:</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> {</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> k1=-1;</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> k2=-1;</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> }</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> }</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> }</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment">//printf("m1=%d, m2=%d\n",m1,m2);</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="keywordflow">return</span>(k1*N+k2);</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> }</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> }</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> index_sparse_to_full_2d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths, <span class="keywordtype">int</span> k)</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> {</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="comment">/* only by lookup table */</span></div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="keywordflow">if</span>( k < ths->N_total)</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="keywordflow">return</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k];</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> }</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> </div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="preprocessor">#ifndef NSFTT_DISABLE_TEST</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">int</span> index_full_to_sparse_2d(<span class="keywordtype">int</span> J, <span class="keywordtype">int</span> k)</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> {</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="keywordtype">int</span> N=X(exp2i)(J+2); <span class="comment">/* number of full coeffs */</span></div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> <span class="keywordtype">int</span> N_B=X(exp2i)(J); <span class="comment">/* number in each sparse block */</span></div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> </div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> <span class="keywordtype">int</span> k1=k/N-N/2; <span class="comment">/* coordinates in the full grid */</span></div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="keywordtype">int</span> k2=k%N-N/2; <span class="comment">/* k1: row, k2: column */</span></div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> </div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="keywordtype">int</span> r,a,b;</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> a=X(exp2i)(J/2+1);</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> </div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="keywordflow">if</span> ( (k1>=-(a/2)) && (k1<a/2) && (k2>=(-a/2)) && (k2<a/2) )</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> {</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="keywordflow">return</span>(4*((J+1)/2+1)*N_B+(k1+a/2)*a+(k2+a/2));</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> }</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> </div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="keywordflow">for</span> (r=0; r<=(J+1)/2; r++)</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> {</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> b=X(exp2i)(r);</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> a=X(exp2i)(J-r);</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="keywordflow">if</span> ( (k1>=-(b/2)) && (k1<(b+1)/2) && (k2>=a) && (k2<2*a) )</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> {</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="keywordflow">if</span> (a>=b)</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="keywordflow">return</span>((4*r+0)*N_B+(k1+b/2)*a+(k2-a));</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> <span class="keywordflow">return</span>((4*r+0)*N_B+(k2-a)*b+(k1+b/2));</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> }</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( (k1>=a) && (k1<2*a) && (k2>=-(b/2)) && (k2<(b+1)/2) )</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> {</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="keywordflow">if</span> (a>b)</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="keywordflow">return</span>((4*r+1)*N_B+(k2+b/2)*a+(k1-a));</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="keywordflow">return</span>((4*r+1)*N_B+(k1-a)*b+(k2+b/2));</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> }</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( (k1>=-(b/2)) && (k1<(b+1)/2) && (k2>=-2*a) && (k2<-a) )</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> {</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="keywordflow">if</span> (a>=b)</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <span class="keywordflow">return</span>((4*r+2)*N_B+(k1+b/2)*a+(k2+2*a));</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> <span class="keywordflow">return</span>((4*r+2)*N_B+(k2+2*a)*b+(k1+b/2));</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> }</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ( (k1>=-2*a) && (k1<-a) && (k2>=-(b/2)) && (k2<(b+1)/2) )</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> {</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="keywordflow">if</span> (a>b)</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <span class="keywordflow">return</span>((4*r+3)*N_B+(k2+b/2)*a+(k1+2*a));</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="keywordflow">return</span>((4*r+3)*N_B+(k1+2*a)*b+(k2+b/2));</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> }</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> }</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> </div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> }</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="preprocessor">#ifdef GAUSSIAN</span></div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> init_index_sparse_to_full_2d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> {</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> <span class="keywordtype">int</span> k_S;</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> </div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="keywordflow">for</span> (k_S=0; k_S<ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>; k_S++)</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_S]=index_sparse_to_full_direct_2d(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>, k_S);</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> }</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="preprocessor">#ifdef GAUSSIAN</span></div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> index_sparse_to_full_3d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths, <span class="keywordtype">int</span> k)</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> {</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="comment">/* only by lookup table */</span></div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <span class="keywordflow">if</span>( k < ths->N_total)</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="keywordflow">return</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k];</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> }</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="preprocessor">#ifndef NSFTT_DISABLE_TEST</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">int</span> index_full_to_sparse_3d(<span class="keywordtype">int</span> J, <span class="keywordtype">int</span> k)</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> {</div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> <span class="keywordtype">int</span> N=X(exp2i)(J+2); <span class="comment">/* length of the full grid */</span></div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> <span class="keywordtype">int</span> N_B_r; <span class="comment">/* size of a sparse block in level r */</span></div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="keywordtype">int</span> sum_N_B_less_r; <span class="comment">/* sum N_B_r */</span></div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> </div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> <span class="keywordtype">int</span> r,a,b;</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> </div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="keywordtype">int</span> k3=(k%N)-N/2; <span class="comment">/* coordinates in the full grid */</span></div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="keywordtype">int</span> k2=((k/N)%N)-N/2;</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <span class="keywordtype">int</span> k1=k/(N*N)-N/2;</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> </div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> a=X(exp2i)(J/2+1); <span class="comment">/* length of center block */</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> </div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <span class="keywordflow">if</span>((k1>=-(a/2)) && (k1<a/2) && (k2>=(-a/2)) && (k2<a/2) && (k3>=(-a/2)) &&</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> (k3<a/2))</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> {</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="keywordflow">return</span>(6*X(exp2i)(J)*(X(exp2i)((J+1)/2+1)-1)+((k1+a/2)*a+(k2+a/2))*a+</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> (k3+a/2));</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> }</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> </div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> sum_N_B_less_r=0;</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <span class="keywordflow">for</span> (r=0; r<=(J+1)/2; r++)</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> {</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> a=X(exp2i)(J-r);</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> b=X(exp2i)(r);</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> </div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> N_B_r=a*b*b;</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> </div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="comment">/* right - rear - top - left - front - bottom */</span></div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="keywordflow">if</span> ((k1>=a) && (k1<2*a) && (k2>=-(b/2)) && (k2<(b+1)/2) &&</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> (k3>=-(b/2)) && (k3<(b+1)/2)) <span class="comment">/* right */</span></div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> {</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*0 + ((k2+b/2)*b+k3+b/2)*a + (k1-a);</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*0 + ((k1-a)*b+(k2+b/2))*b + (k3+b/2);</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> }</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((k2>=a) && (k2<2*a) && (k1>=-(b/2)) && (k1<(b+1)/2) &&</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> (k3>=-(b/2)) && (k3<(b+1)/2)) <span class="comment">/* rear */</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> {</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*1 + ((k1+b/2)*b+k3+b/2)*a + (k2-a);</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (a==b)</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*1 + ((k1+b/2)*b+(k2-a))*a + (k3+b/2);</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*1 + ((k2-a)*b+(k1+b/2))*b + (k3+b/2);</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> }</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((k3>=a) && (k3<2*a) && (k1>=-(b/2)) && (k1<(b+1)/2) &&</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> (k2>=-(b/2)) && (k2<(b+1)/2)) <span class="comment">/* top */</span></div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> {</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="keywordflow">if</span>(a>=b)</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*2 + ((k1+b/2)*b+k2+b/2)*a + (k3-a);</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*2 + ((k3-a)*b+(k1+b/2))*b + (k2+b/2);</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> }</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> </div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((k1>=-2*a) && (k1<-a) && (k2>=-(b/2)) && (k2<(b+1)/2) &&</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> (k3>=-(b/2)) && (k3<(b+1)/2)) <span class="comment">/* left */</span></div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> {</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*3 + ((k2+b/2)*b+k3+b/2)*a + (k1+2*a);</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*3 + ((k1+2*a)*b+(k2+b/2))*b + (k3+b/2);</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> }</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((k2>=-2*a) && (k2<-a) && (k1>=-(b/2)) && (k1<(b+1)/2) &&</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> (k3>=-(b/2)) && (k3<(b+1)/2)) <span class="comment">/* front */</span></div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> {</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*4 + ((k1+b/2)*b+k3+b/2)*a + (k2+2*a);</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (a==b)</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*4 + ((k1+b/2)*b+(k2+2*a))*a + (k3+b/2);</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*4 + ((k2+2*a)*b+(k1+b/2))*b + (k3+b/2);</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> }</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> ((k3>=-2*a) && (k3<-a) && (k1>=-(b/2)) && (k1<(b+1)/2) &&</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> (k2>=-(b/2)) && (k2<(b+1)/2)) <span class="comment">/* bottom */</span></div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> {</div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="keywordflow">if</span>(a>=b)</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*5 + ((k1+b/2)*b+k2+b/2)*a + (k3+2*a);</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="keywordflow">return</span> sum_N_B_less_r+N_B_r*5 + ((k3+2*a)*b+(k1+b/2))*b + (k2+b/2);</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> }</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> </div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> sum_N_B_less_r+=6*N_B_r;</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> } <span class="comment">/* for(r) */</span></div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> </div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> }</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> <span class="preprocessor">#ifdef GAUSSIAN</span></div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> init_index_sparse_to_full_3d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> {</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="keywordtype">int</span> k1,k2,k3,k_s,r;</div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="keywordtype">int</span> a,b;</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="keywordtype">int</span> N=X(exp2i)(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>+2); <span class="comment">/* length of the full grid */</span></div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="keywordtype">int</span> Nc=ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]; <span class="comment">/* length of the center block */</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> </div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="keywordflow">for</span> (k_s=0, r=0; r<=(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>+1)/2; r++)</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> {</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> a=X(exp2i)(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>-r);</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> b=X(exp2i)(r);</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> </div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="comment">/* right - rear - top - left - front - bottom */</span></div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> </div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="comment">/* right */</span></div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> <span class="keywordflow">for</span>(k2=-b/2;k2<(b+1)/2;k2++)</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="keywordflow">for</span>(k3=-b/2;k3<(b+1)/2;k3++)</div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="keywordflow">for</span>(k1=a; k1<2*a; k1++,k_s++)</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="keywordflow">for</span>(k1=a; k1<2*a; k1++)</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="keywordflow">for</span>(k2=-b/2;k2<(b+1)/2;k2++)</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> <span class="keywordflow">for</span>(k3=-b/2;k3<(b+1)/2;k3++,k_s++)</div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> </div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="comment">/* rear */</span></div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> <span class="keywordflow">for</span>(k1=-b/2;k1<(b+1)/2;k1++)</div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="keywordflow">for</span>(k3=-b/2;k3<(b+1)/2;k3++)</div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="keywordflow">for</span>(k2=a; k2<2*a; k2++,k_s++)</div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span>(a==b)</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="keywordflow">for</span>(k1=-b/2;k1<(b+1)/2;k1++)</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="keywordflow">for</span>(k2=a; k2<2*a; k2++)</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> <span class="keywordflow">for</span>(k3=-b/2;k3<(b+1)/2;k3++,k_s++)</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="keywordflow">for</span>(k2=a; k2<2*a; k2++)</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="keywordflow">for</span>(k1=-b/2;k1<(b+1)/2;k1++)</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> <span class="keywordflow">for</span>(k3=-b/2;k3<(b+1)/2;k3++,k_s++)</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> </div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="comment">/* top */</span></div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="keywordflow">if</span>(a>=b)</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="keywordflow">for</span>(k1=-b/2;k1<(b+1)/2;k1++)</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="keywordflow">for</span>(k2=-b/2;k2<(b+1)/2;k2++)</div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> <span class="keywordflow">for</span>(k3=a; k3<2*a; k3++,k_s++)</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="keywordflow">for</span>(k3=a; k3<2*a; k3++)</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> <span class="keywordflow">for</span>(k1=-b/2;k1<(b+1)/2;k1++)</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="keywordflow">for</span>(k2=-b/2;k2<(b+1)/2;k2++,k_s++)</div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> </div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> <span class="comment">/* left */</span></div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> <span class="keywordflow">for</span>(k2=-b/2;k2<(b+1)/2;k2++)</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="keywordflow">for</span>(k3=-b/2;k3<(b+1)/2;k3++)</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> <span class="keywordflow">for</span>(k1=-2*a; k1<-a; k1++,k_s++)</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="keywordflow">for</span>(k1=-2*a; k1<-a; k1++)</div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="keywordflow">for</span>(k2=-b/2;k2<(b+1)/2;k2++)</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="keywordflow">for</span>(k3=-b/2;k3<(b+1)/2;k3++,k_s++)</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> </div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <span class="comment">/* front */</span></div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <span class="keywordflow">for</span>(k1=-b/2;k1<(b+1)/2;k1++)</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> <span class="keywordflow">for</span>(k3=-b/2;k3<(b+1)/2;k3++)</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="keywordflow">for</span>(k2=-2*a; k2<-a; k2++,k_s++)</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span>(a==b)</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="keywordflow">for</span>(k1=-b/2;k1<(b+1)/2;k1++)</div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="keywordflow">for</span>(k2=-2*a; k2<-a; k2++)</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> <span class="keywordflow">for</span>(k3=-b/2;k3<(b+1)/2;k3++,k_s++)</div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="keywordflow">for</span>(k2=-2*a; k2<-a; k2++)</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="keywordflow">for</span>(k1=-b/2;k1<(b+1)/2;k1++)</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="keywordflow">for</span>(k3=-b/2;k3<(b+1)/2;k3++,k_s++)</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> </div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="comment">/* top */</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <span class="keywordflow">if</span>(a>=b)</div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="keywordflow">for</span>(k1=-b/2;k1<(b+1)/2;k1++)</div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="keywordflow">for</span>(k2=-b/2;k2<(b+1)/2;k2++)</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="keywordflow">for</span>(k3=-2*a; k3<-a; k3++,k_s++)</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="keywordflow">for</span>(k3=-2*a; k3<-a; k3++)</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="keywordflow">for</span>(k1=-b/2;k1<(b+1)/2;k1++)</div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="keywordflow">for</span>(k2=-b/2;k2<(b+1)/2;k2++,k_s++)</div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> }</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> </div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="comment">/* center */</span></div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="keywordflow">for</span>(k1=-Nc/2;k1<Nc/2;k1++)</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="keywordflow">for</span>(k2=-Nc/2;k2<Nc/2;k2++)</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="keywordflow">for</span>(k3=-Nc/2; k3<Nc/2; k3++,k_s++)</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_s]=((k1+N/2)*N+k2+N/2)*N+k3+N/2;</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> }</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="comment">/* copies ths->f_hat to ths_plan->f_hat */</span></div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="keywordtype">void</span> nsfft_cp(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths, <a class="code" href="structnfft__plan.html">nfft_plan</a> *ths_full_plan)</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> {</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> </div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="comment">/* initialize f_hat with zero values */</span></div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> memset(ths_full_plan-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, 0, ths_full_plan-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordty [...]
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> </div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="comment">/* copy values at hyperbolic grid points */</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> <span class="keywordflow">for</span>(k=0;k<ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> ths_full_plan-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k]]=ths-><a class="code" href="structnsfft__plan.html#a [...]
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> </div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="comment">/* copy nodes */</span></div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> memcpy(ths_full_plan-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial d [...]
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> }</div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> </div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> <span class="preprocessor">#ifndef NSFTT_DISABLE_TEST</span></div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <span class="preprocessor"></span><span class="comment">/* test copy_sparse_to_full */</span></div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="keyword">static</span> <span class="keywordtype">void</span> test_copy_sparse_to_full_2d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths, <a class="code" href="structnfft__plan.html">nfft_plan</a> *ths_full_plan)</div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> {</div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> <span class="keywordtype">int</span> k1, k2;</div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="keywordtype">int</span> a,b;</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> <span class="keyword">const</span> <span class="keywordtype">int</span> J=ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>; <span class="comment">/* N=2^J */</span></div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N=ths_full_plan-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]; <span class="comment">/* size of full NFFT */</span></div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="keyword">const</span> <span class="keywordtype">int</span> N_B=X(exp2i)(J); <span class="comment">/* size of small blocks */</span></div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> </div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> <span class="comment">/* copy sparse plan to full plan */</span></div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> nsfft_cp(ths, ths_full_plan);</div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> </div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="comment">/* show blockwise f_hat */</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> printf(<span class="stringliteral">"f_hat blockwise\n"</span>);</div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <span class="keywordflow">for</span> (r=0; r<=(J+1)/2; r++){</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> a=X(exp2i)(J-r); b=X(exp2i)(r);</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> </div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> printf(<span class="stringliteral">"top\n"</span>);</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> <span class="keywordflow">for</span> (k1=0; k1<a; k1++){</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> <span class="keywordflow">for</span> (k2=0; k2<b; k2++){</div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> printf(<span class="stringliteral">"(%1.1f,%1.1f) "</span>, creal(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[(4*r+1)*N_B+ k1*b+k2]),</div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> cimag(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[(4*r+1)*N_B+ k1*b+k2]));</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> }</div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> }</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> </div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> printf(<span class="stringliteral">"bottom\n"</span>);</div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="keywordflow">for</span> (k1=0; k1<a; k1++){</div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> <span class="keywordflow">for</span> (k2=0; k2<b; k2++){</div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> printf(<span class="stringliteral">"(%1.1f,%1.1f) "</span>, creal(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[(4*r+3)*N_B+ k1*b+k2]),</div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> cimag(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[(4*r+3)*N_B+ k1*b+k2]));</div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> }</div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> }</div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> </div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> printf(<span class="stringliteral">"right\n"</span>);</div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="keywordflow">for</span> (k2=0; k2<b; k2++){</div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> <span class="keywordflow">for</span> (k1=0; k1<a; k1++){</div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> printf(<span class="stringliteral">"(%1.1f,%1.1f) "</span>, creal(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[(4*r+0)*N_B+ k2*a+k1]),</div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> cimag(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[(4*r+0)*N_B+ k2*a+k1]));</div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> }</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> }</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> </div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> printf(<span class="stringliteral">"left\n"</span>);</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="keywordflow">for</span> (k2=0; k2<b; k2++){</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> <span class="keywordflow">for</span> (k1=0; k1<a; k1++){</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> printf(<span class="stringliteral">"(%1.1f,%1.1f) "</span>, creal(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[(4*r+2)*N_B+ k2*a+k1]),</div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> cimag(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[(4*r+2)*N_B+ k2*a+k1]));</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> }</div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> }</div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> }</div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> </div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="keywordflow">return</span>;</div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="comment">/* show full f_hat */</span></div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> printf(<span class="stringliteral">"full f_hat\n"</span>);</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="keywordflow">for</span> (k1=0;k1<N;k1++){</div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> <span class="keywordflow">for</span> (k2=0;k2<N;k2++){</div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> printf(<span class="stringliteral">"(%1.1f,%1.1f) "</span>, creal(ths_full_plan-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k1*N+k2]),</div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> cimag(ths_full_plan-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k1*N+k2]));</div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> }</div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> }</div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> }</div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="preprocessor">#ifndef NSFTT_DISABLE_TEST</span></div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> test_sparse_to_full_2d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a>* ths)</div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> {</div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <span class="keywordtype">int</span> k_S,k1,k2;</div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> <span class="keywordtype">int</span> N=X(exp2i)(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>+2);</div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> </div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> printf(<span class="stringliteral">"N=%d\n\n"</span>,N);</div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> </div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="keywordflow">for</span>(k1=0;k1<N;k1++)</div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <span class="keywordflow">for</span>(k2=0;k2<N;k2++)</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> {</div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> k_S=index_full_to_sparse_2d(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>, k1*N+k2);</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="keywordflow">if</span>(k_S!=-1)</div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> printf(<span class="stringliteral">"(%+d, %+d)\t= %+d \t= %+d = %+d \n"</span>,k1-N/2,k2-N/2,</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> k1*N+k2, k_S, ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_S]);</div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> }</div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> }</div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> <span class="preprocessor">#ifndef NSFTT_DISABLE_TEST</span></div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> test_sparse_to_full_3d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a>* ths)</div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> {</div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> <span class="keywordtype">int</span> k_S,k1,k2,k3;</div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> <span class="keywordtype">int</span> N=X(exp2i)(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>+2);</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> </div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> printf(<span class="stringliteral">"N=%d\n\n"</span>,N);</div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> </div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> <span class="keywordflow">for</span>(k1=0;k1<N;k1++)</div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="keywordflow">for</span>(k2=0;k2<N;k2++)</div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="keywordflow">for</span>(k3=0;k3<N;k3++)</div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> {</div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> k_S=index_full_to_sparse_3d(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>, (k1*N+k2)*N+k3);</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> <span class="keywordflow">if</span>(k_S!=-1)</div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> printf(<span class="stringliteral">"(%d, %d, %d)\t= %d \t= %d = %d \n"</span>,k1-N/2,k2-N/2,k3-N/2,</div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> (k1*N+k2)*N+k3,k_S, ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_S]);</div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> }</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> }</div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> </div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> <span class="keywordtype">void</span> nsfft_init_random_nodes_coeffs(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> {</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> </div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> <span class="comment">/* init frequencies */</span></div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a421 [...]
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> </div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> <span class="comment">/* init nodes */</span></div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial [...]
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> </div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe" title="dimension, rank; d = 2, 3">d</a>==2)</div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> {</div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> ths-><a class="code" href="structnsfft__plan.html#aca6c9880cde07f3bc26dd7666c09a9d6" title="coordinate exchanged nodes, d = 2">x_transposed</a>[2*j+0]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, [...]
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> ths-><a class="code" href="structnsfft__plan.html#aca6c9880cde07f3bc26dd7666c09a9d6" title="coordinate exchanged nodes, d = 2">x_transposed</a>[2*j+1]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, [...]
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> }</div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> <span class="keywordflow">else</span> <span class="comment">/* this->d==3 */</span></div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> {</div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> ths->x_102[3*j+0]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1];</div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> ths->x_102[3*j+1]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0];</div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> ths->x_102[3*j+2]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2];</div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> </div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> ths->x_201[3*j+0]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2];</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> ths->x_201[3*j+1]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0];</div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> ths->x_201[3*j+2]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1];</div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> </div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> ths->x_120[3*j+0]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1];</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> ths->x_120[3*j+1]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2];</div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> ths->x_120[3*j+2]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0];</div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> </div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> ths-><a class="code" href="structnsfft__plan.html#aee5ad936bb790f00bf0797c94e185549" title="coordinate exchanged nodes, d=3">x_021</a>[3*j+0]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is [...]
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> ths-><a class="code" href="structnsfft__plan.html#aee5ad936bb790f00bf0797c94e185549" title="coordinate exchanged nodes, d=3">x_021</a>[3*j+1]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is [...]
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> ths-><a class="code" href="structnsfft__plan.html#aee5ad936bb790f00bf0797c94e185549" title="coordinate exchanged nodes, d=3">x_021</a>[3*j+2]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is [...]
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> }</div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> }</div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> </div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nsdft_trafo_2d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> {</div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="keywordtype">int</span> j,k_S,k_L,k0,k1;</div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> <span class="keywordtype">double</span> omega;</div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="keywordtype">int</span> N=X(exp2i)(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>+2);</div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> </div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> memset(ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,0,ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> </div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> <span class="keywordflow">for</span>(k_S=0;k_S<ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>;k_S++)</div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> {</div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> k_L=ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_S];</div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> k0=k_L / N;</div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> k1=k_L % N;</div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> </div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> {</div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> omega =</div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> ((double)(k0 - N/2)) * ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2 * j + 0] +</div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> ((<span class="keywordtype">double</span>)(k1 - N/2)) * ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2 * j + 1];</div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k_S] * cexp( - I*2*<a class="code" href="group__nfftutil. [...]
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> }</div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> }</div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> } <span class="comment">/* void nsdft_trafo_2d */</span></div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> </div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nsdft_trafo_3d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> {</div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> <span class="keywordtype">int</span> j,k_S,k0,k1,k2;</div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="keywordtype">double</span> omega;</div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> <span class="keywordtype">int</span> N=X(exp2i)(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>+2);</div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="keywordtype">int</span> k_L;</div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> </div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> memset(ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,0,ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> </div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> <span class="keywordflow">for</span>(k_S=0;k_S<ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>;k_S++)</div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> {</div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> k_L=ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_S];</div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> </div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> k0=k_L/(N*N);</div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> k1=(k_L/N)%N;</div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> k2=k_L%N;</div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> </div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> {</div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> omega =</div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> ((double)(k0 - N/2)) * ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3 * j + 0] +</div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> ((<span class="keywordtype">double</span>)(k1 - N/2)) * ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3 * j + 1] +</div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> ((double)(k2 - N/2)) * ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3 * j + 2];</div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k_S] * cexp( - I*2*<a class="code" href="group__nfftutil. [...]
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> }</div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> }</div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> } <span class="comment">/* void nsdft_trafo_3d */</span></div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> </div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> <span class="keywordtype">void</span> nsfft_trafo_direct(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> {</div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe" title="dimension, rank; d = 2, 3">d</a>==2)</div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> nsdft_trafo_2d(ths);</div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> nsdft_trafo_3d(ths);</div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> }</div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> </div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nsdft_adjoint_2d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> {</div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> <span class="keywordtype">int</span> j,k_S,k_L,k0,k1;</div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <span class="keywordtype">double</span> omega;</div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> <span class="keywordtype">int</span> N=X(exp2i)(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>+2);</div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> </div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> memset(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,0,ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _C [...]
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> </div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> <span class="keywordflow">for</span>(k_S=0;k_S<ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>;k_S++)</div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> {</div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> k_L=ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_S];</div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> k0=k_L / N;</div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> k1=k_L % N;</div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> </div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> {</div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> omega =</div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> ((double)(k0 - N/2)) * ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2 * j + 0] +</div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> ((<span class="keywordtype">double</span>)(k1 - N/2)) * ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2 * j + 1];</div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k_S] += ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] * cexp( + _Complex_I*2*<a class="code" href="group__ [...]
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> }</div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> }</div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> } <span class="comment">/* void nsdft_adjoint_2d */</span></div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> </div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nsdft_adjoint_3d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> {</div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> <span class="keywordtype">int</span> j,k_S,k0,k1,k2;</div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="keywordtype">double</span> omega;</div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> <span class="keywordtype">int</span> N=X(exp2i)(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>+2);</div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="keywordtype">int</span> k_L;</div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> </div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> memset(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,0,ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _C [...]
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> </div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> <span class="keywordflow">for</span>(k_S=0;k_S<ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>;k_S++)</div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> {</div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> k_L=ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>[k_S];</div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> </div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> k0=k_L/(N*N);</div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> k1=(k_L/N)%N;</div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> k2=k_L%N;</div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> </div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="keywordflow">for</span>(j=0;j<ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> {</div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> omega =</div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> ((double)(k0 - N/2)) * ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3 * j + 0] +</div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> ((<span class="keywordtype">double</span>)(k1 - N/2)) * ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3 * j + 1] +</div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> ((double)(k2 - N/2)) * ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3 * j + 2];</div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k_S] += ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] * cexp( + _Complex_I*2*<a class="code" href="group__ [...]
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> }</div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> }</div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> } <span class="comment">/* void nsdft_adjoint_3d */</span></div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> </div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> <span class="keywordtype">void</span> nsfft_adjoint_direct(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> {</div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe" title="dimension, rank; d = 2, 3">d</a>==2)</div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> nsdft_adjoint_2d(ths);</div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> nsdft_adjoint_3d(ths);</div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> }</div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> </div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nsfft_trafo_2d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> {</div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> <span class="keywordtype">int</span> r,rr,j;</div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> <span class="keywordtype">double</span> temp;</div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> </div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> <span class="keywordtype">int</span> M=ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> <span class="keywordtype">int</span> J=ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>;</div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> </div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> <span class="comment">/* center */</span></div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> </div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">cent [...]
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>);</div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>);</div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> </div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples [...]
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> </div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> <span class="keywordflow">for</span>(rr=0;rr<=(J+1)/2;rr++)</div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> {</div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> r=<a class="code" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308" title="Mimimum of its two arguments.">NFFT_MIN</a>(rr,J-rr);</div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan1 = ths->set_fftw_plan1[r];</div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]=X(exp2i)(r); ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class= [...]
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]=X(exp2i)(J-r); ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a clas [...]
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> </div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="comment">/*printf("%d x %d\n",ths->act_nfft_plan->N[0],ths->act_nfft_plan->N[1]);*/</span></div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> </div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> temp=-3.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*X(exp2i)(J-rr);</div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> </div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> <span class="comment">/* right */</span></div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> </div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> <span class="keywordflow">if</span>(r<rr)</div>
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> </div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> short_nfft_trafo_2d(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> </div>
-<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> <span class="keywordflow">if</span>(r<rr)</div>
-<div class="line"><a name="l00928"></a><span class="lineno"> 928</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l00929"></a><span class="lineno"> 929</span> </div>
-<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samp [...]
-<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> cexp( + _Complex_I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]);</div>
-<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> </div>
-<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> <span class="comment">/* top */</span></div>
-<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> </div>
-<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> <span class="keywordflow">if</span>((r==rr)&&(J-rr!=rr))</div>
-<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> </div>
-<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> short_nfft_trafo_2d(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> </div>
-<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> <span class="keywordflow">if</span>((r==rr)&&(J-rr!=rr))</div>
-<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> </div>
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of sampl [...]
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> cexp( + _Complex_I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0]);</div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> </div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> <span class="comment">/* left */</span></div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> </div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> <span class="keywordflow">if</span>(r<rr)</div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> </div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> short_nfft_trafo_2d(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> </div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> <span class="keywordflow">if</span>(r<rr)</div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> </div>
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of sampl [...]
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> cexp( - I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]);</div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> </div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="comment">/* bottom */</span></div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> </div>
-<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> <span class="keywordflow">if</span>((r==rr)&&(J-rr!=rr))</div>
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> </div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> short_nfft_trafo_2d(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> </div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="keywordflow">if</span>((r==rr)&&(J-rr!=rr))</div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> </div>
-<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of sampl [...]
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> cexp( - I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0]);</div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> } <span class="comment">/* for(rr) */</span></div>
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> } <span class="comment">/* void nsfft_trafo_2d */</span></div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> </div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nsfft_adjoint_2d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> {</div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> <span class="keywordtype">int</span> r,rr,j;</div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> <span class="keywordtype">double</span> temp;</div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> </div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> <span class="keywordtype">int</span> M=ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> <span class="keywordtype">int</span> J=ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>;</div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> </div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> <span class="comment">/* center */</span></div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> </div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> </div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">cent [...]
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>);</div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>);</div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> </div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> <span class="keywordflow">for</span>(rr=0;rr<=(J+1)/2;rr++)</div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> {</div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> r=<a class="code" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308" title="Mimimum of its two arguments.">NFFT_MIN</a>(rr,J-rr);</div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan2 = ths->set_fftw_plan2[r];</div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]=X(exp2i)(r); ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class= [...]
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]=X(exp2i)(J-r); ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a clas [...]
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span> </div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> <span class="comment">/*printf("%d x %d\n",ths->act_nfft_plan->N[0],ths->act_nfft_plan->N[1]);*/</span></div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> </div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span> temp=-3.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*X(exp2i)(J-rr);</div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> </div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> <span class="comment">/* right */</span></div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span> </div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> cexp( - I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]);</div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> </div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> <span class="keywordflow">if</span>(r<rr)</div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span> </div>
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span> short_nfft_adjoint_2d(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> </div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span> <span class="keywordflow">if</span>(r<rr)</div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span> </div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> <span class="comment">/* top */</span></div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> </div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> cexp( - I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0]);</div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> </div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> <span class="keywordflow">if</span>((r==rr)&&(J-rr!=rr))</div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> </div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span> short_nfft_adjoint_2d(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> </div>
-<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> <span class="keywordflow">if</span>((r==rr)&&(J-rr!=rr))</div>
-<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> </div>
-<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> <span class="comment">/* left */</span></div>
-<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> </div>
-<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> cexp( + _Complex_I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1]);</div>
-<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> </div>
-<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> <span class="keywordflow">if</span>(r<rr)</div>
-<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span> </div>
-<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> short_nfft_adjoint_2d(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> </div>
-<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> <span class="keywordflow">if</span>(r<rr)</div>
-<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> </div>
-<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> <span class="comment">/* bottom */</span></div>
-<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> </div>
-<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> cexp( + _Complex_I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0]);</div>
-<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> </div>
-<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> <span class="keywordflow">if</span>((r==rr)&&(J-rr!=rr))</div>
-<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> </div>
-<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> short_nfft_adjoint_2d(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span> </div>
-<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span> <span class="keywordflow">if</span>((r==rr)&&(J-rr!=rr))</div>
-<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span> } <span class="comment">/* for(rr) */</span></div>
-<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span> } <span class="comment">/* void nsfft_adjoint_2d */</span></div>
-<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span> </div>
-<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nsfft_trafo_3d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span> {</div>
-<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span> <span class="keywordtype">int</span> r,rr,j;</div>
-<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span> <span class="keywordtype">double</span> temp;</div>
-<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span> <span class="keywordtype">int</span> sum_N_B_less_r,N_B_r,a,b;</div>
-<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span> </div>
-<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span> <span class="keywordtype">int</span> M=ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span> <span class="keywordtype">int</span> J=ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>;</div>
-<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span> </div>
-<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span> <span class="comment">/* center */</span></div>
-<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span> </div>
-<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">cent [...]
-<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>);</div>
-<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>);</div>
-<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span> </div>
-<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples [...]
-<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span> </div>
-<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span> sum_N_B_less_r=0;</div>
-<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span> <span class="keywordflow">for</span>(rr=0;rr<=(J+1)/2;rr++)</div>
-<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span> {</div>
-<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span> a=X(exp2i)(J-rr);</div>
-<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span> b=X(exp2i)(rr);</div>
-<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span> </div>
-<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span> N_B_r=a*b*b;</div>
-<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span> </div>
-<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span> r=<a class="code" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308" title="Mimimum of its two arguments.">NFFT_MIN</a>(rr,J-rr);</div>
-<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan1 = ths->set_fftw_plan1[rr];</div>
-<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span> </div>
-<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]=X(exp2i)(r);</div>
-<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]=X(exp2i)(J-r);</div>
-<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]=X(exp2i)(r);</div>
-<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]=X(exp2i)(J-r);</div>
-<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span> </div>
-<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span> <span class="comment">/*printf("\n\n%d x %d x %d:\t",ths->act_nfft_plan->N[0],ths->act_nfft_plan->N[1],ths->act_nfft_plan->N[2]); fflush(stdout);*/</span></div>
-<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span> </div>
-<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-& [...]
-<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversamplin [...]
-<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[1]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversamplin [...]
-<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[2]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversamplin [...]
-<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" [...]
-<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span> </div>
-<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> <span class="comment">/* only for right - rear - top */</span></div>
-<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> <span class="keywordflow">if</span>((J==0)||((J==1)&&(rr==1)))</div>
-<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> temp=-2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>;</div>
-<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> temp=-3.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*X(exp2i)(J-rr);</div>
-<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span> </div>
-<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span> <span class="comment">/* right */</span></div>
-<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> </div>
-<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span> </div>
-<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> short_nfft_trafo_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> short_nfft_trafo_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> </div>
-<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> </div>
-<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of sampl [...]
-<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> cexp( + _Complex_I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0]);</div>
-<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> </div>
-<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> <span class="comment">/* rear */</span></div>
-<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01193"></a><span class="lineno"> 1193</span> </div>
-<div class="line"><a name="l01194"></a><span class="lineno"> 1194</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01195"></a><span class="lineno"> 1195</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01196"></a><span class="lineno"> 1196</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> </div>
-<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span> short_nfft_trafo_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> short_nfft_trafo_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span> </div>
-<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> </div>
-<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of sampl [...]
-<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span> cexp( + _Complex_I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]);</div>
-<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> </div>
-<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> <span class="comment">/* top */</span></div>
-<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span> </div>
-<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span> </div>
-<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span> short_nfft_trafo_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span> short_nfft_trafo_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span> </div>
-<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span> </div>
-<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of sampl [...]
-<div class="line"><a name="l01241"></a><span class="lineno"> 1241</span> cexp( + _Complex_I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]);</div>
-<div class="line"><a name="l01242"></a><span class="lineno"> 1242</span> </div>
-<div class="line"><a name="l01243"></a><span class="lineno"> 1243</span> <span class="comment">/* only for left - front - bottom */</span></div>
-<div class="line"><a name="l01244"></a><span class="lineno"> 1244</span> <span class="keywordflow">if</span>((J==0)||((J==1)&&(rr==1)))</div>
-<div class="line"><a name="l01245"></a><span class="lineno"> 1245</span> temp=-4.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>;</div>
-<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span> temp=-3.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*X(exp2i)(J-rr);</div>
-<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> </div>
-<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span> <span class="comment">/* left */</span></div>
-<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span> </div>
-<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span> </div>
-<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span> short_nfft_trafo_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01262"></a><span class="lineno"> 1262</span> short_nfft_trafo_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01263"></a><span class="lineno"> 1263</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01264"></a><span class="lineno"> 1264</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01265"></a><span class="lineno"> 1265</span> </div>
-<div class="line"><a name="l01266"></a><span class="lineno"> 1266</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> </div>
-<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of sampl [...]
-<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span> cexp( - I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0]);</div>
-<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span> </div>
-<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span> <span class="comment">/* front */</span></div>
-<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span> </div>
-<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01278"></a><span class="lineno"> 1278</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01279"></a><span class="lineno"> 1279</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01280"></a><span class="lineno"> 1280</span> </div>
-<div class="line"><a name="l01281"></a><span class="lineno"> 1281</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01282"></a><span class="lineno"> 1282</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span> short_nfft_trafo_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span> short_nfft_trafo_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span> </div>
-<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01296"></a><span class="lineno"> 1296</span> </div>
-<div class="line"><a name="l01297"></a><span class="lineno"> 1297</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01298"></a><span class="lineno"> 1298</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of sampl [...]
-<div class="line"><a name="l01299"></a><span class="lineno"> 1299</span> cexp( - I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]);</div>
-<div class="line"><a name="l01300"></a><span class="lineno"> 1300</span> </div>
-<div class="line"><a name="l01301"></a><span class="lineno"> 1301</span> <span class="comment">/* bottom */</span></div>
-<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span> </div>
-<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> </div>
-<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span> nfft_trafo_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span> short_nfft_trafo_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span> short_nfft_trafo_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span> </div>
-<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span> </div>
-<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] += ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of sampl [...]
-<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span> cexp( - I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]);</div>
-<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span> </div>
-<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span> sum_N_B_less_r+=6*N_B_r;</div>
-<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span> } <span class="comment">/* for(rr) */</span></div>
-<div class="line"><a name="l01327"></a><span class="lineno"> 1327</span> } <span class="comment">/* void nsfft_trafo_3d */</span></div>
-<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> </div>
-<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nsfft_adjoint_3d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span> {</div>
-<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> <span class="keywordtype">int</span> r,rr,j;</div>
-<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> <span class="keywordtype">double</span> temp;</div>
-<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span> <span class="keywordtype">int</span> sum_N_B_less_r,N_B_r,a,b;</div>
-<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span> </div>
-<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span> <span class="keywordtype">int</span> M=ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>;</div>
-<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span> <span class="keywordtype">int</span> J=ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>;</div>
-<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span> </div>
-<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span> <span class="comment">/* center */</span></div>
-<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j] = ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span> </div>
-<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span> </div>
-<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span> <span class="keywordflow">if</span> (ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">cent [...]
-<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>);</div>
-<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>);</div>
-<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span> </div>
-<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span> sum_N_B_less_r=0;</div>
-<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span> <span class="keywordflow">for</span>(rr=0;rr<=(J+1)/2;rr++)</div>
-<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span> {</div>
-<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> a=X(exp2i)(J-rr);</div>
-<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span> b=X(exp2i)(rr);</div>
-<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span> </div>
-<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> N_B_r=a*b*b;</div>
-<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span> </div>
-<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span> r=<a class="code" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308" title="Mimimum of its two arguments.">NFFT_MIN</a>(rr,J-rr);</div>
-<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan1 = ths->set_fftw_plan1[rr];</div>
-<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan2 = ths->set_fftw_plan2[rr];</div>
-<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span> </div>
-<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]=X(exp2i)(r);</div>
-<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]=X(exp2i)(J-r);</div>
-<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]=X(exp2i)(r);</div>
-<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]=X(exp2i)(J-r);</div>
-<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span> </div>
-<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span> <span class="comment">/*printf("\n\n%d x %d x %d:\t",ths->act_nfft_plan->N[0],ths->act_nfft_plan->N[1],ths->act_nfft_plan->N[2]); fflush(stdout);*/</span></div>
-<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span> </div>
-<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-& [...]
-<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversamplin [...]
-<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[1]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversamplin [...]
-<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[2]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversamplin [...]
-<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" [...]
-<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span> </div>
-<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span> <span class="comment">/* only for right - rear - top */</span></div>
-<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span> <span class="keywordflow">if</span>((J==0)||((J==1)&&(rr==1)))</div>
-<div class="line"><a name="l01378"></a><span class="lineno"> 1378</span> temp=-2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>;</div>
-<div class="line"><a name="l01379"></a><span class="lineno"> 1379</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01380"></a><span class="lineno"> 1380</span> temp=-3.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*X(exp2i)(J-rr);</div>
-<div class="line"><a name="l01381"></a><span class="lineno"> 1381</span> </div>
-<div class="line"><a name="l01382"></a><span class="lineno"> 1382</span> <span class="comment">/* right */</span></div>
-<div class="line"><a name="l01383"></a><span class="lineno"> 1383</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span> </div>
-<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span> cexp( - I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0]);</div>
-<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span> </div>
-<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span> </div>
-<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span> short_nfft_adjoint_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span> short_nfft_adjoint_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span> </div>
-<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span> </div>
-<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span> <span class="comment">/* rear */</span></div>
-<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span> </div>
-<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span> cexp( - I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]);</div>
-<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span> </div>
-<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span> </div>
-<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span> short_nfft_adjoint_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span> short_nfft_adjoint_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span> </div>
-<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span> </div>
-<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span> <span class="comment">/* top */</span></div>
-<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span> </div>
-<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span> cexp( - I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]);</div>
-<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span> </div>
-<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span> </div>
-<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span> short_nfft_adjoint_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span> short_nfft_adjoint_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span> </div>
-<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span> </div>
-<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span> <span class="comment">/* only for left - front - bottom */</span></div>
-<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span> <span class="keywordflow">if</span>((J==0)||((J==1)&&(rr==1)))</div>
-<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span> temp=-4.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>;</div>
-<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span> temp=-3.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*X(exp2i)(J-rr);</div>
-<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span> </div>
-<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span> <span class="comment">/* left */</span></div>
-<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span> </div>
-<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span> cexp( + _Complex_I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0]);</div>
-<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span> </div>
-<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span> </div>
-<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span> short_nfft_adjoint_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span> short_nfft_adjoint_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span> </div>
-<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span> </div>
-<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span> <span class="comment">/* front */</span></div>
-<div class="line"><a name="l01489"></a><span class="lineno"> 1489</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01490"></a><span class="lineno"> 1490</span> </div>
-<div class="line"><a name="l01491"></a><span class="lineno"> 1491</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01492"></a><span class="lineno"> 1492</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01493"></a><span class="lineno"> 1493</span> cexp( + _Complex_I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1]);</div>
-<div class="line"><a name="l01494"></a><span class="lineno"> 1494</span> </div>
-<div class="line"><a name="l01495"></a><span class="lineno"> 1495</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01496"></a><span class="lineno"> 1496</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01497"></a><span class="lineno"> 1497</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01498"></a><span class="lineno"> 1498</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01499"></a><span class="lineno"> 1499</span> </div>
-<div class="line"><a name="l01500"></a><span class="lineno"> 1500</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01501"></a><span class="lineno"> 1501</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01502"></a><span class="lineno"> 1502</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01503"></a><span class="lineno"> 1503</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01504"></a><span class="lineno"> 1504</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01505"></a><span class="lineno"> 1505</span> short_nfft_adjoint_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01506"></a><span class="lineno"> 1506</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01507"></a><span class="lineno"> 1507</span> short_nfft_adjoint_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01508"></a><span class="lineno"> 1508</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01509"></a><span class="lineno"> 1509</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01510"></a><span class="lineno"> 1510</span> </div>
-<div class="line"><a name="l01511"></a><span class="lineno"> 1511</span> <span class="keywordflow">if</span>(a>b)</div>
-<div class="line"><a name="l01512"></a><span class="lineno"> 1512</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01513"></a><span class="lineno"> 1513</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01514"></a><span class="lineno"> 1514</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01515"></a><span class="lineno"> 1515</span> </div>
-<div class="line"><a name="l01516"></a><span class="lineno"> 1516</span> <span class="comment">/* bottom */</span></div>
-<div class="line"><a name="l01517"></a><span class="lineno"> 1517</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector [...]
-<div class="line"><a name="l01518"></a><span class="lineno"> 1518</span> </div>
-<div class="line"><a name="l01519"></a><span class="lineno"> 1519</span> <span class="keywordflow">for</span> (j=0; j<M; j++)</div>
-<div class="line"><a name="l01520"></a><span class="lineno"> 1520</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j]= ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples [...]
-<div class="line"><a name="l01521"></a><span class="lineno"> 1521</span> cexp( + _Complex_I*temp*ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]);</div>
-<div class="line"><a name="l01522"></a><span class="lineno"> 1522</span> </div>
-<div class="line"><a name="l01523"></a><span class="lineno"> 1523</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01524"></a><span class="lineno"> 1524</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01525"></a><span class="lineno"> 1525</span> </div>
-<div class="line"><a name="l01526"></a><span class="lineno"> 1526</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_ [...]
-<div class="line"><a name="l01527"></a><span class="lineno"> 1527</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft [...]
-<div class="line"><a name="l01528"></a><span class="lineno"> 1528</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[2]<=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nf [...]
-<div class="line"><a name="l01529"></a><span class="lineno"> 1529</span> nfft_adjoint_direct(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01530"></a><span class="lineno"> 1530</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01531"></a><span class="lineno"> 1531</span> short_nfft_adjoint_3d_1(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01532"></a><span class="lineno"> 1532</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01533"></a><span class="lineno"> 1533</span> short_nfft_adjoint_3d_2(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01534"></a><span class="lineno"> 1534</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01535"></a><span class="lineno"> 1535</span> nfft_adjoint(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01536"></a><span class="lineno"> 1536</span> </div>
-<div class="line"><a name="l01537"></a><span class="lineno"> 1537</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01538"></a><span class="lineno"> 1538</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,t [...]
-<div class="line"><a name="l01539"></a><span class="lineno"> 1539</span> </div>
-<div class="line"><a name="l01540"></a><span class="lineno"> 1540</span> sum_N_B_less_r+=6*N_B_r;</div>
-<div class="line"><a name="l01541"></a><span class="lineno"> 1541</span> } <span class="comment">/* for(rr) */</span></div>
-<div class="line"><a name="l01542"></a><span class="lineno"> 1542</span> } <span class="comment">/* void nsfft_adjoint_3d */</span></div>
-<div class="line"><a name="l01543"></a><span class="lineno"> 1543</span> </div>
-<div class="line"><a name="l01544"></a><span class="lineno"> 1544</span> <span class="keywordtype">void</span> nsfft_trafo(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l01545"></a><span class="lineno"> 1545</span> {</div>
-<div class="line"><a name="l01546"></a><span class="lineno"> 1546</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe" title="dimension, rank; d = 2, 3">d</a>==2)</div>
-<div class="line"><a name="l01547"></a><span class="lineno"> 1547</span> nsfft_trafo_2d(ths);</div>
-<div class="line"><a name="l01548"></a><span class="lineno"> 1548</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01549"></a><span class="lineno"> 1549</span> nsfft_trafo_3d(ths);</div>
-<div class="line"><a name="l01550"></a><span class="lineno"> 1550</span> }</div>
-<div class="line"><a name="l01551"></a><span class="lineno"> 1551</span> </div>
-<div class="line"><a name="l01552"></a><span class="lineno"> 1552</span> <span class="keywordtype">void</span> nsfft_adjoint(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l01553"></a><span class="lineno"> 1553</span> {</div>
-<div class="line"><a name="l01554"></a><span class="lineno"> 1554</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe" title="dimension, rank; d = 2, 3">d</a>==2)</div>
-<div class="line"><a name="l01555"></a><span class="lineno"> 1555</span> nsfft_adjoint_2d(ths);</div>
-<div class="line"><a name="l01556"></a><span class="lineno"> 1556</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01557"></a><span class="lineno"> 1557</span> nsfft_adjoint_3d(ths);</div>
-<div class="line"><a name="l01558"></a><span class="lineno"> 1558</span> }</div>
-<div class="line"><a name="l01559"></a><span class="lineno"> 1559</span> </div>
-<div class="line"><a name="l01560"></a><span class="lineno"> 1560</span> </div>
-<div class="line"><a name="l01561"></a><span class="lineno"> 1561</span> <span class="comment">/*========================================================*/</span></div>
-<div class="line"><a name="l01562"></a><span class="lineno"> 1562</span> <span class="comment">/* J >1, no precomputation at all!! */</span></div>
-<div class="line"><a name="l01563"></a><span class="lineno"> 1563</span> <span class="preprocessor">#ifdef GAUSSIAN</span></div>
-<div class="line"><a name="l01564"></a><span class="lineno"> 1564</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> nsfft_init_2d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths, <span class="keywordtype">int</span> J, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> snfft_flags)</div>
-<div class="line"><a name="l01565"></a><span class="lineno"> 1565</span> {</div>
-<div class="line"><a name="l01566"></a><span class="lineno"> 1566</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l01567"></a><span class="lineno"> 1567</span> <span class="keywordtype">int</span> N[2];</div>
-<div class="line"><a name="l01568"></a><span class="lineno"> 1568</span> <span class="keywordtype">int</span> n[2];</div>
-<div class="line"><a name="l01569"></a><span class="lineno"> 1569</span> </div>
-<div class="line"><a name="l01570"></a><span class="lineno"> 1570</span> ths-><a class="code" href="structnsfft__plan.html#a5fcea2cbb16bfdfc4a5a3f5142db3281" title="flags for precomputation, malloc">flags</a>=snfft_flags;</div>
-<div class="line"><a name="l01571"></a><span class="lineno"> 1571</span> ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>=2;</div>
-<div class="line"><a name="l01572"></a><span class="lineno"> 1572</span> ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>=J;</div>
-<div class="line"><a name="l01573"></a><span class="lineno"> 1573</span> ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>=M;</div>
-<div class="line"><a name="l01574"></a><span class="lineno"> 1574</span> ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>=(J+4)*X(exp2i)(J+1);</div>
-<div class="line"><a name="l01575"></a><span class="lineno"> 1575</span> </div>
-<div class="line"><a name="l01576"></a><span class="lineno"> 1576</span> <span class="comment">/* memory allocation */</span></div>
-<div class="line"><a name="l01577"></a><span class="lineno"> 1577</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01578"></a><span class="lineno"> 1578</span> ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" titl [...]
-<div class="line"><a name="l01579"></a><span class="lineno"> 1579</span> ths-><a class="code" href="structnsfft__plan.html#aca6c9880cde07f3bc26dd7666c09a9d6" title="coordinate exchanged nodes, d = 2">x_transposed</a>= (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l01580"></a><span class="lineno"> 1580</span> </div>
-<div class="line"><a name="l01581"></a><span class="lineno"> 1581</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a> = (<a class="code" href="structnfft__plan.html">nfft_plan</a>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<a class="code" href="structnfft__plan.html">nfft_plan</a>));</div>
-<div class="line"><a name="l01582"></a><span class="lineno"> 1582</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a> = (<a class="code" href="structnfft__plan.html">nfft_plan</a>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<a class="code" href="structnfft__plan.html">nfft_plan</a>));</div>
-<div class="line"><a name="l01583"></a><span class="lineno"> 1583</span> </div>
-<div class="line"><a name="l01584"></a><span class="lineno"> 1584</span> ths->set_fftw_plan1=(fftw_plan*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((J/2+1)*<span class="keyword">sizeof</span>(fftw_plan));</div>
-<div class="line"><a name="l01585"></a><span class="lineno"> 1585</span> ths->set_fftw_plan2=(fftw_plan*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((J/2+1)*<span class="keyword">sizeof</span>(fftw_plan));</div>
-<div class="line"><a name="l01586"></a><span class="lineno"> 1586</span> </div>
-<div class="line"><a name="l01587"></a><span class="lineno"> 1587</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a> = (<a class="code" href="structnfft__plan.html">nfft_plan</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((X(log2i)(m)+1)*(<span class="keyword">sizeof</span>(<a class="code" href="structnfft__plan.html">nfft_plan</a>)));</div>
-<div class="line"><a name="l01588"></a><span class="lineno"> 1588</span> </div>
-<div class="line"><a name="l01589"></a><span class="lineno"> 1589</span> <span class="comment">/* planning the small nffts */</span></div>
-<div class="line"><a name="l01590"></a><span class="lineno"> 1590</span> <span class="comment">/* r=0 */</span></div>
-<div class="line"><a name="l01591"></a><span class="lineno"> 1591</span> N[0]=1; n[0]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[0];</div>
-<div class="line"><a name="l01592"></a><span class="lineno"> 1592</span> N[1]=X(exp2i)(J); n[1]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[1];</div>
-<div class="line"><a name="l01593"></a><span class="lineno"> 1593</span> </div>
-<div class="line"><a name="l01594"></a><span class="lineno"> 1594</span> nfft_init_guru(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,2,N,M,n,m, FG_PSI| MALLOC_X| MALLOC_F| FFTW_INIT, FFTW_MEASURE);</div>
-<div class="line"><a name="l01595"></a><span class="lineno"> 1595</span> </div>
-<div class="line"><a name="l01596"></a><span class="lineno"> 1596</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l01597"></a><span class="lineno"> 1597</span> nfft_precompute_one_psi(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01598"></a><span class="lineno"> 1598</span> </div>
-<div class="line"><a name="l01599"></a><span class="lineno"> 1599</span> ths->set_fftw_plan1[0]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan1;</div>
-<div class="line"><a name="l01600"></a><span class="lineno"> 1600</span> ths->set_fftw_plan2[0]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan2;</div>
-<div class="line"><a name="l01601"></a><span class="lineno"> 1601</span> </div>
-<div class="line"><a name="l01602"></a><span class="lineno"> 1602</span> <span class="keywordflow">for</span>(r=1;r<=J/2;r++)</div>
-<div class="line"><a name="l01603"></a><span class="lineno"> 1603</span> {</div>
-<div class="line"><a name="l01604"></a><span class="lineno"> 1604</span> N[0]=X(exp2i)(r); n[0]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[0];</div>
-<div class="line"><a name="l01605"></a><span class="lineno"> 1605</span> N[1]=X(exp2i)(J-r); n[1]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[1];</div>
-<div class="line"><a name="l01606"></a><span class="lineno"> 1606</span> ths->set_fftw_plan1[r] =</div>
-<div class="line"><a name="l01607"></a><span class="lineno"> 1607</span> fftw_plan_dft(2, n, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class [...]
-<div class="line"><a name="l01608"></a><span class="lineno"> 1608</span> FFTW_FORWARD, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805" title="Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT.">fftw_flags</a>);</div>
-<div class="line"><a name="l01609"></a><span class="lineno"> 1609</span> </div>
-<div class="line"><a name="l01610"></a><span class="lineno"> 1610</span> ths->set_fftw_plan2[r] =</div>
-<div class="line"><a name="l01611"></a><span class="lineno"> 1611</span> fftw_plan_dft(2, n, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a clas [...]
-<div class="line"><a name="l01612"></a><span class="lineno"> 1612</span> FFTW_BACKWARD, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805" title="Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT.">fftw_flags</a>);</div>
-<div class="line"><a name="l01613"></a><span class="lineno"> 1613</span> }</div>
-<div class="line"><a name="l01614"></a><span class="lineno"> 1614</span> </div>
-<div class="line"><a name="l01615"></a><span class="lineno"> 1615</span> <span class="comment">/* planning the 1d nffts */</span></div>
-<div class="line"><a name="l01616"></a><span class="lineno"> 1616</span> <span class="keywordflow">for</span>(r=0;r<=X(log2i)(m);r++)</div>
-<div class="line"><a name="l01617"></a><span class="lineno"> 1617</span> {</div>
-<div class="line"><a name="l01618"></a><span class="lineno"> 1618</span> N[0]=X(exp2i)(J-r); n[0]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[0]; <span class="comment">/* ==N[1] of the 2 dimensional plan */</span></div>
-<div class="line"><a name="l01619"></a><span class="lineno"> 1619</span> </div>
-<div class="line"><a name="l01620"></a><span class="lineno"> 1620</span> nfft_init_guru(&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]),1,N,M,n,m, MALLOC_X| MALLOC_F| FFTW_INIT, FFTW_MEASURE);</div>
-<div class="line"><a name="l01621"></a><span class="lineno"> 1621</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r].<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = ths-><a class="code" href="structnsfft__plan.html [...]
-<div class="line"><a name="l01622"></a><span class="lineno"> 1622</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r].<a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="curr [...]
-<div class="line"><a name="l01623"></a><span class="lineno"> 1623</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r].<a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f [...]
-<div class="line"><a name="l01624"></a><span class="lineno"> 1624</span> }</div>
-<div class="line"><a name="l01625"></a><span class="lineno"> 1625</span> </div>
-<div class="line"><a name="l01626"></a><span class="lineno"> 1626</span> <span class="comment">/* center plan */</span></div>
-<div class="line"><a name="l01627"></a><span class="lineno"> 1627</span> <span class="comment">/* J/2 == floor(((double)J) / 2.0) */</span></div>
-<div class="line"><a name="l01628"></a><span class="lineno"> 1628</span> N[0]=X(exp2i)(J/2+1); n[0]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[0];</div>
-<div class="line"><a name="l01629"></a><span class="lineno"> 1629</span> N[1]=X(exp2i)(J/2+1); n[1]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[1];</div>
-<div class="line"><a name="l01630"></a><span class="lineno"> 1630</span> nfft_init_guru(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>,2,N,M,n, m, MALLOC_F| FFTW_INIT,</div>
-<div class="line"><a name="l01631"></a><span class="lineno"> 1631</span> FFTW_MEASURE);</div>
-<div class="line"><a name="l01632"></a><span class="lineno"> 1632</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>= ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</ [...]
-<div class="line"><a name="l01633"></a><span class="lineno"> 1633</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8 [...]
-<div class="line"><a name="l01634"></a><span class="lineno"> 1634</span> FG_PSI;</div>
-<div class="line"><a name="l01635"></a><span class="lineno"> 1635</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft bl [...]
-<div class="line"><a name="l01636"></a><span class="lineno"> 1636</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="cu [...]
-<div class="line"><a name="l01637"></a><span class="lineno"> 1637</span> </div>
-<div class="line"><a name="l01638"></a><span class="lineno"> 1638</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a5fcea2cbb16bfdfc4a5a3f5142db3281" title="flags for precomputation, malloc">flags</a> & NSDFT)</div>
-<div class="line"><a name="l01639"></a><span class="lineno"> 1639</span> {</div>
-<div class="line"><a name="l01640"></a><span class="lineno"> 1640</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>=(<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier [...]
-<div class="line"><a name="l01641"></a><span class="lineno"> 1641</span> init_index_sparse_to_full_2d(ths);</div>
-<div class="line"><a name="l01642"></a><span class="lineno"> 1642</span> }</div>
-<div class="line"><a name="l01643"></a><span class="lineno"> 1643</span> }</div>
-<div class="line"><a name="l01644"></a><span class="lineno"> 1644</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01645"></a><span class="lineno"> 1645</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01646"></a><span class="lineno"> 1646</span> <span class="comment">/*========================================================*/</span></div>
-<div class="line"><a name="l01647"></a><span class="lineno"> 1647</span> <span class="comment">/* J >1, no precomputation at all!! */</span></div>
-<div class="line"><a name="l01648"></a><span class="lineno"> 1648</span> <span class="preprocessor">#ifdef GAUSSIAN</span></div>
-<div class="line"><a name="l01649"></a><span class="lineno"> 1649</span> <span class="preprocessor"></span><span class="keyword">static</span> <span class="keywordtype">void</span> nsfft_init_3d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths, <span class="keywordtype">int</span> J, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> snfft_flags)</div>
-<div class="line"><a name="l01650"></a><span class="lineno"> 1650</span> {</div>
-<div class="line"><a name="l01651"></a><span class="lineno"> 1651</span> <span class="keywordtype">int</span> r,rr,a,b;</div>
-<div class="line"><a name="l01652"></a><span class="lineno"> 1652</span> <span class="keywordtype">int</span> N[3];</div>
-<div class="line"><a name="l01653"></a><span class="lineno"> 1653</span> <span class="keywordtype">int</span> n[3];</div>
-<div class="line"><a name="l01654"></a><span class="lineno"> 1654</span> </div>
-<div class="line"><a name="l01655"></a><span class="lineno"> 1655</span> ths-><a class="code" href="structnsfft__plan.html#a5fcea2cbb16bfdfc4a5a3f5142db3281" title="flags for precomputation, malloc">flags</a>=snfft_flags;</div>
-<div class="line"><a name="l01656"></a><span class="lineno"> 1656</span> ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>=2;</div>
-<div class="line"><a name="l01657"></a><span class="lineno"> 1657</span> ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>=J;</div>
-<div class="line"><a name="l01658"></a><span class="lineno"> 1658</span> ths-><a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>=M;</div>
-<div class="line"><a name="l01659"></a><span class="lineno"> 1659</span> ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>=6*X(exp2i)(J)*(X(exp2i)((J+1)/2+1)-1)+X(exp2i)(3*(J/2+1));</div>
-<div class="line"><a name="l01660"></a><span class="lineno"> 1660</span> </div>
-<div class="line"><a name="l01661"></a><span class="lineno"> 1661</span> <span class="comment">/* memory allocation */</span></div>
-<div class="line"><a name="l01662"></a><span class="lineno"> 1662</span> ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l01663"></a><span class="lineno"> 1663</span> ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = (<span class="keywordtype">double</span> _Complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" titl [...]
-<div class="line"><a name="l01664"></a><span class="lineno"> 1664</span> </div>
-<div class="line"><a name="l01665"></a><span class="lineno"> 1665</span> ths->x_102= (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(3*M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l01666"></a><span class="lineno"> 1666</span> ths->x_201= (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(3*M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l01667"></a><span class="lineno"> 1667</span> ths->x_120= (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(3*M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l01668"></a><span class="lineno"> 1668</span> ths-><a class="code" href="structnsfft__plan.html#aee5ad936bb790f00bf0797c94e185549" title="coordinate exchanged nodes, d=3">x_021</a>= (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(3*M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l01669"></a><span class="lineno"> 1669</span> </div>
-<div class="line"><a name="l01670"></a><span class="lineno"> 1670</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a> = (<a class="code" href="structnfft__plan.html">nfft_plan</a>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<a class="code" href="structnfft__plan.html">nfft_plan</a>));</div>
-<div class="line"><a name="l01671"></a><span class="lineno"> 1671</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a> = (<a class="code" href="structnfft__plan.html">nfft_plan</a>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(<a class="code" href="structnfft__plan.html">nfft_plan</a>));</div>
-<div class="line"><a name="l01672"></a><span class="lineno"> 1672</span> </div>
-<div class="line"><a name="l01673"></a><span class="lineno"> 1673</span> ths->set_fftw_plan1=(fftw_plan*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(((J+1)/2+1)*<span class="keyword">sizeof</span>(fftw_plan));</div>
-<div class="line"><a name="l01674"></a><span class="lineno"> 1674</span> ths->set_fftw_plan2=(fftw_plan*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(((J+1)/2+1)*<span class="keyword">sizeof</span>(fftw_plan));</div>
-<div class="line"><a name="l01675"></a><span class="lineno"> 1675</span> </div>
-<div class="line"><a name="l01676"></a><span class="lineno"> 1676</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a> = (<a class="code" href="structnfft__plan.html">nfft_plan</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((X(log2i)(m)+1)*(<span class="keyword">sizeof</span>(<a class="code" href="structnfft__plan.html">nfft_plan</a>)));</div>
-<div class="line"><a name="l01677"></a><span class="lineno"> 1677</span> ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a> = (<a class="code" href="structnfft__plan.html">nfft_plan</a>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((X(log2i)(m)+1)*(<span class="keyword">sizeof</span>(<a class="code" href="structnfft__plan.html">nfft_plan</a>)));</div>
-<div class="line"><a name="l01678"></a><span class="lineno"> 1678</span> </div>
-<div class="line"><a name="l01679"></a><span class="lineno"> 1679</span> <span class="comment">/* planning the small nffts */</span></div>
-<div class="line"><a name="l01680"></a><span class="lineno"> 1680</span> <span class="comment">/* r=0 */</span></div>
-<div class="line"><a name="l01681"></a><span class="lineno"> 1681</span> N[0]=1; n[0]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[0];</div>
-<div class="line"><a name="l01682"></a><span class="lineno"> 1682</span> N[1]=1; n[1]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[1];</div>
-<div class="line"><a name="l01683"></a><span class="lineno"> 1683</span> N[2]=X(exp2i)(J); n[2]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[2];</div>
-<div class="line"><a name="l01684"></a><span class="lineno"> 1684</span> </div>
-<div class="line"><a name="l01685"></a><span class="lineno"> 1685</span> nfft_init_guru(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>,3,N,M,n,m, FG_PSI| MALLOC_X| MALLOC_F, FFTW_MEASURE);</div>
-<div class="line"><a name="l01686"></a><span class="lineno"> 1686</span> </div>
-<div class="line"><a name="l01687"></a><span class="lineno"> 1687</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l01688"></a><span class="lineno"> 1688</span> nfft_precompute_one_psi(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01689"></a><span class="lineno"> 1689</span> </div>
-<div class="line"><a name="l01690"></a><span class="lineno"> 1690</span> <span class="comment">/* malloc g1, g2 for maximal size */</span></div>
-<div class="line"><a name="l01691"></a><span class="lineno"> 1691</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a> = <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bd [...]
-<div class="line"><a name="l01692"></a><span class="lineno"> 1692</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a> = <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51b [...]
-<div class="line"><a name="l01693"></a><span class="lineno"> 1693</span> </div>
-<div class="line"><a name="l01694"></a><span class="lineno"> 1694</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan1 =</div>
-<div class="line"><a name="l01695"></a><span class="lineno"> 1695</span> fftw_plan_dft(3, n, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a cla [...]
-<div class="line"><a name="l01696"></a><span class="lineno"> 1696</span> FFTW_FORWARD, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805" title="Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT.">fftw_flags</a>);</div>
-<div class="line"><a name="l01697"></a><span class="lineno"> 1697</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan2 =</div>
-<div class="line"><a name="l01698"></a><span class="lineno"> 1698</span> fftw_plan_dft(3, n, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a cl [...]
-<div class="line"><a name="l01699"></a><span class="lineno"> 1699</span> FFTW_BACKWARD, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805" title="Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT.">fftw_flags</a>);</div>
-<div class="line"><a name="l01700"></a><span class="lineno"> 1700</span> </div>
-<div class="line"><a name="l01701"></a><span class="lineno"> 1701</span> ths->set_fftw_plan1[0]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan1;</div>
-<div class="line"><a name="l01702"></a><span class="lineno"> 1702</span> ths->set_fftw_plan2[0]=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan2;</div>
-<div class="line"><a name="l01703"></a><span class="lineno"> 1703</span> </div>
-<div class="line"><a name="l01704"></a><span class="lineno"> 1704</span> <span class="keywordflow">for</span>(rr=1;rr<=(J+1)/2;rr++)</div>
-<div class="line"><a name="l01705"></a><span class="lineno"> 1705</span> {</div>
-<div class="line"><a name="l01706"></a><span class="lineno"> 1706</span> a=X(exp2i)(J-rr);</div>
-<div class="line"><a name="l01707"></a><span class="lineno"> 1707</span> b=X(exp2i)(rr);</div>
-<div class="line"><a name="l01708"></a><span class="lineno"> 1708</span> </div>
-<div class="line"><a name="l01709"></a><span class="lineno"> 1709</span> r=<a class="code" href="group__nfftutil.html#ga9087991411f723f26723b2b26dbf3308" title="Mimimum of its two arguments.">NFFT_MIN</a>(rr,J-rr);</div>
-<div class="line"><a name="l01710"></a><span class="lineno"> 1710</span> </div>
-<div class="line"><a name="l01711"></a><span class="lineno"> 1711</span> n[0]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*X(exp2i)(r);</div>
-<div class="line"><a name="l01712"></a><span class="lineno"> 1712</span> <span class="keywordflow">if</span>(a<b)</div>
-<div class="line"><a name="l01713"></a><span class="lineno"> 1713</span> n[1]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*X(exp2i)(J-r);</div>
-<div class="line"><a name="l01714"></a><span class="lineno"> 1714</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01715"></a><span class="lineno"> 1715</span> n[1]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*X(exp2i)(r);</div>
-<div class="line"><a name="l01716"></a><span class="lineno"> 1716</span> n[2]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*X(exp2i)(J-r);</div>
-<div class="line"><a name="l01717"></a><span class="lineno"> 1717</span> </div>
-<div class="line"><a name="l01718"></a><span class="lineno"> 1718</span> ths->set_fftw_plan1[rr] =</div>
-<div class="line"><a name="l01719"></a><span class="lineno"> 1719</span> fftw_plan_dft(3, n, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class [...]
-<div class="line"><a name="l01720"></a><span class="lineno"> 1720</span> FFTW_FORWARD, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805" title="Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT.">fftw_flags</a>);</div>
-<div class="line"><a name="l01721"></a><span class="lineno"> 1721</span> ths->set_fftw_plan2[rr] =</div>
-<div class="line"><a name="l01722"></a><span class="lineno"> 1722</span> fftw_plan_dft(3, n, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a clas [...]
-<div class="line"><a name="l01723"></a><span class="lineno"> 1723</span> FFTW_BACKWARD, ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805" title="Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT.">fftw_flags</a>);</div>
-<div class="line"><a name="l01724"></a><span class="lineno"> 1724</span> }</div>
-<div class="line"><a name="l01725"></a><span class="lineno"> 1725</span> </div>
-<div class="line"><a name="l01726"></a><span class="lineno"> 1726</span> <span class="comment">/* planning the 1d nffts */</span></div>
-<div class="line"><a name="l01727"></a><span class="lineno"> 1727</span> <span class="keywordflow">for</span>(r=0;r<=X(log2i)(m);r++)</div>
-<div class="line"><a name="l01728"></a><span class="lineno"> 1728</span> {</div>
-<div class="line"><a name="l01729"></a><span class="lineno"> 1729</span> N[0]=X(exp2i)(J-r); n[0]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[0];</div>
-<div class="line"><a name="l01730"></a><span class="lineno"> 1730</span> N[1]=X(exp2i)(J-r); n[1]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[1];</div>
-<div class="line"><a name="l01731"></a><span class="lineno"> 1731</span> </div>
-<div class="line"><a name="l01732"></a><span class="lineno"> 1732</span> <span class="keywordflow">if</span>(N[0]>m)</div>
-<div class="line"><a name="l01733"></a><span class="lineno"> 1733</span> {</div>
-<div class="line"><a name="l01734"></a><span class="lineno"> 1734</span> nfft_init_guru(&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]),1,N,M,n,m, MALLOC_X| MALLOC_F| FFTW_INIT, FFTW_MEASURE);</div>
-<div class="line"><a name="l01735"></a><span class="lineno"> 1735</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r].<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = ths-><a class="code" href="structnsfft__plan.html#a [...]
-<div class="line"><a name="l01736"></a><span class="lineno"> 1736</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r].<a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="curren [...]
-<div class="line"><a name="l01737"></a><span class="lineno"> 1737</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r].<a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" [...]
-<div class="line"><a name="l01738"></a><span class="lineno"> 1738</span> nfft_init_guru(&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]),2,N,M,n,m, MALLOC_X| MALLOC_F| FFTW_INIT, FFTW_MEASURE);</div>
-<div class="line"><a name="l01739"></a><span class="lineno"> 1739</span> ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r].<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = ths-><a class="code" href="structnsfft__plan.html#a [...]
-<div class="line"><a name="l01740"></a><span class="lineno"> 1740</span> ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r].<a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="curren [...]
-<div class="line"><a name="l01741"></a><span class="lineno"> 1741</span> ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r].<a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" [...]
-<div class="line"><a name="l01742"></a><span class="lineno"> 1742</span> }</div>
-<div class="line"><a name="l01743"></a><span class="lineno"> 1743</span> }</div>
-<div class="line"><a name="l01744"></a><span class="lineno"> 1744</span> </div>
-<div class="line"><a name="l01745"></a><span class="lineno"> 1745</span> <span class="comment">/* center plan */</span></div>
-<div class="line"><a name="l01746"></a><span class="lineno"> 1746</span> <span class="comment">/* J/2 == floor(((double)J) / 2.0) */</span></div>
-<div class="line"><a name="l01747"></a><span class="lineno"> 1747</span> N[0]=X(exp2i)(J/2+1); n[0]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[0];</div>
-<div class="line"><a name="l01748"></a><span class="lineno"> 1748</span> N[1]=X(exp2i)(J/2+1); n[1]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[1];</div>
-<div class="line"><a name="l01749"></a><span class="lineno"> 1749</span> N[2]=X(exp2i)(J/2+1); n[2]=ths-><a class="code" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954" title="oversampling-factor">sigma</a>*N[2];</div>
-<div class="line"><a name="l01750"></a><span class="lineno"> 1750</span> nfft_init_guru(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>,3,N,M,n, m, MALLOC_F| FFTW_INIT,</div>
-<div class="line"><a name="l01751"></a><span class="lineno"> 1751</span> FFTW_MEASURE);</div>
-<div class="line"><a name="l01752"></a><span class="lineno"> 1752</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>= ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</ [...]
-<div class="line"><a name="l01753"></a><span class="lineno"> 1753</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8 [...]
-<div class="line"><a name="l01754"></a><span class="lineno"> 1754</span> FG_PSI;</div>
-<div class="line"><a name="l01755"></a><span class="lineno"> 1755</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4" title="Number of equispaced samples of the window function for PRE_LIN_PSI.">K</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft bl [...]
-<div class="line"><a name="l01756"></a><span class="lineno"> 1756</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c" title="Precomputed data for the sparse matrix , size depends on precomputation scheme.">psi</a>=ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="cu [...]
-<div class="line"><a name="l01757"></a><span class="lineno"> 1757</span> </div>
-<div class="line"><a name="l01758"></a><span class="lineno"> 1758</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a5fcea2cbb16bfdfc4a5a3f5142db3281" title="flags for precomputation, malloc">flags</a> & NSDFT)</div>
-<div class="line"><a name="l01759"></a><span class="lineno"> 1759</span> {</div>
-<div class="line"><a name="l01760"></a><span class="lineno"> 1760</span> ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>=(<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier [...]
-<div class="line"><a name="l01761"></a><span class="lineno"> 1761</span> init_index_sparse_to_full_3d(ths);</div>
-<div class="line"><a name="l01762"></a><span class="lineno"> 1762</span> }</div>
-<div class="line"><a name="l01763"></a><span class="lineno"> 1763</span> }</div>
-<div class="line"><a name="l01764"></a><span class="lineno"> 1764</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01765"></a><span class="lineno"> 1765</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01766"></a><span class="lineno"> 1766</span> <span class="preprocessor">#ifdef GAUSSIAN</span></div>
-<div class="line"><a name="l01767"></a><span class="lineno"> 1767</span> <span class="preprocessor"></span><span class="keywordtype">void</span> nsfft_init(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> J, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> flags)</div>
-<div class="line"><a name="l01768"></a><span class="lineno"> 1768</span> {</div>
-<div class="line"><a name="l01769"></a><span class="lineno"> 1769</span> ths-><a class="code" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe" title="dimension, rank; d = 2, 3">d</a>=d;</div>
-<div class="line"><a name="l01770"></a><span class="lineno"> 1770</span> </div>
-<div class="line"><a name="l01771"></a><span class="lineno"> 1771</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe" title="dimension, rank; d = 2, 3">d</a>==2)</div>
-<div class="line"><a name="l01772"></a><span class="lineno"> 1772</span> nsfft_init_2d(ths, J, M, m, flags);</div>
-<div class="line"><a name="l01773"></a><span class="lineno"> 1773</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01774"></a><span class="lineno"> 1774</span> nsfft_init_3d(ths, J, M, m, flags);</div>
-<div class="line"><a name="l01775"></a><span class="lineno"> 1775</span> </div>
-<div class="line"><a name="l01776"></a><span class="lineno"> 1776</span> </div>
-<div class="line"><a name="l01777"></a><span class="lineno"> 1777</span> ths-><a class="code" href="structnsfft__plan.html#abbab5fc009e68a329bbebee4904e53a5" title="Pointer to the own transform.">mv_trafo</a> = (void (*) (<span class="keywordtype">void</span>* ))nsfft_trafo;</div>
-<div class="line"><a name="l01778"></a><span class="lineno"> 1778</span> ths-><a class="code" href="structnsfft__plan.html#a9761ac166f3ec93197e8e409ba78fb4f" title="Pointer to the own adjoint.">mv_adjoint</a> = (void (*) (<span class="keywordtype">void</span>* ))nsfft_adjoint;</div>
-<div class="line"><a name="l01779"></a><span class="lineno"> 1779</span> }</div>
-<div class="line"><a name="l01780"></a><span class="lineno"> 1780</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01781"></a><span class="lineno"> 1781</span> <span class="preprocessor"></span><span class="keywordtype">void</span> nsfft_init(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span> J, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> m, <span class="keywordtype">unsigned</span> flags)</div>
-<div class="line"><a name="l01782"></a><span class="lineno"> 1782</span> {</div>
-<div class="line"><a name="l01783"></a><span class="lineno"> 1783</span> UNUSED(ths);</div>
-<div class="line"><a name="l01784"></a><span class="lineno"> 1784</span> UNUSED(d);</div>
-<div class="line"><a name="l01785"></a><span class="lineno"> 1785</span> UNUSED(J);</div>
-<div class="line"><a name="l01786"></a><span class="lineno"> 1786</span> UNUSED(M);</div>
-<div class="line"><a name="l01787"></a><span class="lineno"> 1787</span> UNUSED(m);</div>
-<div class="line"><a name="l01788"></a><span class="lineno"> 1788</span> UNUSED(flags);</div>
-<div class="line"><a name="l01789"></a><span class="lineno"> 1789</span> fprintf(stderr,</div>
-<div class="line"><a name="l01790"></a><span class="lineno"> 1790</span> <span class="stringliteral">"\nError in kernel/nsfft_init: require GAUSSIAN window function\n"</span>);</div>
-<div class="line"><a name="l01791"></a><span class="lineno"> 1791</span> }</div>
-<div class="line"><a name="l01792"></a><span class="lineno"> 1792</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01793"></a><span class="lineno"> 1793</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01794"></a><span class="lineno"> 1794</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nsfft_finalize_2d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l01795"></a><span class="lineno"> 1795</span> {</div>
-<div class="line"><a name="l01796"></a><span class="lineno"> 1796</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l01797"></a><span class="lineno"> 1797</span> </div>
-<div class="line"><a name="l01798"></a><span class="lineno"> 1798</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a5fcea2cbb16bfdfc4a5a3f5142db3281" title="flags for precomputation, malloc">flags</a> & NSDFT)</div>
-<div class="line"><a name="l01799"></a><span class="lineno"> 1799</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>);</div>
-<div class="line"><a name="l01800"></a><span class="lineno"> 1800</span> </div>
-<div class="line"><a name="l01801"></a><span class="lineno"> 1801</span> <span class="comment">/* center plan */</span></div>
-<div class="line"><a name="l01802"></a><span class="lineno"> 1802</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8 [...]
-<div class="line"><a name="l01803"></a><span class="lineno"> 1803</span> nfft_finalize(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>);</div>
-<div class="line"><a name="l01804"></a><span class="lineno"> 1804</span> </div>
-<div class="line"><a name="l01805"></a><span class="lineno"> 1805</span> <span class="comment">/* the 1d nffts */</span></div>
-<div class="line"><a name="l01806"></a><span class="lineno"> 1806</span> <span class="keywordflow">for</span>(r=0;r<=X(log2i)(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>);r+ [...]
-<div class="line"><a name="l01807"></a><span class="lineno"> 1807</span> {</div>
-<div class="line"><a name="l01808"></a><span class="lineno"> 1808</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r].<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> =</div>
-<div class="line"><a name="l01809"></a><span class="lineno"> 1809</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r].<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> ^ FG_PSI;</div>
-<div class="line"><a name="l01810"></a><span class="lineno"> 1810</span> nfft_finalize(&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01811"></a><span class="lineno"> 1811</span> }</div>
-<div class="line"><a name="l01812"></a><span class="lineno"> 1812</span> </div>
-<div class="line"><a name="l01813"></a><span class="lineno"> 1813</span> <span class="comment">/* finalize the small nffts */</span></div>
-<div class="line"><a name="l01814"></a><span class="lineno"> 1814</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan2=ths->set_fftw_plan2[0];</div>
-<div class="line"><a name="l01815"></a><span class="lineno"> 1815</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan1=ths->set_fftw_plan1[0];</div>
-<div class="line"><a name="l01816"></a><span class="lineno"> 1816</span> </div>
-<div class="line"><a name="l01817"></a><span class="lineno"> 1817</span> <span class="keywordflow">for</span>(r=1;r<=ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>/2;r++)</div>
-<div class="line"><a name="l01818"></a><span class="lineno"> 1818</span> {</div>
-<div class="line"><a name="l01819"></a><span class="lineno"> 1819</span> fftw_destroy_plan(ths->set_fftw_plan2[r]);</div>
-<div class="line"><a name="l01820"></a><span class="lineno"> 1820</span> fftw_destroy_plan(ths->set_fftw_plan1[r]);</div>
-<div class="line"><a name="l01821"></a><span class="lineno"> 1821</span> }</div>
-<div class="line"><a name="l01822"></a><span class="lineno"> 1822</span> </div>
-<div class="line"><a name="l01823"></a><span class="lineno"> 1823</span> <span class="comment">/* r=0 */</span></div>
-<div class="line"><a name="l01824"></a><span class="lineno"> 1824</span> nfft_finalize(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01825"></a><span class="lineno"> 1825</span> </div>
-<div class="line"><a name="l01826"></a><span class="lineno"> 1826</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>);</div>
-<div class="line"><a name="l01827"></a><span class="lineno"> 1827</span> </div>
-<div class="line"><a name="l01828"></a><span class="lineno"> 1828</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->set_fftw_plan2);</div>
-<div class="line"><a name="l01829"></a><span class="lineno"> 1829</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->set_fftw_plan1);</div>
-<div class="line"><a name="l01830"></a><span class="lineno"> 1830</span> </div>
-<div class="line"><a name="l01831"></a><span class="lineno"> 1831</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#aca6c9880cde07f3bc26dd7666c09a9d6" title="coordinate exchanged nodes, d = 2">x_transposed</a>);</div>
-<div class="line"><a name="l01832"></a><span class="lineno"> 1832</span> </div>
-<div class="line"><a name="l01833"></a><span class="lineno"> 1833</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>);</div>
-<div class="line"><a name="l01834"></a><span class="lineno"> 1834</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>);</div>
-<div class="line"><a name="l01835"></a><span class="lineno"> 1835</span> }</div>
-<div class="line"><a name="l01836"></a><span class="lineno"> 1836</span> </div>
-<div class="line"><a name="l01837"></a><span class="lineno"> 1837</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nsfft_finalize_3d(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l01838"></a><span class="lineno"> 1838</span> {</div>
-<div class="line"><a name="l01839"></a><span class="lineno"> 1839</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l01840"></a><span class="lineno"> 1840</span> </div>
-<div class="line"><a name="l01841"></a><span class="lineno"> 1841</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#a5fcea2cbb16bfdfc4a5a3f5142db3281" title="flags for precomputation, malloc">flags</a> & NSDFT)</div>
-<div class="line"><a name="l01842"></a><span class="lineno"> 1842</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55" title="index conversation, overflow for d=3, J=9!">index_sparse_to_full</a>);</div>
-<div class="line"><a name="l01843"></a><span class="lineno"> 1843</span> </div>
-<div class="line"><a name="l01844"></a><span class="lineno"> 1844</span> <span class="comment">/* center plan */</span></div>
-<div class="line"><a name="l01845"></a><span class="lineno"> 1845</span> ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8 [...]
-<div class="line"><a name="l01846"></a><span class="lineno"> 1846</span> nfft_finalize(ths-><a class="code" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e" title="central nfft block">center_nfft_plan</a>);</div>
-<div class="line"><a name="l01847"></a><span class="lineno"> 1847</span> </div>
-<div class="line"><a name="l01848"></a><span class="lineno"> 1848</span> <span class="comment">/* the 1d and 2d nffts */</span></div>
-<div class="line"><a name="l01849"></a><span class="lineno"> 1849</span> <span class="keywordflow">for</span>(r=0;r<=X(log2i)(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>);r+ [...]
-<div class="line"><a name="l01850"></a><span class="lineno"> 1850</span> {</div>
-<div class="line"><a name="l01851"></a><span class="lineno"> 1851</span> <span class="keywordflow">if</span>(X(exp2i)(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>-r)>ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href=" [...]
-<div class="line"><a name="l01852"></a><span class="lineno"> 1852</span> {</div>
-<div class="line"><a name="l01853"></a><span class="lineno"> 1853</span> ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r].<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = ths-><a class="code" href="structnsfft__plan.html#a [...]
-<div class="line"><a name="l01854"></a><span class="lineno"> 1854</span> nfft_finalize(&(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>[r]));</div>
-<div class="line"><a name="l01855"></a><span class="lineno"> 1855</span> ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r].<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> = ths-><a class="code" href="structnsfft__plan.html#a [...]
-<div class="line"><a name="l01856"></a><span class="lineno"> 1856</span> nfft_finalize(&(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>[r]));</div>
-<div class="line"><a name="l01857"></a><span class="lineno"> 1857</span> }</div>
-<div class="line"><a name="l01858"></a><span class="lineno"> 1858</span> }</div>
-<div class="line"><a name="l01859"></a><span class="lineno"> 1859</span> </div>
-<div class="line"><a name="l01860"></a><span class="lineno"> 1860</span> <span class="comment">/* finalize the small nffts */</span></div>
-<div class="line"><a name="l01861"></a><span class="lineno"> 1861</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan2=ths->set_fftw_plan2[0];</div>
-<div class="line"><a name="l01862"></a><span class="lineno"> 1862</span> ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>->my_fftw_plan1=ths->set_fftw_plan1[0];</div>
-<div class="line"><a name="l01863"></a><span class="lineno"> 1863</span> </div>
-<div class="line"><a name="l01864"></a><span class="lineno"> 1864</span> <span class="keywordflow">for</span>(r=1;r<=(ths-><a class="code" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52" title="problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1))">J</a>+1)/2;r++)</div>
-<div class="line"><a name="l01865"></a><span class="lineno"> 1865</span> {</div>
-<div class="line"><a name="l01866"></a><span class="lineno"> 1866</span> fftw_destroy_plan(ths->set_fftw_plan2[r]);</div>
-<div class="line"><a name="l01867"></a><span class="lineno"> 1867</span> fftw_destroy_plan(ths->set_fftw_plan1[r]);</div>
-<div class="line"><a name="l01868"></a><span class="lineno"> 1868</span> }</div>
-<div class="line"><a name="l01869"></a><span class="lineno"> 1869</span> </div>
-<div class="line"><a name="l01870"></a><span class="lineno"> 1870</span> <span class="comment">/* r=0 */</span></div>
-<div class="line"><a name="l01871"></a><span class="lineno"> 1871</span> nfft_finalize(ths-><a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>);</div>
-<div class="line"><a name="l01872"></a><span class="lineno"> 1872</span> </div>
-<div class="line"><a name="l01873"></a><span class="lineno"> 1873</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc" title="nfft plans for short nffts">set_nfft_plan_1d</a>);</div>
-<div class="line"><a name="l01874"></a><span class="lineno"> 1874</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b" title="nfft plans for short nffts">set_nfft_plan_2d</a>);</div>
-<div class="line"><a name="l01875"></a><span class="lineno"> 1875</span> </div>
-<div class="line"><a name="l01876"></a><span class="lineno"> 1876</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->set_fftw_plan2);</div>
-<div class="line"><a name="l01877"></a><span class="lineno"> 1877</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->set_fftw_plan1);</div>
-<div class="line"><a name="l01878"></a><span class="lineno"> 1878</span> </div>
-<div class="line"><a name="l01879"></a><span class="lineno"> 1879</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->x_102);</div>
-<div class="line"><a name="l01880"></a><span class="lineno"> 1880</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->x_201);</div>
-<div class="line"><a name="l01881"></a><span class="lineno"> 1881</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths->x_120);</div>
-<div class="line"><a name="l01882"></a><span class="lineno"> 1882</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#aee5ad936bb790f00bf0797c94e185549" title="coordinate exchanged nodes, d=3">x_021</a>);</div>
-<div class="line"><a name="l01883"></a><span class="lineno"> 1883</span> </div>
-<div class="line"><a name="l01884"></a><span class="lineno"> 1884</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>);</div>
-<div class="line"><a name="l01885"></a><span class="lineno"> 1885</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>);</div>
-<div class="line"><a name="l01886"></a><span class="lineno"> 1886</span> }</div>
-<div class="line"><a name="l01887"></a><span class="lineno"> 1887</span> </div>
-<div class="line"><a name="l01888"></a><span class="lineno"> 1888</span> <span class="keywordtype">void</span> nsfft_finalize(<a class="code" href="structnsfft__plan.html">nsfft_plan</a> *ths)</div>
-<div class="line"><a name="l01889"></a><span class="lineno"> 1889</span> {</div>
-<div class="line"><a name="l01890"></a><span class="lineno"> 1890</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe" title="dimension, rank; d = 2, 3">d</a>==2)</div>
-<div class="line"><a name="l01891"></a><span class="lineno"> 1891</span> nsfft_finalize_2d(ths);</div>
-<div class="line"><a name="l01892"></a><span class="lineno"> 1892</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01893"></a><span class="lineno"> 1893</span> nsfft_finalize_3d(ths);</div>
-<div class="line"><a name="l01894"></a><span class="lineno"> 1894</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/nsfft__test_8c_source.html b/doc/api/html/nsfft__test_8c_source.html
deleted file mode 100644
index 524418d..0000000
--- a/doc/api/html/nsfft__test_8c_source.html
+++ /dev/null
@@ -1,260 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nsfft_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_390363ac6c75087990c53a11ba2c3b15.html">nsfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">nsfft_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: nsfft_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> </div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="keyword">static</span> <span class="keywordtype">void</span> accuracy_nsfft(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> J, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> m)</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> {</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <a class="code" href="structnsfft__plan.html">nsfft_plan</a> p;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordtype">double</span> _Complex *swap_sndft_trafo, *swap_sndft_adjoint;</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> nsfft_init(&p, d, J, M, m, NSDFT);</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> swap_sndft_trafo=(<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(p.<a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>*</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> swap_sndft_adjoint=(<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(p.<a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>*</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> nsfft_init_random_nodes_coeffs(&p);</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> nsfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> </div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(swap_sndft_trafo,p.<a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>);</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> nsfft_trafo(&p);</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> printf(<span class="stringliteral">"%5d\t %+.5E\t"</span>,J,</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> X(error_l_infty_1_complex)(swap_sndft_trafo, p.<a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>,</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> p.<a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, p.<a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>));</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> fflush(stdout);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(p.<a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total [...]
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> nsfft_adjoint_direct(&p);</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(swap_sndft_adjoint,p.<a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> nsfft_adjoint(&p);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> </div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> printf(<span class="stringliteral">"%+.5E\n"</span>,</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> X(error_l_infty_1_complex)(swap_sndft_adjoint, p.<a class="code" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>,</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> p.<a class="code" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505" title="Total number of Fourier coefficients.">N_total</a>,</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> p.<a class="code" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, p.<a class="code" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e" title="Total number of samples.">M_total</a>));</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> fflush(stdout);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swap_sndft_adjoint);</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swap_sndft_trafo);</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> nsfft_finalize(&p);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keyword">static</span> <span class="keywordtype">void</span> time_nsfft(<span class="keywordtype">int</span> d, <span class="keywordtype">int</span> J, <span class="keywordtype">int</span> M, <span class="keywordtype">unsigned</span> test_nsdft, <span class="keywordtype">unsigned</span> test_nfft)</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> {</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordtype">int</span> r, N[d], n[d];</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">double</span> t, t_nsdft, t_nfft, t_nsfft;</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> ticks t0, t1;</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <a class="code" href="structnsfft__plan.html">nsfft_plan</a> p;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> np;</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">for</span>(r=0;r<d;r++)</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> {</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> N[r]= X(exp2i)(J+2);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> n[r]=(3*N[r])/2;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="comment">/*n[r]=2*N[r];*/</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> }</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> nsfft_init(&p, d, J, M, 4, NSDFT);</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> nsfft_init_random_nodes_coeffs(&p);</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="comment">/* transforms */</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">if</span>(test_nsdft)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> {</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> t_nsdft=0;</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> r=0;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordflow">while</span>(t_nsdft<0.1)</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> {</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> r++;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> t0 = getticks();</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> nsfft_trafo_direct(&p);</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> t1 = getticks();</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> t_nsdft+=t;</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> }</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> t_nsdft/=r;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> }</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> t_nsdft=nan(<span class="stringliteral">""</span>);</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> </div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">if</span>(test_nfft)</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> {</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> nfft_init_guru(&np,d,N,M,n,6, FG_PSI| MALLOC_F_HAT| MALLOC_F| FFTW_INIT,</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> FFTW_MEASURE);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> np.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>=p.<a class="code" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f" title="current nfft block">act_nfft_plan</a>-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles."> [...]
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordflow">if</span>(np.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> nfft_precompute_one_psi(&np);</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> nsfft_cp(&p, &np);</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> t_nfft=0;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> r=0;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">while</span>(t_nfft<0.1)</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> {</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> r++;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> t0 = getticks();</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&np);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> t1 = getticks();</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> t_nfft+=t;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> t_nfft/=r;</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> nfft_finalize(&np);</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> }</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> {</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> t_nfft=nan(<span class="stringliteral">""</span>);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> }</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> t_nsfft=0;</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> r=0;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">while</span>(t_nsfft<0.1)</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> {</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> r++;</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> t0 = getticks();</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> nsfft_trafo(&p);</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> t1 = getticks();</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> t_nsfft+=t;</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> }</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> t_nsfft/=r;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> printf(<span class="stringliteral">"%d\t%.2e\t%.2e\t%.2e\n"</span>, J, t_nsdft, t_nfft, t_nsfft);</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> </div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> fflush(stdout);</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> </div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> nsfft_finalize(&p);</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> }</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> </div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> {</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="keywordtype">int</span> d, J, M;</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> </div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="keywordflow">if</span>(argc<=2)</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> {</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> fprintf(stderr,<span class="stringliteral">"nsfft_test type d [first last trials]\n"</span>);</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> }</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> </div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> d=atoi(argv[2]);</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> fprintf(stderr,<span class="stringliteral">"Testing the nfft on the hyperbolic cross (nsfft).\n"</span>);</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">if</span>(atoi(argv[1])==1)</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> {</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> fprintf(stderr,<span class="stringliteral">"Testing the accuracy of the nsfft vs. nsdft\n"</span>);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> fprintf(stderr,<span class="stringliteral">"Columns: d, E_{1,\\infty}(trafo) E_{1,\\infty}(adjoint)\n\n"</span>);</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keywordflow">for</span>(J=1; J<10; J++)</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> accuracy_nsfft(d, J, 1000, 6);</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> }</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">if</span>(atoi(argv[1])==2)</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> {</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> fprintf(stderr,<span class="stringliteral">"Testing the computation time of the nsdft, nfft, and nsfft\n"</span>);</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> fprintf(stderr,<span class="stringliteral">"Columns: d, J, M, t_nsdft, t_nfft, t_nsfft\n\n"</span>);</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordflow">for</span>(J=atoi(argv[3]); J<=atoi(argv[4]); J++)</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> {</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">if</span>(d==2)</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> M=(J+4)*X(exp2i)(J+1);</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> M=6*X(exp2i)(J)*(X(exp2i)((J+1)/2+1)-1)+X(exp2i)(3*(J/2+1));</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> </div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="keywordflow">if</span>(d*(J+2)<=24)</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> time_nsfft(d, J, M, 1, 1);</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="keywordflow">if</span>(d*(J+2)<=24)</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> time_nsfft(d, J, M, 0, 1);</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> time_nsfft(d, J, M, 0, 0);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> }</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> }</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> </div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/open.png b/doc/api/html/open.png
deleted file mode 100644
index 30f75c7..0000000
Binary files a/doc/api/html/open.png and /dev/null differ
diff --git a/doc/api/html/polar__fft__test_8c.html b/doc/api/html/polar__fft__test_8c.html
deleted file mode 100644
index 0609ad0..0000000
--- a/doc/api/html/polar__fft__test_8c.html
+++ /dev/null
@@ -1,88 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - polar_fft_test.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html">polarFFT</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">polar_fft_test.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>NFFT-based polar FFT and inverse.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <math.h></code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-</div>
-<p><a href="polar__fft__test_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ga307b67b4c00a1c756f140c7fa831cdae"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756f140c7fa831cdae">polar_grid</a> (int T, int R, double *x, double *w)</td></tr>
-<tr class="memdesc:ga307b67b4c00a1c756f140c7fa831cdae"><td class="mdescLeft"> </td><td class="mdescRight">Generates the points <img class="formulaInl" alt="$x_{t,j}$" src="form_115.png"/> with weights <img class="formulaInl" alt="$w_{t,j}$" src="form_116.png"/> for the polar grid with <img class="formulaInl" alt="$T$" src="form_117.png"/> angles and <img class="formulaInl" alt="$R$" src="form_118.png"/> offsets. <a href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756 [...]
-<tr class="memitem:gaf6ec0d6bb5bfea4829e551c9dc9a656e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gaf6ec0d6bb5bfea4829e551c9dc9a656e"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html#gaf6ec0d6bb5bfea4829e551c9dc9a656e">polar_dft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:gaf6ec0d6bb5bfea4829e551c9dc9a656e"><td class="mdescLeft"> </td><td class="mdescRight">discrete polar FFT <br/></td></tr>
-<tr class="memitem:ga72ebda23ef48b6509833eea9a24fa839"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga72ebda23ef48b6509833eea9a24fa839"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html#ga72ebda23ef48b6509833eea9a24fa839">polar_fft</a> (fftw_complex *f_hat, int NN, fftw_complex *f, int T, int R, int m)</td></tr>
-<tr class="memdesc:ga72ebda23ef48b6509833eea9a24fa839"><td class="mdescLeft"> </td><td class="mdescRight">NFFT-based polar FFT. <br/></td></tr>
-<tr class="memitem:gad996d429207cf198e9027618e081ada0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="gad996d429207cf198e9027618e081ada0"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html#gad996d429207cf198e9027618e081ada0">inverse_polar_fft</a> (fftw_complex *f, int T, int R, fftw_complex *f_hat, int NN, int <a class="el" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e">max_i</a>, int m)</td></tr>
-<tr class="memdesc:gad996d429207cf198e9027618e081ada0"><td class="mdescLeft"> </td><td class="mdescRight">inverse NFFT-based polar FFT <br/></td></tr>
-<tr class="memitem:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ga3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="group__applications__polarFFT__polar.html#ga3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:ga3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">test program for various parameters <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>NFFT-based polar FFT and inverse. </p>
-<p>Computes the NFFT-based polar FFT and its inverse for various parameters. </p>
-<dl class="section author"><dt>Author:</dt><dd>Markus Fenn </dd></dl>
-<dl class="section date"><dt>Date:</dt><dd>2006 </dd></dl>
-
-<p>Definition in file <a class="el" href="polar__fft__test_8c_source.html">polar_fft_test.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/polar__fft__test_8c_source.html b/doc/api/html/polar__fft__test_8c_source.html
deleted file mode 100644
index 36f759a..0000000
--- a/doc/api/html/polar__fft__test_8c_source.html
+++ /dev/null
@@ -1,380 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - polar_fft_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_697d3e9fc07ca8e2f36d15eea53bc2fc.html">polarFFT</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">polar_fft_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="polar__fft__test_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: polar_fft_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756f140c7fa831cdae"> 78</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756f140c7fa831cdae" title="Generates the points with weights for the polar grid with angles and offsets.">polar_grid</a>(<span class="keywordtype">int</s [...]
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> {</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordtype">int</span> t, r;</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordtype">double</span> W=(double)T*(((<span class="keywordtype">double</span>)R/2.0)*((double)R/2.0)+1.0/4.0);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> </div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">for</span>(t=-T/2; t<T/2; t++)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> {</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">for</span>(r=-R/2; r<R/2; r++)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> {</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> x[2*((t+T/2)*R+(r+R/2))+0] = (<span class="keywordtype">double</span>)r/R*cos(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*t/T);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> x[2*((t+T/2)*R+(r+R/2))+1] = (<span class="keywordtype">double</span>)r/R*sin(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*t/T);</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">if</span> (r==0)</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> w[(t+T/2)*R+(r+R/2)] = 1.0/4.0/W;</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> w[(t+T/2)*R+(r+R/2)] = fabs((<span class="keywordtype">double</span>)r)/W;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> }</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> }</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> </div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">return</span> T*R; </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> }</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__polar.html#gaf6ec0d6bb5bfea4829e551c9dc9a656e"> 100</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__polar.html#gaf6ec0d6bb5bfea4829e551c9dc9a656e" title="discrete polar FFT">polar_dft</a>(fftw_complex *f_hat, <span class="keywordtype">int</span> NN, fftw_complex *f, <span class="keyw [...]
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> {</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordtype">int</span> M=T*R; </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> N[0]=NN; n[0]=2*N[0]; </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> N[1]=NN; n[1]=2*N[1]; </div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, m,</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <a class="code" href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756f140c7fa831cdae" title="Generates the points with weights for the polar grid with angles and offsets.">polar_grid</a>(T,R,x,w);</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> {</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> }</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = f_hat[k];</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> nfft_trafo_direct(&my_nfft_plan);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> f[j] = my_nfft_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> </div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> }</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00154"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__polar.html#ga72ebda23ef48b6509833eea9a24fa839"> 154</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__polar.html#ga72ebda23ef48b6509833eea9a24fa839" title="NFFT-based polar FFT.">polar_fft</a>(fftw_complex *f_hat, <span class="keywordtype">int</span> NN, fftw_complex *f, <span class="k [...]
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> {</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordtype">int</span> M=T*R; </div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> N[0]=NN; n[0]=2*N[0]; </div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> N[1]=NN; n[1]=2*N[1]; </div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> </div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> </div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, m,</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> </div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <a class="code" href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756f140c7fa831cdae" title="Generates the points with weights for the polar grid with angles and offsets.">polar_grid</a>(T,R,x,w);</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> {</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> }</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> </div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> nfft_precompute_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> nfft_precompute_full_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = f_hat[k];</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> f[j] = my_nfft_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[j];</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> }</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div>
-<div class="line"><a name="l00218"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__polar.html#gad996d429207cf198e9027618e081ada0"> 218</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__polarFFT__polar.html#gad996d429207cf198e9027618e081ada0" title="inverse NFFT-based polar FFT">inverse_polar_fft</a>(fftw_complex *f, <span class="keywordtype">int</span> T, <span class="keywordt [...]
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> {</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_infft_plan; </div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="keywordtype">int</span> l; </div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="keywordtype">int</span> M=T*R; </div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> N[0]=NN; n[0]=2*N[0]; </div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> N[1]=NN; n[1]=2*N[1]; </div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> </div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, m,</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> </div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> solver_init_advanced_complex(&my_infft_plan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&my_nfft_plan), CGNR | PRECOMPUTE_WEIGHT );</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> </div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <a class="code" href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756f140c7fa831cdae" title="Generates the points with weights for the polar grid with angles and offsets.">polar_grid</a>(T,R,x,w);</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> {</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j] = f[j];</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j] = w[j];</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> }</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> </div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> </div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> nfft_precompute_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> </div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> nfft_precompute_full_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> </div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> <span class="keywordflow">if</span>(my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0];j++)</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1];k++)</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> {</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]+k]=</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> (sqrt(pow((<span class="keywordtype">double</span>)(j-my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2),2.0)+pow((<span class="keywordtype">double</span>)(k-my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[1]/2),2.0))</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> >((double)(my_nfft_plan.<a class="code" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9" title="multi-bandwidth">N</a>[0]/2))?0:1);</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> }</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> </div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k] = 0.0 + _Complex_I*0.0;</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> solver_before_loop_complex(&my_infft_plan);</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> </div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="keywordflow">if</span> (max_i<1)</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> {</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> l=1;</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k] = my_infft_plan.<a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>[k];</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> }</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> {</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">for</span>(l=1;l<=<a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>;l++)</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> {</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_infft_plan);</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> }</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> }</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> </div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> f_hat[k] = my_infft_plan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k];</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> </div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_infft_plan);</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> </div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> }</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> </div>
-<div class="line"><a name="l00314"></a><span class="lineno"><a class="code" href="group__applications__polarFFT__polar.html#ga3c04138a5bfe5d72780bb7e82a18e627"> 314</a></span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> {</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="keywordtype">int</span> N; </div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="keywordtype">int</span> T, R; </div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="keywordtype">int</span> M; </div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> fftw_complex *f_hat, *f, *f_direct, *f_tilde;</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__fastsum.html#ga37a2a7cb4fb162d6e6e46ea614318a4e" title="max">max_i</a>; </div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="keywordtype">int</span> m = 1;</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="keywordtype">double</span> temp1, temp2, E_max=0.0;</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> FILE *fp1, *fp2;</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="keywordtype">char</span> filename[30];</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="keywordflow">if</span>( argc!=4 )</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> {</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> printf(<span class="stringliteral">"polar_fft_test N T R \n"</span>);</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> printf(<span class="stringliteral">"N polar FFT of size NxN \n"</span>);</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> printf(<span class="stringliteral">"T number of slopes \n"</span>);</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> printf(<span class="stringliteral">"R number of offsets \n"</span>);</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> exit(-1);</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> }</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> </div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> N = atoi(argv[1]);</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> T = atoi(argv[2]);</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> R = atoi(argv[3]);</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> printf(<span class="stringliteral">"N=%d, polar grid with T=%d, R=%d => "</span>,N,T,R);</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> </div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*5*(T/2)*(R/2)*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(5*(T/2)*(R/2)*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> </div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> f_hat = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*N*N);</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> f = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*T*R);</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> f_direct = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*T*R);</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> f_tilde = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex)*N*N);</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> </div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> M=<a class="code" href="group__applications__polarFFT__polar.html#ga307b67b4c00a1c756f140c7fa831cdae" title="Generates the points with weights for the polar grid with angles and offsets.">polar_grid</a>(T,R,x,w); printf(<span class="stringliteral">"M=%d.\n"</span>,M);</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> </div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> fp1=fopen(<span class="stringliteral">"input_data_r.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> fp2=fopen(<span class="stringliteral">"input_data_i.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="keywordflow">if</span> (fp1==NULL)</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="keywordflow">for</span>(k=0;k<N*N;k++)</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> {</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> fscanf(fp1,<span class="stringliteral">"%le "</span>,&temp1);</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> fscanf(fp2,<span class="stringliteral">"%le "</span>,&temp2);</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> f_hat[k]=temp1+ _Complex_I*temp2;</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> }</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> fclose(fp1);</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> fclose(fp2);</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> </div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <a class="code" href="group__applications__polarFFT__polar.html#gaf6ec0d6bb5bfea4829e551c9dc9a656e" title="discrete polar FFT">polar_dft</a>(f_hat,N,f_direct,T,R,m);</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="comment">// polar_fft(f_hat,N,f_direct,T,R,12);</span></div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> </div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> printf(<span class="stringliteral">"\nTest of the polar FFT: \n"</span>);</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> fp1=fopen(<span class="stringliteral">"polar_fft_error.dat"</span>,<span class="stringliteral">"w+"</span>);</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <span class="keywordflow">for</span> (m=1; m<=12; m++)</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> {</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <a class="code" href="group__applications__polarFFT__polar.html#ga72ebda23ef48b6509833eea9a24fa839" title="NFFT-based polar FFT.">polar_fft</a>(f_hat,N,f,T,R,m);</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> </div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> E_max=X(error_l_infty_complex)(f_direct,f,M);</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> printf(<span class="stringliteral">"m=%2d: E_max = %e\n"</span>,m,E_max);</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> fprintf(fp1,<span class="stringliteral">"%e\n"</span>,E_max);</div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> }</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> fclose(fp1);</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> </div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="keywordflow">for</span> (m=3; m<=9; m+=3)</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> {</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> printf(<span class="stringliteral">"\nTest of the inverse polar FFT for m=%d: \n"</span>,m);</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> sprintf(filename,<span class="stringliteral">"polar_ifft_error%d.dat"</span>,m);</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> fp1=fopen(filename,<span class="stringliteral">"w+"</span>);</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="keywordflow">for</span> (max_i=0; max_i<=100; max_i+=10)</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> {</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> <a class="code" href="group__applications__polarFFT__polar.html#gad996d429207cf198e9027618e081ada0" title="inverse NFFT-based polar FFT">inverse_polar_fft</a>(f_direct,T,R,f_tilde,N,max_i,m);</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> </div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="comment">/* E_max=0.0;</span></div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> <span class="comment"> for(k=0;k<N*N;k++)</span></div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> <span class="comment"> temp = cabs((f_hat[k]-f_tilde[k])/f_hat[k]);</span></div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="comment"> if (temp>E_max) E_max=temp;</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> <span class="comment"> }</span></div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> E_max=X(error_l_infty_complex)(f_hat,f_tilde,N*N);</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> printf(<span class="stringliteral">"%3d iterations: E_max = %e\n"</span>,max_i,E_max);</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> fprintf(fp1,<span class="stringliteral">"%e\n"</span>,E_max);</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> }</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> fclose(fp1);</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> }</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> </div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_direct);</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_tilde);</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> </div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> }</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/quadratureS2_8c_source.html b/doc/api/html/quadratureS2_8c_source.html
deleted file mode 100644
index 351d306..0000000
--- a/doc/api/html/quadratureS2_8c_source.html
+++ /dev/null
@@ -1,1160 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - quadratureS2.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_deedd863ca11d55d683e9872da0f56e1.html">quadratureS2</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">quadratureS2.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: quadratureS2.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="comment">/* Include standard C headers. */</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include <time.h></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="comment">/* Include NFFT 3 utilities headers. */</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="comment">/* Include NFFT 3 library header. */</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
-<div class="line"><a name="l00047"></a><span class="lineno"><a class="code" href="group__applications__quadratureS2__test.html#ga7c6368b321bd9acd0149b030bb8275ed"> 47</a></span> <span class="keyword">enum</span> <span class="keywordtype">boolean</span> {NO = 0, YES = 1};</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="group__applications__quadratureS2__test.html#ga47f3fd319121e75dc73cd720c536f3c7"> 50</a></span> <span class="keyword">enum</span> <a class="code" href="group__applications__quadratureS2__test.html#ga47f3fd319121e75dc73cd720c536f3c7" title="Enumeration for test modes.">testtype</a> {ERROR = 0, TIMING = 1};</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00053"></a><span class="lineno"><a class="code" href="group__applications__quadratureS2__test.html#ga4cf30b0362e85bc0154ca2c52b2bc17e"> 53</a></span> <span class="keyword">enum</span> <a class="code" href="group__applications__quadratureS2__test.html#ga4cf30b0362e85bc0154ca2c52b2bc17e" title="Enumeration for quadrature grid types.">gridtype</a> {GRID_GAUSS_LEGENDRE = 0, GRID_CLENSHAW_CURTIS = 1,</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> GRID_HEALPIX = 2, GRID_EQUIDISTRIBUTION = 3, GRID_EQUIDISTRIBUTION_UNIFORM = 4};</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
-<div class="line"><a name="l00057"></a><span class="lineno"><a class="code" href="group__applications__quadratureS2__test.html#gaa7c9498e1664b6773fd8f9d850921e20"> 57</a></span> <span class="keyword">enum</span> <a class="code" href="group__applications__quadratureS2__test.html#gaa7c9498e1664b6773fd8f9d850921e20" title="Enumeration for test functions.">functiontype</a> {FUNCTION_RANDOM_BANDLIMITED = 0, FUNCTION_F1 = 1,</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> FUNCTION_F2 = 2, FUNCTION_F3 = 3, FUNCTION_F4 = 4, FUNCTION_F5 = 5,</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> FUNCTION_F6 = 6};</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"><a class="code" href="group__applications__quadratureS2__test.html#ga811fe196a5d9d37857c2f8adeeaac3c6"> 62</a></span> <span class="keyword">enum</span> <a class="code" href="group__applications__quadratureS2__test.html#ga811fe196a5d9d37857c2f8adeeaac3c6" title="TODO Add comment here.">modes</a> {USE_GRID = 0, RANDOM = 1};</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"><a class="code" href="group__applications__quadratureS2__test.html#ga3c04138a5bfe5d72780bb7e82a18e627"> 72</a></span> <span class="keywordtype">int</span> main (<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> {</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="keywordtype">int</span> tc; </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="keywordtype">int</span> tc_max; </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordtype">int</span> *NQ; </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordtype">int</span> NQ_max; </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordtype">int</span> *SQ; </div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordtype">int</span> SQ_max; </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordtype">int</span> *RQ; </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordtype">int</span> iNQ; </div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">int</span> iNQ_max; </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordtype">int</span> testfunction; </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">int</span> N; </div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordtype">int</span> use_nfsft; </div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">int</span> use_nfft; </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordtype">int</span> use_fpt; </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keywordtype">int</span> cutoff; </div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordtype">double</span> <a class="code" href="structnfsft__wisdom.html#ac367edaa1fae041e5b049cd81b44336b" title="The threshold /f$/f$.">threshold</a>; </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordtype">int</span> <a class="code" href="group__applications__quadratureS2__test.html#ga4cf30b0362e85bc0154ca2c52b2bc17e" title="Enumeration for quadrature grid types.">gridtype</a>; </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordtype">int</span> repetitions; </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="keywordtype">int</span> mode; </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">double</span> *w; </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordtype">double</span> *x_grid; </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordtype">double</span> *x_compare; </div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordtype">double</span> _Complex *f_grid; </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordtype">double</span> _Complex *f_compare; </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordtype">double</span> _Complex *f; </div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordtype">double</span> _Complex *f_hat_gen; </div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">double</span> _Complex *f_hat; </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan_adjoint; </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan; </div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> plan_gen; </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordtype">double</span> t_avg; </div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordtype">double</span> err_infty_avg; </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordtype">double</span> err_2_avg; </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="keywordtype">int</span> i; </div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordtype">int</span> k; </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordtype">int</span> n; </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordtype">int</span> d; </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keywordtype">int</span> m_theta; </div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordtype">int</span> m_phi; </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">int</span> m_total; </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordtype">double</span> *theta; </div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordtype">double</span> *phi; </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> fftw_plan fplan; </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment">//int nside; /**< The size parameter for the HEALPix grid */</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordtype">int</span> d2;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordtype">int</span> M;</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordtype">double</span> theta_s;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="keywordtype">double</span> x1,x2,x3,temp;</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="keywordtype">int</span> m_compare;</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan_adjoint_ptr;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <a class="code" href="structnfsft__plan.html">nfsft_plan</a> *plan_ptr;</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordtype">double</span> *w_temp;</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordtype">int</span> testmode;</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> ticks t0, t1;</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="comment">/* Read the number of testcases. */</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> fscanf(stdin,<span class="stringliteral">"testcases=%d\n"</span>,&tc_max);</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,tc_max);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <span class="comment">/* Process each testcase. */</span></div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">for</span> (tc = 0; tc < tc_max; tc++)</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> {</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="comment">/* Check if the fast transform shall be used. */</span></div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> fscanf(stdin,<span class="stringliteral">"nfsft=%d\n"</span>,&use_nfsft);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,use_nfsft);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> {</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="comment">/* Check if the NFFT shall be used. */</span></div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> fscanf(stdin,<span class="stringliteral">"nfft=%d\n"</span>,&use_nfft);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,use_nfsft);</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">if</span> (use_nfft != NO)</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> {</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="comment">/* Read the cut-off parameter. */</span></div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> fscanf(stdin,<span class="stringliteral">"cutoff=%d\n"</span>,&cutoff);</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,cutoff);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> }</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> {</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="comment">/* TODO remove this */</span></div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="comment">/* Initialize unused variable with dummy value. */</span></div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> cutoff = 1;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> }</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="comment">/* Check if the fast polynomial transform shall be used. */</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> fscanf(stdin,<span class="stringliteral">"fpt=%d\n"</span>,&use_fpt);</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,use_fpt);</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordflow">if</span> (use_fpt != NO)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> {</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="comment">/* Read the NFSFT threshold parameter. */</span></div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> fscanf(stdin,<span class="stringliteral">"threshold=%lf\n"</span>,&threshold);</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> fprintf(stdout,<span class="stringliteral">"%lf\n"</span>,threshold);</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> }</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> {</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="comment">/* TODO remove this */</span></div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="comment">/* Initialize unused variable with dummy value. */</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> threshold = 1000.0;</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> }</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> }</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> {</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment">/* TODO remove this */</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment">/* Set dummy values. */</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> use_nfft = NO;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> use_fpt = NO;</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> cutoff = 3;</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> threshold = 1000.0;</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> }</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <span class="comment">/* Read the testmode type. */</span></div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> fscanf(stdin,<span class="stringliteral">"testmode=%d\n"</span>,&testmode);</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,testmode);</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">if</span> (testmode == ERROR)</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> {</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="comment">/* Read the quadrature grid type. */</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> fscanf(stdin,<span class="stringliteral">"gridtype=%d\n"</span>,&gridtype);</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,gridtype);</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="comment">/* Read the test function. */</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> fscanf(stdin,<span class="stringliteral">"testfunction=%d\n"</span>,&testfunction);</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,testfunction);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <span class="comment">/* Check if random bandlimited function has been chosen. */</span></div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="keywordflow">if</span> (testfunction == FUNCTION_RANDOM_BANDLIMITED)</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> {</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> <span class="comment">/* Read the bandwidht. */</span></div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> fscanf(stdin,<span class="stringliteral">"bandlimit=%d\n"</span>,&N);</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,N);</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> }</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> {</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> N = 1;</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> }</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="comment">/* Read the number of repetitions. */</span></div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> fscanf(stdin,<span class="stringliteral">"repetitions=%d\n"</span>,&repetitions);</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,repetitions);</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> </div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> fscanf(stdin,<span class="stringliteral">"mode=%d\n"</span>,&mode);</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,mode);</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> </div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> {</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="comment">/* Read the bandwidht. */</span></div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> fscanf(stdin,<span class="stringliteral">"points=%d\n"</span>,&m_compare);</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,m_compare);</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> x_compare = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*m_compare*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> d = 0;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> <span class="keywordflow">while</span> (d < m_compare)</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> {</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> x1 = 2.0*(((double)rand())/RAND_MAX) - 1.0;</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> x2 = 2.0*(((double)rand())/RAND_MAX) - 1.0;</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> x3 = 2.0*(((double)rand())/RAND_MAX) - 1.0;</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> temp = sqrt(x1*x1+x2*x2+x3*x3);</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="keywordflow">if</span> (temp <= 1)</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> {</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> x_compare[2*d+1] = acos(x3);</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="keywordflow">if</span> (x_compare[2*d+1] == 0 || x_compare[2*d+1] == <a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> {</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> x_compare[2*d] = 0.0;</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> }</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> {</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> x_compare[2*d] = atan2(x2/sin(x_compare[2*d+1]),x1/sin(x_compare[2*d+1]));</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> }</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> x_compare[2*d] *= 1.0/(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> x_compare[2*d+1] *= 1.0/(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> d++;</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> }</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> }</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> f_compare = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(m_compare*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> f = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(m_compare*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> }</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> }</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="comment">/* Initialize maximum cut-off degree and grid size parameter. */</span></div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> NQ_max = 0;</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> SQ_max = 0;</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="comment">/* Read the number of cut-off degrees. */</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> fscanf(stdin,<span class="stringliteral">"bandwidths=%d\n"</span>,&iNQ_max);</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> fprintf(stdout,<span class="stringliteral">"%d\n"</span>,iNQ_max);</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> </div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="comment">/* Allocate memory for the cut-off degrees and grid size parameters. */</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> NQ = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(iNQ_max*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> SQ = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(iNQ_max*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="keywordflow">if</span> (testmode == TIMING)</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> {</div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> RQ = (<span class="keywordtype">int</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(iNQ_max*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> }</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="comment">/* Read the cut-off degrees and grid size parameters. */</span></div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="keywordflow">for</span> (iNQ = 0; iNQ < iNQ_max; iNQ++)</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> {</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> <span class="keywordflow">if</span> (testmode == TIMING)</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> {</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> <span class="comment">/* Read cut-off degree and grid size parameter. */</span></div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> fscanf(stdin,<span class="stringliteral">"%d %d %d\n"</span>,&NQ[iNQ],&SQ[iNQ],&RQ[iNQ]);</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> fprintf(stdout,<span class="stringliteral">"%d %d %d\n"</span>,NQ[iNQ],SQ[iNQ],RQ[iNQ]);</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> NQ_max = <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(NQ_max,NQ[iNQ]);</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> SQ_max = <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(SQ_max,SQ[iNQ]);</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> }</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> {</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <span class="comment">/* Read cut-off degree and grid size parameter. */</span></div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> fscanf(stdin,<span class="stringliteral">"%d %d\n"</span>,&NQ[iNQ],&SQ[iNQ]);</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> fprintf(stdout,<span class="stringliteral">"%d %d\n"</span>,NQ[iNQ],SQ[iNQ]);</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> NQ_max = <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(NQ_max,NQ[iNQ]);</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> SQ_max = <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(SQ_max,SQ[iNQ]);</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> }</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> }</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> </div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <span class="comment">/* Do precomputation. */</span></div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="comment">//fprintf(stderr,"NFSFT Precomputation\n");</span></div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> nfsft_precompute(NQ_max, threshold,</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> ((use_nfsft==NO)?(NFSFT_NO_FAST_ALGORITHM):(0U)), 0U);</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> </div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="keywordflow">if</span> (testmode == TIMING)</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> {</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="comment">/* Allocate data structures. */</span></div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> f_hat = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(NFSFT_F_HAT_SIZE(NQ_max)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> f = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(SQ_max*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> x_grid = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*SQ_max*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="keywordflow">for</span> (d = 0; d < SQ_max; d++)</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> {</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> f[d] = (((double)rand())/RAND_MAX)-0.5 + _Complex_I*((((double)rand())/RAND_MAX)-0.5);</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> x_grid[2*d] = (((double)rand())/RAND_MAX) - 0.5;</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> x_grid[2*d+1] = (((double)rand())/RAND_MAX) * 0.5;</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> }</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> }</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> </div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="comment">//fprintf(stderr,"Entering loop\n");</span></div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="comment">/* Process all cut-off bandwidths. */</span></div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="keywordflow">for</span> (iNQ = 0; iNQ < iNQ_max; iNQ++)</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> {</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="keywordflow">if</span> (testmode == TIMING)</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> {</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> nfsft_init_guru(&plan,NQ[iNQ],SQ[iNQ], NFSFT_NORMALIZED |</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> ((use_nfft!=NO)?(0U):(NFSFT_USE_NDFT)) |</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> ((use_fpt!=NO)?(0U):(NFSFT_USE_DPT)),</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> PRE_PHI_HUT | PRE_PSI | FFTW_INIT | FFTW_MEASURE | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> cutoff);</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> plan.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = f_hat;</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> plan.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a> = x_grid;</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> plan.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = f;</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> </div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> nfsft_precompute_x(&plan);</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> </div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> t_avg = 0.0;</div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> </div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <span class="keywordflow">for</span> (i = 0; i < RQ[iNQ]; i++)</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> {</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> t0 = getticks();</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> </div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> {</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="comment">/* Execute the adjoint NFSFT transformation. */</span></div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> nfsft_adjoint(&plan);</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> }</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> {</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="comment">/* Execute the adjoint direct NDSFT transformation. */</span></div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> nfsft_adjoint_direct(&plan);</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> }</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> </div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> t1 = getticks();</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> t_avg += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> }</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> </div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> t_avg = t_avg/((double)RQ[iNQ]);</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> </div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> nfsft_finalize(&plan);</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> </div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> fprintf(stdout,<span class="stringliteral">"%+le\n"</span>, t_avg);</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> fprintf(stderr,<span class="stringliteral">"%d: %4d %4d %+le\n"</span>, tc, NQ[iNQ], SQ[iNQ], t_avg);</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> }</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> {</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="comment">/* Determine the maximum number of nodes. */</span></div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> <span class="keywordflow">switch</span> (gridtype)</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> {</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <span class="keywordflow">case</span> GRID_GAUSS_LEGENDRE:</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> <span class="comment">/* Calculate grid dimensions. */</span></div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> m_theta = SQ[iNQ] + 1;</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> m_phi = 2*SQ[iNQ] + 2;</div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> m_total = m_theta*m_phi;</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="keywordflow">case</span> GRID_CLENSHAW_CURTIS:</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> <span class="comment">/* Calculate grid dimensions. */</span></div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> m_theta = 2*SQ[iNQ] + 1;</div>
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> m_phi = 2*SQ[iNQ] + 2;</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> m_total = m_theta*m_phi;</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> <span class="keywordflow">case</span> GRID_HEALPIX:</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> m_theta = 1;</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> m_phi = 12*SQ[iNQ]*SQ[iNQ];</div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> m_total = m_theta * m_phi;</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> <span class="comment">//fprintf("HEALPix: SQ = %d, m_theta = %d, m_phi= %d, m");</span></div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="keywordflow">case</span> GRID_EQUIDISTRIBUTION:</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> <span class="keywordflow">case</span> GRID_EQUIDISTRIBUTION_UNIFORM:</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> m_theta = 2;</div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="comment">//fprintf(stderr,"ed: m_theta = %d\n",m_theta);</span></div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> <span class="keywordflow">for</span> (k = 1; k < SQ[iNQ]; k++)</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> {</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> m_theta += (int)floor((2*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)/acos((cos(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>/(<span class="keywordtype">double</span>)SQ[iNQ])-</div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> cos(k*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>/(<span class="keywordtype">double</span>)SQ[iNQ])*cos(k*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>/(<span class="keywordtype">double</span>)SQ[iNQ]))/</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> (sin(k*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>/(<span class="keywordtype">double</span>)SQ[iNQ])*sin(k*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>/(<span class="keywordtype">double</span>)SQ[iNQ]))));</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="comment">//fprintf(stderr,"ed: m_theta = %d\n",m_theta);</span></div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> }</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> <span class="comment">//fprintf(stderr,"ed: m_theta final = %d\n",m_theta);</span></div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> m_phi = 1;</div>
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> m_total = m_theta * m_phi;</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> }</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> </div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="comment">/* Allocate memory for data structures. */</span></div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> w = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(m_theta*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> x_grid = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*m_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> </div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="comment">//fprintf(stderr,"NQ = %d\n",NQ[iNQ]);</span></div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> <span class="keywordflow">switch</span> (gridtype)</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> {</div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="keywordflow">case</span> GRID_GAUSS_LEGENDRE:</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> <span class="comment">//fprintf(stderr,"Generating grid for NQ = %d, SQ = %d\n",NQ[iNQ],SQ[iNQ]);</span></div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> </div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="comment">/* Read quadrature weights. */</span></div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="keywordflow">for</span> (k = 0; k < m_theta; k++)</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> {</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> fscanf(stdin,<span class="stringliteral">"%le\n"</span>,&w[k]);</div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> w[k] *= (2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)/((<span class="keywordtype">double</span>)m_phi);</div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> }</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> </div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="comment">//fprintf(stderr,"Allocating theta and phi\n");</span></div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="comment">/* Allocate memory to store the grid's angles. */</span></div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> theta = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(m_theta*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> phi = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(m_phi*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> </div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="comment">//if (theta == NULL || phi == NULL)</span></div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="comment">//{</span></div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> <span class="comment">//fprintf(stderr,"Couldn't allocate theta and phi\n");</span></div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> <span class="comment">//}</span></div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> </div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> </div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="comment">/* Read angles theta. */</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="keywordflow">for</span> (k = 0; k < m_theta; k++)</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> {</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> fscanf(stdin,<span class="stringliteral">"%le\n"</span>,&theta[k]);</div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> }</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="comment">/* Generate the grid angles phi. */</span></div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> <span class="keywordflow">for</span> (n = 0; n < m_phi; n++)</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> {</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> phi[n] = n/((double)m_phi);</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> phi[n] -= ((phi[n]>=0.5)?(1.0):(0.0));</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> }</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> </div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> <span class="comment">//fprintf(stderr,"Generating grid nodes\n");</span></div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> </div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> <span class="comment">/* Generate the grid's nodes. */</span></div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> d = 0;</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> <span class="keywordflow">for</span> (k = 0; k < m_theta; k++)</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> {</div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="keywordflow">for</span> (n = 0; n < m_phi; n++)</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> {</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> x_grid[2*d] = phi[n];</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> x_grid[2*d+1] = theta[k];</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> d++;</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> }</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> }</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> </div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> <span class="comment">//fprintf(stderr,"Freeing theta and phi\n");</span></div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="comment">/* Free the arrays for the grid's angles. */</span></div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(theta);</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(phi);</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> </div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> </div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> <span class="keywordflow">case</span> GRID_CLENSHAW_CURTIS:</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> </div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="comment">/* Allocate memory to store the grid's angles. */</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> theta = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(m_theta*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> phi = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(m_phi*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> </div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <span class="comment">/* Generate the grid angles theta. */</span></div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> <span class="keywordflow">for</span> (k = 0; k < m_theta; k++)</div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> {</div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> theta[k] = k/((double)2*(m_theta-1));</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> }</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> </div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="comment">/* Generate the grid angles phi. */</span></div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="keywordflow">for</span> (n = 0; n < m_phi; n++)</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> {</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> phi[n] = n/((double)m_phi);</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> phi[n] -= ((phi[n]>=0.5)?(1.0):(0.0));</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> }</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> </div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="comment">/* Generate quadrature weights. */</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> fplan = fftw_plan_r2r_1d(SQ[iNQ]+1, w, w, FFTW_REDFT00, 0U);</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <span class="keywordflow">for</span> (k = 0; k < SQ[iNQ]+1; k++)</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> {</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> w[k] = -2.0/(4*k*k-1);</div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> }</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> fftw_execute(fplan);</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> w[0] *= 0.5;</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> </div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> <span class="keywordflow">for</span> (k = 0; k < SQ[iNQ]+1; k++)</div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> {</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> w[k] *= (2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)/((<span class="keywordtype">double</span>)(m_theta-1)*m_phi);</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> w[m_theta-1-k] = w[k];</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> }</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> fftw_destroy_plan(fplan);</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> </div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="comment">/* Generate the grid's nodes. */</span></div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> d = 0;</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> <span class="keywordflow">for</span> (k = 0; k < m_theta; k++)</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> {</div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="keywordflow">for</span> (n = 0; n < m_phi; n++)</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> {</div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> x_grid[2*d] = phi[n];</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> x_grid[2*d+1] = theta[k];</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> d++;</div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> }</div>
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> }</div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> </div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <span class="comment">/* Free the arrays for the grid's angles. */</span></div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(theta);</div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(phi);</div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> </div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> </div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="keywordflow">case</span> GRID_HEALPIX:</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> </div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> d = 0;</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> <span class="keywordflow">for</span> (k = 1; k <= SQ[iNQ]-1; k++)</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> {</div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="keywordflow">for</span> (n = 0; n <= 4*k-1; n++)</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> {</div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> x_grid[2*d+1] = 1 - (k*k)/((<span class="keywordtype">double</span>)(3.0*SQ[iNQ]*SQ[iNQ]));</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> x_grid[2*d] = ((n+0.5)/(4*k));</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> x_grid[2*d] -= (x_grid[2*d]>=0.5)?(1.0):(0.0);</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> d++;</div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> }</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> }</div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> </div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> d2 = d-1;</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> </div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="keywordflow">for</span> (k = SQ[iNQ]; k <= 3*SQ[iNQ]; k++)</div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> {</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> <span class="keywordflow">for</span> (n = 0; n <= 4*SQ[iNQ]-1; n++)</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> {</div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> x_grid[2*d+1] = 2.0/(3*SQ[iNQ])*(2*SQ[iNQ]-k);</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> x_grid[2*d] = (n+((k%2==0)?(0.5):(0.0)))/(4*SQ[iNQ]);</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> x_grid[2*d] -= (x_grid[2*d]>=0.5)?(1.0):(0.0);</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> d++;</div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> }</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> }</div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> </div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <span class="keywordflow">for</span> (k = 1; k <= SQ[iNQ]-1; k++)</div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> {</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <span class="keywordflow">for</span> (n = 0; n <= 4*k-1; n++)</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> {</div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> x_grid[2*d+1] = -x_grid[2*d2+1];</div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> x_grid[2*d] = x_grid[2*d2];</div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> d++;</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> d2--;</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> }</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> }</div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> </div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="keywordflow">for</span> (d = 0; d < m_total; d++)</div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> {</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> x_grid[2*d+1] = acos(x_grid[2*d+1])/(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> }</div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> </div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> w[0] = (4.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)/(m_total);</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> </div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <span class="keywordflow">case</span> GRID_EQUIDISTRIBUTION:</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> <span class="keywordflow">case</span> GRID_EQUIDISTRIBUTION_UNIFORM:</div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="comment">/* TODO Compute the weights. */</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> </div>
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> <span class="keywordflow">if</span> (gridtype == GRID_EQUIDISTRIBUTION)</div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> {</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> w_temp = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((SQ[iNQ]+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> fplan = fftw_plan_r2r_1d(SQ[iNQ]/2+1, w_temp, w_temp, FFTW_REDFT00, 0U);</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="keywordflow">for</span> (k = 0; k < SQ[iNQ]/2+1; k++)</div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> {</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> w_temp[k] = -2.0/(4*k*k-1);</div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> }</div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> fftw_execute(fplan);</div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> w_temp[0] *= 0.5;</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> </div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="keywordflow">for</span> (k = 0; k < SQ[iNQ]/2+1; k++)</div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> {</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> w_temp[k] *= (2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)/((<span class="keywordtype">double</span>)(SQ[iNQ]));</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> w_temp[SQ[iNQ]-k] = w_temp[k];</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> }</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> fftw_destroy_plan(fplan);</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> }</div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> </div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> d = 0;</div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> x_grid[2*d] = -0.5;</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> x_grid[2*d+1] = 0.0;</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="keywordflow">if</span> (gridtype == GRID_EQUIDISTRIBUTION)</div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> {</div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> w[d] = w_temp[0];</div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> }</div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> {</div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> w[d] = (4.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)/(m_total);</div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> }</div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> d = 1;</div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> x_grid[2*d] = -0.5;</div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> x_grid[2*d+1] = 0.5;</div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="keywordflow">if</span> (gridtype == GRID_EQUIDISTRIBUTION)</div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> {</div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> w[d] = w_temp[SQ[iNQ]];</div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> }</div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> {</div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> w[d] = (4.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)/(m_total);</div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> }</div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> d = 2;</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> </div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> <span class="keywordflow">for</span> (k = 1; k < SQ[iNQ]; k++)</div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> {</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> theta_s = (double)k*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>/(<span class="keywordtype">double</span>)SQ[iNQ];</div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> M = (int)floor((2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)/acos((cos(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>/(<span class="keywordtype">double</span>)SQ[iNQ])-</div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> cos(theta_s)*cos(theta_s))/(sin(theta_s)*sin(theta_s))));</div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> </div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="keywordflow">for</span> (n = 0; n < M; n++)</div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> {</div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> x_grid[2*d] = (n + 0.5)/M;</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> x_grid[2*d] -= (x_grid[2*d]>=0.5)?(1.0):(0.0);</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> x_grid[2*d+1] = theta_s/(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> <span class="keywordflow">if</span> (gridtype == GRID_EQUIDISTRIBUTION)</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> {</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> w[d] = w_temp[k]/((double)(M));</div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> }</div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> {</div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> w[d] = (4.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)/(m_total);</div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> }</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> d++;</div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> }</div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> }</div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> </div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> <span class="keywordflow">if</span> (gridtype == GRID_EQUIDISTRIBUTION)</div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> {</div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w_temp);</div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> }</div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> </div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="keywordflow">default</span>:</div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> }</div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> </div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> <span class="comment">/* Allocate memory for grid values. */</span></div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> f_grid = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(m_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> </div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> {</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> }</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> {</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> m_compare = m_total;</div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> f_compare = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(m_compare*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> x_compare = x_grid;</div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> f = f_grid;</div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> }</div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> </div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="comment">//fprintf(stderr,"Generating test function\n");</span></div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="keywordflow">switch</span> (testfunction)</div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> {</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="keywordflow">case</span> FUNCTION_RANDOM_BANDLIMITED:</div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> f_hat_gen = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(NFSFT_F_HAT_SIZE(N)*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> <span class="comment">//fprintf(stderr,"Generating random test function\n");</span></div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> <span class="comment">/* Generate random function samples by sampling a bandlimited</span></div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> <span class="comment"> * function. */</span></div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> nfsft_init_guru(&plan_gen,N,m_total, NFSFT_NORMALIZED |</div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> ((use_nfft!=NO)?(0U):(NFSFT_USE_NDFT)) |</div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> ((use_fpt!=NO)?(0U):(NFSFT_USE_DPT)),</div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> ((N>512)?(0U):(PRE_PHI_HUT | PRE_PSI)) | FFTW_INIT |</div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> FFT_OUT_OF_PLACE, cutoff);</div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> </div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> plan_gen.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = f_hat_gen;</div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> plan_gen.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a> = x_grid;</div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> plan_gen.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = f_grid;</div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> </div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> nfsft_precompute_x(&plan_gen);</div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> </div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <span class="keywordflow">for</span> (k = 0; k < plan_gen.<a class="code" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8" title="Total number of Fourier coefficients.">N_total</a>; k++)</div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> {</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> f_hat_gen[k] = 0.0;</div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> }</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> </div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <span class="keywordflow">for</span> (k = 0; k <= N; k++)</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> {</div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> <span class="keywordflow">for</span> (n = -k; n <= k; n++)</div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> {</div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> f_hat_gen[NFSFT_INDEX(k,n,&plan_gen)] =</div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> (((double)rand())/RAND_MAX)-0.5 + _Complex_I*((((double)rand())/RAND_MAX)-0.5);</div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> }</div>
-<div class="line"><a name="l00706"></a><span class="lineno"> 706</span> }</div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> </div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> {</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> <span class="comment">/* Execute the NFSFT transformation. */</span></div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> nfsft_trafo(&plan_gen);</div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> }</div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> {</div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> <span class="comment">/* Execute the direct NDSFT transformation. */</span></div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> nfsft_trafo_direct(&plan_gen);</div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> }</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> </div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> nfsft_finalize(&plan_gen);</div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> </div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> {</div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> nfsft_init_guru(&plan_gen,N,m_compare, NFSFT_NORMALIZED |</div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> ((use_nfft!=NO)?(0U):(NFSFT_USE_NDFT)) |</div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> ((use_fpt!=NO)?(0U):(NFSFT_USE_DPT)),</div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> ((N>512)?(0U):(PRE_PHI_HUT | PRE_PSI)) | FFTW_INIT |</div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> FFT_OUT_OF_PLACE, cutoff);</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> </div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> plan_gen.<a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = f_hat_gen;</div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> plan_gen.<a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a> = x_compare;</div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> plan_gen.<a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = f_compare;</div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> </div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> nfsft_precompute_x(&plan_gen);</div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> </div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> {</div>
-<div class="line"><a name="l00737"></a><span class="lineno"> 737</span> <span class="comment">/* Execute the NFSFT transformation. */</span></div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> nfsft_trafo(&plan_gen);</div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> }</div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> {</div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> <span class="comment">/* Execute the direct NDSFT transformation. */</span></div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> nfsft_trafo_direct(&plan_gen);</div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> }</div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> </div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> nfsft_finalize(&plan_gen);</div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> }</div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> {</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> memcpy(f_compare,f_grid,m_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> }</div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> </div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat_gen);</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> </div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> </div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> <span class="keywordflow">case</span> FUNCTION_F1:</div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> <span class="keywordflow">for</span> (d = 0; d < m_total; d++)</div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> {</div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> x1 = sin(x_grid[2*d+1]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)*cos(x_grid[2*d]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> x2 = sin(x_grid[2*d+1]*2.0*PI)*sin(x_grid[2*d]*2.0*PI);</div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> x3 = cos(x_grid[2*d+1]*2.0*PI);</div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> f_grid[d] = x1*x2*x3;</div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> }</div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> {</div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="keywordflow">for</span> (d = 0; d < m_compare; d++)</div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> {</div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> x1 = sin(x_compare[2*d+1]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)*cos(x_compare[2*d]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> x2 = sin(x_compare[2*d+1]*2.0*PI)*sin(x_compare[2*d]*2.0*PI);</div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> x3 = cos(x_compare[2*d+1]*2.0*PI);</div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> f_compare[d] = x1*x2*x3;</div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> }</div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> }</div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> {</div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> memcpy(f_compare,f_grid,m_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> }</div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> <span class="keywordflow">case</span> FUNCTION_F2:</div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> <span class="keywordflow">for</span> (d = 0; d < m_total; d++)</div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> {</div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> x1 = sin(x_grid[2*d+1]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)*cos(x_grid[2*d]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> x2 = sin(x_grid[2*d+1]*2.0*PI)*sin(x_grid[2*d]*2.0*PI);</div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> x3 = cos(x_grid[2*d+1]*2.0*PI);</div>
-<div class="line"><a name="l00786"></a><span class="lineno"> 786</span> f_grid[d] = 0.1*exp(x1+x2+x3);</div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> }</div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> {</div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="keywordflow">for</span> (d = 0; d < m_compare; d++)</div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> {</div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> x1 = sin(x_compare[2*d+1]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)*cos(x_compare[2*d]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> x2 = sin(x_compare[2*d+1]*2.0*PI)*sin(x_compare[2*d]*2.0*PI);</div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> x3 = cos(x_compare[2*d+1]*2.0*PI);</div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> f_compare[d] = 0.1*exp(x1+x2+x3);</div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> }</div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> }</div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> {</div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> memcpy(f_compare,f_grid,m_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> }</div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> <span class="keywordflow">case</span> FUNCTION_F3:</div>
-<div class="line"><a name="l00804"></a><span class="lineno"> 804</span> <span class="keywordflow">for</span> (d = 0; d < m_total; d++)</div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> {</div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> x1 = sin(x_grid[2*d+1]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)*cos(x_grid[2*d]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> x2 = sin(x_grid[2*d+1]*2.0*PI)*sin(x_grid[2*d]*2.0*PI);</div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> x3 = cos(x_grid[2*d+1]*2.0*PI);</div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> temp = sqrt(x1*x1)+sqrt(x2*x2)+sqrt(x3*x3);</div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> f_grid[d] = 0.1*temp;</div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> }</div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> {</div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> <span class="keywordflow">for</span> (d = 0; d < m_compare; d++)</div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> {</div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> x1 = sin(x_compare[2*d+1]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)*cos(x_compare[2*d]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> x2 = sin(x_compare[2*d+1]*2.0*PI)*sin(x_compare[2*d]*2.0*PI);</div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> x3 = cos(x_compare[2*d+1]*2.0*PI);</div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> temp = sqrt(x1*x1)+sqrt(x2*x2)+sqrt(x3*x3);</div>
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> f_compare[d] = 0.1*temp;</div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> }</div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> }</div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> {</div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> memcpy(f_compare,f_grid,m_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> }</div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> <span class="keywordflow">case</span> FUNCTION_F4:</div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> <span class="keywordflow">for</span> (d = 0; d < m_total; d++)</div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> {</div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> x1 = sin(x_grid[2*d+1]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)*cos(x_grid[2*d]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> x2 = sin(x_grid[2*d+1]*2.0*PI)*sin(x_grid[2*d]*2.0*PI);</div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> x3 = cos(x_grid[2*d+1]*2.0*PI);</div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> temp = sqrt(x1*x1)+sqrt(x2*x2)+sqrt(x3*x3);</div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> f_grid[d] = 1.0/(temp);</div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> }</div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> {</div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> <span class="keywordflow">for</span> (d = 0; d < m_compare; d++)</div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> {</div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> x1 = sin(x_compare[2*d+1]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)*cos(x_compare[2*d]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> x2 = sin(x_compare[2*d+1]*2.0*PI)*sin(x_compare[2*d]*2.0*PI);</div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> x3 = cos(x_compare[2*d+1]*2.0*PI);</div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> temp = sqrt(x1*x1)+sqrt(x2*x2)+sqrt(x3*x3);</div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> f_compare[d] = 1.0/(temp);</div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> }</div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> }</div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> {</div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> memcpy(f_compare,f_grid,m_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> }</div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> <span class="keywordflow">case</span> FUNCTION_F5:</div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> <span class="keywordflow">for</span> (d = 0; d < m_total; d++)</div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> {</div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> x1 = sin(x_grid[2*d+1]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)*cos(x_grid[2*d]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> x2 = sin(x_grid[2*d+1]*2.0*PI)*sin(x_grid[2*d]*2.0*PI);</div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> x3 = cos(x_grid[2*d+1]*2.0*PI);</div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> temp = sqrt(x1*x1)+sqrt(x2*x2)+sqrt(x3*x3);</div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> f_grid[d] = 0.1*sin(1+temp)*sin(1+temp);</div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> }</div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> {</div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="keywordflow">for</span> (d = 0; d < m_compare; d++)</div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> {</div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> x1 = sin(x_compare[2*d+1]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>)*cos(x_compare[2*d]*2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>);</div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> x2 = sin(x_compare[2*d+1]*2.0*PI)*sin(x_compare[2*d]*2.0*PI);</div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> x3 = cos(x_compare[2*d+1]*2.0*PI);</div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> temp = sqrt(x1*x1)+sqrt(x2*x2)+sqrt(x3*x3);</div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> f_compare[d] = 0.1*sin(1+temp)*sin(1+temp);</div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> }</div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> }</div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> {</div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> memcpy(f_compare,f_grid,m_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> }</div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> <span class="keywordflow">case</span> FUNCTION_F6:</div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> <span class="keywordflow">for</span> (d = 0; d < m_total; d++)</div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> {</div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> <span class="keywordflow">if</span> (x_grid[2*d+1] <= 0.25)</div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> {</div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> f_grid[d] = 1.0;</div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> }</div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> {</div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> f_grid[d] = 1.0/(sqrt(1+3*cos(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*x_grid[2*d+1])*cos(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*x_grid[2*d+1])));</div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> }</div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> }</div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> {</div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> <span class="keywordflow">for</span> (d = 0; d < m_compare; d++)</div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> {</div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> <span class="keywordflow">if</span> (x_compare[2*d+1] <= 0.25)</div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> {</div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> f_compare[d] = 1.0;</div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> }</div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> {</div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> f_compare[d] = 1.0/(sqrt(1+3*cos(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*x_compare[2*d+1])*cos(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*x_compare[2*d+1])));</div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> }</div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> }</div>
-<div class="line"><a name="l00903"></a><span class="lineno"> 903</span> }</div>
-<div class="line"><a name="l00904"></a><span class="lineno"> 904</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00905"></a><span class="lineno"> 905</span> {</div>
-<div class="line"><a name="l00906"></a><span class="lineno"> 906</span> memcpy(f_compare,f_grid,m_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00907"></a><span class="lineno"> 907</span> }</div>
-<div class="line"><a name="l00908"></a><span class="lineno"> 908</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00909"></a><span class="lineno"> 909</span> <span class="keywordflow">default</span>:</div>
-<div class="line"><a name="l00910"></a><span class="lineno"> 910</span> <span class="comment">//fprintf(stderr,"Generating one function\n");</span></div>
-<div class="line"><a name="l00911"></a><span class="lineno"> 911</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00912"></a><span class="lineno"> 912</span> <span class="keywordflow">for</span> (d = 0; d < m_total; d++)</div>
-<div class="line"><a name="l00913"></a><span class="lineno"> 913</span> {</div>
-<div class="line"><a name="l00914"></a><span class="lineno"> 914</span> f_grid[d] = 1.0;</div>
-<div class="line"><a name="l00915"></a><span class="lineno"> 915</span> }</div>
-<div class="line"><a name="l00916"></a><span class="lineno"> 916</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00917"></a><span class="lineno"> 917</span> {</div>
-<div class="line"><a name="l00918"></a><span class="lineno"> 918</span> <span class="keywordflow">for</span> (d = 0; d < m_compare; d++)</div>
-<div class="line"><a name="l00919"></a><span class="lineno"> 919</span> {</div>
-<div class="line"><a name="l00920"></a><span class="lineno"> 920</span> f_compare[d] = 1.0;</div>
-<div class="line"><a name="l00921"></a><span class="lineno"> 921</span> }</div>
-<div class="line"><a name="l00922"></a><span class="lineno"> 922</span> }</div>
-<div class="line"><a name="l00923"></a><span class="lineno"> 923</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00924"></a><span class="lineno"> 924</span> {</div>
-<div class="line"><a name="l00925"></a><span class="lineno"> 925</span> memcpy(f_compare,f_grid,m_total*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00926"></a><span class="lineno"> 926</span> }</div>
-<div class="line"><a name="l00927"></a><span class="lineno"> 927</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00928"></a><span class="lineno"> 928</span> }</div>
-<div class="line"><a name="l00929"></a><span class="lineno"> 929</span> </div>
-<div class="line"><a name="l00930"></a><span class="lineno"> 930</span> <span class="comment">//fprintf(stderr,"Initializing trafo\n");</span></div>
-<div class="line"><a name="l00931"></a><span class="lineno"> 931</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00932"></a><span class="lineno"> 932</span> <span class="comment">/* Init transform plan. */</span></div>
-<div class="line"><a name="l00933"></a><span class="lineno"> 933</span> nfsft_init_guru(&plan_adjoint,NQ[iNQ],m_total, NFSFT_NORMALIZED |</div>
-<div class="line"><a name="l00934"></a><span class="lineno"> 934</span> ((use_nfft!=NO)?(0U):(NFSFT_USE_NDFT)) |</div>
-<div class="line"><a name="l00935"></a><span class="lineno"> 935</span> ((use_fpt!=NO)?(0U):(NFSFT_USE_DPT)),</div>
-<div class="line"><a name="l00936"></a><span class="lineno"> 936</span> ((NQ[iNQ]>512)?(0U):(PRE_PHI_HUT | PRE_PSI)) | FFTW_INIT |</div>
-<div class="line"><a name="l00937"></a><span class="lineno"> 937</span> FFT_OUT_OF_PLACE, cutoff);</div>
-<div class="line"><a name="l00938"></a><span class="lineno"> 938</span> </div>
-<div class="line"><a name="l00939"></a><span class="lineno"> 939</span> plan_adjoint_ptr = &plan_adjoint;</div>
-<div class="line"><a name="l00940"></a><span class="lineno"> 940</span> </div>
-<div class="line"><a name="l00941"></a><span class="lineno"> 941</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l00942"></a><span class="lineno"> 942</span> {</div>
-<div class="line"><a name="l00943"></a><span class="lineno"> 943</span> nfsft_init_guru(&plan,NQ[iNQ],m_compare, NFSFT_NORMALIZED |</div>
-<div class="line"><a name="l00944"></a><span class="lineno"> 944</span> ((use_nfft!=NO)?(0U):(NFSFT_USE_NDFT)) |</div>
-<div class="line"><a name="l00945"></a><span class="lineno"> 945</span> ((use_fpt!=NO)?(0U):(NFSFT_USE_DPT)),</div>
-<div class="line"><a name="l00946"></a><span class="lineno"> 946</span> ((NQ[iNQ]>512)?(0U):(PRE_PHI_HUT | PRE_PSI)) | FFTW_INIT |</div>
-<div class="line"><a name="l00947"></a><span class="lineno"> 947</span> FFT_OUT_OF_PLACE, cutoff);</div>
-<div class="line"><a name="l00948"></a><span class="lineno"> 948</span> plan_ptr = &plan;</div>
-<div class="line"><a name="l00949"></a><span class="lineno"> 949</span> }</div>
-<div class="line"><a name="l00950"></a><span class="lineno"> 950</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> {</div>
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> plan_ptr = &plan_adjoint;</div>
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> }</div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> </div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> f_hat = (<span class="keywordtype">double</span> _Complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(NFSFT_F_HAT_SIZE(NQ[iNQ])*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> </div>
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> plan_adjoint_ptr-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = f_hat;</div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> plan_adjoint_ptr-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a> = x_grid;</div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> plan_adjoint_ptr-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = f_grid;</div>
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> </div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> plan_ptr-><a class="code" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a> = f_hat;</div>
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> plan_ptr-><a class="code" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90" title="the nodes for , ">x</a> = x_compare;</div>
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> plan_ptr-><a class="code" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a> = f;</div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> </div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="comment">//fprintf(stderr,"Precomputing for x\n");</span></div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> nfsft_precompute_x(plan_adjoint_ptr);</div>
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> <span class="keywordflow">if</span> (plan_adjoint_ptr != plan_ptr)</div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> {</div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> nfsft_precompute_x(plan_ptr);</div>
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> }</div>
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> </div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> <span class="comment">/* Initialize cumulative time variable. */</span></div>
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> t_avg = 0.0;</div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> err_infty_avg = 0.0;</div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> err_2_avg = 0.0;</div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> </div>
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> <span class="comment">/* Cycle through all runs. */</span></div>
-<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> <span class="keywordflow">for</span> (i = 0; i < 1<span class="comment">/*repetitions*/</span>; i++)</div>
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> {</div>
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> <span class="comment">//fprintf(stderr,"Copying original values\n");</span></div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> <span class="comment">/* Copy exact funtion values to working array. */</span></div>
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> <span class="comment">//memcpy(f,f_grid,m_total*sizeof(double _Complex));</span></div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> </div>
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> <span class="comment">/* Initialize time measurement. */</span></div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> t0 = getticks();</div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> </div>
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> <span class="comment">//fprintf(stderr,"Multiplying with quadrature weights\n");</span></div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> <span class="comment">/* Multiplication with the quadrature weights. */</span></div>
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> <span class="comment">/*fprintf(stderr,"\n");*/</span></div>
-<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> d = 0;</div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> <span class="keywordflow">for</span> (k = 0; k < m_theta; k++)</div>
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> {</div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> <span class="keywordflow">for</span> (n = 0; n < m_phi; n++)</div>
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> {</div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> <span class="comment">/*fprintf(stderr,"f_ref[%d] = %le + I*%le,\t f[%d] = %le + I*%le, \t w[%d] = %le\n",</span></div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> <span class="comment"> d,creal(f_ref[d]),cimag(f_ref[d]),d,creal(f[d]),cimag(f[d]),k,</span></div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> <span class="comment"> w[k]);*/</span></div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> f_grid[d] *= w[k];</div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> d++;</div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> }</div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> }</div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> </div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> t1 = getticks();</div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> t_avg += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> </div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> </div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> t0 = getticks();</div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> </div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="comment">/*fprintf(stderr,"\n");</span></div>
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> <span class="comment"> d = 0;</span></div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> <span class="comment"> for (d = 0; d < grid_total; d++)</span></div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> <span class="comment"> fprintf(stderr,"f[%d] = %le + I*%le, theta[%d] = %le, phi[%d] = %le\n",</span></div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> <span class="comment"> d,creal(f[d]),cimag(f[d]),d,x[2*d+1],d,x[2*d]);</span></div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> <span class="comment"> }*/</span></div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> </div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> <span class="comment">//fprintf(stderr,"Executing adjoint\n");</span></div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> <span class="comment">/* Check if the fast NFSFT algorithm shall be tested. */</span></div>
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> {</div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> <span class="comment">/* Execute the adjoint NFSFT transformation. */</span></div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span> nfsft_adjoint(plan_adjoint_ptr);</div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> }</div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> {</div>
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span> <span class="comment">/* Execute the adjoint direct NDSFT transformation. */</span></div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> nfsft_adjoint_direct(plan_adjoint_ptr);</div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span> }</div>
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> </div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> <span class="comment">/* Multiplication with the Fourier-Legendre coefficients. */</span></div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> <span class="comment">/*for (k = 0; k <= m[im]; k++)</span></div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span> <span class="comment"> for (n = -k; n <= k; n++)</span></div>
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span> <span class="comment"> fprintf(stderr,"f_hat[%d,%d] = %le\t + I*%le\n",k,n,</span></div>
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> <span class="comment"> creal(f_hat[NFSFT_INDEX(k,n,&plan_adjoint)]),</span></div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> <span class="comment"> cimag(f_hat[NFSFT_INDEX(k,n,&plan_adjoint)]));</span></div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span> <span class="comment"> }</span></div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span> <span class="comment"> }*/</span></div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> </div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> <span class="comment">//fprintf(stderr,"Executing trafo\n");</span></div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> <span class="keywordflow">if</span> (use_nfsft != NO)</div>
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span> {</div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> <span class="comment">/* Execute the NFSFT transformation. */</span></div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span> nfsft_trafo(plan_ptr);</div>
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> }</div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> {</div>
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> <span class="comment">/* Execute the direct NDSFT transformation. */</span></div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> nfsft_trafo_direct(plan_ptr);</div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> }</div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> </div>
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> t1 = getticks();</div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> t_avg += nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> </div>
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> <span class="comment">//fprintf(stderr,"Finalizing\n");</span></div>
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span> <span class="comment">/* Finalize the NFSFT plans */</span></div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> nfsft_finalize(plan_adjoint_ptr);</div>
-<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> <span class="keywordflow">if</span> (plan_ptr != plan_adjoint_ptr)</div>
-<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> {</div>
-<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> nfsft_finalize(plan_ptr);</div>
-<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> }</div>
-<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> </div>
-<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> <span class="comment">/* Free data arrays. */</span></div>
-<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x_grid);</div>
-<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> </div>
-<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> err_infty_avg += X(error_l_infty_complex)(f, f_compare, m_compare);</div>
-<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> err_2_avg += X(error_l_2_complex)(f, f_compare, m_compare);</div>
-<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> </div>
-<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_grid);</div>
-<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> </div>
-<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> {</div>
-<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> }</div>
-<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> {</div>
-<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_compare);</div>
-<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> }</div>
-<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> </div>
-<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> <span class="comment">/*for (d = 0; d < m_total; d++)</span></div>
-<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> <span class="comment"> {</span></div>
-<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span> <span class="comment"> fprintf(stderr,"f_ref[%d] = %le + I*%le,\t f[%d] = %le + I*%le\n",</span></div>
-<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> <span class="comment"> d,creal(f_ref[d]),cimag(f_ref[d]),d,creal(f[d]),cimag(f[d]));</span></div>
-<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> <span class="comment"> }*/</span></div>
-<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> }</div>
-<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> </div>
-<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span> <span class="comment">//fprintf(stderr,"Calculating the error\n");</span></div>
-<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> <span class="comment">//fflush(stderr);</span></div>
-<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> <span class="comment">/* Calculate average time needed. */</span></div>
-<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> t_avg = t_avg/((double)repetitions);</div>
-<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> </div>
-<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span> <span class="comment">/* Calculate the average error. */</span></div>
-<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> err_infty_avg = err_infty_avg/((double)repetitions);</div>
-<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span> </div>
-<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span> <span class="comment">/* Calculate the average error. */</span></div>
-<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> err_2_avg = err_2_avg/((double)repetitions);</div>
-<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> </div>
-<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> <span class="comment">/* Print out the error measurements. */</span></div>
-<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span> fprintf(stdout,<span class="stringliteral">"%+le %+le %+le\n"</span>, t_avg, err_infty_avg, err_2_avg);</div>
-<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span> fprintf(stderr,<span class="stringliteral">"%d: %4d %4d %+le %+le %+le\n"</span>, tc, NQ[iNQ], SQ[iNQ],</div>
-<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span> t_avg, err_infty_avg, err_2_avg);</div>
-<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span> }</div>
-<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span> } <span class="comment">/* for (im = 0; im < im_max; im++) - Process all cut-off</span></div>
-<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span> <span class="comment"> * bandwidths.*/</span></div>
-<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span> fprintf(stderr,<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span> </div>
-<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span> <span class="comment">/* Delete precomputed data. */</span></div>
-<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span> nfsft_forget();</div>
-<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span> </div>
-<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span> <span class="comment">/* Free memory for cut-off bandwidths and grid size parameters. */</span></div>
-<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(NQ);</div>
-<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(SQ);</div>
-<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span> <span class="keywordflow">if</span> (testmode == TIMING)</div>
-<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span> {</div>
-<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(RQ);</div>
-<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span> }</div>
-<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span> </div>
-<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span> <span class="keywordflow">if</span> (mode == RANDOM)</div>
-<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span> {</div>
-<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x_compare);</div>
-<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_compare);</div>
-<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span> }</div>
-<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span> </div>
-<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span> <span class="keywordflow">if</span> (testmode == TIMING)</div>
-<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span> {</div>
-<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span> <span class="comment">/* Allocate data structures. */</span></div>
-<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f_hat);</div>
-<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x_grid);</div>
-<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span> }</div>
-<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span> </div>
-<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span> } <span class="comment">/* for (tc = 0; tc < tc_max; tc++) - Process each testcase. */</span></div>
-<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span> </div>
-<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span> <span class="comment">/* Return exit code for successful run. */</span></div>
-<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span> }</div>
-<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/radon_8c.html b/doc/api/html/radon_8c.html
deleted file mode 100644
index 78be6b7..0000000
--- a/doc/api/html/radon_8c.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - radon.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_0c7f2452bc84fa0fc4195fb15953ec53.html">radon</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#define-members">Macros</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">radon.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>NFFT-based discrete Radon transform.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <stdio.h></code><br/>
-<code>#include <math.h></code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include <string.h></code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-</div>
-<p><a href="radon_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:a0091bbc07c9570a2ab0dac372c2104f1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0091bbc07c9570a2ab0dac372c2104f1"></a>
-#define </td><td class="memItemRight" valign="bottom"><a class="el" href="radon_8c.html#a0091bbc07c9570a2ab0dac372c2104f1">KERNEL</a>(r) (1.0-fabs((double)(r))/((double)R/2))</td></tr>
-<tr class="memdesc:a0091bbc07c9570a2ab0dac372c2104f1"><td class="mdescLeft"> </td><td class="mdescRight">define weights of kernel function for discrete Radon transform <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a307b67b4c00a1c756f140c7fa831cdae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a307b67b4c00a1c756f140c7fa831cdae"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae">polar_grid</a> (int T, int R, double *x, double *w)</td></tr>
-<tr class="memdesc:a307b67b4c00a1c756f140c7fa831cdae"><td class="mdescLeft"> </td><td class="mdescRight">generates the points x with weights w for the polar grid with T angles and R offsets <br/></td></tr>
-<tr class="memitem:a9a5ff165ab1e23af77ab6f6108bb6310"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a5ff165ab1e23af77ab6f6108bb6310"></a>
-static int </td><td class="memItemRight" valign="bottom"><a class="el" href="radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310">linogram_grid</a> (int T, int R, double *x, double *w)</td></tr>
-<tr class="memdesc:a9a5ff165ab1e23af77ab6f6108bb6310"><td class="mdescLeft"> </td><td class="mdescRight">generates the points x with weights w for the linogram grid with T slopes and R offsets <br/></td></tr>
-<tr class="memitem:a01ba457f6edb3193453204cc702ac5ca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a01ba457f6edb3193453204cc702ac5ca"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="radon_8c.html#a01ba457f6edb3193453204cc702ac5ca">Radon_trafo</a> (int(*gridfcn)(), int T, int R, double *f, int NN, double *Rf)</td></tr>
-<tr class="memdesc:a01ba457f6edb3193453204cc702ac5ca"><td class="mdescLeft"> </td><td class="mdescRight">computes the NFFT-based discrete Radon transform of f on the grid given by gridfcn() with T angles and R offsets <br/></td></tr>
-<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="radon_8c.html#a3c04138a5bfe5d72780bb7e82a18e627">main</a> (int argc, char **argv)</td></tr>
-<tr class="memdesc:a3c04138a5bfe5d72780bb7e82a18e627"><td class="mdescLeft"> </td><td class="mdescRight">simple test program for the discrete Radon transform <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>NFFT-based discrete Radon transform. </p>
-<p>Computes the discrete Radon transform </p>
-<p class="formulaDsp">
-<img class="formulaDsp" alt="\[ R_{\theta_t} f\left(\frac{s}{R}\right) = \sum_{r \in I_R} w_r \; \sum_{k \in I_N^2} f_{k} \mathrm{e}^{-2\pi\mathrm{I} k \; (\frac{r}{R}\theta_t)} \, \mathrm{e}^{2\pi\mathrm{i} r s / R} \qquad(t \in I_T, s \in I_R). \]" src="form_134.png"/>
-</p>
-<p> by taking the 2D-NFFT of <img class="formulaInl" alt="$f_k$" src="form_137.png"/> ( <img class="formulaInl" alt="$k \in I_N^2$" src="form_138.png"/>) at the points <img class="formulaInl" alt="$\frac{r}{R}\theta_t$" src="form_135.png"/> of the polar or linogram grid followed by 1D-iFFTs for every direction <img class="formulaInl" alt="$t \in T$" src="form_139.png"/>, where <img class="formulaInl" alt="$w_r$" src="form_136.png"/> are the weights of the Dirichlet- or Fejer-kernel. </p>
-<dl class="section author"><dt>Author:</dt><dd>Markus Fenn </dd></dl>
-<dl class="section date"><dt>Date:</dt><dd>2005 </dd></dl>
-
-<p>Definition in file <a class="el" href="radon_8c_source.html">radon.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/radon_8c_source.html b/doc/api/html/radon_8c_source.html
deleted file mode 100644
index 6502a10..0000000
--- a/doc/api/html/radon_8c_source.html
+++ /dev/null
@@ -1,266 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - radon.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_0c7f2452bc84fa0fc4195fb15953ec53.html">radon</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">radon.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="radon_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: radon.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment">/*#define KERNEL(r) 1.0 */</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"><a class="code" href="radon_8c.html#a0091bbc07c9570a2ab0dac372c2104f1"> 55</a></span> <span class="preprocessor">#define KERNEL(r) (1.0-fabs((double)(r))/((double)R/2))</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"><a class="code" href="radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae"> 60</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae" title="generates the points x with weights w for the polar grid with T angles and R offsets">polar_grid</a>(<span class="keywordtype">int</span> T, <span class="keywordtype">int</span> R, <span c [...]
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> {</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">int</span> t, r;</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordtype">double</span> W=(double)T*(((<span class="keywordtype">double</span>)R/2.0)*((double)R/2.0)+1.0/4.0);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">for</span>(t=-T/2; t<T/2; t++)</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> {</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordflow">for</span>(r=-R/2; r<R/2; r++)</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> {</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> x[2*((t+T/2)*R+(r+R/2))+0] = (<span class="keywordtype">double</span>)r/R*cos(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*t/T);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> x[2*((t+T/2)*R+(r+R/2))+1] = (<span class="keywordtype">double</span>)r/R*sin(<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*t/T);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="keywordflow">if</span> (r==0)</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> w[(t+T/2)*R+(r+R/2)] = 1.0/4.0/W;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> w[(t+T/2)*R+(r+R/2)] = fabs((<span class="keywordtype">double</span>)r)/W;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> }</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> }</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> }</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00084"></a><span class="lineno"><a class="code" href="radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310"> 84</a></span> <span class="keyword">static</span> <span class="keywordtype">int</span> <a class="code" href="radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310" title="generates the points x with weights w for the linogram grid with T slopes and R offsets">linogram_grid</a>(<span class="keywordtype">int</span> T, <span class="keywordtype">int</span> R, < [...]
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> {</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordtype">int</span> t, r;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">double</span> W=(double)T*(((<span class="keywordtype">double</span>)R/2.0)*((double)R/2.0)+1.0/4.0);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">for</span>(t=-T/2; t<T/2; t++)</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> {</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">for</span>(r=-R/2; r<R/2; r++)</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> {</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">if</span>(t<0)</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> {</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> x[2*((t+T/2)*R+(r+R/2))+0] = (<span class="keywordtype">double</span>)r/R;</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> x[2*((t+T/2)*R+(r+R/2))+1] = (<span class="keywordtype">double</span>)4*(t+T/4)/T*r/R;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> }</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> {</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> x[2*((t+T/2)*R+(r+R/2))+0] = -(<span class="keywordtype">double</span>)4*(t-T/4)/T*r/R;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> x[2*((t+T/2)*R+(r+R/2))+1] = (<span class="keywordtype">double</span>)r/R;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">if</span> (r==0)</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> w[(t+T/2)*R+(r+R/2)] = 1.0/4.0/W;</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> w[(t+T/2)*R+(r+R/2)] = fabs((<span class="keywordtype">double</span>)r)/W;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> }</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> }</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> }</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div>
-<div class="line"><a name="l00116"></a><span class="lineno"><a class="code" href="radon_8c.html#a01ba457f6edb3193453204cc702ac5ca"> 116</a></span> <span class="keywordtype">int</span> <a class="code" href="radon_8c.html#a01ba457f6edb3193453204cc702ac5ca" title="computes the NFFT-based discrete Radon transform of f on the grid given by gridfcn() with T angles an...">Radon_trafo</a>(<span class="keywordtype">int</span> (*gridfcn)(), <span class="keywordtype">int</span> T, <span class [...]
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> {</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">int</span> j,k; </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_nfft_plan; </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> fftw_complex *<a class="code" href="group__applications__mri3d__construct__data__1d2d.html#gafa82bf5df93804a1760082b88492b8d5" title="fft makes an 1D-ftt for every knot through all layers">fft</a>; </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> fftw_plan my_fftw_plan; </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="keywordtype">int</span> t,r; </div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordtype">double</span> *x, *w; </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordtype">int</span> N[2],n[2];</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">int</span> M=T*R;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> N[0]=NN; n[0]=2*N[0];</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> N[1]=NN; n[1]=2*N[1];</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> fft = (fftw_complex *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(R*<span class="keyword">sizeof</span>(fftw_complex));</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> my_fftw_plan = fftw_plan_dft_1d(R,fft,fft,FFTW_BACKWARD,FFTW_MEASURE);</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> x = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(2*T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">if</span> (x==NULL)</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> w = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="keywordflow">if</span> (w==NULL)</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> nfft_init_guru(&my_nfft_plan, 2, N, M, n, 4,</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> PRE_PHI_HUT| PRE_PSI| MALLOC_X | MALLOC_F_HAT| MALLOC_F| FFTW_INIT | FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> gridfcn(T,R,x,w);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">for</span>(j=0;j<my_nfft_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> {</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0] = x[2*j+0];</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1] = x[2*j+1];</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> }</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> nfft_precompute_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> </div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">if</span>(my_nfft_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> nfft_precompute_full_psi(&my_nfft_plan);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="keywordflow">for</span>(k=0;k<my_nfft_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> my_nfft_plan.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[k] = f[k] + _Complex_I*0.0;</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&my_nfft_plan);</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> </div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="keywordflow">for</span>(t=0; t<T; t++)</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> {</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> fft[0]=0.0;</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">for</span>(r=-R/2+1; r<R/2; r++)</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> fft[r+R/2] = <a class="code" href="radon_8c.html#a0091bbc07c9570a2ab0dac372c2104f1" title="define weights of kernel function for discrete Radon transform">KERNEL</a>(r)*my_nfft_plan.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>[t*R+(r+R/2)];</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <a class="code" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770" title="Swaps each half over N[d]/2.">nfft_fftshift_complex</a>(fft, 1, &R);</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> fftw_execute(my_fftw_plan);</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <a class="code" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770" title="Swaps each half over N[d]/2.">nfft_fftshift_complex</a>(fft, 1, &R);</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">for</span>(r=0; r<R; r++)</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> Rf[t*R+r] = creal(fft[r])/R;</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> </div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment">/* for(r=0; r<R/2; r++)</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment"> Rf[t*R+(r+R/2)] = creal(cexp(-I*PI*r)*fft[r]);</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="comment"> for(r=0; r<R/2; r++)</span></div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment"> Rf[t*R+r] = creal(cexp(-I*PI*r)*fft[r+R/2]);</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> }</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> fftw_destroy_plan(my_fftw_plan);</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(fft);</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> nfft_finalize(&my_nfft_plan);</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> }</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00207"></a><span class="lineno"><a class="code" href="radon_8c.html#a3c04138a5bfe5d72780bb7e82a18e627"> 207</a></span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> {</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> int (*gridfcn)(); </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordtype">int</span> T, R; </div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> FILE *fp;</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="keywordtype">int</span> N; </div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="keywordtype">double</span> *f, *Rf;</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> </div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="keywordflow">if</span>( argc!=5 )</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> {</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> printf(<span class="stringliteral">"radon gridfcn N T R\n"</span>);</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> printf(<span class="stringliteral">"gridfcn \"polar\" or \"linogram\" \n"</span>);</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> printf(<span class="stringliteral">"N image size NxN \n"</span>);</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> printf(<span class="stringliteral">"T number of slopes \n"</span>);</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> printf(<span class="stringliteral">"R number of offsets \n"</span>);</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> exit(-1);</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> }</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">if</span> (strcmp(argv[1],<span class="stringliteral">"polar"</span>) == 0)</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> gridfcn = <a class="code" href="radon_8c.html#a307b67b4c00a1c756f140c7fa831cdae" title="generates the points x with weights w for the polar grid with T angles and R offsets">polar_grid</a>;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> gridfcn = <a class="code" href="radon_8c.html#a9a5ff165ab1e23af77ab6f6108bb6310" title="generates the points x with weights w for the linogram grid with T slopes and R offsets">linogram_grid</a>;</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> </div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> N = atoi(argv[2]);</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> T = atoi(argv[3]);</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> R = atoi(argv[4]);</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="comment">/*printf("N=%d, %s grid with T=%d, R=%d. \n",N,argv[1],T,R);*/</span></div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> f = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(N*N*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> Rf = (<span class="keywordtype">double</span> *)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(T*R*(<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>)));</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> </div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> fp=fopen(<span class="stringliteral">"input_data.bin"</span>,<span class="stringliteral">"rb"</span>);</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="keywordflow">if</span> (fp==NULL)</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> fread(f,<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>),N*N,fp);</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> fclose(fp);</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> </div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <a class="code" href="radon_8c.html#a01ba457f6edb3193453204cc702ac5ca" title="computes the NFFT-based discrete Radon transform of f on the grid given by gridfcn() with T angles an...">Radon_trafo</a>(gridfcn,T,R,f,N,Rf);</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> </div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> fp=fopen(<span class="stringliteral">"sinogram_data.bin"</span>,<span class="stringliteral">"wb+"</span>);</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> <span class="keywordflow">if</span> (fp==NULL)</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="keywordflow">return</span>(-1);</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> fwrite(Rf,<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>),T*R,fp);</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> fclose(fp);</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> </div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(f);</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(Rf);</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> </div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="keywordflow">return</span> EXIT_SUCCESS;</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/reconstruct__data__2d1d_8c_source.html b/doc/api/html/reconstruct__data__2d1d_8c_source.html
deleted file mode 100644
index 9e89e08..0000000
--- a/doc/api/html/reconstruct__data__2d1d_8c_source.html
+++ /dev/null
@@ -1,255 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_2d1d.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_fb8678d426210fc305fe5dfd30a163a5.html">mri3d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">reconstruct_data_2d1d.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: reconstruct_data_2d1d.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="code" href="group__applications__mri3d__reconstruct__data__1d2d.html#gad67335b03b6fec43e0dff3512c8f6d68"> 40</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri3d__reconstruct__data__1d2d.html#gad67335b03b6fec43e0dff3512c8f6d68" title="reconstruct makes an inverse 2d-nfft for every slice">reconstruct</a>(<span class="keywordtype">cha [...]
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">int</span> j,k,l,z; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">double</span> real,imag; <span class="comment">/* to read the real and imag part of a complex number */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_plan; <span class="comment">/* plan for the two dimensional nfft */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_iplan; <span class="comment">/* plan for the two dimensional infft */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> FILE* fin; <span class="comment">/* input file */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordtype">int</span> my_N[2],my_n[2]; <span class="comment">/* to init the nfft */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">double</span> tmp, epsilon=0.0000003;<span class="comment">/* tmp to read the obsolent z from the input file</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment"> epsilon is the break criterium for</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment"> the iteration */</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">unsigned</span> infft_flags = CGNR | PRECOMPUTE_DAMP; <span class="comment">/* flags for the infft */</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment">/* initialise my_plan */</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> my_N[0]=N;my_n[0]=ceil(N*1.2);</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> my_N[1]=N; my_n[1]=ceil(N*1.2);</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> nfft_init_guru(&my_plan, 2, my_N, M/Z, my_n, 6, PRE_PHI_HUT| PRE_PSI|</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> MALLOC_X| MALLOC_F_HAT| MALLOC_F|</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="comment">/* precompute lin psi if set */</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">/* set the flags for the infft*/</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">if</span> (weight)</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> infft_flags = infft_flags | PRECOMPUTE_WEIGHT;</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="comment">/* initialise my_iplan, advanced */</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> solver_init_advanced_complex(&my_iplan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&my_plan), infft_flags );</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="comment">/* get the weights */</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> {</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> fin=fopen(<span class="stringliteral">"weights.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> {</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> fscanf(fin,<span class="stringliteral">"%le "</span>,&my_iplan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j]);</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> }</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> fclose(fin);</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> }</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> </div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="comment">/* get the damping factors */</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> {</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">for</span>(j=0;j<N;j++){</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">for</span>(k=0;k<N;k++) {</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordtype">int</span> j2= j-N/2;</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordtype">int</span> k2= k-N/2;</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordtype">double</span> r=sqrt(j2*j2+k2*k2);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">if</span>(r>(<span class="keywordtype">double</span>) N/2)</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*N+k]=0.0;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*N+k]=1.0;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> }</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> }</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> }</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> <span class="comment">/* open the input file */</span></div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> fin=fopen(filename,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="comment">/* For every Layer*/</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">for</span>(z=0;z<Z;z++) {</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="comment">/* read x,y,freal and fimag from the knots */</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> {</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> fscanf(fin,<span class="stringliteral">"%le %le %le %le %le "</span>,&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1], &t [...]
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> &real,&imag);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j] = real + _Complex_I*imag;</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> }</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment">/* precompute psi if set just one time because the knots equal each plane */</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">if</span>(z==0 && my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> nfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="comment">/* precompute full psi if set just one time because the knots equal each plane */</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordflow">if</span>(z==0 && my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> nfft_precompute_full_psi(&my_plan);</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="comment">/* init some guess */</span></div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]=0.0;</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> </div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="comment">/* inverse trafo */</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> solver_before_loop_complex(&my_iplan);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordflow">for</span>(l=0;l<iteration;l++)</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> {</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="comment">/* break if dot_r_iter is smaller than epsilon*/</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a><epsilon)</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> fprintf(stderr,<span class="stringliteral">"%e, %i of %i\n"</span>,sqrt(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>),</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> iteration*z+l+1,iteration*Z);</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> }</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++) {</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="comment">/* write every slice in the memory.</span></div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="comment"> here we make an fftshift direct */</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> mem[(Z*N*N/2+z*N*N+ k)%(Z*N*N)] = my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k];</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> }</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> }</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> </div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> fclose(fin);</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="comment">/* finalize the infft */</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> </div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="comment">/* finalize the nfft */</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> nfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> }</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00156"></a><span class="lineno"><a class="code" href="group__applications__mri3d__reconstruct__data__1d2d.html#gaa30709aaef018deecdd911083fadb877"> 156</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri3d__reconstruct__data__1d2d.html#gaa30709aaef018deecdd911083fadb877" title="print writes the memory back in a file output_real.dat for the real part and output_imag.dat for th [...]
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> {</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="keywordtype">int</span> i,j;</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> FILE* fout_real;</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> FILE* fout_imag;</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> fout_real=fopen(<span class="stringliteral">"output_real.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> fout_imag=fopen(<span class="stringliteral">"output_imag.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="keywordflow">for</span>(i=0;i<Z;i++) {</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">for</span> (j=0;j<N*N;j++) {</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> fprintf(fout_real,<span class="stringliteral">"%le "</span>,creal(mem[(Z*N*N/2+i*N*N+ j)%(Z*N*N)]) /Z);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> fprintf(fout_imag,<span class="stringliteral">"%le "</span>,cimag(mem[(Z*N*N/2+i*N*N+ j)%(Z*N*N)]) /Z);</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> }</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> fprintf(fout_real,<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> fprintf(fout_imag,<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> }</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> fclose(fout_real);</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> fclose(fout_imag);</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> }</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> </div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> {</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> fftw_complex *mem;</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> fftw_plan plan;</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="keywordtype">int</span> N,M,Z;</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">if</span> (argc <= 6) {</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> printf(<span class="stringliteral">"usage: ./reconstruct FILENAME N M Z ITER WEIGHTS\n"</span>);</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> }</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> N=atoi(argv[2]);</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> M=atoi(argv[3]);</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> Z=atoi(argv[4]);</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> </div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="comment">/* Allocate memory to hold every layer in memory after the</span></div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="comment"> 2D-infft */</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> mem = (fftw_complex*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(<span class="keyword">sizeof</span>(fftw_complex) * atoi(argv[2]) * atoi(argv[2]) * atoi(argv[4]));</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="comment">/* Create plan for the 1d-ifft */</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> plan = fftw_plan_many_dft(1, &Z, N*N,</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> mem, NULL,</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> N*N, 1,</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> mem, NULL,</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> N*N,1 ,</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> FFTW_BACKWARD, FFTW_MEASURE);</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="comment">/* execute the 2d-infft's */</span></div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <a class="code" href="group__applications__mri3d__reconstruct__data__1d2d.html#gad67335b03b6fec43e0dff3512c8f6d68" title="reconstruct makes an inverse 2d-nfft for every slice">reconstruct</a>(argv[1],N,M,Z,atoi(argv[5]),atoi(argv[6]),mem);</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> </div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="comment">/* execute the 1d-fft's */</span></div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> fftw_execute(plan);</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="comment">/* write the memory back in files */</span></div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <a class="code" href="group__applications__mri3d__reconstruct__data__1d2d.html#gaa30709aaef018deecdd911083fadb877" title="print writes the memory back in a file output_real.dat for the real part and output_imag.dat for the imaginary part">print</a>(N,M,Z, mem);</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> </div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="comment">/* free memory */</span></div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(mem);</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> fftw_destroy_plan(plan);</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> }</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/reconstruct__data__2d_8c_source.html b/doc/api/html/reconstruct__data__2d_8c_source.html
deleted file mode 100644
index 17f106b..0000000
--- a/doc/api/html/reconstruct__data__2d_8c_source.html
+++ /dev/null
@@ -1,216 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_2d.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">reconstruct_data_2d.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: reconstruct_data_2d.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"><a class="code" href="group__applications__mri2d__reconstruct__data__2d.html#ga75582a0ebe96f1391e90db0053ee981c"> 41</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri2d__reconstruct__data__2d.html#ga75582a0ebe96f1391e90db0053ee981c" title="reconstruct makes an inverse 2d nfft">reconstruct</a>(<span class="keywordtype">char</span>* filename,< [...]
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> {</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">int</span> j,k,l; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> ticks t0, t1;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">double</span> real,imag,t; <span class="comment">/* to read the real and imag part of a complex number */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_plan; <span class="comment">/* plan for the two dimensional nfft */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_iplan; <span class="comment">/* plan for the two dimensional infft */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> FILE* fin; <span class="comment">/* input file */</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> FILE* fout_real; <span class="comment">/* output file */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> FILE* fout_imag; <span class="comment">/* output file */</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">int</span> my_N[2],my_n[2]; <span class="comment">/* to init the nfft */</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordtype">double</span> epsilon=0.0000003; <span class="comment">/* epsilon is a the break criterium for</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment"> the iteration */</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">unsigned</span> infft_flags = CGNR | PRECOMPUTE_DAMP; <span class="comment">/* flags for the infft*/</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">int</span> m = 6;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordtype">double</span> <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a> = 2.0;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment">/* initialise my_plan */</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> my_N[0]=N; my_n[0]=ceil(N*alpha);</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> my_N[1]=N; my_n[1]=ceil(N*alpha);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> nfft_init_guru(&my_plan, 2, my_N, M, my_n, m, PRE_PHI_HUT| PRE_PSI|</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> MALLOC_X| MALLOC_F_HAT| MALLOC_F|</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">/* precompute lin psi if set */</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="comment">/* set the flags for the infft*/</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">if</span> (weight)</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> infft_flags = infft_flags | PRECOMPUTE_WEIGHT;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment">/* initialise my_iplan, advanced */</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> solver_init_advanced_complex(&my_iplan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)&my_plan, infft_flags );</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="comment">/* get the weights */</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> {</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> fin=fopen(<span class="stringliteral">"weights.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> {</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> fscanf(fin,<span class="stringliteral">"%le "</span>,&my_iplan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j]);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> }</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> fclose(fin);</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> }</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="comment">/* get the damping factors */</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> {</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">for</span>(j=0;j<N;j++){</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">for</span>(k=0;k<N;k++) {</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">int</span> j2= j-N/2;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordtype">int</span> k2= k-N/2;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keywordtype">double</span> r=sqrt(j2*j2+k2*k2);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">if</span>(r>(<span class="keywordtype">double</span>) N/2)</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*N+k]=0.0;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*N+k]=1.0;</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> }</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> }</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="comment">/* open the input file */</span></div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> fin=fopen(filename,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="comment">/* read x,y,freal and fimag from the knots */</span></div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> {</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> fscanf(fin,<span class="stringliteral">"%le %le %le %le "</span>,&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1],</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> &real,&imag);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j] = real + _Complex_I*imag;</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> }</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> fclose(fin);</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> </div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="comment">/* precompute psi */</span></div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> nfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> </div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment">/* precompute full psi */</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> nfft_precompute_full_psi(&my_plan);</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment">/* init some guess */</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]=0.0;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> t0 = getticks();</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="comment">/* inverse trafo */</span></div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> solver_before_loop_complex(&my_iplan);</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">for</span>(l=0;l<iteration;l++)</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> {</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="comment">/* break if dot_r_iter is smaller than epsilon*/</span></div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a><epsilon)</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> fprintf(stderr,<span class="stringliteral">"%e, %i of %i\n"</span>,sqrt(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>),</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> l+1,iteration);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> }</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> </div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> t1 = getticks();</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> t=nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> fout_real=fopen(<span class="stringliteral">"output_real.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> fout_imag=fopen(<span class="stringliteral">"output_imag.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++) {</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> fprintf(fout_real,<span class="stringliteral">"%le "</span>, creal(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]));</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> fprintf(fout_imag,<span class="stringliteral">"%le "</span>, cimag(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]));</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> }</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> fclose(fout_real);</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> fclose(fout_imag);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="comment">/* finalize the infft */</span></div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> </div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="comment">/* finalize the nfft */</span></div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> nfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> }</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> </div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> {</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="keywordflow">if</span> (argc <= 5) {</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> printf(<span class="stringliteral">"usage: ./reconstruct_data_2d FILENAME N M ITER WEIGHTS\n"</span>);</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> }</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> </div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <a class="code" href="group__applications__mri2d__reconstruct__data__2d.html#ga75582a0ebe96f1391e90db0053ee981c" title="reconstruct makes an inverse 2d nfft">reconstruct</a>(argv[1],atoi(argv[2]),atoi(argv[3]),atoi(argv[4]),atoi(argv[5]));</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> </div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> }</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/reconstruct__data__3d_8c_source.html b/doc/api/html/reconstruct__data__3d_8c_source.html
deleted file mode 100644
index ad34c42..0000000
--- a/doc/api/html/reconstruct__data__3d_8c_source.html
+++ /dev/null
@@ -1,214 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_3d.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_fb8678d426210fc305fe5dfd30a163a5.html">mri3d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">reconstruct_data_3d.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: reconstruct_data_3d.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00040"></a><span class="lineno"><a class="code" href="group__applications__mri3d__reconstruct__data__3d.html#ga6a872b7d27169c9b01e09dcf45b9737d"> 40</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri3d__reconstruct__data__3d.html#ga6a872b7d27169c9b01e09dcf45b9737d" title="reconstruct makes an inverse 3d-nfft">reconstruct</a>(<span class="keywordtype">char</span>* filename,< [...]
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> {</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">int</span> j,k,z,l; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">double</span> real,imag; <span class="comment">/* to read the real and imag part of a complex number */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> my_plan; <span class="comment">/* plan for the two dimensional nfft */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_iplan; <span class="comment">/* plan for the two dimensional infft */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> FILE* fin; <span class="comment">/* input file */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> FILE* fout_real; <span class="comment">/* output file (real part) */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> FILE* fout_imag; <span class="comment">/* output file (imag part) */</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="keywordtype">int</span> my_N[3],my_n[3]; <span class="comment">/* to init the nfft */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">double</span> epsilon=0.0000003; <span class="comment">/* tmp to read the obsolent z from 700.acs</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="comment"> epsilon is a the break criterion for</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment"> the iteration */</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordtype">unsigned</span> infft_flags = CGNR | PRECOMPUTE_DAMP; <span class="comment">/* flags for the infft */</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment">/* initialise my_plan, specific.</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment"> we don't precompute psi */</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> my_N[0]=Z; my_n[0]=ceil(Z*1.2);</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> my_N[1]=N; my_n[1]=ceil(N*1.2);</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> my_N[2]=N; my_n[2]=ceil(N*1.2);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> nfft_init_guru(&my_plan, 3, my_N, M, my_n, 6,</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> PRE_PHI_HUT| PRE_PSI |MALLOC_X| MALLOC_F_HAT|</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> MALLOC_F| FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> </div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">/* precompute lin psi */</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="keywordflow">if</span> (weight)</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> infft_flags = infft_flags | PRECOMPUTE_WEIGHT;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="comment">/* initialise my_iplan, advanced */</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> solver_init_advanced_complex(&my_iplan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&my_plan), infft_flags );</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="comment">/* get the weights */</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> {</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> fin=fopen(<span class="stringliteral">"weights.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="keywordflow">for</span>(j=0;j<M;j++)</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> {</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> fscanf(fin,<span class="stringliteral">"%le "</span>,&my_iplan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j]);</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> }</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> fclose(fin);</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> }</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="comment">/* get the damping factors */</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> {</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">for</span>(j=0;j<N;j++){</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">for</span>(k=0;k<N;k++) {</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="keywordflow">for</span>(z=0;z<N;z++) {</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">int</span> j2= j-N/2;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordtype">int</span> k2= k-N/2;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keywordtype">int</span> z2= z-N/2;</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordtype">double</span> r=sqrt(j2*j2+k2*k2+z2*z2);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordflow">if</span>(r>(<span class="keywordtype">double</span>) N/2)</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[z*N*N+j*N+k]=0.0;</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[z*N*N+j*N+k]=1.0;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> }</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> }</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> }</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> }</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="comment">/* open the input file */</span></div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> fin=fopen(filename,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="comment">/* open the output files */</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> fout_real=fopen(<span class="stringliteral">"output_real.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> fout_imag=fopen(<span class="stringliteral">"output_imag.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="comment">/* read x,y,freal and fimag from the knots */</span></div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="keywordflow">for</span>(j=0;j<M;j++)</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> {</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> fscanf(fin,<span class="stringliteral">"%le %le %le %le %le "</span>,&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1],&my_plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2], &my_ [...]
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> &real,&imag);</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j] = real + _Complex_I*imag;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> }</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> </div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="comment">/* precompute psi */</span></div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI)</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> nfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> <span class="comment">/* precompute full psi */</span></div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> nfft_precompute_full_psi(&my_plan);</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="comment">/* init some guess */</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]=0.0;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="comment">/* inverse trafo */</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> solver_before_loop_complex(&my_iplan);</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">for</span>(l=0;l<iteration;l++)</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> {</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="comment">/* break if dot_r_iter is smaller than epsilon*/</span></div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a><epsilon)</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> fprintf(stderr,<span class="stringliteral">"%e, %i of %i\n"</span>,sqrt(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>),</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> l+1,iteration);</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">for</span>(l=0;l<Z;l++)</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> {</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="keywordflow">for</span>(k=0;k<N*N;k++)</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> {</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="comment">/* write every Layer in the files */</span></div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> fprintf(fout_real,<span class="stringliteral">"%le "</span>,creal(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[ k+N*N*l ]));</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> fprintf(fout_imag,<span class="stringliteral">"%le "</span>,cimag(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[ k+N*N*l ]));</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> }</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> fprintf(fout_real,<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> fprintf(fout_imag,<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> </div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> fclose(fout_real);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> fclose(fout_imag);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> nfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> }</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> </div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> {</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">if</span> (argc <= 6) {</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> printf(<span class="stringliteral">"usage: ./reconstruct3D FILENAME N M Z ITER WEIGHTS\n"</span>);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> }</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> </div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <a class="code" href="group__applications__mri3d__reconstruct__data__3d.html#ga6a872b7d27169c9b01e09dcf45b9737d" title="reconstruct makes an inverse 3d-nfft">reconstruct</a>(argv[1],atoi(argv[2]),atoi(argv[3]),atoi(argv[4]),atoi(argv[5]),atoi(argv[6]));</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> }</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/reconstruct__data__inh__2d1d_8c_source.html b/doc/api/html/reconstruct__data__inh__2d1d_8c_source.html
deleted file mode 100644
index 82359d6..0000000
--- a/doc/api/html/reconstruct__data__inh__2d1d_8c_source.html
+++ /dev/null
@@ -1,272 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_inh_2d1d.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">reconstruct_data_inh_2d1d.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: reconstruct_data_inh_2d1d.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <limits.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri2d__reconstruct__data__2d.html#ga75582a0ebe96f1391e90db0053ee981c" title="reconstruct makes an inverse 2d nfft">reconstruct</a>(<span class="keywordtype">char</span>* filename,<span class="keywordtype">int</span> N,<span class="keywordtype">int</span> M,<span class="keywordtype">int</span> ite [...]
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> {</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordtype">int</span> j,k,l;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordtype">double</span> time,min_time,max_time,min_inh,max_inh;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> ticks t0, t1;</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">double</span> t,real,imag;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">double</span> w,epsilon=0.0000003; <span class="comment">/* epsilon is a the break criterium for</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment"> the iteration */</span>;</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <a class="code" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> my_plan;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_iplan;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> FILE* fp,*fw,*fout_real,*fout_imag,*finh,*ftime;</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">int</span> my_N[3],my_n[3];</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">int</span> flags = PRE_PHI_HUT| PRE_PSI |MALLOC_X| MALLOC_F_HAT|</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> MALLOC_F| FFTW_INIT| FFT_OUT_OF_PLACE;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordtype">unsigned</span> infft_flags = CGNR | PRECOMPUTE_DAMP;</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">double</span> Ts;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordtype">double</span> W,T;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">int</span> N3;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">int</span> m=2;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">double</span> sigma = 1.25;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> ftime=fopen(<span class="stringliteral">"readout_time.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> finh=fopen(<span class="stringliteral">"inh.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> min_time=INT_MAX; max_time=INT_MIN;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">for</span>(j=0;j<M;j++)</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> {</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> fscanf(ftime,<span class="stringliteral">"%le "</span>,&time);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">if</span>(time<min_time)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> min_time = time;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">if</span>(time>max_time)</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> max_time = time;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> }</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> fclose(ftime);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> Ts=(min_time+max_time)/2.0;</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> min_inh=INT_MAX; max_inh=INT_MIN;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> {</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> fscanf(finh,<span class="stringliteral">"%le "</span>,&w);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">if</span>(w<min_inh)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> min_inh = w;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">if</span>(w>max_inh)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> max_inh = w;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> }</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> fclose(finh);</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> N3=ceil((<a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(fabs(min_inh),fabs(max_inh))*(max_time-min_time)/2.0+(m)/(2*sigma))*4*sigma);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">/* N3 has to be even */</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span>(N3%2!=0)</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> N3++;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> </div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> T=((max_time-min_time)/2.0)/(0.5-((double) (m))/N3);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> W=N3/T;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> my_N[0]=N; my_n[0]=ceil(N*sigma);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> my_N[1]=N; my_n[1]=ceil(N*sigma);</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> my_N[2]=N3; my_n[2]=N3;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="comment">/* initialise nfft */</span></div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> mri_inh_2d1d_init_guru(&my_plan, my_N, M, my_n, m, sigma, flags,</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> </div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="comment">/* precompute lin psi if set */</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordflow">if</span>(my_plan.plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <a class="code" href="nfft3_8h.html#a3f91a7a005cc31a8b05f33fea0507ddc" title="create a lookup table, but NOT for each node good idea K=2^xx TODO: estimate K, call from init assume...">nfft_precompute_lin_psi</a>(&my_plan.plan);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordflow">if</span> (weight)</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> infft_flags = infft_flags | PRECOMPUTE_WEIGHT;</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="comment">/* initialise my_iplan, advanced */</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> solver_init_advanced_complex(&my_iplan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&my_plan), infft_flags );</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="comment">/* get the weights */</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> {</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> fw=fopen(<span class="stringliteral">"weights.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> {</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> fscanf(fw,<span class="stringliteral">"%le "</span>,&my_iplan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j]);</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> }</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> fclose(fw);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> }</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="comment">/* get the damping factors */</span></div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> {</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <span class="keywordflow">for</span>(j=0;j<N;j++){</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">for</span>(k=0;k<N;k++) {</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="keywordtype">int</span> j2= j-N/2;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordtype">int</span> k2= k-N/2;</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordtype">double</span> r=sqrt(j2*j2+k2*k2);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">if</span>(r>(<span class="keywordtype">double</span>) N/2)</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*N+k]=0.0;</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*N+k]=1.0;</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> }</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> }</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> fp=fopen(filename,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> ftime=fopen(<span class="stringliteral">"readout_time.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> {</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> fscanf(fp,<span class="stringliteral">"%le %le %le %le"</span>,&my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+0],&my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[2*j+1],& [...]
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j]=real+ _Complex_I*imag;</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> fscanf(ftime,<span class="stringliteral">"%le "</span>,&my_plan.t[j]);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> my_plan.t[j] = (my_plan.t[j]-Ts)/T;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> fclose(fp);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> fclose(ftime);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> finh=fopen(<span class="stringliteral">"inh.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> {</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> fscanf(finh,<span class="stringliteral">"%le "</span>,&my_plan.w[j]);</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> my_plan.w[j]/=W;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> }</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> fclose(finh);</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> </div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">if</span>(my_plan.plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI) {</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> nfft_precompute_psi(&my_plan.plan);</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> }</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keywordflow">if</span>(my_plan.plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI) {</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> nfft_precompute_full_psi(&my_plan.plan);</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> }</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> </div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="comment">/* init some guess */</span></div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> {</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[j]=0.0;</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> }</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> t0 = getticks();</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="comment">/* inverse trafo */</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> solver_before_loop_complex(&my_iplan);</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordflow">for</span>(l=0;l<iteration;l++)</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> {</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="comment">/* break if dot_r_iter is smaller than epsilon*/</span></div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a><epsilon)</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> fprintf(stderr,<span class="stringliteral">"%e, %i of %i\n"</span>,sqrt(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>),</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> l+1,iteration);</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> }</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> t1 = getticks();</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> </div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> fout_real=fopen(<span class="stringliteral">"output_real.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> fout_imag=fopen(<span class="stringliteral">"output_imag.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> </div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">for</span> (j=0;j<N*N;j++) {</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="comment">/* Verschiebung wieder herausrechnen */</span></div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[j]*=cexp(-2.0*_Complex_I*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*Ts*my_plan.w[j]*W);</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> fprintf(fout_real,<span class="stringliteral">"%le "</span>,creal(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[j]));</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> fprintf(fout_imag,<span class="stringliteral">"%le "</span>,cimag(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[j]));</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> }</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> fclose(fout_real);</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> fclose(fout_imag);</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> mri_inh_2d1d_finalize(&my_plan);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> }</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> </div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> </div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> {</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="keywordflow">if</span> (argc <= 5) {</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> </div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> printf(<span class="stringliteral">"usage: ./reconstruct_data_inh_2d1d FILENAME N M ITER WEIGHTS\n"</span>);</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> }</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <a class="code" href="group__applications__mri2d__reconstruct__data__2d.html#ga75582a0ebe96f1391e90db0053ee981c" title="reconstruct makes an inverse 2d nfft">reconstruct</a>(argv[1],atoi(argv[2]),atoi(argv[3]),atoi(argv[4]),atoi(argv[5]));</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> }</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/reconstruct__data__inh__3d_8c_source.html b/doc/api/html/reconstruct__data__inh__3d_8c_source.html
deleted file mode 100644
index 36cc0fb..0000000
--- a/doc/api/html/reconstruct__data__inh__3d_8c_source.html
+++ /dev/null
@@ -1,266 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_inh_3d.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">reconstruct_data_inh_3d.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: reconstruct_data_inh_3d.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <limits.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri2d__reconstruct__data__2d.html#ga75582a0ebe96f1391e90db0053ee981c" title="reconstruct makes an inverse 2d nfft">reconstruct</a>(<span class="keywordtype">char</span>* filename,<span class="keywordtype">int</span> N,<span class="keywordtype">int</span> M,<span class="keywordtype">int</span> ite [...]
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> {</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordtype">int</span> j,k,l;</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> ticks t0, t1;</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordtype">double</span> time,min_time,max_time,min_inh,max_inh;</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">double</span> t,real,imag;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordtype">double</span> w,epsilon=0.0000003; <span class="comment">/* epsilon is a the break criterium for</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment"> the iteration */</span>;</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <a class="code" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> my_plan;</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_iplan;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> FILE* fp,*fw,*fout_real,*fout_imag,*finh,*ftime;</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordtype">int</span> my_N[3],my_n[3];</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> <span class="keywordtype">int</span> flags = PRE_PHI_HUT| PRE_PSI |MALLOC_X| MALLOC_F_HAT|</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> MALLOC_F| FFTW_INIT| FFT_OUT_OF_PLACE;</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="keywordtype">unsigned</span> infft_flags = CGNR | PRECOMPUTE_DAMP;</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="keywordtype">double</span> Ts;</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordtype">double</span> W;</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">int</span> N3;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">int</span> m=2;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">double</span> sigma = 1.25;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> ftime=fopen(<span class="stringliteral">"readout_time.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> finh=fopen(<span class="stringliteral">"inh.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> min_time=INT_MAX; max_time=INT_MIN;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">for</span>(j=0;j<M;j++)</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> {</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> fscanf(ftime,<span class="stringliteral">"%le "</span>,&time);</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordflow">if</span>(time<min_time)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> min_time = time;</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordflow">if</span>(time>max_time)</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> max_time = time;</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> }</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> </div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> fclose(ftime);</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> Ts=(min_time+max_time)/2.0;</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> </div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> min_inh=INT_MAX; max_inh=INT_MIN;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> {</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> fscanf(finh,<span class="stringliteral">"%le "</span>,&w);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">if</span>(w<min_inh)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> min_inh = w;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">if</span>(w>max_inh)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> max_inh = w;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> }</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> fclose(finh);</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> N3=ceil((<a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(fabs(min_inh),fabs(max_inh))*(max_time-min_time)/2.0+m/(2*sigma))*4*sigma);</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> <span class="comment">/* N3 has to be even */</span></div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span>(N3%2!=0)</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> N3++;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> </div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> W= <a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(fabs(min_inh),fabs(max_inh))/(0.5-((double) m)/N3);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> my_N[0]=N;my_n[0]=ceil(N*sigma);</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> my_N[1]=N; my_n[1]=ceil(N*sigma);</div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> my_N[2]=N3; my_n[2]=ceil(N3*sigma);</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> </div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="comment">/* initialise nfft */</span></div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> mri_inh_3d_init_guru(&my_plan, my_N, M, my_n, m, sigma, flags,</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> FFTW_MEASURE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> <span class="keywordflow">if</span> (weight)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> infft_flags = infft_flags | PRECOMPUTE_WEIGHT;</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> </div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="comment">/* initialise my_iplan, advanced */</span></div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> solver_init_advanced_complex(&my_iplan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&my_plan), infft_flags );</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment">/* get the weights */</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> {</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> fw=fopen(<span class="stringliteral">"weights.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structmri__inh__3d__plan.html#ae90c4e1c541956b5902e7aafc193ad8b" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> {</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> fscanf(fw,<span class="stringliteral">"%le "</span>,&my_iplan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j]);</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> }</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> fclose(fw);</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> }</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment">/* get the damping factors */</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> {</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">for</span>(j=0;j<N;j++){</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordflow">for</span>(k=0;k<N;k++) {</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordtype">int</span> j2= j-N/2;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">int</span> k2= k-N/2;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordtype">double</span> r=sqrt(j2*j2+k2*k2);</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordflow">if</span>(r>(<span class="keywordtype">double</span>) N/2)</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*N+k]=0.0;</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*N+k]=1.0;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> }</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> }</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> }</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> fp=fopen(filename,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> ftime=fopen(<span class="stringliteral">"readout_time.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> </div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structmri__inh__3d__plan.html#ae90c4e1c541956b5902e7aafc193ad8b" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> {</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> fscanf(fp,<span class="stringliteral">"%le %le %le %le"</span>,&my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+0],&my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+1],& [...]
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j]=real+ _Complex_I*imag;</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> fscanf(ftime,<span class="stringliteral">"%le "</span>,&my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]);</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2] = (my_plan.plan.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[3*j+2]-Ts)*W/N3;</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> }</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> fclose(fp);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> fclose(ftime);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> finh=fopen(<span class="stringliteral">"inh.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> {</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> fscanf(finh,<span class="stringliteral">"%le "</span>,&my_plan.w[j]);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> my_plan.w[j]/=W;</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> }</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> fclose(finh);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> </div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">if</span>(my_plan.plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_PSI) {</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> nfft_precompute_psi(&my_plan.plan);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> }</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> <span class="keywordflow">if</span>(my_plan.plan.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_FULL_PSI) {</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> nfft_precompute_full_psi(&my_plan.plan);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> }</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> </div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> <span class="comment">/* init some guess */</span></div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structmri__inh__3d__plan.html#aa1b253e912e92b252c4992eb86d92e12" title="Total number of Fourier coefficients.">N_total</a>;j++)</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> {</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[j]=0.0;</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> }</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> </div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> t0 = getticks();</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> </div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <span class="comment">/* inverse trafo */</span></div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> solver_before_loop_complex(&my_iplan);</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">for</span>(l=0;l<iteration;l++)</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> {</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="comment">/* break if dot_r_iter is smaller than epsilon*/</span></div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a><epsilon)</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> fprintf(stderr,<span class="stringliteral">"%e, %i of %i\n"</span>,sqrt(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>),</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> l+1,iteration);</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> }</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> </div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> t1 = getticks();</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> </div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> fout_real=fopen(<span class="stringliteral">"output_real.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> fout_imag=fopen(<span class="stringliteral">"output_imag.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> </div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">for</span> (j=0;j<N*N;j++) {</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="comment">/* Verschiebung wieder herausrechnen */</span></div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[j]*=cexp(-2.0*_Complex_I*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*Ts*my_plan.w[j]*W);</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> fprintf(fout_real,<span class="stringliteral">"%le "</span>,creal(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[j]));</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> fprintf(fout_imag,<span class="stringliteral">"%le "</span>,cimag(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[j]));</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> }</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> </div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> fclose(fout_real);</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> fclose(fout_imag);</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> mri_inh_3d_finalize(&my_plan);</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> }</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> </div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> {</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <span class="keywordflow">if</span> (argc <= 5) {</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> printf(<span class="stringliteral">"usage: ./reconstruct_data_inh_3d FILENAME N M ITER WEIGHTS\n"</span>);</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> }</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> </div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <a class="code" href="group__applications__mri2d__reconstruct__data__2d.html#ga75582a0ebe96f1391e90db0053ee981c" title="reconstruct makes an inverse 2d nfft">reconstruct</a>(argv[1],atoi(argv[2]),atoi(argv[3]),atoi(argv[4]),atoi(argv[5]));</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> </div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> }</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/reconstruct__data__inh__nnfft_8c_source.html b/doc/api/html/reconstruct__data__inh__nnfft_8c_source.html
deleted file mode 100644
index 79059dd..0000000
--- a/doc/api/html/reconstruct__data__inh__nnfft_8c_source.html
+++ /dev/null
@@ -1,282 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - reconstruct_data_inh_nnfft.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_a6e4fee11f07c3b70486e88fe92cbbdc.html">applications</a></li><li class="navelem"><a class="el" href="dir_fcbc4f55ac8dbf86a30b1d7535946c2d.html">mri</a></li><li class="navelem"><a class="el" href="dir_899180af8ae9527aed19a2e763253fcc.html">mri2d</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">reconstruct_data_inh_nnfft.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: reconstruct_data_inh_nnfft.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <limits.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00042"></a><span class="lineno"><a class="code" href="group__applications__mri2d__construct__data__inh__nnfft.html#ga75582a0ebe96f1391e90db0053ee981c"> 42</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="group__applications__mri2d__construct__data__inh__nnfft.html#ga75582a0ebe96f1391e90db0053ee981c" title="reconstruct">reconstruct</a>(<span class="keywordtype">char</span>* filename,<span class="k [...]
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> {</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordtype">int</span> j,k,l; <span class="comment">/* some variables */</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <a class="code" href="structnnfft__plan.html">nnfft_plan</a> my_plan; <span class="comment">/* plan for the two dimensional nfft */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> my_iplan; <span class="comment">/* plan for the two dimensional infft */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> FILE* fin; <span class="comment">/* input file */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> FILE* finh;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> FILE* ftime;</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> FILE* fout_real; <span class="comment">/* output file */</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> FILE* fout_imag; <span class="comment">/* output file */</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordtype">int</span> my_N[3],my_n[3]; <span class="comment">/* to init the nfft */</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> ticks t0, t1;</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="keywordtype">double</span> t,epsilon=0.0000003; <span class="comment">/* epsilon is a the break criterium for</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="comment"> the iteration */</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordtype">unsigned</span> infft_flags = CGNR | PRECOMPUTE_DAMP; <span class="comment">/* flags for the infft*/</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">double</span> time,min_time,max_time,min_inh,max_inh;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordtype">double</span> real,imag;</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordtype">double</span> *w;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keywordtype">double</span> Ts;</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordtype">double</span> W;</div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordtype">int</span> N3;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordtype">int</span> m=2;</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordtype">double</span> sigma = 1.25;</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> w = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(N*N*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> </div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> ftime=fopen(<span class="stringliteral">"readout_time.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> finh=fopen(<span class="stringliteral">"inh.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> min_time=INT_MAX; max_time=INT_MIN;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">for</span>(j=0;j<M;j++)</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> {</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> fscanf(ftime,<span class="stringliteral">"%le "</span>,&time);</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">if</span>(time<min_time)</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> min_time = time;</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">if</span>(time>max_time)</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> max_time = time;</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> }</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> fclose(ftime);</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> </div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> Ts=(min_time+max_time)/2.0;</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> </div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> min_inh=INT_MAX; max_inh=INT_MIN;</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordflow">for</span>(j=0;j<N*N;j++)</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> {</div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> fscanf(finh,<span class="stringliteral">"%le "</span>,&w[j]);</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keywordflow">if</span>(w[j]<min_inh)</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> min_inh = w[j];</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordflow">if</span>(w[j]>max_inh)</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> max_inh = w[j];</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> }</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> fclose(finh);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> N3=ceil((<a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(fabs(min_inh),fabs(max_inh))*(max_time-min_time)/2.0)*4);</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> W=<a class="code" href="group__nfftutil.html#gad2e3f0e1983de6d70f003545cc556ed3" title="Maximum of its two arguments.">NFFT_MAX</a>(fabs(min_inh),fabs(max_inh))*2.0;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> fprintf(stderr,<span class="stringliteral">"3: %i %e %e %e %e %e %e\n"</span>,N3,W,min_inh,max_inh,min_time,max_time,Ts);</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> </div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="comment">/* initialise my_plan */</span></div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> my_N[0]=N;my_n[0]=ceil(N*sigma);</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> my_N[1]=N; my_n[1]=ceil(N*sigma);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> my_N[2]=N3; my_n[2]=ceil(N3*sigma);</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> nnfft_init_guru(&my_plan, 3, N*N, M, my_N,my_n,m,</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> PRE_PSI| PRE_PHI_HUT| MALLOC_X| MALLOC_V| MALLOC_F_HAT| MALLOC_F );</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> </div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="comment">/* precompute lin psi if set */</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_LIN_PSI)</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <a class="code" href="nfft3_8h.html#a65983eef73b9f5740214bf720f62fcd6" title="create a lookup table">nnfft_precompute_lin_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="comment">/* set the flags for the infft*/</span></div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <span class="keywordflow">if</span> (weight)</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> infft_flags = infft_flags | PRECOMPUTE_WEIGHT;</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="comment">/* initialise my_iplan, advanced */</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> solver_init_advanced_complex(&my_iplan,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&my_plan), infft_flags );</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> </div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="comment">/* get the weights */</span></div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> {</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> fin=fopen(<span class="stringliteral">"weights.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> {</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> fscanf(fin,<span class="stringliteral">"%le "</span>,&my_iplan.<a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>[j]);</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> }</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> fclose(fin);</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> }</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> </div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="comment">/* get the damping factors */</span></div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> {</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">for</span>(j=0;j<N;j++){</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <span class="keywordflow">for</span>(k=0;k<N;k++) {</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordtype">int</span> j2= j-N/2;</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> <span class="keywordtype">int</span> k2= k-N/2;</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="keywordtype">double</span> r=sqrt(j2*j2+k2*k2);</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> <span class="keywordflow">if</span>(r>(<span class="keywordtype">double</span>) N/2)</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*N+k]=0.0;</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>[j*N+k]=1.0;</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> }</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> }</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> }</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> </div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <span class="comment">/* open the input file */</span></div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> fin=fopen(filename,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> ftime=fopen(<span class="stringliteral">"readout_time.dat"</span>,<span class="stringliteral">"r"</span>);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">for</span>(j=0;j<my_plan.<a class="code" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> {</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> fscanf(fin,<span class="stringliteral">"%le %le %le %le "</span>,&my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[3*j+0],&my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[3*j+1],&real,&imag);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>[j]=real+ _Complex_I*imag;</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> fscanf(ftime,<span class="stringliteral">"%le "</span>,&my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[3*j+2]);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[3*j+2] = (my_plan.<a class="code" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d" title="nodes (in time/spatial domain)">x</a>[3*j+2]-Ts)*W/N3;</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> }</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> </div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">for</span>(j=0;j<N;j++)</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> {</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="keywordflow">for</span>(l=0;l<N;l++)</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> {</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> my_plan.<a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>[3*(N*j+l)+0]=(((<span class="keywordtype">double</span>) j) -(((<span class="keywordtype">double</span>) N)/2.0))/((<span class="keywordtype">double</span>) N);</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> my_plan.<a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>[3*(N*j+l)+1]=(((<span class="keywordtype">double</span>) l) -(((<span class="keywordtype">double</span>) N)/2.0))/((<span class="keywordtype">double</span>) N);</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> my_plan.<a class="code" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c" title="nodes (in fourier domain)">v</a>[3*(N*j+l)+2] = w[N*j+l]/W ;</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> }</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> }</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> </div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <span class="comment">/* precompute psi */</span></div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PSI) {</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> nnfft_precompute_psi(&my_plan);</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_FULL_PSI)</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> <a class="code" href="nfft3_8h.html#a78cf7bac65f6de46182ea1ff509c2af9" title="computes all entries of B explicitly">nnfft_precompute_full_psi</a>(&my_plan);</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> }</div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> </div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <span class="keywordflow">if</span>(my_plan.<a class="code" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a" title="flags for precomputation, malloc">nnfft_flags</a> & PRE_PHI_HUT)</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <a class="code" href="nfft3_8h.html#a9e4663c2cdbff65da327400657528580" title="initialisation of direct transform">nnfft_precompute_phi_hut</a>(&my_plan);</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> </div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="comment">/* init some guess */</span></div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> {</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]=0.0;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> }</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> </div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> t0 = getticks();</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> </div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="comment">/* inverse trafo */</span></div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> solver_before_loop_complex(&my_iplan);</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <span class="keywordflow">for</span>(l=0;l<iteration;l++)</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> {</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="comment">/* break if dot_r_iter is smaller than epsilon*/</span></div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordflow">if</span>(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a><epsilon)</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> fprintf(stderr,<span class="stringliteral">"%e, %i of %i\n"</span>,sqrt(my_iplan.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>),</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> l+1,iteration);</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> }</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> t1 = getticks();</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> </div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> fout_real=fopen(<span class="stringliteral">"output_real.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> fout_imag=fopen(<span class="stringliteral">"output_imag.dat"</span>,<span class="stringliteral">"w"</span>);</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="keywordflow">for</span>(k=0;k<my_plan.<a class="code" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2" title="Total number of Fourier coefficients.">N_total</a>;k++) {</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]*=cexp(2.0*_Complex_I*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*Ts*w[k]);</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> </div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> fprintf(fout_real,<span class="stringliteral">"%le "</span>, creal(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]));</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> fprintf(fout_imag,<span class="stringliteral">"%le "</span>, cimag(my_iplan.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]));</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> }</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> </div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> fclose(fout_real);</div>
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> fclose(fout_imag);</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> </div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> </div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="comment">/* finalize the infft */</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&my_iplan);</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> </div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="comment">/* finalize the nfft */</span></div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> nnfft_finalize(&my_plan);</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> </div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(w);</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> }</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> </div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc, <span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> {</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <span class="keywordflow">if</span> (argc <= 5) {</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> printf(<span class="stringliteral">"usage: ./reconstruct_data_inh_nnfft FILENAME N M ITER WEIGHTS\n"</span>);</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> }</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> </div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <a class="code" href="group__applications__mri2d__construct__data__inh__nnfft.html#ga75582a0ebe96f1391e90db0053ee981c" title="reconstruct">reconstruct</a>(argv[1],atoi(argv[2]),atoi(argv[3]),atoi(argv[4]),atoi(argv[5]));</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> </div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> }</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/sinc_8c_source.html b/doc/api/html/sinc_8c_source.html
deleted file mode 100644
index 671f88c..0000000
--- a/doc/api/html/sinc_8c_source.html
+++ /dev/null
@@ -1,97 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - sinc.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_7ab5cd9d6a44db3bf3b807f89e50cefe.html">util</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">sinc.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: util.c 3483 2010-04-23 19:02:34Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> </div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> R X(sinc)(<span class="keyword">const</span> R x)</div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> {</div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="comment">/* Based on sinc function from Boost C++ library. */</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="keyword">const</span> R b = EPSILON;</div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="keyword">const</span> R bs = SQRT(b);</div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="keyword">const</span> R bs2 = SQRT(bs);</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> </div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="keywordflow">if</span> (FABS(x) >= bs2)</div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">return</span> SIN(x)/x;</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> {</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> R r = K(1.0);</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> </div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordflow">if</span> (FABS(x) >= b)</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> {</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keyword">const</span> R x2 = x * x;</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> r -= x2 / K(6.0);</div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> </div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="keywordflow">if</span> (FABS(x) >= bs)</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> r += (x2 * x2) / K(120.0);</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> }</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">return</span> r;</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> }</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/solver_2simple__test_8c_source.html b/doc/api/html/solver_2simple__test_8c_source.html
deleted file mode 100644
index 52b333b..0000000
--- a/doc/api/html/solver_2simple__test_8c_source.html
+++ /dev/null
@@ -1,196 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - simple_test.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_7af51a00587982c04b08a156fa91c254.html">solver</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">solver/simple_test.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: simple_test.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> </div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment">/* void simple_test_infft_1d(int N, int M, int iter) */</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="comment">/* { */</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="comment">/* int k,l; /\**< index for nodes, freqencies,iter*\/ */</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="comment">/* nfft_plan p; /\**< plan for the nfft *\/ */</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="comment">/* infft_plan ip; /\**< plan for the inverse nfft *\/ */</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> </div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="comment">/* /\** initialise an one dimensional plan *\/ */</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="comment">/* nfft_init_1d(&p, N, M); */</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> </div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="comment">/* /\** init pseudo random nodes *\/ */</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="comment">/* nfft_vrand_shifted_unit_double(p.x,p.M_total); */</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> </div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="comment">/* /\** precompute psi, the entries of the matrix B *\/ */</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="comment">/* if(p.nfft_flags & PRE_ONE_PSI) */</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="comment">/* nfft_precompute_one_psi(&p); */</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> </div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="comment">/* /\** initialise inverse plan *\/ */</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="comment">/* infft_init(&ip,&p); */</span></div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="comment">/* /\** init pseudo random samples and show them *\/ */</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="comment">/* nfft_vrand_unit_complex(ip.y,p.M_total); */</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="comment">/* nfft_vpr_complex(ip.y,p.M_total,"Given data, vector y"); */</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> </div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="comment">/* /\** initialise some guess f_hat_0 and solve *\/ */</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="comment">/* for(k=0;k<p.N_total;k++) */</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="comment">/* ip.f_hat_iter[k]=0; */</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> </div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="comment">/* nfft_vpr_complex(ip.f_hat_iter,p.N_total,"Initial guess, vector f_hat_iter"); */</span></div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> </div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="comment">/* NFFT_SWAP_complex(ip.f_hat_iter,p.f_hat); */</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="comment">/* nfft_trafo(&p); */</span></div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="comment">/* nfft_vpr_complex(p.f,p.M_total,"Data fit, vector f"); */</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="comment">/* NFFT_SWAP_complex(ip.f_hat_iter,p.f_hat); */</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> </div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="comment">/* infft_before_loop(&ip); */</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="comment">/* printf("\n Residual r=%e\n",ip.dot_r_iter); */</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> </div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="comment">/* for(l=0;l<iter;l++) */</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="comment">/* { */</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="comment">/* printf("\n********** Iteration l=%d **********\n",l); */</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="comment">/* infft_loop_one_step(&ip); */</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="comment">/* nfft_vpr_complex(ip.f_hat_iter,p.N_total, */</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="comment">/* "Approximate solution, vector f_hat_iter"); */</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="comment">/* NFFT_SWAP_complex(ip.f_hat_iter,p.f_hat); */</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="comment">/* nfft_trafo(&p); */</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <span class="comment">/* nfft_vpr_complex(p.f,p.M_total,"Data fit, vector f"); */</span></div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> <span class="comment">/* NFFT_SWAP_complex(ip.f_hat_iter,p.f_hat); */</span></div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> </div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="comment">/* printf("\n Residual r=%e\n",ip.dot_r_iter); */</span></div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="comment">/* } */</span></div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="comment">/* infft_finalize(&ip); */</span></div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="comment">/* nfft_finalize(&p); */</span></div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="comment">/* } */</span></div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="keyword">static</span> <span class="keywordtype">void</span> simple_test_solver_nfft_1d(<span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">int</span> iter)</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> {</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">int</span> k,l; </div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> p; </div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> ip; </div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> nfft_init_1d(&p, N, M);</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(p.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number o [...]
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">if</span>(p.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> nfft_precompute_one_psi(&p);</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> solver_init_complex(&ip,(<a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a>*)(&p));</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(ip.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_tot [...]
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(ip.<a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>,<span clas [...]
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">for</span>(k=0;k<p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>;k++)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>[k]=0;</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> </div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>,p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_tota [...]
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>,p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeo [...]
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples." [...]
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>,p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeo [...]
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> solver_before_loop_complex(&ip);</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> printf(<span class="stringliteral">"\n Residual r=%e\n"</span>,ip.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>);</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordflow">for</span>(l=0;l<iter;l++)</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> {</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> printf(<span class="stringliteral">"\n********** Iteration l=%d **********\n"</span>,l);</div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(&ip);</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>,p.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_ [...]
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="stringliteral">"Approximate solution, vector f_hat_iter"</span>);</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> </div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>,p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * s [...]
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&p);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <a class="code" href="group__nfftutil.html#ga52ad07055e22b83a016bdbf43d3884d0" title="Prints a vector of complex numbers.">nfft_vpr_complex</a>(p.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,p.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of sampl [...]
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ip.<a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>,p.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * s [...]
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> </div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> printf(<span class="stringliteral">"\n Residual r=%e\n"</span>,ip.<a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>);</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> }</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(&ip);</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> nfft_finalize(&p);</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> }</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="keywordtype">int</span> main(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> {</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> printf(<span class="stringliteral">"\n Computing a one dimensional inverse nfft\n"</span>);</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> </div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> simple_test_solver_nfft_1d(8,4,5);</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <span class="comment">/* \} */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/solver_8c.html b/doc/api/html/solver_8c.html
deleted file mode 100644
index f02b01e..0000000
--- a/doc/api/html/solver_8c.html
+++ /dev/null
@@ -1,118 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - solver.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_58759e03702cf5d3134868f6de633189.html">solver</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">solver.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Implementation file for the solver module.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-</div>
-<p><a href="solver_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ad8962fc79683a67a84b10593d8e0103c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8962fc79683a67a84b10593d8e0103c"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solver_init_advanced_complex</b> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths, <a class="el" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a> *mv, unsigned flags)</td></tr>
-<tr class="memitem:a6662c51f86e40ded7773d1954ec77ca2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6662c51f86e40ded7773d1954ec77ca2"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solver_init_complex</b> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths, <a class="el" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a> *mv)</td></tr>
-<tr class="memitem:a54498806e5ab4046a2ef8fc426e5b141"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a54498806e5ab4046a2ef8fc426e5b141"></a>
-void </td><td class="memItemRight" valign="bottom"><b>solver_before_loop_complex</b> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</td></tr>
-<tr class="memitem:a7e818bcb6dd61e2a7aa5748c8ee9d339"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7e818bcb6dd61e2a7aa5748c8ee9d339"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a7e818bcb6dd61e2a7aa5748c8ee9d339">solver_loop_one_step_landweber_complex</a> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</td></tr>
-<tr class="memdesc:a7e818bcb6dd61e2a7aa5748c8ee9d339"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step_landweber <br/></td></tr>
-<tr class="memitem:ab14e3227776d9378c195664f3ace8110"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab14e3227776d9378c195664f3ace8110"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#ab14e3227776d9378c195664f3ace8110">solver_loop_one_step_steepest_descent_complex</a> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</td></tr>
-<tr class="memdesc:ab14e3227776d9378c195664f3ace8110"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step_steepest_descent <br/></td></tr>
-<tr class="memitem:a376190a64969829c029532fd0957e184"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a376190a64969829c029532fd0957e184"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a376190a64969829c029532fd0957e184">solver_loop_one_step_cgnr_complex</a> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</td></tr>
-<tr class="memdesc:a376190a64969829c029532fd0957e184"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step_cgnr <br/></td></tr>
-<tr class="memitem:a59278b7119c43bf23b9aaca6eae936e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59278b7119c43bf23b9aaca6eae936e5"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a59278b7119c43bf23b9aaca6eae936e5">solver_loop_one_step_cgne_complex</a> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</td></tr>
-<tr class="memdesc:a59278b7119c43bf23b9aaca6eae936e5"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step_cgne <br/></td></tr>
-<tr class="memitem:a3b80b04ee3429b04c310992fb0a12420"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3b80b04ee3429b04c310992fb0a12420"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a3b80b04ee3429b04c310992fb0a12420">solver_loop_one_step_complex</a> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</td></tr>
-<tr class="memdesc:a3b80b04ee3429b04c310992fb0a12420"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step <br/></td></tr>
-<tr class="memitem:a2f44c78734390e47d72578f4c9cbe709"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f44c78734390e47d72578f4c9cbe709"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a2f44c78734390e47d72578f4c9cbe709">solver_finalize_complex</a> (<a class="el" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</td></tr>
-<tr class="memdesc:a2f44c78734390e47d72578f4c9cbe709"><td class="mdescLeft"> </td><td class="mdescRight">void solver_finalize <br/></td></tr>
-<tr class="memitem:a1a4544ab96d14c812e3b330c439c3d80"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a4544ab96d14c812e3b330c439c3d80"></a>
-void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a1a4544ab96d14c812e3b330c439c3d80">solver_init_advanced_double</a> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths, <a class="el" href="structnfft__mv__plan__double.html">nfft_mv_plan_double</a> *mv, unsigned flags)</td></tr>
-<tr class="memdesc:a1a4544ab96d14c812e3b330c439c3d80"><td class="mdescLeft"> </td><td class="mdescRight">void solver_finalize <br/></td></tr>
-<tr class="memitem:aa4893f8cbbcedc501a5c856c07706454"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa4893f8cbbcedc501a5c856c07706454"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>solver_init_double</b> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths, <a class="el" href="structnfft__mv__plan__double.html">nfft_mv_plan_double</a> *mv)</td></tr>
-<tr class="memitem:ab9d1312a3daa0f574f0059d920ee9017"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab9d1312a3daa0f574f0059d920ee9017"></a>
-static void </td><td class="memItemRight" valign="bottom"><b>solver_before_loop_double</b> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</td></tr>
-<tr class="memitem:a30d6a3373083167e38181c964d6a4288"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a30d6a3373083167e38181c964d6a4288"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a30d6a3373083167e38181c964d6a4288">solver_loop_one_step_landweber_double</a> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</td></tr>
-<tr class="memdesc:a30d6a3373083167e38181c964d6a4288"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step_landweber <br/></td></tr>
-<tr class="memitem:a6fef0b0a380ed017554c41b78fccc477"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6fef0b0a380ed017554c41b78fccc477"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a6fef0b0a380ed017554c41b78fccc477">solver_loop_one_step_steepest_descent_double</a> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</td></tr>
-<tr class="memdesc:a6fef0b0a380ed017554c41b78fccc477"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step_steepest_descent <br/></td></tr>
-<tr class="memitem:ae134ca120f6f4fcc96626c6a1acedfb6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae134ca120f6f4fcc96626c6a1acedfb6"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#ae134ca120f6f4fcc96626c6a1acedfb6">solver_loop_one_step_cgnr_double</a> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</td></tr>
-<tr class="memdesc:ae134ca120f6f4fcc96626c6a1acedfb6"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step_cgnr <br/></td></tr>
-<tr class="memitem:a206a5fe70bfb6853a2a9a9551e12b2db"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a206a5fe70bfb6853a2a9a9551e12b2db"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a206a5fe70bfb6853a2a9a9551e12b2db">solver_loop_one_step_cgne_double</a> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</td></tr>
-<tr class="memdesc:a206a5fe70bfb6853a2a9a9551e12b2db"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step_cgne <br/></td></tr>
-<tr class="memitem:a89adea45056c1b5c8d90cfd87325be4e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a89adea45056c1b5c8d90cfd87325be4e"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a89adea45056c1b5c8d90cfd87325be4e">solver_loop_one_step_double</a> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</td></tr>
-<tr class="memdesc:a89adea45056c1b5c8d90cfd87325be4e"><td class="mdescLeft"> </td><td class="mdescRight">void solver_loop_one_step <br/></td></tr>
-<tr class="memitem:a6d04f270b539a9f48b3521ba973829bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6d04f270b539a9f48b3521ba973829bf"></a>
-static void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver_8c.html#a6d04f270b539a9f48b3521ba973829bf">solver_finalize_double</a> (<a class="el" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</td></tr>
-<tr class="memdesc:a6d04f270b539a9f48b3521ba973829bf"><td class="mdescLeft"> </td><td class="mdescRight">void solver_finalize <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Implementation file for the solver module. </p>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition in file <a class="el" href="solver_8c_source.html">solver.c</a>.</p>
-</div></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/solver_8c_source.html b/doc/api/html/solver_8c_source.html
deleted file mode 100644
index dd1c2cd..0000000
--- a/doc/api/html/solver_8c_source.html
+++ /dev/null
@@ -1,760 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - solver.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_58759e03702cf5d3134868f6de633189.html">solver</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">solver.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="solver_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: solver.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span><span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> </div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keywordtype">void</span> solver_init_advanced_complex(<a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a>* ths, <a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a> *mv, <span class="keywordtype">unsigned</span> flags)</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a> = mv;</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> = flags;</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> </div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> ths-><a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a> = (fftw_complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" [...]
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a> = (fftw_complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" [...]
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> ths-><a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a> = (fftw_complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href=" [...]
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a> = (fftw_complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="st [...]
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> </div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & LANDWEBER)</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a> = ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>;</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & STEEPEST_DESCENT)</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> {</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a> = ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>;</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title="residual vector update">v_iter</a> = (fftw_complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code [...]
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> }</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> </div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & CGNR)</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> {</div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a> = (fftw_complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a> [...]
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title="residual vector update">v_iter</a> = (fftw_complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code [...]
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> }</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> </div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & CGNE)</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a> = ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> </div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> ths-><a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a [...]
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> ths-><a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-> [...]
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> }</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="keywordtype">void</span> solver_init_complex(<a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a>* ths, <a class="code" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a> *mv)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> {</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> solver_init_advanced_complex(ths, mv, CGNR);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> }</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> </div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordtype">void</span> solver_before_loop_complex(<a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a>* ths)</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> {</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52" title="Vector of Fourier coefficients, size is N_total * s [...]
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> </div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication"> [...]
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a56bf298c03c4aaeb6b4aaf7ed5cca57e" title="Pointer to the own transform.">mv_trafo</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector mult [...]
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication"> [...]
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <a class="code" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5" title="Updates .">nfft_upd_axpy_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a>, -1.0, ths-><a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>, th [...]
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> </div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordflow">if</span>((!(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & LANDWEBER)) || (ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & NORMS_FOR_LANDWEBER))</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> {</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="it [...]
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a2cb2df3ae5db867f38cb75b7c88de7fe" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated resi [...]
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> }</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <a class="code" href="group__nfftutil.html#ga630054cb816785d766959a867965f619" title="Copies .">nfft_cp_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e" title="Vector of samples, size is M_total * sizeof( ff [...]
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e" title="Vector of samples, size is M_total * sizeof( fftw [...]
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix ve [...]
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#add14030aae4920f7ca71ecf1efde00a3" title="Pointer to the own adjoint.">mv_adjoint</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector mult [...]
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix ve [...]
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> </div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">if</span>((!(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & LANDWEBER)) || (ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & NORMS_FOR_LANDWEBER))</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> {</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" t [...]
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="resid [...]
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> }</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> </div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & CGNE)</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> ths-><a class="code" href="structsolver__plan__complex.html#a0cced7bb2f3b85b75b765d796e2c741d" title="weighted dotproduct of p_hat_iter">dot_p_hat_iter</a> = ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a>;</div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> </div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & CGNR)</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_i [...]
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> } <span class="comment">/* void solver_before_loop */</span></div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00120"></a><span class="lineno"><a class="code" href="solver_8c.html#a7e818bcb6dd61e2a7aa5748c8ee9d339"> 120</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="solver_8c.html#a7e818bcb6dd61e2a7aa5748c8ee9d339" title="void solver_loop_one_step_landweber">solver_loop_one_step_landweber_complex</a>(<a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a>* ths)</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> {</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> <a class="code" href="group__nfftutil.html#gad8e10773e59818c88a8ea2cb560b936e" title="Updates .">nfft_upd_xpawy_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_it [...]
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" tit [...]
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <a class="code" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4" title="Updates .">nfft_upd_xpay_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_ite [...]
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52" title="Vector of Fourier coefficients, size is N_total * s [...]
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">m [...]
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a56bf298c03c4aaeb6b4aaf7ed5cca57e" title="Pointer to the own transform.">mv_trafo</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector mult [...]
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">m [...]
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> </div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <a class="code" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5" title="Updates .">nfft_upd_axpy_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a>, -1.0, ths-><a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>, th [...]
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & NORMS_FOR_LANDWEBER)</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> {</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="it [...]
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a2cb2df3ae5db867f38cb75b7c88de7fe" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated resi [...]
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> }</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> <a class="code" href="group__nfftutil.html#ga630054cb816785d766959a867965f619" title="Copies .">nfft_cp_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e" title="Vector of samples, size is M_total * sizeof( ff [...]
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e" title="Vector of samples, size is M_total * sizeof( fftw [...]
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> </div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vec [...]
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#add14030aae4920f7ca71ecf1efde00a3" title="Pointer to the own adjoint.">mv_adjoint</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector mult [...]
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vec [...]
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & NORMS_FOR_LANDWEBER)</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> {</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" t [...]
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="resid [...]
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> }</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> } <span class="comment">/* void solver_loop_one_step_landweber */</span></div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> </div>
-<div class="line"><a name="l00169"></a><span class="lineno"><a class="code" href="solver_8c.html#ab14e3227776d9378c195664f3ace8110"> 169</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="solver_8c.html#ab14e3227776d9378c195664f3ace8110" title="void solver_loop_one_step_steepest_descent">solver_loop_one_step_steepest_descent_complex</a>(<a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> {</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> <a class="code" href="group__nfftutil.html#ga630054cb816785d766959a867965f619" title="Copies .">nfft_cp_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52" title="Vector of Fourier coefficients, size is N_total [...]
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52" title="Vector of Fourier coefficients, size is N_total * [...]
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> </div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title="residual vector update">v_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv< [...]
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a56bf298c03c4aaeb6b4aaf7ed5cca57e" title="Pointer to the own transform.">mv_trafo</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector mult [...]
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title="residual vector update">v_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv< [...]
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> </div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> ths-><a class="code" href="structsolver__plan__complex.html#a0561b1d4bd014a175ef75d069cc592de" title="weighted dotproduct of v_iter">dot_v_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title=" [...]
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> ths-><a class="code" href="structsolver__plan__complex.html#a0561b1d4bd014a175ef75d069cc592de" title="weighted dotproduct of v_iter">dot_v_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title="residual ve [...]
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_iter</a> = ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> / ths-><a class="code" href="structsolver__plan__complex.html#a0561b1d4bd014a175ef75d069cc592de" [...]
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> </div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <a class="code" href="group__nfftutil.html#gad8e10773e59818c88a8ea2cb560b936e" title="Updates .">nfft_upd_xpawy_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_it [...]
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" tit [...]
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <a class="code" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4" title="Updates .">nfft_upd_xpay_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_ite [...]
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> <a class="code" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4" title="Updates .">nfft_upd_xpay_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a>, -ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_it [...]
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a2cb2df3ae5db867f38cb75b7c88de7fe" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> </div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title=" [...]
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated re [...]
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> </div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <a class="code" href="group__nfftutil.html#ga630054cb816785d766959a867965f619" title="Copies .">nfft_cp_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e" title="Vector of samples, size is M_total * sizeof( ff [...]
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e" title="Vector of samples, size is M_total * sizeof( fftw [...]
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> </div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vec [...]
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#add14030aae4920f7ca71ecf1efde00a3" title="Pointer to the own adjoint.">mv_adjoint</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector mult [...]
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vec [...]
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> </div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" [...]
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="res [...]
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> } <span class="comment">/* void solver_loop_one_step_steepest_descent */</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> </div>
-<div class="line"><a name="l00224"></a><span class="lineno"><a class="code" href="solver_8c.html#a376190a64969829c029532fd0957e184"> 224</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="solver_8c.html#a376190a64969829c029532fd0957e184" title="void solver_loop_one_step_cgnr">solver_loop_one_step_cgnr_complex</a>(<a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> {</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> <a class="code" href="group__nfftutil.html#ga630054cb816785d766959a867965f619" title="Copies .">nfft_cp_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52" title="Vector of Fourier coefficients, size is N_total [...]
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52" title="Vector of Fourier coefficients, size is N_total * [...]
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> </div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title="residual vector update">v_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv< [...]
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a56bf298c03c4aaeb6b4aaf7ed5cca57e" title="Pointer to the own transform.">mv_trafo</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector mult [...]
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title="residual vector update">v_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv< [...]
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> </div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> ths-><a class="code" href="structsolver__plan__complex.html#a0561b1d4bd014a175ef75d069cc592de" title="weighted dotproduct of v_iter">dot_v_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title=" [...]
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> ths-><a class="code" href="structsolver__plan__complex.html#a0561b1d4bd014a175ef75d069cc592de" title="weighted dotproduct of v_iter">dot_v_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title="residual ve [...]
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_iter</a> = ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> / ths-><a class="code" href="structsolver__plan__complex.html#a0561b1d4bd014a175ef75d069cc592de" [...]
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> </div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <a class="code" href="group__nfftutil.html#gad8e10773e59818c88a8ea2cb560b936e" title="Updates .">nfft_upd_xpawy_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_it [...]
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fouri [...]
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <a class="code" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4" title="Updates .">nfft_upd_xpay_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_ite [...]
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> </div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> <a class="code" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4" title="Updates .">nfft_upd_xpay_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a>, -ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_it [...]
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a2cb2df3ae5db867f38cb75b7c88de7fe" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> </div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title=" [...]
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated re [...]
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> </div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <a class="code" href="group__nfftutil.html#ga630054cb816785d766959a867965f619" title="Copies .">nfft_cp_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e" title="Vector of samples, size is M_total * sizeof( ff [...]
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e" title="Vector of samples, size is M_total * sizeof( fftw [...]
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> </div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vec [...]
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#add14030aae4920f7ca71ecf1efde00a3" title="Pointer to the own adjoint.">mv_adjoint</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector mult [...]
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vec [...]
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> ths-><a class="code" href="structsolver__plan__complex.html#aadb97426a0e35fd46a65557c56b055ee" title="previous dot_z_hat_iter">dot_z_hat_iter_old</a> = ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a>;</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" [...]
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="res [...]
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> ths-><a class="code" href="structsolver__plan__complex.html#af13036b1a6f6edabe3fd862f77cf5000" title="step size for search correction">beta_iter</a> = ths-><a class="code" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> / ths-><a class="code" href="structsolver__plan__complex.html#aadb97426a0e35fd46a65557c56b055ee" [...]
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> </div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <a class="code" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5" title="Updates .">nfft_upd_axpy_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#af13036b1a6f6edabe3fd862f77cf5000" title="step size for search correction">beta_iter</a [...]
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> } <span class="comment">/* void solver_loop_one_step_cgnr */</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> </div>
-<div class="line"><a name="l00287"></a><span class="lineno"><a class="code" href="solver_8c.html#a59278b7119c43bf23b9aaca6eae936e5"> 287</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="solver_8c.html#a59278b7119c43bf23b9aaca6eae936e5" title="void solver_loop_one_step_cgne">solver_loop_one_step_cgne_complex</a>(<a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> {</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_iter</a> = ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> / ths-><a class="code" href="structsolver__plan__complex.html#a0cced7bb2f3b85b75b765d796e2c741d" title=" [...]
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> </div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> <a class="code" href="group__nfftutil.html#gad8e10773e59818c88a8ea2cb560b936e" title="Updates .">nfft_upd_xpawy_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_it [...]
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fouri [...]
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> <a class="code" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4" title="Updates .">nfft_upd_xpay_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_ite [...]
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> </div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <a class="code" href="group__nfftutil.html#ga630054cb816785d766959a867965f619" title="Copies .">nfft_cp_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52" title="Vector of Fourier coefficients, size is N_total [...]
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52" title="Vector of Fourier coefficients, size is N_total * [...]
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> </div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a56bf298c03c4aaeb6b4aaf7ed5cca57e" title="Pointer to the own transform.">mv_trafo</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector mult [...]
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> </div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> <a class="code" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4" title="Updates .">nfft_upd_xpay_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a>, -ths-><a class="code" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02" title="step size for search direction">alpha_it [...]
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a2cb2df3ae5db867f38cb75b7c88de7fe" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> </div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> ths-><a class="code" href="structsolver__plan__complex.html#add3b6bc4149ba5371ef0b8bd91443e50" title="previous dot_r_iter">dot_r_iter_old</a> = ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a>;</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title=" [...]
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated re [...]
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> </div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> ths-><a class="code" href="structsolver__plan__complex.html#af13036b1a6f6edabe3fd862f77cf5000" title="step size for search correction">beta_iter</a> = ths-><a class="code" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe" title="weighted dotproduct of r_iter">dot_r_iter</a> / ths-><a class="code" href="structsolver__plan__complex.html#add3b6bc4149ba5371ef0b8bd91443e50" title=" [...]
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> </div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <a class="code" href="group__nfftutil.html#ga630054cb816785d766959a867965f619" title="Copies .">nfft_cp_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e" title="Vector of samples, size is M_total * sizeof( ff [...]
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e" title="Vector of samples, size is M_total * sizeof( fftw [...]
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> </div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#add14030aae4920f7ca71ecf1efde00a3" title="Pointer to the own adjoint.">mv_adjoint</a>(ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector mult [...]
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <a class="code" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5" title="Updates .">nfft_upd_axpy_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>, ths-><a class="code" href="structsolver__plan__complex.html#af13036b1a6f6edabe3fd862f77cf5000" title="step size for search correction">beta_iter</a [...]
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> </div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> ths-><a class="code" href="structsolver__plan__complex.html#a0cced7bb2f3b85b75b765d796e2c741d" title="weighted dotproduct of p_hat_iter">dot_p_hat_iter</a> = <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" [...]
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> ths-><a class="code" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> ths-><a class="code" href="structsolver__plan__complex.html#a0cced7bb2f3b85b75b765d796e2c741d" title="weighted dotproduct of p_hat_iter">dot_p_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="sea [...]
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> } <span class="comment">/* void solver_loop_one_step_cgne */</span></div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> </div>
-<div class="line"><a name="l00339"></a><span class="lineno"><a class="code" href="solver_8c.html#a3b80b04ee3429b04c310992fb0a12420"> 339</a></span> <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#a3b80b04ee3429b04c310992fb0a12420" title="void solver_loop_one_step">solver_loop_one_step_complex</a>(<a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> {</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & LANDWEBER)</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> <a class="code" href="solver_8c.html#a7e818bcb6dd61e2a7aa5748c8ee9d339" title="void solver_loop_one_step_landweber">solver_loop_one_step_landweber_complex</a>(ths);</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> </div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & STEEPEST_DESCENT)</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> <a class="code" href="solver_8c.html#ab14e3227776d9378c195664f3ace8110" title="void solver_loop_one_step_steepest_descent">solver_loop_one_step_steepest_descent_complex</a>(ths);</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & CGNR)</div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <a class="code" href="solver_8c.html#a376190a64969829c029532fd0957e184" title="void solver_loop_one_step_cgnr">solver_loop_one_step_cgnr_complex</a>(ths);</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> </div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & CGNE)</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <a class="code" href="solver_8c.html#a59278b7119c43bf23b9aaca6eae936e5" title="void solver_loop_one_step_cgne">solver_loop_one_step_cgne_complex</a>(ths);</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> } <span class="comment">/* void solver_loop_one_step */</span></div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> </div>
-<div class="line"><a name="l00355"></a><span class="lineno"><a class="code" href="solver_8c.html#a2f44c78734390e47d72578f4c9cbe709"> 355</a></span> <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#a2f44c78734390e47d72578f4c9cbe709" title="void solver_finalize">solver_finalize_complex</a>(<a class="code" href="structsolver__plan__complex.html">solver_plan_complex</a> *ths)</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> {</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c" title="weighting factors">w</a>);</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> </div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce" title="damping factors">w_hat</a>);</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> </div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & CGNR)</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> {</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title="residual vector update">v_iter</a>);</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03" title="residual of normal equation of first kind">z_hat_iter</a>);</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> }</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> </div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942" title="iteration type">flags</a> & STEEPEST_DESCENT)</div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5" title="residual vector update">v_iter</a>);</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> </div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce" title="search direction">p_hat_iter</a>);</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75" title="iterative solution">f_hat_iter</a>);</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> </div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3" title="iterated residual vector">r_iter</a>);</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde" title="right hand side, samples">y</a>);</div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> } </div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="comment">/****************************************************************************/</span></div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> <span class="comment">/****************************************************************************/</span></div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> <span class="comment">/****************************************************************************/</span></div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> </div>
-<div class="line"><a name="l00384"></a><span class="lineno"><a class="code" href="solver_8c.html#a1a4544ab96d14c812e3b330c439c3d80"> 384</a></span> <span class="keywordtype">void</span> <a class="code" href="nfft3_8h.html#a1a4544ab96d14c812e3b330c439c3d80" title="void solver_finalize">solver_init_advanced_double</a>(<a class="code" href="structsolver__plan__double.html">solver_plan_double</a>* ths, <a class="code" href="structnfft__mv__plan__double.html">nfft_mv_plan_double</a> *mv [...]
-<div class="line"><a name="l00385"></a><span class="lineno"> 385</span> {</div>
-<div class="line"><a name="l00386"></a><span class="lineno"> 386</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a> = mv;</div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> = flags;</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> </div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> ths-><a class="code" href="structsolver__plan__double.html#accc401c5912fe60922d4ce2b30132e18" title="right hand side, samples">y</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv [...]
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv [...]
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> ths-><a class="code" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1" title="iterative solution">f_hat_iter</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-& [...]
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search direction">p_hat_iter</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-> [...]
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> </div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & LANDWEBER)</div>
-<div class="line"><a name="l00395"></a><span class="lineno"> 395</span> ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a> = ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search direction">p_hat_iter</a>;</div>
-<div class="line"><a name="l00396"></a><span class="lineno"> 396</span> </div>
-<div class="line"><a name="l00397"></a><span class="lineno"> 397</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & STEEPEST_DESCENT)</div>
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> {</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a> = ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search direction">p_hat_iter</a>;</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="residual vector update">v_iter</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication"> [...]
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> }</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> </div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & CGNR)</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> {</div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vect [...]
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="residual vector update">v_iter</a> = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication"> [...]
-<div class="line"><a name="l00407"></a><span class="lineno"> 407</span> }</div>
-<div class="line"><a name="l00408"></a><span class="lineno"> 408</span> </div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & CGNE)</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a> = ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search direction">p_hat_iter</a>;</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> </div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> ths-><a class="code" href="structsolver__plan__double.html#adc2b7cea47756753ae9f8d5731f8d500" title="weighting factors">w</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a c [...]
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> </div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> ths-><a class="code" href="structsolver__plan__double.html#ab16ed4ac6cf04f57c4b1f194fbc09472" title="damping factors">w_hat</a> = (<span class="keywordtype">double</span>*) <a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a [...]
-<div class="line"><a name="l00417"></a><span class="lineno"> 417</span> }</div>
-<div class="line"><a name="l00418"></a><span class="lineno"> 418</span> </div>
-<div class="line"><a name="l00419"></a><span class="lineno"> 419</span> <span class="keyword">static</span> <span class="keywordtype">void</span> solver_init_double(<a class="code" href="structsolver__plan__double.html">solver_plan_double</a>* ths, <a class="code" href="structnfft__mv__plan__double.html">nfft_mv_plan_double</a> *mv)</div>
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> {</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <a class="code" href="nfft3_8h.html#a1a4544ab96d14c812e3b330c439c3d80" title="void solver_finalize">solver_init_advanced_double</a>(ths, mv, CGNR);</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> }</div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> </div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> <span class="keyword">static</span> <span class="keywordtype">void</span> solver_before_loop_double(<a class="code" href="structsolver__plan__double.html">solver_plan_double</a>* ths)</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> {</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac" title="Vector of Fourier coefficients, size is N_total * size [...]
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> </div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv< [...]
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a920771039e5cf889d6a29a243e6922e3" title="Pointer to the own transform.">mv_trafo</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multipl [...]
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv< [...]
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> </div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <a class="code" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3" title="Updates .">nfft_upd_axpy_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a>, -1.0, ths-><a class="code" href="structsolver__plan__double.html#accc401c5912fe60922d4ce2b30132e18" title="right hand side, samples">y</a>, ths-& [...]
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> </div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> <span class="keywordflow">if</span>((!(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & LANDWEBER)) || (ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & NORMS_FOR_LANDWEBER))</div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> {</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="itera [...]
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#af540ad90ef6b30fab022c95e8a5dcd58" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residua [...]
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> }</div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> </div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> <a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099" title="Copies .">nfft_cp_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e" title="Vector of samples, size is M_total * sizeof( doubl [...]
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e" title="Vector of samples, size is M_total * sizeof( double [...]
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> </div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vecto [...]
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a92e4080bcb7241befa250be9d8f9a1cd" title="Pointer to the own adjoint.">mv_adjoint</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multipl [...]
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vecto [...]
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> </div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> <span class="keywordflow">if</span>((!(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & LANDWEBER)) || (ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & NORMS_FOR_LANDWEBER))</div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> {</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" titl [...]
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual [...]
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00461"></a><span class="lineno"> 461</span> }</div>
-<div class="line"><a name="l00462"></a><span class="lineno"> 462</span> </div>
-<div class="line"><a name="l00463"></a><span class="lineno"> 463</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & CGNE)</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> ths-><a class="code" href="structsolver__plan__double.html#a21f781633362300a145e71ea88febbae" title="weighted dotproduct of p_hat_iter">dot_p_hat_iter</a> = ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a>;</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> </div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & CGNR)</div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search direction">p_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter [...]
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> } <span class="comment">/* void solver_before_loop */</span></div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> </div>
-<div class="line"><a name="l00471"></a><span class="lineno"><a class="code" href="solver_8c.html#a30d6a3373083167e38181c964d6a4288"> 471</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="solver_8c.html#a30d6a3373083167e38181c964d6a4288" title="void solver_loop_one_step_landweber">solver_loop_one_step_landweber_double</a>(<a class="code" href="structsolver__plan__double.html">solver_plan_double</a>* ths)</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> {</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> <a class="code" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0" title="Updates .">nfft_upd_xpawy_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter< [...]
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title= [...]
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> <a class="code" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064" title="Updates .">nfft_upd_xpay_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter</ [...]
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> </div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac" title="Vector of Fourier coefficients, size is N_total * size [...]
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> </div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</ [...]
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a920771039e5cf889d6a29a243e6922e3" title="Pointer to the own transform.">mv_trafo</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multipl [...]
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</ [...]
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> </div>
-<div class="line"><a name="l00487"></a><span class="lineno"> 487</span> <a class="code" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3" title="Updates .">nfft_upd_axpy_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a>, -1.0, ths-><a class="code" href="structsolver__plan__double.html#accc401c5912fe60922d4ce2b30132e18" title="right hand side, samples">y</a>, ths-& [...]
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> </div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & NORMS_FOR_LANDWEBER)</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> {</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="itera [...]
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#af540ad90ef6b30fab022c95e8a5dcd58" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residua [...]
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> }</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> </div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> <a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099" title="Copies .">nfft_cp_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e" title="Vector of samples, size is M_total * sizeof( doubl [...]
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e" title="Vector of samples, size is M_total * sizeof( double [...]
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> </div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector [...]
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a92e4080bcb7241befa250be9d8f9a1cd" title="Pointer to the own adjoint.">mv_adjoint</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multipl [...]
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector [...]
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> </div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & NORMS_FOR_LANDWEBER)</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> {</div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" titl [...]
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual [...]
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> }</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> } <span class="comment">/* void solver_loop_one_step_landweber */</span></div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> </div>
-<div class="line"><a name="l00520"></a><span class="lineno"><a class="code" href="solver_8c.html#a6fef0b0a380ed017554c41b78fccc477"> 520</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="solver_8c.html#a6fef0b0a380ed017554c41b78fccc477" title="void solver_loop_one_step_steepest_descent">solver_loop_one_step_steepest_descent_double</a>(<a class="code" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> {</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> <a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099" title="Copies .">nfft_cp_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac" title="Vector of Fourier coefficients, size is N_total * [...]
-<div class="line"><a name="l00524"></a><span class="lineno"> 524</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac" title="Vector of Fourier coefficients, size is N_total * si [...]
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> </div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="residual vector update">v_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a> [...]
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a920771039e5cf889d6a29a243e6922e3" title="Pointer to the own transform.">mv_trafo</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multipl [...]
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="residual vector update">v_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a> [...]
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> </div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> ths-><a class="code" href="structsolver__plan__double.html#a364a63cb093efa72e618a349a58d1890" title="weighted dotproduct of v_iter">dot_v_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="res [...]
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> ths-><a class="code" href="structsolver__plan__double.html#a364a63cb093efa72e618a349a58d1890" title="weighted dotproduct of v_iter">dot_v_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="residual vecto [...]
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> </div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter</a> = ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> / ths-><a class="code" href="structsolver__plan__double.html#a364a63cb093efa72e618a349a58d1890" ti [...]
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> </div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <a class="code" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0" title="Updates .">nfft_upd_xpawy_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter< [...]
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title= [...]
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <a class="code" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064" title="Updates .">nfft_upd_xpay_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter</ [...]
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> </div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> <a class="code" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064" title="Updates .">nfft_upd_xpay_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a>, -ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter< [...]
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#af540ad90ef6b30fab022c95e8a5dcd58" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> </div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="ite [...]
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated resid [...]
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> </div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> <a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099" title="Copies .">nfft_cp_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e" title="Vector of samples, size is M_total * sizeof( doubl [...]
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e" title="Vector of samples, size is M_total * sizeof( double [...]
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> </div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector [...]
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a92e4080bcb7241befa250be9d8f9a1cd" title="Pointer to the own adjoint.">mv_adjoint</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multipl [...]
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector [...]
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> </div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00568"></a><span class="lineno"> 568</span> ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" ti [...]
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residu [...]
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> } <span class="comment">/* void solver_loop_one_step_steepest_descent */</span></div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> </div>
-<div class="line"><a name="l00575"></a><span class="lineno"><a class="code" href="solver_8c.html#ae134ca120f6f4fcc96626c6a1acedfb6"> 575</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="solver_8c.html#ae134ca120f6f4fcc96626c6a1acedfb6" title="void solver_loop_one_step_cgnr">solver_loop_one_step_cgnr_double</a>(<a class="code" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> {</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> <a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099" title="Copies .">nfft_cp_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac" title="Vector of Fourier coefficients, size is N_total * [...]
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00581"></a><span class="lineno"> 581</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac" title="Vector of Fourier coefficients, size is N_total * si [...]
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> </div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="residual vector update">v_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a> [...]
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a920771039e5cf889d6a29a243e6922e3" title="Pointer to the own transform.">mv_trafo</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multipl [...]
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="residual vector update">v_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a> [...]
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> </div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> ths-><a class="code" href="structsolver__plan__double.html#a364a63cb093efa72e618a349a58d1890" title="weighted dotproduct of v_iter">dot_v_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="res [...]
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> ths-><a class="code" href="structsolver__plan__double.html#a364a63cb093efa72e618a349a58d1890" title="weighted dotproduct of v_iter">dot_v_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="residual vecto [...]
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> </div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter</a> = ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> / ths-><a class="code" href="structsolver__plan__double.html#a364a63cb093efa72e618a349a58d1890" ti [...]
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> </div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <a class="code" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0" title="Updates .">nfft_upd_xpawy_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter< [...]
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search direction">p_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier [...]
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <a class="code" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064" title="Updates .">nfft_upd_xpay_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter</ [...]
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> </div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <a class="code" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064" title="Updates .">nfft_upd_xpay_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a>, -ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter< [...]
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#af540ad90ef6b30fab022c95e8a5dcd58" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> </div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="ite [...]
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated resid [...]
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> </div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> <a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099" title="Copies .">nfft_cp_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e" title="Vector of samples, size is M_total * sizeof( doubl [...]
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e" title="Vector of samples, size is M_total * sizeof( double [...]
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> </div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector [...]
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a92e4080bcb7241befa250be9d8f9a1cd" title="Pointer to the own adjoint.">mv_adjoint</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multipl [...]
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> <a class="code" href="group__nfftutil.html#ga4d8733560ed5e4cc3ff7ecadac62e83e" title="Swapping of two vectors.">NFFT_SWAP_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>,ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector [...]
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> </div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> ths-><a class="code" href="structsolver__plan__double.html#a35f2567cc25bcfce28dbb48eba5e49c9" title="previous dot_z_hat_iter">dot_z_hat_iter_old</a> = ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a>;</div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" ti [...]
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residu [...]
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> </div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> ths-><a class="code" href="structsolver__plan__double.html#aebfe38cf3b3ca344bbfbb7b1cf41eca8" title="step size for search correction">beta_iter</a> = ths-><a class="code" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea" title="weighted dotproduct of z_hat_iter">dot_z_hat_iter</a> / ths-><a class="code" href="structsolver__plan__double.html#a35f2567cc25bcfce28dbb48eba5e49c9" ti [...]
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> </div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> <a class="code" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3" title="Updates .">nfft_upd_axpy_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search direction">p_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#aebfe38cf3b3ca344bbfbb7b1cf41eca8" title="step size for search correction">beta_iter</a>, [...]
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> } <span class="comment">/* void solver_loop_one_step_cgnr */</span></div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> </div>
-<div class="line"><a name="l00638"></a><span class="lineno"><a class="code" href="solver_8c.html#a206a5fe70bfb6853a2a9a9551e12b2db"> 638</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="solver_8c.html#a206a5fe70bfb6853a2a9a9551e12b2db" title="void solver_loop_one_step_cgne">solver_loop_one_step_cgne_double</a>(<a class="code" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> {</div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter</a> = ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> / ths-><a class="code" href="structsolver__plan__double.html#a21f781633362300a145e71ea88febbae" title="wei [...]
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> </div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> <a class="code" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0" title="Updates .">nfft_upd_xpawy_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter< [...]
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search direction">p_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier [...]
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> <a class="code" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064" title="Updates .">nfft_upd_xpay_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1" title="iterative solution">f_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter</ [...]
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> </div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099" title="Copies .">nfft_cp_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac" title="Vector of Fourier coefficients, size is N_total * [...]
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac" title="Vector of Fourier coefficients, size is N_total * si [...]
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> </div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a920771039e5cf889d6a29a243e6922e3" title="Pointer to the own transform.">mv_trafo</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multipl [...]
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> </div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> <a class="code" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064" title="Updates .">nfft_upd_xpay_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a>, -ths-><a class="code" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b" title="step size for search direction">alpha_iter< [...]
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#af540ad90ef6b30fab022c95e8a5dcd58" title="Total number of samples.">M_total</a>);</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> </div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> ths-><a class="code" href="structsolver__plan__double.html#a5d47ba554ae4d190384eaca6250f7312" title="previous dot_r_iter">dot_r_iter_old</a> = ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a>;</div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="ite [...]
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated resid [...]
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> </div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> ths-><a class="code" href="structsolver__plan__double.html#aebfe38cf3b3ca344bbfbb7b1cf41eca8" title="step size for search correction">beta_iter</a> = ths-><a class="code" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b" title="weighted dotproduct of r_iter">dot_r_iter</a> / ths-><a class="code" href="structsolver__plan__double.html#a5d47ba554ae4d190384eaca6250f7312" title="pre [...]
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> </div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> <span class="comment">/*-----------------*/</span></div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> <a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099" title="Copies .">nfft_cp_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e" title="Vector of samples, size is M_total * sizeof( doubl [...]
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e" title="Vector of samples, size is M_total * sizeof( double [...]
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> </div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#a92e4080bcb7241befa250be9d8f9a1cd" title="Pointer to the own adjoint.">mv_adjoint</a>(ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multipl [...]
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> </div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> <a class="code" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3" title="Updates .">nfft_upd_axpy_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search direction">p_hat_iter</a>, ths-><a class="code" href="structsolver__plan__double.html#aebfe38cf3b3ca344bbfbb7b1cf41eca8" title="step size for search correction">beta_iter</a>, [...]
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> </div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> ths-><a class="code" href="structsolver__plan__double.html#a21f781633362300a145e71ea88febbae" title="weighted dotproduct of p_hat_iter">dot_p_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" ti [...]
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> ths-><a class="code" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404" title="matrix vector multiplication">mv</a>-><a class="code" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41" title="Total number of Fourier coefficients.">N_total</a>);</div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> ths-><a class="code" href="structsolver__plan__double.html#a21f781633362300a145e71ea88febbae" title="weighted dotproduct of p_hat_iter">dot_p_hat_iter</a> = <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search [...]
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> } <span class="comment">/* void solver_loop_one_step_cgne */</span></div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> </div>
-<div class="line"><a name="l00690"></a><span class="lineno"><a class="code" href="solver_8c.html#a89adea45056c1b5c8d90cfd87325be4e"> 690</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="solver_8c.html#a89adea45056c1b5c8d90cfd87325be4e" title="void solver_loop_one_step">solver_loop_one_step_double</a>(<a class="code" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> {</div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & LANDWEBER)</div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> <a class="code" href="solver_8c.html#a30d6a3373083167e38181c964d6a4288" title="void solver_loop_one_step_landweber">solver_loop_one_step_landweber_double</a>(ths);</div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> </div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & STEEPEST_DESCENT)</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> <a class="code" href="solver_8c.html#a6fef0b0a380ed017554c41b78fccc477" title="void solver_loop_one_step_steepest_descent">solver_loop_one_step_steepest_descent_double</a>(ths);</div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> </div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & CGNR)</div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <a class="code" href="solver_8c.html#ae134ca120f6f4fcc96626c6a1acedfb6" title="void solver_loop_one_step_cgnr">solver_loop_one_step_cgnr_double</a>(ths);</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> </div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & CGNE)</div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> <a class="code" href="solver_8c.html#a206a5fe70bfb6853a2a9a9551e12b2db" title="void solver_loop_one_step_cgne">solver_loop_one_step_cgne_double</a>(ths);</div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> } <span class="comment">/* void solver_loop_one_step */</span></div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> </div>
-<div class="line"><a name="l00706"></a><span class="lineno"><a class="code" href="solver_8c.html#a6d04f270b539a9f48b3521ba973829bf"> 706</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="solver_8c.html#a6d04f270b539a9f48b3521ba973829bf" title="void solver_finalize">solver_finalize_double</a>(<a class="code" href="structsolver__plan__double.html">solver_plan_double</a> *ths)</div>
-<div class="line"><a name="l00707"></a><span class="lineno"> 707</span> {</div>
-<div class="line"><a name="l00708"></a><span class="lineno"> 708</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_WEIGHT)</div>
-<div class="line"><a name="l00709"></a><span class="lineno"> 709</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__double.html#adc2b7cea47756753ae9f8d5731f8d500" title="weighting factors">w</a>);</div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> </div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & PRECOMPUTE_DAMP)</div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__double.html#ab16ed4ac6cf04f57c4b1f194fbc09472" title="damping factors">w_hat</a>);</div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> </div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & CGNR)</div>
-<div class="line"><a name="l00715"></a><span class="lineno"> 715</span> {</div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="residual vector update">v_iter</a>);</div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48" title="residual of normal equation of first kind">z_hat_iter</a>);</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> }</div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> </div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> <span class="keywordflow">if</span>(ths-><a class="code" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4" title="iteration type">flags</a> & STEEPEST_DESCENT)</div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2" title="residual vector update">v_iter</a>);</div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> </div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677" title="search direction">p_hat_iter</a>);</div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1" title="iterative solution">f_hat_iter</a>);</div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> </div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183" title="iterated residual vector">r_iter</a>);</div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structsolver__plan__double.html#accc401c5912fe60922d4ce2b30132e18" title="right hand side, samples">y</a>);</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> } </div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/solver__adjoint_8h.html b/doc/api/html/solver__adjoint_8h.html
deleted file mode 100644
index 5edcaca..0000000
--- a/doc/api/html/solver__adjoint_8h.html
+++ /dev/null
@@ -1,1052 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - solver_adjoint.h File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#nested-classes">Data Structures</a> |
-<a href="#define-members">Macros</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">solver_adjoint.h File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Header file for adjoint solver.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-</div>
-<p><a href="solver__adjoint_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html">infsft_adjoint_plan</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">TODO: different solvers. <a href="structinfsft__adjoint__plan.html#details">More...</a><br/></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html">infft_adjoint_plan</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Structure for an adjoint transform plan. <a href="structinfft__adjoint__plan.html#details">More...</a><br/></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html">infct_adjoint_plan</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Structure for an adjoint transform plan. <a href="structinfct__adjoint__plan.html#details">More...</a><br/></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html">infst_adjoint_plan</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Structure for an adjoint transform plan. <a href="structinfst__adjoint__plan.html#details">More...</a><br/></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html">innfft_adjoint_plan</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Structure for an adjoint transform plan. <a href="structinnfft__adjoint__plan.html#details">More...</a><br/></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html">imri_inh_2d1d_adjoint_plan</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Structure for an adjoint transform plan. <a href="structimri__inh__2d1d__adjoint__plan.html#details">More...</a><br/></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html">imri_inh_3d_adjoint_plan</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Structure for an adjoint transform plan. <a href="structimri__inh__3d__adjoint__plan.html#details">More...</a><br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="define-members"></a>
-Macros</h2></td></tr>
-<tr class="memitem:ab0b31397c6f400b1f58af9f1c7b7b637"><td class="memItemLeft" align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637">MACRO_SOLVER_ADJOINT_PLAN</a>(MV, FLT, FLT_TYPE)</td></tr>
-<tr class="memdesc:ab0b31397c6f400b1f58af9f1c7b7b637"><td class="mdescLeft"> </td><td class="mdescRight">Include NFFT3 header. <a href="#ab0b31397c6f400b1f58af9f1c7b7b637"></a><br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a040cb361de66313ccbad17f746cc748d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a040cb361de66313ccbad17f746cc748d">infsft_adjoint_init</a> (adjointnfsft_plan *ths, <a class="el" href="structnfsft__plan.html">nfsft_plan</a> *mv)</td></tr>
-<tr class="memdesc:a040cb361de66313ccbad17f746cc748d"><td class="mdescLeft"> </td><td class="mdescRight">Simple initialisation. <a href="#a040cb361de66313ccbad17f746cc748d"></a><br/></td></tr>
-<tr class="memitem:a0a162589cc358719488082d0b3e42e0e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a0a162589cc358719488082d0b3e42e0e">infsft_adjoint_init_advanced</a> (adjointnfsft_plan *ths, <a class="el" href="structnfsft__plan.html">nfsft_plan</a>,*mv, unsigned adjointnfsft_flags)</td></tr>
-<tr class="memdesc:a0a162589cc358719488082d0b3e42e0e"><td class="mdescLeft"> </td><td class="mdescRight">Advanced initialisation. <a href="#a0a162589cc358719488082d0b3e42e0e"></a><br/></td></tr>
-<tr class="memitem:a26dbcae80a2db01144d523cb3d22a01d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a26dbcae80a2db01144d523cb3d22a01d">infsft_adjoint_before_loop</a> (adjointnfsft_plan *ths)</td></tr>
-<tr class="memdesc:a26dbcae80a2db01144d523cb3d22a01d"><td class="mdescLeft"> </td><td class="mdescRight">Setting up residuals before the actual iteration. <a href="#a26dbcae80a2db01144d523cb3d22a01d"></a><br/></td></tr>
-<tr class="memitem:a03fc19c8d3c7b8a49c8751a2a88e0d09"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a03fc19c8d3c7b8a49c8751a2a88e0d09">infsft_adjoint_loop_one_step</a> (adjointnfsft_plan *ths)</td></tr>
-<tr class="memdesc:a03fc19c8d3c7b8a49c8751a2a88e0d09"><td class="mdescLeft"> </td><td class="mdescRight">Doing one step in the iteration. <a href="#a03fc19c8d3c7b8a49c8751a2a88e0d09"></a><br/></td></tr>
-<tr class="memitem:adb479e2343fef9fbafdc5d8d65085aee"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#adb479e2343fef9fbafdc5d8d65085aee">infsft_adjoint_finalize</a> (adjointnfsft_plan *ths)</td></tr>
-<tr class="memdesc:adb479e2343fef9fbafdc5d8d65085aee"><td class="mdescLeft"> </td><td class="mdescRight">Destroys the plan for the adjoint transform. <a href="#adb479e2343fef9fbafdc5d8d65085aee"></a><br/></td></tr>
-<tr class="memitem:ae93aa72dcb2528111f021c952482c244"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#ae93aa72dcb2528111f021c952482c244">infft_adjoint_init</a> (adjointnfft_plan *ths, <a class="el" href="structnfft__plan.html">nfft_plan</a> *mv)</td></tr>
-<tr class="memdesc:ae93aa72dcb2528111f021c952482c244"><td class="mdescLeft"> </td><td class="mdescRight">Simple initialisation. <a href="#ae93aa72dcb2528111f021c952482c244"></a><br/></td></tr>
-<tr class="memitem:adf47a7ff42ca521526db42b4d3a68f98"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#adf47a7ff42ca521526db42b4d3a68f98">infft_adjoint_init_advanced</a> (adjointnfft_plan *ths, <a class="el" href="structnfft__plan.html">nfft_plan</a>,*mv, unsigned adjointnfft_flags)</td></tr>
-<tr class="memdesc:adf47a7ff42ca521526db42b4d3a68f98"><td class="mdescLeft"> </td><td class="mdescRight">Advanced initialisation. <a href="#adf47a7ff42ca521526db42b4d3a68f98"></a><br/></td></tr>
-<tr class="memitem:a2a31ddf66394b88a4dd1545278e205b5"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a2a31ddf66394b88a4dd1545278e205b5">infft_adjoint_before_loop</a> (adjointnfft_plan *ths)</td></tr>
-<tr class="memdesc:a2a31ddf66394b88a4dd1545278e205b5"><td class="mdescLeft"> </td><td class="mdescRight">Setting up residuals before the actual iteration. <a href="#a2a31ddf66394b88a4dd1545278e205b5"></a><br/></td></tr>
-<tr class="memitem:a219ff15a153205b04eec76860cb4d6eb"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a219ff15a153205b04eec76860cb4d6eb">infft_adjoint_loop_one_step</a> (adjointnfft_plan *ths)</td></tr>
-<tr class="memdesc:a219ff15a153205b04eec76860cb4d6eb"><td class="mdescLeft"> </td><td class="mdescRight">Doing one step in the iteration. <a href="#a219ff15a153205b04eec76860cb4d6eb"></a><br/></td></tr>
-<tr class="memitem:a826591281cbec37c2a032eaecbbacf9d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a826591281cbec37c2a032eaecbbacf9d">infft_adjoint_finalize</a> (adjointnfft_plan *ths)</td></tr>
-<tr class="memdesc:a826591281cbec37c2a032eaecbbacf9d"><td class="mdescLeft"> </td><td class="mdescRight">Destroys the plan for the adjoint transform. <a href="#a826591281cbec37c2a032eaecbbacf9d"></a><br/></td></tr>
-<tr class="memitem:a695c20cc98df4bbd370240bee9703e77"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a695c20cc98df4bbd370240bee9703e77">infct_adjoint_init</a> (adjointnfct_plan *ths, <a class="el" href="structnfct__plan.html">nfct_plan</a> *mv)</td></tr>
-<tr class="memdesc:a695c20cc98df4bbd370240bee9703e77"><td class="mdescLeft"> </td><td class="mdescRight">Simple initialisation. <a href="#a695c20cc98df4bbd370240bee9703e77"></a><br/></td></tr>
-<tr class="memitem:a4fcee80a5fbbe901b8d51717dc07ae24"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a4fcee80a5fbbe901b8d51717dc07ae24">infct_adjoint_init_advanced</a> (adjointnfct_plan *ths, <a class="el" href="structnfct__plan.html">nfct_plan</a>,*mv, unsigned adjointnfct_flags)</td></tr>
-<tr class="memdesc:a4fcee80a5fbbe901b8d51717dc07ae24"><td class="mdescLeft"> </td><td class="mdescRight">Advanced initialisation. <a href="#a4fcee80a5fbbe901b8d51717dc07ae24"></a><br/></td></tr>
-<tr class="memitem:a7bfc5594bbdc3d6c58fb10713a03bc40"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a7bfc5594bbdc3d6c58fb10713a03bc40">infct_adjoint_before_loop</a> (adjointnfct_plan *ths)</td></tr>
-<tr class="memdesc:a7bfc5594bbdc3d6c58fb10713a03bc40"><td class="mdescLeft"> </td><td class="mdescRight">Setting up residuals before the actual iteration. <a href="#a7bfc5594bbdc3d6c58fb10713a03bc40"></a><br/></td></tr>
-<tr class="memitem:a36eef8da31026b71a865108b095768cc"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a36eef8da31026b71a865108b095768cc">infct_adjoint_loop_one_step</a> (adjointnfct_plan *ths)</td></tr>
-<tr class="memdesc:a36eef8da31026b71a865108b095768cc"><td class="mdescLeft"> </td><td class="mdescRight">Doing one step in the iteration. <a href="#a36eef8da31026b71a865108b095768cc"></a><br/></td></tr>
-<tr class="memitem:a48c89f97b3f452ee3aedb245d064f24e"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a48c89f97b3f452ee3aedb245d064f24e">infct_adjoint_finalize</a> (adjointnfct_plan *ths)</td></tr>
-<tr class="memdesc:a48c89f97b3f452ee3aedb245d064f24e"><td class="mdescLeft"> </td><td class="mdescRight">Destroys the plan for the adjoint transform. <a href="#a48c89f97b3f452ee3aedb245d064f24e"></a><br/></td></tr>
-<tr class="memitem:a332fad4381e89b483482e53fa39604e3"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a332fad4381e89b483482e53fa39604e3">infst_adjoint_init</a> (adjointnfst_plan *ths, <a class="el" href="structnfst__plan.html">nfst_plan</a> *mv)</td></tr>
-<tr class="memdesc:a332fad4381e89b483482e53fa39604e3"><td class="mdescLeft"> </td><td class="mdescRight">Simple initialisation. <a href="#a332fad4381e89b483482e53fa39604e3"></a><br/></td></tr>
-<tr class="memitem:ac5ad72ccf1af482d623242389bc154b2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#ac5ad72ccf1af482d623242389bc154b2">infst_adjoint_init_advanced</a> (adjointnfst_plan *ths, <a class="el" href="structnfst__plan.html">nfst_plan</a>,*mv, unsigned adjointnfst_flags)</td></tr>
-<tr class="memdesc:ac5ad72ccf1af482d623242389bc154b2"><td class="mdescLeft"> </td><td class="mdescRight">Advanced initialisation. <a href="#ac5ad72ccf1af482d623242389bc154b2"></a><br/></td></tr>
-<tr class="memitem:a4a5720df6bfee236588f38e516e32c90"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a4a5720df6bfee236588f38e516e32c90">infst_adjoint_before_loop</a> (adjointnfst_plan *ths)</td></tr>
-<tr class="memdesc:a4a5720df6bfee236588f38e516e32c90"><td class="mdescLeft"> </td><td class="mdescRight">Setting up residuals before the actual iteration. <a href="#a4a5720df6bfee236588f38e516e32c90"></a><br/></td></tr>
-<tr class="memitem:a57df76147b89e6e204a465fd437fbaae"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a57df76147b89e6e204a465fd437fbaae">infst_adjoint_loop_one_step</a> (adjointnfst_plan *ths)</td></tr>
-<tr class="memdesc:a57df76147b89e6e204a465fd437fbaae"><td class="mdescLeft"> </td><td class="mdescRight">Doing one step in the iteration. <a href="#a57df76147b89e6e204a465fd437fbaae"></a><br/></td></tr>
-<tr class="memitem:a086451cc556027d5e909eb7d1c1249b7"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a086451cc556027d5e909eb7d1c1249b7">infst_adjoint_finalize</a> (adjointnfst_plan *ths)</td></tr>
-<tr class="memdesc:a086451cc556027d5e909eb7d1c1249b7"><td class="mdescLeft"> </td><td class="mdescRight">Destroys the plan for the adjoint transform. <a href="#a086451cc556027d5e909eb7d1c1249b7"></a><br/></td></tr>
-<tr class="memitem:ab4dcbe373e99d9c010034c6eecdfea86"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#ab4dcbe373e99d9c010034c6eecdfea86">innfft_adjoint_init</a> (adjointnnfft_plan *ths, <a class="el" href="structnnfft__plan.html">nnfft_plan</a> *mv)</td></tr>
-<tr class="memdesc:ab4dcbe373e99d9c010034c6eecdfea86"><td class="mdescLeft"> </td><td class="mdescRight">Simple initialisation. <a href="#ab4dcbe373e99d9c010034c6eecdfea86"></a><br/></td></tr>
-<tr class="memitem:aac4fe9056cb5a96170ba6122e20d116a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#aac4fe9056cb5a96170ba6122e20d116a">innfft_adjoint_init_advanced</a> (adjointnnfft_plan *ths, <a class="el" href="structnnfft__plan.html">nnfft_plan</a>,*mv, unsigned adjointnnfft_flags)</td></tr>
-<tr class="memdesc:aac4fe9056cb5a96170ba6122e20d116a"><td class="mdescLeft"> </td><td class="mdescRight">Advanced initialisation. <a href="#aac4fe9056cb5a96170ba6122e20d116a"></a><br/></td></tr>
-<tr class="memitem:a3c7be955a46b3d056b5d38324f2d2068"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a3c7be955a46b3d056b5d38324f2d2068">innfft_adjoint_before_loop</a> (adjointnnfft_plan *ths)</td></tr>
-<tr class="memdesc:a3c7be955a46b3d056b5d38324f2d2068"><td class="mdescLeft"> </td><td class="mdescRight">Setting up residuals before the actual iteration. <a href="#a3c7be955a46b3d056b5d38324f2d2068"></a><br/></td></tr>
-<tr class="memitem:a9e80774fcedbd2a50e4146290de9ce3f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a9e80774fcedbd2a50e4146290de9ce3f">innfft_adjoint_loop_one_step</a> (adjointnnfft_plan *ths)</td></tr>
-<tr class="memdesc:a9e80774fcedbd2a50e4146290de9ce3f"><td class="mdescLeft"> </td><td class="mdescRight">Doing one step in the iteration. <a href="#a9e80774fcedbd2a50e4146290de9ce3f"></a><br/></td></tr>
-<tr class="memitem:a1316a1ad32f611899e446cd98d3b0b0d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a1316a1ad32f611899e446cd98d3b0b0d">innfft_adjoint_finalize</a> (adjointnnfft_plan *ths)</td></tr>
-<tr class="memdesc:a1316a1ad32f611899e446cd98d3b0b0d"><td class="mdescLeft"> </td><td class="mdescRight">Destroys the plan for the adjoint transform. <a href="#a1316a1ad32f611899e446cd98d3b0b0d"></a><br/></td></tr>
-<tr class="memitem:ae0f7ba8180888f8f70aff1b041f4ec57"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#ae0f7ba8180888f8f70aff1b041f4ec57">imri_inh_2d1d_adjoint_init</a> (adjointmri_inh_2d1d_plan *ths, <a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> *mv)</td></tr>
-<tr class="memdesc:ae0f7ba8180888f8f70aff1b041f4ec57"><td class="mdescLeft"> </td><td class="mdescRight">Simple initialisation. <a href="#ae0f7ba8180888f8f70aff1b041f4ec57"></a><br/></td></tr>
-<tr class="memitem:a61bb41310d86e96ad1912ce486930bea"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a61bb41310d86e96ad1912ce486930bea">imri_inh_2d1d_adjoint_init_advanced</a> (adjointmri_inh_2d1d_plan *ths, <a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a>,*mv, unsigned adjointmri_inh_2d1d_flags)</td></tr>
-<tr class="memdesc:a61bb41310d86e96ad1912ce486930bea"><td class="mdescLeft"> </td><td class="mdescRight">Advanced initialisation. <a href="#a61bb41310d86e96ad1912ce486930bea"></a><br/></td></tr>
-<tr class="memitem:a39cce38619ea8d9ce84326173e2d091b"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a39cce38619ea8d9ce84326173e2d091b">imri_inh_2d1d_adjoint_before_loop</a> (adjointmri_inh_2d1d_plan *ths)</td></tr>
-<tr class="memdesc:a39cce38619ea8d9ce84326173e2d091b"><td class="mdescLeft"> </td><td class="mdescRight">Setting up residuals before the actual iteration. <a href="#a39cce38619ea8d9ce84326173e2d091b"></a><br/></td></tr>
-<tr class="memitem:a84b7c58708fe95ff8234638689a30302"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a84b7c58708fe95ff8234638689a30302">imri_inh_2d1d_adjoint_loop_one_step</a> (adjointmri_inh_2d1d_plan *ths)</td></tr>
-<tr class="memdesc:a84b7c58708fe95ff8234638689a30302"><td class="mdescLeft"> </td><td class="mdescRight">Doing one step in the iteration. <a href="#a84b7c58708fe95ff8234638689a30302"></a><br/></td></tr>
-<tr class="memitem:a7b403058cdba0d2918690b2d1d577912"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a7b403058cdba0d2918690b2d1d577912">imri_inh_2d1d_adjoint_finalize</a> (adjointmri_inh_2d1d_plan *ths)</td></tr>
-<tr class="memdesc:a7b403058cdba0d2918690b2d1d577912"><td class="mdescLeft"> </td><td class="mdescRight">Destroys the plan for the adjoint transform. <a href="#a7b403058cdba0d2918690b2d1d577912"></a><br/></td></tr>
-<tr class="memitem:a6275d93dac2957a4acad3bda978c98cd"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a6275d93dac2957a4acad3bda978c98cd">imri_inh_3d_adjoint_init</a> (adjointmri_inh_3d_plan *ths, <a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> *mv)</td></tr>
-<tr class="memdesc:a6275d93dac2957a4acad3bda978c98cd"><td class="mdescLeft"> </td><td class="mdescRight">Simple initialisation. <a href="#a6275d93dac2957a4acad3bda978c98cd"></a><br/></td></tr>
-<tr class="memitem:afb6ade8e78c1dfdc7e513c6e8fa7ffb6"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#afb6ade8e78c1dfdc7e513c6e8fa7ffb6">imri_inh_3d_adjoint_init_advanced</a> (adjointmri_inh_3d_plan *ths, <a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a>,*mv, unsigned adjointmri_inh_3d_flags)</td></tr>
-<tr class="memdesc:afb6ade8e78c1dfdc7e513c6e8fa7ffb6"><td class="mdescLeft"> </td><td class="mdescRight">Advanced initialisation. <a href="#afb6ade8e78c1dfdc7e513c6e8fa7ffb6"></a><br/></td></tr>
-<tr class="memitem:a9a8864136de1ff61970eeed934350238"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a9a8864136de1ff61970eeed934350238">imri_inh_3d_adjoint_before_loop</a> (adjointmri_inh_3d_plan *ths)</td></tr>
-<tr class="memdesc:a9a8864136de1ff61970eeed934350238"><td class="mdescLeft"> </td><td class="mdescRight">Setting up residuals before the actual iteration. <a href="#a9a8864136de1ff61970eeed934350238"></a><br/></td></tr>
-<tr class="memitem:a7e65b366bd5003cef9c16e640591b972"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a7e65b366bd5003cef9c16e640591b972">imri_inh_3d_adjoint_loop_one_step</a> (adjointmri_inh_3d_plan *ths)</td></tr>
-<tr class="memdesc:a7e65b366bd5003cef9c16e640591b972"><td class="mdescLeft"> </td><td class="mdescRight">Doing one step in the iteration. <a href="#a7e65b366bd5003cef9c16e640591b972"></a><br/></td></tr>
-<tr class="memitem:a48c6fe11c01d742025c7eb7bf7ac9002"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="solver__adjoint_8h.html#a48c6fe11c01d742025c7eb7bf7ac9002">imri_inh_3d_adjoint_finalize</a> (adjointmri_inh_3d_plan *ths)</td></tr>
-<tr class="memdesc:a48c6fe11c01d742025c7eb7bf7ac9002"><td class="mdescLeft"> </td><td class="mdescRight">Destroys the plan for the adjoint transform. <a href="#a48c6fe11c01d742025c7eb7bf7ac9002"></a><br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Header file for adjoint solver. </p>
-
-<p>Definition in file <a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>.</p>
-</div><hr/><h2>Macro Definition Documentation</h2>
-<a class="anchor" id="ab0b31397c6f400b1f58af9f1c7b7b637"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">#define MACRO_SOLVER_ADJOINT_PLAN</td>
- <td>(</td>
- <td class="paramtype"> </td>
- <td class="paramname">MV, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">FLT, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"> </td>
- <td class="paramname">FLT_TYPE </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Include NFFT3 header. </p>
-
-<p>Definition at line <a class="el" href="solver__adjoint_8h_source.html#l00035">35</a> of file <a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>.</p>
-
-</div>
-</div>
-<hr/><h2>Function Documentation</h2>
-<a class="anchor" id="a040cb361de66313ccbad17f746cc748d"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infsft_adjoint_init </td>
- <td>(</td>
- <td class="paramtype">adjointnfsft_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structnfsft__plan.html">nfsft_plan</a> * </td>
- <td class="paramname"><em>mv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Simple initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a0a162589cc358719488082d0b3e42e0e"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infsft_adjoint_init_advanced </td>
- <td>(</td>
- <td class="paramtype">adjointnfsft_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structnfsft__plan.html">nfsft_plan</a> </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">* </td>
- <td class="paramname"><em>mv</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>adjointnfsft_flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Advanced initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a26dbcae80a2db01144d523cb3d22a01d"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infsft_adjoint_before_loop </td>
- <td>(</td>
- <td class="paramtype">adjointnfsft_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Setting up residuals before the actual iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a03fc19c8d3c7b8a49c8751a2a88e0d09"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infsft_adjoint_loop_one_step </td>
- <td>(</td>
- <td class="paramtype">adjointnfsft_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Doing one step in the iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="adb479e2343fef9fbafdc5d8d65085aee"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infsft_adjoint_finalize </td>
- <td>(</td>
- <td class="paramtype">adjointnfsft_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Destroys the plan for the adjoint transform. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="ae93aa72dcb2528111f021c952482c244"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infft_adjoint_init </td>
- <td>(</td>
- <td class="paramtype">adjointnfft_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structnfft__plan.html">nfft_plan</a> * </td>
- <td class="paramname"><em>mv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Simple initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="adf47a7ff42ca521526db42b4d3a68f98"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infft_adjoint_init_advanced </td>
- <td>(</td>
- <td class="paramtype">adjointnfft_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structnfft__plan.html">nfft_plan</a> </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">* </td>
- <td class="paramname"><em>mv</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>adjointnfft_flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Advanced initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a2a31ddf66394b88a4dd1545278e205b5"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infft_adjoint_before_loop </td>
- <td>(</td>
- <td class="paramtype">adjointnfft_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Setting up residuals before the actual iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a219ff15a153205b04eec76860cb4d6eb"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infft_adjoint_loop_one_step </td>
- <td>(</td>
- <td class="paramtype">adjointnfft_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Doing one step in the iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a826591281cbec37c2a032eaecbbacf9d"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infft_adjoint_finalize </td>
- <td>(</td>
- <td class="paramtype">adjointnfft_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Destroys the plan for the adjoint transform. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a695c20cc98df4bbd370240bee9703e77"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infct_adjoint_init </td>
- <td>(</td>
- <td class="paramtype">adjointnfct_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structnfct__plan.html">nfct_plan</a> * </td>
- <td class="paramname"><em>mv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Simple initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a4fcee80a5fbbe901b8d51717dc07ae24"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infct_adjoint_init_advanced </td>
- <td>(</td>
- <td class="paramtype">adjointnfct_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structnfct__plan.html">nfct_plan</a> </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">* </td>
- <td class="paramname"><em>mv</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>adjointnfct_flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Advanced initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a7bfc5594bbdc3d6c58fb10713a03bc40"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infct_adjoint_before_loop </td>
- <td>(</td>
- <td class="paramtype">adjointnfct_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Setting up residuals before the actual iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a36eef8da31026b71a865108b095768cc"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infct_adjoint_loop_one_step </td>
- <td>(</td>
- <td class="paramtype">adjointnfct_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Doing one step in the iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a48c89f97b3f452ee3aedb245d064f24e"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infct_adjoint_finalize </td>
- <td>(</td>
- <td class="paramtype">adjointnfct_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Destroys the plan for the adjoint transform. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a332fad4381e89b483482e53fa39604e3"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infst_adjoint_init </td>
- <td>(</td>
- <td class="paramtype">adjointnfst_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structnfst__plan.html">nfst_plan</a> * </td>
- <td class="paramname"><em>mv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Simple initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="ac5ad72ccf1af482d623242389bc154b2"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infst_adjoint_init_advanced </td>
- <td>(</td>
- <td class="paramtype">adjointnfst_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structnfst__plan.html">nfst_plan</a> </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">* </td>
- <td class="paramname"><em>mv</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>adjointnfst_flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Advanced initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a4a5720df6bfee236588f38e516e32c90"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infst_adjoint_before_loop </td>
- <td>(</td>
- <td class="paramtype">adjointnfst_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Setting up residuals before the actual iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a57df76147b89e6e204a465fd437fbaae"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infst_adjoint_loop_one_step </td>
- <td>(</td>
- <td class="paramtype">adjointnfst_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Doing one step in the iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a086451cc556027d5e909eb7d1c1249b7"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void infst_adjoint_finalize </td>
- <td>(</td>
- <td class="paramtype">adjointnfst_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Destroys the plan for the adjoint transform. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="ab4dcbe373e99d9c010034c6eecdfea86"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void innfft_adjoint_init </td>
- <td>(</td>
- <td class="paramtype">adjointnnfft_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structnnfft__plan.html">nnfft_plan</a> * </td>
- <td class="paramname"><em>mv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Simple initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="aac4fe9056cb5a96170ba6122e20d116a"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void innfft_adjoint_init_advanced </td>
- <td>(</td>
- <td class="paramtype">adjointnnfft_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structnnfft__plan.html">nnfft_plan</a> </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">* </td>
- <td class="paramname"><em>mv</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>adjointnnfft_flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Advanced initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a3c7be955a46b3d056b5d38324f2d2068"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void innfft_adjoint_before_loop </td>
- <td>(</td>
- <td class="paramtype">adjointnnfft_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Setting up residuals before the actual iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a9e80774fcedbd2a50e4146290de9ce3f"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void innfft_adjoint_loop_one_step </td>
- <td>(</td>
- <td class="paramtype">adjointnnfft_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Doing one step in the iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a1316a1ad32f611899e446cd98d3b0b0d"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void innfft_adjoint_finalize </td>
- <td>(</td>
- <td class="paramtype">adjointnnfft_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Destroys the plan for the adjoint transform. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="ae0f7ba8180888f8f70aff1b041f4ec57"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void imri_inh_2d1d_adjoint_init </td>
- <td>(</td>
- <td class="paramtype">adjointmri_inh_2d1d_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> * </td>
- <td class="paramname"><em>mv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Simple initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a61bb41310d86e96ad1912ce486930bea"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void imri_inh_2d1d_adjoint_init_advanced </td>
- <td>(</td>
- <td class="paramtype">adjointmri_inh_2d1d_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">* </td>
- <td class="paramname"><em>mv</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>adjointmri_inh_2d1d_flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Advanced initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a39cce38619ea8d9ce84326173e2d091b"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void imri_inh_2d1d_adjoint_before_loop </td>
- <td>(</td>
- <td class="paramtype">adjointmri_inh_2d1d_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Setting up residuals before the actual iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a84b7c58708fe95ff8234638689a30302"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void imri_inh_2d1d_adjoint_loop_one_step </td>
- <td>(</td>
- <td class="paramtype">adjointmri_inh_2d1d_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Doing one step in the iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a7b403058cdba0d2918690b2d1d577912"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void imri_inh_2d1d_adjoint_finalize </td>
- <td>(</td>
- <td class="paramtype">adjointmri_inh_2d1d_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Destroys the plan for the adjoint transform. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a6275d93dac2957a4acad3bda978c98cd"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void imri_inh_3d_adjoint_init </td>
- <td>(</td>
- <td class="paramtype">adjointmri_inh_3d_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> * </td>
- <td class="paramname"><em>mv</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Simple initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="afb6ade8e78c1dfdc7e513c6e8fa7ffb6"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void imri_inh_3d_adjoint_init_advanced </td>
- <td>(</td>
- <td class="paramtype">adjointmri_inh_3d_plan * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype"><a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> </td>
- <td class="paramname">, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">* </td>
- <td class="paramname"><em>mv</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>adjointmri_inh_3d_flags</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Advanced initialisation. </p>
-
-</div>
-</div>
-<a class="anchor" id="a9a8864136de1ff61970eeed934350238"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void imri_inh_3d_adjoint_before_loop </td>
- <td>(</td>
- <td class="paramtype">adjointmri_inh_3d_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Setting up residuals before the actual iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a7e65b366bd5003cef9c16e640591b972"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void imri_inh_3d_adjoint_loop_one_step </td>
- <td>(</td>
- <td class="paramtype">adjointmri_inh_3d_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Doing one step in the iteration. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-<a class="anchor" id="a48c6fe11c01d742025c7eb7bf7ac9002"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">void imri_inh_3d_adjoint_finalize </td>
- <td>(</td>
- <td class="paramtype">adjointmri_inh_3d_plan * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Destroys the plan for the adjoint transform. </p>
-<pre class="fragment"> </pre>
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/solver__adjoint_8h_source.html b/doc/api/html/solver__adjoint_8h_source.html
deleted file mode 100644
index a67c9a0..0000000
--- a/doc/api/html/solver__adjoint_8h_source.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - solver_adjoint.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">solver_adjoint.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="solver__adjoint_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: solver_adjoint.h 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#ifndef SOLVER_ADJOINT_H</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor"></span><span class="preprocessor">#define SOLVER_ADJOINT_H</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> </div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="comment"> * Macro for mangling an adjoint transform.</span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="comment"> * temporary added 01.2007 by tim becker</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> \</div>
-<div class="line"><a name="l00035"></a><span class="lineno"><a class="code" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637"> 35</a></span> <span class="preprocessor">#define MACRO_SOLVER_ADJOINT_PLAN(MV, FLT, FLT_TYPE) \</span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">typedef struct \</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor">{ \</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor"> MV ## _plan *mv; \</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor"> unsigned flags; \</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor"> double *w; \</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor"> double *w_hat; \</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="preprocessor"> FLT_TYPE *y_hat; \</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="preprocessor"> FLT_TYPE *f_iter; \</span></div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> <span class="preprocessor"> FLT_TYPE *r_hat_iter; \</span></div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="preprocessor"> FLT_TYPE *z_iter; \</span></div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> <span class="preprocessor"> FLT_TYPE *p_iter; \</span></div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> <span class="preprocessor"> FLT_TYPE *v_hat_iter; \</span></div>
-<div class="line"><a name="l00054"></a><span class="lineno"> 54</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> <span class="preprocessor"> double alpha_iter; \</span></div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="preprocessor"> double beta_iter; \</span></div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="preprocessor"> double dot_r_hat_iter; \</span></div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="preprocessor"> double dot_r_hat_iter_old; \</span></div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="preprocessor"> double dot_z_iter; \</span></div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="preprocessor"> double dot_z_iter_old; \</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="preprocessor"> double dot_p_iter; \</span></div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="preprocessor"> double dot_v_hat_iter; \</span></div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="preprocessor">} i ## MV ## _adjoint_plan; \</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> <span class="preprocessor">void i ## MV ## _adjoint_init(adjoint ## MV ## _plan *ths, MV ## _plan *mv); \</span></div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="preprocessor"> \</span></div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> <span class="preprocessor">void i ## MV ## _adjoint_init_advanced(adjoint ## MV ## _plan *ths, MV ## _plan,\</span></div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> <span class="preprocessor">*mv, unsigned adjoint ## MV ## _flags); \</span></div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> <span class="preprocessor">void i ## MV ## _adjoint_before_loop(adjoint ## MV ## _plan *ths); \</span></div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="preprocessor">void i ## MV ## _adjoint_loop_one_step(adjoint ## MV ## _plan *ths); \</span></div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="preprocessor">\</span></div>
-<div class="line"><a name="l00078"></a><span class="lineno"><a class="code" href="structinfsft__adjoint__plan.html#a2c01ce7b85130d3069016e30b4a1685e"> 78</a></span> <span class="preprocessor">void i ## MV ## _adjoint_finalize(adjoint ## MV ## _plan *ths); \</span></div>
-<div class="line"><a name="l00079"></a><span class="lineno"><a class="code" href="structinfft__adjoint__plan.html#a0f6a4a61889385e975380802617ade31"> 79</a></span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00080"></a><span class="lineno"><a class="code" href="structinfct__adjoint__plan.html#a5b1da212f8c15d7ca209dbe347a5ec8f"> 80</a></span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00081"></a><span class="lineno"><a class="code" href="structinfst__adjoint__plan.html#a254d587d2d91f18fb55a2ccae89198a5"> 81</a></span> <a class="code" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637" title="Include NFFT3 header.">MACRO_SOLVER_ADJOINT_PLAN</a>(nfsft, complex, <span class="keywordtype">double</span> _Complex)</div>
-<div class="line"><a name="l00082"></a><span class="lineno"><a class="code" href="structinnfft__adjoint__plan.html#a4a4aac08b2efbcbc13545a08bb397f52"> 82</a></span> <a class="code" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637" title="Include NFFT3 header.">MACRO_SOLVER_ADJOINT_PLAN</a>(nfft, complex, <span class="keywordtype">double</span> _Complex)</div>
-<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="structimri__inh__2d1d__adjoint__plan.html#a2e2d8f1f1a6a7500c1689cf5021abcde"> 83</a></span> <a class="code" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637" title="Include NFFT3 header.">MACRO_SOLVER_ADJOINT_PLAN</a>(nfct, <span class="keywordtype">double</span>, <span class="keywordtype">double</span>)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"><a class="code" href="structimri__inh__3d__adjoint__plan.html#a0efcec4db642e9066fbc64c1c70bc079"> 84</a></span> <a class="code" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637" title="Include NFFT3 header.">MACRO_SOLVER_ADJOINT_PLAN</a>(nfst, <span class="keywordtype">double</span>, <span class="keywordtype">double</span>)</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <a class="code" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637" title="Include NFFT3 header.">MACRO_SOLVER_ADJOINT_PLAN</a>(nnfft, complex, <span class="keywordtype">double</span> _Complex)</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <a class="code" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637" title="Include NFFT3 header.">MACRO_SOLVER_ADJOINT_PLAN</a>(mri_inh_2d1d, complex, <span class="keywordtype">double</span> _Complex)</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <a class="code" href="solver__adjoint_8h.html#ab0b31397c6f400b1f58af9f1c7b7b637" title="Include NFFT3 header.">MACRO_SOLVER_ADJOINT_PLAN</a>(mri_inh_3d, complex, <span class="keywordtype">double</span> _Complex)</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> <span class="preprocessor"></span><span class="comment">/* solver_adjoint.h */</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structfastsum__plan__.html b/doc/api/html/structfastsum__plan__.html
deleted file mode 100644
index dc3b4ac..0000000
--- a/doc/api/html/structfastsum__plan__.html
+++ /dev/null
@@ -1,229 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fastsum_plan_ Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">fastsum_plan_ Struct Reference<div class="ingroups"><a class="el" href="group__applications__fastsum.html">Fast summation</a></div></div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>plan for fast summation algorithm
- <a href="structfastsum__plan__.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="fastsum_8h_source.html">fastsum.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:ad70ee163a195c108d0a5510a8407a307"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#ad70ee163a195c108d0a5510a8407a307">d</a></td></tr>
-<tr class="memdesc:ad70ee163a195c108d0a5510a8407a307"><td class="mdescLeft"> </td><td class="mdescRight">api <a href="#ad70ee163a195c108d0a5510a8407a307"></a><br/></td></tr>
-<tr class="memitem:a179b7193adbfbecb48c91c11c42b2976"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a179b7193adbfbecb48c91c11c42b2976"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a179b7193adbfbecb48c91c11c42b2976">N_total</a></td></tr>
-<tr class="memdesc:a179b7193adbfbecb48c91c11c42b2976"><td class="mdescLeft"> </td><td class="mdescRight">number of source knots <br/></td></tr>
-<tr class="memitem:a1e80d12f6ed1d6a310dbd4fc429e6a2f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1e80d12f6ed1d6a310dbd4fc429e6a2f"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a1e80d12f6ed1d6a310dbd4fc429e6a2f">M_total</a></td></tr>
-<tr class="memdesc:a1e80d12f6ed1d6a310dbd4fc429e6a2f"><td class="mdescLeft"> </td><td class="mdescRight">number of target knots <br/></td></tr>
-<tr class="memitem:ac764b85b6a7d88f44e24fcf065723087"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac764b85b6a7d88f44e24fcf065723087"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#ac764b85b6a7d88f44e24fcf065723087">alpha</a></td></tr>
-<tr class="memdesc:ac764b85b6a7d88f44e24fcf065723087"><td class="mdescLeft"> </td><td class="mdescRight">source coefficients <br/></td></tr>
-<tr class="memitem:a83abf01817c3c90d84e181369c7a172a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83abf01817c3c90d84e181369c7a172a"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a83abf01817c3c90d84e181369c7a172a">f</a></td></tr>
-<tr class="memdesc:a83abf01817c3c90d84e181369c7a172a"><td class="mdescLeft"> </td><td class="mdescRight">target evaluations <br/></td></tr>
-<tr class="memitem:a8220159dd047b9800820840154ec6b91"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8220159dd047b9800820840154ec6b91"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a8220159dd047b9800820840154ec6b91">x</a></td></tr>
-<tr class="memdesc:a8220159dd047b9800820840154ec6b91"><td class="mdescLeft"> </td><td class="mdescRight">source knots in d-ball with radius 1/4-eps_b/2 <br/></td></tr>
-<tr class="memitem:a6eb18076208d1ef3f012681ec73c0b51"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6eb18076208d1ef3f012681ec73c0b51"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a6eb18076208d1ef3f012681ec73c0b51">y</a></td></tr>
-<tr class="memdesc:a6eb18076208d1ef3f012681ec73c0b51"><td class="mdescLeft"> </td><td class="mdescRight">target knots in d-ball with radius 1/4-eps_b/2 <br/></td></tr>
-<tr class="memitem:aaf4ea39f8bed50a000d83eec53ee42b8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf4ea39f8bed50a000d83eec53ee42b8"></a>
-kernel </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#aaf4ea39f8bed50a000d83eec53ee42b8">k</a></td></tr>
-<tr class="memdesc:aaf4ea39f8bed50a000d83eec53ee42b8"><td class="mdescLeft"> </td><td class="mdescRight">kernel function <br/></td></tr>
-<tr class="memitem:a37cbe7b34fce3f90419fb45ab74aaa34"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a37cbe7b34fce3f90419fb45ab74aaa34"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a37cbe7b34fce3f90419fb45ab74aaa34">kernel_param</a></td></tr>
-<tr class="memdesc:a37cbe7b34fce3f90419fb45ab74aaa34"><td class="mdescLeft"> </td><td class="mdescRight">parameters for kernel function <br/></td></tr>
-<tr class="memitem:ab8680533cc667f052c9c83275e0756fa"><td class="memItemLeft" align="right" valign="top">unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#ab8680533cc667f052c9c83275e0756fa">flags</a></td></tr>
-<tr class="memdesc:ab8680533cc667f052c9c83275e0756fa"><td class="mdescLeft"> </td><td class="mdescRight">flags precomp. <a href="#ab8680533cc667f052c9c83275e0756fa"></a><br/></td></tr>
-<tr class="memitem:a2ac8e8bdf57c75a916b1f4ef36ca513e"><td class="memItemLeft" align="right" valign="top">double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a2ac8e8bdf57c75a916b1f4ef36ca513e">pre_K</a></td></tr>
-<tr class="memdesc:a2ac8e8bdf57c75a916b1f4ef36ca513e"><td class="mdescLeft"> </td><td class="mdescRight">internal <a href="#a2ac8e8bdf57c75a916b1f4ef36ca513e"></a><br/></td></tr>
-<tr class="memitem:a271a9a4e952484997e902c5cbd5ff084"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a271a9a4e952484997e902c5cbd5ff084">n</a></td></tr>
-<tr class="memdesc:a271a9a4e952484997e902c5cbd5ff084"><td class="mdescLeft"> </td><td class="mdescRight">FS__ - fast summation. <a href="#a271a9a4e952484997e902c5cbd5ff084"></a><br/></td></tr>
-<tr class="memitem:a56edb14f8b403f24bbc1dc69dd3ee972"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56edb14f8b403f24bbc1dc69dd3ee972"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a56edb14f8b403f24bbc1dc69dd3ee972">b</a></td></tr>
-<tr class="memdesc:a56edb14f8b403f24bbc1dc69dd3ee972"><td class="mdescLeft"> </td><td class="mdescRight">expansion coefficients <br/></td></tr>
-<tr class="memitem:a236982e68b9354c7edb47eeff18e05bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a236982e68b9354c7edb47eeff18e05bf"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a236982e68b9354c7edb47eeff18e05bf">p</a></td></tr>
-<tr class="memdesc:a236982e68b9354c7edb47eeff18e05bf"><td class="mdescLeft"> </td><td class="mdescRight">degree of smoothness of regularization <br/></td></tr>
-<tr class="memitem:a9b371cdd9501d570bef3f6cf06edadf6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9b371cdd9501d570bef3f6cf06edadf6"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a9b371cdd9501d570bef3f6cf06edadf6">eps_I</a></td></tr>
-<tr class="memdesc:a9b371cdd9501d570bef3f6cf06edadf6"><td class="mdescLeft"> </td><td class="mdescRight">inner boundary <br/></td></tr>
-<tr class="memitem:a9823827b202d9acf44d46fa178f7bd46"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9823827b202d9acf44d46fa178f7bd46"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a9823827b202d9acf44d46fa178f7bd46">eps_B</a></td></tr>
-<tr class="memdesc:a9823827b202d9acf44d46fa178f7bd46"><td class="mdescLeft"> </td><td class="mdescRight">outer boundary <br/></td></tr>
-<tr class="memitem:a7fe2c23ce795461e6bfadeb7986bf766"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7fe2c23ce795461e6bfadeb7986bf766"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a7fe2c23ce795461e6bfadeb7986bf766">mv1</a></td></tr>
-<tr class="memdesc:a7fe2c23ce795461e6bfadeb7986bf766"><td class="mdescLeft"> </td><td class="mdescRight">source nfft plan <br/></td></tr>
-<tr class="memitem:a1830fe7539e1a6085a50a370a982fc78"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1830fe7539e1a6085a50a370a982fc78"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a1830fe7539e1a6085a50a370a982fc78">mv2</a></td></tr>
-<tr class="memdesc:a1830fe7539e1a6085a50a370a982fc78"><td class="mdescLeft"> </td><td class="mdescRight">target nfft plan <br/></td></tr>
-<tr class="memitem:a29d4d3dc57d0b1713444efcfddf1b5ef"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a29d4d3dc57d0b1713444efcfddf1b5ef">Ad</a></td></tr>
-<tr class="memdesc:a29d4d3dc57d0b1713444efcfddf1b5ef"><td class="mdescLeft"> </td><td class="mdescRight">near field <a href="#a29d4d3dc57d0b1713444efcfddf1b5ef"></a><br/></td></tr>
-<tr class="memitem:a760ab108c17198a359fc95b61a1a05dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a760ab108c17198a359fc95b61a1a05dc"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a760ab108c17198a359fc95b61a1a05dc">Add</a></td></tr>
-<tr class="memdesc:a760ab108c17198a359fc95b61a1a05dc"><td class="mdescLeft"> </td><td class="mdescRight">spline values <br/></td></tr>
-<tr class="memitem:a3f88fcb0751bfcc2984bea6f53133158"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f88fcb0751bfcc2984bea6f53133158"></a>
-fftw_plan </td><td class="memItemRight" valign="bottom"><b>fft_plan</b></td></tr>
-<tr class="memitem:a7dda1c8a3d19bd1779404008eae2d0af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7dda1c8a3d19bd1779404008eae2d0af"></a>
-int </td><td class="memItemRight" valign="bottom"><b>box_count</b></td></tr>
-<tr class="memitem:a811624e77b0a69624162dc128711cfdf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a811624e77b0a69624162dc128711cfdf"></a>
-int </td><td class="memItemRight" valign="bottom"><b>box_count_per_dim</b></td></tr>
-<tr class="memitem:a6c2d81fd3daa6a1a511902968f8393de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6c2d81fd3daa6a1a511902968f8393de"></a>
-int * </td><td class="memItemRight" valign="bottom"><b>box_offset</b></td></tr>
-<tr class="memitem:a7d01da0676bf417fa9491754151f9511"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7d01da0676bf417fa9491754151f9511"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>box_x</b></td></tr>
-<tr class="memitem:a98f3ef5fd8a1d535eb1ef59382d0be9e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a98f3ef5fd8a1d535eb1ef59382d0be9e"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><b>box_alpha</b></td></tr>
-<tr class="memitem:a53221f0e2ff6a760f0f927d795746e8d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53221f0e2ff6a760f0f927d795746e8d"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structfastsum__plan__.html#a53221f0e2ff6a760f0f927d795746e8d">MEASURE_TIME_t</a> [8]</td></tr>
-<tr class="memdesc:a53221f0e2ff6a760f0f927d795746e8d"><td class="mdescLeft"> </td><td class="mdescRight">Measured time for each step if MEASURE_TIME is set. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>plan for fast summation algorithm </p>
-
-<p>Definition at line <a class="el" href="fastsum_8h_source.html#l00071">71</a> of file <a class="el" href="fastsum_8h_source.html">fastsum.h</a>.</p>
-</div><hr/><h2>Field Documentation</h2>
-<a class="anchor" id="ad70ee163a195c108d0a5510a8407a307"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int fastsum_plan_::d</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>api </p>
-<p>number of dimensions </p>
-
-<p>Definition at line <a class="el" href="fastsum_8h_source.html#l00075">75</a> of file <a class="el" href="fastsum_8h_source.html">fastsum.h</a>.</p>
-
-<p>Referenced by <a class="el" href="fastsum_8c_source.html#l00363">BuildBox()</a>, <a class="el" href="fastsum_8c_source.html#l00775">fastsum_exact()</a>, <a class="el" href="fastsum_8c_source.html#l00600">fastsum_init_guru()</a>, <a class="el" href="fastsum_8c_source.html#l00802">fastsum_precompute()</a>, <a class="el" href="fastsum_8c_source.html#l00940">fastsum_trafo()</a>, and <a class="el" href="fastsum_8c_source.html#l00465">SearchBox()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ab8680533cc667f052c9c83275e0756fa"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">unsigned fastsum_plan_::flags</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>flags precomp. </p>
-<p>and approx.type </p>
-
-<p>Definition at line <a class="el" href="fastsum_8h_source.html#l00089">89</a> of file <a class="el" href="fastsum_8h_source.html">fastsum.h</a>.</p>
-
-<p>Referenced by <a class="el" href="fastsum_8c_source.html#l00742">fastsum_finalize()</a>, <a class="el" href="fastsum_8c_source.html#l00600">fastsum_init_guru()</a>, <a class="el" href="fastsum_8c_source.html#l00802">fastsum_precompute()</a>, <a class="el" href="fastsum_8c_source.html#l00940">fastsum_trafo()</a>, and <a class="el" href="fastsum_8c_source.html#l00465">SearchBox()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a2ac8e8bdf57c75a916b1f4ef36ca513e"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double _Complex* fastsum_plan_::pre_K</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>internal </p>
-<p>DS_PRE - direct summation precomputed K(x_j-y_l) </p>
-
-<p>Definition at line <a class="el" href="fastsum_8h_source.html#l00094">94</a> of file <a class="el" href="fastsum_8h_source.html">fastsum.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a271a9a4e952484997e902c5cbd5ff084"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int fastsum_plan_::n</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>FS__ - fast summation. </p>
-<p>expansion degree </p>
-
-<p>Definition at line <a class="el" href="fastsum_8h_source.html#l00097">97</a> of file <a class="el" href="fastsum_8h_source.html">fastsum.h</a>.</p>
-
-<p>Referenced by <a class="el" href="fastsum_8c_source.html#l00600">fastsum_init_guru()</a>, and <a class="el" href="fastsum_8c_source.html#l00802">fastsum_precompute()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a29d4d3dc57d0b1713444efcfddf1b5ef"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int fastsum_plan_::Ad</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>near field </p>
-<p>number of spline knots for nearfield computation of regularized kernel </p>
-
-<p>Definition at line <a class="el" href="fastsum_8h_source.html#l00108">108</a> of file <a class="el" href="fastsum_8h_source.html">fastsum.h</a>.</p>
-
-<p>Referenced by <a class="el" href="fastsum_8c_source.html#l00600">fastsum_init_guru()</a>, <a class="el" href="fastsum_8c_source.html#l00802">fastsum_precompute()</a>, <a class="el" href="fastsum_8c_source.html#l00940">fastsum_trafo()</a>, and <a class="el" href="fastsum_8c_source.html#l00465">SearchBox()</a>.</p>
-
-</div>
-</div>
-<hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="fastsum_8h_source.html">fastsum.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structfgt__plan.html b/doc/api/html/structfgt__plan.html
deleted file mode 100644
index 99686e3..0000000
--- a/doc/api/html/structfgt__plan.html
+++ /dev/null
@@ -1,105 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fgt_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">fgt_plan Struct Reference<div class="ingroups"><a class="el" href="group__applications__fastgauss.html">Fast Gauss transfrom with complex parameter</a></div></div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Structure for the Gauss transform.
- <a href="structfgt__plan.html#details">More...</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:afbd9662ab140a1c55ded8928b2be3e87"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afbd9662ab140a1c55ded8928b2be3e87"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#afbd9662ab140a1c55ded8928b2be3e87">N</a></td></tr>
-<tr class="memdesc:afbd9662ab140a1c55ded8928b2be3e87"><td class="mdescLeft"> </td><td class="mdescRight">number of source nodes <br/></td></tr>
-<tr class="memitem:a64030dcfd57263db29ff440c6cdd26aa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a64030dcfd57263db29ff440c6cdd26aa"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#a64030dcfd57263db29ff440c6cdd26aa">M</a></td></tr>
-<tr class="memdesc:a64030dcfd57263db29ff440c6cdd26aa"><td class="mdescLeft"> </td><td class="mdescRight">number of target nodes <br/></td></tr>
-<tr class="memitem:a9c17084806d4d213bed15e6391c90d1a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9c17084806d4d213bed15e6391c90d1a"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#a9c17084806d4d213bed15e6391c90d1a">alpha</a></td></tr>
-<tr class="memdesc:a9c17084806d4d213bed15e6391c90d1a"><td class="mdescLeft"> </td><td class="mdescRight">source coefficients <br/></td></tr>
-<tr class="memitem:a7efff13d6d5f6c21c134e06ffae7fff1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7efff13d6d5f6c21c134e06ffae7fff1"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#a7efff13d6d5f6c21c134e06ffae7fff1">f</a></td></tr>
-<tr class="memdesc:a7efff13d6d5f6c21c134e06ffae7fff1"><td class="mdescLeft"> </td><td class="mdescRight">target evaluations <br/></td></tr>
-<tr class="memitem:a081f3a5e595025f27b4bfd89a3f74869"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a081f3a5e595025f27b4bfd89a3f74869"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#a081f3a5e595025f27b4bfd89a3f74869">flags</a></td></tr>
-<tr class="memdesc:a081f3a5e595025f27b4bfd89a3f74869"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation and approximation type <br/></td></tr>
-<tr class="memitem:af6e97b6f971e4f89ceeac2bca9d69666"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af6e97b6f971e4f89ceeac2bca9d69666"></a>
-double _Complex </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#af6e97b6f971e4f89ceeac2bca9d69666">sigma</a></td></tr>
-<tr class="memdesc:af6e97b6f971e4f89ceeac2bca9d69666"><td class="mdescLeft"> </td><td class="mdescRight">parameter of the Gaussian <br/></td></tr>
-<tr class="memitem:ac264aff49bf16f52fa94ebd9e559fc93"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac264aff49bf16f52fa94ebd9e559fc93"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#ac264aff49bf16f52fa94ebd9e559fc93">x</a></td></tr>
-<tr class="memdesc:ac264aff49bf16f52fa94ebd9e559fc93"><td class="mdescLeft"> </td><td class="mdescRight">source nodes in <img class="formulaInl" alt="$[-1/4,1/4]$" src="form_95.png"/> <br/></td></tr>
-<tr class="memitem:af80c5936eb966c0300dd3e5042b74056"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af80c5936eb966c0300dd3e5042b74056"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#af80c5936eb966c0300dd3e5042b74056">y</a></td></tr>
-<tr class="memdesc:af80c5936eb966c0300dd3e5042b74056"><td class="mdescLeft"> </td><td class="mdescRight">target nodes in <img class="formulaInl" alt="$[-1/4,1/4]$" src="form_95.png"/> <br/></td></tr>
-<tr class="memitem:ad7d9387df7df72e3d5d628d7e429c2a2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad7d9387df7df72e3d5d628d7e429c2a2"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#ad7d9387df7df72e3d5d628d7e429c2a2">pre_cexp</a></td></tr>
-<tr class="memdesc:ad7d9387df7df72e3d5d628d7e429c2a2"><td class="mdescLeft"> </td><td class="mdescRight">precomputed values for dgt <br/></td></tr>
-<tr class="memitem:a2e6ad196b67db3b9811fdb8e777633b1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e6ad196b67db3b9811fdb8e777633b1"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#a2e6ad196b67db3b9811fdb8e777633b1">n</a></td></tr>
-<tr class="memdesc:a2e6ad196b67db3b9811fdb8e777633b1"><td class="mdescLeft"> </td><td class="mdescRight">expansion degree <br/></td></tr>
-<tr class="memitem:ac6eda4d64140b8d5d8ef93e55e5f9b73"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac6eda4d64140b8d5d8ef93e55e5f9b73"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#ac6eda4d64140b8d5d8ef93e55e5f9b73">p</a></td></tr>
-<tr class="memdesc:ac6eda4d64140b8d5d8ef93e55e5f9b73"><td class="mdescLeft"> </td><td class="mdescRight">period, at least 1 <br/></td></tr>
-<tr class="memitem:a0a52777ff0982564c930c107a92d29d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a52777ff0982564c930c107a92d29d4"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#a0a52777ff0982564c930c107a92d29d4">b</a></td></tr>
-<tr class="memdesc:a0a52777ff0982564c930c107a92d29d4"><td class="mdescLeft"> </td><td class="mdescRight">expansion coefficients <br/></td></tr>
-<tr class="memitem:aa610ca4d19d67b72eab19327b373e3e2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa610ca4d19d67b72eab19327b373e3e2"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#aa610ca4d19d67b72eab19327b373e3e2">nplan1</a></td></tr>
-<tr class="memdesc:aa610ca4d19d67b72eab19327b373e3e2"><td class="mdescLeft"> </td><td class="mdescRight">source nfft plan <br/></td></tr>
-<tr class="memitem:a456c907589235a56d6f733220a40a163"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a456c907589235a56d6f733220a40a163"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfgt__plan.html#a456c907589235a56d6f733220a40a163">nplan2</a></td></tr>
-<tr class="memdesc:a456c907589235a56d6f733220a40a163"><td class="mdescLeft"> </td><td class="mdescRight">target nfft plan <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Structure for the Gauss transform. </p>
-
-<p>Definition at line <a class="el" href="fastgauss_8c_source.html#l00072">72</a> of file <a class="el" href="fastgauss_8c_source.html">fastgauss.c</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="fastgauss_8c_source.html">fastgauss.c</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structfpt__data__.html b/doc/api/html/structfpt__data__.html
deleted file mode 100644
index 37ca641..0000000
--- a/doc/api/html/structfpt__data__.html
+++ /dev/null
@@ -1,306 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fpt_data_ Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">fpt_data_ Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Holds data for a single cascade summation.
- <a href="structfpt__data__.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="fpt_8h_source.html">fpt.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:ae511611ff434c5134446a77ec6053854"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae511611ff434c5134446a77ec6053854"></a>
-<a class="el" href="fpt_8c.html#a4c7f62127651d301d4604b3a6519458d">fpt_step</a> ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#ae511611ff434c5134446a77ec6053854">steps</a></td></tr>
-<tr class="memdesc:ae511611ff434c5134446a77ec6053854"><td class="mdescLeft"> </td><td class="mdescRight">The cascade summation steps. <br/></td></tr>
-<tr class="memitem:aeed5a13bcd0301058d37d0446d735334"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#aeed5a13bcd0301058d37d0446d735334">k_start</a></td></tr>
-<tr class="memdesc:aeed5a13bcd0301058d37d0446d735334"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#aeed5a13bcd0301058d37d0446d735334"></a><br/></td></tr>
-<tr class="memitem:a8474f38ec1ed4d1c41235de523fc2519"><td class="memItemLeft" align="right" valign="top">double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#a8474f38ec1ed4d1c41235de523fc2519">alphaN</a></td></tr>
-<tr class="memdesc:a8474f38ec1ed4d1c41235de523fc2519"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#a8474f38ec1ed4d1c41235de523fc2519"></a><br/></td></tr>
-<tr class="memitem:ae62530023226d004ccaa18f4e1565e8d"><td class="memItemLeft" align="right" valign="top">double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#ae62530023226d004ccaa18f4e1565e8d">betaN</a></td></tr>
-<tr class="memdesc:ae62530023226d004ccaa18f4e1565e8d"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#ae62530023226d004ccaa18f4e1565e8d"></a><br/></td></tr>
-<tr class="memitem:a606df2fa8fb3173a8ced31366b0bcc8a"><td class="memItemLeft" align="right" valign="top">double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#a606df2fa8fb3173a8ced31366b0bcc8a">gammaN</a></td></tr>
-<tr class="memdesc:a606df2fa8fb3173a8ced31366b0bcc8a"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#a606df2fa8fb3173a8ced31366b0bcc8a"></a><br/></td></tr>
-<tr class="memitem:ae7491902143322ce74a8cccfa5ec7b3e"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#ae7491902143322ce74a8cccfa5ec7b3e">alpha_0</a></td></tr>
-<tr class="memdesc:ae7491902143322ce74a8cccfa5ec7b3e"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#ae7491902143322ce74a8cccfa5ec7b3e"></a><br/></td></tr>
-<tr class="memitem:a4639c4494938cad8b0536191ca2eefaa"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#a4639c4494938cad8b0536191ca2eefaa">beta_0</a></td></tr>
-<tr class="memdesc:a4639c4494938cad8b0536191ca2eefaa"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#a4639c4494938cad8b0536191ca2eefaa"></a><br/></td></tr>
-<tr class="memitem:aa8dd07acd6d154b929423231b4b2847a"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#aa8dd07acd6d154b929423231b4b2847a">gamma_m1</a></td></tr>
-<tr class="memdesc:aa8dd07acd6d154b929423231b4b2847a"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#aa8dd07acd6d154b929423231b4b2847a"></a><br/></td></tr>
-<tr class="memitem:a048079e693b84da0013ed8edba95a2e7"><td class="memItemLeft" align="right" valign="top">double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#a048079e693b84da0013ed8edba95a2e7">_alpha</a></td></tr>
-<tr class="memdesc:a048079e693b84da0013ed8edba95a2e7"><td class="mdescLeft"> </td><td class="mdescRight">< TODO Add comment here. <a href="#a048079e693b84da0013ed8edba95a2e7"></a><br/></td></tr>
-<tr class="memitem:aeb8f8f8eb1c0b93d135e8e083835edfb"><td class="memItemLeft" align="right" valign="top">double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#aeb8f8f8eb1c0b93d135e8e083835edfb">_beta</a></td></tr>
-<tr class="memdesc:aeb8f8f8eb1c0b93d135e8e083835edfb"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#aeb8f8f8eb1c0b93d135e8e083835edfb"></a><br/></td></tr>
-<tr class="memitem:a1fb58e76d4d78d6ed0f71a040d7157dc"><td class="memItemLeft" align="right" valign="top">double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#a1fb58e76d4d78d6ed0f71a040d7157dc">_gamma</a></td></tr>
-<tr class="memdesc:a1fb58e76d4d78d6ed0f71a040d7157dc"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#a1fb58e76d4d78d6ed0f71a040d7157dc"></a><br/></td></tr>
-<tr class="memitem:ad56b765b9faabb4071e844e7d1355151"><td class="memItemLeft" align="right" valign="top">double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#ad56b765b9faabb4071e844e7d1355151">alpha</a></td></tr>
-<tr class="memdesc:ad56b765b9faabb4071e844e7d1355151"><td class="mdescLeft"> </td><td class="mdescRight">< TODO Add comment here. <a href="#ad56b765b9faabb4071e844e7d1355151"></a><br/></td></tr>
-<tr class="memitem:af28f490521ca26420df33a1f590363e3"><td class="memItemLeft" align="right" valign="top">double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#af28f490521ca26420df33a1f590363e3">beta</a></td></tr>
-<tr class="memdesc:af28f490521ca26420df33a1f590363e3"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#af28f490521ca26420df33a1f590363e3"></a><br/></td></tr>
-<tr class="memitem:a13aaa57c27f3ab5eab4c28d47d501723"><td class="memItemLeft" align="right" valign="top">double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__data__.html#a13aaa57c27f3ab5eab4c28d47d501723">gamma</a></td></tr>
-<tr class="memdesc:a13aaa57c27f3ab5eab4c28d47d501723"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#a13aaa57c27f3ab5eab4c28d47d501723"></a><br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Holds data for a single cascade summation. </p>
-
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00078">78</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-</div><hr/><h2>Field Documentation</h2>
-<a class="anchor" id="aeed5a13bcd0301058d37d0446d735334"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int fpt_data_::k_start</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00081">81</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a8474f38ec1ed4d1c41235de523fc2519"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double * fpt_data_::alphaN</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00082">82</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ae62530023226d004ccaa18f4e1565e8d"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double * fpt_data_::betaN</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00083">83</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a606df2fa8fb3173a8ced31366b0bcc8a"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double * fpt_data_::gammaN</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00084">84</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ae7491902143322ce74a8cccfa5ec7b3e"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double fpt_data_::alpha_0</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00085">85</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a4639c4494938cad8b0536191ca2eefaa"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double fpt_data_::beta_0</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00086">86</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="aa8dd07acd6d154b929423231b4b2847a"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double fpt_data_::gamma_m1</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00087">87</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a048079e693b84da0013ed8edba95a2e7"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double* fpt_data_::_alpha</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>< TODO Add comment here. </p>
-<pre class="fragment"> </pre><p> TODO Add comment here. </p>
-
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00089">89</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="aeb8f8f8eb1c0b93d135e8e083835edfb"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double* fpt_data_::_beta</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00090">90</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a1fb58e76d4d78d6ed0f71a040d7157dc"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double* fpt_data_::_gamma</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00091">91</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ad56b765b9faabb4071e844e7d1355151"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double* fpt_data_::alpha</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>< TODO Add comment here. </p>
-<pre class="fragment"> </pre><p> TODO Add comment here. </p>
-
-<p>Definition at line <a class="el" href="fpt_8h_source.html#l00052">52</a> of file <a class="el" href="fpt_8h_source.html">fpt.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="af28f490521ca26420df33a1f590363e3"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double* fpt_data_::beta</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8h_source.html#l00053">53</a> of file <a class="el" href="fpt_8h_source.html">fpt.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a13aaa57c27f3ab5eab4c28d47d501723"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double* fpt_data_::gamma</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8h_source.html#l00054">54</a> of file <a class="el" href="fpt_8h_source.html">fpt.h</a>.</p>
-
-</div>
-</div>
-<hr/>The documentation for this struct was generated from the following files:<ul>
-<li><a class="el" href="fpt_8c_source.html">fpt.c</a></li>
-<li><a class="el" href="fpt_8h_source.html">fpt.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structfpt__set__s__.html b/doc/api/html/structfpt__set__s__.html
deleted file mode 100644
index cef3f8c..0000000
--- a/doc/api/html/structfpt__set__s__.html
+++ /dev/null
@@ -1,151 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fpt_set_s_ Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">fpt_set_s_ Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Holds data for a set of cascade summations.
- <a href="structfpt__set__s__.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="fpt_8h_source.html">fpt.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:ab2272294463f288c3aaa4513bfeac758"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab2272294463f288c3aaa4513bfeac758"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#ab2272294463f288c3aaa4513bfeac758">flags</a></td></tr>
-<tr class="memdesc:ab2272294463f288c3aaa4513bfeac758"><td class="mdescLeft"> </td><td class="mdescRight">The flags. <br/></td></tr>
-<tr class="memitem:a2387122a1e670e2e61b1699458224804"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2387122a1e670e2e61b1699458224804"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#a2387122a1e670e2e61b1699458224804">M</a></td></tr>
-<tr class="memdesc:a2387122a1e670e2e61b1699458224804"><td class="mdescLeft"> </td><td class="mdescRight">The number of DPT transforms. <br/></td></tr>
-<tr class="memitem:aa353a04683b31bed668ee490d5df1b81"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#aa353a04683b31bed668ee490d5df1b81">N</a></td></tr>
-<tr class="memdesc:aa353a04683b31bed668ee490d5df1b81"><td class="mdescLeft"> </td><td class="mdescRight">The transform length. <a href="#aa353a04683b31bed668ee490d5df1b81"></a><br/></td></tr>
-<tr class="memitem:a1d35166e05db58736e422850fe02edef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1d35166e05db58736e422850fe02edef"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#a1d35166e05db58736e422850fe02edef">t</a></td></tr>
-<tr class="memdesc:a1d35166e05db58736e422850fe02edef"><td class="mdescLeft"> </td><td class="mdescRight">The exponent of N. <br/></td></tr>
-<tr class="memitem:a0509dfa979aa395a80d8f38b2f5fb760"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0509dfa979aa395a80d8f38b2f5fb760"></a>
-<a class="el" href="fpt_8c.html#a5141ba7ff5b14b5fbf7ee769943f1c10">fpt_data</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#a0509dfa979aa395a80d8f38b2f5fb760">dpt</a></td></tr>
-<tr class="memdesc:a0509dfa979aa395a80d8f38b2f5fb760"><td class="mdescLeft"> </td><td class="mdescRight">The DPT transform data. <br/></td></tr>
-<tr class="memitem:a58a8f2867286e0be19dd89e8d41c033b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a58a8f2867286e0be19dd89e8d41c033b"></a>
-double ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#a58a8f2867286e0be19dd89e8d41c033b">xcvecs</a></td></tr>
-<tr class="memdesc:a58a8f2867286e0be19dd89e8d41c033b"><td class="mdescLeft"> </td><td class="mdescRight">Array of pointers to arrays containing the Chebyshev nodes. <br/></td></tr>
-<tr class="memitem:a226e29e0f97627e77ec4fcebd0c49fdf"><td class="memItemLeft" align="right" valign="top">double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#a226e29e0f97627e77ec4fcebd0c49fdf">xc</a></td></tr>
-<tr class="memdesc:a226e29e0f97627e77ec4fcebd0c49fdf"><td class="mdescLeft"> </td><td class="mdescRight">Array for Chebychev-nodes. <a href="#a226e29e0f97627e77ec4fcebd0c49fdf"></a><br/></td></tr>
-<tr class="memitem:ad93080b29d1b51fe3fdda734b308a4f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad93080b29d1b51fe3fdda734b308a4f4"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><b>temp</b></td></tr>
-<tr class="memitem:a16cf21fa35d0a74d8f86e6b8c85352bb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a16cf21fa35d0a74d8f86e6b8c85352bb"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><b>work</b></td></tr>
-<tr class="memitem:a5a55e5634be8d74b828bfb5fbcbc6514"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5a55e5634be8d74b828bfb5fbcbc6514"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><b>result</b></td></tr>
-<tr class="memitem:abfc15a0e80ecd9063ef920582eb88a7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abfc15a0e80ecd9063ef920582eb88a7c"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><b>vec3</b></td></tr>
-<tr class="memitem:a4bf278d535fe4efee8b066bedf845d48"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4bf278d535fe4efee8b066bedf845d48"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><b>vec4</b></td></tr>
-<tr class="memitem:ae16f7eb81c5cc6e4519b81207096454f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae16f7eb81c5cc6e4519b81207096454f"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><b>z</b></td></tr>
-<tr class="memitem:a5f146823d105906abf0cdc4c5f9638dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f146823d105906abf0cdc4c5f9638dc"></a>
-fftw_plan * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#a5f146823d105906abf0cdc4c5f9638dc">plans_dct3</a></td></tr>
-<tr class="memdesc:a5f146823d105906abf0cdc4c5f9638dc"><td class="mdescLeft"> </td><td class="mdescRight">Transform plans for the fftw library. <br/></td></tr>
-<tr class="memitem:aead22ae71c82ad37da07f6166bf53fbc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aead22ae71c82ad37da07f6166bf53fbc"></a>
-fftw_plan * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#aead22ae71c82ad37da07f6166bf53fbc">plans_dct2</a></td></tr>
-<tr class="memdesc:aead22ae71c82ad37da07f6166bf53fbc"><td class="mdescLeft"> </td><td class="mdescRight">Transform plans for the fftw library. <br/></td></tr>
-<tr class="memitem:a15eafd93be80eeea02173a9042e303d3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a15eafd93be80eeea02173a9042e303d3"></a>
-fftw_r2r_kind * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#a15eafd93be80eeea02173a9042e303d3">kinds</a></td></tr>
-<tr class="memdesc:a15eafd93be80eeea02173a9042e303d3"><td class="mdescLeft"> </td><td class="mdescRight">Transform kinds for fftw library. <br/></td></tr>
-<tr class="memitem:afd6508cc584ac06b9f679be441b6e7f6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd6508cc584ac06b9f679be441b6e7f6"></a>
-fftw_r2r_kind * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#afd6508cc584ac06b9f679be441b6e7f6">kindsr</a></td></tr>
-<tr class="memdesc:afd6508cc584ac06b9f679be441b6e7f6"><td class="mdescLeft"> </td><td class="mdescRight">Transform kinds for fftw library. <br/></td></tr>
-<tr class="memitem:a26355113f8348c270cd02bc196fad681"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26355113f8348c270cd02bc196fad681"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#a26355113f8348c270cd02bc196fad681">lengths</a></td></tr>
-<tr class="memdesc:a26355113f8348c270cd02bc196fad681"><td class="mdescLeft"> </td><td class="mdescRight">Transform lengths for fftw library. <br/></td></tr>
-<tr class="memitem:a753c30d0a52e91d6e04da874261e7fdf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a753c30d0a52e91d6e04da874261e7fdf"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>xc_slow</b></td></tr>
-<tr class="memitem:a401070e7725566f06ae740e7e99a12a2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a401070e7725566f06ae740e7e99a12a2"></a>
-unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__set__s__.html#a401070e7725566f06ae740e7e99a12a2">flags</a></td></tr>
-<tr class="memdesc:a401070e7725566f06ae740e7e99a12a2"><td class="mdescLeft"> </td><td class="mdescRight">The flags. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Holds data for a set of cascade summations. </p>
-
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00097">97</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-</div><hr/><h2>Field Documentation</h2>
-<a class="anchor" id="aa353a04683b31bed668ee490d5df1b81"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int fpt_set_s_::N</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>The transform length. </p>
-<p>Must be a power of two. </p>
-
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00101">101</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a226e29e0f97627e77ec4fcebd0c49fdf"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double * fpt_set_s_::xc</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Array for Chebychev-nodes. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00108">108</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<hr/>The documentation for this struct was generated from the following files:<ul>
-<li><a class="el" href="fpt_8c_source.html">fpt.c</a></li>
-<li><a class="el" href="fpt_8h_source.html">fpt.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structfpt__step__.html b/doc/api/html/structfpt__step__.html
deleted file mode 100644
index 9773dba..0000000
--- a/doc/api/html/structfpt__step__.html
+++ /dev/null
@@ -1,133 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - fpt_step_ Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">fpt_step_ Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Holds data for a single multiplication step in the cascade summation.
- <a href="structfpt__step__.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="fpt_8h_source.html">fpt.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a71dc6483b4f3b958519bdafeae2c1dbf"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__step__.html#a71dc6483b4f3b958519bdafeae2c1dbf">stable</a></td></tr>
-<tr class="memdesc:a71dc6483b4f3b958519bdafeae2c1dbf"><td class="mdescLeft"> </td><td class="mdescRight">Indicates if the values contained represent a fast or a slow stabilized step. <a href="#a71dc6483b4f3b958519bdafeae2c1dbf"></a><br/></td></tr>
-<tr class="memitem:ac6767b7c6935b1f2af5dd54e2e8f690b"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__step__.html#ac6767b7c6935b1f2af5dd54e2e8f690b">Ns</a></td></tr>
-<tr class="memdesc:ac6767b7c6935b1f2af5dd54e2e8f690b"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#ac6767b7c6935b1f2af5dd54e2e8f690b"></a><br/></td></tr>
-<tr class="memitem:aeb754fe2aedc1f15cbb9c75c212772fb"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__step__.html#aeb754fe2aedc1f15cbb9c75c212772fb">ts</a></td></tr>
-<tr class="memdesc:aeb754fe2aedc1f15cbb9c75c212772fb"><td class="mdescLeft"> </td><td class="mdescRight">TODO Add comment here. <a href="#aeb754fe2aedc1f15cbb9c75c212772fb"></a><br/></td></tr>
-<tr class="memitem:a73bfb18a62b4b4db10c8ad32796fc1ca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a73bfb18a62b4b4db10c8ad32796fc1ca"></a>
-double ** </td><td class="memItemRight" valign="bottom"><b>a11</b></td></tr>
-<tr class="memitem:a71db335416c48adbc118782261264d54"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a71db335416c48adbc118782261264d54"></a>
-double ** </td><td class="memItemRight" valign="bottom"><b>a12</b></td></tr>
-<tr class="memitem:ac1c8fe4ca38b68dd3dd9a6c51ae456b1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac1c8fe4ca38b68dd3dd9a6c51ae456b1"></a>
-double ** </td><td class="memItemRight" valign="bottom"><b>a21</b></td></tr>
-<tr class="memitem:a671d73e56c51c3c8daaa9678da341ce9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a671d73e56c51c3c8daaa9678da341ce9"></a>
-double ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__step__.html#a671d73e56c51c3c8daaa9678da341ce9">a22</a></td></tr>
-<tr class="memdesc:a671d73e56c51c3c8daaa9678da341ce9"><td class="mdescLeft"> </td><td class="mdescRight">The matrix components. <br/></td></tr>
-<tr class="memitem:affc3fb53919156a934a28c6350f7f540"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="affc3fb53919156a934a28c6350f7f540"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structfpt__step__.html#affc3fb53919156a934a28c6350f7f540">g</a></td></tr>
-<tr class="memdesc:affc3fb53919156a934a28c6350f7f540"><td class="mdescLeft"> </td><td class="mdescRight"><pre class="fragment"> </pre> <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Holds data for a single multiplication step in the cascade summation. </p>
-
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00064">64</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-</div><hr/><h2>Field Documentation</h2>
-<a class="anchor" id="a71dc6483b4f3b958519bdafeae2c1dbf"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">bool fpt_step_::stable</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Indicates if the values contained represent a fast or a slow stabilized step. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00066">66</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ac6767b7c6935b1f2af5dd54e2e8f690b"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int fpt_step_::Ns</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00069">69</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="aeb754fe2aedc1f15cbb9c75c212772fb"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int fpt_step_::ts</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>TODO Add comment here. </p>
-<pre class="fragment"> </pre>
-<p>Definition at line <a class="el" href="fpt_8c_source.html#l00070">70</a> of file <a class="el" href="fpt_8c_source.html">fpt.c</a>.</p>
-
-</div>
-</div>
-<hr/>The documentation for this struct was generated from the following files:<ul>
-<li><a class="el" href="fpt_8c_source.html">fpt.c</a></li>
-<li><a class="el" href="fpt_8h_source.html">fpt.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structimri__inh__2d1d__adjoint__plan.html b/doc/api/html/structimri__inh__2d1d__adjoint__plan.html
deleted file mode 100644
index e98495c..0000000
--- a/doc/api/html/structimri__inh__2d1d__adjoint__plan.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - imri_inh_2d1d_adjoint_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">imri_inh_2d1d_adjoint_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Structure for an adjoint transform plan.
- <a href="structimri__inh__2d1d__adjoint__plan.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a18f9b22f7f221aedc3dabab2cb07e633"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18f9b22f7f221aedc3dabab2cb07e633"></a>
-<a class="el" href="structmri__inh__2d1d__plan.html">mri_inh_2d1d_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a18f9b22f7f221aedc3dabab2cb07e633">mv</a></td></tr>
-<tr class="memdesc:a18f9b22f7f221aedc3dabab2cb07e633"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:adea4e1650ddadc3f0f7c1d833b6b7789"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adea4e1650ddadc3f0f7c1d833b6b7789"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#adea4e1650ddadc3f0f7c1d833b6b7789">flags</a></td></tr>
-<tr class="memdesc:adea4e1650ddadc3f0f7c1d833b6b7789"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:a552e0603ee92be729e052bb6028a1fb4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a552e0603ee92be729e052bb6028a1fb4"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a552e0603ee92be729e052bb6028a1fb4">w</a></td></tr>
-<tr class="memdesc:a552e0603ee92be729e052bb6028a1fb4"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:aeb6a8106c1347dc7decf42e4520f70ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeb6a8106c1347dc7decf42e4520f70ab"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aeb6a8106c1347dc7decf42e4520f70ab">w_hat</a></td></tr>
-<tr class="memdesc:aeb6a8106c1347dc7decf42e4520f70ab"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:aaed8db541ee689c5ec82bb8e18c4c8d1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaed8db541ee689c5ec82bb8e18c4c8d1"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aaed8db541ee689c5ec82bb8e18c4c8d1">y_hat</a></td></tr>
-<tr class="memdesc:aaed8db541ee689c5ec82bb8e18c4c8d1"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:ae154ca7cd0d7ebc7e0db4b1f415b56fd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae154ca7cd0d7ebc7e0db4b1f415b56fd"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#ae154ca7cd0d7ebc7e0db4b1f415b56fd">f_iter</a></td></tr>
-<tr class="memdesc:ae154ca7cd0d7ebc7e0db4b1f415b56fd"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:a6088e9949fa966d839e8feadfb34596e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6088e9949fa966d839e8feadfb34596e"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a6088e9949fa966d839e8feadfb34596e">r_hat_iter</a></td></tr>
-<tr class="memdesc:a6088e9949fa966d839e8feadfb34596e"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:a2e2d8f1f1a6a7500c1689cf5021abcde"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e2d8f1f1a6a7500c1689cf5021abcde"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a2e2d8f1f1a6a7500c1689cf5021abcde">z_iter</a></td></tr>
-<tr class="memdesc:a2e2d8f1f1a6a7500c1689cf5021abcde"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of \ first kind <br/></td></tr>
-<tr class="memitem:aafe496b74fca5e5d96ce258bb3da1ffc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aafe496b74fca5e5d96ce258bb3da1ffc"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aafe496b74fca5e5d96ce258bb3da1ffc">p_iter</a></td></tr>
-<tr class="memdesc:aafe496b74fca5e5d96ce258bb3da1ffc"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:af253d4b292aa7db655ca51dfdf598bf9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af253d4b292aa7db655ca51dfdf598bf9"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#af253d4b292aa7db655ca51dfdf598bf9">v_hat_iter</a></td></tr>
-<tr class="memdesc:af253d4b292aa7db655ca51dfdf598bf9"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:a740c87ac77f68578613d58e569deedb2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a740c87ac77f68578613d58e569deedb2"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a740c87ac77f68578613d58e569deedb2">alpha_iter</a></td></tr>
-<tr class="memdesc:a740c87ac77f68578613d58e569deedb2"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:a7f3271035bca7b994475e565ab1ffb22"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7f3271035bca7b994475e565ab1ffb22"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a7f3271035bca7b994475e565ab1ffb22">beta_iter</a></td></tr>
-<tr class="memdesc:a7f3271035bca7b994475e565ab1ffb22"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:a52eec6bb5ee2ae209ed90d44739c8769"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a52eec6bb5ee2ae209ed90d44739c8769"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a52eec6bb5ee2ae209ed90d44739c8769">dot_r_hat_iter</a></td></tr>
-<tr class="memdesc:a52eec6bb5ee2ae209ed90d44739c8769"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:a846d92d450d33e64996d28c2054e3181"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a846d92d450d33e64996d28c2054e3181"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a846d92d450d33e64996d28c2054e3181">dot_r_hat_iter_old</a></td></tr>
-<tr class="memdesc:a846d92d450d33e64996d28c2054e3181"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:ac3ca8cbbcd9958d69b15b4696e14a2e3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac3ca8cbbcd9958d69b15b4696e14a2e3"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#ac3ca8cbbcd9958d69b15b4696e14a2e3">dot_z_iter</a></td></tr>
-<tr class="memdesc:ac3ca8cbbcd9958d69b15b4696e14a2e3"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ z_hat_iter <br/></td></tr>
-<tr class="memitem:a92ceaf9529a44c28fd3b6d9d63c0c13f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a92ceaf9529a44c28fd3b6d9d63c0c13f"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a92ceaf9529a44c28fd3b6d9d63c0c13f">dot_z_iter_old</a></td></tr>
-<tr class="memdesc:a92ceaf9529a44c28fd3b6d9d63c0c13f"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a00c75acfb362339a30d2809520fcd775"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a00c75acfb362339a30d2809520fcd775"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#a00c75acfb362339a30d2809520fcd775">dot_p_iter</a></td></tr>
-<tr class="memdesc:a00c75acfb362339a30d2809520fcd775"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ p_hat_iter <br/></td></tr>
-<tr class="memitem:aed3f646cabd7b8ab1a480d7607ea45f3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed3f646cabd7b8ab1a480d7607ea45f3"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__2d1d__adjoint__plan.html#aed3f646cabd7b8ab1a480d7607ea45f3">dot_v_hat_iter</a></td></tr>
-<tr class="memdesc:aed3f646cabd7b8ab1a480d7607ea45f3"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Structure for an adjoint transform plan. </p>
-
-<p>Definition at line <a class="el" href="solver__adjoint_8h_source.html#l00083">83</a> of file <a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structimri__inh__3d__adjoint__plan.html b/doc/api/html/structimri__inh__3d__adjoint__plan.html
deleted file mode 100644
index be345e6..0000000
--- a/doc/api/html/structimri__inh__3d__adjoint__plan.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - imri_inh_3d_adjoint_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">imri_inh_3d_adjoint_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Structure for an adjoint transform plan.
- <a href="structimri__inh__3d__adjoint__plan.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:afa903e9a436fc17da89b08377a6a733e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa903e9a436fc17da89b08377a6a733e"></a>
-<a class="el" href="structmri__inh__3d__plan.html">mri_inh_3d_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#afa903e9a436fc17da89b08377a6a733e">mv</a></td></tr>
-<tr class="memdesc:afa903e9a436fc17da89b08377a6a733e"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:aadd41183d54818f3e8528affe40769bc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aadd41183d54818f3e8528affe40769bc"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#aadd41183d54818f3e8528affe40769bc">flags</a></td></tr>
-<tr class="memdesc:aadd41183d54818f3e8528affe40769bc"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:aa4cd6ea3040339a39047978a7c1f1c9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa4cd6ea3040339a39047978a7c1f1c9d"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#aa4cd6ea3040339a39047978a7c1f1c9d">w</a></td></tr>
-<tr class="memdesc:aa4cd6ea3040339a39047978a7c1f1c9d"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:aa53e43e9cd65db3ba08ed275cb62d456"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa53e43e9cd65db3ba08ed275cb62d456"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#aa53e43e9cd65db3ba08ed275cb62d456">w_hat</a></td></tr>
-<tr class="memdesc:aa53e43e9cd65db3ba08ed275cb62d456"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:a968843771644077babbdd687b6bbdb5d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a968843771644077babbdd687b6bbdb5d"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#a968843771644077babbdd687b6bbdb5d">y_hat</a></td></tr>
-<tr class="memdesc:a968843771644077babbdd687b6bbdb5d"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:a4207ca1175efe7865d6631ae5a704632"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4207ca1175efe7865d6631ae5a704632"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#a4207ca1175efe7865d6631ae5a704632">f_iter</a></td></tr>
-<tr class="memdesc:a4207ca1175efe7865d6631ae5a704632"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:acbea7a40d34bbca7688da41378140926"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acbea7a40d34bbca7688da41378140926"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#acbea7a40d34bbca7688da41378140926">r_hat_iter</a></td></tr>
-<tr class="memdesc:acbea7a40d34bbca7688da41378140926"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:a0efcec4db642e9066fbc64c1c70bc079"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0efcec4db642e9066fbc64c1c70bc079"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#a0efcec4db642e9066fbc64c1c70bc079">z_iter</a></td></tr>
-<tr class="memdesc:a0efcec4db642e9066fbc64c1c70bc079"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of \ first kind <br/></td></tr>
-<tr class="memitem:ade134a86a60d2538595acc2fafb83e41"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade134a86a60d2538595acc2fafb83e41"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#ade134a86a60d2538595acc2fafb83e41">p_iter</a></td></tr>
-<tr class="memdesc:ade134a86a60d2538595acc2fafb83e41"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:ad04d2974dedefdc45e176e5ea5399aab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad04d2974dedefdc45e176e5ea5399aab"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#ad04d2974dedefdc45e176e5ea5399aab">v_hat_iter</a></td></tr>
-<tr class="memdesc:ad04d2974dedefdc45e176e5ea5399aab"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:ae6e228dc1df00e0b3de8873f0de12675"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6e228dc1df00e0b3de8873f0de12675"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#ae6e228dc1df00e0b3de8873f0de12675">alpha_iter</a></td></tr>
-<tr class="memdesc:ae6e228dc1df00e0b3de8873f0de12675"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:ac622efae9216d5d4335118084c7fcbfa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac622efae9216d5d4335118084c7fcbfa"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#ac622efae9216d5d4335118084c7fcbfa">beta_iter</a></td></tr>
-<tr class="memdesc:ac622efae9216d5d4335118084c7fcbfa"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:af456205ec418161fe20de523e423bb51"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af456205ec418161fe20de523e423bb51"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#af456205ec418161fe20de523e423bb51">dot_r_hat_iter</a></td></tr>
-<tr class="memdesc:af456205ec418161fe20de523e423bb51"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:acce4b5401db74c6e9896a78eccc9ca1e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acce4b5401db74c6e9896a78eccc9ca1e"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#acce4b5401db74c6e9896a78eccc9ca1e">dot_r_hat_iter_old</a></td></tr>
-<tr class="memdesc:acce4b5401db74c6e9896a78eccc9ca1e"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:af91db19db24ca1c648d97ea516367f94"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af91db19db24ca1c648d97ea516367f94"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#af91db19db24ca1c648d97ea516367f94">dot_z_iter</a></td></tr>
-<tr class="memdesc:af91db19db24ca1c648d97ea516367f94"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ z_hat_iter <br/></td></tr>
-<tr class="memitem:a794d80ffe20e25a4d69340d925d8624c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a794d80ffe20e25a4d69340d925d8624c"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#a794d80ffe20e25a4d69340d925d8624c">dot_z_iter_old</a></td></tr>
-<tr class="memdesc:a794d80ffe20e25a4d69340d925d8624c"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a65805c60e7d3a18d9a8952da80286032"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65805c60e7d3a18d9a8952da80286032"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#a65805c60e7d3a18d9a8952da80286032">dot_p_iter</a></td></tr>
-<tr class="memdesc:a65805c60e7d3a18d9a8952da80286032"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ p_hat_iter <br/></td></tr>
-<tr class="memitem:ae251b00724c42f9c0f906e823c9e17f8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae251b00724c42f9c0f906e823c9e17f8"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structimri__inh__3d__adjoint__plan.html#ae251b00724c42f9c0f906e823c9e17f8">dot_v_hat_iter</a></td></tr>
-<tr class="memdesc:ae251b00724c42f9c0f906e823c9e17f8"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Structure for an adjoint transform plan. </p>
-
-<p>Definition at line <a class="el" href="solver__adjoint_8h_source.html#l00084">84</a> of file <a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structinfct__adjoint__plan.html b/doc/api/html/structinfct__adjoint__plan.html
deleted file mode 100644
index 5b36279..0000000
--- a/doc/api/html/structinfct__adjoint__plan.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - infct_adjoint_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">infct_adjoint_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Structure for an adjoint transform plan.
- <a href="structinfct__adjoint__plan.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a65d97330deb4cd9de78e4b9aa85afa62"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65d97330deb4cd9de78e4b9aa85afa62"></a>
-<a class="el" href="structnfct__plan.html">nfct_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#a65d97330deb4cd9de78e4b9aa85afa62">mv</a></td></tr>
-<tr class="memdesc:a65d97330deb4cd9de78e4b9aa85afa62"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:ad913ef9fc7d9bb8ca4f91f1abbf99949"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad913ef9fc7d9bb8ca4f91f1abbf99949"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#ad913ef9fc7d9bb8ca4f91f1abbf99949">flags</a></td></tr>
-<tr class="memdesc:ad913ef9fc7d9bb8ca4f91f1abbf99949"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:add093d84bfb7f6f5d5b5512e000efc68"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="add093d84bfb7f6f5d5b5512e000efc68"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#add093d84bfb7f6f5d5b5512e000efc68">w</a></td></tr>
-<tr class="memdesc:add093d84bfb7f6f5d5b5512e000efc68"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:af14d4eb49aee59948ea57d30dbf4d628"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af14d4eb49aee59948ea57d30dbf4d628"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#af14d4eb49aee59948ea57d30dbf4d628">w_hat</a></td></tr>
-<tr class="memdesc:af14d4eb49aee59948ea57d30dbf4d628"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:a4a98ec178d9d74dab4e617beebc419a6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a98ec178d9d74dab4e617beebc419a6"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#a4a98ec178d9d74dab4e617beebc419a6">y_hat</a></td></tr>
-<tr class="memdesc:a4a98ec178d9d74dab4e617beebc419a6"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:af72ea2aed94d3e789dd064776fdf2919"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af72ea2aed94d3e789dd064776fdf2919"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#af72ea2aed94d3e789dd064776fdf2919">f_iter</a></td></tr>
-<tr class="memdesc:af72ea2aed94d3e789dd064776fdf2919"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:a3bb77b67c3779716d767e76b8661efbc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3bb77b67c3779716d767e76b8661efbc"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#a3bb77b67c3779716d767e76b8661efbc">r_hat_iter</a></td></tr>
-<tr class="memdesc:a3bb77b67c3779716d767e76b8661efbc"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:a5b1da212f8c15d7ca209dbe347a5ec8f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b1da212f8c15d7ca209dbe347a5ec8f"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#a5b1da212f8c15d7ca209dbe347a5ec8f">z_iter</a></td></tr>
-<tr class="memdesc:a5b1da212f8c15d7ca209dbe347a5ec8f"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of \ first kind <br/></td></tr>
-<tr class="memitem:a6c81df2130d05bcbbcd6646cd27b671e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6c81df2130d05bcbbcd6646cd27b671e"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#a6c81df2130d05bcbbcd6646cd27b671e">p_iter</a></td></tr>
-<tr class="memdesc:a6c81df2130d05bcbbcd6646cd27b671e"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:af025d6f664c1ccdd552f61e68d58ec97"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af025d6f664c1ccdd552f61e68d58ec97"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#af025d6f664c1ccdd552f61e68d58ec97">v_hat_iter</a></td></tr>
-<tr class="memdesc:af025d6f664c1ccdd552f61e68d58ec97"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:a6e7a960d8661f6c459ebac7085e2587f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e7a960d8661f6c459ebac7085e2587f"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#a6e7a960d8661f6c459ebac7085e2587f">alpha_iter</a></td></tr>
-<tr class="memdesc:a6e7a960d8661f6c459ebac7085e2587f"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:a3e6ea22841cd010652beb76f554bdf92"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e6ea22841cd010652beb76f554bdf92"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#a3e6ea22841cd010652beb76f554bdf92">beta_iter</a></td></tr>
-<tr class="memdesc:a3e6ea22841cd010652beb76f554bdf92"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:adfc3485017bb92e57c229dc7f81e438b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adfc3485017bb92e57c229dc7f81e438b"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#adfc3485017bb92e57c229dc7f81e438b">dot_r_hat_iter</a></td></tr>
-<tr class="memdesc:adfc3485017bb92e57c229dc7f81e438b"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:a98056f05d5a45569899df80b040b9872"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a98056f05d5a45569899df80b040b9872"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#a98056f05d5a45569899df80b040b9872">dot_r_hat_iter_old</a></td></tr>
-<tr class="memdesc:a98056f05d5a45569899df80b040b9872"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:ab848ecc31c17b9cd639e9834ee56816d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab848ecc31c17b9cd639e9834ee56816d"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#ab848ecc31c17b9cd639e9834ee56816d">dot_z_iter</a></td></tr>
-<tr class="memdesc:ab848ecc31c17b9cd639e9834ee56816d"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ z_hat_iter <br/></td></tr>
-<tr class="memitem:ad2417d37a566a0d26dea57f6f875ca12"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad2417d37a566a0d26dea57f6f875ca12"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#ad2417d37a566a0d26dea57f6f875ca12">dot_z_iter_old</a></td></tr>
-<tr class="memdesc:ad2417d37a566a0d26dea57f6f875ca12"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a50526d4b81b2dd8cf90e82ad162af3c5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a50526d4b81b2dd8cf90e82ad162af3c5"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#a50526d4b81b2dd8cf90e82ad162af3c5">dot_p_iter</a></td></tr>
-<tr class="memdesc:a50526d4b81b2dd8cf90e82ad162af3c5"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ p_hat_iter <br/></td></tr>
-<tr class="memitem:ac1b772ccfa72ce8e522298aeef3b1e1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac1b772ccfa72ce8e522298aeef3b1e1b"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfct__adjoint__plan.html#ac1b772ccfa72ce8e522298aeef3b1e1b">dot_v_hat_iter</a></td></tr>
-<tr class="memdesc:ac1b772ccfa72ce8e522298aeef3b1e1b"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Structure for an adjoint transform plan. </p>
-
-<p>Definition at line <a class="el" href="solver__adjoint_8h_source.html#l00080">80</a> of file <a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structinfft__adjoint__plan.html b/doc/api/html/structinfft__adjoint__plan.html
deleted file mode 100644
index b8afb56..0000000
--- a/doc/api/html/structinfft__adjoint__plan.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - infft_adjoint_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">infft_adjoint_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Structure for an adjoint transform plan.
- <a href="structinfft__adjoint__plan.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a320424336d0f74f0d24cc67053dea7ca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a320424336d0f74f0d24cc67053dea7ca"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a320424336d0f74f0d24cc67053dea7ca">mv</a></td></tr>
-<tr class="memdesc:a320424336d0f74f0d24cc67053dea7ca"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:a83f3fc443fbf5c40336a46a8c1bdfaf8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83f3fc443fbf5c40336a46a8c1bdfaf8"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a83f3fc443fbf5c40336a46a8c1bdfaf8">flags</a></td></tr>
-<tr class="memdesc:a83f3fc443fbf5c40336a46a8c1bdfaf8"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:a67fabb54885946acaaad95a5a472b004"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67fabb54885946acaaad95a5a472b004"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a67fabb54885946acaaad95a5a472b004">w</a></td></tr>
-<tr class="memdesc:a67fabb54885946acaaad95a5a472b004"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:a76ad0c6eace967391553fd4939e70662"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a76ad0c6eace967391553fd4939e70662"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a76ad0c6eace967391553fd4939e70662">w_hat</a></td></tr>
-<tr class="memdesc:a76ad0c6eace967391553fd4939e70662"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:ab91fa7e8fa5668148a4cba86a97e415b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab91fa7e8fa5668148a4cba86a97e415b"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#ab91fa7e8fa5668148a4cba86a97e415b">y_hat</a></td></tr>
-<tr class="memdesc:ab91fa7e8fa5668148a4cba86a97e415b"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:a0b408ac6ce2906dc57ff0c2ff9d3f0d0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b408ac6ce2906dc57ff0c2ff9d3f0d0"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a0b408ac6ce2906dc57ff0c2ff9d3f0d0">f_iter</a></td></tr>
-<tr class="memdesc:a0b408ac6ce2906dc57ff0c2ff9d3f0d0"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:a314c60168395a677ea88ff67dcaa2ec9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a314c60168395a677ea88ff67dcaa2ec9"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a314c60168395a677ea88ff67dcaa2ec9">r_hat_iter</a></td></tr>
-<tr class="memdesc:a314c60168395a677ea88ff67dcaa2ec9"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:a0f6a4a61889385e975380802617ade31"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f6a4a61889385e975380802617ade31"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a0f6a4a61889385e975380802617ade31">z_iter</a></td></tr>
-<tr class="memdesc:a0f6a4a61889385e975380802617ade31"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of \ first kind <br/></td></tr>
-<tr class="memitem:afa0571b6b2c75979bc6a8ea75dc13efc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa0571b6b2c75979bc6a8ea75dc13efc"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#afa0571b6b2c75979bc6a8ea75dc13efc">p_iter</a></td></tr>
-<tr class="memdesc:afa0571b6b2c75979bc6a8ea75dc13efc"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:a8f64e1af7dfd3cd41377d79113eb51e3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f64e1af7dfd3cd41377d79113eb51e3"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a8f64e1af7dfd3cd41377d79113eb51e3">v_hat_iter</a></td></tr>
-<tr class="memdesc:a8f64e1af7dfd3cd41377d79113eb51e3"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:a9abf5757d92159acfd73366a4c4df7be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9abf5757d92159acfd73366a4c4df7be"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a9abf5757d92159acfd73366a4c4df7be">alpha_iter</a></td></tr>
-<tr class="memdesc:a9abf5757d92159acfd73366a4c4df7be"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:a09f8c30247659fc918d48521ba5ed5e8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a09f8c30247659fc918d48521ba5ed5e8"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a09f8c30247659fc918d48521ba5ed5e8">beta_iter</a></td></tr>
-<tr class="memdesc:a09f8c30247659fc918d48521ba5ed5e8"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:af3de3b55c6ddf2e27ed9fbe7ef164b04"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af3de3b55c6ddf2e27ed9fbe7ef164b04"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#af3de3b55c6ddf2e27ed9fbe7ef164b04">dot_r_hat_iter</a></td></tr>
-<tr class="memdesc:af3de3b55c6ddf2e27ed9fbe7ef164b04"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:a38e5e1e241a0a4a54e83266223725ab6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a38e5e1e241a0a4a54e83266223725ab6"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a38e5e1e241a0a4a54e83266223725ab6">dot_r_hat_iter_old</a></td></tr>
-<tr class="memdesc:a38e5e1e241a0a4a54e83266223725ab6"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:a6cca862303d84903e408f5a2ea02aa9c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6cca862303d84903e408f5a2ea02aa9c"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a6cca862303d84903e408f5a2ea02aa9c">dot_z_iter</a></td></tr>
-<tr class="memdesc:a6cca862303d84903e408f5a2ea02aa9c"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ z_hat_iter <br/></td></tr>
-<tr class="memitem:aa78f22f1c5c917f665b2f1af3e7df191"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa78f22f1c5c917f665b2f1af3e7df191"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#aa78f22f1c5c917f665b2f1af3e7df191">dot_z_iter_old</a></td></tr>
-<tr class="memdesc:aa78f22f1c5c917f665b2f1af3e7df191"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a2ddddb18e229f9d2d4b9eb11c36d0529"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ddddb18e229f9d2d4b9eb11c36d0529"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a2ddddb18e229f9d2d4b9eb11c36d0529">dot_p_iter</a></td></tr>
-<tr class="memdesc:a2ddddb18e229f9d2d4b9eb11c36d0529"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ p_hat_iter <br/></td></tr>
-<tr class="memitem:a1a005f3e97b207a1d42cbc8e2ad3a5e1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a005f3e97b207a1d42cbc8e2ad3a5e1"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfft__adjoint__plan.html#a1a005f3e97b207a1d42cbc8e2ad3a5e1">dot_v_hat_iter</a></td></tr>
-<tr class="memdesc:a1a005f3e97b207a1d42cbc8e2ad3a5e1"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Structure for an adjoint transform plan. </p>
-
-<p>Definition at line <a class="el" href="solver__adjoint_8h_source.html#l00079">79</a> of file <a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structinfsft__adjoint__plan.html b/doc/api/html/structinfsft__adjoint__plan.html
deleted file mode 100644
index 485c380..0000000
--- a/doc/api/html/structinfsft__adjoint__plan.html
+++ /dev/null
@@ -1,120 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - infsft_adjoint_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">infsft_adjoint_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>TODO: different solvers.
- <a href="structinfsft__adjoint__plan.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a791fe047a3b45cce8049e83d422b8414"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a791fe047a3b45cce8049e83d422b8414"></a>
-<a class="el" href="structnfsft__plan.html">nfsft_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a791fe047a3b45cce8049e83d422b8414">mv</a></td></tr>
-<tr class="memdesc:a791fe047a3b45cce8049e83d422b8414"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:a6795cda9e0d83c5b5c7935b75d10dc1a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6795cda9e0d83c5b5c7935b75d10dc1a"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a6795cda9e0d83c5b5c7935b75d10dc1a">flags</a></td></tr>
-<tr class="memdesc:a6795cda9e0d83c5b5c7935b75d10dc1a"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:a9738a7ae6eb6e9ac59018d7fe0b67b32"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9738a7ae6eb6e9ac59018d7fe0b67b32"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a9738a7ae6eb6e9ac59018d7fe0b67b32">w</a></td></tr>
-<tr class="memdesc:a9738a7ae6eb6e9ac59018d7fe0b67b32"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:a5830886454142e4825347a703f286c0a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5830886454142e4825347a703f286c0a"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a5830886454142e4825347a703f286c0a">w_hat</a></td></tr>
-<tr class="memdesc:a5830886454142e4825347a703f286c0a"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:ac21eced87cb3a6eafd0d22f27e0eac03"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac21eced87cb3a6eafd0d22f27e0eac03"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#ac21eced87cb3a6eafd0d22f27e0eac03">y_hat</a></td></tr>
-<tr class="memdesc:ac21eced87cb3a6eafd0d22f27e0eac03"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:a9c5a261251ad90176392b2fafcd961de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9c5a261251ad90176392b2fafcd961de"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a9c5a261251ad90176392b2fafcd961de">f_iter</a></td></tr>
-<tr class="memdesc:a9c5a261251ad90176392b2fafcd961de"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:a781b1438bf0c8d47f51b30551f982426"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a781b1438bf0c8d47f51b30551f982426"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a781b1438bf0c8d47f51b30551f982426">r_hat_iter</a></td></tr>
-<tr class="memdesc:a781b1438bf0c8d47f51b30551f982426"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:a2c01ce7b85130d3069016e30b4a1685e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2c01ce7b85130d3069016e30b4a1685e"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a2c01ce7b85130d3069016e30b4a1685e">z_iter</a></td></tr>
-<tr class="memdesc:a2c01ce7b85130d3069016e30b4a1685e"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of \ first kind <br/></td></tr>
-<tr class="memitem:a6e1fc4f4d7adf8aa89cde17cf002f0f6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e1fc4f4d7adf8aa89cde17cf002f0f6"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a6e1fc4f4d7adf8aa89cde17cf002f0f6">p_iter</a></td></tr>
-<tr class="memdesc:a6e1fc4f4d7adf8aa89cde17cf002f0f6"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:ae1911bb7b195a6cdc51fc2c9dd5663d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae1911bb7b195a6cdc51fc2c9dd5663d5"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#ae1911bb7b195a6cdc51fc2c9dd5663d5">v_hat_iter</a></td></tr>
-<tr class="memdesc:ae1911bb7b195a6cdc51fc2c9dd5663d5"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:aad358c99ea10d70c4984bf9898820865"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad358c99ea10d70c4984bf9898820865"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#aad358c99ea10d70c4984bf9898820865">alpha_iter</a></td></tr>
-<tr class="memdesc:aad358c99ea10d70c4984bf9898820865"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:a7714746a66fd3657bd247062c9c5cb24"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7714746a66fd3657bd247062c9c5cb24"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a7714746a66fd3657bd247062c9c5cb24">beta_iter</a></td></tr>
-<tr class="memdesc:a7714746a66fd3657bd247062c9c5cb24"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:a90e95de22380d88f23720ffca653edeb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a90e95de22380d88f23720ffca653edeb"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a90e95de22380d88f23720ffca653edeb">dot_r_hat_iter</a></td></tr>
-<tr class="memdesc:a90e95de22380d88f23720ffca653edeb"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:a228a2a746f7b7958efb3c4a4ef28e6ce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a228a2a746f7b7958efb3c4a4ef28e6ce"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a228a2a746f7b7958efb3c4a4ef28e6ce">dot_r_hat_iter_old</a></td></tr>
-<tr class="memdesc:a228a2a746f7b7958efb3c4a4ef28e6ce"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:ad854541f2e09bc978461fff1c323b2a5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad854541f2e09bc978461fff1c323b2a5"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#ad854541f2e09bc978461fff1c323b2a5">dot_z_iter</a></td></tr>
-<tr class="memdesc:ad854541f2e09bc978461fff1c323b2a5"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ z_hat_iter <br/></td></tr>
-<tr class="memitem:a681a3587b2e42a24f03bac812eb7a60e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a681a3587b2e42a24f03bac812eb7a60e"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a681a3587b2e42a24f03bac812eb7a60e">dot_z_iter_old</a></td></tr>
-<tr class="memdesc:a681a3587b2e42a24f03bac812eb7a60e"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a108504616c4e19b53638a80710f9308c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a108504616c4e19b53638a80710f9308c"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a108504616c4e19b53638a80710f9308c">dot_p_iter</a></td></tr>
-<tr class="memdesc:a108504616c4e19b53638a80710f9308c"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ p_hat_iter <br/></td></tr>
-<tr class="memitem:a990b893dd142cbc3ade6436bdd603e59"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a990b893dd142cbc3ade6436bdd603e59"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfsft__adjoint__plan.html#a990b893dd142cbc3ade6436bdd603e59">dot_v_hat_iter</a></td></tr>
-<tr class="memdesc:a990b893dd142cbc3ade6436bdd603e59"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>TODO: different solvers. </p>
-<p>Structure for an adjoint transform plan </p>
-
-<p>Definition at line <a class="el" href="solver__adjoint_8h_source.html#l00078">78</a> of file <a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structinfst__adjoint__plan.html b/doc/api/html/structinfst__adjoint__plan.html
deleted file mode 100644
index dbfab1b..0000000
--- a/doc/api/html/structinfst__adjoint__plan.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - infst_adjoint_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">infst_adjoint_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Structure for an adjoint transform plan.
- <a href="structinfst__adjoint__plan.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a02395790ff1d9e7ffc2e3fae3b927df0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02395790ff1d9e7ffc2e3fae3b927df0"></a>
-<a class="el" href="structnfst__plan.html">nfst_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a02395790ff1d9e7ffc2e3fae3b927df0">mv</a></td></tr>
-<tr class="memdesc:a02395790ff1d9e7ffc2e3fae3b927df0"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:a8771c95bc65a49fe974389825f005ec9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8771c95bc65a49fe974389825f005ec9"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a8771c95bc65a49fe974389825f005ec9">flags</a></td></tr>
-<tr class="memdesc:a8771c95bc65a49fe974389825f005ec9"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:a5b64034f7c01c3ce0a7ab02fd8477bdc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b64034f7c01c3ce0a7ab02fd8477bdc"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a5b64034f7c01c3ce0a7ab02fd8477bdc">w</a></td></tr>
-<tr class="memdesc:a5b64034f7c01c3ce0a7ab02fd8477bdc"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:a00f860d5af6ada0c99a252b5d7548f5b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a00f860d5af6ada0c99a252b5d7548f5b"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a00f860d5af6ada0c99a252b5d7548f5b">w_hat</a></td></tr>
-<tr class="memdesc:a00f860d5af6ada0c99a252b5d7548f5b"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:a52d2b0b0d208e673eada45dff01e9c13"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a52d2b0b0d208e673eada45dff01e9c13"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a52d2b0b0d208e673eada45dff01e9c13">y_hat</a></td></tr>
-<tr class="memdesc:a52d2b0b0d208e673eada45dff01e9c13"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:a53b03057778ae78ee06efd6b135e23fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53b03057778ae78ee06efd6b135e23fb"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a53b03057778ae78ee06efd6b135e23fb">f_iter</a></td></tr>
-<tr class="memdesc:a53b03057778ae78ee06efd6b135e23fb"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:abd086bc019b356986e38f3db8039051f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd086bc019b356986e38f3db8039051f"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#abd086bc019b356986e38f3db8039051f">r_hat_iter</a></td></tr>
-<tr class="memdesc:abd086bc019b356986e38f3db8039051f"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:a254d587d2d91f18fb55a2ccae89198a5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a254d587d2d91f18fb55a2ccae89198a5"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a254d587d2d91f18fb55a2ccae89198a5">z_iter</a></td></tr>
-<tr class="memdesc:a254d587d2d91f18fb55a2ccae89198a5"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of \ first kind <br/></td></tr>
-<tr class="memitem:a53b6ba348be2011c1cfecdb9f16829fd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53b6ba348be2011c1cfecdb9f16829fd"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a53b6ba348be2011c1cfecdb9f16829fd">p_iter</a></td></tr>
-<tr class="memdesc:a53b6ba348be2011c1cfecdb9f16829fd"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:a10da470b963e2d631f48e8eb81bad94e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a10da470b963e2d631f48e8eb81bad94e"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a10da470b963e2d631f48e8eb81bad94e">v_hat_iter</a></td></tr>
-<tr class="memdesc:a10da470b963e2d631f48e8eb81bad94e"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:aef3f9b375d7e43fbcbea60380c5e9f34"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aef3f9b375d7e43fbcbea60380c5e9f34"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#aef3f9b375d7e43fbcbea60380c5e9f34">alpha_iter</a></td></tr>
-<tr class="memdesc:aef3f9b375d7e43fbcbea60380c5e9f34"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:a0aa7b8faeab03acb6011b673882282ea"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0aa7b8faeab03acb6011b673882282ea"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a0aa7b8faeab03acb6011b673882282ea">beta_iter</a></td></tr>
-<tr class="memdesc:a0aa7b8faeab03acb6011b673882282ea"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:a3dfbd628846af0683c8fc263f8cf6418"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3dfbd628846af0683c8fc263f8cf6418"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a3dfbd628846af0683c8fc263f8cf6418">dot_r_hat_iter</a></td></tr>
-<tr class="memdesc:a3dfbd628846af0683c8fc263f8cf6418"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:ae8dfd86274f0e3bba8c01730449d0474"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae8dfd86274f0e3bba8c01730449d0474"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#ae8dfd86274f0e3bba8c01730449d0474">dot_r_hat_iter_old</a></td></tr>
-<tr class="memdesc:ae8dfd86274f0e3bba8c01730449d0474"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:a2309d1161fdf96711f3251e41a65eef0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2309d1161fdf96711f3251e41a65eef0"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a2309d1161fdf96711f3251e41a65eef0">dot_z_iter</a></td></tr>
-<tr class="memdesc:a2309d1161fdf96711f3251e41a65eef0"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ z_hat_iter <br/></td></tr>
-<tr class="memitem:a9bdd6b4dfcb1b22bd010444ef34b5903"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9bdd6b4dfcb1b22bd010444ef34b5903"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a9bdd6b4dfcb1b22bd010444ef34b5903">dot_z_iter_old</a></td></tr>
-<tr class="memdesc:a9bdd6b4dfcb1b22bd010444ef34b5903"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a6dfb17d6feade963b31c16e6278aa6ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6dfb17d6feade963b31c16e6278aa6ee"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#a6dfb17d6feade963b31c16e6278aa6ee">dot_p_iter</a></td></tr>
-<tr class="memdesc:a6dfb17d6feade963b31c16e6278aa6ee"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ p_hat_iter <br/></td></tr>
-<tr class="memitem:ab4e8f85dfe25ba2b90f86d7d39362e5c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab4e8f85dfe25ba2b90f86d7d39362e5c"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinfst__adjoint__plan.html#ab4e8f85dfe25ba2b90f86d7d39362e5c">dot_v_hat_iter</a></td></tr>
-<tr class="memdesc:ab4e8f85dfe25ba2b90f86d7d39362e5c"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Structure for an adjoint transform plan. </p>
-
-<p>Definition at line <a class="el" href="solver__adjoint_8h_source.html#l00081">81</a> of file <a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structinnfft__adjoint__plan.html b/doc/api/html/structinnfft__adjoint__plan.html
deleted file mode 100644
index ea4f1c7..0000000
--- a/doc/api/html/structinnfft__adjoint__plan.html
+++ /dev/null
@@ -1,119 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - innfft_adjoint_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">innfft_adjoint_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Structure for an adjoint transform plan.
- <a href="structinnfft__adjoint__plan.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:abb0996d6ed2cd627dc28fb7f5c18007a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abb0996d6ed2cd627dc28fb7f5c18007a"></a>
-<a class="el" href="structnnfft__plan.html">nnfft_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#abb0996d6ed2cd627dc28fb7f5c18007a">mv</a></td></tr>
-<tr class="memdesc:abb0996d6ed2cd627dc28fb7f5c18007a"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:a0d51c3ece7512b04408b5a2b94ee4a05"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0d51c3ece7512b04408b5a2b94ee4a05"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a0d51c3ece7512b04408b5a2b94ee4a05">flags</a></td></tr>
-<tr class="memdesc:a0d51c3ece7512b04408b5a2b94ee4a05"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:a20565dbd14d036eb348ca0276a4f411c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a20565dbd14d036eb348ca0276a4f411c"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a20565dbd14d036eb348ca0276a4f411c">w</a></td></tr>
-<tr class="memdesc:a20565dbd14d036eb348ca0276a4f411c"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:a0545064b15a22a5a3ae285e6aded5f80"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0545064b15a22a5a3ae285e6aded5f80"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a0545064b15a22a5a3ae285e6aded5f80">w_hat</a></td></tr>
-<tr class="memdesc:a0545064b15a22a5a3ae285e6aded5f80"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:acd0758c4ed1c79b6d2f2eed33effb539"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd0758c4ed1c79b6d2f2eed33effb539"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#acd0758c4ed1c79b6d2f2eed33effb539">y_hat</a></td></tr>
-<tr class="memdesc:acd0758c4ed1c79b6d2f2eed33effb539"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:a74d132853f5b7e0a4b8e3918dae7fe8c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74d132853f5b7e0a4b8e3918dae7fe8c"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a74d132853f5b7e0a4b8e3918dae7fe8c">f_iter</a></td></tr>
-<tr class="memdesc:a74d132853f5b7e0a4b8e3918dae7fe8c"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:a4739f3543d8e4e7af745c017a163516f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4739f3543d8e4e7af745c017a163516f"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a4739f3543d8e4e7af745c017a163516f">r_hat_iter</a></td></tr>
-<tr class="memdesc:a4739f3543d8e4e7af745c017a163516f"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:a4a4aac08b2efbcbc13545a08bb397f52"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a4aac08b2efbcbc13545a08bb397f52"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a4a4aac08b2efbcbc13545a08bb397f52">z_iter</a></td></tr>
-<tr class="memdesc:a4a4aac08b2efbcbc13545a08bb397f52"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of \ first kind <br/></td></tr>
-<tr class="memitem:a74ee726c5c0916fde59e77ca51d319eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74ee726c5c0916fde59e77ca51d319eb"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a74ee726c5c0916fde59e77ca51d319eb">p_iter</a></td></tr>
-<tr class="memdesc:a74ee726c5c0916fde59e77ca51d319eb"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:a5078575d0bf816ed68ce3c762f578887"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5078575d0bf816ed68ce3c762f578887"></a>
-double _Complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a5078575d0bf816ed68ce3c762f578887">v_hat_iter</a></td></tr>
-<tr class="memdesc:a5078575d0bf816ed68ce3c762f578887"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:ae202e8af2161d1d64bb32e49fc16f5f0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae202e8af2161d1d64bb32e49fc16f5f0"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#ae202e8af2161d1d64bb32e49fc16f5f0">alpha_iter</a></td></tr>
-<tr class="memdesc:ae202e8af2161d1d64bb32e49fc16f5f0"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:a444f54274b78ec9162683d2cc9cb3160"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a444f54274b78ec9162683d2cc9cb3160"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a444f54274b78ec9162683d2cc9cb3160">beta_iter</a></td></tr>
-<tr class="memdesc:a444f54274b78ec9162683d2cc9cb3160"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:aad7bfd0f7561ec252b26b1d183622f12"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad7bfd0f7561ec252b26b1d183622f12"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#aad7bfd0f7561ec252b26b1d183622f12">dot_r_hat_iter</a></td></tr>
-<tr class="memdesc:aad7bfd0f7561ec252b26b1d183622f12"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:a0a0b243360667886af63d1ac26408f74"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a0b243360667886af63d1ac26408f74"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a0a0b243360667886af63d1ac26408f74">dot_r_hat_iter_old</a></td></tr>
-<tr class="memdesc:a0a0b243360667886af63d1ac26408f74"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:aae72bba8cc1a211c1b3931c969f95a85"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aae72bba8cc1a211c1b3931c969f95a85"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#aae72bba8cc1a211c1b3931c969f95a85">dot_z_iter</a></td></tr>
-<tr class="memdesc:aae72bba8cc1a211c1b3931c969f95a85"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ z_hat_iter <br/></td></tr>
-<tr class="memitem:a669c48fd77d0d04bf0adc4ebedbd699f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a669c48fd77d0d04bf0adc4ebedbd699f"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a669c48fd77d0d04bf0adc4ebedbd699f">dot_z_iter_old</a></td></tr>
-<tr class="memdesc:a669c48fd77d0d04bf0adc4ebedbd699f"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a3d20a53eb3c0158cc401d7b0d640da07"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d20a53eb3c0158cc401d7b0d640da07"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a3d20a53eb3c0158cc401d7b0d640da07">dot_p_iter</a></td></tr>
-<tr class="memdesc:a3d20a53eb3c0158cc401d7b0d640da07"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of \ p_hat_iter <br/></td></tr>
-<tr class="memitem:a5d9a12eacf094e7f9e771add0a3874d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d9a12eacf094e7f9e771add0a3874d5"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structinnfft__adjoint__plan.html#a5d9a12eacf094e7f9e771add0a3874d5">dot_v_hat_iter</a></td></tr>
-<tr class="memdesc:a5d9a12eacf094e7f9e771add0a3874d5"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Structure for an adjoint transform plan. </p>
-
-<p>Definition at line <a class="el" href="solver__adjoint_8h_source.html#l00082">82</a> of file <a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="solver__adjoint_8h_source.html">solver_adjoint.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structmri__inh__2d1d__plan.html b/doc/api/html/structmri__inh__2d1d__plan.html
deleted file mode 100644
index ce1df36..0000000
--- a/doc/api/html/structmri__inh__2d1d__plan.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - mri_inh_2d1d_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">mri_inh_2d1d_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a25e2abd348fabee511856c61a7074c5b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a25e2abd348fabee511856c61a7074c5b"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__2d1d__plan.html#a25e2abd348fabee511856c61a7074c5b">N_total</a></td></tr>
-<tr class="memdesc:a25e2abd348fabee511856c61a7074c5b"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a45f3f352231150e660ca1b8819d58d09"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a45f3f352231150e660ca1b8819d58d09"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__2d1d__plan.html#a45f3f352231150e660ca1b8819d58d09">M_total</a></td></tr>
-<tr class="memdesc:a45f3f352231150e660ca1b8819d58d09"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ad34c95b6390628c8fcd223b77e37e5bf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad34c95b6390628c8fcd223b77e37e5bf"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__2d1d__plan.html#ad34c95b6390628c8fcd223b77e37e5bf">f_hat</a></td></tr>
-<tr class="memdesc:ad34c95b6390628c8fcd223b77e37e5bf"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a985f125ad6a94361939572f8323872a0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a985f125ad6a94361939572f8323872a0"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__2d1d__plan.html#a985f125ad6a94361939572f8323872a0">f</a></td></tr>
-<tr class="memdesc:a985f125ad6a94361939572f8323872a0"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a4cad33b38f4d5bc54b8d25d90913ab44"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4cad33b38f4d5bc54b8d25d90913ab44"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__2d1d__plan.html#a4cad33b38f4d5bc54b8d25d90913ab44">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a4cad33b38f4d5bc54b8d25d90913ab44"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:afe427225384a2d226c3cb85cf9aa4042"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afe427225384a2d226c3cb85cf9aa4042"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__2d1d__plan.html#afe427225384a2d226c3cb85cf9aa4042">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:afe427225384a2d226c3cb85cf9aa4042"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:ac911bea7fd2e5b81f3f7a917842d6bc7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac911bea7fd2e5b81f3f7a917842d6bc7"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> </td><td class="memItemRight" valign="bottom"><b>plan</b></td></tr>
-<tr class="memitem:a9776bd2e03278b7cbdef2b4dce19dbc1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9776bd2e03278b7cbdef2b4dce19dbc1"></a>
-int </td><td class="memItemRight" valign="bottom"><b>N3</b></td></tr>
-<tr class="memitem:a94c6285d9cfeb7e358dd4990245639e7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a94c6285d9cfeb7e358dd4990245639e7"></a>
-double </td><td class="memItemRight" valign="bottom"><b>sigma3</b></td></tr>
-<tr class="memitem:ae80cae06faca26a12bbbb896d5d7c527"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae80cae06faca26a12bbbb896d5d7c527"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>t</b></td></tr>
-<tr class="memitem:a22ed3402646ded705084299c84d97a62"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a22ed3402646ded705084299c84d97a62"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>w</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00504">504</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structmri__inh__3d__plan.html b/doc/api/html/structmri__inh__3d__plan.html
deleted file mode 100644
index 68de26a..0000000
--- a/doc/api/html/structmri__inh__3d__plan.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - mri_inh_3d_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">mri_inh_3d_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:aa1b253e912e92b252c4992eb86d92e12"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa1b253e912e92b252c4992eb86d92e12"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__3d__plan.html#aa1b253e912e92b252c4992eb86d92e12">N_total</a></td></tr>
-<tr class="memdesc:aa1b253e912e92b252c4992eb86d92e12"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:ae90c4e1c541956b5902e7aafc193ad8b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae90c4e1c541956b5902e7aafc193ad8b"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__3d__plan.html#ae90c4e1c541956b5902e7aafc193ad8b">M_total</a></td></tr>
-<tr class="memdesc:ae90c4e1c541956b5902e7aafc193ad8b"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a91ed30b213dea4954d2d27c4d1334a50"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a91ed30b213dea4954d2d27c4d1334a50"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__3d__plan.html#a91ed30b213dea4954d2d27c4d1334a50">f_hat</a></td></tr>
-<tr class="memdesc:a91ed30b213dea4954d2d27c4d1334a50"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a9e51f5f4ad46d4b120c452fc962a2385"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9e51f5f4ad46d4b120c452fc962a2385"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__3d__plan.html#a9e51f5f4ad46d4b120c452fc962a2385">f</a></td></tr>
-<tr class="memdesc:a9e51f5f4ad46d4b120c452fc962a2385"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a780818802d5bfdc4d4174a3637254fd5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a780818802d5bfdc4d4174a3637254fd5"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__3d__plan.html#a780818802d5bfdc4d4174a3637254fd5">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a780818802d5bfdc4d4174a3637254fd5"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:afa2e143e704b701e9a0ee1d795f46b5b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa2e143e704b701e9a0ee1d795f46b5b"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmri__inh__3d__plan.html#afa2e143e704b701e9a0ee1d795f46b5b">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:afa2e143e704b701e9a0ee1d795f46b5b"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:ac8386842f48b212c4132a3b151d73402"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac8386842f48b212c4132a3b151d73402"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> </td><td class="memItemRight" valign="bottom"><b>plan</b></td></tr>
-<tr class="memitem:af12a214bc2e75f1188cd7ff1bb99f0ff"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af12a214bc2e75f1188cd7ff1bb99f0ff"></a>
-int </td><td class="memItemRight" valign="bottom"><b>N3</b></td></tr>
-<tr class="memitem:a88b160a5bf9943ebffc65365f2b7663f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a88b160a5bf9943ebffc65365f2b7663f"></a>
-double </td><td class="memItemRight" valign="bottom"><b>sigma3</b></td></tr>
-<tr class="memitem:ae7fe0fd3fb4509abc5a7a7c07df63a1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae7fe0fd3fb4509abc5a7a7c07df63a1b"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>t</b></td></tr>
-<tr class="memitem:aaf6f68ab1fa5e3b852487bf12dc483ff"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf6f68ab1fa5e3b852487bf12dc483ff"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>w</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00504">504</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structmrif__inh__2d1d__plan.html b/doc/api/html/structmrif__inh__2d1d__plan.html
deleted file mode 100644
index ab28980..0000000
--- a/doc/api/html/structmrif__inh__2d1d__plan.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - mrif_inh_2d1d_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">mrif_inh_2d1d_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:afad39dcd7d77c81247bcf5e4abc1cdaa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afad39dcd7d77c81247bcf5e4abc1cdaa"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__2d1d__plan.html#afad39dcd7d77c81247bcf5e4abc1cdaa">N_total</a></td></tr>
-<tr class="memdesc:afad39dcd7d77c81247bcf5e4abc1cdaa"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:ac9fffb187c8a840eb83939ba4d710f13"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac9fffb187c8a840eb83939ba4d710f13"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__2d1d__plan.html#ac9fffb187c8a840eb83939ba4d710f13">M_total</a></td></tr>
-<tr class="memdesc:ac9fffb187c8a840eb83939ba4d710f13"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a18fb340e9ead654552e45033c81ac637"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18fb340e9ead654552e45033c81ac637"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__2d1d__plan.html#a18fb340e9ead654552e45033c81ac637">f_hat</a></td></tr>
-<tr class="memdesc:a18fb340e9ead654552e45033c81ac637"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:a3ab01f8b5f1b1368dbf3d7715ce46997"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3ab01f8b5f1b1368dbf3d7715ce46997"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__2d1d__plan.html#a3ab01f8b5f1b1368dbf3d7715ce46997">f</a></td></tr>
-<tr class="memdesc:a3ab01f8b5f1b1368dbf3d7715ce46997"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:acdbe3a414d9c87baba03db3d873b864c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acdbe3a414d9c87baba03db3d873b864c"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__2d1d__plan.html#acdbe3a414d9c87baba03db3d873b864c">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:acdbe3a414d9c87baba03db3d873b864c"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:aea23a3331d423e70f2cbbeee71303906"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aea23a3331d423e70f2cbbeee71303906"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__2d1d__plan.html#aea23a3331d423e70f2cbbeee71303906">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:aea23a3331d423e70f2cbbeee71303906"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a50fc144d7931e8db51c8b745096419c0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a50fc144d7931e8db51c8b745096419c0"></a>
-<a class="el" href="structnfftf__plan.html">nfftf_plan</a> </td><td class="memItemRight" valign="bottom"><b>plan</b></td></tr>
-<tr class="memitem:ae083ca7967f0ac15dca241336782f353"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae083ca7967f0ac15dca241336782f353"></a>
-int </td><td class="memItemRight" valign="bottom"><b>N3</b></td></tr>
-<tr class="memitem:a7feb68d7fd4fe5590700ddf6aa64d27c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7feb68d7fd4fe5590700ddf6aa64d27c"></a>
-float </td><td class="memItemRight" valign="bottom"><b>sigma3</b></td></tr>
-<tr class="memitem:a601416c33ee05eb2cc89b3a03aa0bb0b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a601416c33ee05eb2cc89b3a03aa0bb0b"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>t</b></td></tr>
-<tr class="memitem:a53834de9b90ac2eb35eb5bf5b00bdfac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53834de9b90ac2eb35eb5bf5b00bdfac"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>w</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00504">504</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structmrif__inh__3d__plan.html b/doc/api/html/structmrif__inh__3d__plan.html
deleted file mode 100644
index 0de08e7..0000000
--- a/doc/api/html/structmrif__inh__3d__plan.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - mrif_inh_3d_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">mrif_inh_3d_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a7d51e6be67c5f2bc4d1a996e10228258"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7d51e6be67c5f2bc4d1a996e10228258"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__3d__plan.html#a7d51e6be67c5f2bc4d1a996e10228258">N_total</a></td></tr>
-<tr class="memdesc:a7d51e6be67c5f2bc4d1a996e10228258"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a03c2aa160944a42e0f3116e7545ed20f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03c2aa160944a42e0f3116e7545ed20f"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__3d__plan.html#a03c2aa160944a42e0f3116e7545ed20f">M_total</a></td></tr>
-<tr class="memdesc:a03c2aa160944a42e0f3116e7545ed20f"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ac644cb0bbceb7ea8634ea94758da405d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac644cb0bbceb7ea8634ea94758da405d"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__3d__plan.html#ac644cb0bbceb7ea8634ea94758da405d">f_hat</a></td></tr>
-<tr class="memdesc:ac644cb0bbceb7ea8634ea94758da405d"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:aa762bd3f11d1558e792ff34dc710bcb3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa762bd3f11d1558e792ff34dc710bcb3"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__3d__plan.html#aa762bd3f11d1558e792ff34dc710bcb3">f</a></td></tr>
-<tr class="memdesc:aa762bd3f11d1558e792ff34dc710bcb3"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:a4763b4f8f1b5f574d601289ab3cbcfa8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4763b4f8f1b5f574d601289ab3cbcfa8"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__3d__plan.html#a4763b4f8f1b5f574d601289ab3cbcfa8">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a4763b4f8f1b5f574d601289ab3cbcfa8"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:ac765b0a8797a3fd31b58133be9ff280b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac765b0a8797a3fd31b58133be9ff280b"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmrif__inh__3d__plan.html#ac765b0a8797a3fd31b58133be9ff280b">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:ac765b0a8797a3fd31b58133be9ff280b"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a6c0f3d1e0a228a2484fdd9eeb3bdd0be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6c0f3d1e0a228a2484fdd9eeb3bdd0be"></a>
-<a class="el" href="structnfftf__plan.html">nfftf_plan</a> </td><td class="memItemRight" valign="bottom"><b>plan</b></td></tr>
-<tr class="memitem:ab63634a14a15edd68fbd75d25fe15b5e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab63634a14a15edd68fbd75d25fe15b5e"></a>
-int </td><td class="memItemRight" valign="bottom"><b>N3</b></td></tr>
-<tr class="memitem:a1e9410e5e47340d676ceefb7168ab110"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1e9410e5e47340d676ceefb7168ab110"></a>
-float </td><td class="memItemRight" valign="bottom"><b>sigma3</b></td></tr>
-<tr class="memitem:a36265c182dd339b4b38b7af8fa70f98c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a36265c182dd339b4b38b7af8fa70f98c"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>t</b></td></tr>
-<tr class="memitem:a00ec124b509d9b222c9ce3cf2bb47ac8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a00ec124b509d9b222c9ce3cf2bb47ac8"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>w</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00504">504</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structmril__inh__2d1d__plan.html b/doc/api/html/structmril__inh__2d1d__plan.html
deleted file mode 100644
index f09afb6..0000000
--- a/doc/api/html/structmril__inh__2d1d__plan.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - mril_inh_2d1d_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">mril_inh_2d1d_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a4114df78a52f5e4a1a12a13678a9cb6c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4114df78a52f5e4a1a12a13678a9cb6c"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__2d1d__plan.html#a4114df78a52f5e4a1a12a13678a9cb6c">N_total</a></td></tr>
-<tr class="memdesc:a4114df78a52f5e4a1a12a13678a9cb6c"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a241e8def5a65484080b01871c12851b3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a241e8def5a65484080b01871c12851b3"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__2d1d__plan.html#a241e8def5a65484080b01871c12851b3">M_total</a></td></tr>
-<tr class="memdesc:a241e8def5a65484080b01871c12851b3"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a70247e89a002d0e7b5c66d1e87b33645"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a70247e89a002d0e7b5c66d1e87b33645"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__2d1d__plan.html#a70247e89a002d0e7b5c66d1e87b33645">f_hat</a></td></tr>
-<tr class="memdesc:a70247e89a002d0e7b5c66d1e87b33645"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:a3e2fef5b1bb862347511209994235597"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e2fef5b1bb862347511209994235597"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__2d1d__plan.html#a3e2fef5b1bb862347511209994235597">f</a></td></tr>
-<tr class="memdesc:a3e2fef5b1bb862347511209994235597"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:a7dbc7cd7b733b5850a59f35aa0f959d1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7dbc7cd7b733b5850a59f35aa0f959d1"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__2d1d__plan.html#a7dbc7cd7b733b5850a59f35aa0f959d1">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a7dbc7cd7b733b5850a59f35aa0f959d1"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a6259dd5746b911632df1286d0654eabe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6259dd5746b911632df1286d0654eabe"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__2d1d__plan.html#a6259dd5746b911632df1286d0654eabe">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a6259dd5746b911632df1286d0654eabe"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:abbc8cab682b3da749c06f40e70bc475b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abbc8cab682b3da749c06f40e70bc475b"></a>
-<a class="el" href="structnfftl__plan.html">nfftl_plan</a> </td><td class="memItemRight" valign="bottom"><b>plan</b></td></tr>
-<tr class="memitem:ab27fdcb536441767bf95adb8cbfe6425"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab27fdcb536441767bf95adb8cbfe6425"></a>
-int </td><td class="memItemRight" valign="bottom"><b>N3</b></td></tr>
-<tr class="memitem:a71b071b164272b44056ef3b8db619eaf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a71b071b164272b44056ef3b8db619eaf"></a>
-long double </td><td class="memItemRight" valign="bottom"><b>sigma3</b></td></tr>
-<tr class="memitem:af38eb9a2453ec19d56017f6eda837e3f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af38eb9a2453ec19d56017f6eda837e3f"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>t</b></td></tr>
-<tr class="memitem:abca46d1b594697ace053934faacf1639"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abca46d1b594697ace053934faacf1639"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>w</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00504">504</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structmril__inh__3d__plan.html b/doc/api/html/structmril__inh__3d__plan.html
deleted file mode 100644
index ccad9da..0000000
--- a/doc/api/html/structmril__inh__3d__plan.html
+++ /dev/null
@@ -1,87 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - mril_inh_3d_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">mril_inh_3d_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a79e477483b67862d2dd7fcb5432f7651"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79e477483b67862d2dd7fcb5432f7651"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__3d__plan.html#a79e477483b67862d2dd7fcb5432f7651">N_total</a></td></tr>
-<tr class="memdesc:a79e477483b67862d2dd7fcb5432f7651"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a9a1093b920fb4468b59c7120a7e1ceb5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a1093b920fb4468b59c7120a7e1ceb5"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__3d__plan.html#a9a1093b920fb4468b59c7120a7e1ceb5">M_total</a></td></tr>
-<tr class="memdesc:a9a1093b920fb4468b59c7120a7e1ceb5"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ae1f94471fa54c0a172ede3345d0a9a9c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae1f94471fa54c0a172ede3345d0a9a9c"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__3d__plan.html#ae1f94471fa54c0a172ede3345d0a9a9c">f_hat</a></td></tr>
-<tr class="memdesc:ae1f94471fa54c0a172ede3345d0a9a9c"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:adb03497106fd0a995b70010f9cd9684b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adb03497106fd0a995b70010f9cd9684b"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__3d__plan.html#adb03497106fd0a995b70010f9cd9684b">f</a></td></tr>
-<tr class="memdesc:adb03497106fd0a995b70010f9cd9684b"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:a61eec020c68a2b36cff4acb6dd4dcf96"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a61eec020c68a2b36cff4acb6dd4dcf96"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__3d__plan.html#a61eec020c68a2b36cff4acb6dd4dcf96">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a61eec020c68a2b36cff4acb6dd4dcf96"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a2d189c2b7f8b5bf635cce01354ef253e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2d189c2b7f8b5bf635cce01354ef253e"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structmril__inh__3d__plan.html#a2d189c2b7f8b5bf635cce01354ef253e">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a2d189c2b7f8b5bf635cce01354ef253e"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a0e1db4b2be63bb1fffc9342986cfdc09"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0e1db4b2be63bb1fffc9342986cfdc09"></a>
-<a class="el" href="structnfftl__plan.html">nfftl_plan</a> </td><td class="memItemRight" valign="bottom"><b>plan</b></td></tr>
-<tr class="memitem:ae596bbf35deb08eff8bfbbe0bbc13989"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae596bbf35deb08eff8bfbbe0bbc13989"></a>
-int </td><td class="memItemRight" valign="bottom"><b>N3</b></td></tr>
-<tr class="memitem:a26e17b2e0c29cf24a162afe4762964a5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a26e17b2e0c29cf24a162afe4762964a5"></a>
-long double </td><td class="memItemRight" valign="bottom"><b>sigma3</b></td></tr>
-<tr class="memitem:a18aa5418abc97a758f5c07b8dabcff77"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18aa5418abc97a758f5c07b8dabcff77"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>t</b></td></tr>
-<tr class="memitem:a9688d8a0cdd89e17a71c45efd8ab3d46"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9688d8a0cdd89e17a71c45efd8ab3d46"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>w</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00504">504</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfct__plan.html b/doc/api/html/structnfct__plan.html
deleted file mode 100644
index 9df2072..0000000
--- a/doc/api/html/structnfct__plan.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfct_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfct_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:af736d9e6e59e9a91276a48a50979fedb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af736d9e6e59e9a91276a48a50979fedb"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#af736d9e6e59e9a91276a48a50979fedb">FFTW_MANGLE_DOUBLE</a> (plan) my_fftw_r2r_plan</td></tr>
-<tr class="memdesc:af736d9e6e59e9a91276a48a50979fedb"><td class="mdescLeft"> </td><td class="mdescRight">fftw_plan <br/></td></tr>
-<tr class="memitem:a5ae19fdb6ea93d515109229f419c22df"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ae19fdb6ea93d515109229f419c22df"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a5ae19fdb6ea93d515109229f419c22df">FFTW_MANGLE_DOUBLE</a> (r2r_kind)*r2r_kind</td></tr>
-<tr class="memdesc:a5ae19fdb6ea93d515109229f419c22df"><td class="mdescLeft"> </td><td class="mdescRight">r2r transform type (DCT-I) <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:abc66ae61c54a049868c62288623d4a6b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abc66ae61c54a049868c62288623d4a6b"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#abc66ae61c54a049868c62288623d4a6b">N_total</a></td></tr>
-<tr class="memdesc:abc66ae61c54a049868c62288623d4a6b"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:ab201c4e89753b167954e7cb5f34a321d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab201c4e89753b167954e7cb5f34a321d"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#ab201c4e89753b167954e7cb5f34a321d">M_total</a></td></tr>
-<tr class="memdesc:ab201c4e89753b167954e7cb5f34a321d"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:af289164b09e85f75e8ed0eb3ded40d9c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af289164b09e85f75e8ed0eb3ded40d9c"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#af289164b09e85f75e8ed0eb3ded40d9c">f_hat</a></td></tr>
-<tr class="memdesc:af289164b09e85f75e8ed0eb3ded40d9c"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( double ) <br/></td></tr>
-<tr class="memitem:acca00284f93bd33c00a1b099a6eec8cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acca00284f93bd33c00a1b099a6eec8cd"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#acca00284f93bd33c00a1b099a6eec8cd">f</a></td></tr>
-<tr class="memdesc:acca00284f93bd33c00a1b099a6eec8cd"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( double ) <br/></td></tr>
-<tr class="memitem:a5f9802e95bfc2ae69f22e91c1fe47778"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f9802e95bfc2ae69f22e91c1fe47778"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a5f9802e95bfc2ae69f22e91c1fe47778">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a5f9802e95bfc2ae69f22e91c1fe47778"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:aab8ee071a4e254cbf94a03689ed3127f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aab8ee071a4e254cbf94a03689ed3127f"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#aab8ee071a4e254cbf94a03689ed3127f">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:aab8ee071a4e254cbf94a03689ed3127f"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a998a428a06532646854e8add72c5ca63"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a998a428a06532646854e8add72c5ca63"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a998a428a06532646854e8add72c5ca63">d</a></td></tr>
-<tr class="memdesc:a998a428a06532646854e8add72c5ca63"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank <br/></td></tr>
-<tr class="memitem:ad4d0600d8b0ee9d41bff22a7d63e64cf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad4d0600d8b0ee9d41bff22a7d63e64cf"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#ad4d0600d8b0ee9d41bff22a7d63e64cf">N</a></td></tr>
-<tr class="memdesc:ad4d0600d8b0ee9d41bff22a7d63e64cf"><td class="mdescLeft"> </td><td class="mdescRight">cut-off-frequencies (kernel) <br/></td></tr>
-<tr class="memitem:a0ad3d47d659b3641bb90eca6e56f9047"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ad3d47d659b3641bb90eca6e56f9047"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a0ad3d47d659b3641bb90eca6e56f9047">n</a></td></tr>
-<tr class="memdesc:a0ad3d47d659b3641bb90eca6e56f9047"><td class="mdescLeft"> </td><td class="mdescRight">length of DCT-I <br/></td></tr>
-<tr class="memitem:a56c9f580f79fb7605ae21bcbb729a8b9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56c9f580f79fb7605ae21bcbb729a8b9"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a56c9f580f79fb7605ae21bcbb729a8b9">sigma</a></td></tr>
-<tr class="memdesc:a56c9f580f79fb7605ae21bcbb729a8b9"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a15e9f66b0447148fcce4af9eafa2f9ed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a15e9f66b0447148fcce4af9eafa2f9ed"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a15e9f66b0447148fcce4af9eafa2f9ed">m</a></td></tr>
-<tr class="memdesc:a15e9f66b0447148fcce4af9eafa2f9ed"><td class="mdescLeft"> </td><td class="mdescRight">cut-off parameter in time-domain <br/></td></tr>
-<tr class="memitem:a63a852f63d54aa497bceeef5475cd9d3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63a852f63d54aa497bceeef5475cd9d3"></a>
-double </td><td class="memItemRight" valign="bottom"><b>nfct_full_psi_eps</b></td></tr>
-<tr class="memitem:af1c2c2fe35f5b574a39109bb7b176270"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af1c2c2fe35f5b574a39109bb7b176270"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#af1c2c2fe35f5b574a39109bb7b176270">b</a></td></tr>
-<tr class="memdesc:af1c2c2fe35f5b574a39109bb7b176270"><td class="mdescLeft"> </td><td class="mdescRight">shape parameters <br/></td></tr>
-<tr class="memitem:ae2a2e493b2938fe9b22b0506765f30cf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae2a2e493b2938fe9b22b0506765f30cf"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#ae2a2e493b2938fe9b22b0506765f30cf">nfct_flags</a></td></tr>
-<tr class="memdesc:ae2a2e493b2938fe9b22b0506765f30cf"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:a407c06575335351e1b720b40f8b4f26c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a407c06575335351e1b720b40f8b4f26c"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a407c06575335351e1b720b40f8b4f26c">fftw_flags</a></td></tr>
-<tr class="memdesc:a407c06575335351e1b720b40f8b4f26c"><td class="mdescLeft"> </td><td class="mdescRight">flags for the fftw <br/></td></tr>
-<tr class="memitem:a5635e780f4c492f087754d71f16e07ed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5635e780f4c492f087754d71f16e07ed"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a5635e780f4c492f087754d71f16e07ed">x</a></td></tr>
-<tr class="memdesc:a5635e780f4c492f087754d71f16e07ed"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in time/spatial domain) <br/></td></tr>
-<tr class="memitem:acd69baad39feaa27f34c063960b173f0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd69baad39feaa27f34c063960b173f0"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#acd69baad39feaa27f34c063960b173f0">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:acd69baad39feaa27f34c063960b173f0"><td class="mdescLeft"> </td><td class="mdescRight">measured time for each step <br/></td></tr>
-<tr class="memitem:aa217dda883fc3533b95bf6ab6ccff888"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa217dda883fc3533b95bf6ab6ccff888"></a>
-double ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#aa217dda883fc3533b95bf6ab6ccff888">c_phi_inv</a></td></tr>
-<tr class="memdesc:aa217dda883fc3533b95bf6ab6ccff888"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix D <br/></td></tr>
-<tr class="memitem:ad3886151e655110a1c5ba71a66439e2b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3886151e655110a1c5ba71a66439e2b"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#ad3886151e655110a1c5ba71a66439e2b">psi</a></td></tr>
-<tr class="memdesc:ad3886151e655110a1c5ba71a66439e2b"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix B <br/></td></tr>
-<tr class="memitem:ab03d9f17b3fb46eb14439745e8f7994b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab03d9f17b3fb46eb14439745e8f7994b"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#ab03d9f17b3fb46eb14439745e8f7994b">size_psi</a></td></tr>
-<tr class="memdesc:ab03d9f17b3fb46eb14439745e8f7994b"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:adcd209b5cbbfae40c5490a1141b7acda"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adcd209b5cbbfae40c5490a1141b7acda"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#adcd209b5cbbfae40c5490a1141b7acda">psi_index_g</a></td></tr>
-<tr class="memdesc:adcd209b5cbbfae40c5490a1141b7acda"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a59633568fd7d1cb01df5f49f08ad352c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59633568fd7d1cb01df5f49f08ad352c"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a59633568fd7d1cb01df5f49f08ad352c">psi_index_f</a></td></tr>
-<tr class="memdesc:a59633568fd7d1cb01df5f49f08ad352c"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a88c6d97cb413daa4aa92bcb8f3536b7e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a88c6d97cb413daa4aa92bcb8f3536b7e"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>g</b></td></tr>
-<tr class="memitem:acf3167b1a9a1982581cbb69fa5a7e19e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf3167b1a9a1982581cbb69fa5a7e19e"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>g_hat</b></td></tr>
-<tr class="memitem:a597e9fd4dddb36748c5e33ee1f058835"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a597e9fd4dddb36748c5e33ee1f058835"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a597e9fd4dddb36748c5e33ee1f058835">g1</a></td></tr>
-<tr class="memdesc:a597e9fd4dddb36748c5e33ee1f058835"><td class="mdescLeft"> </td><td class="mdescRight">input of fftw <br/></td></tr>
-<tr class="memitem:ac4c375e593da728a4e7477f76ff12031"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac4c375e593da728a4e7477f76ff12031"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#ac4c375e593da728a4e7477f76ff12031">g2</a></td></tr>
-<tr class="memdesc:ac4c375e593da728a4e7477f76ff12031"><td class="mdescLeft"> </td><td class="mdescRight">output of fftw <br/></td></tr>
-<tr class="memitem:a53242b3a71b8997bdcd173777146c427"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53242b3a71b8997bdcd173777146c427"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfct__plan.html#a53242b3a71b8997bdcd173777146c427">spline_coeffs</a></td></tr>
-<tr class="memdesc:a53242b3a71b8997bdcd173777146c427"><td class="mdescLeft"> </td><td class="mdescRight">input for de Boor algorithm, if B_SPLINE or SINC_2m is defined <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00261">261</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfctf__plan.html b/doc/api/html/structnfctf__plan.html
deleted file mode 100644
index a811e3b..0000000
--- a/doc/api/html/structnfctf__plan.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfctf_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfctf_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:a18d7721bf6d8ccbc5bb20e2dad30f9a3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18d7721bf6d8ccbc5bb20e2dad30f9a3"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a18d7721bf6d8ccbc5bb20e2dad30f9a3">FFTW_MANGLE_FLOAT</a> (plan) my_fftw_r2r_plan</td></tr>
-<tr class="memdesc:a18d7721bf6d8ccbc5bb20e2dad30f9a3"><td class="mdescLeft"> </td><td class="mdescRight">fftw_plan <br/></td></tr>
-<tr class="memitem:a3aef4c36c692ab0ac6e9ab69b32ac761"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3aef4c36c692ab0ac6e9ab69b32ac761"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a3aef4c36c692ab0ac6e9ab69b32ac761">FFTW_MANGLE_FLOAT</a> (r2r_kind)*r2r_kind</td></tr>
-<tr class="memdesc:a3aef4c36c692ab0ac6e9ab69b32ac761"><td class="mdescLeft"> </td><td class="mdescRight">r2r transform type (DCT-I) <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a618b4315972d4ef612c772649d470ff9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a618b4315972d4ef612c772649d470ff9"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a618b4315972d4ef612c772649d470ff9">N_total</a></td></tr>
-<tr class="memdesc:a618b4315972d4ef612c772649d470ff9"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a86276f6249784d5121d83453818709e9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86276f6249784d5121d83453818709e9"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a86276f6249784d5121d83453818709e9">M_total</a></td></tr>
-<tr class="memdesc:a86276f6249784d5121d83453818709e9"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a33bae90d163b1d848efc2c656bac6839"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33bae90d163b1d848efc2c656bac6839"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a33bae90d163b1d848efc2c656bac6839">f_hat</a></td></tr>
-<tr class="memdesc:a33bae90d163b1d848efc2c656bac6839"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( float ) <br/></td></tr>
-<tr class="memitem:a5c695490725fbd63787fb76548de2908"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c695490725fbd63787fb76548de2908"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a5c695490725fbd63787fb76548de2908">f</a></td></tr>
-<tr class="memdesc:a5c695490725fbd63787fb76548de2908"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( float ) <br/></td></tr>
-<tr class="memitem:a7a532e28539e1ac2f49413248ae76a67"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7a532e28539e1ac2f49413248ae76a67"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a7a532e28539e1ac2f49413248ae76a67">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a7a532e28539e1ac2f49413248ae76a67"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a876dda7208fd0634f426c1e5cb04b77f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a876dda7208fd0634f426c1e5cb04b77f"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a876dda7208fd0634f426c1e5cb04b77f">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a876dda7208fd0634f426c1e5cb04b77f"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a1129b984a15339cca4fbbbc2190d43af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1129b984a15339cca4fbbbc2190d43af"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a1129b984a15339cca4fbbbc2190d43af">d</a></td></tr>
-<tr class="memdesc:a1129b984a15339cca4fbbbc2190d43af"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank <br/></td></tr>
-<tr class="memitem:ade6a750c99253ddfe82c08e439094507"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade6a750c99253ddfe82c08e439094507"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#ade6a750c99253ddfe82c08e439094507">N</a></td></tr>
-<tr class="memdesc:ade6a750c99253ddfe82c08e439094507"><td class="mdescLeft"> </td><td class="mdescRight">cut-off-frequencies (kernel) <br/></td></tr>
-<tr class="memitem:a9c8ffbb61c7f5ad5d0a5545bdff83270"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9c8ffbb61c7f5ad5d0a5545bdff83270"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a9c8ffbb61c7f5ad5d0a5545bdff83270">n</a></td></tr>
-<tr class="memdesc:a9c8ffbb61c7f5ad5d0a5545bdff83270"><td class="mdescLeft"> </td><td class="mdescRight">length of DCT-I <br/></td></tr>
-<tr class="memitem:acfc4ccc79c6fa50199500a790cb833b2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acfc4ccc79c6fa50199500a790cb833b2"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#acfc4ccc79c6fa50199500a790cb833b2">sigma</a></td></tr>
-<tr class="memdesc:acfc4ccc79c6fa50199500a790cb833b2"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a255a1e1526bba8643690e0aa9c5b90c6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a255a1e1526bba8643690e0aa9c5b90c6"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a255a1e1526bba8643690e0aa9c5b90c6">m</a></td></tr>
-<tr class="memdesc:a255a1e1526bba8643690e0aa9c5b90c6"><td class="mdescLeft"> </td><td class="mdescRight">cut-off parameter in time-domain <br/></td></tr>
-<tr class="memitem:a7bc46d14287ec885bb855b8d13882b86"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7bc46d14287ec885bb855b8d13882b86"></a>
-float </td><td class="memItemRight" valign="bottom"><b>nfct_full_psi_eps</b></td></tr>
-<tr class="memitem:a6eb955f63212f63c0ac26894f8355caf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6eb955f63212f63c0ac26894f8355caf"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a6eb955f63212f63c0ac26894f8355caf">b</a></td></tr>
-<tr class="memdesc:a6eb955f63212f63c0ac26894f8355caf"><td class="mdescLeft"> </td><td class="mdescRight">shape parameters <br/></td></tr>
-<tr class="memitem:a484df328b87ae06b6c47b03298e18dbd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a484df328b87ae06b6c47b03298e18dbd"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a484df328b87ae06b6c47b03298e18dbd">nfct_flags</a></td></tr>
-<tr class="memdesc:a484df328b87ae06b6c47b03298e18dbd"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:afd3bc700b6adca6d3dde831c9a7aae79"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd3bc700b6adca6d3dde831c9a7aae79"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#afd3bc700b6adca6d3dde831c9a7aae79">fftw_flags</a></td></tr>
-<tr class="memdesc:afd3bc700b6adca6d3dde831c9a7aae79"><td class="mdescLeft"> </td><td class="mdescRight">flags for the fftw <br/></td></tr>
-<tr class="memitem:acf91ba20ce671a5d4c971465fbd33b03"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acf91ba20ce671a5d4c971465fbd33b03"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#acf91ba20ce671a5d4c971465fbd33b03">x</a></td></tr>
-<tr class="memdesc:acf91ba20ce671a5d4c971465fbd33b03"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in time/spatial domain) <br/></td></tr>
-<tr class="memitem:a3621b32cd8ea93b2bcb8db6ce40cd5bb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3621b32cd8ea93b2bcb8db6ce40cd5bb"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a3621b32cd8ea93b2bcb8db6ce40cd5bb">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:a3621b32cd8ea93b2bcb8db6ce40cd5bb"><td class="mdescLeft"> </td><td class="mdescRight">measured time for each step <br/></td></tr>
-<tr class="memitem:a38d2c1dec96ad6d632133bc1dcbf82cb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a38d2c1dec96ad6d632133bc1dcbf82cb"></a>
-float ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a38d2c1dec96ad6d632133bc1dcbf82cb">c_phi_inv</a></td></tr>
-<tr class="memdesc:a38d2c1dec96ad6d632133bc1dcbf82cb"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix D <br/></td></tr>
-<tr class="memitem:a748631060895d5106d11cdf4fce3ee60"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a748631060895d5106d11cdf4fce3ee60"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a748631060895d5106d11cdf4fce3ee60">psi</a></td></tr>
-<tr class="memdesc:a748631060895d5106d11cdf4fce3ee60"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix B <br/></td></tr>
-<tr class="memitem:a2a01c089b030159c77a9bdcb46d1b183"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2a01c089b030159c77a9bdcb46d1b183"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a2a01c089b030159c77a9bdcb46d1b183">size_psi</a></td></tr>
-<tr class="memdesc:a2a01c089b030159c77a9bdcb46d1b183"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a60f4fbcf2fb3a48a037e5cda4608f535"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a60f4fbcf2fb3a48a037e5cda4608f535"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a60f4fbcf2fb3a48a037e5cda4608f535">psi_index_g</a></td></tr>
-<tr class="memdesc:a60f4fbcf2fb3a48a037e5cda4608f535"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:aa33238f59c2282eea4b81d8ecbba1417"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa33238f59c2282eea4b81d8ecbba1417"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#aa33238f59c2282eea4b81d8ecbba1417">psi_index_f</a></td></tr>
-<tr class="memdesc:aa33238f59c2282eea4b81d8ecbba1417"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a09031fa0477e6b4ee2ac34a2cf1e85fd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a09031fa0477e6b4ee2ac34a2cf1e85fd"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>g</b></td></tr>
-<tr class="memitem:a278cf5e2a4d6bf386682bc1048de6e55"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a278cf5e2a4d6bf386682bc1048de6e55"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>g_hat</b></td></tr>
-<tr class="memitem:a44a225766135ec7d1bbe8e8e7631faa3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a44a225766135ec7d1bbe8e8e7631faa3"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a44a225766135ec7d1bbe8e8e7631faa3">g1</a></td></tr>
-<tr class="memdesc:a44a225766135ec7d1bbe8e8e7631faa3"><td class="mdescLeft"> </td><td class="mdescRight">input of fftw <br/></td></tr>
-<tr class="memitem:a4a70d593fb1704dda85e2392c77ea3bc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a70d593fb1704dda85e2392c77ea3bc"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a4a70d593fb1704dda85e2392c77ea3bc">g2</a></td></tr>
-<tr class="memdesc:a4a70d593fb1704dda85e2392c77ea3bc"><td class="mdescLeft"> </td><td class="mdescRight">output of fftw <br/></td></tr>
-<tr class="memitem:a25a3208574495231141c9c407658f0cf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a25a3208574495231141c9c407658f0cf"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctf__plan.html#a25a3208574495231141c9c407658f0cf">spline_coeffs</a></td></tr>
-<tr class="memdesc:a25a3208574495231141c9c407658f0cf"><td class="mdescLeft"> </td><td class="mdescRight">input for de Boor algorithm, if B_SPLINE or SINC_2m is defined <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00261">261</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfctl__plan.html b/doc/api/html/structnfctl__plan.html
deleted file mode 100644
index ae150f1..0000000
--- a/doc/api/html/structnfctl__plan.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfctl_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfctl_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:a59134c76d93ffd73a6fc738babf5d443"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59134c76d93ffd73a6fc738babf5d443"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a59134c76d93ffd73a6fc738babf5d443">FFTW_MANGLE_LONG_DOUBLE</a> (plan) my_fftw_r2r_plan</td></tr>
-<tr class="memdesc:a59134c76d93ffd73a6fc738babf5d443"><td class="mdescLeft"> </td><td class="mdescRight">fftw_plan <br/></td></tr>
-<tr class="memitem:ad0a55579cc5f04b0af4cc28abd445083"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0a55579cc5f04b0af4cc28abd445083"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#ad0a55579cc5f04b0af4cc28abd445083">FFTW_MANGLE_LONG_DOUBLE</a> (r2r_kind)*r2r_kind</td></tr>
-<tr class="memdesc:ad0a55579cc5f04b0af4cc28abd445083"><td class="mdescLeft"> </td><td class="mdescRight">r2r transform type (DCT-I) <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:ac31afd2bc4a0fc94cd9ec08e302f84ac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac31afd2bc4a0fc94cd9ec08e302f84ac"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#ac31afd2bc4a0fc94cd9ec08e302f84ac">N_total</a></td></tr>
-<tr class="memdesc:ac31afd2bc4a0fc94cd9ec08e302f84ac"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:ac4ad3000c4c3293f3d86b90a926410a9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac4ad3000c4c3293f3d86b90a926410a9"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#ac4ad3000c4c3293f3d86b90a926410a9">M_total</a></td></tr>
-<tr class="memdesc:ac4ad3000c4c3293f3d86b90a926410a9"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:aede4fbbe9a7b666d5d5fbd62e62bf103"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aede4fbbe9a7b666d5d5fbd62e62bf103"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#aede4fbbe9a7b666d5d5fbd62e62bf103">f_hat</a></td></tr>
-<tr class="memdesc:aede4fbbe9a7b666d5d5fbd62e62bf103"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( long double ) <br/></td></tr>
-<tr class="memitem:ae09e0a759e136ad020a97e6c76efbb30"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae09e0a759e136ad020a97e6c76efbb30"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#ae09e0a759e136ad020a97e6c76efbb30">f</a></td></tr>
-<tr class="memdesc:ae09e0a759e136ad020a97e6c76efbb30"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( long double ) <br/></td></tr>
-<tr class="memitem:a42f0c32b080677a57f82ccf23d018da2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a42f0c32b080677a57f82ccf23d018da2"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a42f0c32b080677a57f82ccf23d018da2">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a42f0c32b080677a57f82ccf23d018da2"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a99191484b327c3283f3aed8c3e9a3d70"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a99191484b327c3283f3aed8c3e9a3d70"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a99191484b327c3283f3aed8c3e9a3d70">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a99191484b327c3283f3aed8c3e9a3d70"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:aa42a9c638dec4cfa622f2e3f7e7c1dc3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa42a9c638dec4cfa622f2e3f7e7c1dc3"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#aa42a9c638dec4cfa622f2e3f7e7c1dc3">d</a></td></tr>
-<tr class="memdesc:aa42a9c638dec4cfa622f2e3f7e7c1dc3"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank <br/></td></tr>
-<tr class="memitem:a4497138b087187f70d19f107b1c80204"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4497138b087187f70d19f107b1c80204"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a4497138b087187f70d19f107b1c80204">N</a></td></tr>
-<tr class="memdesc:a4497138b087187f70d19f107b1c80204"><td class="mdescLeft"> </td><td class="mdescRight">cut-off-frequencies (kernel) <br/></td></tr>
-<tr class="memitem:a6d0bd4de4d2b90c38010bb4b8d77561b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6d0bd4de4d2b90c38010bb4b8d77561b"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a6d0bd4de4d2b90c38010bb4b8d77561b">n</a></td></tr>
-<tr class="memdesc:a6d0bd4de4d2b90c38010bb4b8d77561b"><td class="mdescLeft"> </td><td class="mdescRight">length of DCT-I <br/></td></tr>
-<tr class="memitem:a629ae83677e311095d4c24ad4826e2ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a629ae83677e311095d4c24ad4826e2ab"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a629ae83677e311095d4c24ad4826e2ab">sigma</a></td></tr>
-<tr class="memdesc:a629ae83677e311095d4c24ad4826e2ab"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a0a2a679bf0d1c90511a52c31f5a537f1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a2a679bf0d1c90511a52c31f5a537f1"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a0a2a679bf0d1c90511a52c31f5a537f1">m</a></td></tr>
-<tr class="memdesc:a0a2a679bf0d1c90511a52c31f5a537f1"><td class="mdescLeft"> </td><td class="mdescRight">cut-off parameter in time-domain <br/></td></tr>
-<tr class="memitem:aaf6e2979bbcb2c173eb792e3a9155d0b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaf6e2979bbcb2c173eb792e3a9155d0b"></a>
-long double </td><td class="memItemRight" valign="bottom"><b>nfct_full_psi_eps</b></td></tr>
-<tr class="memitem:a01287f3f68aff7e5d7ce35d3163021e2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a01287f3f68aff7e5d7ce35d3163021e2"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a01287f3f68aff7e5d7ce35d3163021e2">b</a></td></tr>
-<tr class="memdesc:a01287f3f68aff7e5d7ce35d3163021e2"><td class="mdescLeft"> </td><td class="mdescRight">shape parameters <br/></td></tr>
-<tr class="memitem:a292db653f04805f907737a480f681888"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a292db653f04805f907737a480f681888"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a292db653f04805f907737a480f681888">nfct_flags</a></td></tr>
-<tr class="memdesc:a292db653f04805f907737a480f681888"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:afc96567eba0053563867b8e3a064902b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afc96567eba0053563867b8e3a064902b"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#afc96567eba0053563867b8e3a064902b">fftw_flags</a></td></tr>
-<tr class="memdesc:afc96567eba0053563867b8e3a064902b"><td class="mdescLeft"> </td><td class="mdescRight">flags for the fftw <br/></td></tr>
-<tr class="memitem:a2f7f915bfefa105412cabfc368c26560"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f7f915bfefa105412cabfc368c26560"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a2f7f915bfefa105412cabfc368c26560">x</a></td></tr>
-<tr class="memdesc:a2f7f915bfefa105412cabfc368c26560"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in time/spatial domain) <br/></td></tr>
-<tr class="memitem:a2c6b9d81be06f2e557c410310420809f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2c6b9d81be06f2e557c410310420809f"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a2c6b9d81be06f2e557c410310420809f">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:a2c6b9d81be06f2e557c410310420809f"><td class="mdescLeft"> </td><td class="mdescRight">measured time for each step <br/></td></tr>
-<tr class="memitem:a2b69489da0118e06cba24db6d73ea934"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2b69489da0118e06cba24db6d73ea934"></a>
-long double ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a2b69489da0118e06cba24db6d73ea934">c_phi_inv</a></td></tr>
-<tr class="memdesc:a2b69489da0118e06cba24db6d73ea934"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix D <br/></td></tr>
-<tr class="memitem:a59712f0b5712ba9020540b7bf355caea"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59712f0b5712ba9020540b7bf355caea"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a59712f0b5712ba9020540b7bf355caea">psi</a></td></tr>
-<tr class="memdesc:a59712f0b5712ba9020540b7bf355caea"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix B <br/></td></tr>
-<tr class="memitem:a1b8cf9260caf345c8ecb5e6de726387b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1b8cf9260caf345c8ecb5e6de726387b"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a1b8cf9260caf345c8ecb5e6de726387b">size_psi</a></td></tr>
-<tr class="memdesc:a1b8cf9260caf345c8ecb5e6de726387b"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a2e593f732ad26f9d681797a85a7293cf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e593f732ad26f9d681797a85a7293cf"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a2e593f732ad26f9d681797a85a7293cf">psi_index_g</a></td></tr>
-<tr class="memdesc:a2e593f732ad26f9d681797a85a7293cf"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a2ec8c4542c9fafbaf90b469ab8d06d59"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ec8c4542c9fafbaf90b469ab8d06d59"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a2ec8c4542c9fafbaf90b469ab8d06d59">psi_index_f</a></td></tr>
-<tr class="memdesc:a2ec8c4542c9fafbaf90b469ab8d06d59"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:ab041d9e3d108a94572dd0fc742f69023"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab041d9e3d108a94572dd0fc742f69023"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>g</b></td></tr>
-<tr class="memitem:a000c899ae773997e188f067537e1005b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a000c899ae773997e188f067537e1005b"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>g_hat</b></td></tr>
-<tr class="memitem:afbe6522294161b247058e61e9ef64d78"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afbe6522294161b247058e61e9ef64d78"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#afbe6522294161b247058e61e9ef64d78">g1</a></td></tr>
-<tr class="memdesc:afbe6522294161b247058e61e9ef64d78"><td class="mdescLeft"> </td><td class="mdescRight">input of fftw <br/></td></tr>
-<tr class="memitem:a365bf7b6d6fa04bfb4206f8ec647eb14"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a365bf7b6d6fa04bfb4206f8ec647eb14"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a365bf7b6d6fa04bfb4206f8ec647eb14">g2</a></td></tr>
-<tr class="memdesc:a365bf7b6d6fa04bfb4206f8ec647eb14"><td class="mdescLeft"> </td><td class="mdescRight">output of fftw <br/></td></tr>
-<tr class="memitem:a38de3cc7a337907a01ae2701ea335d75"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a38de3cc7a337907a01ae2701ea335d75"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfctl__plan.html#a38de3cc7a337907a01ae2701ea335d75">spline_coeffs</a></td></tr>
-<tr class="memdesc:a38de3cc7a337907a01ae2701ea335d75"><td class="mdescLeft"> </td><td class="mdescRight">input for de Boor algorithm, if B_SPLINE or SINC_2m is defined <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00261">261</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfft__mv__plan__complex.html b/doc/api/html/structnfft__mv__plan__complex.html
deleted file mode 100644
index 4e4933e..0000000
--- a/doc/api/html/structnfft__mv__plan__complex.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft_mv_plan_complex Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfft_mv_plan_complex Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:aea630b4e7cae1db0e17dd329a01c31a8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aea630b4e7cae1db0e17dd329a01c31a8"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__complex.html#aea630b4e7cae1db0e17dd329a01c31a8">N_total</a></td></tr>
-<tr class="memdesc:aea630b4e7cae1db0e17dd329a01c31a8"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a2cb2df3ae5db867f38cb75b7c88de7fe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2cb2df3ae5db867f38cb75b7c88de7fe"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__complex.html#a2cb2df3ae5db867f38cb75b7c88de7fe">M_total</a></td></tr>
-<tr class="memdesc:a2cb2df3ae5db867f38cb75b7c88de7fe"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a391146cff1e8fc3cb981bbbf806ede52"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a391146cff1e8fc3cb981bbbf806ede52"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__complex.html#a391146cff1e8fc3cb981bbbf806ede52">f_hat</a></td></tr>
-<tr class="memdesc:a391146cff1e8fc3cb981bbbf806ede52"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a84fdb468f61a2f2a135d41ae0da1692e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84fdb468f61a2f2a135d41ae0da1692e"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__complex.html#a84fdb468f61a2f2a135d41ae0da1692e">f</a></td></tr>
-<tr class="memdesc:a84fdb468f61a2f2a135d41ae0da1692e"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a56bf298c03c4aaeb6b4aaf7ed5cca57e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56bf298c03c4aaeb6b4aaf7ed5cca57e"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__complex.html#a56bf298c03c4aaeb6b4aaf7ed5cca57e">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a56bf298c03c4aaeb6b4aaf7ed5cca57e"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:add14030aae4920f7ca71ecf1efde00a3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="add14030aae4920f7ca71ecf1efde00a3"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__complex.html#add14030aae4920f7ca71ecf1efde00a3">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:add14030aae4920f7ca71ecf1efde00a3"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00173">173</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfft__mv__plan__double.html b/doc/api/html/structnfft__mv__plan__double.html
deleted file mode 100644
index 09e9eec..0000000
--- a/doc/api/html/structnfft__mv__plan__double.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft_mv_plan_double Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfft_mv_plan_double Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:aed332691595037632eb9720cc7445e41"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed332691595037632eb9720cc7445e41"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__double.html#aed332691595037632eb9720cc7445e41">N_total</a></td></tr>
-<tr class="memdesc:aed332691595037632eb9720cc7445e41"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:af540ad90ef6b30fab022c95e8a5dcd58"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af540ad90ef6b30fab022c95e8a5dcd58"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__double.html#af540ad90ef6b30fab022c95e8a5dcd58">M_total</a></td></tr>
-<tr class="memdesc:af540ad90ef6b30fab022c95e8a5dcd58"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a238489d7a63fda4fc9677f56894e3cac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a238489d7a63fda4fc9677f56894e3cac"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__double.html#a238489d7a63fda4fc9677f56894e3cac">f_hat</a></td></tr>
-<tr class="memdesc:a238489d7a63fda4fc9677f56894e3cac"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( double ) <br/></td></tr>
-<tr class="memitem:aa850d9ba71b761a31d3a95aa9581ea5e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa850d9ba71b761a31d3a95aa9581ea5e"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__double.html#aa850d9ba71b761a31d3a95aa9581ea5e">f</a></td></tr>
-<tr class="memdesc:aa850d9ba71b761a31d3a95aa9581ea5e"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( double ) <br/></td></tr>
-<tr class="memitem:a920771039e5cf889d6a29a243e6922e3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a920771039e5cf889d6a29a243e6922e3"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__double.html#a920771039e5cf889d6a29a243e6922e3">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a920771039e5cf889d6a29a243e6922e3"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a92e4080bcb7241befa250be9d8f9a1cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a92e4080bcb7241befa250be9d8f9a1cd"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__mv__plan__double.html#a92e4080bcb7241befa250be9d8f9a1cd">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a92e4080bcb7241befa250be9d8f9a1cd"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00173">173</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfft__plan.html b/doc/api/html/structnfft__plan.html
deleted file mode 100644
index e13d293..0000000
--- a/doc/api/html/structnfft__plan.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfft_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfft_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:a2310e54f3049b94d2bf08b67f689280c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2310e54f3049b94d2bf08b67f689280c"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a2310e54f3049b94d2bf08b67f689280c">FFTW_MANGLE_DOUBLE</a> (plan) my_fftw_plan1</td></tr>
-<tr class="memdesc:a2310e54f3049b94d2bf08b67f689280c"><td class="mdescLeft"> </td><td class="mdescRight">Forward FFTW plan. <br/></td></tr>
-<tr class="memitem:a02f777d558f0f4a3417000200472f1a9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a02f777d558f0f4a3417000200472f1a9"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a02f777d558f0f4a3417000200472f1a9">FFTW_MANGLE_DOUBLE</a> (plan) my_fftw_plan2</td></tr>
-<tr class="memdesc:a02f777d558f0f4a3417000200472f1a9"><td class="mdescLeft"> </td><td class="mdescRight">Backward FFTW plan. <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:ad33daddf76670c8731c759bf74ad0d22"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad33daddf76670c8731c759bf74ad0d22"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22">N_total</a></td></tr>
-<tr class="memdesc:ad33daddf76670c8731c759bf74ad0d22"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:adf33ce87c35b396c50d214d9bdeeefe6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adf33ce87c35b396c50d214d9bdeeefe6"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6">M_total</a></td></tr>
-<tr class="memdesc:adf33ce87c35b396c50d214d9bdeeefe6"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a23409aec68871e9a56f11711e2891691"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a23409aec68871e9a56f11711e2891691"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691">f_hat</a></td></tr>
-<tr class="memdesc:a23409aec68871e9a56f11711e2891691"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:afa27a166f809acf70ae27e5e6f28daa5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa27a166f809acf70ae27e5e6f28daa5"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5">f</a></td></tr>
-<tr class="memdesc:afa27a166f809acf70ae27e5e6f28daa5"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a9ebd66f2964cca6a02fc50d640df3557"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9ebd66f2964cca6a02fc50d640df3557"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a9ebd66f2964cca6a02fc50d640df3557">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a9ebd66f2964cca6a02fc50d640df3557"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:abbe724645c96ef34c3e98d821f6648a3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abbe724645c96ef34c3e98d821f6648a3"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#abbe724645c96ef34c3e98d821f6648a3">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:abbe724645c96ef34c3e98d821f6648a3"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:ae39d4867eac948d96abbe3fc930b39a8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae39d4867eac948d96abbe3fc930b39a8"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#ae39d4867eac948d96abbe3fc930b39a8">d</a></td></tr>
-<tr class="memdesc:ae39d4867eac948d96abbe3fc930b39a8"><td class="mdescLeft"> </td><td class="mdescRight">dimension aka rank <br/></td></tr>
-<tr class="memitem:a307fb9647dee8b4a6acbd1ab26f67fa9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a307fb9647dee8b4a6acbd1ab26f67fa9"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a307fb9647dee8b4a6acbd1ab26f67fa9">N</a></td></tr>
-<tr class="memdesc:a307fb9647dee8b4a6acbd1ab26f67fa9"><td class="mdescLeft"> </td><td class="mdescRight">multi-bandwidth <br/></td></tr>
-<tr class="memitem:a09340f6465c23f3d94636f4f0da30f8a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a09340f6465c23f3d94636f4f0da30f8a"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a09340f6465c23f3d94636f4f0da30f8a">sigma</a></td></tr>
-<tr class="memdesc:a09340f6465c23f3d94636f4f0da30f8a"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:aa8db04bb03357b831a1958f9a802e0ae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa8db04bb03357b831a1958f9a802e0ae"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae">n</a></td></tr>
-<tr class="memdesc:aa8db04bb03357b831a1958f9a802e0ae"><td class="mdescLeft"> </td><td class="mdescRight">FFTW length, equal to sigma*N, default is the power of 2 such that <img class="formulaInl" alt="$2\le\sigma<4$" src="form_0.png"/>. <br/></td></tr>
-<tr class="memitem:ad8a5fdac5bcf62d86479c800768fdeb7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8a5fdac5bcf62d86479c800768fdeb7"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7">n_total</a></td></tr>
-<tr class="memdesc:ad8a5fdac5bcf62d86479c800768fdeb7"><td class="mdescLeft"> </td><td class="mdescRight">Total size of FFTW. <br/></td></tr>
-<tr class="memitem:adbac137859fb87be7be73a5443de8cef"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adbac137859fb87be7be73a5443de8cef"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef">m</a></td></tr>
-<tr class="memdesc:adbac137859fb87be7be73a5443de8cef"><td class="mdescLeft"> </td><td class="mdescRight">Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN) <br/></td></tr>
-<tr class="memitem:a724949f4916b28f484eb447ee1a77f0a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a724949f4916b28f484eb447ee1a77f0a"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a724949f4916b28f484eb447ee1a77f0a">b</a></td></tr>
-<tr class="memdesc:a724949f4916b28f484eb447ee1a77f0a"><td class="mdescLeft"> </td><td class="mdescRight">Shape parameter of the window function. <br/></td></tr>
-<tr class="memitem:a0b3735bcdd415a86126e0c86d47941a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b3735bcdd415a86126e0c86d47941a4"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a0b3735bcdd415a86126e0c86d47941a4">K</a></td></tr>
-<tr class="memdesc:a0b3735bcdd415a86126e0c86d47941a4"><td class="mdescLeft"> </td><td class="mdescRight">Number of equispaced samples of the window function for PRE_LIN_PSI. <br/></td></tr>
-<tr class="memitem:a2721da68a3a5b1846ecca8395d76bb1d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2721da68a3a5b1846ecca8395d76bb1d"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d">nfft_flags</a></td></tr>
-<tr class="memdesc:a2721da68a3a5b1846ecca8395d76bb1d"><td class="mdescLeft"> </td><td class="mdescRight">Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | MALLOC_X | MALLOC_F_HAT | MALLOC_F | FFTW_INIT | FFT_OUT_OF_PLACE. <br/></td></tr>
-<tr class="memitem:a530aea04dba32fb2a41287b4581b1805"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a530aea04dba32fb2a41287b4581b1805"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a530aea04dba32fb2a41287b4581b1805">fftw_flags</a></td></tr>
-<tr class="memdesc:a530aea04dba32fb2a41287b4581b1805"><td class="mdescLeft"> </td><td class="mdescRight">Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT. <br/></td></tr>
-<tr class="memitem:a7eb64fb5fedfba0ec75261e777e020c0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7eb64fb5fedfba0ec75261e777e020c0"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0">x</a></td></tr>
-<tr class="memdesc:a7eb64fb5fedfba0ec75261e777e020c0"><td class="mdescLeft"> </td><td class="mdescRight">Nodes in time/spatial domain, size is <img class="formulaInl" alt="$dM$" src="form_1.png"/> doubles. <br/></td></tr>
-<tr class="memitem:a7c3e5504175fa292a6a5d0c0e1d7f848"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7c3e5504175fa292a6a5d0c0e1d7f848"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a7c3e5504175fa292a6a5d0c0e1d7f848">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:a7c3e5504175fa292a6a5d0c0e1d7f848"><td class="mdescLeft"> </td><td class="mdescRight">Measured time for each step if MEASURE_TIME is set. <br/></td></tr>
-<tr class="memitem:aa5dd76324152be95967c0a4717e8e4ce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa5dd76324152be95967c0a4717e8e4ce"></a>
-double ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#aa5dd76324152be95967c0a4717e8e4ce">c_phi_inv</a></td></tr>
-<tr class="memdesc:aa5dd76324152be95967c0a4717e8e4ce"><td class="mdescLeft"> </td><td class="mdescRight">Precomputed data for the diagonal matrix <img class="formulaInl" alt="$D$" src="form_2.png"/>, size \ is <img class="formulaInl" alt="$N_0+\hdots+N_{d-1}$" src="form_3.png"/> doubles. <br/></td></tr>
-<tr class="memitem:a0330a1c3ae461fa9156ba0ecbe17bb7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0330a1c3ae461fa9156ba0ecbe17bb7c"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a0330a1c3ae461fa9156ba0ecbe17bb7c">psi</a></td></tr>
-<tr class="memdesc:a0330a1c3ae461fa9156ba0ecbe17bb7c"><td class="mdescLeft"> </td><td class="mdescRight">Precomputed data for the sparse matrix <img class="formulaInl" alt="$B$" src="form_4.png"/>, size depends on precomputation scheme. <br/></td></tr>
-<tr class="memitem:a877d6cbe17ec77a9e66bdbea3cfafe0a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a877d6cbe17ec77a9e66bdbea3cfafe0a"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a877d6cbe17ec77a9e66bdbea3cfafe0a">psi_index_g</a></td></tr>
-<tr class="memdesc:a877d6cbe17ec77a9e66bdbea3cfafe0a"><td class="mdescLeft"> </td><td class="mdescRight">Indices in source/target vector for PRE_FULL_PSI. <br/></td></tr>
-<tr class="memitem:a2ed144cf7d6043a93c07b6f6ba7bbe2a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ed144cf7d6043a93c07b6f6ba7bbe2a"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a2ed144cf7d6043a93c07b6f6ba7bbe2a">psi_index_f</a></td></tr>
-<tr class="memdesc:a2ed144cf7d6043a93c07b6f6ba7bbe2a"><td class="mdescLeft"> </td><td class="mdescRight">Indices in source/target vector for PRE_FULL_PSI. <br/></td></tr>
-<tr class="memitem:a844b51e453d6c80462eaad7844633539"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a844b51e453d6c80462eaad7844633539"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a844b51e453d6c80462eaad7844633539">g</a></td></tr>
-<tr class="memdesc:a844b51e453d6c80462eaad7844633539"><td class="mdescLeft"> </td><td class="mdescRight">Oversampled vector of samples, size is <a class="el" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7">n_total</a> double complex. <br/></td></tr>
-<tr class="memitem:a2dff6c2b829694a7d4cca5acc7c7d6d5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2dff6c2b829694a7d4cca5acc7c7d6d5"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a2dff6c2b829694a7d4cca5acc7c7d6d5">g_hat</a></td></tr>
-<tr class="memdesc:a2dff6c2b829694a7d4cca5acc7c7d6d5"><td class="mdescLeft"> </td><td class="mdescRight">Zero-padded vector of Fourier coefficients, size is <a class="el" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7">n_total</a> fftw_complex. <br/></td></tr>
-<tr class="memitem:a2190e7201c55214d153b4d91eaa7efda"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2190e7201c55214d153b4d91eaa7efda"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda">g1</a></td></tr>
-<tr class="memdesc:a2190e7201c55214d153b4d91eaa7efda"><td class="mdescLeft"> </td><td class="mdescRight">Input of fftw. <br/></td></tr>
-<tr class="memitem:ad96e0aa935ea3589e999c131c43d8a78"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad96e0aa935ea3589e999c131c43d8a78"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78">g2</a></td></tr>
-<tr class="memdesc:ad96e0aa935ea3589e999c131c43d8a78"><td class="mdescLeft"> </td><td class="mdescRight">Output of fftw. <br/></td></tr>
-<tr class="memitem:a3aaf44c4f0769644075d9fc5ed60afa0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3aaf44c4f0769644075d9fc5ed60afa0"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a3aaf44c4f0769644075d9fc5ed60afa0">spline_coeffs</a></td></tr>
-<tr class="memdesc:a3aaf44c4f0769644075d9fc5ed60afa0"><td class="mdescLeft"> </td><td class="mdescRight">Input for de Boor algorithm if B_SPLINE or SINC_POWER is defined. <br/></td></tr>
-<tr class="memitem:a4d917887b76ddd9fadf30bc3b44b6735"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4d917887b76ddd9fadf30bc3b44b6735"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfft__plan.html#a4d917887b76ddd9fadf30bc3b44b6735">index_x</a></td></tr>
-<tr class="memdesc:a4d917887b76ddd9fadf30bc3b44b6735"><td class="mdescLeft"> </td><td class="mdescRight">Index array for nodes x used when flag NFFT_SORT_NODES is set. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00173">173</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfftf__mv__plan__complex.html b/doc/api/html/structnfftf__mv__plan__complex.html
deleted file mode 100644
index b6eca3a..0000000
--- a/doc/api/html/structnfftf__mv__plan__complex.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfftf_mv_plan_complex Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfftf_mv_plan_complex Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a65ce9742c15bad2711e8f8151bbf941c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65ce9742c15bad2711e8f8151bbf941c"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__complex.html#a65ce9742c15bad2711e8f8151bbf941c">N_total</a></td></tr>
-<tr class="memdesc:a65ce9742c15bad2711e8f8151bbf941c"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:ab437c32f06548b3728bcb2b39681acd8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab437c32f06548b3728bcb2b39681acd8"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__complex.html#ab437c32f06548b3728bcb2b39681acd8">M_total</a></td></tr>
-<tr class="memdesc:ab437c32f06548b3728bcb2b39681acd8"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ad55a895ef394e9b74db36d028656b382"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad55a895ef394e9b74db36d028656b382"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__complex.html#ad55a895ef394e9b74db36d028656b382">f_hat</a></td></tr>
-<tr class="memdesc:ad55a895ef394e9b74db36d028656b382"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:ab3a2f060f60eb88cd268bc1bec2e5310"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab3a2f060f60eb88cd268bc1bec2e5310"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__complex.html#ab3a2f060f60eb88cd268bc1bec2e5310">f</a></td></tr>
-<tr class="memdesc:ab3a2f060f60eb88cd268bc1bec2e5310"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:a48e28caf604132d02999d1dc0f5dc9a0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a48e28caf604132d02999d1dc0f5dc9a0"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__complex.html#a48e28caf604132d02999d1dc0f5dc9a0">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a48e28caf604132d02999d1dc0f5dc9a0"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:acbff2532fc4d66cf92321be33ef6498f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acbff2532fc4d66cf92321be33ef6498f"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__complex.html#acbff2532fc4d66cf92321be33ef6498f">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:acbff2532fc4d66cf92321be33ef6498f"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00173">173</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfftf__mv__plan__double.html b/doc/api/html/structnfftf__mv__plan__double.html
deleted file mode 100644
index dc1e120..0000000
--- a/doc/api/html/structnfftf__mv__plan__double.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfftf_mv_plan_double Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfftf_mv_plan_double Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a1df474111c1d61261d53455e05bc6c63"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1df474111c1d61261d53455e05bc6c63"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__double.html#a1df474111c1d61261d53455e05bc6c63">N_total</a></td></tr>
-<tr class="memdesc:a1df474111c1d61261d53455e05bc6c63"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a37eb6ac713dbf1205f2dce0fa39107df"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a37eb6ac713dbf1205f2dce0fa39107df"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__double.html#a37eb6ac713dbf1205f2dce0fa39107df">M_total</a></td></tr>
-<tr class="memdesc:a37eb6ac713dbf1205f2dce0fa39107df"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a109229f89032f01e4b2bece93297189c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a109229f89032f01e4b2bece93297189c"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__double.html#a109229f89032f01e4b2bece93297189c">f_hat</a></td></tr>
-<tr class="memdesc:a109229f89032f01e4b2bece93297189c"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( float ) <br/></td></tr>
-<tr class="memitem:a0b25cac2771ce5e3048ddc1b708e9005"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0b25cac2771ce5e3048ddc1b708e9005"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__double.html#a0b25cac2771ce5e3048ddc1b708e9005">f</a></td></tr>
-<tr class="memdesc:a0b25cac2771ce5e3048ddc1b708e9005"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( float ) <br/></td></tr>
-<tr class="memitem:a130252f4a197b65416311097880cff4f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a130252f4a197b65416311097880cff4f"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__double.html#a130252f4a197b65416311097880cff4f">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a130252f4a197b65416311097880cff4f"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a3d0e47cf55f04c89523abd46f361ef91"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d0e47cf55f04c89523abd46f361ef91"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__mv__plan__double.html#a3d0e47cf55f04c89523abd46f361ef91">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a3d0e47cf55f04c89523abd46f361ef91"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00173">173</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfftf__plan.html b/doc/api/html/structnfftf__plan.html
deleted file mode 100644
index bbd5277..0000000
--- a/doc/api/html/structnfftf__plan.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfftf_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfftf_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:a17fea72bdd4f446528716400f4522dac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a17fea72bdd4f446528716400f4522dac"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a17fea72bdd4f446528716400f4522dac">FFTW_MANGLE_FLOAT</a> (plan) my_fftw_plan1</td></tr>
-<tr class="memdesc:a17fea72bdd4f446528716400f4522dac"><td class="mdescLeft"> </td><td class="mdescRight">Forward FFTW plan. <br/></td></tr>
-<tr class="memitem:ae2ffec96887c5407fb31063a0139f678"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae2ffec96887c5407fb31063a0139f678"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#ae2ffec96887c5407fb31063a0139f678">FFTW_MANGLE_FLOAT</a> (plan) my_fftw_plan2</td></tr>
-<tr class="memdesc:ae2ffec96887c5407fb31063a0139f678"><td class="mdescLeft"> </td><td class="mdescRight">Backward FFTW plan. <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a65855ec1dec6f17eb46d6762ad6ff942"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65855ec1dec6f17eb46d6762ad6ff942"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a65855ec1dec6f17eb46d6762ad6ff942">N_total</a></td></tr>
-<tr class="memdesc:a65855ec1dec6f17eb46d6762ad6ff942"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a3823921949eded81bde776f57eba8052"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3823921949eded81bde776f57eba8052"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a3823921949eded81bde776f57eba8052">M_total</a></td></tr>
-<tr class="memdesc:a3823921949eded81bde776f57eba8052"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:aa967453b5ae5ba9e5b2056c884d2cda5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa967453b5ae5ba9e5b2056c884d2cda5"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#aa967453b5ae5ba9e5b2056c884d2cda5">f_hat</a></td></tr>
-<tr class="memdesc:aa967453b5ae5ba9e5b2056c884d2cda5"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:a1c2e419705d6254801134bffe0695ae1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1c2e419705d6254801134bffe0695ae1"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a1c2e419705d6254801134bffe0695ae1">f</a></td></tr>
-<tr class="memdesc:a1c2e419705d6254801134bffe0695ae1"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:ab09b1d93f60895791076e1e41241ecb0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab09b1d93f60895791076e1e41241ecb0"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#ab09b1d93f60895791076e1e41241ecb0">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:ab09b1d93f60895791076e1e41241ecb0"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a9f8b111e42ef7ba609879d4a6983695d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f8b111e42ef7ba609879d4a6983695d"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a9f8b111e42ef7ba609879d4a6983695d">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a9f8b111e42ef7ba609879d4a6983695d"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a35ff58e4549b1c5292fd03cb215debac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35ff58e4549b1c5292fd03cb215debac"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a35ff58e4549b1c5292fd03cb215debac">d</a></td></tr>
-<tr class="memdesc:a35ff58e4549b1c5292fd03cb215debac"><td class="mdescLeft"> </td><td class="mdescRight">dimension aka rank <br/></td></tr>
-<tr class="memitem:a27caa84ad525683d89b5963defadc98d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a27caa84ad525683d89b5963defadc98d"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a27caa84ad525683d89b5963defadc98d">N</a></td></tr>
-<tr class="memdesc:a27caa84ad525683d89b5963defadc98d"><td class="mdescLeft"> </td><td class="mdescRight">multi-bandwidth <br/></td></tr>
-<tr class="memitem:a20d669812b6acf9a8bda34cb659d61dd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a20d669812b6acf9a8bda34cb659d61dd"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a20d669812b6acf9a8bda34cb659d61dd">sigma</a></td></tr>
-<tr class="memdesc:a20d669812b6acf9a8bda34cb659d61dd"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a6971ea46e4044daa773f19c8bd8d4a0b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6971ea46e4044daa773f19c8bd8d4a0b"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a6971ea46e4044daa773f19c8bd8d4a0b">n</a></td></tr>
-<tr class="memdesc:a6971ea46e4044daa773f19c8bd8d4a0b"><td class="mdescLeft"> </td><td class="mdescRight">FFTW length, equal to sigma*N, default is the power of 2 such that <img class="formulaInl" alt="$2\le\sigma<4$" src="form_0.png"/>. <br/></td></tr>
-<tr class="memitem:a79aefed96e856d86d0fb74f873ae09ba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79aefed96e856d86d0fb74f873ae09ba"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a79aefed96e856d86d0fb74f873ae09ba">n_total</a></td></tr>
-<tr class="memdesc:a79aefed96e856d86d0fb74f873ae09ba"><td class="mdescLeft"> </td><td class="mdescRight">Total size of FFTW. <br/></td></tr>
-<tr class="memitem:a9002bd9a063311155ae2a8c94c076e9d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9002bd9a063311155ae2a8c94c076e9d"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a9002bd9a063311155ae2a8c94c076e9d">m</a></td></tr>
-<tr class="memdesc:a9002bd9a063311155ae2a8c94c076e9d"><td class="mdescLeft"> </td><td class="mdescRight">Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN) <br/></td></tr>
-<tr class="memitem:a3ede2fe9c94e00ec59150ba2971facb2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3ede2fe9c94e00ec59150ba2971facb2"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a3ede2fe9c94e00ec59150ba2971facb2">b</a></td></tr>
-<tr class="memdesc:a3ede2fe9c94e00ec59150ba2971facb2"><td class="mdescLeft"> </td><td class="mdescRight">Shape parameter of the window function. <br/></td></tr>
-<tr class="memitem:aad0836b3e8e4a98b27729d960b593caa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad0836b3e8e4a98b27729d960b593caa"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#aad0836b3e8e4a98b27729d960b593caa">K</a></td></tr>
-<tr class="memdesc:aad0836b3e8e4a98b27729d960b593caa"><td class="mdescLeft"> </td><td class="mdescRight">Number of equispaced samples of the window function for PRE_LIN_PSI. <br/></td></tr>
-<tr class="memitem:adaaa66e5b89d9f65ce94b56617574518"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adaaa66e5b89d9f65ce94b56617574518"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#adaaa66e5b89d9f65ce94b56617574518">nfft_flags</a></td></tr>
-<tr class="memdesc:adaaa66e5b89d9f65ce94b56617574518"><td class="mdescLeft"> </td><td class="mdescRight">Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | MALLOC_X | MALLOC_F_HAT | MALLOC_F | FFTW_INIT | FFT_OUT_OF_PLACE. <br/></td></tr>
-<tr class="memitem:a880c04f5e9d485d84065b3c289cd5729"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a880c04f5e9d485d84065b3c289cd5729"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a880c04f5e9d485d84065b3c289cd5729">fftw_flags</a></td></tr>
-<tr class="memdesc:a880c04f5e9d485d84065b3c289cd5729"><td class="mdescLeft"> </td><td class="mdescRight">Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT. <br/></td></tr>
-<tr class="memitem:a4bcaa307f32321459187f8633a946a7e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4bcaa307f32321459187f8633a946a7e"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a4bcaa307f32321459187f8633a946a7e">x</a></td></tr>
-<tr class="memdesc:a4bcaa307f32321459187f8633a946a7e"><td class="mdescLeft"> </td><td class="mdescRight">Nodes in time/spatial domain, size is <img class="formulaInl" alt="$dM$" src="form_1.png"/> doubles. <br/></td></tr>
-<tr class="memitem:afb81143dbd42553ed90440afc406c909"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afb81143dbd42553ed90440afc406c909"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#afb81143dbd42553ed90440afc406c909">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:afb81143dbd42553ed90440afc406c909"><td class="mdescLeft"> </td><td class="mdescRight">Measured time for each step if MEASURE_TIME is set. <br/></td></tr>
-<tr class="memitem:aa71f70b332bbb9868caad1db9f6cda02"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa71f70b332bbb9868caad1db9f6cda02"></a>
-float ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#aa71f70b332bbb9868caad1db9f6cda02">c_phi_inv</a></td></tr>
-<tr class="memdesc:aa71f70b332bbb9868caad1db9f6cda02"><td class="mdescLeft"> </td><td class="mdescRight">Precomputed data for the diagonal matrix <img class="formulaInl" alt="$D$" src="form_2.png"/>, size \ is <img class="formulaInl" alt="$N_0+\hdots+N_{d-1}$" src="form_3.png"/> doubles. <br/></td></tr>
-<tr class="memitem:a84402b4c947d57abef20e5f2db9110e3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84402b4c947d57abef20e5f2db9110e3"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a84402b4c947d57abef20e5f2db9110e3">psi</a></td></tr>
-<tr class="memdesc:a84402b4c947d57abef20e5f2db9110e3"><td class="mdescLeft"> </td><td class="mdescRight">Precomputed data for the sparse matrix <img class="formulaInl" alt="$B$" src="form_4.png"/>, size depends on precomputation scheme. <br/></td></tr>
-<tr class="memitem:a04f8c8d2075057efa3b41381705084c6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a04f8c8d2075057efa3b41381705084c6"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a04f8c8d2075057efa3b41381705084c6">psi_index_g</a></td></tr>
-<tr class="memdesc:a04f8c8d2075057efa3b41381705084c6"><td class="mdescLeft"> </td><td class="mdescRight">Indices in source/target vector for PRE_FULL_PSI. <br/></td></tr>
-<tr class="memitem:ac0073e7c6389e9141d555bf58e2d0b59"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac0073e7c6389e9141d555bf58e2d0b59"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#ac0073e7c6389e9141d555bf58e2d0b59">psi_index_f</a></td></tr>
-<tr class="memdesc:ac0073e7c6389e9141d555bf58e2d0b59"><td class="mdescLeft"> </td><td class="mdescRight">Indices in source/target vector for PRE_FULL_PSI. <br/></td></tr>
-<tr class="memitem:a35e6b39bfe06e5a6e56cde2458cf79a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35e6b39bfe06e5a6e56cde2458cf79a7"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a35e6b39bfe06e5a6e56cde2458cf79a7">g</a></td></tr>
-<tr class="memdesc:a35e6b39bfe06e5a6e56cde2458cf79a7"><td class="mdescLeft"> </td><td class="mdescRight">Oversampled vector of samples, size is <a class="el" href="structnfftf__plan.html#a79aefed96e856d86d0fb74f873ae09ba">n_total</a> double complex. <br/></td></tr>
-<tr class="memitem:aad01cb28079405090eaa1fce590c0c09"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad01cb28079405090eaa1fce590c0c09"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#aad01cb28079405090eaa1fce590c0c09">g_hat</a></td></tr>
-<tr class="memdesc:aad01cb28079405090eaa1fce590c0c09"><td class="mdescLeft"> </td><td class="mdescRight">Zero-padded vector of Fourier coefficients, size is <a class="el" href="structnfftf__plan.html#a79aefed96e856d86d0fb74f873ae09ba">n_total</a> fftw_complex. <br/></td></tr>
-<tr class="memitem:a01420d5d785228ee24a4819d2b0454a2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a01420d5d785228ee24a4819d2b0454a2"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a01420d5d785228ee24a4819d2b0454a2">g1</a></td></tr>
-<tr class="memdesc:a01420d5d785228ee24a4819d2b0454a2"><td class="mdescLeft"> </td><td class="mdescRight">Input of fftw. <br/></td></tr>
-<tr class="memitem:a4fda15d8d9edaa8de0636b2a458bf763"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4fda15d8d9edaa8de0636b2a458bf763"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a4fda15d8d9edaa8de0636b2a458bf763">g2</a></td></tr>
-<tr class="memdesc:a4fda15d8d9edaa8de0636b2a458bf763"><td class="mdescLeft"> </td><td class="mdescRight">Output of fftw. <br/></td></tr>
-<tr class="memitem:a65c65de370e29b24ba0da097d20ee262"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65c65de370e29b24ba0da097d20ee262"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a65c65de370e29b24ba0da097d20ee262">spline_coeffs</a></td></tr>
-<tr class="memdesc:a65c65de370e29b24ba0da097d20ee262"><td class="mdescLeft"> </td><td class="mdescRight">Input for de Boor algorithm if B_SPLINE or SINC_POWER is defined. <br/></td></tr>
-<tr class="memitem:a1dadaac164fe9f9be856d47a53498335"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1dadaac164fe9f9be856d47a53498335"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftf__plan.html#a1dadaac164fe9f9be856d47a53498335">index_x</a></td></tr>
-<tr class="memdesc:a1dadaac164fe9f9be856d47a53498335"><td class="mdescLeft"> </td><td class="mdescRight">Index array for nodes x used when flag NFFT_SORT_NODES is set. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00173">173</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfftl__mv__plan__complex.html b/doc/api/html/structnfftl__mv__plan__complex.html
deleted file mode 100644
index 4d1dfdd..0000000
--- a/doc/api/html/structnfftl__mv__plan__complex.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfftl_mv_plan_complex Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfftl_mv_plan_complex Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a469c0077659dda97651e075da143a398"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a469c0077659dda97651e075da143a398"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__complex.html#a469c0077659dda97651e075da143a398">N_total</a></td></tr>
-<tr class="memdesc:a469c0077659dda97651e075da143a398"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:aa0175f63a2b2f5c80bb3153008315871"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0175f63a2b2f5c80bb3153008315871"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__complex.html#aa0175f63a2b2f5c80bb3153008315871">M_total</a></td></tr>
-<tr class="memdesc:aa0175f63a2b2f5c80bb3153008315871"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ae4b3786df2416012cf16d7ed4c097791"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4b3786df2416012cf16d7ed4c097791"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__complex.html#ae4b3786df2416012cf16d7ed4c097791">f_hat</a></td></tr>
-<tr class="memdesc:ae4b3786df2416012cf16d7ed4c097791"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:adb5c2e9ba052f02fec78e550413aacfa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adb5c2e9ba052f02fec78e550413aacfa"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__complex.html#adb5c2e9ba052f02fec78e550413aacfa">f</a></td></tr>
-<tr class="memdesc:adb5c2e9ba052f02fec78e550413aacfa"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:a4d573c341aae7a4e034944772478658c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4d573c341aae7a4e034944772478658c"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__complex.html#a4d573c341aae7a4e034944772478658c">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a4d573c341aae7a4e034944772478658c"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a5f31b4b9a03ac8f9a503c1ae42cad758"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f31b4b9a03ac8f9a503c1ae42cad758"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__complex.html#a5f31b4b9a03ac8f9a503c1ae42cad758">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a5f31b4b9a03ac8f9a503c1ae42cad758"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00173">173</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfftl__mv__plan__double.html b/doc/api/html/structnfftl__mv__plan__double.html
deleted file mode 100644
index e1aa3eb..0000000
--- a/doc/api/html/structnfftl__mv__plan__double.html
+++ /dev/null
@@ -1,77 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfftl_mv_plan_double Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfftl_mv_plan_double Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a63a371e62727c804a195cf2315b79a41"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63a371e62727c804a195cf2315b79a41"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__double.html#a63a371e62727c804a195cf2315b79a41">N_total</a></td></tr>
-<tr class="memdesc:a63a371e62727c804a195cf2315b79a41"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:ac7366d2d09a0b3aed5884b50d10ef478"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac7366d2d09a0b3aed5884b50d10ef478"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__double.html#ac7366d2d09a0b3aed5884b50d10ef478">M_total</a></td></tr>
-<tr class="memdesc:ac7366d2d09a0b3aed5884b50d10ef478"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:add804289931e55388070ee495c3e5072"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="add804289931e55388070ee495c3e5072"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__double.html#add804289931e55388070ee495c3e5072">f_hat</a></td></tr>
-<tr class="memdesc:add804289931e55388070ee495c3e5072"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( long double ) <br/></td></tr>
-<tr class="memitem:ae6c4a0204a54f2a37a0acf2b3f5a0c0c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6c4a0204a54f2a37a0acf2b3f5a0c0c"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__double.html#ae6c4a0204a54f2a37a0acf2b3f5a0c0c">f</a></td></tr>
-<tr class="memdesc:ae6c4a0204a54f2a37a0acf2b3f5a0c0c"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( long double ) <br/></td></tr>
-<tr class="memitem:aff66252bd97fa6d73d7e137d888bb625"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aff66252bd97fa6d73d7e137d888bb625"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__double.html#aff66252bd97fa6d73d7e137d888bb625">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:aff66252bd97fa6d73d7e137d888bb625"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a804a64f2fb25ad91487fbcc186d784e0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a804a64f2fb25ad91487fbcc186d784e0"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__mv__plan__double.html#a804a64f2fb25ad91487fbcc186d784e0">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a804a64f2fb25ad91487fbcc186d784e0"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00173">173</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfftl__plan.html b/doc/api/html/structnfftl__plan.html
deleted file mode 100644
index ce02e31..0000000
--- a/doc/api/html/structnfftl__plan.html
+++ /dev/null
@@ -1,153 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfftl_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfftl_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:ab17581f82946cc39584acd6b059b7809"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab17581f82946cc39584acd6b059b7809"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#ab17581f82946cc39584acd6b059b7809">FFTW_MANGLE_LONG_DOUBLE</a> (plan) my_fftw_plan1</td></tr>
-<tr class="memdesc:ab17581f82946cc39584acd6b059b7809"><td class="mdescLeft"> </td><td class="mdescRight">Forward FFTW plan. <br/></td></tr>
-<tr class="memitem:a2e9e81a72c786bd7ed4eef099a5f8a5e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2e9e81a72c786bd7ed4eef099a5f8a5e"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a2e9e81a72c786bd7ed4eef099a5f8a5e">FFTW_MANGLE_LONG_DOUBLE</a> (plan) my_fftw_plan2</td></tr>
-<tr class="memdesc:a2e9e81a72c786bd7ed4eef099a5f8a5e"><td class="mdescLeft"> </td><td class="mdescRight">Backward FFTW plan. <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a747b6aee3ae47ad66391027bc13789af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a747b6aee3ae47ad66391027bc13789af"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a747b6aee3ae47ad66391027bc13789af">N_total</a></td></tr>
-<tr class="memdesc:a747b6aee3ae47ad66391027bc13789af"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a95e2db75883c6586f31b8db8c8bf8cf8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a95e2db75883c6586f31b8db8c8bf8cf8"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a95e2db75883c6586f31b8db8c8bf8cf8">M_total</a></td></tr>
-<tr class="memdesc:a95e2db75883c6586f31b8db8c8bf8cf8"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ad5cf4ad0369bdaf07f6acd801e6b9e5e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad5cf4ad0369bdaf07f6acd801e6b9e5e"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#ad5cf4ad0369bdaf07f6acd801e6b9e5e">f_hat</a></td></tr>
-<tr class="memdesc:ad5cf4ad0369bdaf07f6acd801e6b9e5e"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:a53b53a1222f4acf29c778b933c9f130e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53b53a1222f4acf29c778b933c9f130e"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a53b53a1222f4acf29c778b933c9f130e">f</a></td></tr>
-<tr class="memdesc:a53b53a1222f4acf29c778b933c9f130e"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:a0f05caab33b6f473626e74f44356e3fc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f05caab33b6f473626e74f44356e3fc"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a0f05caab33b6f473626e74f44356e3fc">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a0f05caab33b6f473626e74f44356e3fc"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a3d343b79e00dbb8cd4984143a03ddf53"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d343b79e00dbb8cd4984143a03ddf53"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a3d343b79e00dbb8cd4984143a03ddf53">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a3d343b79e00dbb8cd4984143a03ddf53"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a4c139d72e93078b54f4240ecd7f6454f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c139d72e93078b54f4240ecd7f6454f"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a4c139d72e93078b54f4240ecd7f6454f">d</a></td></tr>
-<tr class="memdesc:a4c139d72e93078b54f4240ecd7f6454f"><td class="mdescLeft"> </td><td class="mdescRight">dimension aka rank <br/></td></tr>
-<tr class="memitem:a36e045f670b95d68f5c2e04b55a1c220"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a36e045f670b95d68f5c2e04b55a1c220"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a36e045f670b95d68f5c2e04b55a1c220">N</a></td></tr>
-<tr class="memdesc:a36e045f670b95d68f5c2e04b55a1c220"><td class="mdescLeft"> </td><td class="mdescRight">multi-bandwidth <br/></td></tr>
-<tr class="memitem:a149fdaed10fafdb3bf414110ad233b7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a149fdaed10fafdb3bf414110ad233b7c"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a149fdaed10fafdb3bf414110ad233b7c">sigma</a></td></tr>
-<tr class="memdesc:a149fdaed10fafdb3bf414110ad233b7c"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a58140f5f6ea4ca1c0305cbcec55437bd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a58140f5f6ea4ca1c0305cbcec55437bd"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a58140f5f6ea4ca1c0305cbcec55437bd">n</a></td></tr>
-<tr class="memdesc:a58140f5f6ea4ca1c0305cbcec55437bd"><td class="mdescLeft"> </td><td class="mdescRight">FFTW length, equal to sigma*N, default is the power of 2 such that <img class="formulaInl" alt="$2\le\sigma<4$" src="form_0.png"/>. <br/></td></tr>
-<tr class="memitem:a58ea89cc9b78b32c8c1775e8b1277ad8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a58ea89cc9b78b32c8c1775e8b1277ad8"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a58ea89cc9b78b32c8c1775e8b1277ad8">n_total</a></td></tr>
-<tr class="memdesc:a58ea89cc9b78b32c8c1775e8b1277ad8"><td class="mdescLeft"> </td><td class="mdescRight">Total size of FFTW. <br/></td></tr>
-<tr class="memitem:ac4741304d0030c88a8244dd1d8171b65"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac4741304d0030c88a8244dd1d8171b65"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#ac4741304d0030c88a8244dd1d8171b65">m</a></td></tr>
-<tr class="memdesc:ac4741304d0030c88a8244dd1d8171b65"><td class="mdescLeft"> </td><td class="mdescRight">Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN) <br/></td></tr>
-<tr class="memitem:a80c548cbcc4defbac2b544602a5baa85"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80c548cbcc4defbac2b544602a5baa85"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a80c548cbcc4defbac2b544602a5baa85">b</a></td></tr>
-<tr class="memdesc:a80c548cbcc4defbac2b544602a5baa85"><td class="mdescLeft"> </td><td class="mdescRight">Shape parameter of the window function. <br/></td></tr>
-<tr class="memitem:ae6f8a76f202fe1816cfe1004a9ce9a0d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6f8a76f202fe1816cfe1004a9ce9a0d"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#ae6f8a76f202fe1816cfe1004a9ce9a0d">K</a></td></tr>
-<tr class="memdesc:ae6f8a76f202fe1816cfe1004a9ce9a0d"><td class="mdescLeft"> </td><td class="mdescRight">Number of equispaced samples of the window function for PRE_LIN_PSI. <br/></td></tr>
-<tr class="memitem:a375f14a65c5686803270dbb3cfd1c371"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a375f14a65c5686803270dbb3cfd1c371"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a375f14a65c5686803270dbb3cfd1c371">nfft_flags</a></td></tr>
-<tr class="memdesc:a375f14a65c5686803270dbb3cfd1c371"><td class="mdescLeft"> </td><td class="mdescRight">Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | MALLOC_X | MALLOC_F_HAT | MALLOC_F | FFTW_INIT | FFT_OUT_OF_PLACE. <br/></td></tr>
-<tr class="memitem:a4e0df1f491a4aa8f7373d776d705095f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4e0df1f491a4aa8f7373d776d705095f"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a4e0df1f491a4aa8f7373d776d705095f">fftw_flags</a></td></tr>
-<tr class="memdesc:a4e0df1f491a4aa8f7373d776d705095f"><td class="mdescLeft"> </td><td class="mdescRight">Flags for the FFTW, default is FFTW_ESTIMATE | FFTW_DESTROY_INPUT. <br/></td></tr>
-<tr class="memitem:ad5695c30a05c03573082a1aac0394700"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad5695c30a05c03573082a1aac0394700"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#ad5695c30a05c03573082a1aac0394700">x</a></td></tr>
-<tr class="memdesc:ad5695c30a05c03573082a1aac0394700"><td class="mdescLeft"> </td><td class="mdescRight">Nodes in time/spatial domain, size is <img class="formulaInl" alt="$dM$" src="form_1.png"/> doubles. <br/></td></tr>
-<tr class="memitem:ae8cf45feec672cd7e6f42a1b6a091a5c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae8cf45feec672cd7e6f42a1b6a091a5c"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#ae8cf45feec672cd7e6f42a1b6a091a5c">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:ae8cf45feec672cd7e6f42a1b6a091a5c"><td class="mdescLeft"> </td><td class="mdescRight">Measured time for each step if MEASURE_TIME is set. <br/></td></tr>
-<tr class="memitem:afdcd5a1259a4fb7e7271efe30a207265"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afdcd5a1259a4fb7e7271efe30a207265"></a>
-long double ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#afdcd5a1259a4fb7e7271efe30a207265">c_phi_inv</a></td></tr>
-<tr class="memdesc:afdcd5a1259a4fb7e7271efe30a207265"><td class="mdescLeft"> </td><td class="mdescRight">Precomputed data for the diagonal matrix <img class="formulaInl" alt="$D$" src="form_2.png"/>, size \ is <img class="formulaInl" alt="$N_0+\hdots+N_{d-1}$" src="form_3.png"/> doubles. <br/></td></tr>
-<tr class="memitem:a33955562ecf9b48f4283f869c77f96ff"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33955562ecf9b48f4283f869c77f96ff"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a33955562ecf9b48f4283f869c77f96ff">psi</a></td></tr>
-<tr class="memdesc:a33955562ecf9b48f4283f869c77f96ff"><td class="mdescLeft"> </td><td class="mdescRight">Precomputed data for the sparse matrix <img class="formulaInl" alt="$B$" src="form_4.png"/>, size depends on precomputation scheme. <br/></td></tr>
-<tr class="memitem:ad3ff1d5c721f0ec4e81aa341b29abc15"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3ff1d5c721f0ec4e81aa341b29abc15"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#ad3ff1d5c721f0ec4e81aa341b29abc15">psi_index_g</a></td></tr>
-<tr class="memdesc:ad3ff1d5c721f0ec4e81aa341b29abc15"><td class="mdescLeft"> </td><td class="mdescRight">Indices in source/target vector for PRE_FULL_PSI. <br/></td></tr>
-<tr class="memitem:a713765bd7f9b488ac995de023de2ead1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a713765bd7f9b488ac995de023de2ead1"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a713765bd7f9b488ac995de023de2ead1">psi_index_f</a></td></tr>
-<tr class="memdesc:a713765bd7f9b488ac995de023de2ead1"><td class="mdescLeft"> </td><td class="mdescRight">Indices in source/target vector for PRE_FULL_PSI. <br/></td></tr>
-<tr class="memitem:aa442607f39ed01885dbeb286b18b1b77"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa442607f39ed01885dbeb286b18b1b77"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#aa442607f39ed01885dbeb286b18b1b77">g</a></td></tr>
-<tr class="memdesc:aa442607f39ed01885dbeb286b18b1b77"><td class="mdescLeft"> </td><td class="mdescRight">Oversampled vector of samples, size is <a class="el" href="structnfftl__plan.html#a58ea89cc9b78b32c8c1775e8b1277ad8">n_total</a> double complex. <br/></td></tr>
-<tr class="memitem:af708c1c479196fb4e3ded3d289085b5e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af708c1c479196fb4e3ded3d289085b5e"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#af708c1c479196fb4e3ded3d289085b5e">g_hat</a></td></tr>
-<tr class="memdesc:af708c1c479196fb4e3ded3d289085b5e"><td class="mdescLeft"> </td><td class="mdescRight">Zero-padded vector of Fourier coefficients, size is <a class="el" href="structnfftl__plan.html#a58ea89cc9b78b32c8c1775e8b1277ad8">n_total</a> fftw_complex. <br/></td></tr>
-<tr class="memitem:a71a99cd893a823d1a7edb139650b2afe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a71a99cd893a823d1a7edb139650b2afe"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a71a99cd893a823d1a7edb139650b2afe">g1</a></td></tr>
-<tr class="memdesc:a71a99cd893a823d1a7edb139650b2afe"><td class="mdescLeft"> </td><td class="mdescRight">Input of fftw. <br/></td></tr>
-<tr class="memitem:aea25feca0bccefe267c0a9eb75390ed6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aea25feca0bccefe267c0a9eb75390ed6"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#aea25feca0bccefe267c0a9eb75390ed6">g2</a></td></tr>
-<tr class="memdesc:aea25feca0bccefe267c0a9eb75390ed6"><td class="mdescLeft"> </td><td class="mdescRight">Output of fftw. <br/></td></tr>
-<tr class="memitem:a971f190366e40c729899ff71d2a60682"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a971f190366e40c729899ff71d2a60682"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#a971f190366e40c729899ff71d2a60682">spline_coeffs</a></td></tr>
-<tr class="memdesc:a971f190366e40c729899ff71d2a60682"><td class="mdescLeft"> </td><td class="mdescRight">Input for de Boor algorithm if B_SPLINE or SINC_POWER is defined. <br/></td></tr>
-<tr class="memitem:ad98e162c23583ec8f010aacf9ec06767"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad98e162c23583ec8f010aacf9ec06767"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfftl__plan.html#ad98e162c23583ec8f010aacf9ec06767">index_x</a></td></tr>
-<tr class="memdesc:ad98e162c23583ec8f010aacf9ec06767"><td class="mdescLeft"> </td><td class="mdescRight">Index array for nodes x used when flag NFFT_SORT_NODES is set. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00173">173</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfsft__plan.html b/doc/api/html/structnfsft__plan.html
deleted file mode 100644
index 131b6a3..0000000
--- a/doc/api/html/structnfsft__plan.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsft_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfsft_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a57fe4569f9109b92ed55caeddce686b8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a57fe4569f9109b92ed55caeddce686b8"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#a57fe4569f9109b92ed55caeddce686b8">N_total</a></td></tr>
-<tr class="memdesc:a57fe4569f9109b92ed55caeddce686b8"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:ae83b4ef24662500a1c0374f9e0bf73ed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae83b4ef24662500a1c0374f9e0bf73ed"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#ae83b4ef24662500a1c0374f9e0bf73ed">M_total</a></td></tr>
-<tr class="memdesc:ae83b4ef24662500a1c0374f9e0bf73ed"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:af3f147694cf5d7ac7b658288bf2cfb42"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af3f147694cf5d7ac7b658288bf2cfb42"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#af3f147694cf5d7ac7b658288bf2cfb42">f_hat</a></td></tr>
-<tr class="memdesc:af3f147694cf5d7ac7b658288bf2cfb42"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:aebedb76f2df25603c548ae9672e970df"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aebedb76f2df25603c548ae9672e970df"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#aebedb76f2df25603c548ae9672e970df">f</a></td></tr>
-<tr class="memdesc:aebedb76f2df25603c548ae9672e970df"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a01bf30c31f886ffa9d486c010a452051"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a01bf30c31f886ffa9d486c010a452051"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#a01bf30c31f886ffa9d486c010a452051">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a01bf30c31f886ffa9d486c010a452051"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a14cc99f56f6a61958aef26f80aac6f12"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a14cc99f56f6a61958aef26f80aac6f12"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#a14cc99f56f6a61958aef26f80aac6f12">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a14cc99f56f6a61958aef26f80aac6f12"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:ae5da5c37169612dcf2d66ff595ee4403"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae5da5c37169612dcf2d66ff595ee4403"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#ae5da5c37169612dcf2d66ff595ee4403">N</a></td></tr>
-<tr class="memdesc:ae5da5c37169612dcf2d66ff595ee4403"><td class="mdescLeft"> </td><td class="mdescRight">the bandwidth <img class="formulaInl" alt="$N$" src="form_5.png"/> <br/></td></tr>
-<tr class="memitem:af361cee5b4f7dabae68e53674861df90"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af361cee5b4f7dabae68e53674861df90"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#af361cee5b4f7dabae68e53674861df90">x</a></td></tr>
-<tr class="memdesc:af361cee5b4f7dabae68e53674861df90"><td class="mdescLeft"> </td><td class="mdescRight">the nodes <img class="formulaInl" alt="$\mathbf{x}(m) = \left(x_1,x_2\right) \in [-\frac{1}{2},\frac{1}{2}) \times [0,\frac{1}{2}]$" src="form_6.png"/> for <img class="formulaInl" alt="$m=0,\ldots, M-1$" src="form_7.png"/>, <img class="formulaInl" alt="$M \in \mathbb{N},$" src="form_8.png"/> <br/></td></tr>
-<tr class="memitem:a59d80818cb9c0dcaccc477954720772c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59d80818cb9c0dcaccc477954720772c"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#a59d80818cb9c0dcaccc477954720772c">t</a></td></tr>
-<tr class="memdesc:a59d80818cb9c0dcaccc477954720772c"><td class="mdescLeft"> </td><td class="mdescRight">the logarithm of NPT with respect to the basis 2 <br/></td></tr>
-<tr class="memitem:a5ad6e9d30dd23d5be94b9277e5068694"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ad6e9d30dd23d5be94b9277e5068694"></a>
-unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#a5ad6e9d30dd23d5be94b9277e5068694">flags</a></td></tr>
-<tr class="memdesc:a5ad6e9d30dd23d5be94b9277e5068694"><td class="mdescLeft"> </td><td class="mdescRight">the planner flags <br/></td></tr>
-<tr class="memitem:af21a62a31af4918fda1376612398369e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af21a62a31af4918fda1376612398369e"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#af21a62a31af4918fda1376612398369e">plan_nfft</a></td></tr>
-<tr class="memdesc:af21a62a31af4918fda1376612398369e"><td class="mdescLeft"> </td><td class="mdescRight">the internal NFFT plan <br/></td></tr>
-<tr class="memitem:a79156943fb3c87599ee7fa3bc157f548"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79156943fb3c87599ee7fa3bc157f548"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#a79156943fb3c87599ee7fa3bc157f548">f_hat_intern</a></td></tr>
-<tr class="memdesc:a79156943fb3c87599ee7fa3bc157f548"><td class="mdescLeft"> </td><td class="mdescRight">Internally used pointer to spherical Fourier coefficients. <br/></td></tr>
-<tr class="memitem:ae22ba52a7e414e15dc662c8ee2b5f2db"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae22ba52a7e414e15dc662c8ee2b5f2db"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__plan.html#ae22ba52a7e414e15dc662c8ee2b5f2db">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:ae22ba52a7e414e15dc662c8ee2b5f2db"><td class="mdescLeft"> </td><td class="mdescRight">Measured time for each step if MEASURE_TIME is set. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00551">551</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfsft__wisdom.html b/doc/api/html/structnfsft__wisdom.html
deleted file mode 100644
index 69f49d5..0000000
--- a/doc/api/html/structnfsft__wisdom.html
+++ /dev/null
@@ -1,123 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsft_wisdom Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfsft_wisdom Struct Reference<div class="ingroups"><a class="el" href="group__nfsft.html">Nfsft</a></div></div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Wisdom structure.
- <a href="structnfsft__wisdom.html#details">More...</a></p>
-
-<p><code>#include <<a class="el" href="kernel_2nfsft_2api_8h_source.html">api.h</a>></code></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:abb3162b2e1faa123a9ef70f1374aa740"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__wisdom.html#abb3162b2e1faa123a9ef70f1374aa740">initialized</a></td></tr>
-<tr class="memdesc:abb3162b2e1faa123a9ef70f1374aa740"><td class="mdescLeft"> </td><td class="mdescRight">Indicates wether the structure has been initialized. <a href="#abb3162b2e1faa123a9ef70f1374aa740"></a><br/></td></tr>
-<tr class="memitem:a267b5c83fbfef2212669a2f61960e3d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a267b5c83fbfef2212669a2f61960e3d4"></a>
-unsigned int </td><td class="memItemRight" valign="bottom"><b>flags</b></td></tr>
-<tr class="memitem:ac0d21110fe9475646b8174b1048cda51"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__wisdom.html#ac0d21110fe9475646b8174b1048cda51">N_MAX</a></td></tr>
-<tr class="memdesc:ac0d21110fe9475646b8174b1048cda51"><td class="mdescLeft"> </td><td class="mdescRight">Stores precomputation flags. <a href="#ac0d21110fe9475646b8174b1048cda51"></a><br/></td></tr>
-<tr class="memitem:ae6c31fe1bc09d2894948358c2bea27e4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6c31fe1bc09d2894948358c2bea27e4"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__wisdom.html#ae6c31fe1bc09d2894948358c2bea27e4">T_MAX</a></td></tr>
-<tr class="memdesc:ae6c31fe1bc09d2894948358c2bea27e4"><td class="mdescLeft"> </td><td class="mdescRight">The logarithm /f$t = N_{{max}}/f$ of the maximum bandwidth. <br/></td></tr>
-<tr class="memitem:a755da8bd28cc1322415bd0ddcfceaf4e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a755da8bd28cc1322415bd0ddcfceaf4e"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e">alpha</a></td></tr>
-<tr class="memdesc:a755da8bd28cc1322415bd0ddcfceaf4e"><td class="mdescLeft"> </td><td class="mdescRight">Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$. <br/></td></tr>
-<tr class="memitem:a6bcfe5201d3fed513c2cdb37832ee255"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6bcfe5201d3fed513c2cdb37832ee255"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255">beta</a></td></tr>
-<tr class="memdesc:a6bcfe5201d3fed513c2cdb37832ee255"><td class="mdescLeft"> </td><td class="mdescRight">Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$. <br/></td></tr>
-<tr class="memitem:a1703c0339b14ee1f0956d3e394f598e2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1703c0339b14ee1f0956d3e394f598e2"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2">gamma</a></td></tr>
-<tr class="memdesc:a1703c0339b14ee1f0956d3e394f598e2"><td class="mdescLeft"> </td><td class="mdescRight">Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$. <br/></td></tr>
-<tr class="memitem:ac367edaa1fae041e5b049cd81b44336b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac367edaa1fae041e5b049cd81b44336b"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__wisdom.html#ac367edaa1fae041e5b049cd81b44336b">threshold</a></td></tr>
-<tr class="memdesc:ac367edaa1fae041e5b049cd81b44336b"><td class="mdescLeft"> </td><td class="mdescRight">The threshold /f$/f$. <br/></td></tr>
-<tr class="memitem:a18de3dcf9ca2e2e577fccfcca712bfd2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a18de3dcf9ca2e2e577fccfcca712bfd2"></a>
-<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsft__wisdom.html#a18de3dcf9ca2e2e577fccfcca712bfd2">set</a></td></tr>
-<tr class="memdesc:a18de3dcf9ca2e2e577fccfcca712bfd2"><td class="mdescLeft"> </td><td class="mdescRight">Structure for <em>discrete</em> <em>polynomial</em> <em>transform</em> (<em>DPT</em>) <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Wisdom structure. </p>
-
-<p>Definition at line <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00058">58</a> of file <a class="el" href="kernel_2nfsft_2api_8h_source.html">kernel/nfsft/api.h</a>.</p>
-</div><hr/><h2>Field Documentation</h2>
-<a class="anchor" id="abb3162b2e1faa123a9ef70f1374aa740"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">bool nfsft_wisdom::initialized</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Indicates wether the structure has been initialized. </p>
-
-<p>Definition at line <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00061">61</a> of file <a class="el" href="kernel_2nfsft_2api_8h_source.html">kernel/nfsft/api.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ac0d21110fe9475646b8174b1048cda51"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int nfsft_wisdom::N_MAX</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Stores precomputation flags. </p>
-<p>The maximum bandwidth /f$N_{{max}} {N}_0/f$ </p>
-
-<p>Definition at line <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00065">65</a> of file <a class="el" href="kernel_2nfsft_2api_8h_source.html">kernel/nfsft/api.h</a>.</p>
-
-</div>
-</div>
-<hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="kernel_2nfsft_2api_8h_source.html">kernel/nfsft/api.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfsftf__plan.html b/doc/api/html/structnfsftf__plan.html
deleted file mode 100644
index 13e9d72..0000000
--- a/doc/api/html/structnfsftf__plan.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsftf_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfsftf_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a90ee6582e535312ac761e4e6fbaad0c0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a90ee6582e535312ac761e4e6fbaad0c0"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#a90ee6582e535312ac761e4e6fbaad0c0">N_total</a></td></tr>
-<tr class="memdesc:a90ee6582e535312ac761e4e6fbaad0c0"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a5df19929f38064f36893840388ef975e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5df19929f38064f36893840388ef975e"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#a5df19929f38064f36893840388ef975e">M_total</a></td></tr>
-<tr class="memdesc:a5df19929f38064f36893840388ef975e"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a840547e30414a41c3751e2b418f76312"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a840547e30414a41c3751e2b418f76312"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#a840547e30414a41c3751e2b418f76312">f_hat</a></td></tr>
-<tr class="memdesc:a840547e30414a41c3751e2b418f76312"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:a7cfd191a4353a736bf9045c7e1d46f70"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7cfd191a4353a736bf9045c7e1d46f70"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#a7cfd191a4353a736bf9045c7e1d46f70">f</a></td></tr>
-<tr class="memdesc:a7cfd191a4353a736bf9045c7e1d46f70"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:a417f0b7f48ab77d5af34ed1da9ba95c9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a417f0b7f48ab77d5af34ed1da9ba95c9"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#a417f0b7f48ab77d5af34ed1da9ba95c9">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a417f0b7f48ab77d5af34ed1da9ba95c9"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:af4deec395e0a4650b1e108677b787900"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af4deec395e0a4650b1e108677b787900"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#af4deec395e0a4650b1e108677b787900">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:af4deec395e0a4650b1e108677b787900"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a09b711da345edffb8a71b5b8a8bca6d0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a09b711da345edffb8a71b5b8a8bca6d0"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#a09b711da345edffb8a71b5b8a8bca6d0">N</a></td></tr>
-<tr class="memdesc:a09b711da345edffb8a71b5b8a8bca6d0"><td class="mdescLeft"> </td><td class="mdescRight">the bandwidth <img class="formulaInl" alt="$N$" src="form_5.png"/> <br/></td></tr>
-<tr class="memitem:a110084c9a750d175c70caa7a24d69ae7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a110084c9a750d175c70caa7a24d69ae7"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#a110084c9a750d175c70caa7a24d69ae7">x</a></td></tr>
-<tr class="memdesc:a110084c9a750d175c70caa7a24d69ae7"><td class="mdescLeft"> </td><td class="mdescRight">the nodes <img class="formulaInl" alt="$\mathbf{x}(m) = \left(x_1,x_2\right) \in [-\frac{1}{2},\frac{1}{2}) \times [0,\frac{1}{2}]$" src="form_6.png"/> for <img class="formulaInl" alt="$m=0,\ldots, M-1$" src="form_7.png"/>, <img class="formulaInl" alt="$M \in \mathbb{N},$" src="form_8.png"/> <br/></td></tr>
-<tr class="memitem:ad5d65a033c50d321c6affc677e4f5226"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad5d65a033c50d321c6affc677e4f5226"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#ad5d65a033c50d321c6affc677e4f5226">t</a></td></tr>
-<tr class="memdesc:ad5d65a033c50d321c6affc677e4f5226"><td class="mdescLeft"> </td><td class="mdescRight">the logarithm of NPT with respect to the basis 2 <br/></td></tr>
-<tr class="memitem:a67898ed2ead6812358feeace004b14fe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67898ed2ead6812358feeace004b14fe"></a>
-unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#a67898ed2ead6812358feeace004b14fe">flags</a></td></tr>
-<tr class="memdesc:a67898ed2ead6812358feeace004b14fe"><td class="mdescLeft"> </td><td class="mdescRight">the planner flags <br/></td></tr>
-<tr class="memitem:a87927611482f2fb3421ea2279993f94a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87927611482f2fb3421ea2279993f94a"></a>
-<a class="el" href="structnfftf__plan.html">nfftf_plan</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#a87927611482f2fb3421ea2279993f94a">plan_nfft</a></td></tr>
-<tr class="memdesc:a87927611482f2fb3421ea2279993f94a"><td class="mdescLeft"> </td><td class="mdescRight">the internal NFFT plan <br/></td></tr>
-<tr class="memitem:aa0a6fb494d6378f656c83f191cd4ed1d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0a6fb494d6378f656c83f191cd4ed1d"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#aa0a6fb494d6378f656c83f191cd4ed1d">f_hat_intern</a></td></tr>
-<tr class="memdesc:aa0a6fb494d6378f656c83f191cd4ed1d"><td class="mdescLeft"> </td><td class="mdescRight">Internally used pointer to spherical Fourier coefficients. <br/></td></tr>
-<tr class="memitem:af36dbcf3d4f12bb85ac6c167aabf8768"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af36dbcf3d4f12bb85ac6c167aabf8768"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftf__plan.html#af36dbcf3d4f12bb85ac6c167aabf8768">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:af36dbcf3d4f12bb85ac6c167aabf8768"><td class="mdescLeft"> </td><td class="mdescRight">Measured time for each step if MEASURE_TIME is set. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00551">551</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfsftl__plan.html b/doc/api/html/structnfsftl__plan.html
deleted file mode 100644
index 4977cb8..0000000
--- a/doc/api/html/structnfsftl__plan.html
+++ /dev/null
@@ -1,98 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsftl_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfsftl_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a090c82bf91f18bc68a389c06fb347cec"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a090c82bf91f18bc68a389c06fb347cec"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#a090c82bf91f18bc68a389c06fb347cec">N_total</a></td></tr>
-<tr class="memdesc:a090c82bf91f18bc68a389c06fb347cec"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:aa1b43495afe03e88e419961428769246"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa1b43495afe03e88e419961428769246"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#aa1b43495afe03e88e419961428769246">M_total</a></td></tr>
-<tr class="memdesc:aa1b43495afe03e88e419961428769246"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ab9243951baccdf59de326cada1c08853"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab9243951baccdf59de326cada1c08853"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#ab9243951baccdf59de326cada1c08853">f_hat</a></td></tr>
-<tr class="memdesc:ab9243951baccdf59de326cada1c08853"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:ad27b30233039fea75a9e1bc885324f3d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad27b30233039fea75a9e1bc885324f3d"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#ad27b30233039fea75a9e1bc885324f3d">f</a></td></tr>
-<tr class="memdesc:ad27b30233039fea75a9e1bc885324f3d"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:ab1a7dae6c0f2b18d4eda2e32195bba95"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab1a7dae6c0f2b18d4eda2e32195bba95"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#ab1a7dae6c0f2b18d4eda2e32195bba95">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:ab1a7dae6c0f2b18d4eda2e32195bba95"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a162601fc8aa3248af806908e160d3c14"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a162601fc8aa3248af806908e160d3c14"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#a162601fc8aa3248af806908e160d3c14">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a162601fc8aa3248af806908e160d3c14"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a8740f26f76947fcc07a636002217a8db"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8740f26f76947fcc07a636002217a8db"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#a8740f26f76947fcc07a636002217a8db">N</a></td></tr>
-<tr class="memdesc:a8740f26f76947fcc07a636002217a8db"><td class="mdescLeft"> </td><td class="mdescRight">the bandwidth <img class="formulaInl" alt="$N$" src="form_5.png"/> <br/></td></tr>
-<tr class="memitem:a59d00d103ebc0746d9cbf2d49077dfe8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59d00d103ebc0746d9cbf2d49077dfe8"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#a59d00d103ebc0746d9cbf2d49077dfe8">x</a></td></tr>
-<tr class="memdesc:a59d00d103ebc0746d9cbf2d49077dfe8"><td class="mdescLeft"> </td><td class="mdescRight">the nodes <img class="formulaInl" alt="$\mathbf{x}(m) = \left(x_1,x_2\right) \in [-\frac{1}{2},\frac{1}{2}) \times [0,\frac{1}{2}]$" src="form_6.png"/> for <img class="formulaInl" alt="$m=0,\ldots, M-1$" src="form_7.png"/>, <img class="formulaInl" alt="$M \in \mathbb{N},$" src="form_8.png"/> <br/></td></tr>
-<tr class="memitem:af5ba15c85f29ea8ba05a03c2f2fc2611"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af5ba15c85f29ea8ba05a03c2f2fc2611"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#af5ba15c85f29ea8ba05a03c2f2fc2611">t</a></td></tr>
-<tr class="memdesc:af5ba15c85f29ea8ba05a03c2f2fc2611"><td class="mdescLeft"> </td><td class="mdescRight">the logarithm of NPT with respect to the basis 2 <br/></td></tr>
-<tr class="memitem:a15d53809b4f86c20e7fd99ea1b71efcb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a15d53809b4f86c20e7fd99ea1b71efcb"></a>
-unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#a15d53809b4f86c20e7fd99ea1b71efcb">flags</a></td></tr>
-<tr class="memdesc:a15d53809b4f86c20e7fd99ea1b71efcb"><td class="mdescLeft"> </td><td class="mdescRight">the planner flags <br/></td></tr>
-<tr class="memitem:a2c016b15b6b33c44b8218c43619ef784"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2c016b15b6b33c44b8218c43619ef784"></a>
-<a class="el" href="structnfftl__plan.html">nfftl_plan</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#a2c016b15b6b33c44b8218c43619ef784">plan_nfft</a></td></tr>
-<tr class="memdesc:a2c016b15b6b33c44b8218c43619ef784"><td class="mdescLeft"> </td><td class="mdescRight">the internal NFFT plan <br/></td></tr>
-<tr class="memitem:ab3914490d1c4767c0127783cac5098e4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab3914490d1c4767c0127783cac5098e4"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#ab3914490d1c4767c0127783cac5098e4">f_hat_intern</a></td></tr>
-<tr class="memdesc:ab3914490d1c4767c0127783cac5098e4"><td class="mdescLeft"> </td><td class="mdescRight">Internally used pointer to spherical Fourier coefficients. <br/></td></tr>
-<tr class="memitem:ae2870ad5b902cb4724c2ab47e5e012e1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae2870ad5b902cb4724c2ab47e5e012e1"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsftl__plan.html#ae2870ad5b902cb4724c2ab47e5e012e1">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:ae2870ad5b902cb4724c2ab47e5e012e1"><td class="mdescLeft"> </td><td class="mdescRight">Measured time for each step if MEASURE_TIME is set. <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00551">551</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfsoft__plan__.html b/doc/api/html/structnfsoft__plan__.html
deleted file mode 100644
index 36bbed3..0000000
--- a/doc/api/html/structnfsoft__plan__.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsoft_plan_ Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfsoft_plan_ Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:afe5be91eec76b382189f9bd45b36477e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afe5be91eec76b382189f9bd45b36477e"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#afe5be91eec76b382189f9bd45b36477e">N_total</a></td></tr>
-<tr class="memdesc:afe5be91eec76b382189f9bd45b36477e"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a7bfd60cd6391a97c141325fc090891b8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7bfd60cd6391a97c141325fc090891b8"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#a7bfd60cd6391a97c141325fc090891b8">M_total</a></td></tr>
-<tr class="memdesc:a7bfd60cd6391a97c141325fc090891b8"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a941c8dcaeeef8fed4b55c730d8fbdf80"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a941c8dcaeeef8fed4b55c730d8fbdf80"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#a941c8dcaeeef8fed4b55c730d8fbdf80">f_hat</a></td></tr>
-<tr class="memdesc:a941c8dcaeeef8fed4b55c730d8fbdf80"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a68290fc4238315c5cfacd4c0a08ee233"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a68290fc4238315c5cfacd4c0a08ee233"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#a68290fc4238315c5cfacd4c0a08ee233">f</a></td></tr>
-<tr class="memdesc:a68290fc4238315c5cfacd4c0a08ee233"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:ae7c72bdbce93cb99dcbd14d764d08502"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae7c72bdbce93cb99dcbd14d764d08502"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#ae7c72bdbce93cb99dcbd14d764d08502">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:ae7c72bdbce93cb99dcbd14d764d08502"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a33d5fb830b3021ddb85320139be034b8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33d5fb830b3021ddb85320139be034b8"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#a33d5fb830b3021ddb85320139be034b8">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a33d5fb830b3021ddb85320139be034b8"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:af194431b610fd2f9f003dff236398383"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af194431b610fd2f9f003dff236398383"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#af194431b610fd2f9f003dff236398383">x</a></td></tr>
-<tr class="memdesc:af194431b610fd2f9f003dff236398383"><td class="mdescLeft"> </td><td class="mdescRight">input nodes <br/></td></tr>
-<tr class="memitem:af6fb25c58e986915105c73009bdaa35c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af6fb25c58e986915105c73009bdaa35c"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#af6fb25c58e986915105c73009bdaa35c">wig_coeffs</a></td></tr>
-<tr class="memdesc:af6fb25c58e986915105c73009bdaa35c"><td class="mdescLeft"> </td><td class="mdescRight">contains a set of SO(3) Fourier coefficients for fixed orders m and n <br/></td></tr>
-<tr class="memitem:a729b20c0d30b649d6bff36734d34af7f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a729b20c0d30b649d6bff36734d34af7f"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#a729b20c0d30b649d6bff36734d34af7f">cheby</a></td></tr>
-<tr class="memdesc:a729b20c0d30b649d6bff36734d34af7f"><td class="mdescLeft"> </td><td class="mdescRight">contains a set of Chebychev coefficients for fixed orders m and n <br/></td></tr>
-<tr class="memitem:ae31e501405bebb72dcfe9831b34be76c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae31e501405bebb72dcfe9831b34be76c"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#ae31e501405bebb72dcfe9831b34be76c">aux</a></td></tr>
-<tr class="memdesc:ae31e501405bebb72dcfe9831b34be76c"><td class="mdescLeft"> </td><td class="mdescRight">used when converting Chebychev to Fourier coeffcients <br/></td></tr>
-<tr class="memitem:ab0b32ee063950ce38adc6b0e5e40af02"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab0b32ee063950ce38adc6b0e5e40af02"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#ab0b32ee063950ce38adc6b0e5e40af02">t</a></td></tr>
-<tr class="memdesc:ab0b32ee063950ce38adc6b0e5e40af02"><td class="mdescLeft"> </td><td class="mdescRight">the logaritm of NPT with respect to the basis 2 <br/></td></tr>
-<tr class="memitem:aad410ed6425a055fc9b948cfe0df2cca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad410ed6425a055fc9b948cfe0df2cca"></a>
-unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#aad410ed6425a055fc9b948cfe0df2cca">flags</a></td></tr>
-<tr class="memdesc:aad410ed6425a055fc9b948cfe0df2cca"><td class="mdescLeft"> </td><td class="mdescRight">the planner flags <br/></td></tr>
-<tr class="memitem:a06568ec06f0c56db50823c12f376061c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06568ec06f0c56db50823c12f376061c"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#a06568ec06f0c56db50823c12f376061c">p_nfft</a></td></tr>
-<tr class="memdesc:a06568ec06f0c56db50823c12f376061c"><td class="mdescLeft"> </td><td class="mdescRight">the internal NFFT plan <br/></td></tr>
-<tr class="memitem:a39a07d81bf6117dca5530d76beaf6b31"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a39a07d81bf6117dca5530d76beaf6b31"></a>
-<a class="el" href="nfft3_8h.html#a73d630ac21d6474ba0693f124d465e15">fpt_set</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoft__plan__.html#a39a07d81bf6117dca5530d76beaf6b31">internal_fpt_set</a></td></tr>
-<tr class="memdesc:a39a07d81bf6117dca5530d76beaf6b31"><td class="mdescLeft"> </td><td class="mdescRight">the internal FPT plan <br/></td></tr>
-<tr class="memitem:a65128958f30b266d01000b588069108b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a65128958f30b266d01000b588069108b"></a>
-int </td><td class="memItemRight" valign="bottom"><b>fpt_kappa</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00663">663</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfsoftf__plan__.html b/doc/api/html/structnfsoftf__plan__.html
deleted file mode 100644
index dc0a3b9..0000000
--- a/doc/api/html/structnfsoftf__plan__.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsoftf_plan_ Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfsoftf_plan_ Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:aa3a702dbaed1e34d090e23b75c9949d6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa3a702dbaed1e34d090e23b75c9949d6"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#aa3a702dbaed1e34d090e23b75c9949d6">N_total</a></td></tr>
-<tr class="memdesc:aa3a702dbaed1e34d090e23b75c9949d6"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a6fc89775998b5353b0f674b75b3638ae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6fc89775998b5353b0f674b75b3638ae"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a6fc89775998b5353b0f674b75b3638ae">M_total</a></td></tr>
-<tr class="memdesc:a6fc89775998b5353b0f674b75b3638ae"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:aa6990fedf1965a967f3f718dd373f543"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa6990fedf1965a967f3f718dd373f543"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#aa6990fedf1965a967f3f718dd373f543">f_hat</a></td></tr>
-<tr class="memdesc:aa6990fedf1965a967f3f718dd373f543"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:a165dc6360c20f9eb19a55872cc29455a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a165dc6360c20f9eb19a55872cc29455a"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a165dc6360c20f9eb19a55872cc29455a">f</a></td></tr>
-<tr class="memdesc:a165dc6360c20f9eb19a55872cc29455a"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:a0291622a1f08aff56cc126ca64364d85"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0291622a1f08aff56cc126ca64364d85"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a0291622a1f08aff56cc126ca64364d85">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a0291622a1f08aff56cc126ca64364d85"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a858269faf194eca2137b65f2a5a8c0fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a858269faf194eca2137b65f2a5a8c0fb"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a858269faf194eca2137b65f2a5a8c0fb">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a858269faf194eca2137b65f2a5a8c0fb"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a072fa8dcd38c95bec64c8e82af71afa7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a072fa8dcd38c95bec64c8e82af71afa7"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a072fa8dcd38c95bec64c8e82af71afa7">x</a></td></tr>
-<tr class="memdesc:a072fa8dcd38c95bec64c8e82af71afa7"><td class="mdescLeft"> </td><td class="mdescRight">input nodes <br/></td></tr>
-<tr class="memitem:a1d6f6e5b95a8f0ff13add5c23b382fb9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1d6f6e5b95a8f0ff13add5c23b382fb9"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a1d6f6e5b95a8f0ff13add5c23b382fb9">wig_coeffs</a></td></tr>
-<tr class="memdesc:a1d6f6e5b95a8f0ff13add5c23b382fb9"><td class="mdescLeft"> </td><td class="mdescRight">contains a set of SO(3) Fourier coefficients for fixed orders m and n <br/></td></tr>
-<tr class="memitem:a73e75b0a9f8ceebffe6923c90c04c312"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a73e75b0a9f8ceebffe6923c90c04c312"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a73e75b0a9f8ceebffe6923c90c04c312">cheby</a></td></tr>
-<tr class="memdesc:a73e75b0a9f8ceebffe6923c90c04c312"><td class="mdescLeft"> </td><td class="mdescRight">contains a set of Chebychev coefficients for fixed orders m and n <br/></td></tr>
-<tr class="memitem:a5f7c39509a2403a9bc17824be7a3c3a9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f7c39509a2403a9bc17824be7a3c3a9"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a5f7c39509a2403a9bc17824be7a3c3a9">aux</a></td></tr>
-<tr class="memdesc:a5f7c39509a2403a9bc17824be7a3c3a9"><td class="mdescLeft"> </td><td class="mdescRight">used when converting Chebychev to Fourier coeffcients <br/></td></tr>
-<tr class="memitem:a21641301ce6613d250e6d683c3fad9c2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a21641301ce6613d250e6d683c3fad9c2"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a21641301ce6613d250e6d683c3fad9c2">t</a></td></tr>
-<tr class="memdesc:a21641301ce6613d250e6d683c3fad9c2"><td class="mdescLeft"> </td><td class="mdescRight">the logaritm of NPT with respect to the basis 2 <br/></td></tr>
-<tr class="memitem:a55301d3525d6457aebd0237871dee668"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55301d3525d6457aebd0237871dee668"></a>
-unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a55301d3525d6457aebd0237871dee668">flags</a></td></tr>
-<tr class="memdesc:a55301d3525d6457aebd0237871dee668"><td class="mdescLeft"> </td><td class="mdescRight">the planner flags <br/></td></tr>
-<tr class="memitem:a1be8436a257f63ab4c27441bf714671d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1be8436a257f63ab4c27441bf714671d"></a>
-<a class="el" href="structnfftf__plan.html">nfftf_plan</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a1be8436a257f63ab4c27441bf714671d">p_nfft</a></td></tr>
-<tr class="memdesc:a1be8436a257f63ab4c27441bf714671d"><td class="mdescLeft"> </td><td class="mdescRight">the internal NFFT plan <br/></td></tr>
-<tr class="memitem:a686809f1397b113322b77ef50c8c0ef7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a686809f1397b113322b77ef50c8c0ef7"></a>
-<a class="el" href="nfft3_8h.html#a74cbbcba4b36c9272b3e1b309f574308">fptf_set</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftf__plan__.html#a686809f1397b113322b77ef50c8c0ef7">internal_fpt_set</a></td></tr>
-<tr class="memdesc:a686809f1397b113322b77ef50c8c0ef7"><td class="mdescLeft"> </td><td class="mdescRight">the internal FPT plan <br/></td></tr>
-<tr class="memitem:a8c90aea24c280766f06ec042e21d9bb9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8c90aea24c280766f06ec042e21d9bb9"></a>
-int </td><td class="memItemRight" valign="bottom"><b>fpt_kappa</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00663">663</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfsoftl__plan__.html b/doc/api/html/structnfsoftl__plan__.html
deleted file mode 100644
index 564aaa2..0000000
--- a/doc/api/html/structnfsoftl__plan__.html
+++ /dev/null
@@ -1,103 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfsoftl_plan_ Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfsoftl_plan_ Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a397e113cdbedc1e964657131c9a9dea3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a397e113cdbedc1e964657131c9a9dea3"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#a397e113cdbedc1e964657131c9a9dea3">N_total</a></td></tr>
-<tr class="memdesc:a397e113cdbedc1e964657131c9a9dea3"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a33cddd8977c92ba6641a1c4a18318fd6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a33cddd8977c92ba6641a1c4a18318fd6"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#a33cddd8977c92ba6641a1c4a18318fd6">M_total</a></td></tr>
-<tr class="memdesc:a33cddd8977c92ba6641a1c4a18318fd6"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ab280522456fe4f49ccb91d4aa195702d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab280522456fe4f49ccb91d4aa195702d"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#ab280522456fe4f49ccb91d4aa195702d">f_hat</a></td></tr>
-<tr class="memdesc:ab280522456fe4f49ccb91d4aa195702d"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:a62073b403c90aa2b527d5f62f190112e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a62073b403c90aa2b527d5f62f190112e"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#a62073b403c90aa2b527d5f62f190112e">f</a></td></tr>
-<tr class="memdesc:a62073b403c90aa2b527d5f62f190112e"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:aeab94862046b7688470f3f1d78ca927d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeab94862046b7688470f3f1d78ca927d"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#aeab94862046b7688470f3f1d78ca927d">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:aeab94862046b7688470f3f1d78ca927d"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a2f7123e0975b4a7cd693d01abf117949"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f7123e0975b4a7cd693d01abf117949"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#a2f7123e0975b4a7cd693d01abf117949">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a2f7123e0975b4a7cd693d01abf117949"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a92211c64713d72c3d3cf45ac39601214"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a92211c64713d72c3d3cf45ac39601214"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#a92211c64713d72c3d3cf45ac39601214">x</a></td></tr>
-<tr class="memdesc:a92211c64713d72c3d3cf45ac39601214"><td class="mdescLeft"> </td><td class="mdescRight">input nodes <br/></td></tr>
-<tr class="memitem:a452e16848e81fd0b072d4e3347345455"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a452e16848e81fd0b072d4e3347345455"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#a452e16848e81fd0b072d4e3347345455">wig_coeffs</a></td></tr>
-<tr class="memdesc:a452e16848e81fd0b072d4e3347345455"><td class="mdescLeft"> </td><td class="mdescRight">contains a set of SO(3) Fourier coefficients for fixed orders m and n <br/></td></tr>
-<tr class="memitem:a681110b5c15effe7ef2781249e049119"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a681110b5c15effe7ef2781249e049119"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#a681110b5c15effe7ef2781249e049119">cheby</a></td></tr>
-<tr class="memdesc:a681110b5c15effe7ef2781249e049119"><td class="mdescLeft"> </td><td class="mdescRight">contains a set of Chebychev coefficients for fixed orders m and n <br/></td></tr>
-<tr class="memitem:ae669348fbbb187c8c521f6a89c8f3720"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae669348fbbb187c8c521f6a89c8f3720"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#ae669348fbbb187c8c521f6a89c8f3720">aux</a></td></tr>
-<tr class="memdesc:ae669348fbbb187c8c521f6a89c8f3720"><td class="mdescLeft"> </td><td class="mdescRight">used when converting Chebychev to Fourier coeffcients <br/></td></tr>
-<tr class="memitem:acd18e8a2b89aacd8034b49033449f979"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd18e8a2b89aacd8034b49033449f979"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#acd18e8a2b89aacd8034b49033449f979">t</a></td></tr>
-<tr class="memdesc:acd18e8a2b89aacd8034b49033449f979"><td class="mdescLeft"> </td><td class="mdescRight">the logaritm of NPT with respect to the basis 2 <br/></td></tr>
-<tr class="memitem:a2f236235168535b9f9833bcc7e50e695"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f236235168535b9f9833bcc7e50e695"></a>
-unsigned int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#a2f236235168535b9f9833bcc7e50e695">flags</a></td></tr>
-<tr class="memdesc:a2f236235168535b9f9833bcc7e50e695"><td class="mdescLeft"> </td><td class="mdescRight">the planner flags <br/></td></tr>
-<tr class="memitem:ac1230a81665ed7aa68cb7b4bc3a0c0c1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac1230a81665ed7aa68cb7b4bc3a0c0c1"></a>
-<a class="el" href="structnfftl__plan.html">nfftl_plan</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#ac1230a81665ed7aa68cb7b4bc3a0c0c1">p_nfft</a></td></tr>
-<tr class="memdesc:ac1230a81665ed7aa68cb7b4bc3a0c0c1"><td class="mdescLeft"> </td><td class="mdescRight">the internal NFFT plan <br/></td></tr>
-<tr class="memitem:a8cf750d58de22209962bd9cb96f48864"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8cf750d58de22209962bd9cb96f48864"></a>
-<a class="el" href="nfft3_8h.html#afa0a822edf2abbd8e1ab2cd0afd72efa">fptl_set</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfsoftl__plan__.html#a8cf750d58de22209962bd9cb96f48864">internal_fpt_set</a></td></tr>
-<tr class="memdesc:a8cf750d58de22209962bd9cb96f48864"><td class="mdescLeft"> </td><td class="mdescRight">the internal FPT plan <br/></td></tr>
-<tr class="memitem:a5738717c7006e1756863debb43395d5a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5738717c7006e1756863debb43395d5a"></a>
-int </td><td class="memItemRight" valign="bottom"><b>fpt_kappa</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00663">663</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfst__plan.html b/doc/api/html/structnfst__plan.html
deleted file mode 100644
index 0bb56af..0000000
--- a/doc/api/html/structnfst__plan.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfst_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfst_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:ac3c18cc4dec9293352c508e9999ebf05"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac3c18cc4dec9293352c508e9999ebf05"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#ac3c18cc4dec9293352c508e9999ebf05">FFTW_MANGLE_DOUBLE</a> (plan) my_fftw_r2r_plan</td></tr>
-<tr class="memdesc:ac3c18cc4dec9293352c508e9999ebf05"><td class="mdescLeft"> </td><td class="mdescRight">fftw_plan forward <br/></td></tr>
-<tr class="memitem:abeeca1317cee53206b64c79f3de094c2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abeeca1317cee53206b64c79f3de094c2"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#abeeca1317cee53206b64c79f3de094c2">FFTW_MANGLE_DOUBLE</a> (r2r_kind)*r2r_kind</td></tr>
-<tr class="memdesc:abeeca1317cee53206b64c79f3de094c2"><td class="mdescLeft"> </td><td class="mdescRight">r2r transform type (dct-i) <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a5622220bff0d3174b4dcae2a91313eed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5622220bff0d3174b4dcae2a91313eed"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a5622220bff0d3174b4dcae2a91313eed">N_total</a></td></tr>
-<tr class="memdesc:a5622220bff0d3174b4dcae2a91313eed"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a3bf0f56c279404b80e795daf944d3d98"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3bf0f56c279404b80e795daf944d3d98"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a3bf0f56c279404b80e795daf944d3d98">M_total</a></td></tr>
-<tr class="memdesc:a3bf0f56c279404b80e795daf944d3d98"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a8e7ed6ed137f58dea8f3871d959f8d9c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8e7ed6ed137f58dea8f3871d959f8d9c"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a8e7ed6ed137f58dea8f3871d959f8d9c">f_hat</a></td></tr>
-<tr class="memdesc:a8e7ed6ed137f58dea8f3871d959f8d9c"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( double ) <br/></td></tr>
-<tr class="memitem:a314e2d828775d6aa93a26d7c40b7b931"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a314e2d828775d6aa93a26d7c40b7b931"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a314e2d828775d6aa93a26d7c40b7b931">f</a></td></tr>
-<tr class="memdesc:a314e2d828775d6aa93a26d7c40b7b931"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( double ) <br/></td></tr>
-<tr class="memitem:a4a3b2ecc26204b3087d1c19b7857943f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4a3b2ecc26204b3087d1c19b7857943f"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a4a3b2ecc26204b3087d1c19b7857943f">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a4a3b2ecc26204b3087d1c19b7857943f"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:aedfe6da9afb5dc0457cc4f2197034fc0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aedfe6da9afb5dc0457cc4f2197034fc0"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#aedfe6da9afb5dc0457cc4f2197034fc0">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:aedfe6da9afb5dc0457cc4f2197034fc0"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:aef00c63a4810c8e5b0eb4839d2c6abc8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aef00c63a4810c8e5b0eb4839d2c6abc8"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#aef00c63a4810c8e5b0eb4839d2c6abc8">d</a></td></tr>
-<tr class="memdesc:aef00c63a4810c8e5b0eb4839d2c6abc8"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank <br/></td></tr>
-<tr class="memitem:ac0ddde49b376d65b38d3cf1583cb0f6b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac0ddde49b376d65b38d3cf1583cb0f6b"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#ac0ddde49b376d65b38d3cf1583cb0f6b">N</a></td></tr>
-<tr class="memdesc:ac0ddde49b376d65b38d3cf1583cb0f6b"><td class="mdescLeft"> </td><td class="mdescRight">bandwidth <br/></td></tr>
-<tr class="memitem:abee0aa8e104775a5b898715ea28703d2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abee0aa8e104775a5b898715ea28703d2"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#abee0aa8e104775a5b898715ea28703d2">n</a></td></tr>
-<tr class="memdesc:abee0aa8e104775a5b898715ea28703d2"><td class="mdescLeft"> </td><td class="mdescRight">length of DST-1 <br/></td></tr>
-<tr class="memitem:a7a8028a0e7348e5fa7717eebf07b76d1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7a8028a0e7348e5fa7717eebf07b76d1"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a7a8028a0e7348e5fa7717eebf07b76d1">sigma</a></td></tr>
-<tr class="memdesc:a7a8028a0e7348e5fa7717eebf07b76d1"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:ac3aacf128a897c132809411ef9d41d7d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac3aacf128a897c132809411ef9d41d7d"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#ac3aacf128a897c132809411ef9d41d7d">m</a></td></tr>
-<tr class="memdesc:ac3aacf128a897c132809411ef9d41d7d"><td class="mdescLeft"> </td><td class="mdescRight">cut-off parameter in time-domain <br/></td></tr>
-<tr class="memitem:a255445e279e22fb6224821011e117a7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a255445e279e22fb6224821011e117a7c"></a>
-double </td><td class="memItemRight" valign="bottom"><b>nfst_full_psi_eps</b></td></tr>
-<tr class="memitem:a49927bec2aa96ab8596740011fabb914"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a49927bec2aa96ab8596740011fabb914"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a49927bec2aa96ab8596740011fabb914">b</a></td></tr>
-<tr class="memdesc:a49927bec2aa96ab8596740011fabb914"><td class="mdescLeft"> </td><td class="mdescRight">shape parameters <br/></td></tr>
-<tr class="memitem:a2c43b9c7625ed9eb42223de391c048c9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2c43b9c7625ed9eb42223de391c048c9"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a2c43b9c7625ed9eb42223de391c048c9">nfst_flags</a></td></tr>
-<tr class="memdesc:a2c43b9c7625ed9eb42223de391c048c9"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:a69d37e02b7a2868e3861c582e76e35d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a69d37e02b7a2868e3861c582e76e35d8"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a69d37e02b7a2868e3861c582e76e35d8">fftw_flags</a></td></tr>
-<tr class="memdesc:a69d37e02b7a2868e3861c582e76e35d8"><td class="mdescLeft"> </td><td class="mdescRight">flags for the fftw <br/></td></tr>
-<tr class="memitem:a048ebad4f2abe3821988fa06a5e308d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a048ebad4f2abe3821988fa06a5e308d8"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a048ebad4f2abe3821988fa06a5e308d8">x</a></td></tr>
-<tr class="memdesc:a048ebad4f2abe3821988fa06a5e308d8"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in time/spatial domain) <br/></td></tr>
-<tr class="memitem:a74e5be807909e0a443ea9b48e0a7da4b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74e5be807909e0a443ea9b48e0a7da4b"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a74e5be807909e0a443ea9b48e0a7da4b">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:a74e5be807909e0a443ea9b48e0a7da4b"><td class="mdescLeft"> </td><td class="mdescRight">measured time for each step <br/></td></tr>
-<tr class="memitem:a2c42ae2c8ca95bb4c0c1dfc279bc2cab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2c42ae2c8ca95bb4c0c1dfc279bc2cab"></a>
-double ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a2c42ae2c8ca95bb4c0c1dfc279bc2cab">c_phi_inv</a></td></tr>
-<tr class="memdesc:a2c42ae2c8ca95bb4c0c1dfc279bc2cab"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix D <br/></td></tr>
-<tr class="memitem:a59c1ef7493650838cf31086a46ff2e3f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59c1ef7493650838cf31086a46ff2e3f"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a59c1ef7493650838cf31086a46ff2e3f">psi</a></td></tr>
-<tr class="memdesc:a59c1ef7493650838cf31086a46ff2e3f"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix B <br/></td></tr>
-<tr class="memitem:a1780e54f9fed43e92c22a1e70274e7ad"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1780e54f9fed43e92c22a1e70274e7ad"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a1780e54f9fed43e92c22a1e70274e7ad">size_psi</a></td></tr>
-<tr class="memdesc:a1780e54f9fed43e92c22a1e70274e7ad"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a2d2a4a4d3c7ff12f35045b5466f41811"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2d2a4a4d3c7ff12f35045b5466f41811"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a2d2a4a4d3c7ff12f35045b5466f41811">psi_index_g</a></td></tr>
-<tr class="memdesc:a2d2a4a4d3c7ff12f35045b5466f41811"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a028609e96fa5f10d4197e4b50312180c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a028609e96fa5f10d4197e4b50312180c"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a028609e96fa5f10d4197e4b50312180c">psi_index_f</a></td></tr>
-<tr class="memdesc:a028609e96fa5f10d4197e4b50312180c"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a7aef31878adb193e3b3741feb21d4455"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7aef31878adb193e3b3741feb21d4455"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>g</b></td></tr>
-<tr class="memitem:a1838fdef7d9a2c8b0a77f6d3f90cf687"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1838fdef7d9a2c8b0a77f6d3f90cf687"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>g_hat</b></td></tr>
-<tr class="memitem:a06cd5d11b13d590c9ab3a88d93b21fb2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a06cd5d11b13d590c9ab3a88d93b21fb2"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a06cd5d11b13d590c9ab3a88d93b21fb2">g1</a></td></tr>
-<tr class="memdesc:a06cd5d11b13d590c9ab3a88d93b21fb2"><td class="mdescLeft"> </td><td class="mdescRight">input of fftw <br/></td></tr>
-<tr class="memitem:a7b67e2cf657227ae46d13fa239d534f7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7b67e2cf657227ae46d13fa239d534f7"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a7b67e2cf657227ae46d13fa239d534f7">g2</a></td></tr>
-<tr class="memdesc:a7b67e2cf657227ae46d13fa239d534f7"><td class="mdescLeft"> </td><td class="mdescRight">output of fftw <br/></td></tr>
-<tr class="memitem:a23bec4401a652efc87ee6781061c9363"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a23bec4401a652efc87ee6781061c9363"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfst__plan.html#a23bec4401a652efc87ee6781061c9363">spline_coeffs</a></td></tr>
-<tr class="memdesc:a23bec4401a652efc87ee6781061c9363"><td class="mdescLeft"> </td><td class="mdescRight">input for de Boor algorithm, if B_SPLINE or SINC_2m is defined <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00338">338</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfstf__plan.html b/doc/api/html/structnfstf__plan.html
deleted file mode 100644
index b250a65..0000000
--- a/doc/api/html/structnfstf__plan.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfstf_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfstf_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:ad4f44281f0c352fc630442cb40597983"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad4f44281f0c352fc630442cb40597983"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#ad4f44281f0c352fc630442cb40597983">FFTW_MANGLE_FLOAT</a> (plan) my_fftw_r2r_plan</td></tr>
-<tr class="memdesc:ad4f44281f0c352fc630442cb40597983"><td class="mdescLeft"> </td><td class="mdescRight">fftw_plan forward <br/></td></tr>
-<tr class="memitem:a013fbbcfb64ef4d8f0cc7345e584fa92"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a013fbbcfb64ef4d8f0cc7345e584fa92"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a013fbbcfb64ef4d8f0cc7345e584fa92">FFTW_MANGLE_FLOAT</a> (r2r_kind)*r2r_kind</td></tr>
-<tr class="memdesc:a013fbbcfb64ef4d8f0cc7345e584fa92"><td class="mdescLeft"> </td><td class="mdescRight">r2r transform type (dct-i) <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:aea7fa284fa9aaa4e264c9c07844b5442"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aea7fa284fa9aaa4e264c9c07844b5442"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#aea7fa284fa9aaa4e264c9c07844b5442">N_total</a></td></tr>
-<tr class="memdesc:aea7fa284fa9aaa4e264c9c07844b5442"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a936082c69e582e36fb51ae452cd08fc3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a936082c69e582e36fb51ae452cd08fc3"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a936082c69e582e36fb51ae452cd08fc3">M_total</a></td></tr>
-<tr class="memdesc:a936082c69e582e36fb51ae452cd08fc3"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ab57019bf0a7274b5a6f401fe2f6bcf2b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab57019bf0a7274b5a6f401fe2f6bcf2b"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#ab57019bf0a7274b5a6f401fe2f6bcf2b">f_hat</a></td></tr>
-<tr class="memdesc:ab57019bf0a7274b5a6f401fe2f6bcf2b"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( float ) <br/></td></tr>
-<tr class="memitem:a178dae9cc4b5869ef69fd148efe14f93"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a178dae9cc4b5869ef69fd148efe14f93"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a178dae9cc4b5869ef69fd148efe14f93">f</a></td></tr>
-<tr class="memdesc:a178dae9cc4b5869ef69fd148efe14f93"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( float ) <br/></td></tr>
-<tr class="memitem:aa960f82c35501acf5237b5ed49f7fe57"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa960f82c35501acf5237b5ed49f7fe57"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#aa960f82c35501acf5237b5ed49f7fe57">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:aa960f82c35501acf5237b5ed49f7fe57"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a604a83ef64c291c6f8b23d45f620f2c7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a604a83ef64c291c6f8b23d45f620f2c7"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a604a83ef64c291c6f8b23d45f620f2c7">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a604a83ef64c291c6f8b23d45f620f2c7"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:aa792b04cd0fa4f09175773aaa48f6a69"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa792b04cd0fa4f09175773aaa48f6a69"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#aa792b04cd0fa4f09175773aaa48f6a69">d</a></td></tr>
-<tr class="memdesc:aa792b04cd0fa4f09175773aaa48f6a69"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank <br/></td></tr>
-<tr class="memitem:a3c13e4fbc7dba10012ac853e2cde12d0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c13e4fbc7dba10012ac853e2cde12d0"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a3c13e4fbc7dba10012ac853e2cde12d0">N</a></td></tr>
-<tr class="memdesc:a3c13e4fbc7dba10012ac853e2cde12d0"><td class="mdescLeft"> </td><td class="mdescRight">bandwidth <br/></td></tr>
-<tr class="memitem:ade7cdc871c9633a324774001bd809f49"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ade7cdc871c9633a324774001bd809f49"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#ade7cdc871c9633a324774001bd809f49">n</a></td></tr>
-<tr class="memdesc:ade7cdc871c9633a324774001bd809f49"><td class="mdescLeft"> </td><td class="mdescRight">length of DST-1 <br/></td></tr>
-<tr class="memitem:a8d8b3093a73c09aac44cd8f55708ef27"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8d8b3093a73c09aac44cd8f55708ef27"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a8d8b3093a73c09aac44cd8f55708ef27">sigma</a></td></tr>
-<tr class="memdesc:a8d8b3093a73c09aac44cd8f55708ef27"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a6d228a85b702490f205c8983c15e33fe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6d228a85b702490f205c8983c15e33fe"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a6d228a85b702490f205c8983c15e33fe">m</a></td></tr>
-<tr class="memdesc:a6d228a85b702490f205c8983c15e33fe"><td class="mdescLeft"> </td><td class="mdescRight">cut-off parameter in time-domain <br/></td></tr>
-<tr class="memitem:aec1470b7592bf2e11f0dc53e22b5ebd9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aec1470b7592bf2e11f0dc53e22b5ebd9"></a>
-float </td><td class="memItemRight" valign="bottom"><b>nfst_full_psi_eps</b></td></tr>
-<tr class="memitem:a2ca69cf1b6dea39e81cba93d0d1667d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ca69cf1b6dea39e81cba93d0d1667d8"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a2ca69cf1b6dea39e81cba93d0d1667d8">b</a></td></tr>
-<tr class="memdesc:a2ca69cf1b6dea39e81cba93d0d1667d8"><td class="mdescLeft"> </td><td class="mdescRight">shape parameters <br/></td></tr>
-<tr class="memitem:aa23ef32254d98b76dfadbe7fa439f8c3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa23ef32254d98b76dfadbe7fa439f8c3"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#aa23ef32254d98b76dfadbe7fa439f8c3">nfst_flags</a></td></tr>
-<tr class="memdesc:aa23ef32254d98b76dfadbe7fa439f8c3"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:a9da018cd24e707e57ed0c8cac82f5301"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9da018cd24e707e57ed0c8cac82f5301"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a9da018cd24e707e57ed0c8cac82f5301">fftw_flags</a></td></tr>
-<tr class="memdesc:a9da018cd24e707e57ed0c8cac82f5301"><td class="mdescLeft"> </td><td class="mdescRight">flags for the fftw <br/></td></tr>
-<tr class="memitem:ad0d1772e5947f4395cbfa0fc2ed39018"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad0d1772e5947f4395cbfa0fc2ed39018"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#ad0d1772e5947f4395cbfa0fc2ed39018">x</a></td></tr>
-<tr class="memdesc:ad0d1772e5947f4395cbfa0fc2ed39018"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in time/spatial domain) <br/></td></tr>
-<tr class="memitem:a369d8545639fccbf73f9daf7dcb94fe8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a369d8545639fccbf73f9daf7dcb94fe8"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a369d8545639fccbf73f9daf7dcb94fe8">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:a369d8545639fccbf73f9daf7dcb94fe8"><td class="mdescLeft"> </td><td class="mdescRight">measured time for each step <br/></td></tr>
-<tr class="memitem:a9d59ca4338fe39f2e22f4e5d3155deba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9d59ca4338fe39f2e22f4e5d3155deba"></a>
-float ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a9d59ca4338fe39f2e22f4e5d3155deba">c_phi_inv</a></td></tr>
-<tr class="memdesc:a9d59ca4338fe39f2e22f4e5d3155deba"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix D <br/></td></tr>
-<tr class="memitem:a96d6ede1036cae0a4df7fbf7ba7b8034"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a96d6ede1036cae0a4df7fbf7ba7b8034"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a96d6ede1036cae0a4df7fbf7ba7b8034">psi</a></td></tr>
-<tr class="memdesc:a96d6ede1036cae0a4df7fbf7ba7b8034"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix B <br/></td></tr>
-<tr class="memitem:a4c9f0923fcf290197cee1550dc9a3665"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c9f0923fcf290197cee1550dc9a3665"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a4c9f0923fcf290197cee1550dc9a3665">size_psi</a></td></tr>
-<tr class="memdesc:a4c9f0923fcf290197cee1550dc9a3665"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a3ece0ce2dd8ad2e41852ac59df3ad481"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3ece0ce2dd8ad2e41852ac59df3ad481"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a3ece0ce2dd8ad2e41852ac59df3ad481">psi_index_g</a></td></tr>
-<tr class="memdesc:a3ece0ce2dd8ad2e41852ac59df3ad481"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:ad20fa3e6bdb829247c3585639a0b086d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad20fa3e6bdb829247c3585639a0b086d"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#ad20fa3e6bdb829247c3585639a0b086d">psi_index_f</a></td></tr>
-<tr class="memdesc:ad20fa3e6bdb829247c3585639a0b086d"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:afa9db1e0c10c4eaf94864be816839391"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa9db1e0c10c4eaf94864be816839391"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>g</b></td></tr>
-<tr class="memitem:a84a630a187fdba4ea9eb948c706d9cf9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a84a630a187fdba4ea9eb948c706d9cf9"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>g_hat</b></td></tr>
-<tr class="memitem:a279687997f16d0fb839928f472307b39"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a279687997f16d0fb839928f472307b39"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a279687997f16d0fb839928f472307b39">g1</a></td></tr>
-<tr class="memdesc:a279687997f16d0fb839928f472307b39"><td class="mdescLeft"> </td><td class="mdescRight">input of fftw <br/></td></tr>
-<tr class="memitem:a11f05420be226a83aed2e8c41a1b9bd3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a11f05420be226a83aed2e8c41a1b9bd3"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a11f05420be226a83aed2e8c41a1b9bd3">g2</a></td></tr>
-<tr class="memdesc:a11f05420be226a83aed2e8c41a1b9bd3"><td class="mdescLeft"> </td><td class="mdescRight">output of fftw <br/></td></tr>
-<tr class="memitem:a64c5addda16e3d789184af183900db21"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a64c5addda16e3d789184af183900db21"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstf__plan.html#a64c5addda16e3d789184af183900db21">spline_coeffs</a></td></tr>
-<tr class="memdesc:a64c5addda16e3d789184af183900db21"><td class="mdescLeft"> </td><td class="mdescRight">input for de Boor algorithm, if B_SPLINE or SINC_2m is defined <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00338">338</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnfstl__plan.html b/doc/api/html/structnfstl__plan.html
deleted file mode 100644
index 2c4fd75..0000000
--- a/doc/api/html/structnfstl__plan.html
+++ /dev/null
@@ -1,147 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nfstl_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nfstl_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:a2c07f20560a3969129916e3d30239227"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2c07f20560a3969129916e3d30239227"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a2c07f20560a3969129916e3d30239227">FFTW_MANGLE_LONG_DOUBLE</a> (plan) my_fftw_r2r_plan</td></tr>
-<tr class="memdesc:a2c07f20560a3969129916e3d30239227"><td class="mdescLeft"> </td><td class="mdescRight">fftw_plan forward <br/></td></tr>
-<tr class="memitem:a6285132e89913685bc2f7366fd79e769"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6285132e89913685bc2f7366fd79e769"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a6285132e89913685bc2f7366fd79e769">FFTW_MANGLE_LONG_DOUBLE</a> (r2r_kind)*r2r_kind</td></tr>
-<tr class="memdesc:a6285132e89913685bc2f7366fd79e769"><td class="mdescLeft"> </td><td class="mdescRight">r2r transform type (dct-i) <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a87f57bdfd9ba4415370ec796329cc1de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87f57bdfd9ba4415370ec796329cc1de"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a87f57bdfd9ba4415370ec796329cc1de">N_total</a></td></tr>
-<tr class="memdesc:a87f57bdfd9ba4415370ec796329cc1de"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:ae4d5aeae7ea312bf70720bafd4fb3882"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae4d5aeae7ea312bf70720bafd4fb3882"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#ae4d5aeae7ea312bf70720bafd4fb3882">M_total</a></td></tr>
-<tr class="memdesc:ae4d5aeae7ea312bf70720bafd4fb3882"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:aa0a56037700b7a3d428c77e353dc209e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0a56037700b7a3d428c77e353dc209e"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#aa0a56037700b7a3d428c77e353dc209e">f_hat</a></td></tr>
-<tr class="memdesc:aa0a56037700b7a3d428c77e353dc209e"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( long double ) <br/></td></tr>
-<tr class="memitem:ad4f7ff9f286c0203712d5f16b21e9e4e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad4f7ff9f286c0203712d5f16b21e9e4e"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#ad4f7ff9f286c0203712d5f16b21e9e4e">f</a></td></tr>
-<tr class="memdesc:ad4f7ff9f286c0203712d5f16b21e9e4e"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( long double ) <br/></td></tr>
-<tr class="memitem:adbe7e6be1061160223c10b6567efda40"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adbe7e6be1061160223c10b6567efda40"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#adbe7e6be1061160223c10b6567efda40">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:adbe7e6be1061160223c10b6567efda40"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a1eca782b8267b78a6effc382c0a5b9f4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1eca782b8267b78a6effc382c0a5b9f4"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a1eca782b8267b78a6effc382c0a5b9f4">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a1eca782b8267b78a6effc382c0a5b9f4"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a66ac609113d5f8debb056f3c62f6b14b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a66ac609113d5f8debb056f3c62f6b14b"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a66ac609113d5f8debb056f3c62f6b14b">d</a></td></tr>
-<tr class="memdesc:a66ac609113d5f8debb056f3c62f6b14b"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank <br/></td></tr>
-<tr class="memitem:a83b7013eb7ce3b1743ba45a2546a36c0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a83b7013eb7ce3b1743ba45a2546a36c0"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a83b7013eb7ce3b1743ba45a2546a36c0">N</a></td></tr>
-<tr class="memdesc:a83b7013eb7ce3b1743ba45a2546a36c0"><td class="mdescLeft"> </td><td class="mdescRight">bandwidth <br/></td></tr>
-<tr class="memitem:a10456ed98cb22787f2469e1d20903c8c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a10456ed98cb22787f2469e1d20903c8c"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a10456ed98cb22787f2469e1d20903c8c">n</a></td></tr>
-<tr class="memdesc:a10456ed98cb22787f2469e1d20903c8c"><td class="mdescLeft"> </td><td class="mdescRight">length of DST-1 <br/></td></tr>
-<tr class="memitem:a3c50de01911ed86a66d15ecd79874e21"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c50de01911ed86a66d15ecd79874e21"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a3c50de01911ed86a66d15ecd79874e21">sigma</a></td></tr>
-<tr class="memdesc:a3c50de01911ed86a66d15ecd79874e21"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a55a5e4a962d8e01d7c0282f916bacb8c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55a5e4a962d8e01d7c0282f916bacb8c"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a55a5e4a962d8e01d7c0282f916bacb8c">m</a></td></tr>
-<tr class="memdesc:a55a5e4a962d8e01d7c0282f916bacb8c"><td class="mdescLeft"> </td><td class="mdescRight">cut-off parameter in time-domain <br/></td></tr>
-<tr class="memitem:ab730bc710eda01bdb01d1b4b5bfd91e5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab730bc710eda01bdb01d1b4b5bfd91e5"></a>
-long double </td><td class="memItemRight" valign="bottom"><b>nfst_full_psi_eps</b></td></tr>
-<tr class="memitem:a8378f952b6e05cd58225877eee84f2e7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8378f952b6e05cd58225877eee84f2e7"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a8378f952b6e05cd58225877eee84f2e7">b</a></td></tr>
-<tr class="memdesc:a8378f952b6e05cd58225877eee84f2e7"><td class="mdescLeft"> </td><td class="mdescRight">shape parameters <br/></td></tr>
-<tr class="memitem:a15bb194b8a4fe39aca1b5be9f38d7175"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a15bb194b8a4fe39aca1b5be9f38d7175"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a15bb194b8a4fe39aca1b5be9f38d7175">nfst_flags</a></td></tr>
-<tr class="memdesc:a15bb194b8a4fe39aca1b5be9f38d7175"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:a0ab6b3ec18b7e0685277d5f6997aa54c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ab6b3ec18b7e0685277d5f6997aa54c"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a0ab6b3ec18b7e0685277d5f6997aa54c">fftw_flags</a></td></tr>
-<tr class="memdesc:a0ab6b3ec18b7e0685277d5f6997aa54c"><td class="mdescLeft"> </td><td class="mdescRight">flags for the fftw <br/></td></tr>
-<tr class="memitem:af663d590a277872d6e0e777cb410edbb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af663d590a277872d6e0e777cb410edbb"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#af663d590a277872d6e0e777cb410edbb">x</a></td></tr>
-<tr class="memdesc:af663d590a277872d6e0e777cb410edbb"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in time/spatial domain) <br/></td></tr>
-<tr class="memitem:a47c6a3aba310b4f18d7ba5a7107fc168"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a47c6a3aba310b4f18d7ba5a7107fc168"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a47c6a3aba310b4f18d7ba5a7107fc168">MEASURE_TIME_t</a> [3]</td></tr>
-<tr class="memdesc:a47c6a3aba310b4f18d7ba5a7107fc168"><td class="mdescLeft"> </td><td class="mdescRight">measured time for each step <br/></td></tr>
-<tr class="memitem:a7fdb409271e18f5dec1ac622af10d32a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7fdb409271e18f5dec1ac622af10d32a"></a>
-long double ** </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a7fdb409271e18f5dec1ac622af10d32a">c_phi_inv</a></td></tr>
-<tr class="memdesc:a7fdb409271e18f5dec1ac622af10d32a"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix D <br/></td></tr>
-<tr class="memitem:a3fb3fd27fa2c3c907c4f1e05a183598d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3fb3fd27fa2c3c907c4f1e05a183598d"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a3fb3fd27fa2c3c907c4f1e05a183598d">psi</a></td></tr>
-<tr class="memdesc:a3fb3fd27fa2c3c907c4f1e05a183598d"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix B <br/></td></tr>
-<tr class="memitem:a975ebfbce1679c3ad3d8cc06e81c5645"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a975ebfbce1679c3ad3d8cc06e81c5645"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a975ebfbce1679c3ad3d8cc06e81c5645">size_psi</a></td></tr>
-<tr class="memdesc:a975ebfbce1679c3ad3d8cc06e81c5645"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a773fbd9160ac14e6972a4b5be1b5113d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a773fbd9160ac14e6972a4b5be1b5113d"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a773fbd9160ac14e6972a4b5be1b5113d">psi_index_g</a></td></tr>
-<tr class="memdesc:a773fbd9160ac14e6972a4b5be1b5113d"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a46d8f0fefc63d3ba6f1811f41bc9a7d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a46d8f0fefc63d3ba6f1811f41bc9a7d8"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a46d8f0fefc63d3ba6f1811f41bc9a7d8">psi_index_f</a></td></tr>
-<tr class="memdesc:a46d8f0fefc63d3ba6f1811f41bc9a7d8"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a375013685c82f0bd1ee2260a1b247ab4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a375013685c82f0bd1ee2260a1b247ab4"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>g</b></td></tr>
-<tr class="memitem:af08d6d6a6f54e44d7f83f418bddfc605"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af08d6d6a6f54e44d7f83f418bddfc605"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>g_hat</b></td></tr>
-<tr class="memitem:ac54e606a9b0c7c6b526fb3d44d28482a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac54e606a9b0c7c6b526fb3d44d28482a"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#ac54e606a9b0c7c6b526fb3d44d28482a">g1</a></td></tr>
-<tr class="memdesc:ac54e606a9b0c7c6b526fb3d44d28482a"><td class="mdescLeft"> </td><td class="mdescRight">input of fftw <br/></td></tr>
-<tr class="memitem:a0e91b301bcd4ce83aecdda2b0f7712ed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0e91b301bcd4ce83aecdda2b0f7712ed"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a0e91b301bcd4ce83aecdda2b0f7712ed">g2</a></td></tr>
-<tr class="memdesc:a0e91b301bcd4ce83aecdda2b0f7712ed"><td class="mdescLeft"> </td><td class="mdescRight">output of fftw <br/></td></tr>
-<tr class="memitem:a7abc2fedc757d9b2b5f985377f99bfe7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7abc2fedc757d9b2b5f985377f99bfe7"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnfstl__plan.html#a7abc2fedc757d9b2b5f985377f99bfe7">spline_coeffs</a></td></tr>
-<tr class="memdesc:a7abc2fedc757d9b2b5f985377f99bfe7"><td class="mdescLeft"> </td><td class="mdescRight">input for de Boor algorithm, if B_SPLINE or SINC_2m is defined <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00338">338</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnnfft__plan.html b/doc/api/html/structnnfft__plan.html
deleted file mode 100644
index 991049e..0000000
--- a/doc/api/html/structnnfft__plan.html
+++ /dev/null
@@ -1,177 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nnfft_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nnfft_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a2ea309e4dfb994f4a9fe86d1440cafa2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ea309e4dfb994f4a9fe86d1440cafa2"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a2ea309e4dfb994f4a9fe86d1440cafa2">N_total</a></td></tr>
-<tr class="memdesc:a2ea309e4dfb994f4a9fe86d1440cafa2"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a5e60b36fd90e44a68a72f129a2b4be6c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5e60b36fd90e44a68a72f129a2b4be6c"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a5e60b36fd90e44a68a72f129a2b4be6c">M_total</a></td></tr>
-<tr class="memdesc:a5e60b36fd90e44a68a72f129a2b4be6c"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ab13f0f93fe991a5831ff78312f9b9e4b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab13f0f93fe991a5831ff78312f9b9e4b"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#ab13f0f93fe991a5831ff78312f9b9e4b">f_hat</a></td></tr>
-<tr class="memdesc:ab13f0f93fe991a5831ff78312f9b9e4b"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a773de7440f04f7d3e23419cd94caa2eb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a773de7440f04f7d3e23419cd94caa2eb"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a773de7440f04f7d3e23419cd94caa2eb">f</a></td></tr>
-<tr class="memdesc:a773de7440f04f7d3e23419cd94caa2eb"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:ac2beab555e72c8f10921db21dc094069"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac2beab555e72c8f10921db21dc094069"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#ac2beab555e72c8f10921db21dc094069">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:ac2beab555e72c8f10921db21dc094069"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a0afd6961b8b0b24b526e034d89874c7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0afd6961b8b0b24b526e034d89874c7c"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a0afd6961b8b0b24b526e034d89874c7c">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a0afd6961b8b0b24b526e034d89874c7c"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a97241bcd9654d3e90a556806e7998ab6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a97241bcd9654d3e90a556806e7998ab6"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a97241bcd9654d3e90a556806e7998ab6">d</a></td></tr>
-<tr class="memdesc:a97241bcd9654d3e90a556806e7998ab6"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank <br/></td></tr>
-<tr class="memitem:a6a3e11978f1e2c6279bd12785ef56b5d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6a3e11978f1e2c6279bd12785ef56b5d"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a6a3e11978f1e2c6279bd12785ef56b5d">sigma</a></td></tr>
-<tr class="memdesc:a6a3e11978f1e2c6279bd12785ef56b5d"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a0a30183077239e2de76e5de626dc92e9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a30183077239e2de76e5de626dc92e9"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a0a30183077239e2de76e5de626dc92e9">a</a></td></tr>
-<tr class="memdesc:a0a30183077239e2de76e5de626dc92e9"><td class="mdescLeft"> </td><td class="mdescRight">1 + 2*m/N1 <br/></td></tr>
-<tr class="memitem:a43e0e3140a0afdd551a95228be7e4ed7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a43e0e3140a0afdd551a95228be7e4ed7"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a43e0e3140a0afdd551a95228be7e4ed7">N</a></td></tr>
-<tr class="memdesc:a43e0e3140a0afdd551a95228be7e4ed7"><td class="mdescLeft"> </td><td class="mdescRight">cut-off-frequencies <br/></td></tr>
-<tr class="memitem:a7467148139ddeaf34261c0c256f64643"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7467148139ddeaf34261c0c256f64643"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a7467148139ddeaf34261c0c256f64643">N1</a></td></tr>
-<tr class="memdesc:a7467148139ddeaf34261c0c256f64643"><td class="mdescLeft"> </td><td class="mdescRight">sigma*N <br/></td></tr>
-<tr class="memitem:add59b0dfe6fced5130efcafa613abfcb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="add59b0dfe6fced5130efcafa613abfcb"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#add59b0dfe6fced5130efcafa613abfcb">aN1</a></td></tr>
-<tr class="memdesc:add59b0dfe6fced5130efcafa613abfcb"><td class="mdescLeft"> </td><td class="mdescRight">sigma*a*N <br/></td></tr>
-<tr class="memitem:a1c5322ebb6d93515fc8a9e922c8a66da"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1c5322ebb6d93515fc8a9e922c8a66da"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a1c5322ebb6d93515fc8a9e922c8a66da">m</a></td></tr>
-<tr class="memdesc:a1c5322ebb6d93515fc8a9e922c8a66da"><td class="mdescLeft"> </td><td class="mdescRight">cut-off parameter in time-domain <br/></td></tr>
-<tr class="memitem:aa91e909254c1beb83e2e971df50b96ca"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa91e909254c1beb83e2e971df50b96ca"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#aa91e909254c1beb83e2e971df50b96ca">b</a></td></tr>
-<tr class="memdesc:aa91e909254c1beb83e2e971df50b96ca"><td class="mdescLeft"> </td><td class="mdescRight">shape parameters <br/></td></tr>
-<tr class="memitem:a4ee39bebbff40746c2701ade2e13f1f8"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a4ee39bebbff40746c2701ade2e13f1f8">K</a></td></tr>
-<tr class="memdesc:a4ee39bebbff40746c2701ade2e13f1f8"><td class="mdescLeft"> </td><td class="mdescRight">number of precomp. <a href="#a4ee39bebbff40746c2701ade2e13f1f8"></a><br/></td></tr>
-<tr class="memitem:acb1a1fa5fdb73d2187e9e9d8e4415921"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#acb1a1fa5fdb73d2187e9e9d8e4415921">aN1_total</a></td></tr>
-<tr class="memdesc:acb1a1fa5fdb73d2187e9e9d8e4415921"><td class="mdescLeft"> </td><td class="mdescRight">aN1_total=aN1[0]* ... <a href="#acb1a1fa5fdb73d2187e9e9d8e4415921"></a><br/></td></tr>
-<tr class="memitem:a4dc1f0a5a0ead52ada3ba3b2d7eae75f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4dc1f0a5a0ead52ada3ba3b2d7eae75f"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a4dc1f0a5a0ead52ada3ba3b2d7eae75f">direct_plan</a></td></tr>
-<tr class="memdesc:a4dc1f0a5a0ead52ada3ba3b2d7eae75f"><td class="mdescLeft"> </td><td class="mdescRight">plan for the nfft <br/></td></tr>
-<tr class="memitem:a5414c3133e2342c971b7f4df711e6e9a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5414c3133e2342c971b7f4df711e6e9a"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a5414c3133e2342c971b7f4df711e6e9a">nnfft_flags</a></td></tr>
-<tr class="memdesc:a5414c3133e2342c971b7f4df711e6e9a"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:a6b2de2633dd4347692e96887f98c1020"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6b2de2633dd4347692e96887f98c1020"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a6b2de2633dd4347692e96887f98c1020">n</a></td></tr>
-<tr class="memdesc:a6b2de2633dd4347692e96887f98c1020"><td class="mdescLeft"> </td><td class="mdescRight">n=N1, for the window function <br/></td></tr>
-<tr class="memitem:ab5b545ac8b82dee7b2d1a3455ecca76d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab5b545ac8b82dee7b2d1a3455ecca76d"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#ab5b545ac8b82dee7b2d1a3455ecca76d">x</a></td></tr>
-<tr class="memdesc:ab5b545ac8b82dee7b2d1a3455ecca76d"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in time/spatial domain) <br/></td></tr>
-<tr class="memitem:a040dd9e982de31aaf04d5f543af9a80c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a040dd9e982de31aaf04d5f543af9a80c"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a040dd9e982de31aaf04d5f543af9a80c">v</a></td></tr>
-<tr class="memdesc:a040dd9e982de31aaf04d5f543af9a80c"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in fourier domain) <br/></td></tr>
-<tr class="memitem:a9073b3c76f70f8b9caedac7f5574ce89"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9073b3c76f70f8b9caedac7f5574ce89"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a9073b3c76f70f8b9caedac7f5574ce89">c_phi_inv</a></td></tr>
-<tr class="memdesc:a9073b3c76f70f8b9caedac7f5574ce89"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix D <br/></td></tr>
-<tr class="memitem:ad300032f78e794528caa54e8a84431a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad300032f78e794528caa54e8a84431a4"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#ad300032f78e794528caa54e8a84431a4">psi</a></td></tr>
-<tr class="memdesc:ad300032f78e794528caa54e8a84431a4"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix B <br/></td></tr>
-<tr class="memitem:af2992b9cb57809fb90a68dbaea36d79a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af2992b9cb57809fb90a68dbaea36d79a"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#af2992b9cb57809fb90a68dbaea36d79a">size_psi</a></td></tr>
-<tr class="memdesc:af2992b9cb57809fb90a68dbaea36d79a"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:aa0b2be91e59a45c809c68398ceb41232"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0b2be91e59a45c809c68398ceb41232"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#aa0b2be91e59a45c809c68398ceb41232">psi_index_g</a></td></tr>
-<tr class="memdesc:aa0b2be91e59a45c809c68398ceb41232"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a2ada74222958e630640e6456e9bd2a8d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ada74222958e630640e6456e9bd2a8d"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#a2ada74222958e630640e6456e9bd2a8d">psi_index_f</a></td></tr>
-<tr class="memdesc:a2ada74222958e630640e6456e9bd2a8d"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a86c8933dfbdbef02b98fd961bf00e01b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a86c8933dfbdbef02b98fd961bf00e01b"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><b>F</b></td></tr>
-<tr class="memitem:ac3e3c4b14a5227a96b8627faf6933652"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac3e3c4b14a5227a96b8627faf6933652"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfft__plan.html#ac3e3c4b14a5227a96b8627faf6933652">spline_coeffs</a></td></tr>
-<tr class="memdesc:ac3e3c4b14a5227a96b8627faf6933652"><td class="mdescLeft"> </td><td class="mdescRight">input for de Boor algorithm, if B_SPLINE or SINC_2m is defined <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00400">400</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/><h2>Field Documentation</h2>
-<a class="anchor" id="a4ee39bebbff40746c2701ade2e13f1f8"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int nnfft_plan::K</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>number of precomp. </p>
-<p>uniform psi </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00400">400</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-<p>Referenced by <a class="el" href="nnfft_8c_source.html#l00368">nnfft_precompute_lin_psi()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="acb1a1fa5fdb73d2187e9e9d8e4415921"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int nnfft_plan::aN1_total</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>aN1_total=aN1[0]* ... </p>
-<p>*aN1[d-1] </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00400">400</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnnfftf__plan.html b/doc/api/html/structnnfftf__plan.html
deleted file mode 100644
index a9f7d2f..0000000
--- a/doc/api/html/structnnfftf__plan.html
+++ /dev/null
@@ -1,175 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nnfftf_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nnfftf_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:afd4cb1ff03f227c4e9e1dd9da21ec34e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd4cb1ff03f227c4e9e1dd9da21ec34e"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#afd4cb1ff03f227c4e9e1dd9da21ec34e">N_total</a></td></tr>
-<tr class="memdesc:afd4cb1ff03f227c4e9e1dd9da21ec34e"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a6908aa62ea014b3b60e047a99f6adb2b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6908aa62ea014b3b60e047a99f6adb2b"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a6908aa62ea014b3b60e047a99f6adb2b">M_total</a></td></tr>
-<tr class="memdesc:a6908aa62ea014b3b60e047a99f6adb2b"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a068de2b177ffaad5b0091b0ecd2ca211"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a068de2b177ffaad5b0091b0ecd2ca211"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a068de2b177ffaad5b0091b0ecd2ca211">f_hat</a></td></tr>
-<tr class="memdesc:a068de2b177ffaad5b0091b0ecd2ca211"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:a458403c21a1083ede0d84a6d25c8cc8c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a458403c21a1083ede0d84a6d25c8cc8c"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a458403c21a1083ede0d84a6d25c8cc8c">f</a></td></tr>
-<tr class="memdesc:a458403c21a1083ede0d84a6d25c8cc8c"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:aea4c2210478af70a540da01e0c0a1c7b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aea4c2210478af70a540da01e0c0a1c7b"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#aea4c2210478af70a540da01e0c0a1c7b">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:aea4c2210478af70a540da01e0c0a1c7b"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:adcff4592ce1838e342b92633e9f8de42"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adcff4592ce1838e342b92633e9f8de42"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#adcff4592ce1838e342b92633e9f8de42">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:adcff4592ce1838e342b92633e9f8de42"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:ae6d3ce66c1d6d2fd0f507d83df91f549"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae6d3ce66c1d6d2fd0f507d83df91f549"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#ae6d3ce66c1d6d2fd0f507d83df91f549">d</a></td></tr>
-<tr class="memdesc:ae6d3ce66c1d6d2fd0f507d83df91f549"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank <br/></td></tr>
-<tr class="memitem:a858114a52835ef9cae070f6017625a4c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a858114a52835ef9cae070f6017625a4c"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a858114a52835ef9cae070f6017625a4c">sigma</a></td></tr>
-<tr class="memdesc:a858114a52835ef9cae070f6017625a4c"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:ab0a39deb647f2a862caf5a6cfaf4939b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab0a39deb647f2a862caf5a6cfaf4939b"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#ab0a39deb647f2a862caf5a6cfaf4939b">a</a></td></tr>
-<tr class="memdesc:ab0a39deb647f2a862caf5a6cfaf4939b"><td class="mdescLeft"> </td><td class="mdescRight">1 + 2*m/N1 <br/></td></tr>
-<tr class="memitem:aefd2c40e607f75679bb61926881d4488"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aefd2c40e607f75679bb61926881d4488"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#aefd2c40e607f75679bb61926881d4488">N</a></td></tr>
-<tr class="memdesc:aefd2c40e607f75679bb61926881d4488"><td class="mdescLeft"> </td><td class="mdescRight">cut-off-frequencies <br/></td></tr>
-<tr class="memitem:a9f6a5274cee5803505df5ad65d4c12fd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9f6a5274cee5803505df5ad65d4c12fd"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a9f6a5274cee5803505df5ad65d4c12fd">N1</a></td></tr>
-<tr class="memdesc:a9f6a5274cee5803505df5ad65d4c12fd"><td class="mdescLeft"> </td><td class="mdescRight">sigma*N <br/></td></tr>
-<tr class="memitem:a405914d88ec36f1bf8438ebfed59f294"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a405914d88ec36f1bf8438ebfed59f294"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a405914d88ec36f1bf8438ebfed59f294">aN1</a></td></tr>
-<tr class="memdesc:a405914d88ec36f1bf8438ebfed59f294"><td class="mdescLeft"> </td><td class="mdescRight">sigma*a*N <br/></td></tr>
-<tr class="memitem:af7f40661f8b29323b5b0f1ad5a7290a4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af7f40661f8b29323b5b0f1ad5a7290a4"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#af7f40661f8b29323b5b0f1ad5a7290a4">m</a></td></tr>
-<tr class="memdesc:af7f40661f8b29323b5b0f1ad5a7290a4"><td class="mdescLeft"> </td><td class="mdescRight">cut-off parameter in time-domain <br/></td></tr>
-<tr class="memitem:adbd7faf4a853905d26899885e5ca3b38"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adbd7faf4a853905d26899885e5ca3b38"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#adbd7faf4a853905d26899885e5ca3b38">b</a></td></tr>
-<tr class="memdesc:adbd7faf4a853905d26899885e5ca3b38"><td class="mdescLeft"> </td><td class="mdescRight">shape parameters <br/></td></tr>
-<tr class="memitem:a9d2bd4132187064cf5f6c301f7ce5125"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a9d2bd4132187064cf5f6c301f7ce5125">K</a></td></tr>
-<tr class="memdesc:a9d2bd4132187064cf5f6c301f7ce5125"><td class="mdescLeft"> </td><td class="mdescRight">number of precomp. <a href="#a9d2bd4132187064cf5f6c301f7ce5125"></a><br/></td></tr>
-<tr class="memitem:a4bfc7abd18935616365f7925b2994e38"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a4bfc7abd18935616365f7925b2994e38">aN1_total</a></td></tr>
-<tr class="memdesc:a4bfc7abd18935616365f7925b2994e38"><td class="mdescLeft"> </td><td class="mdescRight">aN1_total=aN1[0]* ... <a href="#a4bfc7abd18935616365f7925b2994e38"></a><br/></td></tr>
-<tr class="memitem:a15fe2e694c1b999008600c1f4a5dc2be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a15fe2e694c1b999008600c1f4a5dc2be"></a>
-<a class="el" href="structnfftf__plan.html">nfftf_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a15fe2e694c1b999008600c1f4a5dc2be">direct_plan</a></td></tr>
-<tr class="memdesc:a15fe2e694c1b999008600c1f4a5dc2be"><td class="mdescLeft"> </td><td class="mdescRight">plan for the nfft <br/></td></tr>
-<tr class="memitem:acebd9e667d51a5293f977642f031724e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acebd9e667d51a5293f977642f031724e"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#acebd9e667d51a5293f977642f031724e">nnfft_flags</a></td></tr>
-<tr class="memdesc:acebd9e667d51a5293f977642f031724e"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:ae849996a09be847a35be6c1ea018d988"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae849996a09be847a35be6c1ea018d988"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#ae849996a09be847a35be6c1ea018d988">n</a></td></tr>
-<tr class="memdesc:ae849996a09be847a35be6c1ea018d988"><td class="mdescLeft"> </td><td class="mdescRight">n=N1, for the window function <br/></td></tr>
-<tr class="memitem:ae3c9275b5cafc753e2762406ba422378"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3c9275b5cafc753e2762406ba422378"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#ae3c9275b5cafc753e2762406ba422378">x</a></td></tr>
-<tr class="memdesc:ae3c9275b5cafc753e2762406ba422378"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in time/spatial domain) <br/></td></tr>
-<tr class="memitem:a62822fb1596e8eccd6d2edf62096323b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a62822fb1596e8eccd6d2edf62096323b"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a62822fb1596e8eccd6d2edf62096323b">v</a></td></tr>
-<tr class="memdesc:a62822fb1596e8eccd6d2edf62096323b"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in fourier domain) <br/></td></tr>
-<tr class="memitem:a89b1d6ef566671d479eaaf4e50f666cb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a89b1d6ef566671d479eaaf4e50f666cb"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a89b1d6ef566671d479eaaf4e50f666cb">c_phi_inv</a></td></tr>
-<tr class="memdesc:a89b1d6ef566671d479eaaf4e50f666cb"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix D <br/></td></tr>
-<tr class="memitem:a10747f86b86f7fa64539b46914344877"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a10747f86b86f7fa64539b46914344877"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a10747f86b86f7fa64539b46914344877">psi</a></td></tr>
-<tr class="memdesc:a10747f86b86f7fa64539b46914344877"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix B <br/></td></tr>
-<tr class="memitem:a67aae8bda525717c1628aa53fca9b7de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a67aae8bda525717c1628aa53fca9b7de"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a67aae8bda525717c1628aa53fca9b7de">size_psi</a></td></tr>
-<tr class="memdesc:a67aae8bda525717c1628aa53fca9b7de"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:aa6d0ce899b41da6981f6863fc242559d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa6d0ce899b41da6981f6863fc242559d"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#aa6d0ce899b41da6981f6863fc242559d">psi_index_g</a></td></tr>
-<tr class="memdesc:aa6d0ce899b41da6981f6863fc242559d"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a3788434fa045ecd49dd89d116bb40c47"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3788434fa045ecd49dd89d116bb40c47"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#a3788434fa045ecd49dd89d116bb40c47">psi_index_f</a></td></tr>
-<tr class="memdesc:a3788434fa045ecd49dd89d116bb40c47"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a5f089ea9bae2fa4078bb84bd0aa86b64"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5f089ea9bae2fa4078bb84bd0aa86b64"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><b>F</b></td></tr>
-<tr class="memitem:acb221c7694859d0828bcc1f56154cd69"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acb221c7694859d0828bcc1f56154cd69"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftf__plan.html#acb221c7694859d0828bcc1f56154cd69">spline_coeffs</a></td></tr>
-<tr class="memdesc:acb221c7694859d0828bcc1f56154cd69"><td class="mdescLeft"> </td><td class="mdescRight">input for de Boor algorithm, if B_SPLINE or SINC_2m is defined <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00400">400</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/><h2>Field Documentation</h2>
-<a class="anchor" id="a9d2bd4132187064cf5f6c301f7ce5125"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int nnfftf_plan::K</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>number of precomp. </p>
-<p>uniform psi </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00400">400</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a4bfc7abd18935616365f7925b2994e38"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int nnfftf_plan::aN1_total</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>aN1_total=aN1[0]* ... </p>
-<p>*aN1[d-1] </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00400">400</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnnfftl__plan.html b/doc/api/html/structnnfftl__plan.html
deleted file mode 100644
index a2a832b..0000000
--- a/doc/api/html/structnnfftl__plan.html
+++ /dev/null
@@ -1,175 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nnfftl_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nnfftl_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a0e0827be03d503291f4a6d76c7b690d7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0e0827be03d503291f4a6d76c7b690d7"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a0e0827be03d503291f4a6d76c7b690d7">N_total</a></td></tr>
-<tr class="memdesc:a0e0827be03d503291f4a6d76c7b690d7"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a74e7fb29427e5a4d9b383ab278f513a2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a74e7fb29427e5a4d9b383ab278f513a2"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a74e7fb29427e5a4d9b383ab278f513a2">M_total</a></td></tr>
-<tr class="memdesc:a74e7fb29427e5a4d9b383ab278f513a2"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a97bc689ffe1f4c8eb99ee43cf408c662"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a97bc689ffe1f4c8eb99ee43cf408c662"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a97bc689ffe1f4c8eb99ee43cf408c662">f_hat</a></td></tr>
-<tr class="memdesc:a97bc689ffe1f4c8eb99ee43cf408c662"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:a6aaa7904dbee73679d86060f1842a04e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6aaa7904dbee73679d86060f1842a04e"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a6aaa7904dbee73679d86060f1842a04e">f</a></td></tr>
-<tr class="memdesc:a6aaa7904dbee73679d86060f1842a04e"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:a39b1bdd9a3eacd4ff3b809eeef01f364"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a39b1bdd9a3eacd4ff3b809eeef01f364"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a39b1bdd9a3eacd4ff3b809eeef01f364">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:a39b1bdd9a3eacd4ff3b809eeef01f364"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:aa6098f51f9c69196ca782a1b0f8feeba"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa6098f51f9c69196ca782a1b0f8feeba"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#aa6098f51f9c69196ca782a1b0f8feeba">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:aa6098f51f9c69196ca782a1b0f8feeba"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a14dac9d67ed25ff370516f66668a8ec6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a14dac9d67ed25ff370516f66668a8ec6"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a14dac9d67ed25ff370516f66668a8ec6">d</a></td></tr>
-<tr class="memdesc:a14dac9d67ed25ff370516f66668a8ec6"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank <br/></td></tr>
-<tr class="memitem:a899c16c2e59f2566a9f17d84f64af952"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a899c16c2e59f2566a9f17d84f64af952"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a899c16c2e59f2566a9f17d84f64af952">sigma</a></td></tr>
-<tr class="memdesc:a899c16c2e59f2566a9f17d84f64af952"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a41260d5c377bdd918b4952b4730b6908"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a41260d5c377bdd918b4952b4730b6908"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a41260d5c377bdd918b4952b4730b6908">a</a></td></tr>
-<tr class="memdesc:a41260d5c377bdd918b4952b4730b6908"><td class="mdescLeft"> </td><td class="mdescRight">1 + 2*m/N1 <br/></td></tr>
-<tr class="memitem:a7fb433be8689db7816a3667620a294f3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7fb433be8689db7816a3667620a294f3"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a7fb433be8689db7816a3667620a294f3">N</a></td></tr>
-<tr class="memdesc:a7fb433be8689db7816a3667620a294f3"><td class="mdescLeft"> </td><td class="mdescRight">cut-off-frequencies <br/></td></tr>
-<tr class="memitem:a693c5d648b1781dce21d24636aac6554"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a693c5d648b1781dce21d24636aac6554"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a693c5d648b1781dce21d24636aac6554">N1</a></td></tr>
-<tr class="memdesc:a693c5d648b1781dce21d24636aac6554"><td class="mdescLeft"> </td><td class="mdescRight">sigma*N <br/></td></tr>
-<tr class="memitem:af262dc79891366e77bb15789aa24f2cd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af262dc79891366e77bb15789aa24f2cd"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#af262dc79891366e77bb15789aa24f2cd">aN1</a></td></tr>
-<tr class="memdesc:af262dc79891366e77bb15789aa24f2cd"><td class="mdescLeft"> </td><td class="mdescRight">sigma*a*N <br/></td></tr>
-<tr class="memitem:a2082f917534e3a8590d5a19b4377a256"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2082f917534e3a8590d5a19b4377a256"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a2082f917534e3a8590d5a19b4377a256">m</a></td></tr>
-<tr class="memdesc:a2082f917534e3a8590d5a19b4377a256"><td class="mdescLeft"> </td><td class="mdescRight">cut-off parameter in time-domain <br/></td></tr>
-<tr class="memitem:ada085ec8f6099bfcaa7a193745689c9a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada085ec8f6099bfcaa7a193745689c9a"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#ada085ec8f6099bfcaa7a193745689c9a">b</a></td></tr>
-<tr class="memdesc:ada085ec8f6099bfcaa7a193745689c9a"><td class="mdescLeft"> </td><td class="mdescRight">shape parameters <br/></td></tr>
-<tr class="memitem:a574648230ce316a55282f362774aa615"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a574648230ce316a55282f362774aa615">K</a></td></tr>
-<tr class="memdesc:a574648230ce316a55282f362774aa615"><td class="mdescLeft"> </td><td class="mdescRight">number of precomp. <a href="#a574648230ce316a55282f362774aa615"></a><br/></td></tr>
-<tr class="memitem:aa791fcca6424d42640020e178e8319e7"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#aa791fcca6424d42640020e178e8319e7">aN1_total</a></td></tr>
-<tr class="memdesc:aa791fcca6424d42640020e178e8319e7"><td class="mdescLeft"> </td><td class="mdescRight">aN1_total=aN1[0]* ... <a href="#aa791fcca6424d42640020e178e8319e7"></a><br/></td></tr>
-<tr class="memitem:aa59e9ff1ad2fe1d90e077451831c6596"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa59e9ff1ad2fe1d90e077451831c6596"></a>
-<a class="el" href="structnfftl__plan.html">nfftl_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#aa59e9ff1ad2fe1d90e077451831c6596">direct_plan</a></td></tr>
-<tr class="memdesc:aa59e9ff1ad2fe1d90e077451831c6596"><td class="mdescLeft"> </td><td class="mdescRight">plan for the nfft <br/></td></tr>
-<tr class="memitem:a1a9bf1751caf842fb44f70a4cbab8744"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1a9bf1751caf842fb44f70a4cbab8744"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a1a9bf1751caf842fb44f70a4cbab8744">nnfft_flags</a></td></tr>
-<tr class="memdesc:a1a9bf1751caf842fb44f70a4cbab8744"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:ad8d9bc5c5ae9f1ee6c813839ff831d97"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad8d9bc5c5ae9f1ee6c813839ff831d97"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#ad8d9bc5c5ae9f1ee6c813839ff831d97">n</a></td></tr>
-<tr class="memdesc:ad8d9bc5c5ae9f1ee6c813839ff831d97"><td class="mdescLeft"> </td><td class="mdescRight">n=N1, for the window function <br/></td></tr>
-<tr class="memitem:ad3c1a7dca6cddcecba876f1bb523e3b6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad3c1a7dca6cddcecba876f1bb523e3b6"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#ad3c1a7dca6cddcecba876f1bb523e3b6">x</a></td></tr>
-<tr class="memdesc:ad3c1a7dca6cddcecba876f1bb523e3b6"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in time/spatial domain) <br/></td></tr>
-<tr class="memitem:a224d2ba2e9ba30535b394b1375ff0a88"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a224d2ba2e9ba30535b394b1375ff0a88"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a224d2ba2e9ba30535b394b1375ff0a88">v</a></td></tr>
-<tr class="memdesc:a224d2ba2e9ba30535b394b1375ff0a88"><td class="mdescLeft"> </td><td class="mdescRight">nodes (in fourier domain) <br/></td></tr>
-<tr class="memitem:ab9b9f0d173b9526d60c1ae8fbec1e1f7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab9b9f0d173b9526d60c1ae8fbec1e1f7"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#ab9b9f0d173b9526d60c1ae8fbec1e1f7">c_phi_inv</a></td></tr>
-<tr class="memdesc:ab9b9f0d173b9526d60c1ae8fbec1e1f7"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix D <br/></td></tr>
-<tr class="memitem:a8644e94ccefb0b3001442b4df86dae5d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8644e94ccefb0b3001442b4df86dae5d"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a8644e94ccefb0b3001442b4df86dae5d">psi</a></td></tr>
-<tr class="memdesc:a8644e94ccefb0b3001442b4df86dae5d"><td class="mdescLeft"> </td><td class="mdescRight">precomputed data, matrix B <br/></td></tr>
-<tr class="memitem:aed13a1f152cb6febf2ce643c204d8b9a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aed13a1f152cb6febf2ce643c204d8b9a"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#aed13a1f152cb6febf2ce643c204d8b9a">size_psi</a></td></tr>
-<tr class="memdesc:aed13a1f152cb6febf2ce643c204d8b9a"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a4b53c60fb307d01e01931ef812974a3c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b53c60fb307d01e01931ef812974a3c"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a4b53c60fb307d01e01931ef812974a3c">psi_index_g</a></td></tr>
-<tr class="memdesc:a4b53c60fb307d01e01931ef812974a3c"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:abf4204a1a31afd35d490ca4ef42bd596"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abf4204a1a31afd35d490ca4ef42bd596"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#abf4204a1a31afd35d490ca4ef42bd596">psi_index_f</a></td></tr>
-<tr class="memdesc:abf4204a1a31afd35d490ca4ef42bd596"><td class="mdescLeft"> </td><td class="mdescRight">only for thin B <br/></td></tr>
-<tr class="memitem:a5ab9f4d21b6828336f3eb8b92910f9b3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ab9f4d21b6828336f3eb8b92910f9b3"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><b>F</b></td></tr>
-<tr class="memitem:a8f364097c04b46c203a4883af90b9eb0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8f364097c04b46c203a4883af90b9eb0"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnnfftl__plan.html#a8f364097c04b46c203a4883af90b9eb0">spline_coeffs</a></td></tr>
-<tr class="memdesc:a8f364097c04b46c203a4883af90b9eb0"><td class="mdescLeft"> </td><td class="mdescRight">input for de Boor algorithm, if B_SPLINE or SINC_2m is defined <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00400">400</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/><h2>Field Documentation</h2>
-<a class="anchor" id="a574648230ce316a55282f362774aa615"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int nnfftl_plan::K</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>number of precomp. </p>
-<p>uniform psi </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00400">400</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="aa791fcca6424d42640020e178e8319e7"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">int nnfftl_plan::aN1_total</td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>aN1_total=aN1[0]* ... </p>
-<p>*aN1[d-1] </p>
-
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00400">400</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-
-</div>
-</div>
-<hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnsfft__plan.html b/doc/api/html/structnsfft__plan.html
deleted file mode 100644
index 752e119..0000000
--- a/doc/api/html/structnsfft__plan.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nsfft_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nsfft_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:a979134567e97bfffbc022b8267f98f6d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a979134567e97bfffbc022b8267f98f6d"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a979134567e97bfffbc022b8267f98f6d">FFTW_MANGLE_DOUBLE</a> (plan)*set_fftw_plan1</td></tr>
-<tr class="memdesc:a979134567e97bfffbc022b8267f98f6d"><td class="mdescLeft"> </td><td class="mdescRight">fftw plan for the nfft blocks <br/></td></tr>
-<tr class="memitem:a937d2895eeeaa8aabb92359232498693"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a937d2895eeeaa8aabb92359232498693"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a937d2895eeeaa8aabb92359232498693">FFTW_MANGLE_DOUBLE</a> (plan)*set_fftw_plan2</td></tr>
-<tr class="memdesc:a937d2895eeeaa8aabb92359232498693"><td class="mdescLeft"> </td><td class="mdescRight">fftw plan for the nfft blocks <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a87e0123a3ccf6a42102e065dca2f8505"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a87e0123a3ccf6a42102e065dca2f8505"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a87e0123a3ccf6a42102e065dca2f8505">N_total</a></td></tr>
-<tr class="memdesc:a87e0123a3ccf6a42102e065dca2f8505"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a03da0fc6abab6b0d2e15053ef1f3109e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a03da0fc6abab6b0d2e15053ef1f3109e"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a03da0fc6abab6b0d2e15053ef1f3109e">M_total</a></td></tr>
-<tr class="memdesc:a03da0fc6abab6b0d2e15053ef1f3109e"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:ae3e2fcefd21caff3aa1e978b522d4ee3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae3e2fcefd21caff3aa1e978b522d4ee3"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#ae3e2fcefd21caff3aa1e978b522d4ee3">f_hat</a></td></tr>
-<tr class="memdesc:ae3e2fcefd21caff3aa1e978b522d4ee3"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:a7ffefff1410360f4264e12398db06787"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ffefff1410360f4264e12398db06787"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a7ffefff1410360f4264e12398db06787">f</a></td></tr>
-<tr class="memdesc:a7ffefff1410360f4264e12398db06787"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftw_complex ) <br/></td></tr>
-<tr class="memitem:abbab5fc009e68a329bbebee4904e53a5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abbab5fc009e68a329bbebee4904e53a5"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#abbab5fc009e68a329bbebee4904e53a5">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:abbab5fc009e68a329bbebee4904e53a5"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a9761ac166f3ec93197e8e409ba78fb4f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9761ac166f3ec93197e8e409ba78fb4f"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a9761ac166f3ec93197e8e409ba78fb4f">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a9761ac166f3ec93197e8e409ba78fb4f"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:ac5e6ad608ed1e1d39f17d1512703ddfe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac5e6ad608ed1e1d39f17d1512703ddfe"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#ac5e6ad608ed1e1d39f17d1512703ddfe">d</a></td></tr>
-<tr class="memdesc:ac5e6ad608ed1e1d39f17d1512703ddfe"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank; d = 2, 3 <br/></td></tr>
-<tr class="memitem:ad2186982dfb4c6df290c29a47d8e3c52"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad2186982dfb4c6df290c29a47d8e3c52"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#ad2186982dfb4c6df290c29a47d8e3c52">J</a></td></tr>
-<tr class="memdesc:ad2186982dfb4c6df290c29a47d8e3c52"><td class="mdescLeft"> </td><td class="mdescRight">problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1)) <br/></td></tr>
-<tr class="memitem:a4b5a4d8e23b0309da9c51bdea4b7d954"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b5a4d8e23b0309da9c51bdea4b7d954"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a4b5a4d8e23b0309da9c51bdea4b7d954">sigma</a></td></tr>
-<tr class="memdesc:a4b5a4d8e23b0309da9c51bdea4b7d954"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a5fcea2cbb16bfdfc4a5a3f5142db3281"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5fcea2cbb16bfdfc4a5a3f5142db3281"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a5fcea2cbb16bfdfc4a5a3f5142db3281">flags</a></td></tr>
-<tr class="memdesc:a5fcea2cbb16bfdfc4a5a3f5142db3281"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:a9112356adf28d6c7f6c5d57354b8fa55"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9112356adf28d6c7f6c5d57354b8fa55"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a9112356adf28d6c7f6c5d57354b8fa55">index_sparse_to_full</a></td></tr>
-<tr class="memdesc:a9112356adf28d6c7f6c5d57354b8fa55"><td class="mdescLeft"> </td><td class="mdescRight">index conversation, overflow for d=3, J=9! <br/></td></tr>
-<tr class="memitem:a0a1b5e59c9ff83bc7b2d2894f96edd23"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0a1b5e59c9ff83bc7b2d2894f96edd23"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a0a1b5e59c9ff83bc7b2d2894f96edd23">r_act_nfft_plan</a></td></tr>
-<tr class="memdesc:a0a1b5e59c9ff83bc7b2d2894f96edd23"><td class="mdescLeft"> </td><td class="mdescRight">index of current nfft block <br/></td></tr>
-<tr class="memitem:a9a3f23953542f9909597f559a546422f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a3f23953542f9909597f559a546422f"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a9a3f23953542f9909597f559a546422f">act_nfft_plan</a></td></tr>
-<tr class="memdesc:a9a3f23953542f9909597f559a546422f"><td class="mdescLeft"> </td><td class="mdescRight">current nfft block <br/></td></tr>
-<tr class="memitem:a0d68f66b8d41342a0b6e820ee2fffb3e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0d68f66b8d41342a0b6e820ee2fffb3e"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a0d68f66b8d41342a0b6e820ee2fffb3e">center_nfft_plan</a></td></tr>
-<tr class="memdesc:a0d68f66b8d41342a0b6e820ee2fffb3e"><td class="mdescLeft"> </td><td class="mdescRight">central nfft block <br/></td></tr>
-<tr class="memitem:aca7c2bc3da4c17412a72471576b76bcc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aca7c2bc3da4c17412a72471576b76bcc"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#aca7c2bc3da4c17412a72471576b76bcc">set_nfft_plan_1d</a></td></tr>
-<tr class="memdesc:aca7c2bc3da4c17412a72471576b76bcc"><td class="mdescLeft"> </td><td class="mdescRight">nfft plans for short nffts <br/></td></tr>
-<tr class="memitem:a3f4e3d8adb31adbef7a3579e42311a3b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3f4e3d8adb31adbef7a3579e42311a3b"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#a3f4e3d8adb31adbef7a3579e42311a3b">set_nfft_plan_2d</a></td></tr>
-<tr class="memdesc:a3f4e3d8adb31adbef7a3579e42311a3b"><td class="mdescLeft"> </td><td class="mdescRight">nfft plans for short nffts <br/></td></tr>
-<tr class="memitem:aca6c9880cde07f3bc26dd7666c09a9d6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aca6c9880cde07f3bc26dd7666c09a9d6"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#aca6c9880cde07f3bc26dd7666c09a9d6">x_transposed</a></td></tr>
-<tr class="memdesc:aca6c9880cde07f3bc26dd7666c09a9d6"><td class="mdescLeft"> </td><td class="mdescRight">coordinate exchanged nodes, d = 2 <br/></td></tr>
-<tr class="memitem:a56345708a95cbcd3ee2ebf472607f274"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56345708a95cbcd3ee2ebf472607f274"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>x_102</b></td></tr>
-<tr class="memitem:ad47d5d52d2abf71be638f1b6859c3080"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad47d5d52d2abf71be638f1b6859c3080"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>x_201</b></td></tr>
-<tr class="memitem:ab67c4a556040bc7699980cf02bf6c8a7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab67c4a556040bc7699980cf02bf6c8a7"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>x_120</b></td></tr>
-<tr class="memitem:aee5ad936bb790f00bf0797c94e185549"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aee5ad936bb790f00bf0797c94e185549"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfft__plan.html#aee5ad936bb790f00bf0797c94e185549">x_021</a></td></tr>
-<tr class="memdesc:aee5ad936bb790f00bf0797c94e185549"><td class="mdescLeft"> </td><td class="mdescRight">coordinate exchanged nodes, d=3 <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00451">451</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnsfftf__plan.html b/doc/api/html/structnsfftf__plan.html
deleted file mode 100644
index 8901336..0000000
--- a/doc/api/html/structnsfftf__plan.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nsfftf_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nsfftf_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:ac0a9dbecfd535a1c7b2c0cfec5b79925"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac0a9dbecfd535a1c7b2c0cfec5b79925"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#ac0a9dbecfd535a1c7b2c0cfec5b79925">FFTW_MANGLE_FLOAT</a> (plan)*set_fftw_plan1</td></tr>
-<tr class="memdesc:ac0a9dbecfd535a1c7b2c0cfec5b79925"><td class="mdescLeft"> </td><td class="mdescRight">fftw plan for the nfft blocks <br/></td></tr>
-<tr class="memitem:a5ceb97a548f5a438ad46a12133b1b5e8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5ceb97a548f5a438ad46a12133b1b5e8"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a5ceb97a548f5a438ad46a12133b1b5e8">FFTW_MANGLE_FLOAT</a> (plan)*set_fftw_plan2</td></tr>
-<tr class="memdesc:a5ceb97a548f5a438ad46a12133b1b5e8"><td class="mdescLeft"> </td><td class="mdescRight">fftw plan for the nfft blocks <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:afe49ebe4fbbb3bd90b12e939c06adfab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afe49ebe4fbbb3bd90b12e939c06adfab"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#afe49ebe4fbbb3bd90b12e939c06adfab">N_total</a></td></tr>
-<tr class="memdesc:afe49ebe4fbbb3bd90b12e939c06adfab"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:a6a75a26e5d6476595bde5b03d6293a0a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6a75a26e5d6476595bde5b03d6293a0a"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a6a75a26e5d6476595bde5b03d6293a0a">M_total</a></td></tr>
-<tr class="memdesc:a6a75a26e5d6476595bde5b03d6293a0a"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a423d4a1555477e49a7cb3c26a4a5dfd1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a423d4a1555477e49a7cb3c26a4a5dfd1"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a423d4a1555477e49a7cb3c26a4a5dfd1">f_hat</a></td></tr>
-<tr class="memdesc:a423d4a1555477e49a7cb3c26a4a5dfd1"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:aa2cda7d4bb129ad3dfd6b89682c28cd6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa2cda7d4bb129ad3dfd6b89682c28cd6"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#aa2cda7d4bb129ad3dfd6b89682c28cd6">f</a></td></tr>
-<tr class="memdesc:aa2cda7d4bb129ad3dfd6b89682c28cd6"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwf_complex ) <br/></td></tr>
-<tr class="memitem:ac698248a376958d67a10beecfdc3aa36"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac698248a376958d67a10beecfdc3aa36"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#ac698248a376958d67a10beecfdc3aa36">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:ac698248a376958d67a10beecfdc3aa36"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a8b4c8c903e7b24610e2d2e0c9bb62705"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8b4c8c903e7b24610e2d2e0c9bb62705"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a8b4c8c903e7b24610e2d2e0c9bb62705">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a8b4c8c903e7b24610e2d2e0c9bb62705"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:a161e392c8404d11f3237350b23e8c041"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a161e392c8404d11f3237350b23e8c041"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a161e392c8404d11f3237350b23e8c041">d</a></td></tr>
-<tr class="memdesc:a161e392c8404d11f3237350b23e8c041"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank; d = 2, 3 <br/></td></tr>
-<tr class="memitem:a24e51336c8b6f1814932e2bad306179b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a24e51336c8b6f1814932e2bad306179b"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a24e51336c8b6f1814932e2bad306179b">J</a></td></tr>
-<tr class="memdesc:a24e51336c8b6f1814932e2bad306179b"><td class="mdescLeft"> </td><td class="mdescRight">problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1)) <br/></td></tr>
-<tr class="memitem:ab7b68bdae0872917b559577ac2f53402"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab7b68bdae0872917b559577ac2f53402"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#ab7b68bdae0872917b559577ac2f53402">sigma</a></td></tr>
-<tr class="memdesc:ab7b68bdae0872917b559577ac2f53402"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:acd78e2fcc4a9c29700887aee1517214c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="acd78e2fcc4a9c29700887aee1517214c"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#acd78e2fcc4a9c29700887aee1517214c">flags</a></td></tr>
-<tr class="memdesc:acd78e2fcc4a9c29700887aee1517214c"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:a3e6968100cf6a0d5950ccdcb1744788f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3e6968100cf6a0d5950ccdcb1744788f"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a3e6968100cf6a0d5950ccdcb1744788f">index_sparse_to_full</a></td></tr>
-<tr class="memdesc:a3e6968100cf6a0d5950ccdcb1744788f"><td class="mdescLeft"> </td><td class="mdescRight">index conversation, overflow for d=3, J=9! <br/></td></tr>
-<tr class="memitem:a844f94caf050adea11133a52dcbaccdc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a844f94caf050adea11133a52dcbaccdc"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a844f94caf050adea11133a52dcbaccdc">r_act_nfft_plan</a></td></tr>
-<tr class="memdesc:a844f94caf050adea11133a52dcbaccdc"><td class="mdescLeft"> </td><td class="mdescRight">index of current nfft block <br/></td></tr>
-<tr class="memitem:a505021fefe68002ba73c78815166a73c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a505021fefe68002ba73c78815166a73c"></a>
-<a class="el" href="structnfftf__plan.html">nfftf_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a505021fefe68002ba73c78815166a73c">act_nfft_plan</a></td></tr>
-<tr class="memdesc:a505021fefe68002ba73c78815166a73c"><td class="mdescLeft"> </td><td class="mdescRight">current nfft block <br/></td></tr>
-<tr class="memitem:aa01b9e613b9847fa4cc6278fcb3ae660"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa01b9e613b9847fa4cc6278fcb3ae660"></a>
-<a class="el" href="structnfftf__plan.html">nfftf_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#aa01b9e613b9847fa4cc6278fcb3ae660">center_nfft_plan</a></td></tr>
-<tr class="memdesc:aa01b9e613b9847fa4cc6278fcb3ae660"><td class="mdescLeft"> </td><td class="mdescRight">central nfft block <br/></td></tr>
-<tr class="memitem:aaadc0908c69e235bc60ec3c7b28bca47"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaadc0908c69e235bc60ec3c7b28bca47"></a>
-<a class="el" href="structnfftf__plan.html">nfftf_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#aaadc0908c69e235bc60ec3c7b28bca47">set_nfft_plan_1d</a></td></tr>
-<tr class="memdesc:aaadc0908c69e235bc60ec3c7b28bca47"><td class="mdescLeft"> </td><td class="mdescRight">nfft plans for short nffts <br/></td></tr>
-<tr class="memitem:a4ee3a7ef05c4fdbc161d24db51be3122"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4ee3a7ef05c4fdbc161d24db51be3122"></a>
-<a class="el" href="structnfftf__plan.html">nfftf_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a4ee3a7ef05c4fdbc161d24db51be3122">set_nfft_plan_2d</a></td></tr>
-<tr class="memdesc:a4ee3a7ef05c4fdbc161d24db51be3122"><td class="mdescLeft"> </td><td class="mdescRight">nfft plans for short nffts <br/></td></tr>
-<tr class="memitem:a4d7e0553a450636fc65816e4977914bd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4d7e0553a450636fc65816e4977914bd"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a4d7e0553a450636fc65816e4977914bd">x_transposed</a></td></tr>
-<tr class="memdesc:a4d7e0553a450636fc65816e4977914bd"><td class="mdescLeft"> </td><td class="mdescRight">coordinate exchanged nodes, d = 2 <br/></td></tr>
-<tr class="memitem:a75d9522d68301da2204ef8bad0e25262"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a75d9522d68301da2204ef8bad0e25262"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>x_102</b></td></tr>
-<tr class="memitem:aa47dcf1f293427495c9dbfa3e9229bd9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa47dcf1f293427495c9dbfa3e9229bd9"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>x_201</b></td></tr>
-<tr class="memitem:a0ec93a3c77d2d0c5a0facf9655504320"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ec93a3c77d2d0c5a0facf9655504320"></a>
-float * </td><td class="memItemRight" valign="bottom"><b>x_120</b></td></tr>
-<tr class="memitem:a0c015fd2deca4e70105f0c68a6a69586"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c015fd2deca4e70105f0c68a6a69586"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftf__plan.html#a0c015fd2deca4e70105f0c68a6a69586">x_021</a></td></tr>
-<tr class="memdesc:a0c015fd2deca4e70105f0c68a6a69586"><td class="mdescLeft"> </td><td class="mdescRight">coordinate exchanged nodes, d=3 <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00451">451</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structnsfftl__plan.html b/doc/api/html/structnsfftl__plan.html
deleted file mode 100644
index f41523c..0000000
--- a/doc/api/html/structnsfftl__plan.html
+++ /dev/null
@@ -1,129 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - nsfftl_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-methods">Public Member Functions</a> |
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">nsfftl_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-methods"></a>
-Public Member Functions</h2></td></tr>
-<tr class="memitem:a9a426f13a97f82a480413cba913b7f2b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9a426f13a97f82a480413cba913b7f2b"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#a9a426f13a97f82a480413cba913b7f2b">FFTW_MANGLE_LONG_DOUBLE</a> (plan)*set_fftw_plan1</td></tr>
-<tr class="memdesc:a9a426f13a97f82a480413cba913b7f2b"><td class="mdescLeft"> </td><td class="mdescRight">fftw plan for the nfft blocks <br/></td></tr>
-<tr class="memitem:aa7137e627728ebee120141e78066da51"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7137e627728ebee120141e78066da51"></a>
- </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#aa7137e627728ebee120141e78066da51">FFTW_MANGLE_LONG_DOUBLE</a> (plan)*set_fftw_plan2</td></tr>
-<tr class="memdesc:aa7137e627728ebee120141e78066da51"><td class="mdescLeft"> </td><td class="mdescRight">fftw plan for the nfft blocks <br/></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:aa0e8f48c39f40e781da203659ec018ab"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa0e8f48c39f40e781da203659ec018ab"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#aa0e8f48c39f40e781da203659ec018ab">N_total</a></td></tr>
-<tr class="memdesc:aa0e8f48c39f40e781da203659ec018ab"><td class="mdescLeft"> </td><td class="mdescRight">Total number of Fourier coefficients. <br/></td></tr>
-<tr class="memitem:af95027b3922c48e54dc5e5417d3a45e8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af95027b3922c48e54dc5e5417d3a45e8"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#af95027b3922c48e54dc5e5417d3a45e8">M_total</a></td></tr>
-<tr class="memdesc:af95027b3922c48e54dc5e5417d3a45e8"><td class="mdescLeft"> </td><td class="mdescRight">Total number of samples. <br/></td></tr>
-<tr class="memitem:a93d9d361d56e03f44bc6a9d4265b9f43"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a93d9d361d56e03f44bc6a9d4265b9f43"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#a93d9d361d56e03f44bc6a9d4265b9f43">f_hat</a></td></tr>
-<tr class="memdesc:a93d9d361d56e03f44bc6a9d4265b9f43"><td class="mdescLeft"> </td><td class="mdescRight">Vector of Fourier coefficients, size is N_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:ada472d5a0fb2afc32b4d1683c98185f6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ada472d5a0fb2afc32b4d1683c98185f6"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#ada472d5a0fb2afc32b4d1683c98185f6">f</a></td></tr>
-<tr class="memdesc:ada472d5a0fb2afc32b4d1683c98185f6"><td class="mdescLeft"> </td><td class="mdescRight">Vector of samples, size is M_total * sizeof( fftwl_complex ) <br/></td></tr>
-<tr class="memitem:aad46757ac44a32dbb04d0e453454acac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aad46757ac44a32dbb04d0e453454acac"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#aad46757ac44a32dbb04d0e453454acac">mv_trafo</a> )(void *)</td></tr>
-<tr class="memdesc:aad46757ac44a32dbb04d0e453454acac"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own transform. <br/></td></tr>
-<tr class="memitem:a658b4a71ff29aa1cc2febc66d6c175bd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a658b4a71ff29aa1cc2febc66d6c175bd"></a>
-void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#a658b4a71ff29aa1cc2febc66d6c175bd">mv_adjoint</a> )(void *)</td></tr>
-<tr class="memdesc:a658b4a71ff29aa1cc2febc66d6c175bd"><td class="mdescLeft"> </td><td class="mdescRight">Pointer to the own adjoint. <br/></td></tr>
-<tr class="memitem:aca82cd28238f0c1a5171eabd1d301f90"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aca82cd28238f0c1a5171eabd1d301f90"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#aca82cd28238f0c1a5171eabd1d301f90">d</a></td></tr>
-<tr class="memdesc:aca82cd28238f0c1a5171eabd1d301f90"><td class="mdescLeft"> </td><td class="mdescRight">dimension, rank; d = 2, 3 <br/></td></tr>
-<tr class="memitem:a6e3abb9e765b8f40b0f398a85c07d8af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6e3abb9e765b8f40b0f398a85c07d8af"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#a6e3abb9e765b8f40b0f398a85c07d8af">J</a></td></tr>
-<tr class="memdesc:a6e3abb9e765b8f40b0f398a85c07d8af"><td class="mdescLeft"> </td><td class="mdescRight">problem size, i.e., d=2: N_total=(J+4) 2^(J+1) d=3: N_total=2^J 6(2^((J+1)/2+1)-1)+2^(3(J/2+1)) <br/></td></tr>
-<tr class="memitem:aa55c79623980b8334e9fcb50fa55ecd3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa55c79623980b8334e9fcb50fa55ecd3"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#aa55c79623980b8334e9fcb50fa55ecd3">sigma</a></td></tr>
-<tr class="memdesc:aa55c79623980b8334e9fcb50fa55ecd3"><td class="mdescLeft"> </td><td class="mdescRight">oversampling-factor <br/></td></tr>
-<tr class="memitem:a5c4750f9d7a5f0dbc4d51d06d6be08d3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5c4750f9d7a5f0dbc4d51d06d6be08d3"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#a5c4750f9d7a5f0dbc4d51d06d6be08d3">flags</a></td></tr>
-<tr class="memdesc:a5c4750f9d7a5f0dbc4d51d06d6be08d3"><td class="mdescLeft"> </td><td class="mdescRight">flags for precomputation, malloc <br/></td></tr>
-<tr class="memitem:aaaf6f8d00374e91ec3baf983583b51bd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaaf6f8d00374e91ec3baf983583b51bd"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#aaaf6f8d00374e91ec3baf983583b51bd">index_sparse_to_full</a></td></tr>
-<tr class="memdesc:aaaf6f8d00374e91ec3baf983583b51bd"><td class="mdescLeft"> </td><td class="mdescRight">index conversation, overflow for d=3, J=9! <br/></td></tr>
-<tr class="memitem:ad40799f013c6b35165c2bc76eb7cb32e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad40799f013c6b35165c2bc76eb7cb32e"></a>
-int </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#ad40799f013c6b35165c2bc76eb7cb32e">r_act_nfft_plan</a></td></tr>
-<tr class="memdesc:ad40799f013c6b35165c2bc76eb7cb32e"><td class="mdescLeft"> </td><td class="mdescRight">index of current nfft block <br/></td></tr>
-<tr class="memitem:a28eeabbe1dbef7ccf1c2b8c683a4b5dc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28eeabbe1dbef7ccf1c2b8c683a4b5dc"></a>
-<a class="el" href="structnfftl__plan.html">nfftl_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#a28eeabbe1dbef7ccf1c2b8c683a4b5dc">act_nfft_plan</a></td></tr>
-<tr class="memdesc:a28eeabbe1dbef7ccf1c2b8c683a4b5dc"><td class="mdescLeft"> </td><td class="mdescRight">current nfft block <br/></td></tr>
-<tr class="memitem:af26a51757ddb28c4bcb37a0426e83fc1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af26a51757ddb28c4bcb37a0426e83fc1"></a>
-<a class="el" href="structnfftl__plan.html">nfftl_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#af26a51757ddb28c4bcb37a0426e83fc1">center_nfft_plan</a></td></tr>
-<tr class="memdesc:af26a51757ddb28c4bcb37a0426e83fc1"><td class="mdescLeft"> </td><td class="mdescRight">central nfft block <br/></td></tr>
-<tr class="memitem:a89a23c26f73280c5945e62f8966195fb"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a89a23c26f73280c5945e62f8966195fb"></a>
-<a class="el" href="structnfftl__plan.html">nfftl_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#a89a23c26f73280c5945e62f8966195fb">set_nfft_plan_1d</a></td></tr>
-<tr class="memdesc:a89a23c26f73280c5945e62f8966195fb"><td class="mdescLeft"> </td><td class="mdescRight">nfft plans for short nffts <br/></td></tr>
-<tr class="memitem:aa7ae0c8a9b2f404bd1f8ce4820d7cf43"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7ae0c8a9b2f404bd1f8ce4820d7cf43"></a>
-<a class="el" href="structnfftl__plan.html">nfftl_plan</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#aa7ae0c8a9b2f404bd1f8ce4820d7cf43">set_nfft_plan_2d</a></td></tr>
-<tr class="memdesc:aa7ae0c8a9b2f404bd1f8ce4820d7cf43"><td class="mdescLeft"> </td><td class="mdescRight">nfft plans for short nffts <br/></td></tr>
-<tr class="memitem:a28eb398ae77902fd1ec2e0604d2a77ce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28eb398ae77902fd1ec2e0604d2a77ce"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#a28eb398ae77902fd1ec2e0604d2a77ce">x_transposed</a></td></tr>
-<tr class="memdesc:a28eb398ae77902fd1ec2e0604d2a77ce"><td class="mdescLeft"> </td><td class="mdescRight">coordinate exchanged nodes, d = 2 <br/></td></tr>
-<tr class="memitem:ab4ce3bd81b5bab3e868227cbe2e50101"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab4ce3bd81b5bab3e868227cbe2e50101"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>x_102</b></td></tr>
-<tr class="memitem:a233cf0ab307992432bcfcd6f34f20937"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a233cf0ab307992432bcfcd6f34f20937"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>x_201</b></td></tr>
-<tr class="memitem:a965b92ec4facc3db597e1fb4fb300aed"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a965b92ec4facc3db597e1fb4fb300aed"></a>
-long double * </td><td class="memItemRight" valign="bottom"><b>x_120</b></td></tr>
-<tr class="memitem:a62e8e58fe1b84f82ac85301a091af3fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a62e8e58fe1b84f82ac85301a091af3fa"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structnsfftl__plan.html#a62e8e58fe1b84f82ac85301a091af3fa">x_021</a></td></tr>
-<tr class="memdesc:a62e8e58fe1b84f82ac85301a091af3fa"><td class="mdescLeft"> </td><td class="mdescRight">coordinate exchanged nodes, d=3 <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00451">451</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structs__param.html b/doc/api/html/structs__param.html
deleted file mode 100644
index 0d24e90..0000000
--- a/doc/api/html/structs__param.html
+++ /dev/null
@@ -1,93 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - s_param Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">s_param Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a35ae7e155deb56cd9db0a478a90dcbce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35ae7e155deb56cd9db0a478a90dcbce"></a>
-int </td><td class="memItemRight" valign="bottom"><b>d</b></td></tr>
-<tr class="memitem:ab774ab29ddf684c1adf243b19e25858d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab774ab29ddf684c1adf243b19e25858d"></a>
-int </td><td class="memItemRight" valign="bottom"><b>trafo_adjoint</b></td></tr>
-<tr class="memitem:a5bb17952658c456879c4696d80acb205"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5bb17952658c456879c4696d80acb205"></a>
-int </td><td class="memItemRight" valign="bottom"><b>N</b></td></tr>
-<tr class="memitem:a3be96a7850c7510c9ee724a64af1059d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3be96a7850c7510c9ee724a64af1059d"></a>
-int </td><td class="memItemRight" valign="bottom"><b>M</b></td></tr>
-<tr class="memitem:afae0fd8933f96ca0d39f11d9f59e1b33"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afae0fd8933f96ca0d39f11d9f59e1b33"></a>
-double </td><td class="memItemRight" valign="bottom"><b>sigma</b></td></tr>
-<tr class="memitem:a43995e5d91ee2164a0a786e781067279"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a43995e5d91ee2164a0a786e781067279"></a>
-int </td><td class="memItemRight" valign="bottom"><b>m</b></td></tr>
-<tr class="memitem:ad9d83fdb05317d16f7cb4d16393b2bb3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad9d83fdb05317d16f7cb4d16393b2bb3"></a>
-int </td><td class="memItemRight" valign="bottom"><b>flags</b></td></tr>
-<tr class="memitem:a328a78e1413be0875f873f6516cab41d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a328a78e1413be0875f873f6516cab41d"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nfsft_flags</b></td></tr>
-<tr class="memitem:a0ddad8b8daeb96efa32047f9d56f5cb8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0ddad8b8daeb96efa32047f9d56f5cb8"></a>
-int </td><td class="memItemRight" valign="bottom"><b>psi_flags</b></td></tr>
-<tr class="memitem:a467a593d75c1526916c37747db8ec234"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a467a593d75c1526916c37747db8ec234"></a>
-int </td><td class="memItemRight" valign="bottom"><b>L</b></td></tr>
-<tr class="memitem:ace7c761113b9019b7b8fc5fea042b713"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ace7c761113b9019b7b8fc5fea042b713"></a>
-int </td><td class="memItemRight" valign="bottom"><b>n</b></td></tr>
-<tr class="memitem:aef18bbac08d37dbab0b2cd464ad3bad0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aef18bbac08d37dbab0b2cd464ad3bad0"></a>
-int </td><td class="memItemRight" valign="bottom"><b>p</b></td></tr>
-<tr class="memitem:a55b49785531ca10cee68118598cba53a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a55b49785531ca10cee68118598cba53a"></a>
-char * </td><td class="memItemRight" valign="bottom"><b>kernel_name</b></td></tr>
-<tr class="memitem:a8538301f8439ae1af3c34e43a31bc0b7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8538301f8439ae1af3c34e43a31bc0b7"></a>
-double </td><td class="memItemRight" valign="bottom"><b>c</b></td></tr>
-<tr class="memitem:a30bc71eb0fcf6fb9716b0576834ef810"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a30bc71eb0fcf6fb9716b0576834ef810"></a>
-double </td><td class="memItemRight" valign="bottom"><b>eps_I</b></td></tr>
-<tr class="memitem:ad9a9a16ea14ab79fef8e1d9ce46a9b8f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad9a9a16ea14ab79fef8e1d9ce46a9b8f"></a>
-double </td><td class="memItemRight" valign="bottom"><b>eps_B</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft__benchomp_8c_source.html#l00110">110</a> of file <a class="el" href="nfft__benchomp_8c_source.html">nfft_benchomp.c</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following files:<ul>
-<li><a class="el" href="nfft__benchomp_8c_source.html">nfft_benchomp.c</a></li>
-<li><a class="el" href="nfsft__benchomp_8c_source.html">nfsft_benchomp.c</a></li>
-<li><a class="el" href="fastsum__benchomp_8c_source.html">fastsum_benchomp.c</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structs__result.html b/doc/api/html/structs__result.html
deleted file mode 100644
index 095f58f..0000000
--- a/doc/api/html/structs__result.html
+++ /dev/null
@@ -1,65 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - s_result Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">s_result Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:aca01173e4ebcbb7307ae51a36a7d0a1c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aca01173e4ebcbb7307ae51a36a7d0a1c"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nthreads</b></td></tr>
-<tr class="memitem:a04dc463c2923a9e02349fd00d6ec39f0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a04dc463c2923a9e02349fd00d6ec39f0"></a>
-<a class="el" href="structs__resval.html">s_resval</a> </td><td class="memItemRight" valign="bottom"><b>resval</b> [6]</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft__benchomp_8c_source.html#l00128">128</a> of file <a class="el" href="nfft__benchomp_8c_source.html">nfft_benchomp.c</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following files:<ul>
-<li><a class="el" href="nfft__benchomp_8c_source.html">nfft_benchomp.c</a></li>
-<li><a class="el" href="nfsft__benchomp_8c_source.html">nfsft_benchomp.c</a></li>
-<li><a class="el" href="fastsum__benchomp_8c_source.html">fastsum_benchomp.c</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structs__resval.html b/doc/api/html/structs__resval.html
deleted file mode 100644
index 9726000..0000000
--- a/doc/api/html/structs__resval.html
+++ /dev/null
@@ -1,67 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - s_resval Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">s_resval Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:aa7c46309a88aba50fd63402037d8dd3e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7c46309a88aba50fd63402037d8dd3e"></a>
-double </td><td class="memItemRight" valign="bottom"><b>avg</b></td></tr>
-<tr class="memitem:a70afc1842566eb54e7519287c3d073be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a70afc1842566eb54e7519287c3d073be"></a>
-double </td><td class="memItemRight" valign="bottom"><b>min</b></td></tr>
-<tr class="memitem:a5b114ea67a970f09f68257e35b549dac"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5b114ea67a970f09f68257e35b549dac"></a>
-double </td><td class="memItemRight" valign="bottom"><b>max</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft__benchomp_8c_source.html#l00121">121</a> of file <a class="el" href="nfft__benchomp_8c_source.html">nfft_benchomp.c</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following files:<ul>
-<li><a class="el" href="nfft__benchomp_8c_source.html">nfft_benchomp.c</a></li>
-<li><a class="el" href="nfsft__benchomp_8c_source.html">nfsft_benchomp.c</a></li>
-<li><a class="el" href="fastsum__benchomp_8c_source.html">fastsum_benchomp.c</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structs__testset.html b/doc/api/html/structs__testset.html
deleted file mode 100644
index bb5e687..0000000
--- a/doc/api/html/structs__testset.html
+++ /dev/null
@@ -1,67 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - s_testset Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">s_testset Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:abac38e41e682993ccec030f7862d86fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abac38e41e682993ccec030f7862d86fa"></a>
-<a class="el" href="structs__param.html">s_param</a> </td><td class="memItemRight" valign="bottom"><b>param</b></td></tr>
-<tr class="memitem:a519427a984ec85acc3cb3dc5f3a724be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a519427a984ec85acc3cb3dc5f3a724be"></a>
-<a class="el" href="structs__result.html">s_result</a> * </td><td class="memItemRight" valign="bottom"><b>results</b></td></tr>
-<tr class="memitem:a641e1f292f908995f7a1df9fe725e48b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a641e1f292f908995f7a1df9fe725e48b"></a>
-int </td><td class="memItemRight" valign="bottom"><b>nresults</b></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft__benchomp_8c_source.html#l00134">134</a> of file <a class="el" href="nfft__benchomp_8c_source.html">nfft_benchomp.c</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following files:<ul>
-<li><a class="el" href="nfft__benchomp_8c_source.html">nfft_benchomp.c</a></li>
-<li><a class="el" href="nfsft__benchomp_8c_source.html">nfsft_benchomp.c</a></li>
-<li><a class="el" href="fastsum__benchomp_8c_source.html">fastsum_benchomp.c</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structsolver__plan__complex.html b/doc/api/html/structsolver__plan__complex.html
deleted file mode 100644
index c63752b..0000000
--- a/doc/api/html/structsolver__plan__complex.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - solver_plan_complex Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">solver_plan_complex Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:afc0da6d097e04c2e28302a3b749140e7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afc0da6d097e04c2e28302a3b749140e7"></a>
-<a class="el" href="structnfft__mv__plan__complex.html">nfft_mv_plan_complex</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#afc0da6d097e04c2e28302a3b749140e7">mv</a></td></tr>
-<tr class="memdesc:afc0da6d097e04c2e28302a3b749140e7"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:a5423b6885c0bd94b563c8cfd9370c942"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5423b6885c0bd94b563c8cfd9370c942"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#a5423b6885c0bd94b563c8cfd9370c942">flags</a></td></tr>
-<tr class="memdesc:a5423b6885c0bd94b563c8cfd9370c942"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:a3bb04f250f17c2a4ab5d0b813b7ccf2c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3bb04f250f17c2a4ab5d0b813b7ccf2c"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#a3bb04f250f17c2a4ab5d0b813b7ccf2c">w</a></td></tr>
-<tr class="memdesc:a3bb04f250f17c2a4ab5d0b813b7ccf2c"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:a80a69f8b5ddbd33be7041e6c6b0758ce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a80a69f8b5ddbd33be7041e6c6b0758ce"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#a80a69f8b5ddbd33be7041e6c6b0758ce">w_hat</a></td></tr>
-<tr class="memdesc:a80a69f8b5ddbd33be7041e6c6b0758ce"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:ae05e9da3d96651d6a5d6456004791bde"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae05e9da3d96651d6a5d6456004791bde"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#ae05e9da3d96651d6a5d6456004791bde">y</a></td></tr>
-<tr class="memdesc:ae05e9da3d96651d6a5d6456004791bde"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:afac00cb681323619324be8787ff04f75"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afac00cb681323619324be8787ff04f75"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#afac00cb681323619324be8787ff04f75">f_hat_iter</a></td></tr>
-<tr class="memdesc:afac00cb681323619324be8787ff04f75"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:a384e2c5f7b782e8c1bc57981376e6ff3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a384e2c5f7b782e8c1bc57981376e6ff3"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#a384e2c5f7b782e8c1bc57981376e6ff3">r_iter</a></td></tr>
-<tr class="memdesc:a384e2c5f7b782e8c1bc57981376e6ff3"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:aa554f9fda690f73783217b257a5faa03"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa554f9fda690f73783217b257a5faa03"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#aa554f9fda690f73783217b257a5faa03">z_hat_iter</a></td></tr>
-<tr class="memdesc:aa554f9fda690f73783217b257a5faa03"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of first kind <br/></td></tr>
-<tr class="memitem:a779777407a3de6429583efe2ab067fce"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a779777407a3de6429583efe2ab067fce"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#a779777407a3de6429583efe2ab067fce">p_hat_iter</a></td></tr>
-<tr class="memdesc:a779777407a3de6429583efe2ab067fce"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:af41e928a58e7c461ff45037d47c350b5"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af41e928a58e7c461ff45037d47c350b5"></a>
-fftw_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#af41e928a58e7c461ff45037d47c350b5">v_iter</a></td></tr>
-<tr class="memdesc:af41e928a58e7c461ff45037d47c350b5"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:aebd8c33327e8d7b6b63b41ba2f7c1a02"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aebd8c33327e8d7b6b63b41ba2f7c1a02"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#aebd8c33327e8d7b6b63b41ba2f7c1a02">alpha_iter</a></td></tr>
-<tr class="memdesc:aebd8c33327e8d7b6b63b41ba2f7c1a02"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:af13036b1a6f6edabe3fd862f77cf5000"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af13036b1a6f6edabe3fd862f77cf5000"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#af13036b1a6f6edabe3fd862f77cf5000">beta_iter</a></td></tr>
-<tr class="memdesc:af13036b1a6f6edabe3fd862f77cf5000"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:a88b5453ab0159bede71240fb32828abe"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a88b5453ab0159bede71240fb32828abe"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#a88b5453ab0159bede71240fb32828abe">dot_r_iter</a></td></tr>
-<tr class="memdesc:a88b5453ab0159bede71240fb32828abe"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:add3b6bc4149ba5371ef0b8bd91443e50"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="add3b6bc4149ba5371ef0b8bd91443e50"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#add3b6bc4149ba5371ef0b8bd91443e50">dot_r_iter_old</a></td></tr>
-<tr class="memdesc:add3b6bc4149ba5371ef0b8bd91443e50"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:aba91d7700d200a0b15cecf8aafcef0df"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aba91d7700d200a0b15cecf8aafcef0df"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#aba91d7700d200a0b15cecf8aafcef0df">dot_z_hat_iter</a></td></tr>
-<tr class="memdesc:aba91d7700d200a0b15cecf8aafcef0df"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of z_hat_iter <br/></td></tr>
-<tr class="memitem:aadb97426a0e35fd46a65557c56b055ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aadb97426a0e35fd46a65557c56b055ee"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#aadb97426a0e35fd46a65557c56b055ee">dot_z_hat_iter_old</a></td></tr>
-<tr class="memdesc:aadb97426a0e35fd46a65557c56b055ee"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a0cced7bb2f3b85b75b765d796e2c741d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0cced7bb2f3b85b75b765d796e2c741d"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#a0cced7bb2f3b85b75b765d796e2c741d">dot_p_hat_iter</a></td></tr>
-<tr class="memdesc:a0cced7bb2f3b85b75b765d796e2c741d"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of p_hat_iter <br/></td></tr>
-<tr class="memitem:a0561b1d4bd014a175ef75d069cc592de"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0561b1d4bd014a175ef75d069cc592de"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__complex.html#a0561b1d4bd014a175ef75d069cc592de">dot_v_iter</a></td></tr>
-<tr class="memdesc:a0561b1d4bd014a175ef75d069cc592de"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00763">763</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structsolver__plan__double.html b/doc/api/html/structsolver__plan__double.html
deleted file mode 100644
index b4b756d..0000000
--- a/doc/api/html/structsolver__plan__double.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - solver_plan_double Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">solver_plan_double Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a114ce0569fe40dbbf97d8f5fbe125404"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a114ce0569fe40dbbf97d8f5fbe125404"></a>
-<a class="el" href="structnfft__mv__plan__double.html">nfft_mv_plan_double</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a114ce0569fe40dbbf97d8f5fbe125404">mv</a></td></tr>
-<tr class="memdesc:a114ce0569fe40dbbf97d8f5fbe125404"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:ad4f6df9d890d106438ed0d3d725bf5b4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad4f6df9d890d106438ed0d3d725bf5b4"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#ad4f6df9d890d106438ed0d3d725bf5b4">flags</a></td></tr>
-<tr class="memdesc:ad4f6df9d890d106438ed0d3d725bf5b4"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:adc2b7cea47756753ae9f8d5731f8d500"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adc2b7cea47756753ae9f8d5731f8d500"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#adc2b7cea47756753ae9f8d5731f8d500">w</a></td></tr>
-<tr class="memdesc:adc2b7cea47756753ae9f8d5731f8d500"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:ab16ed4ac6cf04f57c4b1f194fbc09472"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab16ed4ac6cf04f57c4b1f194fbc09472"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#ab16ed4ac6cf04f57c4b1f194fbc09472">w_hat</a></td></tr>
-<tr class="memdesc:ab16ed4ac6cf04f57c4b1f194fbc09472"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:accc401c5912fe60922d4ce2b30132e18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="accc401c5912fe60922d4ce2b30132e18"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#accc401c5912fe60922d4ce2b30132e18">y</a></td></tr>
-<tr class="memdesc:accc401c5912fe60922d4ce2b30132e18"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:a25db7056f50bf19ab3e3527050a415d1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a25db7056f50bf19ab3e3527050a415d1"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a25db7056f50bf19ab3e3527050a415d1">f_hat_iter</a></td></tr>
-<tr class="memdesc:a25db7056f50bf19ab3e3527050a415d1"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:a088f3b3f683ffc2b9c7e42b02fa17183"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a088f3b3f683ffc2b9c7e42b02fa17183"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a088f3b3f683ffc2b9c7e42b02fa17183">r_iter</a></td></tr>
-<tr class="memdesc:a088f3b3f683ffc2b9c7e42b02fa17183"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:aac8b0f141a85d329e39319f6c19f3e48"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aac8b0f141a85d329e39319f6c19f3e48"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#aac8b0f141a85d329e39319f6c19f3e48">z_hat_iter</a></td></tr>
-<tr class="memdesc:aac8b0f141a85d329e39319f6c19f3e48"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of first kind <br/></td></tr>
-<tr class="memitem:a21913274af8b42c199546919e2999677"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a21913274af8b42c199546919e2999677"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a21913274af8b42c199546919e2999677">p_hat_iter</a></td></tr>
-<tr class="memdesc:a21913274af8b42c199546919e2999677"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:a53d18b8e21062399f9232058704cd0b2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a53d18b8e21062399f9232058704cd0b2"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a53d18b8e21062399f9232058704cd0b2">v_iter</a></td></tr>
-<tr class="memdesc:a53d18b8e21062399f9232058704cd0b2"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:ae35eb29827ce76741bd658714350735b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae35eb29827ce76741bd658714350735b"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#ae35eb29827ce76741bd658714350735b">alpha_iter</a></td></tr>
-<tr class="memdesc:ae35eb29827ce76741bd658714350735b"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:aebfe38cf3b3ca344bbfbb7b1cf41eca8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aebfe38cf3b3ca344bbfbb7b1cf41eca8"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#aebfe38cf3b3ca344bbfbb7b1cf41eca8">beta_iter</a></td></tr>
-<tr class="memdesc:aebfe38cf3b3ca344bbfbb7b1cf41eca8"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:a77a16ccb2a2a1091dd121d024a3dc53b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a77a16ccb2a2a1091dd121d024a3dc53b"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a77a16ccb2a2a1091dd121d024a3dc53b">dot_r_iter</a></td></tr>
-<tr class="memdesc:a77a16ccb2a2a1091dd121d024a3dc53b"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:a5d47ba554ae4d190384eaca6250f7312"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a5d47ba554ae4d190384eaca6250f7312"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a5d47ba554ae4d190384eaca6250f7312">dot_r_iter_old</a></td></tr>
-<tr class="memdesc:a5d47ba554ae4d190384eaca6250f7312"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:a495a0f084b43fea59c6328e085467cea"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a495a0f084b43fea59c6328e085467cea"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a495a0f084b43fea59c6328e085467cea">dot_z_hat_iter</a></td></tr>
-<tr class="memdesc:a495a0f084b43fea59c6328e085467cea"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of z_hat_iter <br/></td></tr>
-<tr class="memitem:a35f2567cc25bcfce28dbb48eba5e49c9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a35f2567cc25bcfce28dbb48eba5e49c9"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a35f2567cc25bcfce28dbb48eba5e49c9">dot_z_hat_iter_old</a></td></tr>
-<tr class="memdesc:a35f2567cc25bcfce28dbb48eba5e49c9"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a21f781633362300a145e71ea88febbae"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a21f781633362300a145e71ea88febbae"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a21f781633362300a145e71ea88febbae">dot_p_hat_iter</a></td></tr>
-<tr class="memdesc:a21f781633362300a145e71ea88febbae"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of p_hat_iter <br/></td></tr>
-<tr class="memitem:a364a63cb093efa72e618a349a58d1890"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a364a63cb093efa72e618a349a58d1890"></a>
-double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolver__plan__double.html#a364a63cb093efa72e618a349a58d1890">dot_v_iter</a></td></tr>
-<tr class="memdesc:a364a63cb093efa72e618a349a58d1890"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00763">763</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structsolverf__plan__complex.html b/doc/api/html/structsolverf__plan__complex.html
deleted file mode 100644
index 67e7f37..0000000
--- a/doc/api/html/structsolverf__plan__complex.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - solverf_plan_complex Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">solverf_plan_complex Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a519286afbd99d020738a92e03c320a18"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a519286afbd99d020738a92e03c320a18"></a>
-<a class="el" href="structnfftf__mv__plan__complex.html">nfftf_mv_plan_complex</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a519286afbd99d020738a92e03c320a18">mv</a></td></tr>
-<tr class="memdesc:a519286afbd99d020738a92e03c320a18"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:a2d7642432b4b627a4bf77d1c05216669"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2d7642432b4b627a4bf77d1c05216669"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a2d7642432b4b627a4bf77d1c05216669">flags</a></td></tr>
-<tr class="memdesc:a2d7642432b4b627a4bf77d1c05216669"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:a91f7e03dc8509952827333cc61ca9aa4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a91f7e03dc8509952827333cc61ca9aa4"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a91f7e03dc8509952827333cc61ca9aa4">w</a></td></tr>
-<tr class="memdesc:a91f7e03dc8509952827333cc61ca9aa4"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:aece5ec597b25ea28c945d2559316fad8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aece5ec597b25ea28c945d2559316fad8"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#aece5ec597b25ea28c945d2559316fad8">w_hat</a></td></tr>
-<tr class="memdesc:aece5ec597b25ea28c945d2559316fad8"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:a522b2ad5b572dce6d786b26e221a14d6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a522b2ad5b572dce6d786b26e221a14d6"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a522b2ad5b572dce6d786b26e221a14d6">y</a></td></tr>
-<tr class="memdesc:a522b2ad5b572dce6d786b26e221a14d6"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:abe0364fe67e48a336fca522a0cf6ee1b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe0364fe67e48a336fca522a0cf6ee1b"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#abe0364fe67e48a336fca522a0cf6ee1b">f_hat_iter</a></td></tr>
-<tr class="memdesc:abe0364fe67e48a336fca522a0cf6ee1b"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:a4ca8ff73e59386ea3d5003c1ad27459d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4ca8ff73e59386ea3d5003c1ad27459d"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a4ca8ff73e59386ea3d5003c1ad27459d">r_iter</a></td></tr>
-<tr class="memdesc:a4ca8ff73e59386ea3d5003c1ad27459d"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:a4c8dbe5d5a4d910b93ae7f84215482c8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4c8dbe5d5a4d910b93ae7f84215482c8"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a4c8dbe5d5a4d910b93ae7f84215482c8">z_hat_iter</a></td></tr>
-<tr class="memdesc:a4c8dbe5d5a4d910b93ae7f84215482c8"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of first kind <br/></td></tr>
-<tr class="memitem:ac62464d925e739f79c28059cd1e59faa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac62464d925e739f79c28059cd1e59faa"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#ac62464d925e739f79c28059cd1e59faa">p_hat_iter</a></td></tr>
-<tr class="memdesc:ac62464d925e739f79c28059cd1e59faa"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:a7e352320832a737577bd9ebe689a50bd"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7e352320832a737577bd9ebe689a50bd"></a>
-fftwf_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a7e352320832a737577bd9ebe689a50bd">v_iter</a></td></tr>
-<tr class="memdesc:a7e352320832a737577bd9ebe689a50bd"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:ac2ce57e2bfbc31f9262e5ce93562d899"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ac2ce57e2bfbc31f9262e5ce93562d899"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#ac2ce57e2bfbc31f9262e5ce93562d899">alpha_iter</a></td></tr>
-<tr class="memdesc:ac2ce57e2bfbc31f9262e5ce93562d899"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:abd007d004fedd5bb4b9eb919d8e928d8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd007d004fedd5bb4b9eb919d8e928d8"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#abd007d004fedd5bb4b9eb919d8e928d8">beta_iter</a></td></tr>
-<tr class="memdesc:abd007d004fedd5bb4b9eb919d8e928d8"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:a1bb6290598f2f4f1452a2de2c27f54af"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1bb6290598f2f4f1452a2de2c27f54af"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a1bb6290598f2f4f1452a2de2c27f54af">dot_r_iter</a></td></tr>
-<tr class="memdesc:a1bb6290598f2f4f1452a2de2c27f54af"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:a861d76266b51f96c015ed6e33505978d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a861d76266b51f96c015ed6e33505978d"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a861d76266b51f96c015ed6e33505978d">dot_r_iter_old</a></td></tr>
-<tr class="memdesc:a861d76266b51f96c015ed6e33505978d"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:adeec40c2b8450cd7486f8524c6dcc3d4"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="adeec40c2b8450cd7486f8524c6dcc3d4"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#adeec40c2b8450cd7486f8524c6dcc3d4">dot_z_hat_iter</a></td></tr>
-<tr class="memdesc:adeec40c2b8450cd7486f8524c6dcc3d4"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of z_hat_iter <br/></td></tr>
-<tr class="memitem:a71e2482ed0eb34229fb166d6821d1a03"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a71e2482ed0eb34229fb166d6821d1a03"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a71e2482ed0eb34229fb166d6821d1a03">dot_z_hat_iter_old</a></td></tr>
-<tr class="memdesc:a71e2482ed0eb34229fb166d6821d1a03"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a3d2a5ea538a77dc4f2da9b53beab9c01"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d2a5ea538a77dc4f2da9b53beab9c01"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a3d2a5ea538a77dc4f2da9b53beab9c01">dot_p_hat_iter</a></td></tr>
-<tr class="memdesc:a3d2a5ea538a77dc4f2da9b53beab9c01"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of p_hat_iter <br/></td></tr>
-<tr class="memitem:a46f2243aac9e8e4689ab7f06914d3f97"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a46f2243aac9e8e4689ab7f06914d3f97"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__complex.html#a46f2243aac9e8e4689ab7f06914d3f97">dot_v_iter</a></td></tr>
-<tr class="memdesc:a46f2243aac9e8e4689ab7f06914d3f97"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00763">763</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structsolverf__plan__double.html b/doc/api/html/structsolverf__plan__double.html
deleted file mode 100644
index 342c8d1..0000000
--- a/doc/api/html/structsolverf__plan__double.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - solverf_plan_double Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">solverf_plan_double Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:aaa4fedc5005e075e7f707770384be114"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaa4fedc5005e075e7f707770384be114"></a>
-<a class="el" href="structnfftf__mv__plan__double.html">nfftf_mv_plan_double</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#aaa4fedc5005e075e7f707770384be114">mv</a></td></tr>
-<tr class="memdesc:aaa4fedc5005e075e7f707770384be114"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:a28ce886cb705632f8f866bfb5880795b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a28ce886cb705632f8f866bfb5880795b"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#a28ce886cb705632f8f866bfb5880795b">flags</a></td></tr>
-<tr class="memdesc:a28ce886cb705632f8f866bfb5880795b"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:a63c0a528c6e9989c7b0fee6c02d1fbff"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a63c0a528c6e9989c7b0fee6c02d1fbff"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#a63c0a528c6e9989c7b0fee6c02d1fbff">w</a></td></tr>
-<tr class="memdesc:a63c0a528c6e9989c7b0fee6c02d1fbff"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:ab1cada21b9034edfd3a1b2f77252f3be"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab1cada21b9034edfd3a1b2f77252f3be"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#ab1cada21b9034edfd3a1b2f77252f3be">w_hat</a></td></tr>
-<tr class="memdesc:ab1cada21b9034edfd3a1b2f77252f3be"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:a31aa1269dccbcfad158f31c276b0399e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a31aa1269dccbcfad158f31c276b0399e"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#a31aa1269dccbcfad158f31c276b0399e">y</a></td></tr>
-<tr class="memdesc:a31aa1269dccbcfad158f31c276b0399e"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:aab9daf7841a5f6b3a059921713736e3c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aab9daf7841a5f6b3a059921713736e3c"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#aab9daf7841a5f6b3a059921713736e3c">f_hat_iter</a></td></tr>
-<tr class="memdesc:aab9daf7841a5f6b3a059921713736e3c"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:a6261a160be099d721856fab16f31cf22"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6261a160be099d721856fab16f31cf22"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#a6261a160be099d721856fab16f31cf22">r_iter</a></td></tr>
-<tr class="memdesc:a6261a160be099d721856fab16f31cf22"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:aeee7fa961ebdf43e0caf1108e6b5ada7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aeee7fa961ebdf43e0caf1108e6b5ada7"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#aeee7fa961ebdf43e0caf1108e6b5ada7">z_hat_iter</a></td></tr>
-<tr class="memdesc:aeee7fa961ebdf43e0caf1108e6b5ada7"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of first kind <br/></td></tr>
-<tr class="memitem:a6987fb320cd6798faabe9dfd92a494f2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6987fb320cd6798faabe9dfd92a494f2"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#a6987fb320cd6798faabe9dfd92a494f2">p_hat_iter</a></td></tr>
-<tr class="memdesc:a6987fb320cd6798faabe9dfd92a494f2"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:a6ee0cddd36b16d6b8cc09baf6db05cf9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6ee0cddd36b16d6b8cc09baf6db05cf9"></a>
-float * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#a6ee0cddd36b16d6b8cc09baf6db05cf9">v_iter</a></td></tr>
-<tr class="memdesc:a6ee0cddd36b16d6b8cc09baf6db05cf9"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:ae1d25f3ba1b23f7d5953991495c91ce3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae1d25f3ba1b23f7d5953991495c91ce3"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#ae1d25f3ba1b23f7d5953991495c91ce3">alpha_iter</a></td></tr>
-<tr class="memdesc:ae1d25f3ba1b23f7d5953991495c91ce3"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:a4b53103abc562b5c603b4b656d1992fa"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4b53103abc562b5c603b4b656d1992fa"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#a4b53103abc562b5c603b4b656d1992fa">beta_iter</a></td></tr>
-<tr class="memdesc:a4b53103abc562b5c603b4b656d1992fa"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:ae52e93514983b50204d70f660e720e04"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae52e93514983b50204d70f660e720e04"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#ae52e93514983b50204d70f660e720e04">dot_r_iter</a></td></tr>
-<tr class="memdesc:ae52e93514983b50204d70f660e720e04"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:a2ee1d6b53c866d65aaa948afcbdd871e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2ee1d6b53c866d65aaa948afcbdd871e"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#a2ee1d6b53c866d65aaa948afcbdd871e">dot_r_iter_old</a></td></tr>
-<tr class="memdesc:a2ee1d6b53c866d65aaa948afcbdd871e"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:a845482517a34f22d7eb39bf1747e5dd6"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a845482517a34f22d7eb39bf1747e5dd6"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#a845482517a34f22d7eb39bf1747e5dd6">dot_z_hat_iter</a></td></tr>
-<tr class="memdesc:a845482517a34f22d7eb39bf1747e5dd6"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of z_hat_iter <br/></td></tr>
-<tr class="memitem:aa9672016211508805091ab645b489bbf"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa9672016211508805091ab645b489bbf"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#aa9672016211508805091ab645b489bbf">dot_z_hat_iter_old</a></td></tr>
-<tr class="memdesc:aa9672016211508805091ab645b489bbf"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a2bf2a21b09e47a883f9665b4ec38f3c2"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2bf2a21b09e47a883f9665b4ec38f3c2"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#a2bf2a21b09e47a883f9665b4ec38f3c2">dot_p_hat_iter</a></td></tr>
-<tr class="memdesc:a2bf2a21b09e47a883f9665b4ec38f3c2"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of p_hat_iter <br/></td></tr>
-<tr class="memitem:aaeae6a2f28ba0ded31baca1aa8c36431"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaeae6a2f28ba0ded31baca1aa8c36431"></a>
-float </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverf__plan__double.html#aaeae6a2f28ba0ded31baca1aa8c36431">dot_v_iter</a></td></tr>
-<tr class="memdesc:aaeae6a2f28ba0ded31baca1aa8c36431"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00763">763</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structsolverl__plan__complex.html b/doc/api/html/structsolverl__plan__complex.html
deleted file mode 100644
index 67a86b1..0000000
--- a/doc/api/html/structsolverl__plan__complex.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - solverl_plan_complex Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">solverl_plan_complex Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a3da97d0d8d896d9da6a95a68a6f65442"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3da97d0d8d896d9da6a95a68a6f65442"></a>
-<a class="el" href="structnfftl__mv__plan__complex.html">nfftl_mv_plan_complex</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#a3da97d0d8d896d9da6a95a68a6f65442">mv</a></td></tr>
-<tr class="memdesc:a3da97d0d8d896d9da6a95a68a6f65442"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:abd86575c07d53042297da1c54ebc9e1a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abd86575c07d53042297da1c54ebc9e1a"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#abd86575c07d53042297da1c54ebc9e1a">flags</a></td></tr>
-<tr class="memdesc:abd86575c07d53042297da1c54ebc9e1a"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:a547382238a57e96f316bac4dd291af0d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a547382238a57e96f316bac4dd291af0d"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#a547382238a57e96f316bac4dd291af0d">w</a></td></tr>
-<tr class="memdesc:a547382238a57e96f316bac4dd291af0d"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:ad4d107f6ef642a2f8173d05d73bde405"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad4d107f6ef642a2f8173d05d73bde405"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#ad4d107f6ef642a2f8173d05d73bde405">w_hat</a></td></tr>
-<tr class="memdesc:ad4d107f6ef642a2f8173d05d73bde405"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:afbcb92106789225f6d54be521797b97f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afbcb92106789225f6d54be521797b97f"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#afbcb92106789225f6d54be521797b97f">y</a></td></tr>
-<tr class="memdesc:afbcb92106789225f6d54be521797b97f"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:affba771210ad63dfce92bed9a629e19f"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="affba771210ad63dfce92bed9a629e19f"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#affba771210ad63dfce92bed9a629e19f">f_hat_iter</a></td></tr>
-<tr class="memdesc:affba771210ad63dfce92bed9a629e19f"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:aec8fcaf36c7ce234e76970dc4b4ec9c9"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aec8fcaf36c7ce234e76970dc4b4ec9c9"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#aec8fcaf36c7ce234e76970dc4b4ec9c9">r_iter</a></td></tr>
-<tr class="memdesc:aec8fcaf36c7ce234e76970dc4b4ec9c9"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:abe468b3b489a8707538f083713962fcc"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abe468b3b489a8707538f083713962fcc"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#abe468b3b489a8707538f083713962fcc">z_hat_iter</a></td></tr>
-<tr class="memdesc:abe468b3b489a8707538f083713962fcc"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of first kind <br/></td></tr>
-<tr class="memitem:aa7833544d06eb2d71042da5fa06b9c5c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa7833544d06eb2d71042da5fa06b9c5c"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#aa7833544d06eb2d71042da5fa06b9c5c">p_hat_iter</a></td></tr>
-<tr class="memdesc:aa7833544d06eb2d71042da5fa06b9c5c"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:a79c7f5b84aa9feddeafbcb9bde26de17"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a79c7f5b84aa9feddeafbcb9bde26de17"></a>
-fftwl_complex * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#a79c7f5b84aa9feddeafbcb9bde26de17">v_iter</a></td></tr>
-<tr class="memdesc:a79c7f5b84aa9feddeafbcb9bde26de17"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:ad149f66fa5dde187b3ef7860e593de01"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ad149f66fa5dde187b3ef7860e593de01"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#ad149f66fa5dde187b3ef7860e593de01">alpha_iter</a></td></tr>
-<tr class="memdesc:ad149f66fa5dde187b3ef7860e593de01"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:ab0f9266a50fc4a3acda9659b2c0920e3"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab0f9266a50fc4a3acda9659b2c0920e3"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#ab0f9266a50fc4a3acda9659b2c0920e3">beta_iter</a></td></tr>
-<tr class="memdesc:ab0f9266a50fc4a3acda9659b2c0920e3"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:aa2d90b37bc2a2ae2f9d0c90c9431abf1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa2d90b37bc2a2ae2f9d0c90c9431abf1"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#aa2d90b37bc2a2ae2f9d0c90c9431abf1">dot_r_iter</a></td></tr>
-<tr class="memdesc:aa2d90b37bc2a2ae2f9d0c90c9431abf1"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:a6d564c417ab5b11a306e489df80f4e1e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a6d564c417ab5b11a306e489df80f4e1e"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#a6d564c417ab5b11a306e489df80f4e1e">dot_r_iter_old</a></td></tr>
-<tr class="memdesc:a6d564c417ab5b11a306e489df80f4e1e"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:ae487ec619578f4f6d4876d7bc059f22a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ae487ec619578f4f6d4876d7bc059f22a"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#ae487ec619578f4f6d4876d7bc059f22a">dot_z_hat_iter</a></td></tr>
-<tr class="memdesc:ae487ec619578f4f6d4876d7bc059f22a"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of z_hat_iter <br/></td></tr>
-<tr class="memitem:af4efa34efc92f873c771df52d423f39e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af4efa34efc92f873c771df52d423f39e"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#af4efa34efc92f873c771df52d423f39e">dot_z_hat_iter_old</a></td></tr>
-<tr class="memdesc:af4efa34efc92f873c771df52d423f39e"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a4941cd9e60935f7e39a0c86a52202c02"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a4941cd9e60935f7e39a0c86a52202c02"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#a4941cd9e60935f7e39a0c86a52202c02">dot_p_hat_iter</a></td></tr>
-<tr class="memdesc:a4941cd9e60935f7e39a0c86a52202c02"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of p_hat_iter <br/></td></tr>
-<tr class="memitem:a14f62c3118e3c1c7a92dd9bf8877250c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a14f62c3118e3c1c7a92dd9bf8877250c"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__complex.html#a14f62c3118e3c1c7a92dd9bf8877250c">dot_v_iter</a></td></tr>
-<tr class="memdesc:a14f62c3118e3c1c7a92dd9bf8877250c"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00763">763</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structsolverl__plan__double.html b/doc/api/html/structsolverl__plan__double.html
deleted file mode 100644
index 9ebf677..0000000
--- a/doc/api/html/structsolverl__plan__double.html
+++ /dev/null
@@ -1,113 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - solverl_plan_double Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">solverl_plan_double Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:a56e946ecb94fc633a9d518d347725c4c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a56e946ecb94fc633a9d518d347725c4c"></a>
-<a class="el" href="structnfftl__mv__plan__double.html">nfftl_mv_plan_double</a> * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a56e946ecb94fc633a9d518d347725c4c">mv</a></td></tr>
-<tr class="memdesc:a56e946ecb94fc633a9d518d347725c4c"><td class="mdescLeft"> </td><td class="mdescRight">matrix vector multiplication <br/></td></tr>
-<tr class="memitem:aa95251443f265effb6093d63b6536431"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa95251443f265effb6093d63b6536431"></a>
-unsigned </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#aa95251443f265effb6093d63b6536431">flags</a></td></tr>
-<tr class="memdesc:aa95251443f265effb6093d63b6536431"><td class="mdescLeft"> </td><td class="mdescRight">iteration type <br/></td></tr>
-<tr class="memitem:a0f45b9d16576986d6d6d9605f6891f3d"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0f45b9d16576986d6d6d9605f6891f3d"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a0f45b9d16576986d6d6d9605f6891f3d">w</a></td></tr>
-<tr class="memdesc:a0f45b9d16576986d6d6d9605f6891f3d"><td class="mdescLeft"> </td><td class="mdescRight">weighting factors <br/></td></tr>
-<tr class="memitem:aaa9d07d5f3ec0f7f7f0a6193927e1a94"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aaa9d07d5f3ec0f7f7f0a6193927e1a94"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#aaa9d07d5f3ec0f7f7f0a6193927e1a94">w_hat</a></td></tr>
-<tr class="memdesc:aaa9d07d5f3ec0f7f7f0a6193927e1a94"><td class="mdescLeft"> </td><td class="mdescRight">damping factors <br/></td></tr>
-<tr class="memitem:a70307c6e59216c27cb4d78e7f172ab8c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a70307c6e59216c27cb4d78e7f172ab8c"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a70307c6e59216c27cb4d78e7f172ab8c">y</a></td></tr>
-<tr class="memdesc:a70307c6e59216c27cb4d78e7f172ab8c"><td class="mdescLeft"> </td><td class="mdescRight">right hand side, samples <br/></td></tr>
-<tr class="memitem:a0c38937dd8ad6734e94e08a2cd700628"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0c38937dd8ad6734e94e08a2cd700628"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a0c38937dd8ad6734e94e08a2cd700628">f_hat_iter</a></td></tr>
-<tr class="memdesc:a0c38937dd8ad6734e94e08a2cd700628"><td class="mdescLeft"> </td><td class="mdescRight">iterative solution <br/></td></tr>
-<tr class="memitem:a9715db1a24435d9dd2bc76371d92174e"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a9715db1a24435d9dd2bc76371d92174e"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a9715db1a24435d9dd2bc76371d92174e">r_iter</a></td></tr>
-<tr class="memdesc:a9715db1a24435d9dd2bc76371d92174e"><td class="mdescLeft"> </td><td class="mdescRight">iterated residual vector <br/></td></tr>
-<tr class="memitem:a0816054fdb0e07f4a68fc4aa5321c977"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a0816054fdb0e07f4a68fc4aa5321c977"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a0816054fdb0e07f4a68fc4aa5321c977">z_hat_iter</a></td></tr>
-<tr class="memdesc:a0816054fdb0e07f4a68fc4aa5321c977"><td class="mdescLeft"> </td><td class="mdescRight">residual of normal equation of first kind <br/></td></tr>
-<tr class="memitem:a803178524d842ae2944fb5f3ce9d4939"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a803178524d842ae2944fb5f3ce9d4939"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a803178524d842ae2944fb5f3ce9d4939">p_hat_iter</a></td></tr>
-<tr class="memdesc:a803178524d842ae2944fb5f3ce9d4939"><td class="mdescLeft"> </td><td class="mdescRight">search direction <br/></td></tr>
-<tr class="memitem:ab469e8fc7e7bc6c4068794cddf69ce26"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab469e8fc7e7bc6c4068794cddf69ce26"></a>
-long double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#ab469e8fc7e7bc6c4068794cddf69ce26">v_iter</a></td></tr>
-<tr class="memdesc:ab469e8fc7e7bc6c4068794cddf69ce26"><td class="mdescLeft"> </td><td class="mdescRight">residual vector update <br/></td></tr>
-<tr class="memitem:a7ea0b68ab2ccfe01df7a3747a5fed15a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a7ea0b68ab2ccfe01df7a3747a5fed15a"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a7ea0b68ab2ccfe01df7a3747a5fed15a">alpha_iter</a></td></tr>
-<tr class="memdesc:a7ea0b68ab2ccfe01df7a3747a5fed15a"><td class="mdescLeft"> </td><td class="mdescRight">step size for search direction <br/></td></tr>
-<tr class="memitem:a1c60e5fd15da3722f9b8213d1634c86a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a1c60e5fd15da3722f9b8213d1634c86a"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a1c60e5fd15da3722f9b8213d1634c86a">beta_iter</a></td></tr>
-<tr class="memdesc:a1c60e5fd15da3722f9b8213d1634c86a"><td class="mdescLeft"> </td><td class="mdescRight">step size for search correction <br/></td></tr>
-<tr class="memitem:ab12b510e093f8ccfaa4c1e51b6cd31c1"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab12b510e093f8ccfaa4c1e51b6cd31c1"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#ab12b510e093f8ccfaa4c1e51b6cd31c1">dot_r_iter</a></td></tr>
-<tr class="memdesc:ab12b510e093f8ccfaa4c1e51b6cd31c1"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of r_iter <br/></td></tr>
-<tr class="memitem:afa3e321968bd1773368cebe1339add7c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afa3e321968bd1773368cebe1339add7c"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#afa3e321968bd1773368cebe1339add7c">dot_r_iter_old</a></td></tr>
-<tr class="memdesc:afa3e321968bd1773368cebe1339add7c"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_r_iter <br/></td></tr>
-<tr class="memitem:aefacac40db7773101ce75ba8247119b7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aefacac40db7773101ce75ba8247119b7"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#aefacac40db7773101ce75ba8247119b7">dot_z_hat_iter</a></td></tr>
-<tr class="memdesc:aefacac40db7773101ce75ba8247119b7"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of z_hat_iter <br/></td></tr>
-<tr class="memitem:aa991891a7df826b77fac977581f9077c"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="aa991891a7df826b77fac977581f9077c"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#aa991891a7df826b77fac977581f9077c">dot_z_hat_iter_old</a></td></tr>
-<tr class="memdesc:aa991891a7df826b77fac977581f9077c"><td class="mdescLeft"> </td><td class="mdescRight">previous dot_z_hat_iter <br/></td></tr>
-<tr class="memitem:a2f43c87a598dff5b6e87960a07864148"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a2f43c87a598dff5b6e87960a07864148"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a2f43c87a598dff5b6e87960a07864148">dot_p_hat_iter</a></td></tr>
-<tr class="memdesc:a2f43c87a598dff5b6e87960a07864148"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of p_hat_iter <br/></td></tr>
-<tr class="memitem:a849c4c1c131a333885e581fec5a2dac0"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a849c4c1c131a333885e581fec5a2dac0"></a>
-long double </td><td class="memItemRight" valign="bottom"><a class="el" href="structsolverl__plan__double.html#a849c4c1c131a333885e581fec5a2dac0">dot_v_iter</a></td></tr>
-<tr class="memdesc:a849c4c1c131a333885e581fec5a2dac0"><td class="mdescLeft"> </td><td class="mdescRight">weighted dotproduct of v_iter <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="nfft3_8h_source.html#l00763">763</a> of file <a class="el" href="nfft3_8h_source.html">nfft3.h</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="nfft3_8h_source.html">nfft3.h</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structtaylor__plan.html b/doc/api/html/structtaylor__plan.html
deleted file mode 100644
index aae8afb..0000000
--- a/doc/api/html/structtaylor__plan.html
+++ /dev/null
@@ -1,68 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - taylor_plan Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">taylor_plan Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:afd71182be8b8fcfa66155b0be4fb94ee"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="afd71182be8b8fcfa66155b0be4fb94ee"></a>
-<a class="el" href="structnfft__plan.html">nfft_plan</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="structtaylor__plan.html#afd71182be8b8fcfa66155b0be4fb94ee">p</a></td></tr>
-<tr class="memdesc:afd71182be8b8fcfa66155b0be4fb94ee"><td class="mdescLeft"> </td><td class="mdescRight">used for fftw and data <br/></td></tr>
-<tr class="memitem:a3d3e69bc61775fee556801bd66a47c19"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3d3e69bc61775fee556801bd66a47c19"></a>
-int * </td><td class="memItemRight" valign="bottom"><a class="el" href="structtaylor__plan.html#a3d3e69bc61775fee556801bd66a47c19">idx0</a></td></tr>
-<tr class="memdesc:a3d3e69bc61775fee556801bd66a47c19"><td class="mdescLeft"> </td><td class="mdescRight">index of next neighbour of x_j on the oversampled regular grid <br/></td></tr>
-<tr class="memitem:a09164bdbcba8f9ecc7a58904574ff07b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a09164bdbcba8f9ecc7a58904574ff07b"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structtaylor__plan.html#a09164bdbcba8f9ecc7a58904574ff07b">deltax0</a></td></tr>
-<tr class="memdesc:a09164bdbcba8f9ecc7a58904574ff07b"><td class="mdescLeft"> </td><td class="mdescRight">distance to the grid point <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock">
-<p>Definition at line <a class="el" href="taylor__nfft_8c_source.html#l00044">44</a> of file <a class="el" href="taylor__nfft_8c_source.html">taylor_nfft.c</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="taylor__nfft_8c_source.html">taylor_nfft.c</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/structwindow__funct__plan__.html b/doc/api/html/structwindow__funct__plan__.html
deleted file mode 100644
index 4812464..0000000
--- a/doc/api/html/structwindow__funct__plan__.html
+++ /dev/null
@@ -1,76 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - window_funct_plan_ Struct Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li class="current"><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li><a href="classes.html"><span>Data Structure Index</span></a></li>
- <li><a href="functions.html"><span>Data Fields</span></a></li>
- </ul>
- </div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#pub-attribs">Data Fields</a> </div>
- <div class="headertitle">
-<div class="title">window_funct_plan_ Struct Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>window_funct_plan is a plan to use the window functions independent of the nfft
- <a href="structwindow__funct__plan__.html#details">More...</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="pub-attribs"></a>
-Data Fields</h2></td></tr>
-<tr class="memitem:ab5d5f5263d52634062dbdf5e2e89e51a"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="ab5d5f5263d52634062dbdf5e2e89e51a"></a>
-int </td><td class="memItemRight" valign="bottom"><b>d</b></td></tr>
-<tr class="memitem:abcd107b125dea15da3651fe055f3550b"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="abcd107b125dea15da3651fe055f3550b"></a>
-int </td><td class="memItemRight" valign="bottom"><b>m</b></td></tr>
-<tr class="memitem:af51cd5627d15508b5a6f9071cb5c05c8"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="af51cd5627d15508b5a6f9071cb5c05c8"></a>
-int </td><td class="memItemRight" valign="bottom"><b>n</b> [1]</td></tr>
-<tr class="memitem:a8ccb145d4e8fb4e395533f85b35bf0d7"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a8ccb145d4e8fb4e395533f85b35bf0d7"></a>
-double </td><td class="memItemRight" valign="bottom"><b>sigma</b> [1]</td></tr>
-<tr class="memitem:a327636fa511ff5be5dac22db28903c44"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a327636fa511ff5be5dac22db28903c44"></a>
-double * </td><td class="memItemRight" valign="bottom"><b>b</b></td></tr>
-<tr class="memitem:a59ddba27ebde497ae7cfcfc2dbdd2304"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a59ddba27ebde497ae7cfcfc2dbdd2304"></a>
-double * </td><td class="memItemRight" valign="bottom"><a class="el" href="structwindow__funct__plan__.html#a59ddba27ebde497ae7cfcfc2dbdd2304">spline_coeffs</a></td></tr>
-<tr class="memdesc:a59ddba27ebde497ae7cfcfc2dbdd2304"><td class="mdescLeft"> </td><td class="mdescRight">input for de Boor algorithm, if B_SPLINE or SINC_2m is defined <br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>window_funct_plan is a plan to use the window functions independent of the nfft </p>
-
-<p>Definition at line <a class="el" href="mri_8c_source.html#l00037">37</a> of file <a class="el" href="mri_8c_source.html">mri.c</a>.</p>
-</div><hr/>The documentation for this struct was generated from the following file:<ul>
-<li><a class="el" href="mri_8c_source.html">mri.c</a></li>
-</ul>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/tab_a.png b/doc/api/html/tab_a.png
deleted file mode 100644
index 3b725c4..0000000
Binary files a/doc/api/html/tab_a.png and /dev/null differ
diff --git a/doc/api/html/tab_b.png b/doc/api/html/tab_b.png
deleted file mode 100644
index 258c141..0000000
Binary files a/doc/api/html/tab_b.png and /dev/null differ
diff --git a/doc/api/html/tab_h.png b/doc/api/html/tab_h.png
deleted file mode 100644
index 4ca9102..0000000
Binary files a/doc/api/html/tab_h.png and /dev/null differ
diff --git a/doc/api/html/tab_s.png b/doc/api/html/tab_s.png
deleted file mode 100644
index ab478c9..0000000
Binary files a/doc/api/html/tab_s.png and /dev/null differ
diff --git a/doc/api/html/tabs.css b/doc/api/html/tabs.css
deleted file mode 100644
index 2192056..0000000
--- a/doc/api/html/tabs.css
+++ /dev/null
@@ -1,59 +0,0 @@
-.tabs, .tabs2, .tabs3 {
- background-image: url('tab_b.png');
- width: 100%;
- z-index: 101;
- font-size: 13px;
-}
-
-.tabs2 {
- font-size: 10px;
-}
-.tabs3 {
- font-size: 9px;
-}
-
-.tablist {
- margin: 0;
- padding: 0;
- display: table;
-}
-
-.tablist li {
- float: left;
- display: table-cell;
- background-image: url('tab_b.png');
- line-height: 36px;
- list-style: none;
-}
-
-.tablist a {
- display: block;
- padding: 0 20px;
- font-weight: bold;
- background-image:url('tab_s.png');
- background-repeat:no-repeat;
- background-position:right;
- color: #283A5D;
- text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9);
- text-decoration: none;
- outline: none;
-}
-
-.tabs3 .tablist a {
- padding: 0 10px;
-}
-
-.tablist a:hover {
- background-image: url('tab_h.png');
- background-repeat:repeat-x;
- color: #fff;
- text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
- text-decoration: none;
-}
-
-.tablist li.current a {
- background-image: url('tab_a.png');
- background-repeat:repeat-x;
- color: #fff;
- text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0);
-}
diff --git a/doc/api/html/taylor__nfft_8c.html b/doc/api/html/taylor__nfft_8c.html
deleted file mode 100644
index 7a1ad3b..0000000
--- a/doc/api/html/taylor__nfft_8c.html
+++ /dev/null
@@ -1,349 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - taylor_nfft.c File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#nested-classes">Data Structures</a> |
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">taylor_nfft.c File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Testing the nfft againt a Taylor expansion based version.
-<a href="#details">More...</a></p>
-<div class="textblock"><code>#include "config.h"</code><br/>
-<code>#include <stdio.h></code><br/>
-<code>#include <math.h></code><br/>
-<code>#include <string.h></code><br/>
-<code>#include <stdlib.h></code><br/>
-<code>#include "<a class="el" href="nfft3util_8h_source.html">nfft3util.h</a>"</code><br/>
-<code>#include "<a class="el" href="nfft3_8h_source.html">nfft3.h</a>"</code><br/>
-<code>#include "infft.h"</code><br/>
-</div>
-<p><a href="taylor__nfft_8c_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="nested-classes"></a>
-Data Structures</h2></td></tr>
-<tr class="memitem:"><td class="memItemLeft" align="right" valign="top">struct </td><td class="memItemRight" valign="bottom"><a class="el" href="structtaylor__plan.html">taylor_plan</a></td></tr>
-</table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:a8aaec175a64f4ca7e15fcdcd355f56a2"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="taylor__nfft_8c.html#a8aaec175a64f4ca7e15fcdcd355f56a2">taylor_init</a> (<a class="el" href="structtaylor__plan.html">taylor_plan</a> *ths, int N, int M, int n, int m)</td></tr>
-<tr class="memdesc:a8aaec175a64f4ca7e15fcdcd355f56a2"><td class="mdescLeft"> </td><td class="mdescRight">Initialisation of a transform plan. <a href="#a8aaec175a64f4ca7e15fcdcd355f56a2"></a><br/></td></tr>
-<tr class="memitem:a13b127b1ecbbd640bd30123c635940a5"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="taylor__nfft_8c.html#a13b127b1ecbbd640bd30123c635940a5">taylor_precompute</a> (<a class="el" href="structtaylor__plan.html">taylor_plan</a> *ths)</td></tr>
-<tr class="memdesc:a13b127b1ecbbd640bd30123c635940a5"><td class="mdescLeft"> </td><td class="mdescRight">Precomputation of weights and indices in Taylor expansion. <a href="#a13b127b1ecbbd640bd30123c635940a5"></a><br/></td></tr>
-<tr class="memitem:a10f336e1a24851643775a0da2f338c65"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="taylor__nfft_8c.html#a10f336e1a24851643775a0da2f338c65">taylor_finalize</a> (<a class="el" href="structtaylor__plan.html">taylor_plan</a> *ths)</td></tr>
-<tr class="memdesc:a10f336e1a24851643775a0da2f338c65"><td class="mdescLeft"> </td><td class="mdescRight">Destroys a transform plan. <a href="#a10f336e1a24851643775a0da2f338c65"></a><br/></td></tr>
-<tr class="memitem:ada016505d50bb2473ce6061a342d7e20"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="taylor__nfft_8c.html#ada016505d50bb2473ce6061a342d7e20">taylor_trafo</a> (<a class="el" href="structtaylor__plan.html">taylor_plan</a> *ths)</td></tr>
-<tr class="memdesc:ada016505d50bb2473ce6061a342d7e20"><td class="mdescLeft"> </td><td class="mdescRight">Executes a Taylor-NFFT, see equation (1.1) in [Guide], computes fast and approximate by means of a Taylor expansion for j=0,...,M-1 f[j] = sum_{k in I_N^d} f_hat[k] * exp(-2 (pi) k x[j]) <a href="#ada016505d50bb2473ce6061a342d7e20"></a><br/></td></tr>
-<tr class="memitem:a7ef2d41455ffa60a2f001c4981d4cf97"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="taylor__nfft_8c.html#a7ef2d41455ffa60a2f001c4981d4cf97">taylor_time_accuracy</a> (int N, int M, int n, int m, int n_taylor, int m_taylor, unsigned test_accuracy)</td></tr>
-<tr class="memdesc:a7ef2d41455ffa60a2f001c4981d4cf97"><td class="mdescLeft"> </td><td class="mdescRight">Compares NDFT, NFFT, and Taylor-NFFT. <a href="#a7ef2d41455ffa60a2f001c4981d4cf97"></a><br/></td></tr>
-<tr class="memitem:a3c04138a5bfe5d72780bb7e82a18e627"><td class="memItemLeft" align="right" valign="top"><a class="anchor" id="a3c04138a5bfe5d72780bb7e82a18e627"></a>
-int </td><td class="memItemRight" valign="bottom"><b>main</b> (int argc, char **argv)</td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Testing the nfft againt a Taylor expansion based version. </p>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis</dd></dl>
-<p>References: Time and memory requirements of the Nonequispaced FFT </p>
-
-<p>Definition in file <a class="el" href="taylor__nfft_8c_source.html">taylor_nfft.c</a>.</p>
-</div><hr/><h2>Function Documentation</h2>
-<a class="anchor" id="a8aaec175a64f4ca7e15fcdcd355f56a2"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static void taylor_init </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structtaylor__plan.html">taylor_plan</a> * </td>
- <td class="paramname"><em>ths</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>M</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Initialisation of a transform plan. </p>
-<ul>
-<li>ths The pointer to a taylor plan </li>
-<li>N The multi bandwidth </li>
-<li>M The number of nodes </li>
-<li>n The fft length </li>
-<li>m The order of the Taylor expansion</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="taylor__nfft_8c_source.html#l00064">64</a> of file <a class="el" href="taylor__nfft_8c_source.html">taylor_nfft.c</a>.</p>
-
-<p>References <a class="el" href="taylor__nfft_8c_source.html#l00050">taylor_plan::deltax0</a>, <a class="el" href="taylor__nfft_8c_source.html#l00048">taylor_plan::idx0</a>, and <a class="el" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc()</a>.</p>
-
-<p>Referenced by <a class="el" href="taylor__nfft_8c_source.html#l00179">taylor_time_accuracy()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a13b127b1ecbbd640bd30123c635940a5"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static void taylor_precompute </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structtaylor__plan.html">taylor_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Precomputation of weights and indices in Taylor expansion. </p>
-<ul>
-<li>ths The pointer to a taylor plan</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="taylor__nfft_8c_source.html#l00083">83</a> of file <a class="el" href="taylor__nfft_8c_source.html">taylor_nfft.c</a>.</p>
-
-<p>References <a class="el" href="taylor__nfft_8c_source.html#l00050">taylor_plan::deltax0</a>, <a class="el" href="taylor__nfft_8c_source.html#l00048">taylor_plan::idx0</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::M_total</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::n</a>, and <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::x</a>.</p>
-
-<p>Referenced by <a class="el" href="taylor__nfft_8c_source.html#l00179">taylor_time_accuracy()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a10f336e1a24851643775a0da2f338c65"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static void taylor_finalize </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structtaylor__plan.html">taylor_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Destroys a transform plan. </p>
-<ul>
-<li>ths The pointer to a taylor plan</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis, Daniel Potts </dd></dl>
-
-<p>Definition at line <a class="el" href="taylor__nfft_8c_source.html#l00105">105</a> of file <a class="el" href="taylor__nfft_8c_source.html">taylor_nfft.c</a>.</p>
-
-<p>References <a class="el" href="taylor__nfft_8c_source.html#l00050">taylor_plan::deltax0</a>, <a class="el" href="taylor__nfft_8c_source.html#l00048">taylor_plan::idx0</a>, and <a class="el" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free()</a>.</p>
-
-<p>Referenced by <a class="el" href="taylor__nfft_8c_source.html#l00179">taylor_time_accuracy()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ada016505d50bb2473ce6061a342d7e20"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static void taylor_trafo </td>
- <td>(</td>
- <td class="paramtype"><a class="el" href="structtaylor__plan.html">taylor_plan</a> * </td>
- <td class="paramname"><em>ths</em></td><td>)</td>
- <td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Executes a Taylor-NFFT, see equation (1.1) in [Guide], computes fast and approximate by means of a Taylor expansion for j=0,...,M-1 f[j] = sum_{k in I_N^d} f_hat[k] * exp(-2 (pi) k x[j]) </p>
-<ul>
-<li>ths The pointer to a taylor plan</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="taylor__nfft_8c_source.html#l00123">123</a> of file <a class="el" href="taylor__nfft_8c_source.html">taylor_nfft.c</a>.</p>
-
-<p>References <a class="el" href="taylor__nfft_8c_source.html#l00050">taylor_plan::deltax0</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::f</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::f_hat</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::g1</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::g2</a>, <a class="el" href="taylor__nfft_8c_source.html#l00048">taylor_plan::idx0</a>, <a class="el" href="nfft3_8h_source.html#l0 [...]
-
-<p>Referenced by <a class="el" href="taylor__nfft_8c_source.html#l00179">taylor_time_accuracy()</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a7ef2d41455ffa60a2f001c4981d4cf97"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">static void taylor_time_accuracy </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>M</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n_taylor</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m_taylor</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">unsigned </td>
- <td class="paramname"><em>test_accuracy</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">static</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compares NDFT, NFFT, and Taylor-NFFT. </p>
-<ul>
-<li>N The bandwidth </li>
-<li>N The number of nodes </li>
-<li>n The FFT-size for the NFFT </li>
-<li>m The cut-off for window function </li>
-<li>n_taylor The FFT-size for the Taylor-NFFT </li>
-<li>m_taylor The order of the Taylor approximation </li>
-<li>test_accuracy Flag for NDFT computation</li>
-</ul>
-<dl class="section author"><dt>Author:</dt><dd>Stefan Kunis </dd></dl>
-
-<p>Definition at line <a class="el" href="taylor__nfft_8c_source.html#l00179">179</a> of file <a class="el" href="taylor__nfft_8c_source.html">taylor_nfft.c</a>.</p>
-
-<p>References <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::f</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::f_hat</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::M_total</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::N_total</a>, <a class="el" href="nfft3_8h_source.html#l00173">nfft_plan::nfft_flags</a>, <a class="el" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free()</a>, <a class="el" href="nfft3_8h.htm [...]
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/taylor__nfft_8c_source.html b/doc/api/html/taylor__nfft_8c_source.html
deleted file mode 100644
index 766b451..0000000
--- a/doc/api/html/taylor__nfft_8c_source.html
+++ /dev/null
@@ -1,321 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - taylor_nfft.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d28a4824dc47e487b107a5db32ef43c4.html">examples</a></li><li class="navelem"><a class="el" href="dir_8c2550e038f78045c202418cbfa07f80.html">nfft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">taylor_nfft.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="taylor__nfft_8c.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: taylor_nfft.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> </div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#include <string.h></span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> </div>
-<div class="line"><a name="l00044"></a><span class="lineno"><a class="code" href="structtaylor__plan.html"> 44</a></span> <span class="keyword">typedef</span> <span class="keyword">struct</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> {</div>
-<div class="line"><a name="l00046"></a><span class="lineno"><a class="code" href="structtaylor__plan.html#afd71182be8b8fcfa66155b0be4fb94ee"> 46</a></span> <a class="code" href="structnfft__plan.html">nfft_plan</a> <a class="code" href="structtaylor__plan.html#afd71182be8b8fcfa66155b0be4fb94ee" title="used for fftw and data">p</a>; </div>
-<div class="line"><a name="l00048"></a><span class="lineno"><a class="code" href="structtaylor__plan.html#a3d3e69bc61775fee556801bd66a47c19"> 48</a></span> <span class="keywordtype">int</span> *idx0; </div>
-<div class="line"><a name="l00050"></a><span class="lineno"><a class="code" href="structtaylor__plan.html#a09164bdbcba8f9ecc7a58904574ff07b"> 50</a></span> <span class="keywordtype">double</span> *<a class="code" href="structtaylor__plan.html#a09164bdbcba8f9ecc7a58904574ff07b" title="distance to the grid point">deltax0</a>; </div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> } <a class="code" href="structtaylor__plan.html">taylor_plan</a>;</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00064"></a><span class="lineno"><a class="code" href="taylor__nfft_8c.html#a8aaec175a64f4ca7e15fcdcd355f56a2"> 64</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="taylor__nfft_8c.html#a8aaec175a64f4ca7e15fcdcd355f56a2" title="Initialisation of a transform plan.">taylor_init</a>(<a class="code" href="structtaylor__plan.html">taylor_plan</a> *ths, <span class="keywordtype">int</span> N, <span class [...]
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> {</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> <span class="comment">/* Note: no nfft precomputation! */</span></div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> nfft_init_guru((<a class="code" href="structnfft__plan.html">nfft_plan</a>*)ths, 1, &N, M, &n, m,</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> MALLOC_X| MALLOC_F_HAT| MALLOC_F|</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> FFTW_ESTIMATE| FFTW_PRESERVE_INPUT);</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> ths-><a class="code" href="structtaylor__plan.html#a3d3e69bc61775fee556801bd66a47c19" title="index of next neighbour of x_j on the oversampled regular grid">idx0</a>=(<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> ths-><a class="code" href="structtaylor__plan.html#a09164bdbcba8f9ecc7a58904574ff07b" title="distance to the grid point">deltax0</a>=(<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> }</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div>
-<div class="line"><a name="l00083"></a><span class="lineno"><a class="code" href="taylor__nfft_8c.html#a13b127b1ecbbd640bd30123c635940a5"> 83</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="taylor__nfft_8c.html#a13b127b1ecbbd640bd30123c635940a5" title="Precomputation of weights and indices in Taylor expansion.">taylor_precompute</a>(<a class="code" href="structtaylor__plan.html">taylor_plan</a> *ths)</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> {</div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> </div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <a class="code" href="structnfft__plan.html">nfft_plan</a>* cths=(<a class="code" href="structnfft__plan.html">nfft_plan</a>*)ths;</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">for</span>(j=0;j<cths-><a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>;j++)</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> {</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> ths-><a class="code" href="structtaylor__plan.html#a3d3e69bc61775fee556801bd66a47c19" title="index of next neighbour of x_j on the oversampled regular grid">idx0</a>[j] = ((int)round((cths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j]+0.5)*cths-><a class="code" href="structnfft__plan.html#aa8db04bb0 [...]
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> cths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0]/2)%cths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0];</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> ths-><a class="code" href="structtaylor__plan.html#a09164bdbcba8f9ecc7a58904574ff07b" title="distance to the grid point">deltax0</a>[j] = cths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>[j] - (round((cths-><a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in [...]
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> cths-><a class="code" href="structnfft__plan.html#aa8db04bb03357b831a1958f9a802e0ae" title="FFTW length, equal to sigma*N, default is the power of 2 such that .">n</a>[0] - 0.5);</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> }</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> }</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00105"></a><span class="lineno"><a class="code" href="taylor__nfft_8c.html#a10f336e1a24851643775a0da2f338c65"> 105</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="taylor__nfft_8c.html#a10f336e1a24851643775a0da2f338c65" title="Destroys a transform plan.">taylor_finalize</a>(<a class="code" href="structtaylor__plan.html">taylor_plan</a> *ths)</div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> {</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structtaylor__plan.html#a09164bdbcba8f9ecc7a58904574ff07b" title="distance to the grid point">deltax0</a>);</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ths-><a class="code" href="structtaylor__plan.html#a3d3e69bc61775fee556801bd66a47c19" title="index of next neighbour of x_j on the oversampled regular grid">idx0</a>);</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> </div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> nfft_finalize((<a class="code" href="structnfft__plan.html">nfft_plan</a>*)ths);</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> }</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div>
-<div class="line"><a name="l00123"></a><span class="lineno"><a class="code" href="taylor__nfft_8c.html#ada016505d50bb2473ce6061a342d7e20"> 123</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="taylor__nfft_8c.html#ada016505d50bb2473ce6061a342d7e20" title="Executes a Taylor-NFFT, see equation (1.1) in [Guide], computes fast and approximate by means of a Ta...">taylor_trafo</a>(<a class="code" href="structtaylor__plan.html">tay [...]
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> {</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> <span class="keywordtype">int</span> j,k,l,ll;</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordtype">double</span> _Complex *f, *f_hat, *g1;</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordtype">double</span> *deltax;</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">int</span> *idx;</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> *cths=(<a class="code" href="structnfft__plan.html">nfft_plan</a>*)ths;</div>
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordflow">for</span>(j=0, f=cths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>; j<cths->M_total; j++)</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> *f++ = 0;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> </div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="keywordflow">for</span>(k=0; k<cths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total size of FFTW.">n_total</a>; k++)</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> cths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>[k]=0;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> <span class="keywordflow">for</span>(k=-cths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>/2, g1=cths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>+cths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Total s [...]
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> f_hat=cths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>; k<0; k++)</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> (*g1++)=cpow( - 2*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*_Complex_I*k,cths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>)* (*f_hat++);</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> </div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> cths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>[0]=cths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>[cths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of F [...]
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> <span class="keywordflow">for</span>(k=1, g1=cths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>+1, f_hat=cths-><a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>+cths-><a class="code" href="structnfft__plan.html#ad33dadd [...]
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> k<cths->N_total/2; k++)</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> (*g1++)=cpow( - 2*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*_Complex_I*k,cths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>)* (*f_hat++);</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> </div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="keywordflow">for</span>(l=cths-><a class="code" href="structnfft__plan.html#adbac137859fb87be7be73a5443de8cef" title="Cut-off parameter of the window function, default value is 6 (KAISER_BESSEL), 9 (SINC_POWER), 11 (B_SPLINE), 12 (GAUSSIAN)">m</a>-1; l>=0; l--)</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> {</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">for</span>(k=-cths-><a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0d22" title="Total number of Fourier coefficients.">N_total</a>/2, g1=cths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>+cths-><a class="code" href="structnfft__plan.html#ad8a5fdac5bcf62d86479c800768fdeb7" title="Tot [...]
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> k<0; k++)</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> (*g1++) /= (-2*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*_Complex_I*k);</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> </div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> <span class="keywordflow">for</span>(k=1, g1=cths-><a class="code" href="structnfft__plan.html#a2190e7201c55214d153b4d91eaa7efda" title="Input of fftw.">g1</a>+1; k<cths->N_total/2; k++)</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> (*g1++) /= (-2*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*_Complex_I*k);</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> </div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> fftw_execute(cths->my_fftw_plan1);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> </div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> ll=(l==0?1:l);</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">for</span>(j=0, f=cths-><a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, deltax=ths-><a class="code" href="structtaylor__plan.html#a09164bdbcba8f9ecc7a58904574ff07b" title="distance to the grid point">deltax0</a>, idx=ths-><a class="code" href="structtaylor__plan.html [...]
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> j++, f++)</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> (*f) = ((*f) * (*deltax++) + cths-><a class="code" href="structnfft__plan.html#ad96e0aa935ea3589e999c131c43d8a78" title="Output of fftw.">g2</a>[*idx++]) /ll;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> }</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> }</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> </div>
-<div class="line"><a name="l00179"></a><span class="lineno"><a class="code" href="taylor__nfft_8c.html#a7ef2d41455ffa60a2f001c4981d4cf97"> 179</a></span> <span class="keyword">static</span> <span class="keywordtype">void</span> <a class="code" href="taylor__nfft_8c.html#a7ef2d41455ffa60a2f001c4981d4cf97" title="Compares NDFT, NFFT, and Taylor-NFFT.">taylor_time_accuracy</a>(<span class="keywordtype">int</span> N, <span class="keywordtype">int</span> M, <span class="keywordtype">int [...]
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="keywordtype">int</span> m_taylor, <span class="keywordtype">unsigned</span> test_accuracy)</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> {</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> <span class="keywordtype">int</span> r;</div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordtype">double</span> t_ndft, t_nfft, t_taylor, t;</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> <span class="keywordtype">double</span> _Complex *swapndft = NULL;</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> ticks t0, t1;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> </div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <a class="code" href="structtaylor__plan.html">taylor_plan</a> tp;</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> <a class="code" href="structnfft__plan.html">nfft_plan</a> np;</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> </div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> printf(<span class="stringliteral">"%d\t%d\t"</span>,N, M);</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> </div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> <a class="code" href="taylor__nfft_8c.html#a8aaec175a64f4ca7e15fcdcd355f56a2" title="Initialisation of a transform plan.">taylor_init</a>(&tp,N,M,n_taylor,m_taylor);</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> </div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> nfft_init_guru(&np, 1, &N, M, &n, m,</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> PRE_PHI_HUT| PRE_FG_PSI|</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> FFTW_INIT| FFT_OUT_OF_PLACE,</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> FFTW_ESTIMATE| FFTW_DESTROY_INPUT);</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> </div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> np.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>=tp.<a class="code" href="structtaylor__plan.html#afd71182be8b8fcfa66155b0be4fb94ee" title="used for fftw and data">p</a>.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>;</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> np.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>=tp.<a class="code" href="structtaylor__plan.html#afd71182be8b8fcfa66155b0be4fb94ee" title="used for fftw and data">p</a>.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, [...]
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> np.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>=tp.<a class="code" href="structtaylor__plan.html#afd71182be8b8fcfa66155b0be4fb94ee" title="used for fftw and data">p</a>.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw [...]
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> </div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordflow">if</span>(test_accuracy)</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> swapndft=(<span class="keywordtype">double</span> _Complex*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M*<span class="keyword">sizeof</span>(<span class="keywordtype">double</span> _Complex));</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> </div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> <a class="code" href="group__nfftutil.html#gaa44184ac2c1452221508e7640f391c34" title="Inits a vector of random double numbers in .">nfft_vrand_shifted_unit_double</a>(np.<a class="code" href="structnfft__plan.html#a7eb64fb5fedfba0ec75261e777e020c0" title="Nodes in time/spatial domain, size is doubles.">x</a>, np.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total numbe [...]
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> </div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> <a class="code" href="taylor__nfft_8c.html#a13b127b1ecbbd640bd30123c635940a5" title="Precomputation of weights and indices in Taylor expansion.">taylor_precompute</a>(&tp);</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> </div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> <span class="keywordflow">if</span>(np.<a class="code" href="structnfft__plan.html#a2721da68a3a5b1846ecca8395d76bb1d" title="Flags for precomputation, (de)allocation, and FFTW usage, default setting is PRE_PHI_HUT | PRE_PSI | ...">nfft_flags</a> & PRE_ONE_PSI)</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> nfft_precompute_one_psi(&np);</div>
-<div class="line"><a name="l00217"></a><span class="lineno"> 217</span> </div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> <a class="code" href="group__nfftutil.html#ga5f53c8cd0b2f33200fce15ecf75a0685" title="Inits a vector of random complex numbers in .">nfft_vrand_unit_complex</a>(np.<a class="code" href="structnfft__plan.html#a23409aec68871e9a56f11711e2891691" title="Vector of Fourier coefficients, size is N_total * sizeof( fftw_complex )">f_hat</a>, np.<a class="code" href="structnfft__plan.html#ad33daddf76670c8731c759bf74ad0 [...]
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> </div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="keywordflow">if</span>(test_accuracy)</div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> {</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(np.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> t_ndft=0;</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> r=0;</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="keywordflow">while</span>(t_ndft<0.01)</div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> {</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> r++;</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> t0 = getticks();</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> nfft_trafo_direct(&np);</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> t1 = getticks();</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> t_ndft+=t;</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> }</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> t_ndft/=r;</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> </div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> <a class="code" href="group__nfftutil.html#ga4df074728562efbb458f6662e649d1d5" title="Swapping of two vectors.">NFFT_SWAP_complex</a>(np.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>,swapndft);</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> printf(<span class="stringliteral">"%.2e\t"</span>,t_ndft);</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> }</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> printf(<span class="stringliteral">"nan\t\t"</span>);</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> </div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> t_nfft=0;</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> r=0;</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> <span class="keywordflow">while</span>(t_nfft<0.01)</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> {</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> r++;</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> t0 = getticks();</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <a class="code" href="nfft3_8h.html#a9f1e6bd9f7f956a8679e6b413c97b421" title="user routines">nfft_trafo</a>(&np);</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> t1 = getticks();</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> t_nfft+=t;</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> }</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> t_nfft/=r;</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> </div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> printf(<span class="stringliteral">"%.2f\t%d\t%.2e\t"</span>,((<span class="keywordtype">double</span>)n)/N, m, t_nfft);</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> </div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> <span class="keywordflow">if</span>(test_accuracy)</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> printf(<span class="stringliteral">"%.2e\t"</span>,X(error_l_infty_complex)(swapndft, np.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, np.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>));</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> printf(<span class="stringliteral">"nan\t\t"</span>);</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> </div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> t_taylor=0;</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> r=0;</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="keywordflow">while</span>(t_taylor<0.01)</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> {</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> r++;</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> t0 = getticks();</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> <a class="code" href="taylor__nfft_8c.html#ada016505d50bb2473ce6061a342d7e20" title="Executes a Taylor-NFFT, see equation (1.1) in [Guide], computes fast and approximate by means of a Ta...">taylor_trafo</a>(&tp);</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> t1 = getticks();</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> t = nfft_elapsed_seconds(t1,t0);</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> t_taylor+=t;</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> }</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> t_taylor/=r;</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> </div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> printf(<span class="stringliteral">"%.2f\t%d\t%.2e\t"</span>,((<span class="keywordtype">double</span>)n_taylor)/N,m_taylor,t_taylor);</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> </div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> <span class="keywordflow">if</span>(test_accuracy)</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> printf(<span class="stringliteral">"%.2e\n"</span>,X(error_l_infty_complex)(swapndft, np.<a class="code" href="structnfft__plan.html#afa27a166f809acf70ae27e5e6f28daa5" title="Vector of samples, size is M_total * sizeof( fftw_complex )">f</a>, np.<a class="code" href="structnfft__plan.html#adf33ce87c35b396c50d214d9bdeeefe6" title="Total number of samples.">M_total</a>));</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> printf(<span class="stringliteral">"nan\t\n"</span>);</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> </div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> fflush(stdout);</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> </div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> <span class="keywordflow">if</span>(test_accuracy)</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(swapndft);</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> </div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> nfft_finalize(&np);</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> <a class="code" href="taylor__nfft_8c.html#a10f336e1a24851643775a0da2f338c65" title="Destroys a transform plan.">taylor_finalize</a>(&tp);</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> }</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> </div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> <span class="keywordtype">int</span> main(<span class="keywordtype">int</span> argc,<span class="keywordtype">char</span> **argv)</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> {</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> <span class="keywordtype">int</span> l,m,trial,N;</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> </div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> <span class="keywordflow">if</span>(argc<=2)</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> {</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> fprintf(stderr,<span class="stringliteral">"taylor_nfft type first last trials sigma_nfft sigma_taylor.\n"</span>);</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="keywordflow">return</span> -1;</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> }</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> </div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> fprintf(stderr,<span class="stringliteral">"Testing the Nfft & a Taylor expansion based version.\n\n"</span>);</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> fprintf(stderr,<span class="stringliteral">"Columns: N, M, t_ndft, sigma_nfft, m_nfft, t_nfft, e_nfft"</span>);</div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> fprintf(stderr,<span class="stringliteral">", sigma_taylor, m_taylor, t_taylor, e_taylor\n"</span>);</div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> </div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="comment">/* time vs. N=M */</span></div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="keywordflow">if</span>(atoi(argv[1])==0)</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> {</div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> fprintf(stderr,<span class="stringliteral">"Fixed target accuracy, timings.\n\n"</span>);</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="keywordflow">for</span>(l=atoi(argv[2]); l<=atoi(argv[3]); l++)</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="keywordflow">for</span>(trial=0; trial<atoi(argv[4]); trial++)</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> <span class="keywordflow">if</span>(l<=10)</div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> <a class="code" href="taylor__nfft_8c.html#a7ef2d41455ffa60a2f001c4981d4cf97" title="Compares NDFT, NFFT, and Taylor-NFFT.">taylor_time_accuracy</a>((1U<< l), (1U<< l), (<span class="keywordtype">int</span>)(atof(argv[5])*</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> (1U<< l)), 6, (<span class="keywordtype">int</span>)(atof(argv[6])*(1U<< l)),</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> 6, 1);</div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <a class="code" href="taylor__nfft_8c.html#a7ef2d41455ffa60a2f001c4981d4cf97" title="Compares NDFT, NFFT, and Taylor-NFFT.">taylor_time_accuracy</a>((1U<< l), (1U<< l), (<span class="keywordtype">int</span>)(atof(argv[5])*</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> (1U<< l)), 6, (<span class="keywordtype">int</span>)(atof(argv[6])*(1U<< l)),</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> 6, 0);</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> }</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> </div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="comment">/* error vs. m */</span></div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> <span class="keywordflow">if</span>(atoi(argv[1])==1)</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> {</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> N=atoi(argv[7]);</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> fprintf(stderr,<span class="stringliteral">"Fixed N=M=%d, error vs. m.\n\n"</span>,N);</div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> <span class="keywordflow">for</span>(m=atoi(argv[2]); m<=atoi(argv[3]); m++)</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> <span class="keywordflow">for</span>(trial=0; trial<atoi(argv[4]); trial++)</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <a class="code" href="taylor__nfft_8c.html#a7ef2d41455ffa60a2f001c4981d4cf97" title="Compares NDFT, NFFT, and Taylor-NFFT.">taylor_time_accuracy</a>(N,N, (<span class="keywordtype">int</span>)(atof(argv[5])*N), m,</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> (<span class="keywordtype">int</span>)(atof(argv[6])*N), m, 1);</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> }</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> </div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/ticks_8h_source.html b/doc/api/html/ticks_8h_source.html
deleted file mode 100644
index 2d623e4..0000000
--- a/doc/api/html/ticks_8h_source.html
+++ /dev/null
@@ -1,84 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - ticks.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_d44c64559bbebec7f509842c48db8b23.html">include</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">ticks.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2009 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: infft.h 3471 2010-04-08 21:43:41Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#ifndef TICKS_H_</span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor"></span><span class="preprocessor">#define TICKS_H_</span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include "cycle.h"</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> </div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> <span class="preprocessor">#define TICKS_PER_SECOND 3109267833.0</span></div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#ifndef HAVE_TICK_COUNTER</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span> <span class="keyword">typedef</span> <span class="keywordtype">unsigned</span> ticks;</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"> #define getticks() 0U;</span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor"></span> INLINE_ELAPSED(__inline__)</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#endif </span><span class="comment">/* TICKS_H_ */</span><span class="preprocessor"></span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/util_8c_source.html b/doc/api/html/util_8c_source.html
deleted file mode 100644
index be8272a..0000000
--- a/doc/api/html/util_8c_source.html
+++ /dev/null
@@ -1,1387 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - util.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_23ec12649285f9fabf3a6b7380226c28.html">util</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">util.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: util.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"> 27</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> </div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor">#include <stdlib.h></span></div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="preprocessor">#include <float.h></span></div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="preprocessor">#include <sys/time.h></span></div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="preprocessor">#include "cstripack.h"</span></div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> <span class="preprocessor">#ifdef HAVE_COMPLEX_H</span></div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="preprocessor"></span><span class="preprocessor">#include <complex.h></span></div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="preprocessor"></span><span class="preprocessor">#include <omp.h></span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="preprocessor">#include "<a class="code" href="nfft3_8h.html">nfft3.h</a>"</span></div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> </div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordtype">double</span> nfft_elapsed_seconds(ticks t1, ticks t0)</div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> {</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> UNUSED(t1);</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> UNUSED(t0);</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> <span class="keywordflow">return</span> elapsed(t1,t0) / TICKS_PER_SECOND;</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> }</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> </div>
-<div class="line"><a name="l00055"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga2752ca372ee2622f173a706e86e2b116"> 55</a></span> <span class="keywordtype">int</span> <a class="code" href="group__nfftutil.html#ga2752ca372ee2622f173a706e86e2b116" title="Computes integer .">nfft_prod_int</a>(<span class="keywordtype">int</span> *vec, <span class="keywordtype">int</span> d)</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> {</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">int</span> t, prod;</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> </div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> prod=1;</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">for</span>(t=0; t<d; t++)</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> prod *= vec[t];</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> </div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> <span class="keywordflow">return</span> prod;</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> }</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> </div>
-<div class="line"><a name="l00068"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga8adc6bf59ec10f16243030ee00ad4a40"> 68</a></span> <span class="keywordtype">int</span> <a class="code" href="group__nfftutil.html#ga8adc6bf59ec10f16243030ee00ad4a40" title="Computes integer .">nfst_prod_minus_a_int</a>(<span class="keywordtype">int</span> *vec, <span class="keywordtype">int</span> a, <span class="keywordtype">int</span> d)</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> {</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> <span class="keywordtype">int</span> t, prod;</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> </div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> prod=1;</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> <span class="keywordflow">for</span>(t=0; t<d; t++)</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> prod *= vec[t]-a;</div>
-<div class="line"><a name="l00075"></a><span class="lineno"> 75</span> </div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> <span class="keywordflow">return</span> prod;</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> }</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> </div>
-<div class="line"><a name="l00081"></a><span class="lineno"><a class="code" href="group__nfftutil.html#gad979f626cc8397e26d1bd78a7ba342cd"> 81</a></span> <span class="keywordtype">int</span> <a class="code" href="group__nfftutil.html#gad979f626cc8397e26d1bd78a7ba342cd" title="Computes .">nfft_plain_loop</a>(<span class="keywordtype">int</span> *idx,<span class="keywordtype">int</span> *N,<span class="keywordtype">int</span> d)</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> {</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> <span class="keywordtype">int</span> t,sum;</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> </div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> sum = idx[0];</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> <span class="keywordflow">for</span> (t = 1; t < d; t++)</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> sum = sum * N[t] + idx[t];</div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> </div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> <span class="keywordflow">return</span> sum;</div>
-<div class="line"><a name="l00090"></a><span class="lineno"> 90</span> }</div>
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> </div>
-<div class="line"><a name="l00094"></a><span class="lineno"><a class="code" href="group__nfftutil.html#gad7bad7074a695341742f57526f8695eb"> 94</a></span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#gad7bad7074a695341742f57526f8695eb" title="Computes double .">nfft_prod_real</a>(<span class="keywordtype">double</span> *vec,<span class="keywordtype">int</span> d)</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> {</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> <span class="keywordtype">int</span> t;</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordtype">double</span> prod;</div>
-<div class="line"><a name="l00098"></a><span class="lineno"> 98</span> </div>
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> prod=1.0;</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordflow">for</span>(t=0; t<d; t++)</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> prod*=vec[t];</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> </div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> <span class="keywordflow">return</span> prod;</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> }</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"> 106</span> <span class="keyword">static</span> <span class="keywordtype">void</span> bspline_help(<span class="keywordtype">int</span> k, <span class="keywordtype">double</span> x, <span class="keywordtype">double</span> *scratch, <span class="keywordtype">int</span> j, <span class="keywordtype">int</span> ug,</div>
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordtype">int</span> og, <span class="keywordtype">int</span> r)</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> {</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">int</span> i; <span class="comment">/* row index of the de Boor scheme */</span></div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordtype">int</span> idx; <span class="comment">/* index in scratch */</span></div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> <span class="keywordtype">double</span> a; <span class="comment">/* alpha of the de Boor scheme */</span></div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> </div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> <span class="comment">/* computation of one column */</span></div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="keywordflow">for</span> (i = og + r - k + 1, idx = og; idx >= ug; i--, idx--)</div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> {</div>
-<div class="line"><a name="l00116"></a><span class="lineno"> 116</span> a = ((R)(x - i)) / ((R)(k - j));</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> scratch[idx] = (1 - a) * scratch[idx-1] + a * scratch[idx];</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> }</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> } <span class="comment">/* bspline_help */</span></div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> </div>
-<div class="line"><a name="l00124"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga2fd48f1f700153c050d27691c4b2a6cc"> 124</a></span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga2fd48f1f700153c050d27691c4b2a6cc" title="Computes the B-spline , scratch is used for de Boor's scheme.">nfft_bspline</a>(<span class="keywordtype">int</span> k, <span class="keywordtype">double</span> x, <span class="keywordtype">double</span [...]
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> {</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> <span class="keywordtype">double</span> result_value; </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordtype">int</span> r; </div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> <span class="keywordtype">int</span> g1,g2; </div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> <span class="keywordtype">int</span> j,idx,ug,og; </div>
-<div class="line"><a name="l00130"></a><span class="lineno"> 130</span> <span class="keywordtype">double</span> a; </div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> result_value=0.0;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="keywordflow">if</span>(0<x && x<k)</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> {</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> <span class="comment">/* using symmetry around k/2 */</span></div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">if</span>((k-x)<x) x=k-x;</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> </div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> r=(int)(ceil(x)-1.0);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> </div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> <span class="keywordflow">for</span>(idx=0; idx<k; idx++)</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> scratch[idx]=0.0;</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> </div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> scratch[k-r-1]=1.0;</div>
-<div class="line"><a name="l00144"></a><span class="lineno"> 144</span> </div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="comment">/* bounds of the algorithm */</span></div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> g1 = r;</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> g2 = k - 1 - r;</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> ug = g2;</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> </div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="comment">/* g1<=g2 holds */</span></div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> </div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> <span class="keywordflow">for</span>(j=1, og=g2+1; j<=g1; j++, og++)</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> {</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> a = (x - r + k - 1 - og)/(k - j);</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> scratch[og] = (1 - a) * scratch[og-1];</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> bspline_help(k,x,scratch,j,ug+1,og-1,r);</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> a = (x - r + k - 1 - ug)/(k - j);</div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> scratch[ug] = a * scratch[ug];</div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> }</div>
-<div class="line"><a name="l00160"></a><span class="lineno"> 160</span> <span class="keywordflow">for</span>(og-- ; j<=g2; j++)</div>
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> {</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> bspline_help(k,x,scratch,j,ug+1,og,r);</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> a = (x - r + k - 1 - ug)/(k - j);</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> scratch[ug] = a * scratch[ug];</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> }</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="keywordflow">for</span>( ; j<k; j++)</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> {</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> ug++;</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> bspline_help(k,x,scratch,j,ug,og,r);</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> }</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> result_value = scratch[k-1];</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> }</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> <span class="keywordflow">return</span>(result_value);</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> } <span class="comment">/* bspline */</span></div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> </div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga135eb6c5a8ae1a84ea64c9099caac004" title="Computes the inner/dot product .">nfft_dot_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> {</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="keywordtype">double</span> dot;</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"> 183</span> <span class="keywordflow">for</span>(k=0,dot=0; k<n; k++)</div>
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> dot+=conj(x[k])*x[k];</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> </div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="keywordflow">return</span> dot;</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> }</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> </div>
-<div class="line"><a name="l00191"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5"> 191</a></span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga02357d8d67d2591573089e49958855a5" title="Computes the inner/dot product .">nfft_dot_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> {</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> <span class="keywordtype">double</span> dot;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> </div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> <span class="keywordflow">for</span>(k=0,dot=0; k<n; k++)</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> dot+=x[k]*x[k];</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> </div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> <span class="keywordflow">return</span> dot;</div>
-<div class="line"><a name="l00200"></a><span class="lineno"> 200</span> }</div>
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> </div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> </div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#gac712b4a91652e20dc53719ce6fc1f9e1" title="Computes the weighted inner/dot product .">nfft_dot_w_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> *w, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> {</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="keywordtype">double</span> dot;</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> </div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> <span class="keywordflow">for</span>(k=0,dot=0.0; k<n; k++)</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> dot+=w[k]*conj(x[k])*x[k];</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> </div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> <span class="keywordflow">return</span> dot;</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> }</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> </div>
-<div class="line"><a name="l00218"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39"> 218</a></span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga69cceec47679c500072d3d60c6181b39" title="Computes the weighted inner/dot product .">nfft_dot_w_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *w, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> {</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="keywordtype">double</span> dot;</div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> </div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordflow">for</span>(k=0,dot=0.0; k<n; k++)</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> dot+=w[k]*x[k]*x[k];</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> </div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordflow">return</span> dot;</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> }</div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> </div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> </div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga68268fc9bfad5a7e7383098ac1715674" title="Computes the weighted inner/dot product .">nfft_dot_w_w2_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> *w, <span class="keywordtype">double</span> *w2, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> {</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> <span class="keywordtype">double</span> dot;</div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> </div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> <span class="keywordflow">for</span>(k=0,dot=0.0; k<n; k++)</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> dot+=w[k]*w2[k]*w2[k]*conj(x[k])*x[k];</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> </div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="keywordflow">return</span> dot;</div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> }</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> </div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> <span class="keywordtype">double</span> <a class="code" href="group__nfftutil.html#ga9b59288597d159357fe86395e635a075" title="Computes the weighted inner/dot product .">nfft_dot_w2_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> *w2, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> {</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> <span class="keywordtype">double</span> dot;</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> </div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> <span class="keywordflow">for</span>(k=0,dot=0.0; k<n; k++)</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> dot+=w2[k]*w2[k]*conj(x[k])*x[k];</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> </div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> <span class="keywordflow">return</span> dot;</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> }</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> </div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga21fd5b4d5f6113538320188306611133" title="Copies .">nfft_cp_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> _Complex *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> {</div>
-<div class="line"><a name="l00262"></a><span class="lineno"> 262</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> </div>
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> x[k]=y[k];</div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> }</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> </div>
-<div class="line"><a name="l00270"></a><span class="lineno"><a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2"> 270</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gab220a37bd6e58be7413507b17ca3bfe2" title="Copies .">nfft_cp_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> {</div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> </div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> x[k]=y[k];</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> }</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> </div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga33409df91e7ad5e1dca3beaa63e0ef25" title="Copies .">nfft_cp_a_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> _Complex *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> {</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> </div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> x[k]=a*y[k];</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> }</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> </div>
-<div class="line"><a name="l00290"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga41f20c605269e701b3305e49010e0759"> 290</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga41f20c605269e701b3305e49010e0759" title="Copies .">nfft_cp_a_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> {</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> </div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> x[k]=a*y[k];</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> }</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> </div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> </div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga630054cb816785d766959a867965f619" title="Copies .">nfft_cp_w_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> *w, <span class="keywordtype">double</span> _Complex *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> {</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> </div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> x[k]=w[k]*y[k];</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> }</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> </div>
-<div class="line"><a name="l00311"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099"> 311</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga27a75e17d21c508cacf81276ca531099" title="Copies .">nfft_cp_w_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *w, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> {</div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> </div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> x[k]=w[k]*y[k];</div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> }</div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> </div>
-<div class="line"><a name="l00319"></a><span class="lineno"> 319</span> </div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> </div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga676395f56bbf1c444d074a21753de8d5" title="Updates .">nfft_upd_axpy_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> _Complex *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> {</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> </div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> x[k]=a*x[k]+y[k];</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> }</div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> </div>
-<div class="line"><a name="l00333"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3"> 333</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga7610a506bc5ab40a6e1d7937b36921a3" title="Updates .">nfft_upd_axpy_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> {</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> </div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> x[k]=a*x[k]+y[k];</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> }</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> </div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> </div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga1fde8da1b69413398fca44e2ef2fbdb4" title="Updates .">nfft_upd_xpay_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> _Complex *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> {</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> </div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> x[k]+=a*y[k];</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> }</div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> </div>
-<div class="line"><a name="l00354"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064"> 354</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga2389c3b56a484a3f165b7d9203700064" title="Updates .">nfft_upd_xpay_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> {</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> </div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> x[k]+=a*y[k];</div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> }</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> </div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> </div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> </div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga903a4b3ed369dcfe67b9379a238ed23d" title="Updates .">nfft_upd_axpby_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> _Complex *y, <span class="keywordtype">double</span> b, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> {</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> </div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> x[k]=a*x[k]+b*y[k];</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> }</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> </div>
-<div class="line"><a name="l00376"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga75e403e92875b0b919a555f8cede0e8d"> 376</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga75e403e92875b0b919a555f8cede0e8d" title="Updates .">nfft_upd_axpby_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> *y, <span class="keywordtype">double</span> [...]
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> {</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> </div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> x[k]=a*x[k]+b*y[k];</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> }</div>
-<div class="line"><a name="l00383"></a><span class="lineno"> 383</span> </div>
-<div class="line"><a name="l00384"></a><span class="lineno"> 384</span> </div>
-<div class="line"><a name="l00387"></a><span class="lineno"> 387</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gad8e10773e59818c88a8ea2cb560b936e" title="Updates .">nfft_upd_xpawy_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> *w, <span class="keywordtype">double</span> _Complex *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00388"></a><span class="lineno"> 388</span> {</div>
-<div class="line"><a name="l00389"></a><span class="lineno"> 389</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00390"></a><span class="lineno"> 390</span> </div>
-<div class="line"><a name="l00391"></a><span class="lineno"> 391</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00392"></a><span class="lineno"> 392</span> x[k]+=a*w[k]*y[k];</div>
-<div class="line"><a name="l00393"></a><span class="lineno"> 393</span> }</div>
-<div class="line"><a name="l00394"></a><span class="lineno"> 394</span> </div>
-<div class="line"><a name="l00397"></a><span class="lineno"><a class="code" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0"> 397</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gac5db5bbc58f772844cf0caf5fd9fafb0" title="Updates .">nfft_upd_xpawy_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> *w, <span class="keywordtype">double</span> [...]
-<div class="line"><a name="l00398"></a><span class="lineno"> 398</span> {</div>
-<div class="line"><a name="l00399"></a><span class="lineno"> 399</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00400"></a><span class="lineno"> 400</span> </div>
-<div class="line"><a name="l00401"></a><span class="lineno"> 401</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00402"></a><span class="lineno"> 402</span> x[k]+=a*w[k]*y[k];</div>
-<div class="line"><a name="l00403"></a><span class="lineno"> 403</span> }</div>
-<div class="line"><a name="l00404"></a><span class="lineno"> 404</span> </div>
-<div class="line"><a name="l00405"></a><span class="lineno"> 405</span> </div>
-<div class="line"><a name="l00406"></a><span class="lineno"> 406</span> </div>
-<div class="line"><a name="l00409"></a><span class="lineno"> 409</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga693919963b51cf396311b15660e04cd8" title="Updates .">nfft_upd_axpwy_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> *w, <span class="keywordtype">double</span> _Complex *y, <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00410"></a><span class="lineno"> 410</span> {</div>
-<div class="line"><a name="l00411"></a><span class="lineno"> 411</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00412"></a><span class="lineno"> 412</span> </div>
-<div class="line"><a name="l00413"></a><span class="lineno"> 413</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00414"></a><span class="lineno"> 414</span> x[k]=a*x[k]+w[k]*y[k];</div>
-<div class="line"><a name="l00415"></a><span class="lineno"> 415</span> }</div>
-<div class="line"><a name="l00416"></a><span class="lineno"> 416</span> </div>
-<div class="line"><a name="l00419"></a><span class="lineno"><a class="code" href="group__nfftutil.html#gaf6777c4b8aa9f575f1600c51e8ae343a"> 419</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gaf6777c4b8aa9f575f1600c51e8ae343a" title="Updates .">nfft_upd_axpwy_double</a>(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> a, <span class="keywordtype">double</span> *w, <span class="keywordtype">double</span> [...]
-<div class="line"><a name="l00420"></a><span class="lineno"> 420</span> {</div>
-<div class="line"><a name="l00421"></a><span class="lineno"> 421</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00422"></a><span class="lineno"> 422</span> </div>
-<div class="line"><a name="l00423"></a><span class="lineno"> 423</span> <span class="keywordflow">for</span>(k=0;k<n;k++)</div>
-<div class="line"><a name="l00424"></a><span class="lineno"> 424</span> x[k]=a*x[k]+w[k]*y[k];</div>
-<div class="line"><a name="l00425"></a><span class="lineno"> 425</span> }</div>
-<div class="line"><a name="l00426"></a><span class="lineno"> 426</span> </div>
-<div class="line"><a name="l00427"></a><span class="lineno"> 427</span> </div>
-<div class="line"><a name="l00428"></a><span class="lineno"> 428</span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gaa388b5ec231e02ac45e37b60fd62e770" title="Swaps each half over N[d]/2.">nfft_fftshift_complex</a>(<span class="keywordtype">double</span> _Complex *x, <span class="keywordtype">int</span> d, <span class="keywordtype">int</span>* N)</div>
-<div class="line"><a name="l00429"></a><span class="lineno"> 429</span> {</div>
-<div class="line"><a name="l00430"></a><span class="lineno"> 430</span> <span class="keywordtype">int</span> d_pre, d_act, d_post;</div>
-<div class="line"><a name="l00431"></a><span class="lineno"> 431</span> <span class="keywordtype">int</span> N_pre, N_act, N_post;</div>
-<div class="line"><a name="l00432"></a><span class="lineno"> 432</span> <span class="keywordtype">int</span> k_pre, k_act, k_post;</div>
-<div class="line"><a name="l00433"></a><span class="lineno"> 433</span> <span class="keywordtype">int</span> k,k_swap;</div>
-<div class="line"><a name="l00434"></a><span class="lineno"> 434</span> </div>
-<div class="line"><a name="l00435"></a><span class="lineno"> 435</span> <span class="keywordtype">double</span> _Complex x_swap;</div>
-<div class="line"><a name="l00436"></a><span class="lineno"> 436</span> </div>
-<div class="line"><a name="l00437"></a><span class="lineno"> 437</span> <span class="keywordflow">for</span>(d_act=0;d_act<d;d_act++)</div>
-<div class="line"><a name="l00438"></a><span class="lineno"> 438</span> {</div>
-<div class="line"><a name="l00439"></a><span class="lineno"> 439</span> <span class="keywordflow">for</span>(d_pre=0, N_pre=1;d_pre<d_act;d_pre++)</div>
-<div class="line"><a name="l00440"></a><span class="lineno"> 440</span> N_pre*=N[d_pre];</div>
-<div class="line"><a name="l00441"></a><span class="lineno"> 441</span> </div>
-<div class="line"><a name="l00442"></a><span class="lineno"> 442</span> N_act=N[d_act];</div>
-<div class="line"><a name="l00443"></a><span class="lineno"> 443</span> </div>
-<div class="line"><a name="l00444"></a><span class="lineno"> 444</span> <span class="keywordflow">for</span>(d_post=d_act+1, N_post=1;d_post<d;d_post++)</div>
-<div class="line"><a name="l00445"></a><span class="lineno"> 445</span> N_post*=N[d_post];</div>
-<div class="line"><a name="l00446"></a><span class="lineno"> 446</span> </div>
-<div class="line"><a name="l00447"></a><span class="lineno"> 447</span> <span class="keywordflow">for</span>(k_pre=0;k_pre<N_pre;k_pre++)</div>
-<div class="line"><a name="l00448"></a><span class="lineno"> 448</span> <span class="keywordflow">for</span>(k_act=0;k_act<N_act/2;k_act++)</div>
-<div class="line"><a name="l00449"></a><span class="lineno"> 449</span> <span class="keywordflow">for</span>(k_post=0;k_post<N_post;k_post++)</div>
-<div class="line"><a name="l00450"></a><span class="lineno"> 450</span> {</div>
-<div class="line"><a name="l00451"></a><span class="lineno"> 451</span> k=(k_pre*N_act+k_act)*N_post+k_post;</div>
-<div class="line"><a name="l00452"></a><span class="lineno"> 452</span> k_swap=(k_pre*N_act+k_act+N_act/2)*N_post+k_post;</div>
-<div class="line"><a name="l00453"></a><span class="lineno"> 453</span> </div>
-<div class="line"><a name="l00454"></a><span class="lineno"> 454</span> x_swap=x[k];</div>
-<div class="line"><a name="l00455"></a><span class="lineno"> 455</span> x[k]=x[k_swap];</div>
-<div class="line"><a name="l00456"></a><span class="lineno"> 456</span> x[k_swap]=x_swap;</div>
-<div class="line"><a name="l00457"></a><span class="lineno"> 457</span> }</div>
-<div class="line"><a name="l00458"></a><span class="lineno"> 458</span> }</div>
-<div class="line"><a name="l00459"></a><span class="lineno"> 459</span> }</div>
-<div class="line"><a name="l00460"></a><span class="lineno"> 460</span> </div>
-<div class="line"><a name="l00463"></a><span class="lineno"><a class="code" href="group__nfftutil.html#gaa8e0581d802c4b7bb153682a4c156409"> 463</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gaa8e0581d802c4b7bb153682a4c156409" title="Prints a vector of integer numbers.">nfft_vpr_int</a>(<span class="keywordtype">int</span> *x, <span class="keywordtype">int</span> n, <span class="keywordtype">char</span> *text)</div>
-<div class="line"><a name="l00464"></a><span class="lineno"> 464</span> {</div>
-<div class="line"><a name="l00465"></a><span class="lineno"> 465</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00466"></a><span class="lineno"> 466</span> </div>
-<div class="line"><a name="l00467"></a><span class="lineno"> 467</span> <span class="keywordflow">if</span>(text!=NULL)</div>
-<div class="line"><a name="l00468"></a><span class="lineno"> 468</span> {</div>
-<div class="line"><a name="l00469"></a><span class="lineno"> 469</span> printf (<span class="stringliteral">"\n %s, adr=%p\n"</span>, text, (<span class="keywordtype">void</span>*)x);</div>
-<div class="line"><a name="l00470"></a><span class="lineno"> 470</span> <span class="keywordflow">for</span> (k=0; k<n; k++)</div>
-<div class="line"><a name="l00471"></a><span class="lineno"> 471</span> {</div>
-<div class="line"><a name="l00472"></a><span class="lineno"> 472</span> <span class="keywordflow">if</span> (k%8==0)</div>
-<div class="line"><a name="l00473"></a><span class="lineno"> 473</span> printf(<span class="stringliteral">"%6d.\t"</span>, k);</div>
-<div class="line"><a name="l00474"></a><span class="lineno"> 474</span> printf(<span class="stringliteral">"%d,"</span>, x[k]);</div>
-<div class="line"><a name="l00475"></a><span class="lineno"> 475</span> <span class="keywordflow">if</span> (k%8==7)</div>
-<div class="line"><a name="l00476"></a><span class="lineno"> 476</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00477"></a><span class="lineno"> 477</span> }</div>
-<div class="line"><a name="l00478"></a><span class="lineno"> 478</span> <span class="keywordflow">if</span> (n%8!=0)</div>
-<div class="line"><a name="l00479"></a><span class="lineno"> 479</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00480"></a><span class="lineno"> 480</span> }</div>
-<div class="line"><a name="l00481"></a><span class="lineno"> 481</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00482"></a><span class="lineno"> 482</span> <span class="keywordflow">for</span> (k=0; k<n; k++)</div>
-<div class="line"><a name="l00483"></a><span class="lineno"> 483</span> printf(<span class="stringliteral">"%d,\n"</span>, x[k]);</div>
-<div class="line"><a name="l00484"></a><span class="lineno"> 484</span> fflush(stdout);</div>
-<div class="line"><a name="l00485"></a><span class="lineno"> 485</span> }</div>
-<div class="line"><a name="l00486"></a><span class="lineno"> 486</span> </div>
-<div class="line"><a name="l00488"></a><span class="lineno"> 488</span> <span class="keywordtype">void</span> X(vpr_double)(R *x, <span class="keyword">const</span> <span class="keywordtype">int</span> n, <span class="keyword">const</span> <span class="keywordtype">char</span> *text)</div>
-<div class="line"><a name="l00489"></a><span class="lineno"> 489</span> {</div>
-<div class="line"><a name="l00490"></a><span class="lineno"> 490</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00491"></a><span class="lineno"> 491</span> </div>
-<div class="line"><a name="l00492"></a><span class="lineno"> 492</span> <span class="keywordflow">if</span> (x == NULL)</div>
-<div class="line"><a name="l00493"></a><span class="lineno"> 493</span> {</div>
-<div class="line"><a name="l00494"></a><span class="lineno"> 494</span> printf(<span class="stringliteral">"null pointer\n"</span>);</div>
-<div class="line"><a name="l00495"></a><span class="lineno"> 495</span> fflush(stdout);</div>
-<div class="line"><a name="l00496"></a><span class="lineno"> 496</span> exit(-1);</div>
-<div class="line"><a name="l00497"></a><span class="lineno"> 497</span> }</div>
-<div class="line"><a name="l00498"></a><span class="lineno"> 498</span> </div>
-<div class="line"><a name="l00499"></a><span class="lineno"> 499</span> <span class="keywordflow">if</span> (text != NULL)</div>
-<div class="line"><a name="l00500"></a><span class="lineno"> 500</span> {</div>
-<div class="line"><a name="l00501"></a><span class="lineno"> 501</span> printf (<span class="stringliteral">"\n %s, adr=%p\n"</span>, text, (<span class="keywordtype">void</span>*)x);</div>
-<div class="line"><a name="l00502"></a><span class="lineno"> 502</span> </div>
-<div class="line"><a name="l00503"></a><span class="lineno"> 503</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00504"></a><span class="lineno"> 504</span> {</div>
-<div class="line"><a name="l00505"></a><span class="lineno"> 505</span> <span class="keywordflow">if</span> (k%8 == 0)</div>
-<div class="line"><a name="l00506"></a><span class="lineno"> 506</span> printf(<span class="stringliteral">"%6d.\t"</span>, k);</div>
-<div class="line"><a name="l00507"></a><span class="lineno"> 507</span> </div>
-<div class="line"><a name="l00508"></a><span class="lineno"> 508</span> printf(<span class="stringliteral">"%+.1"</span> FE <span class="stringliteral">","</span>, x[k]);</div>
-<div class="line"><a name="l00509"></a><span class="lineno"> 509</span> </div>
-<div class="line"><a name="l00510"></a><span class="lineno"> 510</span> <span class="keywordflow">if</span> (k%8 == 7)</div>
-<div class="line"><a name="l00511"></a><span class="lineno"> 511</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00512"></a><span class="lineno"> 512</span> }</div>
-<div class="line"><a name="l00513"></a><span class="lineno"> 513</span> </div>
-<div class="line"><a name="l00514"></a><span class="lineno"> 514</span> <span class="keywordflow">if</span> (n%8 != 0)</div>
-<div class="line"><a name="l00515"></a><span class="lineno"> 515</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00516"></a><span class="lineno"> 516</span> }</div>
-<div class="line"><a name="l00517"></a><span class="lineno"> 517</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00518"></a><span class="lineno"> 518</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00519"></a><span class="lineno"> 519</span> printf(<span class="stringliteral">"%+"</span> FE <span class="stringliteral">",\n"</span>, x[k]);</div>
-<div class="line"><a name="l00520"></a><span class="lineno"> 520</span> </div>
-<div class="line"><a name="l00521"></a><span class="lineno"> 521</span> fflush(stdout);</div>
-<div class="line"><a name="l00522"></a><span class="lineno"> 522</span> }</div>
-<div class="line"><a name="l00523"></a><span class="lineno"> 523</span> </div>
-<div class="line"><a name="l00525"></a><span class="lineno"> 525</span> <span class="keywordtype">void</span> X(vpr_complex)(C *x, <span class="keyword">const</span> <span class="keywordtype">int</span> n, <span class="keyword">const</span> <span class="keywordtype">char</span> *text)</div>
-<div class="line"><a name="l00526"></a><span class="lineno"> 526</span> {</div>
-<div class="line"><a name="l00527"></a><span class="lineno"> 527</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00528"></a><span class="lineno"> 528</span> </div>
-<div class="line"><a name="l00529"></a><span class="lineno"> 529</span> <span class="keywordflow">if</span>(text != NULL)</div>
-<div class="line"><a name="l00530"></a><span class="lineno"> 530</span> {</div>
-<div class="line"><a name="l00531"></a><span class="lineno"> 531</span> printf(<span class="stringliteral">"\n %s, adr=%p\n"</span>, text, (<span class="keywordtype">void</span>*)x);</div>
-<div class="line"><a name="l00532"></a><span class="lineno"> 532</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00533"></a><span class="lineno"> 533</span> {</div>
-<div class="line"><a name="l00534"></a><span class="lineno"> 534</span> <span class="keywordflow">if</span> (k%4 == 0)</div>
-<div class="line"><a name="l00535"></a><span class="lineno"> 535</span> printf(<span class="stringliteral">"%6d.\t"</span>, k);</div>
-<div class="line"><a name="l00536"></a><span class="lineno"> 536</span> </div>
-<div class="line"><a name="l00537"></a><span class="lineno"> 537</span> printf(<span class="stringliteral">"%+.1"</span> FE <span class="stringliteral">"%+.1"</span> FE <span class="stringliteral">"i,"</span>, CREAL(x[k]), CIMAG(x[k]));</div>
-<div class="line"><a name="l00538"></a><span class="lineno"> 538</span> </div>
-<div class="line"><a name="l00539"></a><span class="lineno"> 539</span> <span class="keywordflow">if</span> (k%4==3)</div>
-<div class="line"><a name="l00540"></a><span class="lineno"> 540</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00541"></a><span class="lineno"> 541</span> }</div>
-<div class="line"><a name="l00542"></a><span class="lineno"> 542</span> <span class="keywordflow">if</span> (n%4!=0)</div>
-<div class="line"><a name="l00543"></a><span class="lineno"> 543</span> printf(<span class="stringliteral">"\n"</span>);</div>
-<div class="line"><a name="l00544"></a><span class="lineno"> 544</span> }</div>
-<div class="line"><a name="l00545"></a><span class="lineno"> 545</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00546"></a><span class="lineno"> 546</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00547"></a><span class="lineno"> 547</span> printf(<span class="stringliteral">"%+"</span> FE <span class="stringliteral">"%+"</span> FE <span class="stringliteral">"i,\n"</span>, CREAL(x[k]), CIMAG(x[k]));</div>
-<div class="line"><a name="l00548"></a><span class="lineno"> 548</span> </div>
-<div class="line"><a name="l00549"></a><span class="lineno"> 549</span> fflush(stdout);</div>
-<div class="line"><a name="l00550"></a><span class="lineno"> 550</span> }</div>
-<div class="line"><a name="l00551"></a><span class="lineno"> 551</span> </div>
-<div class="line"><a name="l00552"></a><span class="lineno"> 552</span> <span class="keywordtype">void</span> X(vrand_unit_complex)(C *x, <span class="keyword">const</span> <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00553"></a><span class="lineno"> 553</span> {</div>
-<div class="line"><a name="l00554"></a><span class="lineno"> 554</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00555"></a><span class="lineno"> 555</span> </div>
-<div class="line"><a name="l00556"></a><span class="lineno"> 556</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00557"></a><span class="lineno"> 557</span> x[k] = nfft_drand48() + II*nfft_drand48();</div>
-<div class="line"><a name="l00558"></a><span class="lineno"> 558</span> }</div>
-<div class="line"><a name="l00559"></a><span class="lineno"> 559</span> </div>
-<div class="line"><a name="l00560"></a><span class="lineno"> 560</span> <span class="keywordtype">void</span> X(vrand_shifted_unit_double)(R *x, <span class="keyword">const</span> <span class="keywordtype">int</span> n)</div>
-<div class="line"><a name="l00561"></a><span class="lineno"> 561</span> {</div>
-<div class="line"><a name="l00562"></a><span class="lineno"> 562</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00563"></a><span class="lineno"> 563</span> </div>
-<div class="line"><a name="l00564"></a><span class="lineno"> 564</span> <span class="keywordflow">for</span> (k = 0; k < n; k++)</div>
-<div class="line"><a name="l00565"></a><span class="lineno"> 565</span> x[k] = nfft_drand48() - K(0.5);</div>
-<div class="line"><a name="l00566"></a><span class="lineno"> 566</span> }</div>
-<div class="line"><a name="l00567"></a><span class="lineno"> 567</span> </div>
-<div class="line"><a name="l00569"></a><span class="lineno"> 569</span> <span class="keywordtype">void</span> X(voronoi_weights_1d)(R *w, R *x, <span class="keyword">const</span> <span class="keywordtype">int</span> M)</div>
-<div class="line"><a name="l00570"></a><span class="lineno"> 570</span> {</div>
-<div class="line"><a name="l00571"></a><span class="lineno"> 571</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00572"></a><span class="lineno"> 572</span> </div>
-<div class="line"><a name="l00573"></a><span class="lineno"> 573</span> w[0] = (x[1]-x[0])/K(2.0);</div>
-<div class="line"><a name="l00574"></a><span class="lineno"> 574</span> </div>
-<div class="line"><a name="l00575"></a><span class="lineno"> 575</span> <span class="keywordflow">for</span>(j = 1; j < M-1; j++)</div>
-<div class="line"><a name="l00576"></a><span class="lineno"> 576</span> w[j] = (x[j+1]-x[j-1])/K(2.0);</div>
-<div class="line"><a name="l00577"></a><span class="lineno"> 577</span> </div>
-<div class="line"><a name="l00578"></a><span class="lineno"> 578</span> w[M-1] = (x[M-1]-x[M-2])/K(2.0);</div>
-<div class="line"><a name="l00579"></a><span class="lineno"> 579</span> }</div>
-<div class="line"><a name="l00580"></a><span class="lineno"> 580</span> </div>
-<div class="line"><a name="l00581"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga26a4ed487a23e99e01f111113be9f994"> 581</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga26a4ed487a23e99e01f111113be9f994" title="Computes voronoi weights for nodes on the sphere S^2.">nfft_voronoi_weights_S2</a>(<span class="keywordtype">double</span> *w, <span class="keywordtype">double</span> *xi, <span class="keywordtype">int</span [...]
-<div class="line"><a name="l00582"></a><span class="lineno"> 582</span> {</div>
-<div class="line"><a name="l00583"></a><span class="lineno"> 583</span> <span class="keywordtype">double</span> *x;</div>
-<div class="line"><a name="l00584"></a><span class="lineno"> 584</span> <span class="keywordtype">double</span> *y;</div>
-<div class="line"><a name="l00585"></a><span class="lineno"> 585</span> <span class="keywordtype">double</span> *z;</div>
-<div class="line"><a name="l00586"></a><span class="lineno"> 586</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00587"></a><span class="lineno"> 587</span> <span class="keywordtype">int</span> k;</div>
-<div class="line"><a name="l00588"></a><span class="lineno"> 588</span> <span class="keywordtype">int</span> el;</div>
-<div class="line"><a name="l00589"></a><span class="lineno"> 589</span> <span class="keywordtype">int</span> Mlocal = M;</div>
-<div class="line"><a name="l00590"></a><span class="lineno"> 590</span> <span class="keywordtype">int</span> lnew;</div>
-<div class="line"><a name="l00591"></a><span class="lineno"> 591</span> <span class="keywordtype">int</span> ier;</div>
-<div class="line"><a name="l00592"></a><span class="lineno"> 592</span> <span class="keywordtype">int</span> *list;</div>
-<div class="line"><a name="l00593"></a><span class="lineno"> 593</span> <span class="keywordtype">int</span> *lptr;</div>
-<div class="line"><a name="l00594"></a><span class="lineno"> 594</span> <span class="keywordtype">int</span> *lend;</div>
-<div class="line"><a name="l00595"></a><span class="lineno"> 595</span> <span class="keywordtype">int</span> *near;</div>
-<div class="line"><a name="l00596"></a><span class="lineno"> 596</span> <span class="keywordtype">int</span> *next;</div>
-<div class="line"><a name="l00597"></a><span class="lineno"> 597</span> <span class="keywordtype">double</span> *dist;</div>
-<div class="line"><a name="l00598"></a><span class="lineno"> 598</span> <span class="keywordtype">int</span> *ltri;</div>
-<div class="line"><a name="l00599"></a><span class="lineno"> 599</span> <span class="keywordtype">int</span> *listc;</div>
-<div class="line"><a name="l00600"></a><span class="lineno"> 600</span> <span class="keywordtype">int</span> nb;</div>
-<div class="line"><a name="l00601"></a><span class="lineno"> 601</span> <span class="keywordtype">double</span> *xc;</div>
-<div class="line"><a name="l00602"></a><span class="lineno"> 602</span> <span class="keywordtype">double</span> *yc;</div>
-<div class="line"><a name="l00603"></a><span class="lineno"> 603</span> <span class="keywordtype">double</span> *zc;</div>
-<div class="line"><a name="l00604"></a><span class="lineno"> 604</span> <span class="keywordtype">double</span> *rc;</div>
-<div class="line"><a name="l00605"></a><span class="lineno"> 605</span> <span class="keywordtype">double</span> *vr;</div>
-<div class="line"><a name="l00606"></a><span class="lineno"> 606</span> <span class="keywordtype">int</span> lp;</div>
-<div class="line"><a name="l00607"></a><span class="lineno"> 607</span> <span class="keywordtype">int</span> lpl;</div>
-<div class="line"><a name="l00608"></a><span class="lineno"> 608</span> <span class="keywordtype">int</span> kv;</div>
-<div class="line"><a name="l00609"></a><span class="lineno"> 609</span> <span class="keywordtype">double</span> a;</div>
-<div class="line"><a name="l00610"></a><span class="lineno"> 610</span> </div>
-<div class="line"><a name="l00611"></a><span class="lineno"> 611</span> <span class="comment">/* Allocate memory for auxilliary arrays. */</span></div>
-<div class="line"><a name="l00612"></a><span class="lineno"> 612</span> x = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M * <span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00613"></a><span class="lineno"> 613</span> y = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M * <span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00614"></a><span class="lineno"> 614</span> z = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(M * <span class="keyword">sizeof</span>(<span class="keywordtype">double</span>));</div>
-<div class="line"><a name="l00615"></a><span class="lineno"> 615</span> </div>
-<div class="line"><a name="l00616"></a><span class="lineno"> 616</span> list = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((6*M-12+1)*<span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00617"></a><span class="lineno"> 617</span> lptr = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((6*M-12+1)*<span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00618"></a><span class="lineno"> 618</span> lend = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((M+1)*<span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00619"></a><span class="lineno"> 619</span> near = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((M+1)*<span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00620"></a><span class="lineno"> 620</span> next = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((M+1)*<span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00621"></a><span class="lineno"> 621</span> dist = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((M+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00622"></a><span class="lineno"> 622</span> ltri = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((6*M+1)*<span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00623"></a><span class="lineno"> 623</span> listc = (<span class="keywordtype">int</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((6*M-12+1)*<span class="keyword">sizeof</span>(int));</div>
-<div class="line"><a name="l00624"></a><span class="lineno"> 624</span> xc = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((2*M-4+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00625"></a><span class="lineno"> 625</span> yc = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((2*M-4+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00626"></a><span class="lineno"> 626</span> zc = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((2*M-4+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00627"></a><span class="lineno"> 627</span> rc = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>((2*M-4+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00628"></a><span class="lineno"> 628</span> vr = (<span class="keywordtype">double</span>*)<a class="code" href="nfft3_8h.html#aafe6167438c5de4d3d4c509f66a6694e">nfft_malloc</a>(3*(2*M-4+1)*<span class="keyword">sizeof</span>(double));</div>
-<div class="line"><a name="l00629"></a><span class="lineno"> 629</span> </div>
-<div class="line"><a name="l00630"></a><span class="lineno"> 630</span> <span class="comment">/* Convert from spherical Coordinates in [0,1/2]x[-1/2,1/2) to Cartesian</span></div>
-<div class="line"><a name="l00631"></a><span class="lineno"> 631</span> <span class="comment"> * coordinates. */</span></div>
-<div class="line"><a name="l00632"></a><span class="lineno"> 632</span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l00633"></a><span class="lineno"> 633</span> {</div>
-<div class="line"><a name="l00634"></a><span class="lineno"> 634</span> x[k] = sin(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*xi[2*k+1])*cos(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*xi[2*k]);</div>
-<div class="line"><a name="l00635"></a><span class="lineno"> 635</span> y[k] = sin(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*xi[2*k+1])*sin(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*xi[2*k]);</div>
-<div class="line"><a name="l00636"></a><span class="lineno"> 636</span> z[k] = cos(2.0*<a class="code" href="group__nfftutil.html#ga598a3330b3c21701223ee0ca14316eca" title="Formerly known to be an irrational number.">PI</a>*xi[2*k+1]);</div>
-<div class="line"><a name="l00637"></a><span class="lineno"> 637</span> }</div>
-<div class="line"><a name="l00638"></a><span class="lineno"> 638</span> </div>
-<div class="line"><a name="l00639"></a><span class="lineno"> 639</span> <span class="comment">/* Generate Delaunay triangulation. */</span></div>
-<div class="line"><a name="l00640"></a><span class="lineno"> 640</span> trmesh_(&Mlocal, x, y, z, list, lptr, lend, &lnew, near, next, dist, &ier);</div>
-<div class="line"><a name="l00641"></a><span class="lineno"> 641</span> </div>
-<div class="line"><a name="l00642"></a><span class="lineno"> 642</span> <span class="comment">/* Check error flag. */</span></div>
-<div class="line"><a name="l00643"></a><span class="lineno"> 643</span> <span class="keywordflow">if</span> (ier == 0)</div>
-<div class="line"><a name="l00644"></a><span class="lineno"> 644</span> {</div>
-<div class="line"><a name="l00645"></a><span class="lineno"> 645</span> <span class="comment">/* Get Voronoi vertices. */</span></div>
-<div class="line"><a name="l00646"></a><span class="lineno"> 646</span> crlist_(&Mlocal, &Mlocal, x, y, z, list, lend, lptr, &lnew, ltri, listc, &nb, xc,</div>
-<div class="line"><a name="l00647"></a><span class="lineno"> 647</span> yc, zc, rc, &ier);</div>
-<div class="line"><a name="l00648"></a><span class="lineno"> 648</span> </div>
-<div class="line"><a name="l00649"></a><span class="lineno"> 649</span> <span class="keywordflow">if</span> (ier == 0)</div>
-<div class="line"><a name="l00650"></a><span class="lineno"> 650</span> {</div>
-<div class="line"><a name="l00651"></a><span class="lineno"> 651</span> <span class="comment">/* Calcuate sizes of Voronoi regions. */</span></div>
-<div class="line"><a name="l00652"></a><span class="lineno"> 652</span> <span class="keywordflow">for</span> (k = 0; k < M; k++)</div>
-<div class="line"><a name="l00653"></a><span class="lineno"> 653</span> {</div>
-<div class="line"><a name="l00654"></a><span class="lineno"> 654</span> <span class="comment">/* Get last neighbour index. */</span></div>
-<div class="line"><a name="l00655"></a><span class="lineno"> 655</span> lpl = lend[k];</div>
-<div class="line"><a name="l00656"></a><span class="lineno"> 656</span> lp = lpl;</div>
-<div class="line"><a name="l00657"></a><span class="lineno"> 657</span> </div>
-<div class="line"><a name="l00658"></a><span class="lineno"> 658</span> j = 0;</div>
-<div class="line"><a name="l00659"></a><span class="lineno"> 659</span> vr[3*j] = x[k];</div>
-<div class="line"><a name="l00660"></a><span class="lineno"> 660</span> vr[3*j+1] = y[k];</div>
-<div class="line"><a name="l00661"></a><span class="lineno"> 661</span> vr[3*j+2] = z[k];</div>
-<div class="line"><a name="l00662"></a><span class="lineno"> 662</span> </div>
-<div class="line"><a name="l00663"></a><span class="lineno"> 663</span> <span class="keywordflow">do</span></div>
-<div class="line"><a name="l00664"></a><span class="lineno"> 664</span> {</div>
-<div class="line"><a name="l00665"></a><span class="lineno"> 665</span> j++;</div>
-<div class="line"><a name="l00666"></a><span class="lineno"> 666</span> <span class="comment">/* Get next neighbour. */</span></div>
-<div class="line"><a name="l00667"></a><span class="lineno"> 667</span> lp = lptr[lp-1];</div>
-<div class="line"><a name="l00668"></a><span class="lineno"> 668</span> kv = listc[lp-1];</div>
-<div class="line"><a name="l00669"></a><span class="lineno"> 669</span> vr[3*j] = xc[kv-1];</div>
-<div class="line"><a name="l00670"></a><span class="lineno"> 670</span> vr[3*j+1] = yc[kv-1];</div>
-<div class="line"><a name="l00671"></a><span class="lineno"> 671</span> vr[3*j+2] = zc[kv-1];</div>
-<div class="line"><a name="l00672"></a><span class="lineno"> 672</span> <span class="comment">/* fprintf(stderr, "lp = %ld\t", lp); */</span></div>
-<div class="line"><a name="l00673"></a><span class="lineno"> 673</span> } <span class="keywordflow">while</span> (lp != lpl);</div>
-<div class="line"><a name="l00674"></a><span class="lineno"> 674</span> </div>
-<div class="line"><a name="l00675"></a><span class="lineno"> 675</span> a = 0;</div>
-<div class="line"><a name="l00676"></a><span class="lineno"> 676</span> <span class="keywordflow">for</span> (el = 0; el < j; el++)</div>
-<div class="line"><a name="l00677"></a><span class="lineno"> 677</span> {</div>
-<div class="line"><a name="l00678"></a><span class="lineno"> 678</span> a += areas_(vr, &vr[3*(el+1)],&vr[3*(((el+1)%j)+1)]);</div>
-<div class="line"><a name="l00679"></a><span class="lineno"> 679</span> }</div>
-<div class="line"><a name="l00680"></a><span class="lineno"> 680</span> </div>
-<div class="line"><a name="l00681"></a><span class="lineno"> 681</span> w[k] = a;</div>
-<div class="line"><a name="l00682"></a><span class="lineno"> 682</span> }</div>
-<div class="line"><a name="l00683"></a><span class="lineno"> 683</span> }</div>
-<div class="line"><a name="l00684"></a><span class="lineno"> 684</span> }</div>
-<div class="line"><a name="l00685"></a><span class="lineno"> 685</span> </div>
-<div class="line"><a name="l00686"></a><span class="lineno"> 686</span> <span class="comment">/* Deallocate memory. */</span></div>
-<div class="line"><a name="l00687"></a><span class="lineno"> 687</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(x);</div>
-<div class="line"><a name="l00688"></a><span class="lineno"> 688</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(y);</div>
-<div class="line"><a name="l00689"></a><span class="lineno"> 689</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(z);</div>
-<div class="line"><a name="l00690"></a><span class="lineno"> 690</span> </div>
-<div class="line"><a name="l00691"></a><span class="lineno"> 691</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(list);</div>
-<div class="line"><a name="l00692"></a><span class="lineno"> 692</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(lptr);</div>
-<div class="line"><a name="l00693"></a><span class="lineno"> 693</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(lend);</div>
-<div class="line"><a name="l00694"></a><span class="lineno"> 694</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(near);</div>
-<div class="line"><a name="l00695"></a><span class="lineno"> 695</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(next);</div>
-<div class="line"><a name="l00696"></a><span class="lineno"> 696</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(dist);</div>
-<div class="line"><a name="l00697"></a><span class="lineno"> 697</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(ltri);</div>
-<div class="line"><a name="l00698"></a><span class="lineno"> 698</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(listc);</div>
-<div class="line"><a name="l00699"></a><span class="lineno"> 699</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(xc);</div>
-<div class="line"><a name="l00700"></a><span class="lineno"> 700</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(yc);</div>
-<div class="line"><a name="l00701"></a><span class="lineno"> 701</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(zc);</div>
-<div class="line"><a name="l00702"></a><span class="lineno"> 702</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(rc);</div>
-<div class="line"><a name="l00703"></a><span class="lineno"> 703</span> <a class="code" href="nfft3_8h.html#ab8a0db03dda1317a8a3d922e0e4e8aaa">nfft_free</a>(vr);</div>
-<div class="line"><a name="l00704"></a><span class="lineno"> 704</span> }</div>
-<div class="line"><a name="l00705"></a><span class="lineno"> 705</span> </div>
-<div class="line"><a name="l00710"></a><span class="lineno"> 710</span> R X(modified_fejer)(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> kk)</div>
-<div class="line"><a name="l00711"></a><span class="lineno"> 711</span> {</div>
-<div class="line"><a name="l00712"></a><span class="lineno"> 712</span> <span class="keywordflow">return</span> (K(2.0)/((R)(N*N))*(K(1.0)-FABS(K(2.0)*kk+K(1.0))/((R)N)));</div>
-<div class="line"><a name="l00713"></a><span class="lineno"> 713</span> }</div>
-<div class="line"><a name="l00714"></a><span class="lineno"> 714</span> </div>
-<div class="line"><a name="l00716"></a><span class="lineno"> 716</span> R X(modified_jackson2)(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> kk)</div>
-<div class="line"><a name="l00717"></a><span class="lineno"> 717</span> {</div>
-<div class="line"><a name="l00718"></a><span class="lineno"> 718</span> <span class="keywordtype">int</span> kj;</div>
-<div class="line"><a name="l00719"></a><span class="lineno"> 719</span> <span class="keyword">const</span> R n=(N/K(2.0)+K(1.0))/K(2.0);</div>
-<div class="line"><a name="l00720"></a><span class="lineno"> 720</span> R result, k;</div>
-<div class="line"><a name="l00721"></a><span class="lineno"> 721</span> </div>
-<div class="line"><a name="l00722"></a><span class="lineno"> 722</span> <span class="keywordflow">for</span> (result = K(0.0), kj = kk; kj <= kk+1; kj++)</div>
-<div class="line"><a name="l00723"></a><span class="lineno"> 723</span> {</div>
-<div class="line"><a name="l00724"></a><span class="lineno"> 724</span> k = ABS(kj);</div>
-<div class="line"><a name="l00725"></a><span class="lineno"> 725</span> </div>
-<div class="line"><a name="l00726"></a><span class="lineno"> 726</span> <span class="keywordflow">if</span>(k/n < K(1.0))</div>
-<div class="line"><a name="l00727"></a><span class="lineno"> 727</span> result += K(1.0) - (K(3.0)*k + K(6.0)*n*POW(k,K(2.0))</div>
-<div class="line"><a name="l00728"></a><span class="lineno"> 728</span> - K(3.0)*POW(k,K(3.0)))/(K(2.0)*n*(K(2.0)*POW(n,K(2.0))+K(1.0)));</div>
-<div class="line"><a name="l00729"></a><span class="lineno"> 729</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00730"></a><span class="lineno"> 730</span> result+= (K(2.0)*n-k)*(POW(2*n-k,K(2.0))-K(1.0))/(K(2.0)</div>
-<div class="line"><a name="l00731"></a><span class="lineno"> 731</span> *n*(K(2.0)*POW(n,K(2.0))+K(1.0)));</div>
-<div class="line"><a name="l00732"></a><span class="lineno"> 732</span> }</div>
-<div class="line"><a name="l00733"></a><span class="lineno"> 733</span> </div>
-<div class="line"><a name="l00734"></a><span class="lineno"> 734</span> <span class="keywordflow">return</span> result;</div>
-<div class="line"><a name="l00735"></a><span class="lineno"> 735</span> }</div>
-<div class="line"><a name="l00736"></a><span class="lineno"> 736</span> </div>
-<div class="line"><a name="l00738"></a><span class="lineno"> 738</span> R X(modified_jackson4)(<span class="keyword">const</span> <span class="keywordtype">int</span> N, <span class="keyword">const</span> <span class="keywordtype">int</span> kk)</div>
-<div class="line"><a name="l00739"></a><span class="lineno"> 739</span> {</div>
-<div class="line"><a name="l00740"></a><span class="lineno"> 740</span> <span class="keywordtype">int</span> kj;</div>
-<div class="line"><a name="l00741"></a><span class="lineno"> 741</span> <span class="keyword">const</span> R n = (N/K(2.0)+K(3.0))/K(4.0), normalisation = (K(2416.0)*POW(n,K(7.0))</div>
-<div class="line"><a name="l00742"></a><span class="lineno"> 742</span> + K(1120.0)*POW(n,K(5.0)) + K(784.0)*POW(n,K(3.0)) + K(720.0)*n);</div>
-<div class="line"><a name="l00743"></a><span class="lineno"> 743</span> R result, k;</div>
-<div class="line"><a name="l00744"></a><span class="lineno"> 744</span> </div>
-<div class="line"><a name="l00745"></a><span class="lineno"> 745</span> <span class="keywordflow">for</span> (result = K(0.0), kj = kk; kj <= kk + 1; kj++)</div>
-<div class="line"><a name="l00746"></a><span class="lineno"> 746</span> {</div>
-<div class="line"><a name="l00747"></a><span class="lineno"> 747</span> k = ABS(kj);</div>
-<div class="line"><a name="l00748"></a><span class="lineno"> 748</span> </div>
-<div class="line"><a name="l00749"></a><span class="lineno"> 749</span> <span class="keywordflow">if</span> (k/n < K(1.0))</div>
-<div class="line"><a name="l00750"></a><span class="lineno"> 750</span> result += K(1.0) - (K(1260.0)*k + (K(1680.0)*POW(n, K(5.0))</div>
-<div class="line"><a name="l00751"></a><span class="lineno"> 751</span> + K(2240.0)*POW(n, K(3.0)) + K(2940.0)*n)*POW(k, K(2.0))</div>
-<div class="line"><a name="l00752"></a><span class="lineno"> 752</span> - K(1715.0)*POW(k, K(3.0)) - (K(560.0)*POW(n, K(3.0))</div>
-<div class="line"><a name="l00753"></a><span class="lineno"> 753</span> + K(1400.0)*n)*POW(k, K(4.0)) + K(490.0)*POW(k, K(5.0))</div>
-<div class="line"><a name="l00754"></a><span class="lineno"> 754</span> + K(140.0)*n*POW(k, K(6.0)) - K(35.0)*POW(k,K(7.0)))/normalisation;</div>
-<div class="line"><a name="l00755"></a><span class="lineno"> 755</span> </div>
-<div class="line"><a name="l00756"></a><span class="lineno"> 756</span> <span class="keywordflow">if</span> ((K(1.0) <= k/n) && (k/n < K(2.0)))</div>
-<div class="line"><a name="l00757"></a><span class="lineno"> 757</span> result += ((K(2472.0)*POW(n, K(7.0)) + K(336.0)*POW(n, K(5.0))</div>
-<div class="line"><a name="l00758"></a><span class="lineno"> 758</span> + K(3528.0)*POW(n, K(3.0)) - K(1296.0)*n) - (K(392.0)*POW(n, K(6.0))</div>
-<div class="line"><a name="l00759"></a><span class="lineno"> 759</span> - K(3920.0)*POW(n, K(4.0)) + K(8232.0)*POW(n, K(2.0)) - K(756.0))*k</div>
-<div class="line"><a name="l00760"></a><span class="lineno"> 760</span> - (K(504.0)*POW(n, K(5.0)) + K(10080.0)*POW(n, K(3.0))</div>
-<div class="line"><a name="l00761"></a><span class="lineno"> 761</span> - K(5292.0)*n)*POW(k, K(2.0)) - (K(1960.0)*POW(n, K(4.0))</div>
-<div class="line"><a name="l00762"></a><span class="lineno"> 762</span> - K(7840.0)*POW(n, K(2.0)) + K(1029.0))*POW(k, K(3.0))</div>
-<div class="line"><a name="l00763"></a><span class="lineno"> 763</span> + (K(2520.0)*POW(n, K(3.0)) - K(2520.0)*n) * POW(k, K(4.0))</div>
-<div class="line"><a name="l00764"></a><span class="lineno"> 764</span> - (K(1176.0)*POW(n, K(2.0)) - K(294.0)) * POW(k, K(5.0))</div>
-<div class="line"><a name="l00765"></a><span class="lineno"> 765</span> + K(252.0)*n*POW(k, K(6.0)) - K(21.0)*POW(k, K(7.0)))/normalisation;</div>
-<div class="line"><a name="l00766"></a><span class="lineno"> 766</span> </div>
-<div class="line"><a name="l00767"></a><span class="lineno"> 767</span> <span class="keywordflow">if</span> ((K(2.0) <= k/n) && (k/n < K(3.0)))</div>
-<div class="line"><a name="l00768"></a><span class="lineno"> 768</span> result += (-(K(1112.0)*POW(n, K(7.0)) - K(12880.0)*POW(n, K(5.0))</div>
-<div class="line"><a name="l00769"></a><span class="lineno"> 769</span> + K(7448.0)*POW(n, K(3.0)) - K(720.0)*n) + (K(12152.0)*POW(n, K(6.0))</div>
-<div class="line"><a name="l00770"></a><span class="lineno"> 770</span> - K(27440.0)*POW(n, K(4.0)) + K(8232.0)*POW(n, K(2.0)) - K(252.0))*k</div>
-<div class="line"><a name="l00771"></a><span class="lineno"> 771</span> - (K(19320.0)*POW(n, K(5.0)) - K(21280.0)*POW(n, K(3.0))</div>
-<div class="line"><a name="l00772"></a><span class="lineno"> 772</span> + K(2940.0)*n)*POW(k, K(2.0)) + (K(13720.0)*POW(n, K(4.0))</div>
-<div class="line"><a name="l00773"></a><span class="lineno"> 773</span> - K(7840.0)*POW(n, K(2.0)) + K(343.0))*POW(k, K(3.0))</div>
-<div class="line"><a name="l00774"></a><span class="lineno"> 774</span> - (K(5320.0)*POW(n, K(3.0)) - K(1400.0)*n)*POW(k, K(4.0))</div>
-<div class="line"><a name="l00775"></a><span class="lineno"> 775</span> + (K(1176.0)*POW(n, K(2.0)) - K(98.0))*POW(k, K(5.0))</div>
-<div class="line"><a name="l00776"></a><span class="lineno"> 776</span> - K(140.0)*n*POW(k, K(6.0)) + K(7.0) * POW(k, K(7.0)))/normalisation;</div>
-<div class="line"><a name="l00777"></a><span class="lineno"> 777</span> </div>
-<div class="line"><a name="l00778"></a><span class="lineno"> 778</span> <span class="keywordflow">if</span> ((K(3.0) <= k/n) && (k/n < K(4.0)))</div>
-<div class="line"><a name="l00779"></a><span class="lineno"> 779</span> result += ((4*n-k)*(POW(4*n-k, K(2.0)) - K(1.0))*(POW(4*n-k, K(2.0))</div>
-<div class="line"><a name="l00780"></a><span class="lineno"> 780</span> - K(4.0))*(POW(4*n-k, K(2.0)) - K(9.0)))/normalisation;</div>
-<div class="line"><a name="l00781"></a><span class="lineno"> 781</span> }</div>
-<div class="line"><a name="l00782"></a><span class="lineno"> 782</span> </div>
-<div class="line"><a name="l00783"></a><span class="lineno"> 783</span> <span class="keywordflow">return</span> result;</div>
-<div class="line"><a name="l00784"></a><span class="lineno"> 784</span> }</div>
-<div class="line"><a name="l00785"></a><span class="lineno"> 785</span> </div>
-<div class="line"><a name="l00787"></a><span class="lineno"> 787</span> R X(modified_sobolev)(<span class="keyword">const</span> R mu, <span class="keyword">const</span> <span class="keywordtype">int</span> kk)</div>
-<div class="line"><a name="l00788"></a><span class="lineno"> 788</span> {</div>
-<div class="line"><a name="l00789"></a><span class="lineno"> 789</span> R result;</div>
-<div class="line"><a name="l00790"></a><span class="lineno"> 790</span> <span class="keywordtype">int</span> kj, k;</div>
-<div class="line"><a name="l00791"></a><span class="lineno"> 791</span> </div>
-<div class="line"><a name="l00792"></a><span class="lineno"> 792</span> <span class="keywordflow">for</span> (result = K(0.0), kj = kk; kj <= kk+1; kj++)</div>
-<div class="line"><a name="l00793"></a><span class="lineno"> 793</span> {</div>
-<div class="line"><a name="l00794"></a><span class="lineno"> 794</span> k = ABS(kj);</div>
-<div class="line"><a name="l00795"></a><span class="lineno"> 795</span> <span class="keywordflow">if</span> (k == 0)</div>
-<div class="line"><a name="l00796"></a><span class="lineno"> 796</span> result += K(1.0);</div>
-<div class="line"><a name="l00797"></a><span class="lineno"> 797</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00798"></a><span class="lineno"> 798</span> result += POW((<span class="keywordtype">double</span>)k,-K(2.0)*mu);</div>
-<div class="line"><a name="l00799"></a><span class="lineno"> 799</span> }</div>
-<div class="line"><a name="l00800"></a><span class="lineno"> 800</span> </div>
-<div class="line"><a name="l00801"></a><span class="lineno"> 801</span> <span class="keywordflow">return</span> result;</div>
-<div class="line"><a name="l00802"></a><span class="lineno"> 802</span> }</div>
-<div class="line"><a name="l00803"></a><span class="lineno"> 803</span> </div>
-<div class="line"><a name="l00805"></a><span class="lineno"> 805</span> R X(modified_multiquadric)(<span class="keyword">const</span> R mu, <span class="keyword">const</span> R c, <span class="keyword">const</span> <span class="keywordtype">int</span> kk)</div>
-<div class="line"><a name="l00806"></a><span class="lineno"> 806</span> {</div>
-<div class="line"><a name="l00807"></a><span class="lineno"> 807</span> R result;</div>
-<div class="line"><a name="l00808"></a><span class="lineno"> 808</span> <span class="keywordtype">int</span> kj, k;</div>
-<div class="line"><a name="l00809"></a><span class="lineno"> 809</span> </div>
-<div class="line"><a name="l00810"></a><span class="lineno"> 810</span> <span class="keywordflow">for</span> (result = K(0.0), kj = kk; kj <= kk+1; kj++)</div>
-<div class="line"><a name="l00811"></a><span class="lineno"> 811</span> {</div>
-<div class="line"><a name="l00812"></a><span class="lineno"> 812</span> k = ABS(kj);</div>
-<div class="line"><a name="l00813"></a><span class="lineno"> 813</span> result += POW((<span class="keywordtype">double</span>)(k*k + c*c), -mu);</div>
-<div class="line"><a name="l00814"></a><span class="lineno"> 814</span> }</div>
-<div class="line"><a name="l00815"></a><span class="lineno"> 815</span> </div>
-<div class="line"><a name="l00816"></a><span class="lineno"> 816</span> <span class="keywordflow">return</span> result;</div>
-<div class="line"><a name="l00817"></a><span class="lineno"> 817</span> }</div>
-<div class="line"><a name="l00818"></a><span class="lineno"> 818</span> </div>
-<div class="line"><a name="l00819"></a><span class="lineno"> 819</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">int</span> scaled_modified_bessel_i_series(<span class="keyword">const</span> R x, <span class="keyword">const</span> R <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated [...]
-<div class="line"><a name="l00820"></a><span class="lineno"> 820</span> <span class="keyword">const</span> <span class="keywordtype">int</span> nb, <span class="keyword">const</span> <span class="keywordtype">int</span> ize, R *b)</div>
-<div class="line"><a name="l00821"></a><span class="lineno"> 821</span> {</div>
-<div class="line"><a name="l00822"></a><span class="lineno"> 822</span> <span class="keyword">const</span> R enmten = K(4.0)*nfft_float_property(NFFT_R_MIN);</div>
-<div class="line"><a name="l00823"></a><span class="lineno"> 823</span> R tempa = K(1.0), empal = K(1.0) + <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>, halfx = K(0.0), tempb = K(0.0);</div>
-<div class="line"><a name="l00824"></a><span class="lineno"> 824</span> <span class="keywordtype">int</span> n, ncalc = nb;</div>
-<div class="line"><a name="l00825"></a><span class="lineno"> 825</span> </div>
-<div class="line"><a name="l00826"></a><span class="lineno"> 826</span> <span class="keywordflow">if</span> (enmten < x)</div>
-<div class="line"><a name="l00827"></a><span class="lineno"> 827</span> halfx = x/K(2.0);</div>
-<div class="line"><a name="l00828"></a><span class="lineno"> 828</span> </div>
-<div class="line"><a name="l00829"></a><span class="lineno"> 829</span> <span class="keywordflow">if</span> (alpha != K(0.0))</div>
-<div class="line"><a name="l00830"></a><span class="lineno"> 830</span> tempa = POW(halfx, alpha)/TGAMMA(empal);</div>
-<div class="line"><a name="l00831"></a><span class="lineno"> 831</span> </div>
-<div class="line"><a name="l00832"></a><span class="lineno"> 832</span> <span class="keywordflow">if</span> (ize == 2)</div>
-<div class="line"><a name="l00833"></a><span class="lineno"> 833</span> tempa *= EXP(-x);</div>
-<div class="line"><a name="l00834"></a><span class="lineno"> 834</span> </div>
-<div class="line"><a name="l00835"></a><span class="lineno"> 835</span> <span class="keywordflow">if</span> (K(1.0) < x + K(1.0))</div>
-<div class="line"><a name="l00836"></a><span class="lineno"> 836</span> tempb = halfx*halfx;</div>
-<div class="line"><a name="l00837"></a><span class="lineno"> 837</span> </div>
-<div class="line"><a name="l00838"></a><span class="lineno"> 838</span> b[0] = tempa + tempa*tempb/empal;</div>
-<div class="line"><a name="l00839"></a><span class="lineno"> 839</span> </div>
-<div class="line"><a name="l00840"></a><span class="lineno"> 840</span> <span class="keywordflow">if</span> (x != K(0.0) && b[0] == K(0.0))</div>
-<div class="line"><a name="l00841"></a><span class="lineno"> 841</span> ncalc = 0;</div>
-<div class="line"><a name="l00842"></a><span class="lineno"> 842</span> </div>
-<div class="line"><a name="l00843"></a><span class="lineno"> 843</span> <span class="keywordflow">if</span> (nb == 1)</div>
-<div class="line"><a name="l00844"></a><span class="lineno"> 844</span> <span class="keywordflow">return</span> ncalc;</div>
-<div class="line"><a name="l00845"></a><span class="lineno"> 845</span> </div>
-<div class="line"><a name="l00846"></a><span class="lineno"> 846</span> <span class="keywordflow">if</span> (K(0.0) < x)</div>
-<div class="line"><a name="l00847"></a><span class="lineno"> 847</span> {</div>
-<div class="line"><a name="l00848"></a><span class="lineno"> 848</span> R tempc = halfx, tover = (enmten + enmten)/x;</div>
-<div class="line"><a name="l00849"></a><span class="lineno"> 849</span> </div>
-<div class="line"><a name="l00850"></a><span class="lineno"> 850</span> <span class="keywordflow">if</span> (tempb != K(0.0))</div>
-<div class="line"><a name="l00851"></a><span class="lineno"> 851</span> tover = enmten/tempb;</div>
-<div class="line"><a name="l00852"></a><span class="lineno"> 852</span> </div>
-<div class="line"><a name="l00853"></a><span class="lineno"> 853</span> <span class="keywordflow">for</span> (n = 1; n < nb; n++)</div>
-<div class="line"><a name="l00854"></a><span class="lineno"> 854</span> {</div>
-<div class="line"><a name="l00855"></a><span class="lineno"> 855</span> tempa /= empal;</div>
-<div class="line"><a name="l00856"></a><span class="lineno"> 856</span> empal += K(1.0);</div>
-<div class="line"><a name="l00857"></a><span class="lineno"> 857</span> tempa *= tempc;</div>
-<div class="line"><a name="l00858"></a><span class="lineno"> 858</span> </div>
-<div class="line"><a name="l00859"></a><span class="lineno"> 859</span> <span class="keywordflow">if</span> (tempa <= tover*empal)</div>
-<div class="line"><a name="l00860"></a><span class="lineno"> 860</span> tempa = K(0.0);</div>
-<div class="line"><a name="l00861"></a><span class="lineno"> 861</span> </div>
-<div class="line"><a name="l00862"></a><span class="lineno"> 862</span> b[n] = tempa + tempa*tempb/empal;</div>
-<div class="line"><a name="l00863"></a><span class="lineno"> 863</span> </div>
-<div class="line"><a name="l00864"></a><span class="lineno"> 864</span> <span class="keywordflow">if</span> (b[n] == K(0.0) && n < ncalc)</div>
-<div class="line"><a name="l00865"></a><span class="lineno"> 865</span> ncalc = n;</div>
-<div class="line"><a name="l00866"></a><span class="lineno"> 866</span> }</div>
-<div class="line"><a name="l00867"></a><span class="lineno"> 867</span> }</div>
-<div class="line"><a name="l00868"></a><span class="lineno"> 868</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00869"></a><span class="lineno"> 869</span> <span class="keywordflow">for</span> (n = 1; n < nb; n++)</div>
-<div class="line"><a name="l00870"></a><span class="lineno"> 870</span> b[n] = K(0.0);</div>
-<div class="line"><a name="l00871"></a><span class="lineno"> 871</span> </div>
-<div class="line"><a name="l00872"></a><span class="lineno"> 872</span> <span class="keywordflow">return</span> ncalc;</div>
-<div class="line"><a name="l00873"></a><span class="lineno"> 873</span> }</div>
-<div class="line"><a name="l00874"></a><span class="lineno"> 874</span> </div>
-<div class="line"><a name="l00875"></a><span class="lineno"> 875</span> <span class="keyword">static</span> <span class="keyword">inline</span> <span class="keywordtype">void</span> scaled_modified_bessel_i_normalize(<span class="keyword">const</span> R x,</div>
-<div class="line"><a name="l00876"></a><span class="lineno"> 876</span> <span class="keyword">const</span> R alpha, <span class="keyword">const</span> <span class="keywordtype">int</span> nb, <span class="keyword">const</span> <span class="keywordtype">int</span> ize, R *b, <span class="keyword">const</span> R sum_)</div>
-<div class="line"><a name="l00877"></a><span class="lineno"> 877</span> {</div>
-<div class="line"><a name="l00878"></a><span class="lineno"> 878</span> <span class="keyword">const</span> R enmten = K(4.0)*nfft_float_property(NFFT_R_MIN);</div>
-<div class="line"><a name="l00879"></a><span class="lineno"> 879</span> R sum = sum_, tempa;</div>
-<div class="line"><a name="l00880"></a><span class="lineno"> 880</span> <span class="keywordtype">int</span> n;</div>
-<div class="line"><a name="l00881"></a><span class="lineno"> 881</span> </div>
-<div class="line"><a name="l00882"></a><span class="lineno"> 882</span> <span class="comment">/* Normalize, i.e., divide all b[n] by sum */</span></div>
-<div class="line"><a name="l00883"></a><span class="lineno"> 883</span> <span class="keywordflow">if</span> (alpha != K(0.0))</div>
-<div class="line"><a name="l00884"></a><span class="lineno"> 884</span> sum = sum * TGAMMA(K(1.0) + alpha) * POW(x/K(2.0), -alpha);</div>
-<div class="line"><a name="l00885"></a><span class="lineno"> 885</span> </div>
-<div class="line"><a name="l00886"></a><span class="lineno"> 886</span> <span class="keywordflow">if</span> (ize == 1)</div>
-<div class="line"><a name="l00887"></a><span class="lineno"> 887</span> sum *= EXP(-x);</div>
-<div class="line"><a name="l00888"></a><span class="lineno"> 888</span> </div>
-<div class="line"><a name="l00889"></a><span class="lineno"> 889</span> tempa = enmten;</div>
-<div class="line"><a name="l00890"></a><span class="lineno"> 890</span> </div>
-<div class="line"><a name="l00891"></a><span class="lineno"> 891</span> <span class="keywordflow">if</span> (K(1.0) < sum)</div>
-<div class="line"><a name="l00892"></a><span class="lineno"> 892</span> tempa *= sum;</div>
-<div class="line"><a name="l00893"></a><span class="lineno"> 893</span> </div>
-<div class="line"><a name="l00894"></a><span class="lineno"> 894</span> <span class="keywordflow">for</span> (n = 1; n <= nb; n++)</div>
-<div class="line"><a name="l00895"></a><span class="lineno"> 895</span> {</div>
-<div class="line"><a name="l00896"></a><span class="lineno"> 896</span> <span class="keywordflow">if</span> (b[n-1] < tempa)</div>
-<div class="line"><a name="l00897"></a><span class="lineno"> 897</span> b[n-1] = K(0.0);</div>
-<div class="line"><a name="l00898"></a><span class="lineno"> 898</span> </div>
-<div class="line"><a name="l00899"></a><span class="lineno"> 899</span> b[n-1] /= sum;</div>
-<div class="line"><a name="l00900"></a><span class="lineno"> 900</span> }</div>
-<div class="line"><a name="l00901"></a><span class="lineno"> 901</span> }</div>
-<div class="line"><a name="l00902"></a><span class="lineno"> 902</span> </div>
-<div class="line"><a name="l00950"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga2decee6fe50d50797a82737ba82cf97a"> 950</a></span> <span class="keywordtype">int</span> <a class="code" href="group__nfftutil.html#ga2decee6fe50d50797a82737ba82cf97a" title="Calculates the modified bessel function , possibly scaled by , for real non-negative with ...">nfft_smbi</a>(<span class="keyword">const</span> R x, <span class="keyword">const</span> R alpha, <span class="k [...]
-<div class="line"><a name="l00951"></a><span class="lineno"> 951</span> {</div>
-<div class="line"><a name="l00952"></a><span class="lineno"> 952</span> <span class="comment">/* machine dependent parameters */</span></div>
-<div class="line"><a name="l00953"></a><span class="lineno"> 953</span> <span class="comment">/* NSIG - DECIMAL SIGNIFICANCE DESIRED. SHOULD BE SET TO */</span></div>
-<div class="line"><a name="l00954"></a><span class="lineno"> 954</span> <span class="comment">/* IFIX(ALOG10(2)*NBIT+1), WHERE NBIT IS THE NUMBER OF */</span></div>
-<div class="line"><a name="l00955"></a><span class="lineno"> 955</span> <span class="comment">/* BITS IN THE MANTISSA OF A WORKING PRECISION VARIABLE. */</span></div>
-<div class="line"><a name="l00956"></a><span class="lineno"> 956</span> <span class="comment">/* SETTING NSIG LOWER WILL RESULT IN DECREASED ACCURACY */</span></div>
-<div class="line"><a name="l00957"></a><span class="lineno"> 957</span> <span class="comment">/* WHILE SETTING NSIG HIGHER WILL INCREASE CPU TIME */</span></div>
-<div class="line"><a name="l00958"></a><span class="lineno"> 958</span> <span class="comment">/* WITHOUT INCREASING ACCURACY. THE TRUNCATION ERROR */</span></div>
-<div class="line"><a name="l00959"></a><span class="lineno"> 959</span> <span class="comment">/* IS LIMITED TO A RELATIVE ERROR OF T=.5*10**(-NSIG). */</span></div>
-<div class="line"><a name="l00960"></a><span class="lineno"> 960</span> <span class="comment">/* ENTEN - 10.0 ** K, WHERE K IS THE LARGEST int SUCH THAT */</span></div>
-<div class="line"><a name="l00961"></a><span class="lineno"> 961</span> <span class="comment">/* ENTEN IS MACHINE-REPRESENTABLE IN WORKING PRECISION. */</span></div>
-<div class="line"><a name="l00962"></a><span class="lineno"> 962</span> <span class="comment">/* ENSIG - 10.0 ** NSIG. */</span></div>
-<div class="line"><a name="l00963"></a><span class="lineno"> 963</span> <span class="comment">/* RTNSIG - 10.0 ** (-K) FOR THE SMALLEST int K SUCH THAT */</span></div>
-<div class="line"><a name="l00964"></a><span class="lineno"> 964</span> <span class="comment">/* K .GE. NSIG/4. */</span></div>
-<div class="line"><a name="l00965"></a><span class="lineno"> 965</span> <span class="comment">/* ENMTEN - THE SMALLEST ABS(X) SUCH THAT X/4 DOES NOT UNDERFLOW. */</span></div>
-<div class="line"><a name="l00966"></a><span class="lineno"> 966</span> <span class="comment">/* XLARGE - UPPER LIMIT ON THE MAGNITUDE OF X WHEN IZE=2. BEAR */</span></div>
-<div class="line"><a name="l00967"></a><span class="lineno"> 967</span> <span class="comment">/* IN MIND THAT IF ABS(X)=N, THEN AT LEAST N ITERATIONS */</span></div>
-<div class="line"><a name="l00968"></a><span class="lineno"> 968</span> <span class="comment">/* OF THE BACKWARD RECURSION WILL BE EXECUTED. */</span></div>
-<div class="line"><a name="l00969"></a><span class="lineno"> 969</span> <span class="comment">/* EXPARG - LARGEST WORKING PRECISION ARGUMENT THAT THE LIBRARY */</span></div>
-<div class="line"><a name="l00970"></a><span class="lineno"> 970</span> <span class="comment">/* EXP ROUTINE CAN HANDLE AND UPPER LIMIT ON THE */</span></div>
-<div class="line"><a name="l00971"></a><span class="lineno"> 971</span> <span class="comment">/* MAGNITUDE OF X WHEN IZE=1. */</span></div>
-<div class="line"><a name="l00972"></a><span class="lineno"> 972</span> <span class="keyword">const</span> <span class="keywordtype">int</span> nsig = MANT_DIG + 2;</div>
-<div class="line"><a name="l00973"></a><span class="lineno"> 973</span> <span class="keyword">const</span> R enten = nfft_float_property(NFFT_R_MAX);</div>
-<div class="line"><a name="l00974"></a><span class="lineno"> 974</span> <span class="keyword">const</span> R ensig = POW(K(10.0),(R)nsig);</div>
-<div class="line"><a name="l00975"></a><span class="lineno"> 975</span> <span class="keyword">const</span> R rtnsig = POW(K(10.0),-CEIL((R)nsig/K(4.0)));</div>
-<div class="line"><a name="l00976"></a><span class="lineno"> 976</span> <span class="keyword">const</span> R xlarge = K(1E4);</div>
-<div class="line"><a name="l00977"></a><span class="lineno"> 977</span> <span class="keyword">const</span> R exparg = FLOOR(LOG(POW(K(R_RADIX),K(DBL_MAX_EXP-1))));</div>
-<div class="line"><a name="l00978"></a><span class="lineno"> 978</span> </div>
-<div class="line"><a name="l00979"></a><span class="lineno"> 979</span> <span class="comment">/* System generated locals */</span></div>
-<div class="line"><a name="l00980"></a><span class="lineno"> 980</span> <span class="keywordtype">int</span> l, n, nend, magx, nbmx, ncalc, nstart;</div>
-<div class="line"><a name="l00981"></a><span class="lineno"> 981</span> R p, em, en, sum, pold, test, empal, tempa, tempb, tempc, psave, plast, tover,</div>
-<div class="line"><a name="l00982"></a><span class="lineno"> 982</span> emp2al, psavel;</div>
-<div class="line"><a name="l00983"></a><span class="lineno"> 983</span> </div>
-<div class="line"><a name="l00984"></a><span class="lineno"> 984</span> magx = LRINT(FLOOR(x));</div>
-<div class="line"><a name="l00985"></a><span class="lineno"> 985</span> </div>
-<div class="line"><a name="l00986"></a><span class="lineno"> 986</span> <span class="comment">/* return if x, nb, or ize out of range */</span></div>
-<div class="line"><a name="l00987"></a><span class="lineno"> 987</span> <span class="keywordflow">if</span> ( nb <= 0 || x < K(0.0) || alpha < K(0.0) || K(1.0) <= alpha</div>
-<div class="line"><a name="l00988"></a><span class="lineno"> 988</span> || ((ize != 1 || exparg < x) && (ize != 2 || xlarge < x)))</div>
-<div class="line"><a name="l00989"></a><span class="lineno"> 989</span> <span class="keywordflow">return</span> (MIN(nb,0) - 1);</div>
-<div class="line"><a name="l00990"></a><span class="lineno"> 990</span> </div>
-<div class="line"><a name="l00991"></a><span class="lineno"> 991</span> <span class="comment">/* 2-term ascending series for small x */</span></div>
-<div class="line"><a name="l00992"></a><span class="lineno"> 992</span> <span class="keywordflow">if</span> (x < rtnsig)</div>
-<div class="line"><a name="l00993"></a><span class="lineno"> 993</span> <span class="keywordflow">return</span> scaled_modified_bessel_i_series(x,alpha,nb,ize,b);</div>
-<div class="line"><a name="l00994"></a><span class="lineno"> 994</span> </div>
-<div class="line"><a name="l00995"></a><span class="lineno"> 995</span> ncalc = nb;</div>
-<div class="line"><a name="l00996"></a><span class="lineno"> 996</span> <span class="comment">/* forward sweep, Olver's p-sequence */</span></div>
-<div class="line"><a name="l00997"></a><span class="lineno"> 997</span> </div>
-<div class="line"><a name="l00998"></a><span class="lineno"> 998</span> nbmx = nb - magx;</div>
-<div class="line"><a name="l00999"></a><span class="lineno"> 999</span> n = magx + 1;</div>
-<div class="line"><a name="l01000"></a><span class="lineno"> 1000</span> </div>
-<div class="line"><a name="l01001"></a><span class="lineno"> 1001</span> en = (R) (n+n) + (alpha+<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>);</div>
-<div class="line"><a name="l01002"></a><span class="lineno"> 1002</span> plast = K(1.0);</div>
-<div class="line"><a name="l01003"></a><span class="lineno"> 1003</span> p = en/x;</div>
-<div class="line"><a name="l01004"></a><span class="lineno"> 1004</span> </div>
-<div class="line"><a name="l01005"></a><span class="lineno"> 1005</span> <span class="comment">/* significance test */</span></div>
-<div class="line"><a name="l01006"></a><span class="lineno"> 1006</span> test = ensig + ensig;</div>
-<div class="line"><a name="l01007"></a><span class="lineno"> 1007</span> </div>
-<div class="line"><a name="l01008"></a><span class="lineno"> 1008</span> <span class="keywordflow">if</span> ((5*nsig) < (magx << 1))</div>
-<div class="line"><a name="l01009"></a><span class="lineno"> 1009</span> test = SQRT(test*p);</div>
-<div class="line"><a name="l01010"></a><span class="lineno"> 1010</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01011"></a><span class="lineno"> 1011</span> test /= POW(K(1.585),(R)magx);</div>
-<div class="line"><a name="l01012"></a><span class="lineno"> 1012</span> </div>
-<div class="line"><a name="l01013"></a><span class="lineno"> 1013</span> <span class="keywordflow">if</span> (3 <= nbmx)</div>
-<div class="line"><a name="l01014"></a><span class="lineno"> 1014</span> {</div>
-<div class="line"><a name="l01015"></a><span class="lineno"> 1015</span> <span class="comment">/* calculate p-sequence until n = nb-1 */</span></div>
-<div class="line"><a name="l01016"></a><span class="lineno"> 1016</span> tover = enten/ensig;</div>
-<div class="line"><a name="l01017"></a><span class="lineno"> 1017</span> nstart = magx+2;</div>
-<div class="line"><a name="l01018"></a><span class="lineno"> 1018</span> nend = nb - 1;</div>
-<div class="line"><a name="l01019"></a><span class="lineno"> 1019</span> </div>
-<div class="line"><a name="l01020"></a><span class="lineno"> 1020</span> <span class="keywordflow">for</span> (n = nstart; n <= nend; n++)</div>
-<div class="line"><a name="l01021"></a><span class="lineno"> 1021</span> {</div>
-<div class="line"><a name="l01022"></a><span class="lineno"> 1022</span> en += K(2.0);</div>
-<div class="line"><a name="l01023"></a><span class="lineno"> 1023</span> pold = plast;</div>
-<div class="line"><a name="l01024"></a><span class="lineno"> 1024</span> plast = p;</div>
-<div class="line"><a name="l01025"></a><span class="lineno"> 1025</span> p = en*plast/x + pold;</div>
-<div class="line"><a name="l01026"></a><span class="lineno"> 1026</span> <span class="keywordflow">if</span> (p > tover)</div>
-<div class="line"><a name="l01027"></a><span class="lineno"> 1027</span> {</div>
-<div class="line"><a name="l01028"></a><span class="lineno"> 1028</span> <span class="comment">/* divide p-sequence by tover to avoid overflow. Calculate p-sequence</span></div>
-<div class="line"><a name="l01029"></a><span class="lineno"> 1029</span> <span class="comment"> * until 1 <= |p| */</span></div>
-<div class="line"><a name="l01030"></a><span class="lineno"> 1030</span> tover = enten;</div>
-<div class="line"><a name="l01031"></a><span class="lineno"> 1031</span> p /= tover;</div>
-<div class="line"><a name="l01032"></a><span class="lineno"> 1032</span> plast /= tover;</div>
-<div class="line"><a name="l01033"></a><span class="lineno"> 1033</span> psave = p;</div>
-<div class="line"><a name="l01034"></a><span class="lineno"> 1034</span> psavel = plast;</div>
-<div class="line"><a name="l01035"></a><span class="lineno"> 1035</span> nstart = n + 1;</div>
-<div class="line"><a name="l01036"></a><span class="lineno"> 1036</span> </div>
-<div class="line"><a name="l01037"></a><span class="lineno"> 1037</span> <span class="keywordflow">do</span></div>
-<div class="line"><a name="l01038"></a><span class="lineno"> 1038</span> {</div>
-<div class="line"><a name="l01039"></a><span class="lineno"> 1039</span> n++;</div>
-<div class="line"><a name="l01040"></a><span class="lineno"> 1040</span> en += K(2.0);</div>
-<div class="line"><a name="l01041"></a><span class="lineno"> 1041</span> pold = plast;</div>
-<div class="line"><a name="l01042"></a><span class="lineno"> 1042</span> plast = p;</div>
-<div class="line"><a name="l01043"></a><span class="lineno"> 1043</span> p = en*plast/x + pold;</div>
-<div class="line"><a name="l01044"></a><span class="lineno"> 1044</span> } <span class="keywordflow">while</span> (p <= K(1.0));</div>
-<div class="line"><a name="l01045"></a><span class="lineno"> 1045</span> </div>
-<div class="line"><a name="l01046"></a><span class="lineno"> 1046</span> tempb = en/x;</div>
-<div class="line"><a name="l01047"></a><span class="lineno"> 1047</span> </div>
-<div class="line"><a name="l01048"></a><span class="lineno"> 1048</span> <span class="comment">/* Backward test. Find ncalc as the largest n such that test is passed. */</span></div>
-<div class="line"><a name="l01049"></a><span class="lineno"> 1049</span> test = pold*plast*(K(0.5) - K(0.5)/(tempb * tempb))/ensig;</div>
-<div class="line"><a name="l01050"></a><span class="lineno"> 1050</span> p = plast*tover;</div>
-<div class="line"><a name="l01051"></a><span class="lineno"> 1051</span> n--;</div>
-<div class="line"><a name="l01052"></a><span class="lineno"> 1052</span> en -= K(2.0);</div>
-<div class="line"><a name="l01053"></a><span class="lineno"> 1053</span> nend = MIN(nb,n);</div>
-<div class="line"><a name="l01054"></a><span class="lineno"> 1054</span> </div>
-<div class="line"><a name="l01055"></a><span class="lineno"> 1055</span> <span class="keywordflow">for</span> (ncalc = nstart; ncalc <= nend; ncalc++)</div>
-<div class="line"><a name="l01056"></a><span class="lineno"> 1056</span> {</div>
-<div class="line"><a name="l01057"></a><span class="lineno"> 1057</span> pold = psavel;</div>
-<div class="line"><a name="l01058"></a><span class="lineno"> 1058</span> psavel = psave;</div>
-<div class="line"><a name="l01059"></a><span class="lineno"> 1059</span> psave = en*psavel/x + pold;</div>
-<div class="line"><a name="l01060"></a><span class="lineno"> 1060</span> <span class="keywordflow">if</span> (test < psave * psavel)</div>
-<div class="line"><a name="l01061"></a><span class="lineno"> 1061</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l01062"></a><span class="lineno"> 1062</span> }</div>
-<div class="line"><a name="l01063"></a><span class="lineno"> 1063</span> </div>
-<div class="line"><a name="l01064"></a><span class="lineno"> 1064</span> ncalc--;</div>
-<div class="line"><a name="l01065"></a><span class="lineno"> 1065</span> <span class="keywordflow">goto</span> L80;</div>
-<div class="line"><a name="l01066"></a><span class="lineno"> 1066</span> }</div>
-<div class="line"><a name="l01067"></a><span class="lineno"> 1067</span> }</div>
-<div class="line"><a name="l01068"></a><span class="lineno"> 1068</span> </div>
-<div class="line"><a name="l01069"></a><span class="lineno"> 1069</span> n = nend;</div>
-<div class="line"><a name="l01070"></a><span class="lineno"> 1070</span> en = (R) (n+n) + (alpha+<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>);</div>
-<div class="line"><a name="l01071"></a><span class="lineno"> 1071</span> </div>
-<div class="line"><a name="l01072"></a><span class="lineno"> 1072</span> <span class="comment">/* special significance test for 2 <= nbmx */</span></div>
-<div class="line"><a name="l01073"></a><span class="lineno"> 1073</span> test = FMAX(test,SQRT(plast*ensig)*SQRT(p+p));</div>
-<div class="line"><a name="l01074"></a><span class="lineno"> 1074</span> }</div>
-<div class="line"><a name="l01075"></a><span class="lineno"> 1075</span> </div>
-<div class="line"><a name="l01076"></a><span class="lineno"> 1076</span> <span class="comment">/* calculate p-sequence until significance test is passed */</span></div>
-<div class="line"><a name="l01077"></a><span class="lineno"> 1077</span> <span class="keywordflow">do</span></div>
-<div class="line"><a name="l01078"></a><span class="lineno"> 1078</span> {</div>
-<div class="line"><a name="l01079"></a><span class="lineno"> 1079</span> n++;</div>
-<div class="line"><a name="l01080"></a><span class="lineno"> 1080</span> en += K(2.0);</div>
-<div class="line"><a name="l01081"></a><span class="lineno"> 1081</span> pold = plast;</div>
-<div class="line"><a name="l01082"></a><span class="lineno"> 1082</span> plast = p;</div>
-<div class="line"><a name="l01083"></a><span class="lineno"> 1083</span> p = en*plast/x + pold;</div>
-<div class="line"><a name="l01084"></a><span class="lineno"> 1084</span> } <span class="keywordflow">while</span> (p < test);</div>
-<div class="line"><a name="l01085"></a><span class="lineno"> 1085</span> </div>
-<div class="line"><a name="l01086"></a><span class="lineno"> 1086</span> <span class="comment">/* Initialize backward recursion and normalization sum. */</span></div>
-<div class="line"><a name="l01087"></a><span class="lineno"> 1087</span> L80:</div>
-<div class="line"><a name="l01088"></a><span class="lineno"> 1088</span> n++;</div>
-<div class="line"><a name="l01089"></a><span class="lineno"> 1089</span> en += K(2.0);</div>
-<div class="line"><a name="l01090"></a><span class="lineno"> 1090</span> tempb = K(0.0);</div>
-<div class="line"><a name="l01091"></a><span class="lineno"> 1091</span> tempa = K(1.0)/p;</div>
-<div class="line"><a name="l01092"></a><span class="lineno"> 1092</span> em = (R)(n-1);</div>
-<div class="line"><a name="l01093"></a><span class="lineno"> 1093</span> empal = em + <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>;</div>
-<div class="line"><a name="l01094"></a><span class="lineno"> 1094</span> emp2al = em - K(1.0) + (alpha+<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>);</div>
-<div class="line"><a name="l01095"></a><span class="lineno"> 1095</span> sum = tempa*empal*emp2al/em;</div>
-<div class="line"><a name="l01096"></a><span class="lineno"> 1096</span> nend = n-nb;</div>
-<div class="line"><a name="l01097"></a><span class="lineno"> 1097</span> </div>
-<div class="line"><a name="l01098"></a><span class="lineno"> 1098</span> <span class="keywordflow">if</span> (nend < 0)</div>
-<div class="line"><a name="l01099"></a><span class="lineno"> 1099</span> {</div>
-<div class="line"><a name="l01100"></a><span class="lineno"> 1100</span> <span class="comment">/* We have n <= nb. So store b[n] and set higher orders to zero */</span></div>
-<div class="line"><a name="l01101"></a><span class="lineno"> 1101</span> b[n-1] = tempa;</div>
-<div class="line"><a name="l01102"></a><span class="lineno"> 1102</span> nend = -nend;</div>
-<div class="line"><a name="l01103"></a><span class="lineno"> 1103</span> <span class="keywordflow">for</span> (l = 1; l <= nend; ++l)</div>
-<div class="line"><a name="l01104"></a><span class="lineno"> 1104</span> b[n-1 + l] = K(0.0);</div>
-<div class="line"><a name="l01105"></a><span class="lineno"> 1105</span> }</div>
-<div class="line"><a name="l01106"></a><span class="lineno"> 1106</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01107"></a><span class="lineno"> 1107</span> {</div>
-<div class="line"><a name="l01108"></a><span class="lineno"> 1108</span> <span class="keywordflow">if</span> (nend != 0)</div>
-<div class="line"><a name="l01109"></a><span class="lineno"> 1109</span> {</div>
-<div class="line"><a name="l01110"></a><span class="lineno"> 1110</span> <span class="comment">/* recur backward via difference equation, calculating b[n] until n = nb */</span></div>
-<div class="line"><a name="l01111"></a><span class="lineno"> 1111</span> <span class="keywordflow">for</span> (l = 1; l <= nend; ++l)</div>
-<div class="line"><a name="l01112"></a><span class="lineno"> 1112</span> {</div>
-<div class="line"><a name="l01113"></a><span class="lineno"> 1113</span> n--;</div>
-<div class="line"><a name="l01114"></a><span class="lineno"> 1114</span> en -= K(2.0);</div>
-<div class="line"><a name="l01115"></a><span class="lineno"> 1115</span> tempc = tempb;</div>
-<div class="line"><a name="l01116"></a><span class="lineno"> 1116</span> tempb = tempa;</div>
-<div class="line"><a name="l01117"></a><span class="lineno"> 1117</span> tempa = en*tempb/x + tempc;</div>
-<div class="line"><a name="l01118"></a><span class="lineno"> 1118</span> em -= K(1.0);</div>
-<div class="line"><a name="l01119"></a><span class="lineno"> 1119</span> emp2al -= K(1.0);</div>
-<div class="line"><a name="l01120"></a><span class="lineno"> 1120</span> </div>
-<div class="line"><a name="l01121"></a><span class="lineno"> 1121</span> <span class="keywordflow">if</span> (n == 1)</div>
-<div class="line"><a name="l01122"></a><span class="lineno"> 1122</span> <span class="keywordflow">break</span>;</div>
-<div class="line"><a name="l01123"></a><span class="lineno"> 1123</span> </div>
-<div class="line"><a name="l01124"></a><span class="lineno"> 1124</span> <span class="keywordflow">if</span> (n == 2)</div>
-<div class="line"><a name="l01125"></a><span class="lineno"> 1125</span> emp2al = K(1.0);</div>
-<div class="line"><a name="l01126"></a><span class="lineno"> 1126</span> </div>
-<div class="line"><a name="l01127"></a><span class="lineno"> 1127</span> empal -= K(1.0);</div>
-<div class="line"><a name="l01128"></a><span class="lineno"> 1128</span> sum = (sum + tempa*empal)*emp2al/em;</div>
-<div class="line"><a name="l01129"></a><span class="lineno"> 1129</span> }</div>
-<div class="line"><a name="l01130"></a><span class="lineno"> 1130</span> }</div>
-<div class="line"><a name="l01131"></a><span class="lineno"> 1131</span> </div>
-<div class="line"><a name="l01132"></a><span class="lineno"> 1132</span> <span class="comment">/* store b[nb] */</span></div>
-<div class="line"><a name="l01133"></a><span class="lineno"> 1133</span> b[n-1] = tempa;</div>
-<div class="line"><a name="l01134"></a><span class="lineno"> 1134</span> </div>
-<div class="line"><a name="l01135"></a><span class="lineno"> 1135</span> <span class="keywordflow">if</span> (nb <= 1)</div>
-<div class="line"><a name="l01136"></a><span class="lineno"> 1136</span> {</div>
-<div class="line"><a name="l01137"></a><span class="lineno"> 1137</span> sum = sum + sum + tempa;</div>
-<div class="line"><a name="l01138"></a><span class="lineno"> 1138</span> scaled_modified_bessel_i_normalize(x,alpha,nb,ize,b,sum);</div>
-<div class="line"><a name="l01139"></a><span class="lineno"> 1139</span> <span class="keywordflow">return</span> ncalc;</div>
-<div class="line"><a name="l01140"></a><span class="lineno"> 1140</span> }</div>
-<div class="line"><a name="l01141"></a><span class="lineno"> 1141</span> </div>
-<div class="line"><a name="l01142"></a><span class="lineno"> 1142</span> <span class="comment">/* calculate and store b[nb-1] */</span></div>
-<div class="line"><a name="l01143"></a><span class="lineno"> 1143</span> n--;</div>
-<div class="line"><a name="l01144"></a><span class="lineno"> 1144</span> en -= 2.0;</div>
-<div class="line"><a name="l01145"></a><span class="lineno"> 1145</span> b[n-1] = en*tempa/x + tempb;</div>
-<div class="line"><a name="l01146"></a><span class="lineno"> 1146</span> </div>
-<div class="line"><a name="l01147"></a><span class="lineno"> 1147</span> <span class="keywordflow">if</span> (n == 1)</div>
-<div class="line"><a name="l01148"></a><span class="lineno"> 1148</span> {</div>
-<div class="line"><a name="l01149"></a><span class="lineno"> 1149</span> sum = sum + sum + b[0];</div>
-<div class="line"><a name="l01150"></a><span class="lineno"> 1150</span> scaled_modified_bessel_i_normalize(x,alpha,nb,ize,b,sum);</div>
-<div class="line"><a name="l01151"></a><span class="lineno"> 1151</span> <span class="keywordflow">return</span> ncalc;</div>
-<div class="line"><a name="l01152"></a><span class="lineno"> 1152</span> }</div>
-<div class="line"><a name="l01153"></a><span class="lineno"> 1153</span> </div>
-<div class="line"><a name="l01154"></a><span class="lineno"> 1154</span> em -= K(1.0);</div>
-<div class="line"><a name="l01155"></a><span class="lineno"> 1155</span> emp2al -= K(1.0);</div>
-<div class="line"><a name="l01156"></a><span class="lineno"> 1156</span> </div>
-<div class="line"><a name="l01157"></a><span class="lineno"> 1157</span> <span class="keywordflow">if</span> (n == 2)</div>
-<div class="line"><a name="l01158"></a><span class="lineno"> 1158</span> emp2al = K(1.0);</div>
-<div class="line"><a name="l01159"></a><span class="lineno"> 1159</span> </div>
-<div class="line"><a name="l01160"></a><span class="lineno"> 1160</span> empal -= K(1.0);</div>
-<div class="line"><a name="l01161"></a><span class="lineno"> 1161</span> sum = (sum + b[n-1]*empal)*emp2al/em;</div>
-<div class="line"><a name="l01162"></a><span class="lineno"> 1162</span> }</div>
-<div class="line"><a name="l01163"></a><span class="lineno"> 1163</span> </div>
-<div class="line"><a name="l01164"></a><span class="lineno"> 1164</span> nend = n - 2;</div>
-<div class="line"><a name="l01165"></a><span class="lineno"> 1165</span> </div>
-<div class="line"><a name="l01166"></a><span class="lineno"> 1166</span> <span class="keywordflow">if</span> (nend != 0)</div>
-<div class="line"><a name="l01167"></a><span class="lineno"> 1167</span> {</div>
-<div class="line"><a name="l01168"></a><span class="lineno"> 1168</span> <span class="comment">/* Calculate and store b[n] until n = 2. */</span></div>
-<div class="line"><a name="l01169"></a><span class="lineno"> 1169</span> <span class="keywordflow">for</span> (l = 1; l <= nend; ++l)</div>
-<div class="line"><a name="l01170"></a><span class="lineno"> 1170</span> {</div>
-<div class="line"><a name="l01171"></a><span class="lineno"> 1171</span> n--;</div>
-<div class="line"><a name="l01172"></a><span class="lineno"> 1172</span> en -= K(2.0);</div>
-<div class="line"><a name="l01173"></a><span class="lineno"> 1173</span> b[n-1] = en*b[n]/x + b[n+1];</div>
-<div class="line"><a name="l01174"></a><span class="lineno"> 1174</span> em -= K(1.0);</div>
-<div class="line"><a name="l01175"></a><span class="lineno"> 1175</span> emp2al -= K(1.0);</div>
-<div class="line"><a name="l01176"></a><span class="lineno"> 1176</span> </div>
-<div class="line"><a name="l01177"></a><span class="lineno"> 1177</span> <span class="keywordflow">if</span> (n == 2)</div>
-<div class="line"><a name="l01178"></a><span class="lineno"> 1178</span> emp2al = K(1.0);</div>
-<div class="line"><a name="l01179"></a><span class="lineno"> 1179</span> </div>
-<div class="line"><a name="l01180"></a><span class="lineno"> 1180</span> empal -= K(1.0);</div>
-<div class="line"><a name="l01181"></a><span class="lineno"> 1181</span> sum = (sum + b[n-1]*empal)*emp2al/em;</div>
-<div class="line"><a name="l01182"></a><span class="lineno"> 1182</span> }</div>
-<div class="line"><a name="l01183"></a><span class="lineno"> 1183</span> }</div>
-<div class="line"><a name="l01184"></a><span class="lineno"> 1184</span> </div>
-<div class="line"><a name="l01185"></a><span class="lineno"> 1185</span> <span class="comment">/* calculate b[1] */</span></div>
-<div class="line"><a name="l01186"></a><span class="lineno"> 1186</span> b[0] = K(2.0)*empal*b[1]/x + b[2];</div>
-<div class="line"><a name="l01187"></a><span class="lineno"> 1187</span> sum = sum + sum + b[0];</div>
-<div class="line"><a name="l01188"></a><span class="lineno"> 1188</span> </div>
-<div class="line"><a name="l01189"></a><span class="lineno"> 1189</span> scaled_modified_bessel_i_normalize(x,alpha,nb,ize,b,sum);</div>
-<div class="line"><a name="l01190"></a><span class="lineno"> 1190</span> <span class="keywordflow">return</span> ncalc;</div>
-<div class="line"><a name="l01191"></a><span class="lineno"> 1191</span> }</div>
-<div class="line"><a name="l01192"></a><span class="lineno"> 1192</span> </div>
-<div class="line"><a name="l01197"></a><span class="lineno"> 1197</span> <span class="keywordtype">void</span> nfft_assertion_failed(<span class="keyword">const</span> <span class="keywordtype">char</span> *s, <span class="keywordtype">int</span> line, <span class="keyword">const</span> <span class="keywordtype">char</span> *file)</div>
-<div class="line"><a name="l01198"></a><span class="lineno"> 1198</span> {</div>
-<div class="line"><a name="l01199"></a><span class="lineno"> 1199</span> fflush(stdout);</div>
-<div class="line"><a name="l01200"></a><span class="lineno"> 1200</span> fprintf(stderr, <span class="stringliteral">"nfft: %s:%d: assertion failed: %s\n"</span>, file, line, s);</div>
-<div class="line"><a name="l01201"></a><span class="lineno"> 1201</span> <span class="preprocessor">#ifdef HAVE_ABORT</span></div>
-<div class="line"><a name="l01202"></a><span class="lineno"> 1202</span> <span class="preprocessor"></span> <span class="comment">/* Use abort function. */</span></div>
-<div class="line"><a name="l01203"></a><span class="lineno"> 1203</span> abort();</div>
-<div class="line"><a name="l01204"></a><span class="lineno"> 1204</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01205"></a><span class="lineno"> 1205</span> <span class="preprocessor"></span> <span class="comment">/* Use exit function. */</span></div>
-<div class="line"><a name="l01206"></a><span class="lineno"> 1206</span> exit(EXIT_FAILURE);</div>
-<div class="line"><a name="l01207"></a><span class="lineno"> 1207</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01208"></a><span class="lineno"> 1208</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l01209"></a><span class="lineno"> 1209</span> </div>
-<div class="line"><a name="l01210"></a><span class="lineno"> 1210</span> <span class="comment">/* We declare drand48() and srand48() ourselves, if they are is not declared in</span></div>
-<div class="line"><a name="l01211"></a><span class="lineno"> 1211</span> <span class="comment"> * math.h (e.g. on SuSE 9.3), grrr. */</span></div>
-<div class="line"><a name="l01212"></a><span class="lineno"> 1212</span> <span class="preprocessor">#include "config.h"</span></div>
-<div class="line"><a name="l01213"></a><span class="lineno"> 1213</span> <span class="preprocessor">#if HAVE_DECL_DRAND48 == 0</span></div>
-<div class="line"><a name="l01214"></a><span class="lineno"> 1214</span> <span class="preprocessor"></span> <span class="keyword">extern</span> <span class="keywordtype">double</span> drand48(<span class="keywordtype">void</span>);</div>
-<div class="line"><a name="l01215"></a><span class="lineno"> 1215</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01216"></a><span class="lineno"> 1216</span> <span class="preprocessor"></span><span class="preprocessor">#if HAVE_DECL_SRAND48 == 0</span></div>
-<div class="line"><a name="l01217"></a><span class="lineno"> 1217</span> <span class="preprocessor"></span> <span class="keyword">extern</span> <span class="keywordtype">void</span> srand48(<span class="keywordtype">long</span> <span class="keywordtype">int</span>);</div>
-<div class="line"><a name="l01218"></a><span class="lineno"> 1218</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01219"></a><span class="lineno"> 1219</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01220"></a><span class="lineno"> 1220</span> <span class="keywordtype">double</span> nfft_drand48(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l01221"></a><span class="lineno"> 1221</span> {</div>
-<div class="line"><a name="l01222"></a><span class="lineno"> 1222</span> <span class="preprocessor">#ifdef HAVE_DRAND48</span></div>
-<div class="line"><a name="l01223"></a><span class="lineno"> 1223</span> <span class="preprocessor"></span> <span class="keywordflow">return</span> drand48();</div>
-<div class="line"><a name="l01224"></a><span class="lineno"> 1224</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01225"></a><span class="lineno"> 1225</span> <span class="preprocessor"></span> <span class="keywordflow">return</span> ((R)rand())/((R)RAND_MAX);</div>
-<div class="line"><a name="l01226"></a><span class="lineno"> 1226</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01227"></a><span class="lineno"> 1227</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l01228"></a><span class="lineno"> 1228</span> </div>
-<div class="line"><a name="l01229"></a><span class="lineno"> 1229</span> <span class="keywordtype">void</span> nfft_srand48(<span class="keywordtype">long</span> <span class="keywordtype">int</span> seed)</div>
-<div class="line"><a name="l01230"></a><span class="lineno"> 1230</span> {</div>
-<div class="line"><a name="l01231"></a><span class="lineno"> 1231</span> <span class="preprocessor">#ifdef HAVE_SRAND48</span></div>
-<div class="line"><a name="l01232"></a><span class="lineno"> 1232</span> <span class="preprocessor"></span> srand48(seed);</div>
-<div class="line"><a name="l01233"></a><span class="lineno"> 1233</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01234"></a><span class="lineno"> 1234</span> <span class="preprocessor"></span> srand((<span class="keywordtype">unsigned</span> <span class="keywordtype">int</span>)seed);</div>
-<div class="line"><a name="l01235"></a><span class="lineno"> 1235</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01236"></a><span class="lineno"> 1236</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l01237"></a><span class="lineno"> 1237</span> </div>
-<div class="line"><a name="l01238"></a><span class="lineno"> 1238</span> </div>
-<div class="line"><a name="l01239"></a><span class="lineno"> 1239</span> <span class="preprocessor">#define z_swap(_a_, _b_, _t_) do { (_t_) = (_a_); (_a_) = (_b_); (_b_) = (_t_); } while (0)</span></div>
-<div class="line"><a name="l01240"></a><span class="lineno"> 1240</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01246"></a><span class="lineno"> 1246</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_sort_node_indices_sort_bubble(<span class="keywordtype">int</span> n, <span class="keywordtype">int</span> *keys)</div>
-<div class="line"><a name="l01247"></a><span class="lineno"> 1247</span> {</div>
-<div class="line"><a name="l01248"></a><span class="lineno"> 1248</span> <span class="keywordtype">int</span> i, j, ti;</div>
-<div class="line"><a name="l01249"></a><span class="lineno"> 1249</span> </div>
-<div class="line"><a name="l01250"></a><span class="lineno"> 1250</span> <span class="keywordflow">for</span> (i = 0; i < n; ++i)</div>
-<div class="line"><a name="l01251"></a><span class="lineno"> 1251</span> {</div>
-<div class="line"><a name="l01252"></a><span class="lineno"> 1252</span> j = i;</div>
-<div class="line"><a name="l01253"></a><span class="lineno"> 1253</span> <span class="keywordflow">while</span> (j > 0 && keys[2 * j + 0] < keys[2 * (j - 1) + 0])</div>
-<div class="line"><a name="l01254"></a><span class="lineno"> 1254</span> {</div>
-<div class="line"><a name="l01255"></a><span class="lineno"> 1255</span> z_swap(keys[2 * j + 0], keys[2 * (j - 1) + 0], ti);</div>
-<div class="line"><a name="l01256"></a><span class="lineno"> 1256</span> z_swap(keys[2 * j + 1], keys[2 * (j - 1) + 1], ti);</div>
-<div class="line"><a name="l01257"></a><span class="lineno"> 1257</span> --j;</div>
-<div class="line"><a name="l01258"></a><span class="lineno"> 1258</span> }</div>
-<div class="line"><a name="l01259"></a><span class="lineno"> 1259</span> }</div>
-<div class="line"><a name="l01260"></a><span class="lineno"> 1260</span> }</div>
-<div class="line"><a name="l01261"></a><span class="lineno"> 1261</span> </div>
-<div class="line"><a name="l01267"></a><span class="lineno"> 1267</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_sort_node_indices_radix_count(<span class="keywordtype">int</span> n, <span class="keywordtype">int</span> *keys, <span class="keywordtype">int</span> shift, <span class="keywordtype">int</span> mask, <span class="keywordtype">int</span> *counts)</div>
-<div class="line"><a name="l01268"></a><span class="lineno"> 1268</span> {</div>
-<div class="line"><a name="l01269"></a><span class="lineno"> 1269</span> <span class="keywordtype">int</span> i, k;</div>
-<div class="line"><a name="l01270"></a><span class="lineno"> 1270</span> </div>
-<div class="line"><a name="l01271"></a><span class="lineno"> 1271</span> <span class="keywordflow">for</span> (i = 0; i < n; ++i)</div>
-<div class="line"><a name="l01272"></a><span class="lineno"> 1272</span> {</div>
-<div class="line"><a name="l01273"></a><span class="lineno"> 1273</span> k = (keys[2 * i + 0] >> shift) & mask;</div>
-<div class="line"><a name="l01274"></a><span class="lineno"> 1274</span> ++counts[k];</div>
-<div class="line"><a name="l01275"></a><span class="lineno"> 1275</span> }</div>
-<div class="line"><a name="l01276"></a><span class="lineno"> 1276</span> }</div>
-<div class="line"><a name="l01277"></a><span class="lineno"> 1277</span> </div>
-<div class="line"><a name="l01283"></a><span class="lineno"> 1283</span> <span class="keyword">static</span> <span class="keywordtype">void</span> nfft_sort_node_indices_radix_rearrange(<span class="keywordtype">int</span> n, <span class="keywordtype">int</span> *keys_in, <span class="keywordtype">int</span> *keys_out, <span class="keywordtype">int</span> shift, <span class="keywordtype">int</span> mask, <span class="keywordtype">int</span> *displs)</div>
-<div class="line"><a name="l01284"></a><span class="lineno"> 1284</span> {</div>
-<div class="line"><a name="l01285"></a><span class="lineno"> 1285</span> <span class="keywordtype">int</span> i, k;</div>
-<div class="line"><a name="l01286"></a><span class="lineno"> 1286</span> </div>
-<div class="line"><a name="l01287"></a><span class="lineno"> 1287</span> <span class="keywordflow">for</span> (i = 0; i < n; ++i)</div>
-<div class="line"><a name="l01288"></a><span class="lineno"> 1288</span> {</div>
-<div class="line"><a name="l01289"></a><span class="lineno"> 1289</span> k = (keys_in[2 * i + 0] >> shift) & mask;</div>
-<div class="line"><a name="l01290"></a><span class="lineno"> 1290</span> keys_out[2 * displs[k] + 0] = keys_in[2 * i + 0];</div>
-<div class="line"><a name="l01291"></a><span class="lineno"> 1291</span> keys_out[2 * displs[k] + 1] = keys_in[2 * i + 1];</div>
-<div class="line"><a name="l01292"></a><span class="lineno"> 1292</span> ++displs[k];</div>
-<div class="line"><a name="l01293"></a><span class="lineno"> 1293</span> }</div>
-<div class="line"><a name="l01294"></a><span class="lineno"> 1294</span> }</div>
-<div class="line"><a name="l01295"></a><span class="lineno"> 1295</span> </div>
-<div class="line"><a name="l01301"></a><span class="lineno"><a class="code" href="group__nfftutil.html#gad93b94e3c7e9149f89819504c2b3c738"> 1301</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#gad93b94e3c7e9149f89819504c2b3c738" title="Radix sort for node indices.">nfft_sort_node_indices_radix_lsdf</a>(<span class="keywordtype">int</span> n, <span class="keywordtype">int</span> *keys0, <span class="keywordtype">int</span> *keys1, <span cla [...]
-<div class="line"><a name="l01302"></a><span class="lineno"> 1302</span> {</div>
-<div class="line"><a name="l01303"></a><span class="lineno"> 1303</span> <span class="keyword">const</span> <span class="keywordtype">int</span> rwidth = 9;</div>
-<div class="line"><a name="l01304"></a><span class="lineno"> 1304</span> <span class="keyword">const</span> <span class="keywordtype">int</span> radix_n = 1 << rwidth;</div>
-<div class="line"><a name="l01305"></a><span class="lineno"> 1305</span> <span class="keyword">const</span> <span class="keywordtype">int</span> radix_mask = radix_n - 1;</div>
-<div class="line"><a name="l01306"></a><span class="lineno"> 1306</span> <span class="keyword">const</span> <span class="keywordtype">int</span> rhigh_in = rhigh;</div>
-<div class="line"><a name="l01307"></a><span class="lineno"> 1307</span> </div>
-<div class="line"><a name="l01308"></a><span class="lineno"> 1308</span> <span class="keyword">const</span> <span class="keywordtype">int</span> tmax =</div>
-<div class="line"><a name="l01309"></a><span class="lineno"> 1309</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01310"></a><span class="lineno"> 1310</span> <span class="preprocessor"></span> omp_get_max_threads();</div>
-<div class="line"><a name="l01311"></a><span class="lineno"> 1311</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01312"></a><span class="lineno"> 1312</span> <span class="preprocessor"></span> 1;</div>
-<div class="line"><a name="l01313"></a><span class="lineno"> 1313</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01314"></a><span class="lineno"> 1314</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01315"></a><span class="lineno"> 1315</span> <span class="keywordtype">int</span> *from, *to, *tmp;</div>
-<div class="line"><a name="l01316"></a><span class="lineno"> 1316</span> </div>
-<div class="line"><a name="l01317"></a><span class="lineno"> 1317</span> <span class="keywordtype">int</span> i, k, l, h;</div>
-<div class="line"><a name="l01318"></a><span class="lineno"> 1318</span> <span class="keywordtype">int</span> lcounts[tmax * radix_n];</div>
-<div class="line"><a name="l01319"></a><span class="lineno"> 1319</span> </div>
-<div class="line"><a name="l01320"></a><span class="lineno"> 1320</span> <span class="keywordtype">int</span> tid = 0, tnum = 1;</div>
-<div class="line"><a name="l01321"></a><span class="lineno"> 1321</span> </div>
-<div class="line"><a name="l01322"></a><span class="lineno"> 1322</span> </div>
-<div class="line"><a name="l01323"></a><span class="lineno"> 1323</span> from = keys0;</div>
-<div class="line"><a name="l01324"></a><span class="lineno"> 1324</span> to = keys1;</div>
-<div class="line"><a name="l01325"></a><span class="lineno"> 1325</span> </div>
-<div class="line"><a name="l01326"></a><span class="lineno"> 1326</span> <span class="keywordflow">while</span> (rhigh >= 0)</div>
-<div class="line"><a name="l01327"></a><span class="lineno"> 1327</span> {</div>
-<div class="line"><a name="l01328"></a><span class="lineno"> 1328</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01329"></a><span class="lineno"> 1329</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel private(tid, tnum, i, l, h)</span></div>
-<div class="line"><a name="l01330"></a><span class="lineno"> 1330</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l01331"></a><span class="lineno"> 1331</span> tid = omp_get_thread_num();</div>
-<div class="line"><a name="l01332"></a><span class="lineno"> 1332</span> tnum = omp_get_num_threads();</div>
-<div class="line"><a name="l01333"></a><span class="lineno"> 1333</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01334"></a><span class="lineno"> 1334</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01335"></a><span class="lineno"> 1335</span> <span class="keywordflow">for</span> (i = 0; i < radix_n; ++i) lcounts[tid * radix_n + i] = 0;</div>
-<div class="line"><a name="l01336"></a><span class="lineno"> 1336</span> </div>
-<div class="line"><a name="l01337"></a><span class="lineno"> 1337</span> l = (tid * n) / tnum;</div>
-<div class="line"><a name="l01338"></a><span class="lineno"> 1338</span> h = ((tid + 1) * n) / tnum;</div>
-<div class="line"><a name="l01339"></a><span class="lineno"> 1339</span> </div>
-<div class="line"><a name="l01340"></a><span class="lineno"> 1340</span> nfft_sort_node_indices_radix_count(h - l, from + (2 * l), rhigh_in - rhigh, radix_mask, &lcounts[tid * radix_n]);</div>
-<div class="line"><a name="l01341"></a><span class="lineno"> 1341</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01342"></a><span class="lineno"> 1342</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01343"></a><span class="lineno"> 1343</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01344"></a><span class="lineno"> 1344</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01345"></a><span class="lineno"> 1345</span> k = 0;</div>
-<div class="line"><a name="l01346"></a><span class="lineno"> 1346</span> <span class="keywordflow">for</span> (i = 0; i < radix_n; ++i)</div>
-<div class="line"><a name="l01347"></a><span class="lineno"> 1347</span> {</div>
-<div class="line"><a name="l01348"></a><span class="lineno"> 1348</span> <span class="keywordflow">for</span> (l = 0; l < tmax; ++l) lcounts[l * radix_n + i] = (k += lcounts[l * radix_n + i]) - lcounts[l * radix_n + i];</div>
-<div class="line"><a name="l01349"></a><span class="lineno"> 1349</span> }</div>
-<div class="line"><a name="l01350"></a><span class="lineno"> 1350</span> </div>
-<div class="line"><a name="l01351"></a><span class="lineno"> 1351</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01352"></a><span class="lineno"> 1352</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel private(tid, tnum, i, l, h)</span></div>
-<div class="line"><a name="l01353"></a><span class="lineno"> 1353</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l01354"></a><span class="lineno"> 1354</span> tid = omp_get_thread_num();</div>
-<div class="line"><a name="l01355"></a><span class="lineno"> 1355</span> tnum = omp_get_num_threads();</div>
-<div class="line"><a name="l01356"></a><span class="lineno"> 1356</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01357"></a><span class="lineno"> 1357</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01358"></a><span class="lineno"> 1358</span> l = (tid * n) / tnum;</div>
-<div class="line"><a name="l01359"></a><span class="lineno"> 1359</span> h = ((tid + 1) * n) / tnum;</div>
-<div class="line"><a name="l01360"></a><span class="lineno"> 1360</span> </div>
-<div class="line"><a name="l01361"></a><span class="lineno"> 1361</span> nfft_sort_node_indices_radix_rearrange(h - l, from + (2 * l), to, rhigh_in - rhigh, radix_mask, &lcounts[tid * radix_n]);</div>
-<div class="line"><a name="l01362"></a><span class="lineno"> 1362</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01363"></a><span class="lineno"> 1363</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01364"></a><span class="lineno"> 1364</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01365"></a><span class="lineno"> 1365</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01366"></a><span class="lineno"> 1366</span> <span class="comment">/* print_keys(n, to);*/</span></div>
-<div class="line"><a name="l01367"></a><span class="lineno"> 1367</span> </div>
-<div class="line"><a name="l01368"></a><span class="lineno"> 1368</span> tmp = from;</div>
-<div class="line"><a name="l01369"></a><span class="lineno"> 1369</span> from = to;</div>
-<div class="line"><a name="l01370"></a><span class="lineno"> 1370</span> to = tmp;</div>
-<div class="line"><a name="l01371"></a><span class="lineno"> 1371</span> </div>
-<div class="line"><a name="l01372"></a><span class="lineno"> 1372</span> rhigh -= rwidth;</div>
-<div class="line"><a name="l01373"></a><span class="lineno"> 1373</span> }</div>
-<div class="line"><a name="l01374"></a><span class="lineno"> 1374</span> </div>
-<div class="line"><a name="l01375"></a><span class="lineno"> 1375</span> <span class="keywordflow">if</span> (to == keys0) memcpy(to, from, n * 2 * <span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l01376"></a><span class="lineno"> 1376</span> }</div>
-<div class="line"><a name="l01377"></a><span class="lineno"> 1377</span> </div>
-<div class="line"><a name="l01383"></a><span class="lineno"><a class="code" href="group__nfftutil.html#ga60a5123a8026a06807e14502d7cedcd5"> 1383</a></span> <span class="keywordtype">void</span> <a class="code" href="group__nfftutil.html#ga60a5123a8026a06807e14502d7cedcd5" title="Radix sort for node indices.">nfft_sort_node_indices_radix_msdf</a>(<span class="keywordtype">int</span> n, <span class="keywordtype">int</span> *keys0, <span class="keywordtype">int</span> *keys1, <span cla [...]
-<div class="line"><a name="l01384"></a><span class="lineno"> 1384</span> {</div>
-<div class="line"><a name="l01385"></a><span class="lineno"> 1385</span> <span class="keyword">const</span> <span class="keywordtype">int</span> rwidth = 9;</div>
-<div class="line"><a name="l01386"></a><span class="lineno"> 1386</span> <span class="keyword">const</span> <span class="keywordtype">int</span> radix_n = 1 << rwidth;</div>
-<div class="line"><a name="l01387"></a><span class="lineno"> 1387</span> <span class="keyword">const</span> <span class="keywordtype">int</span> radix_mask = radix_n - 1;</div>
-<div class="line"><a name="l01388"></a><span class="lineno"> 1388</span> </div>
-<div class="line"><a name="l01389"></a><span class="lineno"> 1389</span> <span class="keyword">const</span> <span class="keywordtype">int</span> tmax =</div>
-<div class="line"><a name="l01390"></a><span class="lineno"> 1390</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01391"></a><span class="lineno"> 1391</span> <span class="preprocessor"></span> omp_get_max_threads();</div>
-<div class="line"><a name="l01392"></a><span class="lineno"> 1392</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01393"></a><span class="lineno"> 1393</span> <span class="preprocessor"></span> 1;</div>
-<div class="line"><a name="l01394"></a><span class="lineno"> 1394</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01395"></a><span class="lineno"> 1395</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01396"></a><span class="lineno"> 1396</span> <span class="keywordtype">int</span> i, k, l, h;</div>
-<div class="line"><a name="l01397"></a><span class="lineno"> 1397</span> <span class="keywordtype">int</span> lcounts[tmax * radix_n];</div>
-<div class="line"><a name="l01398"></a><span class="lineno"> 1398</span> </div>
-<div class="line"><a name="l01399"></a><span class="lineno"> 1399</span> <span class="keywordtype">int</span> counts[radix_n], displs[radix_n];</div>
-<div class="line"><a name="l01400"></a><span class="lineno"> 1400</span> </div>
-<div class="line"><a name="l01401"></a><span class="lineno"> 1401</span> <span class="keywordtype">int</span> tid = 0, tnum = 1;</div>
-<div class="line"><a name="l01402"></a><span class="lineno"> 1402</span> </div>
-<div class="line"><a name="l01403"></a><span class="lineno"> 1403</span> </div>
-<div class="line"><a name="l01404"></a><span class="lineno"> 1404</span> rhigh -= rwidth;</div>
-<div class="line"><a name="l01405"></a><span class="lineno"> 1405</span> </div>
-<div class="line"><a name="l01406"></a><span class="lineno"> 1406</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01407"></a><span class="lineno"> 1407</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel private(tid, tnum, i, l, h)</span></div>
-<div class="line"><a name="l01408"></a><span class="lineno"> 1408</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l01409"></a><span class="lineno"> 1409</span> tid = omp_get_thread_num();</div>
-<div class="line"><a name="l01410"></a><span class="lineno"> 1410</span> tnum = omp_get_num_threads();</div>
-<div class="line"><a name="l01411"></a><span class="lineno"> 1411</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01412"></a><span class="lineno"> 1412</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01413"></a><span class="lineno"> 1413</span> <span class="keywordflow">for</span> (i = 0; i < radix_n; ++i) lcounts[tid * radix_n + i] = 0;</div>
-<div class="line"><a name="l01414"></a><span class="lineno"> 1414</span> </div>
-<div class="line"><a name="l01415"></a><span class="lineno"> 1415</span> l = (tid * n) / tnum;</div>
-<div class="line"><a name="l01416"></a><span class="lineno"> 1416</span> h = ((tid + 1) * n) / tnum;</div>
-<div class="line"><a name="l01417"></a><span class="lineno"> 1417</span> </div>
-<div class="line"><a name="l01418"></a><span class="lineno"> 1418</span> nfft_sort_node_indices_radix_count(h - l, keys0 + (2 * l), rhigh + 1, radix_mask, &lcounts[tid * radix_n]);</div>
-<div class="line"><a name="l01419"></a><span class="lineno"> 1419</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01420"></a><span class="lineno"> 1420</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01421"></a><span class="lineno"> 1421</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01422"></a><span class="lineno"> 1422</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01423"></a><span class="lineno"> 1423</span> k = 0;</div>
-<div class="line"><a name="l01424"></a><span class="lineno"> 1424</span> <span class="keywordflow">for</span> (i = 0; i < radix_n; ++i)</div>
-<div class="line"><a name="l01425"></a><span class="lineno"> 1425</span> {</div>
-<div class="line"><a name="l01426"></a><span class="lineno"> 1426</span> <span class="keywordflow">for</span> (l = 0; l < tmax; ++l) lcounts[l * radix_n + i] = (k += lcounts[l * radix_n + i]) - lcounts[l * radix_n + i];</div>
-<div class="line"><a name="l01427"></a><span class="lineno"> 1427</span> </div>
-<div class="line"><a name="l01428"></a><span class="lineno"> 1428</span> displs[i] = lcounts[0 * radix_n + i];</div>
-<div class="line"><a name="l01429"></a><span class="lineno"> 1429</span> <span class="keywordflow">if</span> (i > 0) counts[i - 1] = displs[i] - displs[i - 1];</div>
-<div class="line"><a name="l01430"></a><span class="lineno"> 1430</span> }</div>
-<div class="line"><a name="l01431"></a><span class="lineno"> 1431</span> counts[radix_n - 1] = n - displs[radix_n - 1];</div>
-<div class="line"><a name="l01432"></a><span class="lineno"> 1432</span> </div>
-<div class="line"><a name="l01433"></a><span class="lineno"> 1433</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01434"></a><span class="lineno"> 1434</span> <span class="preprocessor"></span><span class="preprocessor"> #pragma omp parallel private(tid, tnum, i, l, h)</span></div>
-<div class="line"><a name="l01435"></a><span class="lineno"> 1435</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l01436"></a><span class="lineno"> 1436</span> tid = omp_get_thread_num();</div>
-<div class="line"><a name="l01437"></a><span class="lineno"> 1437</span> tnum = omp_get_num_threads();</div>
-<div class="line"><a name="l01438"></a><span class="lineno"> 1438</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01439"></a><span class="lineno"> 1439</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01440"></a><span class="lineno"> 1440</span> l = (tid * n) / tnum;</div>
-<div class="line"><a name="l01441"></a><span class="lineno"> 1441</span> h = ((tid + 1) * n) / tnum;</div>
-<div class="line"><a name="l01442"></a><span class="lineno"> 1442</span> </div>
-<div class="line"><a name="l01443"></a><span class="lineno"> 1443</span> nfft_sort_node_indices_radix_rearrange(h - l, keys0 + (2 * l), keys1, rhigh + 1, radix_mask, &lcounts[tid * radix_n]);</div>
-<div class="line"><a name="l01444"></a><span class="lineno"> 1444</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01445"></a><span class="lineno"> 1445</span> <span class="preprocessor"></span> }</div>
-<div class="line"><a name="l01446"></a><span class="lineno"> 1446</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01447"></a><span class="lineno"> 1447</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l01448"></a><span class="lineno"> 1448</span> memcpy(keys0, keys1, n * 2 * <span class="keyword">sizeof</span>(<span class="keywordtype">int</span>));</div>
-<div class="line"><a name="l01449"></a><span class="lineno"> 1449</span> </div>
-<div class="line"><a name="l01450"></a><span class="lineno"> 1450</span> <span class="keywordflow">if</span> (rhigh >= 0)</div>
-<div class="line"><a name="l01451"></a><span class="lineno"> 1451</span> {</div>
-<div class="line"><a name="l01452"></a><span class="lineno"> 1452</span> <span class="keywordflow">for</span> (i = 0; i < radix_n; ++i)</div>
-<div class="line"><a name="l01453"></a><span class="lineno"> 1453</span> {</div>
-<div class="line"><a name="l01454"></a><span class="lineno"> 1454</span> <span class="keywordflow">if</span> (counts[i] > 1)</div>
-<div class="line"><a name="l01455"></a><span class="lineno"> 1455</span> {</div>
-<div class="line"><a name="l01456"></a><span class="lineno"> 1456</span> <span class="keywordflow">if</span> (counts[i] > 256)</div>
-<div class="line"><a name="l01457"></a><span class="lineno"> 1457</span> <a class="code" href="group__nfftutil.html#ga60a5123a8026a06807e14502d7cedcd5" title="Radix sort for node indices.">nfft_sort_node_indices_radix_msdf</a>(counts[i], keys0 + 2 * displs[i], keys1 + 2 * displs[i], rhigh);</div>
-<div class="line"><a name="l01458"></a><span class="lineno"> 1458</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l01459"></a><span class="lineno"> 1459</span> nfft_sort_node_indices_sort_bubble(counts[i], keys0 + 2 * displs[i]);</div>
-<div class="line"><a name="l01460"></a><span class="lineno"> 1460</span> }</div>
-<div class="line"><a name="l01461"></a><span class="lineno"> 1461</span> }</div>
-<div class="line"><a name="l01462"></a><span class="lineno"> 1462</span> }</div>
-<div class="line"><a name="l01463"></a><span class="lineno"> 1463</span> }</div>
-<div class="line"><a name="l01464"></a><span class="lineno"> 1464</span> </div>
-<div class="line"><a name="l01465"></a><span class="lineno"> 1465</span> <span class="keywordtype">int</span> nfft_get_num_threads(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l01466"></a><span class="lineno"> 1466</span> {</div>
-<div class="line"><a name="l01467"></a><span class="lineno"> 1467</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01468"></a><span class="lineno"> 1468</span> <span class="preprocessor"></span> <span class="keywordflow">return</span> nfft_get_omp_num_threads();</div>
-<div class="line"><a name="l01469"></a><span class="lineno"> 1469</span> <span class="preprocessor">#else</span></div>
-<div class="line"><a name="l01470"></a><span class="lineno"> 1470</span> <span class="preprocessor"></span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l01471"></a><span class="lineno"> 1471</span> <span class="preprocessor">#endif</span></div>
-<div class="line"><a name="l01472"></a><span class="lineno"> 1472</span> <span class="preprocessor"></span>}</div>
-<div class="line"><a name="l01473"></a><span class="lineno"> 1473</span> </div>
-<div class="line"><a name="l01474"></a><span class="lineno"> 1474</span> <span class="preprocessor">#ifdef _OPENMP</span></div>
-<div class="line"><a name="l01475"></a><span class="lineno"> 1475</span> <span class="preprocessor"></span><span class="keywordtype">int</span> nfft_get_omp_num_threads(<span class="keywordtype">void</span>)</div>
-<div class="line"><a name="l01476"></a><span class="lineno"> 1476</span> {</div>
-<div class="line"><a name="l01477"></a><span class="lineno"> 1477</span> <span class="keywordtype">int</span> nthreads;</div>
-<div class="line"><a name="l01478"></a><span class="lineno"> 1478</span> <span class="preprocessor"> #pragma omp parallel default(shared)</span></div>
-<div class="line"><a name="l01479"></a><span class="lineno"> 1479</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l01480"></a><span class="lineno"> 1480</span> <span class="keywordtype">int</span> n = omp_get_num_threads();</div>
-<div class="line"><a name="l01481"></a><span class="lineno"> 1481</span> <span class="preprocessor"> #pragma omp master</span></div>
-<div class="line"><a name="l01482"></a><span class="lineno"> 1482</span> <span class="preprocessor"></span> {</div>
-<div class="line"><a name="l01483"></a><span class="lineno"> 1483</span> nthreads = n;</div>
-<div class="line"><a name="l01484"></a><span class="lineno"> 1484</span> }</div>
-<div class="line"><a name="l01485"></a><span class="lineno"> 1485</span> }</div>
-<div class="line"><a name="l01486"></a><span class="lineno"> 1486</span> <span class="keywordflow">return</span> nthreads;</div>
-<div class="line"><a name="l01487"></a><span class="lineno"> 1487</span> }</div>
-<div class="line"><a name="l01488"></a><span class="lineno"> 1488</span> <span class="preprocessor">#endif</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/wigner_8c_source.html b/doc/api/html/wigner_8c_source.html
deleted file mode 100644
index fa41d84..0000000
--- a/doc/api/html/wigner_8c_source.html
+++ /dev/null
@@ -1,432 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - wigner.c Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_8f3c7156d7272f1462551f3a6c5fabd1.html">nfsoft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">wigner.c</div> </div>
-</div><!--header-->
-<div class="contents">
-<div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: wigner.c 3896 2012-10-10 12:19:26Z tovo $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00021"></a><span class="lineno"> 21</span> <span class="preprocessor">#include <math.h></span></div>
-<div class="line"><a name="l00022"></a><span class="lineno"> 22</span> <span class="preprocessor">#include <stdio.h></span></div>
-<div class="line"><a name="l00023"></a><span class="lineno"> 23</span> <span class="preprocessor">#include "infft.h"</span></div>
-<div class="line"><a name="l00024"></a><span class="lineno"> 24</span> <span class="preprocessor">#include "<a class="code" href="wigner_8h.html" title="Header file for functions related to Wigner-d/D functions.">wigner.h</a>"</span></div>
-<div class="line"><a name="l00025"></a><span class="lineno"> 25</span> <span class="preprocessor">#include "<a class="code" href="nfft3util_8h.html" title="Header file for utility functions used by the nfft3 library.">nfft3util.h</a>"</span></div>
-<div class="line"><a name="l00026"></a><span class="lineno"> 26</span> </div>
-<div class="line"><a name="l00027"></a><span class="lineno"><a class="code" href="wigner_8h.html#ab67e240f23c39daa7283fee9025a8f03"> 27</a></span> <span class="keywordtype">double</span> SO3_alpha(<span class="keyword">const</span> <span class="keywordtype">int</span> m1, <span class="keyword">const</span> <span class="keywordtype">int</span> m2, <span class="keyword">const</span> <span class="keywordtype">int</span> j)</div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> {</div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="keyword">const</span> <span class="keywordtype">int</span> M = MAX(ABS(m1),ABS(m2)), mini = MIN(ABS(m1),ABS(m2));</div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> </div>
-<div class="line"><a name="l00031"></a><span class="lineno"> 31</span> <span class="keywordflow">if</span> (j < 0)</div>
-<div class="line"><a name="l00032"></a><span class="lineno"> 32</span> <span class="keywordflow">return</span> K(0.0);</div>
-<div class="line"><a name="l00033"></a><span class="lineno"> 33</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (j == 0)</div>
-<div class="line"><a name="l00034"></a><span class="lineno"> 34</span> {</div>
-<div class="line"><a name="l00035"></a><span class="lineno"> 35</span> <span class="keywordflow">if</span> (m1 == 0 && m2 == 0)</div>
-<div class="line"><a name="l00036"></a><span class="lineno"> 36</span> <span class="keywordflow">return</span> K(1.0);</div>
-<div class="line"><a name="l00037"></a><span class="lineno"> 37</span> <span class="keywordflow">if</span> (m1 == m2)</div>
-<div class="line"><a name="l00038"></a><span class="lineno"> 38</span> <span class="keywordflow">return</span> K(0.5);</div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00040"></a><span class="lineno"> 40</span> <span class="keywordflow">return</span> IF((m1+m2)%2,K(0.0),K(-0.5));</div>
-<div class="line"><a name="l00041"></a><span class="lineno"> 41</span> }</div>
-<div class="line"><a name="l00042"></a><span class="lineno"> 42</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (j < M - mini)</div>
-<div class="line"><a name="l00043"></a><span class="lineno"> 43</span> <span class="keywordflow">return</span> IF(j%2,K(0.5),K(-0.5));</div>
-<div class="line"><a name="l00044"></a><span class="lineno"> 44</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (j < M)</div>
-<div class="line"><a name="l00045"></a><span class="lineno"> 45</span> <span class="keywordflow">return</span> K(0.5) * SIGNF((R)m1)*SIGNF((R)m2);</div>
-<div class="line"><a name="l00046"></a><span class="lineno"> 46</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00047"></a><span class="lineno"> 47</span> <span class="keywordflow">return</span></div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> SQRT(((R)(j+1))/((R)(j+1-m1)))</div>
-<div class="line"><a name="l00049"></a><span class="lineno"> 49</span> * SQRT(((R)(2*j+1))/((R)(j+1+m1)))</div>
-<div class="line"><a name="l00050"></a><span class="lineno"> 50</span> * SQRT(((R)(j+1))/((R)(j+1-m2)))</div>
-<div class="line"><a name="l00051"></a><span class="lineno"> 51</span> * SQRT(((R)(2*j+1))/((R)(j+1+m2)));</div>
-<div class="line"><a name="l00052"></a><span class="lineno"> 52</span> }</div>
-<div class="line"><a name="l00053"></a><span class="lineno"> 53</span> </div>
-<div class="line"><a name="l00054"></a><span class="lineno"><a class="code" href="wigner_8h.html#a6722aa3212be1361b531751a850056f6"> 54</a></span> <span class="keywordtype">double</span> SO3_beta(<span class="keyword">const</span> <span class="keywordtype">int</span> m1, <span class="keyword">const</span> <span class="keywordtype">int</span> m2, <span class="keyword">const</span> <span class="keywordtype">int</span> j)</div>
-<div class="line"><a name="l00055"></a><span class="lineno"> 55</span> {</div>
-<div class="line"><a name="l00056"></a><span class="lineno"> 56</span> <span class="keywordflow">if</span> (j < 0)</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordflow">return</span> K(0.0);</div>
-<div class="line"><a name="l00058"></a><span class="lineno"> 58</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (j < MAX(ABS(m1),ABS(m2)))</div>
-<div class="line"><a name="l00059"></a><span class="lineno"> 59</span> <span class="keywordflow">return</span> K(0.5);</div>
-<div class="line"><a name="l00060"></a><span class="lineno"> 60</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (m1 == 0 || m2 == 0)</div>
-<div class="line"><a name="l00061"></a><span class="lineno"> 61</span> <span class="keywordflow">return</span> K(0.0);</div>
-<div class="line"><a name="l00062"></a><span class="lineno"> 62</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00063"></a><span class="lineno"> 63</span> {</div>
-<div class="line"><a name="l00064"></a><span class="lineno"> 64</span> <span class="keyword">const</span> R m1a = FABS((R)m1), m2a = FABS((R)m2);</div>
-<div class="line"><a name="l00065"></a><span class="lineno"> 65</span> <span class="keywordflow">return</span> -COPYSIGN(</div>
-<div class="line"><a name="l00066"></a><span class="lineno"> 66</span> ((SQRT(m1a)*SQRT(m2a))/((R)j))</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> * SQRT(m1a/((R)(j+1-m1)))</div>
-<div class="line"><a name="l00068"></a><span class="lineno"> 68</span> * SQRT(((R)(2*j+1))/((R)(j+1+m1)))</div>
-<div class="line"><a name="l00069"></a><span class="lineno"> 69</span> * SQRT(m2a/((R)(j+1-m2)))</div>
-<div class="line"><a name="l00070"></a><span class="lineno"> 70</span> * SQRT(((R)(2*j+1))/((R)(j+1+m2))),</div>
-<div class="line"><a name="l00071"></a><span class="lineno"> 71</span> SIGNF((R)m1)*SIGNF((R)m2));</div>
-<div class="line"><a name="l00072"></a><span class="lineno"> 72</span> }</div>
-<div class="line"><a name="l00073"></a><span class="lineno"> 73</span> }</div>
-<div class="line"><a name="l00074"></a><span class="lineno"> 74</span> </div>
-<div class="line"><a name="l00075"></a><span class="lineno"><a class="code" href="wigner_8h.html#a6b13b24d727910800b9f1c0da29f5f73"> 75</a></span> <span class="keywordtype">double</span> SO3_gamma(<span class="keyword">const</span> <span class="keywordtype">int</span> m1, <span class="keyword">const</span> <span class="keywordtype">int</span> m2, <span class="keyword">const</span> <span class="keywordtype">int</span> j)</div>
-<div class="line"><a name="l00076"></a><span class="lineno"> 76</span> {</div>
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordflow">if</span> (MAX(ABS(m1),ABS(m2)) < j)</div>
-<div class="line"><a name="l00078"></a><span class="lineno"> 78</span> <span class="keywordflow">return</span> -(((R)(j+1))/((R)j)) * SQRT((((R)(j-m1))/((R)(j+1-m1)))</div>
-<div class="line"><a name="l00079"></a><span class="lineno"> 79</span> *(((R)(j+m1))/((R)(j+1+m1)))*(((R)(j-m2))/((R)(j+1-m2)))</div>
-<div class="line"><a name="l00080"></a><span class="lineno"> 80</span> *(((R)(j+m2))/((R)(j+1+m2))));</div>
-<div class="line"><a name="l00081"></a><span class="lineno"> 81</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (j == -1)</div>
-<div class="line"><a name="l00082"></a><span class="lineno"> 82</span> <span class="keywordflow">return</span> IF(m1 > m2 || !((m1 + m2) % 2), K(1.0), K(-1.0))</div>
-<div class="line"><a name="l00083"></a><span class="lineno"> 83</span> * nfft_lambda2((R)ABS(m2 - m1),(R)ABS(m2 + m1));</div>
-<div class="line"><a name="l00084"></a><span class="lineno"> 84</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00085"></a><span class="lineno"> 85</span> <span class="keywordflow">return</span> K(0.0);</div>
-<div class="line"><a name="l00086"></a><span class="lineno"> 86</span> }</div>
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> </div>
-<div class="line"><a name="l00088"></a><span class="lineno"> 88</span> <span class="comment">/*compute the coefficients for all degrees*/</span></div>
-<div class="line"><a name="l00089"></a><span class="lineno"> 89</span> </div>
-<div class="line"><a name="l00090"></a><span class="lineno"><a class="code" href="wigner_8h.html#ae9c3c9a11f1da35bb0cfbed1fb828ad2"> 90</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> SO3_alpha_row(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-func [...]
-<div class="line"><a name="l00091"></a><span class="lineno"> 91</span> {</div>
-<div class="line"><a name="l00092"></a><span class="lineno"> 92</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00093"></a><span class="lineno"> 93</span> <span class="keywordtype">double</span> *alpha_act = <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>;</div>
-<div class="line"><a name="l00094"></a><span class="lineno"> 94</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00095"></a><span class="lineno"> 95</span> *alpha_act++ = SO3_alpha(k, m, j);</div>
-<div class="line"><a name="l00096"></a><span class="lineno"> 96</span> }</div>
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> </div>
-<div class="line"><a name="l00098"></a><span class="lineno"><a class="code" href="wigner_8h.html#a1b82e072be0c3e0d45426ed56e4e6a9d"> 98</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> SO3_beta_row(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-funct [...]
-<div class="line"><a name="l00099"></a><span class="lineno"> 99</span> {</div>
-<div class="line"><a name="l00100"></a><span class="lineno"> 100</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00101"></a><span class="lineno"> 101</span> <span class="keywordtype">double</span> *beta_act = <a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>;</div>
-<div class="line"><a name="l00102"></a><span class="lineno"> 102</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00103"></a><span class="lineno"> 103</span> *beta_act++ = SO3_beta(k, m, j);</div>
-<div class="line"><a name="l00104"></a><span class="lineno"> 104</span> }</div>
-<div class="line"><a name="l00105"></a><span class="lineno"> 105</span> </div>
-<div class="line"><a name="l00106"></a><span class="lineno"><a class="code" href="wigner_8h.html#a46516d6ec71efab3c80eecd459ad20ee"> 106</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> SO3_gamma_row(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-func [...]
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> {</div>
-<div class="line"><a name="l00108"></a><span class="lineno"> 108</span> <span class="keywordtype">int</span> j;</div>
-<div class="line"><a name="l00109"></a><span class="lineno"> 109</span> <span class="keywordtype">double</span> *gamma_act = <a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>;</div>
-<div class="line"><a name="l00110"></a><span class="lineno"> 110</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00111"></a><span class="lineno"> 111</span> *gamma_act++ = SO3_gamma(k, m, j);</div>
-<div class="line"><a name="l00112"></a><span class="lineno"> 112</span> }</div>
-<div class="line"><a name="l00113"></a><span class="lineno"> 113</span> </div>
-<div class="line"><a name="l00114"></a><span class="lineno"> 114</span> <span class="comment">/*compute for all degrees l and orders k*/</span></div>
-<div class="line"><a name="l00115"></a><span class="lineno"> 115</span> </div>
-<div class="line"><a name="l00116"></a><span class="lineno"><a class="code" href="wigner_8h.html#a9ab913c454dd078bed0db8b4aa9365e1"> 116</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> SO3_alpha_matrix(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-f [...]
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> {</div>
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> <span class="keywordtype">int</span> i, j;</div>
-<div class="line"><a name="l00119"></a><span class="lineno"> 119</span> <span class="keywordtype">double</span> *alpha_act = <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>;</div>
-<div class="line"><a name="l00120"></a><span class="lineno"> 120</span> <span class="keywordflow">for</span> (i = -N; i <= N; i++)</div>
-<div class="line"><a name="l00121"></a><span class="lineno"> 121</span> {</div>
-<div class="line"><a name="l00122"></a><span class="lineno"> 122</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00123"></a><span class="lineno"> 123</span> {</div>
-<div class="line"><a name="l00124"></a><span class="lineno"> 124</span> *alpha_act = SO3_alpha(i, m, j);</div>
-<div class="line"><a name="l00125"></a><span class="lineno"> 125</span> alpha_act++;</div>
-<div class="line"><a name="l00126"></a><span class="lineno"> 126</span> }</div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> }</div>
-<div class="line"><a name="l00128"></a><span class="lineno"> 128</span> }</div>
-<div class="line"><a name="l00129"></a><span class="lineno"> 129</span> </div>
-<div class="line"><a name="l00130"></a><span class="lineno"><a class="code" href="wigner_8h.html#a742f6babb80797e003835bc66cfe9080"> 130</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> SO3_beta_matrix(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-fu [...]
-<div class="line"><a name="l00131"></a><span class="lineno"> 131</span> {</div>
-<div class="line"><a name="l00132"></a><span class="lineno"> 132</span> <span class="keywordtype">int</span> i, j;</div>
-<div class="line"><a name="l00133"></a><span class="lineno"> 133</span> <span class="keywordtype">double</span> *alpha_act = <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>;</div>
-<div class="line"><a name="l00134"></a><span class="lineno"> 134</span> <span class="keywordflow">for</span> (i = -N; i <= N; i++)</div>
-<div class="line"><a name="l00135"></a><span class="lineno"> 135</span> {</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00137"></a><span class="lineno"> 137</span> {</div>
-<div class="line"><a name="l00138"></a><span class="lineno"> 138</span> *alpha_act = SO3_beta(i, m, j);</div>
-<div class="line"><a name="l00139"></a><span class="lineno"> 139</span> alpha_act++;</div>
-<div class="line"><a name="l00140"></a><span class="lineno"> 140</span> }</div>
-<div class="line"><a name="l00141"></a><span class="lineno"> 141</span> }</div>
-<div class="line"><a name="l00142"></a><span class="lineno"> 142</span> }</div>
-<div class="line"><a name="l00143"></a><span class="lineno"> 143</span> </div>
-<div class="line"><a name="l00144"></a><span class="lineno"><a class="code" href="wigner_8h.html#aa9850cfec93784e536a728f13db4c5cb"> 144</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> SO3_gamma_matrix(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-f [...]
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> {</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> <span class="keywordtype">int</span> i, j;</div>
-<div class="line"><a name="l00147"></a><span class="lineno"> 147</span> <span class="keywordtype">double</span> *alpha_act = <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>;</div>
-<div class="line"><a name="l00148"></a><span class="lineno"> 148</span> <span class="keywordflow">for</span> (i = -N; i <= N; i++)</div>
-<div class="line"><a name="l00149"></a><span class="lineno"> 149</span> {</div>
-<div class="line"><a name="l00150"></a><span class="lineno"> 150</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00151"></a><span class="lineno"> 151</span> {</div>
-<div class="line"><a name="l00152"></a><span class="lineno"> 152</span> *alpha_act = SO3_gamma(i, m, j);</div>
-<div class="line"><a name="l00153"></a><span class="lineno"> 153</span> alpha_act++;</div>
-<div class="line"><a name="l00154"></a><span class="lineno"> 154</span> }</div>
-<div class="line"><a name="l00155"></a><span class="lineno"> 155</span> }</div>
-<div class="line"><a name="l00156"></a><span class="lineno"> 156</span> }</div>
-<div class="line"><a name="l00157"></a><span class="lineno"> 157</span> </div>
-<div class="line"><a name="l00158"></a><span class="lineno"> 158</span> <span class="comment">/*compute all 3termrecurrence coeffs*/</span></div>
-<div class="line"><a name="l00159"></a><span class="lineno"> 159</span> </div>
-<div class="line"><a name="l00160"></a><span class="lineno"><a class="code" href="wigner_8h.html#aef802fd511b566392a8b2cbb9fcd6678"> 160</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> SO3_alpha_all(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-func [...]
-<div class="line"><a name="l00161"></a><span class="lineno"> 161</span> {</div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordtype">int</span> q;</div>
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordtype">int</span> i, j, m;</div>
-<div class="line"><a name="l00164"></a><span class="lineno"> 164</span> <span class="keywordtype">double</span> *alpha_act = <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>;</div>
-<div class="line"><a name="l00165"></a><span class="lineno"> 165</span> q = 0;</div>
-<div class="line"><a name="l00166"></a><span class="lineno"> 166</span> <span class="keywordflow">for</span> (m = -N; m <= N; m++)</div>
-<div class="line"><a name="l00167"></a><span class="lineno"> 167</span> {</div>
-<div class="line"><a name="l00168"></a><span class="lineno"> 168</span> <span class="keywordflow">for</span> (i = -N; i <= N; i++)</div>
-<div class="line"><a name="l00169"></a><span class="lineno"> 169</span> {</div>
-<div class="line"><a name="l00170"></a><span class="lineno"> 170</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00171"></a><span class="lineno"> 171</span> {</div>
-<div class="line"><a name="l00172"></a><span class="lineno"> 172</span> *alpha_act = SO3_alpha(i, m, j);</div>
-<div class="line"><a name="l00173"></a><span class="lineno"> 173</span> fprintf(stdout, <span class="stringliteral">"alpha_all_%d^[%d,%d]=%f\n"</span>, j, i, m,</div>
-<div class="line"><a name="l00174"></a><span class="lineno"> 174</span> SO3_alpha(i, m, j));</div>
-<div class="line"><a name="l00175"></a><span class="lineno"> 175</span> alpha_act++;</div>
-<div class="line"><a name="l00176"></a><span class="lineno"> 176</span> q = q + 1;</div>
-<div class="line"><a name="l00177"></a><span class="lineno"> 177</span> </div>
-<div class="line"><a name="l00178"></a><span class="lineno"> 178</span> }</div>
-<div class="line"><a name="l00179"></a><span class="lineno"> 179</span> }</div>
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> }</div>
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> }</div>
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00183"></a><span class="lineno"><a class="code" href="wigner_8h.html#aa981c92edca3fac2f04a7d3524b8425a"> 183</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> SO3_beta_all(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-funct [...]
-<div class="line"><a name="l00184"></a><span class="lineno"> 184</span> {</div>
-<div class="line"><a name="l00185"></a><span class="lineno"> 185</span> <span class="keywordtype">int</span> i, j, m;</div>
-<div class="line"><a name="l00186"></a><span class="lineno"> 186</span> <span class="keywordtype">double</span> *alpha_act = <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>;</div>
-<div class="line"><a name="l00187"></a><span class="lineno"> 187</span> <span class="keywordflow">for</span> (m = -N; m <= N; m++)</div>
-<div class="line"><a name="l00188"></a><span class="lineno"> 188</span> {</div>
-<div class="line"><a name="l00189"></a><span class="lineno"> 189</span> <span class="keywordflow">for</span> (i = -N; i <= N; i++)</div>
-<div class="line"><a name="l00190"></a><span class="lineno"> 190</span> {</div>
-<div class="line"><a name="l00191"></a><span class="lineno"> 191</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00192"></a><span class="lineno"> 192</span> {</div>
-<div class="line"><a name="l00193"></a><span class="lineno"> 193</span> *alpha_act = SO3_beta(i, m, j);</div>
-<div class="line"><a name="l00194"></a><span class="lineno"> 194</span> alpha_act++;</div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> }</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> }</div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> }</div>
-<div class="line"><a name="l00198"></a><span class="lineno"> 198</span> }</div>
-<div class="line"><a name="l00199"></a><span class="lineno"> 199</span> </div>
-<div class="line"><a name="l00200"></a><span class="lineno"><a class="code" href="wigner_8h.html#a4ff3aa0c3afb226613100df410cbef7f"> 200</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> SO3_gamma_all(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-func [...]
-<div class="line"><a name="l00201"></a><span class="lineno"> 201</span> {</div>
-<div class="line"><a name="l00202"></a><span class="lineno"> 202</span> <span class="keywordtype">int</span> i, j, m;</div>
-<div class="line"><a name="l00203"></a><span class="lineno"> 203</span> <span class="keywordtype">double</span> *alpha_act = <a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>;</div>
-<div class="line"><a name="l00204"></a><span class="lineno"> 204</span> <span class="keywordflow">for</span> (m = -N; m <= N; m++)</div>
-<div class="line"><a name="l00205"></a><span class="lineno"> 205</span> {</div>
-<div class="line"><a name="l00206"></a><span class="lineno"> 206</span> <span class="keywordflow">for</span> (i = -N; i <= N; i++)</div>
-<div class="line"><a name="l00207"></a><span class="lineno"> 207</span> {</div>
-<div class="line"><a name="l00208"></a><span class="lineno"> 208</span> <span class="keywordflow">for</span> (j = -1; j <= N; j++)</div>
-<div class="line"><a name="l00209"></a><span class="lineno"> 209</span> {</div>
-<div class="line"><a name="l00210"></a><span class="lineno"> 210</span> *alpha_act = SO3_gamma(i, m, j);</div>
-<div class="line"><a name="l00211"></a><span class="lineno"> 211</span> alpha_act++;</div>
-<div class="line"><a name="l00212"></a><span class="lineno"> 212</span> }</div>
-<div class="line"><a name="l00213"></a><span class="lineno"> 213</span> }</div>
-<div class="line"><a name="l00214"></a><span class="lineno"> 214</span> }</div>
-<div class="line"><a name="l00215"></a><span class="lineno"> 215</span> }</div>
-<div class="line"><a name="l00216"></a><span class="lineno"> 216</span> </div>
-<div class="line"><a name="l00217"></a><span class="lineno"><a class="code" href="wigner_8h.html#a86975b8841ed9b6bb3e1484130658f19"> 217</a></span> <span class="keyword">inline</span> <span class="keywordtype">void</span> eval_wigner(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> size, <span class="keywordtype">int</span> k, <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdo [...]
-<div class="line"><a name="l00218"></a><span class="lineno"> 218</span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>, <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title=" [...]
-<div class="line"><a name="l00219"></a><span class="lineno"> 219</span> {</div>
-<div class="line"><a name="l00220"></a><span class="lineno"> 220</span> <span class="comment">/* Evaluate the wigner function d_{k,nleg} (l,x) for the vector</span></div>
-<div class="line"><a name="l00221"></a><span class="lineno"> 221</span> <span class="comment"> * of knots x[0], ..., x[size-1] by the Clenshaw algorithm</span></div>
-<div class="line"><a name="l00222"></a><span class="lineno"> 222</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00223"></a><span class="lineno"> 223</span> <span class="keywordtype">int</span> i, j;</div>
-<div class="line"><a name="l00224"></a><span class="lineno"> 224</span> <span class="keywordtype">double</span> a, b, x_val_act, a_old;</div>
-<div class="line"><a name="l00225"></a><span class="lineno"> 225</span> <span class="keywordtype">double</span> *x_act, *y_act;</div>
-<div class="line"><a name="l00226"></a><span class="lineno"> 226</span> <span class="keywordtype">double</span> *alpha_act, *beta_act, *gamma_act;</div>
-<div class="line"><a name="l00227"></a><span class="lineno"> 227</span> </div>
-<div class="line"><a name="l00228"></a><span class="lineno"> 228</span> <span class="comment">/* Traverse all nodes. */</span></div>
-<div class="line"><a name="l00229"></a><span class="lineno"> 229</span> x_act = x;</div>
-<div class="line"><a name="l00230"></a><span class="lineno"> 230</span> y_act = y;</div>
-<div class="line"><a name="l00231"></a><span class="lineno"> 231</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00232"></a><span class="lineno"> 232</span> {</div>
-<div class="line"><a name="l00233"></a><span class="lineno"> 233</span> a = 1.0;</div>
-<div class="line"><a name="l00234"></a><span class="lineno"> 234</span> b = 0.0;</div>
-<div class="line"><a name="l00235"></a><span class="lineno"> 235</span> x_val_act = *x_act;</div>
-<div class="line"><a name="l00236"></a><span class="lineno"> 236</span> </div>
-<div class="line"><a name="l00237"></a><span class="lineno"> 237</span> <span class="keywordflow">if</span> (k == 0)</div>
-<div class="line"><a name="l00238"></a><span class="lineno"> 238</span> {</div>
-<div class="line"><a name="l00239"></a><span class="lineno"> 239</span> *y_act = 1.0;</div>
-<div class="line"><a name="l00240"></a><span class="lineno"> 240</span> }</div>
-<div class="line"><a name="l00241"></a><span class="lineno"> 241</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00242"></a><span class="lineno"> 242</span> {</div>
-<div class="line"><a name="l00243"></a><span class="lineno"> 243</span> alpha_act = &(alpha[k]);</div>
-<div class="line"><a name="l00244"></a><span class="lineno"> 244</span> beta_act = &(beta[k]);</div>
-<div class="line"><a name="l00245"></a><span class="lineno"> 245</span> gamma_act = &(gamma[k]);</div>
-<div class="line"><a name="l00246"></a><span class="lineno"> 246</span> <span class="keywordflow">for</span> (j = k; j > 1; j--)</div>
-<div class="line"><a name="l00247"></a><span class="lineno"> 247</span> {</div>
-<div class="line"><a name="l00248"></a><span class="lineno"> 248</span> a_old = a;</div>
-<div class="line"><a name="l00249"></a><span class="lineno"> 249</span> a = b + a_old * ((*alpha_act) * x_val_act + (*beta_act));</div>
-<div class="line"><a name="l00250"></a><span class="lineno"> 250</span> b = a_old * (*gamma_act);</div>
-<div class="line"><a name="l00251"></a><span class="lineno"> 251</span> alpha_act--;</div>
-<div class="line"><a name="l00252"></a><span class="lineno"> 252</span> beta_act--;</div>
-<div class="line"><a name="l00253"></a><span class="lineno"> 253</span> gamma_act--;</div>
-<div class="line"><a name="l00254"></a><span class="lineno"> 254</span> }</div>
-<div class="line"><a name="l00255"></a><span class="lineno"> 255</span> *y_act = (a * ((*alpha_act) * x_val_act + (*beta_act)) + b);</div>
-<div class="line"><a name="l00256"></a><span class="lineno"> 256</span> }</div>
-<div class="line"><a name="l00257"></a><span class="lineno"> 257</span> x_act++;</div>
-<div class="line"><a name="l00258"></a><span class="lineno"> 258</span> y_act++;</div>
-<div class="line"><a name="l00259"></a><span class="lineno"> 259</span> }</div>
-<div class="line"><a name="l00260"></a><span class="lineno"> 260</span> }</div>
-<div class="line"><a name="l00261"></a><span class="lineno"> 261</span> </div>
-<div class="line"><a name="l00262"></a><span class="lineno"><a class="code" href="wigner_8h.html#ae5933af03f4536a70ddfc744f16c9c55"> 262</a></span> <span class="keyword">inline</span> <span class="keywordtype">int</span> eval_wigner_thresh(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> size, <span class="keywordtype">int</span> k,</div>
-<div class="line"><a name="l00263"></a><span class="lineno"> 263</span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>, <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title= [...]
-<div class="line"><a name="l00264"></a><span class="lineno"> 264</span> {</div>
-<div class="line"><a name="l00265"></a><span class="lineno"> 265</span> </div>
-<div class="line"><a name="l00266"></a><span class="lineno"> 266</span> <span class="keywordtype">int</span> i, j;</div>
-<div class="line"><a name="l00267"></a><span class="lineno"> 267</span> <span class="keywordtype">double</span> a, b, x_val_act, a_old;</div>
-<div class="line"><a name="l00268"></a><span class="lineno"> 268</span> <span class="keywordtype">double</span> *x_act, *y_act;</div>
-<div class="line"><a name="l00269"></a><span class="lineno"> 269</span> <span class="keywordtype">double</span> *alpha_act, *beta_act, *gamma_act;</div>
-<div class="line"><a name="l00270"></a><span class="lineno"> 270</span> </div>
-<div class="line"><a name="l00271"></a><span class="lineno"> 271</span> <span class="comment">/* Traverse all nodes. */</span></div>
-<div class="line"><a name="l00272"></a><span class="lineno"> 272</span> x_act = x;</div>
-<div class="line"><a name="l00273"></a><span class="lineno"> 273</span> y_act = y;</div>
-<div class="line"><a name="l00274"></a><span class="lineno"> 274</span> <span class="keywordflow">for</span> (i = 0; i < size; i++)</div>
-<div class="line"><a name="l00275"></a><span class="lineno"> 275</span> {</div>
-<div class="line"><a name="l00276"></a><span class="lineno"> 276</span> a = 1.0;</div>
-<div class="line"><a name="l00277"></a><span class="lineno"> 277</span> b = 0.0;</div>
-<div class="line"><a name="l00278"></a><span class="lineno"> 278</span> x_val_act = *x_act;</div>
-<div class="line"><a name="l00279"></a><span class="lineno"> 279</span> </div>
-<div class="line"><a name="l00280"></a><span class="lineno"> 280</span> <span class="keywordflow">if</span> (k == 0)</div>
-<div class="line"><a name="l00281"></a><span class="lineno"> 281</span> {</div>
-<div class="line"><a name="l00282"></a><span class="lineno"> 282</span> *y_act = 1.0;</div>
-<div class="line"><a name="l00283"></a><span class="lineno"> 283</span> }</div>
-<div class="line"><a name="l00284"></a><span class="lineno"> 284</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00285"></a><span class="lineno"> 285</span> {</div>
-<div class="line"><a name="l00286"></a><span class="lineno"> 286</span> alpha_act = &(alpha[k]);</div>
-<div class="line"><a name="l00287"></a><span class="lineno"> 287</span> beta_act = &(beta[k]);</div>
-<div class="line"><a name="l00288"></a><span class="lineno"> 288</span> gamma_act = &(gamma[k]);</div>
-<div class="line"><a name="l00289"></a><span class="lineno"> 289</span> <span class="keywordflow">for</span> (j = k; j > 1; j--)</div>
-<div class="line"><a name="l00290"></a><span class="lineno"> 290</span> {</div>
-<div class="line"><a name="l00291"></a><span class="lineno"> 291</span> a_old = a;</div>
-<div class="line"><a name="l00292"></a><span class="lineno"> 292</span> a = b + a_old * ((*alpha_act) * x_val_act + (*beta_act));</div>
-<div class="line"><a name="l00293"></a><span class="lineno"> 293</span> b = a_old * (*gamma_act);</div>
-<div class="line"><a name="l00294"></a><span class="lineno"> 294</span> alpha_act--;</div>
-<div class="line"><a name="l00295"></a><span class="lineno"> 295</span> beta_act--;</div>
-<div class="line"><a name="l00296"></a><span class="lineno"> 296</span> gamma_act--;</div>
-<div class="line"><a name="l00297"></a><span class="lineno"> 297</span> }</div>
-<div class="line"><a name="l00298"></a><span class="lineno"> 298</span> *y_act = (a * ((*alpha_act) * x_val_act + (*beta_act)) + b);</div>
-<div class="line"><a name="l00299"></a><span class="lineno"> 299</span> <span class="keywordflow">if</span> (fabs(*y_act) > <a class="code" href="structnfsft__wisdom.html#ac367edaa1fae041e5b049cd81b44336b" title="The threshold /f$/f$.">threshold</a>)</div>
-<div class="line"><a name="l00300"></a><span class="lineno"> 300</span> {</div>
-<div class="line"><a name="l00301"></a><span class="lineno"> 301</span> <span class="keywordflow">return</span> 1;</div>
-<div class="line"><a name="l00302"></a><span class="lineno"> 302</span> }</div>
-<div class="line"><a name="l00303"></a><span class="lineno"> 303</span> }</div>
-<div class="line"><a name="l00304"></a><span class="lineno"> 304</span> x_act++;</div>
-<div class="line"><a name="l00305"></a><span class="lineno"> 305</span> y_act++;</div>
-<div class="line"><a name="l00306"></a><span class="lineno"> 306</span> }</div>
-<div class="line"><a name="l00307"></a><span class="lineno"> 307</span> <span class="keywordflow">return</span> 0;</div>
-<div class="line"><a name="l00308"></a><span class="lineno"> 308</span> }</div>
-<div class="line"><a name="l00309"></a><span class="lineno"> 309</span> </div>
-<div class="line"><a name="l00310"></a><span class="lineno"> 310</span> <span class="comment">/************************************************************************/</span></div>
-<div class="line"><a name="l00311"></a><span class="lineno"> 311</span> <span class="comment">/* L2 normed wigner little d, WHERE THE DEGREE OF THE FUNCTION IS EQUAL</span></div>
-<div class="line"><a name="l00312"></a><span class="lineno"> 312</span> <span class="comment"> TO ONE OF ITS ORDERS. This is the function to use when starting the</span></div>
-<div class="line"><a name="l00313"></a><span class="lineno"> 313</span> <span class="comment"> three-term recurrence at orders (m1,m2)</span></div>
-<div class="line"><a name="l00314"></a><span class="lineno"> 314</span> <span class="comment"></span></div>
-<div class="line"><a name="l00315"></a><span class="lineno"> 315</span> <span class="comment"> Note that, by definition, since I am starting the recurrence with this</span></div>
-<div class="line"><a name="l00316"></a><span class="lineno"> 316</span> <span class="comment"> function, that the degree j of the function is equal to max(abs(m1), abs(m2) ).</span></div>
-<div class="line"><a name="l00317"></a><span class="lineno"> 317</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00318"></a><span class="lineno"> 318</span> </div>
-<div class="line"><a name="l00319"></a><span class="lineno"><a class="code" href="wigner_8h.html#a6c43c1f82cf3efa9cb1343ec9dcd07ed"> 319</a></span> <span class="keywordtype">double</span> wigner_start(<span class="keywordtype">int</span> m1, <span class="keywordtype">int</span> m2, <span class="keywordtype">double</span> theta)</div>
-<div class="line"><a name="l00320"></a><span class="lineno"> 320</span> {</div>
-<div class="line"><a name="l00321"></a><span class="lineno"> 321</span> </div>
-<div class="line"><a name="l00322"></a><span class="lineno"> 322</span> <span class="keywordtype">int</span> i, l, delta;</div>
-<div class="line"><a name="l00323"></a><span class="lineno"> 323</span> <span class="keywordtype">int</span> cosPower, sinPower;</div>
-<div class="line"><a name="l00324"></a><span class="lineno"> 324</span> <span class="keywordtype">int</span> absM1, absM2;</div>
-<div class="line"><a name="l00325"></a><span class="lineno"> 325</span> <span class="keywordtype">double</span> dl, dm1, dm2, normFactor, sinSign;</div>
-<div class="line"><a name="l00326"></a><span class="lineno"> 326</span> <span class="keywordtype">double</span> dCP, dSP;</div>
-<div class="line"><a name="l00327"></a><span class="lineno"> 327</span> <span class="keywordtype">double</span> max;</div>
-<div class="line"><a name="l00328"></a><span class="lineno"> 328</span> <span class="keywordtype">double</span> min;</div>
-<div class="line"><a name="l00329"></a><span class="lineno"> 329</span> </div>
-<div class="line"><a name="l00330"></a><span class="lineno"> 330</span> max = (double) (ABS(m1) > ABS(m2) ? ABS(m1) : ABS(m2));</div>
-<div class="line"><a name="l00331"></a><span class="lineno"> 331</span> min = (double) (ABS(m1) < ABS(m2) ? ABS(m1) : ABS(m2));</div>
-<div class="line"><a name="l00332"></a><span class="lineno"> 332</span> </div>
-<div class="line"><a name="l00333"></a><span class="lineno"> 333</span> l = max;</div>
-<div class="line"><a name="l00334"></a><span class="lineno"> 334</span> delta = l - min;</div>
-<div class="line"><a name="l00335"></a><span class="lineno"> 335</span> </div>
-<div class="line"><a name="l00336"></a><span class="lineno"> 336</span> absM1 = ABS(m1);</div>
-<div class="line"><a name="l00337"></a><span class="lineno"> 337</span> absM2 = ABS(m2);</div>
-<div class="line"><a name="l00338"></a><span class="lineno"> 338</span> dl = (double) l;</div>
-<div class="line"><a name="l00339"></a><span class="lineno"> 339</span> dm1 = (double) m1;</div>
-<div class="line"><a name="l00340"></a><span class="lineno"> 340</span> dm2 = (double) m2;</div>
-<div class="line"><a name="l00341"></a><span class="lineno"> 341</span> sinSign = 1.;</div>
-<div class="line"><a name="l00342"></a><span class="lineno"> 342</span> normFactor = 1.;</div>
-<div class="line"><a name="l00343"></a><span class="lineno"> 343</span> </div>
-<div class="line"><a name="l00344"></a><span class="lineno"> 344</span> <span class="keywordflow">for</span> (i = 0; i < delta; i++)</div>
-<div class="line"><a name="l00345"></a><span class="lineno"> 345</span> normFactor *= SQRT((2. * dl - ((<span class="keywordtype">double</span>) i)) / (((double) i) + 1.));</div>
-<div class="line"><a name="l00346"></a><span class="lineno"> 346</span> </div>
-<div class="line"><a name="l00347"></a><span class="lineno"> 347</span> <span class="comment">/* need to adjust to make the L2-norm equal to 1 */</span></div>
-<div class="line"><a name="l00348"></a><span class="lineno"> 348</span> </div>
-<div class="line"><a name="l00349"></a><span class="lineno"> 349</span> normFactor *= SQRT((2. * dl + 1.) / 2.);</div>
-<div class="line"><a name="l00350"></a><span class="lineno"> 350</span> </div>
-<div class="line"><a name="l00351"></a><span class="lineno"> 351</span> <span class="keywordflow">if</span> (l == absM1)</div>
-<div class="line"><a name="l00352"></a><span class="lineno"> 352</span> <span class="keywordflow">if</span> (m1 >= 0)</div>
-<div class="line"><a name="l00353"></a><span class="lineno"> 353</span> {</div>
-<div class="line"><a name="l00354"></a><span class="lineno"> 354</span> cosPower = l + m2;</div>
-<div class="line"><a name="l00355"></a><span class="lineno"> 355</span> sinPower = l - m2;</div>
-<div class="line"><a name="l00356"></a><span class="lineno"> 356</span> <span class="keywordflow">if</span> ((l - m2) % 2)</div>
-<div class="line"><a name="l00357"></a><span class="lineno"> 357</span> sinSign = -1.;</div>
-<div class="line"><a name="l00358"></a><span class="lineno"> 358</span> }</div>
-<div class="line"><a name="l00359"></a><span class="lineno"> 359</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00360"></a><span class="lineno"> 360</span> {</div>
-<div class="line"><a name="l00361"></a><span class="lineno"> 361</span> cosPower = l - m2;</div>
-<div class="line"><a name="l00362"></a><span class="lineno"> 362</span> sinPower = l + m2;</div>
-<div class="line"><a name="l00363"></a><span class="lineno"> 363</span> }</div>
-<div class="line"><a name="l00364"></a><span class="lineno"> 364</span> <span class="keywordflow">else</span> <span class="keywordflow">if</span> (m2 >= 0)</div>
-<div class="line"><a name="l00365"></a><span class="lineno"> 365</span> {</div>
-<div class="line"><a name="l00366"></a><span class="lineno"> 366</span> cosPower = l + m1;</div>
-<div class="line"><a name="l00367"></a><span class="lineno"> 367</span> sinPower = l - m1;</div>
-<div class="line"><a name="l00368"></a><span class="lineno"> 368</span> }</div>
-<div class="line"><a name="l00369"></a><span class="lineno"> 369</span> <span class="keywordflow">else</span></div>
-<div class="line"><a name="l00370"></a><span class="lineno"> 370</span> {</div>
-<div class="line"><a name="l00371"></a><span class="lineno"> 371</span> cosPower = l - m1;</div>
-<div class="line"><a name="l00372"></a><span class="lineno"> 372</span> sinPower = l + m1;</div>
-<div class="line"><a name="l00373"></a><span class="lineno"> 373</span> <span class="keywordflow">if</span> ((l + m1) % 2)</div>
-<div class="line"><a name="l00374"></a><span class="lineno"> 374</span> sinSign = -1.;</div>
-<div class="line"><a name="l00375"></a><span class="lineno"> 375</span> }</div>
-<div class="line"><a name="l00376"></a><span class="lineno"> 376</span> </div>
-<div class="line"><a name="l00377"></a><span class="lineno"> 377</span> dCP = (double) cosPower;</div>
-<div class="line"><a name="l00378"></a><span class="lineno"> 378</span> dSP = (double) sinPower;</div>
-<div class="line"><a name="l00379"></a><span class="lineno"> 379</span> </div>
-<div class="line"><a name="l00380"></a><span class="lineno"> 380</span> <span class="keywordflow">return</span> normFactor * sinSign * POW(sin(theta / 2), dSP) * POW(cos(theta / 2),</div>
-<div class="line"><a name="l00381"></a><span class="lineno"> 381</span> dCP);</div>
-<div class="line"><a name="l00382"></a><span class="lineno"> 382</span> }</div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/wigner_8h.html b/doc/api/html/wigner_8h.html
deleted file mode 100644
index 2eb92e5..0000000
--- a/doc/api/html/wigner_8h.html
+++ /dev/null
@@ -1,890 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - wigner.h File Reference
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_8f3c7156d7272f1462551f3a6c5fabd1.html">nfsoft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="summary">
-<a href="#func-members">Functions</a> </div>
- <div class="headertitle">
-<div class="title">wigner.h File Reference</div> </div>
-</div><!--header-->
-<div class="contents">
-
-<p>Header file for functions related to Wigner-d/D functions.
-<a href="#details">More...</a></p>
-
-<p><a href="wigner_8h_source.html">Go to the source code of this file.</a></p>
-<table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2><a name="func-members"></a>
-Functions</h2></td></tr>
-<tr class="memitem:ab67e240f23c39daa7283fee9025a8f03"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#ab67e240f23c39daa7283fee9025a8f03">SO3_alpha</a> (int k, int m, int l)</td></tr>
-<tr class="memdesc:ab67e240f23c39daa7283fee9025a8f03"><td class="mdescLeft"> </td><td class="mdescRight">Computes three-term recurrence coefficients <img class="formulaInl" alt="$\alpha_l^{km}$" src="form_58.png"/> of Wigner-d functions. <a href="#ab67e240f23c39daa7283fee9025a8f03"></a><br/></td></tr>
-<tr class="memitem:a6722aa3212be1361b531751a850056f6"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#a6722aa3212be1361b531751a850056f6">SO3_beta</a> (int k, int m, int l)</td></tr>
-<tr class="memdesc:a6722aa3212be1361b531751a850056f6"><td class="mdescLeft"> </td><td class="mdescRight">Computes three-term recurrence coefficients <img class="formulaInl" alt="$\beta_l^{km}$" src="form_61.png"/> of Wigner-d functions. <a href="#a6722aa3212be1361b531751a850056f6"></a><br/></td></tr>
-<tr class="memitem:a6b13b24d727910800b9f1c0da29f5f73"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#a6b13b24d727910800b9f1c0da29f5f73">SO3_gamma</a> (int k, int m, int l)</td></tr>
-<tr class="memdesc:a6b13b24d727910800b9f1c0da29f5f73"><td class="mdescLeft"> </td><td class="mdescRight">Computes three-term recurrence coefficients <img class="formulaInl" alt="$\gamma_l^{km}$" src="form_62.png"/> of Wigner-d functions. <a href="#a6b13b24d727910800b9f1c0da29f5f73"></a><br/></td></tr>
-<tr class="memitem:ae9c3c9a11f1da35bb0cfbed1fb828ad2"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#ae9c3c9a11f1da35bb0cfbed1fb828ad2">SO3_alpha_row</a> (double *alpha, int N, int m, int n)</td></tr>
-<tr class="memdesc:ae9c3c9a11f1da35bb0cfbed1fb828ad2"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \alpha_{l}^{km}$" src="form_63.png"/> of Wigner-d functions for all degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. <a href="#ae9c3c9a11f1da35bb0cfbed1fb828ad2"></a><br/></td></tr>
-<tr class="memitem:a1b82e072be0c3e0d45426ed56e4e6a9d"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#a1b82e072be0c3e0d45426ed56e4e6a9d">SO3_beta_row</a> (double *beta, int N, int m, int n)</td></tr>
-<tr class="memdesc:a1b82e072be0c3e0d45426ed56e4e6a9d"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \beta_{l}^{km}$" src="form_66.png"/> of Wigner-d functions for all degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. <a href="#a1b82e072be0c3e0d45426ed56e4e6a9d"></a><br/></td></tr>
-<tr class="memitem:a46516d6ec71efab3c80eecd459ad20ee"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#a46516d6ec71efab3c80eecd459ad20ee">SO3_gamma_row</a> (double *gamma, int N, int m, int n)</td></tr>
-<tr class="memdesc:a46516d6ec71efab3c80eecd459ad20ee"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \gamma_{l}^{km}$" src="form_67.png"/> of Wigner-d functions for all degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. <a href="#a46516d6ec71efab3c80eecd459ad20ee"></a><br/></td></tr>
-<tr class="memitem:a9ab913c454dd078bed0db8b4aa9365e1"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#a9ab913c454dd078bed0db8b4aa9365e1">SO3_alpha_matrix</a> (double *alpha, int N, int n)</td></tr>
-<tr class="memdesc:a9ab913c454dd078bed0db8b4aa9365e1"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \alpha_{l}^{km}$" src="form_63.png"/> of Wigner-d functions for all order <img class="formulaInl" alt="$ m = -N,\ldots,N $" src="form_68.png"/> and degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. <a href="#a9ab913c454dd078bed0db8b4aa9365e1"></a><br/></td></tr>
-<tr class="memitem:a742f6babb80797e003835bc66cfe9080"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#a742f6babb80797e003835bc66cfe9080">SO3_beta_matrix</a> (double *beta, int N, int n)</td></tr>
-<tr class="memdesc:a742f6babb80797e003835bc66cfe9080"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \beta_{l}^{km}$" src="form_66.png"/> of Wigner-d functions for all order <img class="formulaInl" alt="$ m = -N,\ldots,N $" src="form_68.png"/> and degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. <a href="#a742f6babb80797e003835bc66cfe9080"></a><br/></td></tr>
-<tr class="memitem:aa9850cfec93784e536a728f13db4c5cb"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#aa9850cfec93784e536a728f13db4c5cb">SO3_gamma_matrix</a> (double *gamma, int N, int n)</td></tr>
-<tr class="memdesc:aa9850cfec93784e536a728f13db4c5cb"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \gamma_{l}^{km}$" src="form_67.png"/> of Wigner-d functions for all order <img class="formulaInl" alt="$ m = -N,\ldots,N $" src="form_68.png"/> and degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. <a href="#aa9850cfec93784e536a728f13db4c5cb"></a><br/></td></tr>
-<tr class="memitem:aef802fd511b566392a8b2cbb9fcd6678"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#aef802fd511b566392a8b2cbb9fcd6678">SO3_alpha_all</a> (double *alpha, int N)</td></tr>
-<tr class="memdesc:aef802fd511b566392a8b2cbb9fcd6678"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\alpha_{l}^{km}$" src="form_69.png"/> of Wigner-d functions for all <img class="formulaInl" alt="$ k,m = -N,\ldots,N $" src="form_70.png"/> and <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. <a href="#aef802fd511b566392a8b2cbb9fcd6678"></a><br/></td></tr>
-<tr class="memitem:aa981c92edca3fac2f04a7d3524b8425a"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#aa981c92edca3fac2f04a7d3524b8425a">SO3_beta_all</a> (double *beta, int N)</td></tr>
-<tr class="memdesc:aa981c92edca3fac2f04a7d3524b8425a"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\beta_{l}^{km}$" src="form_71.png"/> of Wigner-d functions for all <img class="formulaInl" alt="$ k,m = -N,\ldots,N $" src="form_70.png"/> and <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. <a href="#aa981c92edca3fac2f04a7d3524b8425a"></a><br/></td></tr>
-<tr class="memitem:a4ff3aa0c3afb226613100df410cbef7f"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#a4ff3aa0c3afb226613100df410cbef7f">SO3_gamma_all</a> (double *gamma, int N)</td></tr>
-<tr class="memdesc:a4ff3aa0c3afb226613100df410cbef7f"><td class="mdescLeft"> </td><td class="mdescRight">Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\gamma_{l}^{km}$" src="form_72.png"/> of Wigner-d functions for all <img class="formulaInl" alt="$ k,m = -N,\ldots,N $" src="form_70.png"/> and <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. <a href="#a4ff3aa0c3afb226613100df410cbef7f"></a><br/></td></tr>
-<tr class="memitem:a86975b8841ed9b6bb3e1484130658f19"><td class="memItemLeft" align="right" valign="top">void </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#a86975b8841ed9b6bb3e1484130658f19">eval_wigner</a> (double *x, double *y, int size, int l, double *alpha, double *beta, double *gamma)</td></tr>
-<tr class="memdesc:a86975b8841ed9b6bb3e1484130658f19"><td class="mdescLeft"> </td><td class="mdescRight">Evaluates Wigner-d functions <img class="formulaInl" alt="$d_l^{km}(x,c)$" src="form_73.png"/> using the Clenshaw-algorithm. <a href="#a86975b8841ed9b6bb3e1484130658f19"></a><br/></td></tr>
-<tr class="memitem:ae5933af03f4536a70ddfc744f16c9c55"><td class="memItemLeft" align="right" valign="top">int </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#ae5933af03f4536a70ddfc744f16c9c55">eval_wigner_thresh</a> (double *x, double *y, int size, int l, double *alpha, double *beta, double *gamma, double threshold)</td></tr>
-<tr class="memdesc:ae5933af03f4536a70ddfc744f16c9c55"><td class="mdescLeft"> </td><td class="mdescRight">Evaluates Wigner-d functions <img class="formulaInl" alt="$d_l^{km}(x,c)$" src="form_73.png"/> using the Clenshaw-algorithm if it not exceeds a given threshold. <a href="#ae5933af03f4536a70ddfc744f16c9c55"></a><br/></td></tr>
-<tr class="memitem:a6c43c1f82cf3efa9cb1343ec9dcd07ed"><td class="memItemLeft" align="right" valign="top">double </td><td class="memItemRight" valign="bottom"><a class="el" href="wigner_8h.html#a6c43c1f82cf3efa9cb1343ec9dcd07ed">wigner_start</a> (int n1, int n2, double theta)</td></tr>
-<tr class="memdesc:a6c43c1f82cf3efa9cb1343ec9dcd07ed"><td class="mdescLeft"> </td><td class="mdescRight">A method used for debugging, gives the values to start the "old" three-term recurrence generates <img class="formulaInl" alt="$ d^{km}_l(cos(theta)) $" src="form_77.png"/> WHERE THE DEGREE l OF THE FUNCTION IS EQUAL TO THE MAXIMUM OF ITS ORDERS. <a href="#a6c43c1f82cf3efa9cb1343ec9dcd07ed"></a><br/></td></tr>
-</table>
-<hr/><a name="details" id="details"></a><h2>Detailed Description</h2>
-<div class="textblock"><p>Header file for functions related to Wigner-d/D functions. </p>
-<dl class="section author"><dt>Author:</dt><dd>Antje Vollrath </dd></dl>
-
-<p>Definition in file <a class="el" href="wigner_8h_source.html">wigner.h</a>.</p>
-</div><hr/><h2>Function Documentation</h2>
-<a class="anchor" id="ab67e240f23c39daa7283fee9025a8f03"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double SO3_alpha </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>k</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>l</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Computes three-term recurrence coefficients <img class="formulaInl" alt="$\alpha_l^{km}$" src="form_58.png"/> of Wigner-d functions. </p>
-<ul>
-<li>k The order <img class="formulaInl" alt="$k$" src="form_45.png"/> </li>
-<li>m The order <img class="formulaInl" alt="$m$" src="form_59.png"/> </li>
-<li>l The degree <img class="formulaInl" alt="$l$" src="form_60.png"/> </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00027">27</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a6722aa3212be1361b531751a850056f6"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double SO3_beta </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>k</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>l</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Computes three-term recurrence coefficients <img class="formulaInl" alt="$\beta_l^{km}$" src="form_61.png"/> of Wigner-d functions. </p>
-<ul>
-<li>k The order <img class="formulaInl" alt="$k$" src="form_45.png"/> </li>
-<li>m The order <img class="formulaInl" alt="$m$" src="form_59.png"/> </li>
-<li>l The degree <img class="formulaInl" alt="$l$" src="form_60.png"/> </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00054">54</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a6b13b24d727910800b9f1c0da29f5f73"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double SO3_gamma </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>k</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>l</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>Computes three-term recurrence coefficients <img class="formulaInl" alt="$\gamma_l^{km}$" src="form_62.png"/> of Wigner-d functions. </p>
-<ul>
-<li>k The order <img class="formulaInl" alt="$k$" src="form_45.png"/> </li>
-<li>m The order <img class="formulaInl" alt="$m$" src="form_59.png"/> </li>
-<li>l The degree <img class="formulaInl" alt="$l$" src="form_60.png"/> </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00075">75</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ae9c3c9a11f1da35bb0cfbed1fb828ad2"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void SO3_alpha_row </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>alpha</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \alpha_{l}^{km}$" src="form_63.png"/> of Wigner-d functions for all degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. </p>
-<ul>
-<li>alpha A pointer to an array of doubles of size <img class="formulaInl" alt="$(2N+1)^2(N+1)$" src="form_65.png"/> </li>
-<li>m the first order </li>
-<li>n the second order </li>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00090">90</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00076">nfsft_wisdom::alpha</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a1b82e072be0c3e0d45426ed56e4e6a9d"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void SO3_beta_row </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>beta</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \beta_{l}^{km}$" src="form_66.png"/> of Wigner-d functions for all degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. </p>
-<ul>
-<li>alpha A pointer to an array of doubles of size <img class="formulaInl" alt="$(2N+1)^2(N+1)$" src="form_65.png"/> </li>
-<li>m the first order </li>
-<li>n the second order </li>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00098">98</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00082">nfsft_wisdom::beta</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a46516d6ec71efab3c80eecd459ad20ee"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void SO3_gamma_row </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>gamma</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>m</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \gamma_{l}^{km}$" src="form_67.png"/> of Wigner-d functions for all degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. </p>
-<ul>
-<li>alpha A pointer to an array of doubles of size <img class="formulaInl" alt="$(2N+1)^2(N+1)$" src="form_65.png"/> </li>
-<li>m the first order </li>
-<li>n the second order </li>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00106">106</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00088">nfsft_wisdom::gamma</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a9ab913c454dd078bed0db8b4aa9365e1"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void SO3_alpha_matrix </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>alpha</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \alpha_{l}^{km}$" src="form_63.png"/> of Wigner-d functions for all order <img class="formulaInl" alt="$ m = -N,\ldots,N $" src="form_68.png"/> and degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. </p>
-<ul>
-<li>alpha A pointer to an array of doubles of size <img class="formulaInl" alt="$(2N+1)^2(N+1)$" src="form_65.png"/> </li>
-<li>n the second order </li>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00116">116</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00076">nfsft_wisdom::alpha</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a742f6babb80797e003835bc66cfe9080"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void SO3_beta_matrix </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>beta</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \beta_{l}^{km}$" src="form_66.png"/> of Wigner-d functions for all order <img class="formulaInl" alt="$ m = -N,\ldots,N $" src="form_68.png"/> and degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. </p>
-<ul>
-<li>alpha A pointer to an array of doubles of size <img class="formulaInl" alt="$(2N+1)^2(N+1)$" src="form_65.png"/> </li>
-<li>n the second order </li>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00130">130</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00076">nfsft_wisdom::alpha</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="aa9850cfec93784e536a728f13db4c5cb"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void SO3_gamma_matrix </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>gamma</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$ \gamma_{l}^{km}$" src="form_67.png"/> of Wigner-d functions for all order <img class="formulaInl" alt="$ m = -N,\ldots,N $" src="form_68.png"/> and degrees <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. </p>
-<ul>
-<li>alpha A pointer to an array of doubles of size <img class="formulaInl" alt="$(2N+1)^2(N+1)$" src="form_65.png"/> </li>
-<li>n the second order </li>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00144">144</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00076">nfsft_wisdom::alpha</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="aef802fd511b566392a8b2cbb9fcd6678"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void SO3_alpha_all </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>alpha</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\alpha_{l}^{km}$" src="form_69.png"/> of Wigner-d functions for all <img class="formulaInl" alt="$ k,m = -N,\ldots,N $" src="form_70.png"/> and <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. </p>
-<ul>
-<li>alpha A pointer to an array of doubles of size <img class="formulaInl" alt="$(2N+1)^2(N+1)$" src="form_65.png"/></li>
-</ul>
-<ul>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00160">160</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00076">nfsft_wisdom::alpha</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="aa981c92edca3fac2f04a7d3524b8425a"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void SO3_beta_all </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>beta</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\beta_{l}^{km}$" src="form_71.png"/> of Wigner-d functions for all <img class="formulaInl" alt="$ k,m = -N,\ldots,N $" src="form_70.png"/> and <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. </p>
-<ul>
-<li>alpha A pointer to an array of doubles of size <img class="formulaInl" alt="$(2N+1)^2(N+1)$" src="form_65.png"/></li>
-</ul>
-<ul>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00183">183</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00076">nfsft_wisdom::alpha</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a4ff3aa0c3afb226613100df410cbef7f"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void SO3_gamma_all </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>gamma</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>N</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Compute three-term-recurrence coefficients <img class="formulaInl" alt="$\gamma_{l}^{km}$" src="form_72.png"/> of Wigner-d functions for all <img class="formulaInl" alt="$ k,m = -N,\ldots,N $" src="form_70.png"/> and <img class="formulaInl" alt="$ l= 0,\ldots,N $" src="form_64.png"/>. </p>
-<ul>
-<li>alpha A pointer to an array of doubles of size <img class="formulaInl" alt="$(2N+1)^2(N+1)$" src="form_65.png"/></li>
-</ul>
-<ul>
-<li>N The upper bound <img class="formulaInl" alt="$N$" src="form_5.png"/>. </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00200">200</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00076">nfsft_wisdom::alpha</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a86975b8841ed9b6bb3e1484130658f19"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">void eval_wigner </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>y</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>size</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>l</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>alpha</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>beta</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>gamma</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Evaluates Wigner-d functions <img class="formulaInl" alt="$d_l^{km}(x,c)$" src="form_73.png"/> using the Clenshaw-algorithm. </p>
-<ul>
-<li>x A pointer to an array of nodes where the function is to be evaluated </li>
-<li>y A pointer to an array where the function values are returned </li>
-<li>size The length of x and y </li>
-<li>l The degree <img class="formulaInl" alt="$l$" src="form_60.png"/> </li>
-<li>alpha A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\alpha_c^{km},\ldots,\alpha_{c+l}^{km}$" src="form_74.png"/> </li>
-<li>beta A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\beta_c^{km},\ldots,\beta_{c+l}^{km}$" src="form_75.png"/> </li>
-<li>gamma A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\gamma_c^{km},\ldots,\gamma_{c+l}^{km}$" src="form_76.png"/> </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00217">217</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="ae5933af03f4536a70ddfc744f16c9c55"></a>
-<div class="memitem">
-<div class="memproto">
-<table class="mlabels">
- <tr>
- <td class="mlabels-left">
- <table class="memname">
- <tr>
- <td class="memname">int eval_wigner_thresh </td>
- <td>(</td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>x</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>y</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>size</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>l</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>alpha</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>beta</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double * </td>
- <td class="paramname"><em>gamma</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double </td>
- <td class="paramname"><em>threshold</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
- </td>
- <td class="mlabels-right">
-<span class="mlabels"><span class="mlabel">inline</span></span> </td>
- </tr>
-</table>
-</div><div class="memdoc">
-
-<p>Evaluates Wigner-d functions <img class="formulaInl" alt="$d_l^{km}(x,c)$" src="form_73.png"/> using the Clenshaw-algorithm if it not exceeds a given threshold. </p>
-<ul>
-<li>x A pointer to an array of nodes where the function is to be evaluated </li>
-<li>y A pointer to an array where the function values are returned </li>
-<li>size The length of x and y </li>
-<li>l The degree <img class="formulaInl" alt="$l$" src="form_60.png"/> </li>
-<li>alpha A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\alpha_c^{km},\ldots,\alpha_{c+l}^{km}$" src="form_74.png"/> </li>
-<li>beta A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\beta_c^{km},\ldots,\beta_{c+l}^{km}$" src="form_75.png"/> </li>
-<li>gamma A pointer to an array containing the recurrence coefficients <img class="formulaInl" alt="$\gamma_c^{km},\ldots,\gamma_{c+l}^{km}$" src="form_76.png"/> </li>
-<li>threshold The threshold </li>
-</ul>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00262">262</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-<p>References <a class="el" href="kernel_2nfsft_2api_8h_source.html#l00093">nfsft_wisdom::threshold</a>.</p>
-
-</div>
-</div>
-<a class="anchor" id="a6c43c1f82cf3efa9cb1343ec9dcd07ed"></a>
-<div class="memitem">
-<div class="memproto">
- <table class="memname">
- <tr>
- <td class="memname">double wigner_start </td>
- <td>(</td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n1</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">int </td>
- <td class="paramname"><em>n2</em>, </td>
- </tr>
- <tr>
- <td class="paramkey"></td>
- <td></td>
- <td class="paramtype">double </td>
- <td class="paramname"><em>theta</em> </td>
- </tr>
- <tr>
- <td></td>
- <td>)</td>
- <td></td><td></td>
- </tr>
- </table>
-</div><div class="memdoc">
-
-<p>A method used for debugging, gives the values to start the "old" three-term recurrence generates <img class="formulaInl" alt="$ d^{km}_l(cos(theta)) $" src="form_77.png"/> WHERE THE DEGREE l OF THE FUNCTION IS EQUAL TO THE MAXIMUM OF ITS ORDERS. </p>
-<ul>
-<li>theta the argument of </li>
-<li>n1 the first order </li>
-<li>n2 the second order</li>
-</ul>
-<dl class="section return"><dt>Returns:</dt><dd>the function value <img class="formulaInl" alt="$ d^{km}_l(cos(theta)) $" src="form_77.png"/> </dd></dl>
-
-<p>Definition at line <a class="el" href="wigner_8c_source.html#l00319">319</a> of file <a class="el" href="wigner_8c_source.html">wigner.c</a>.</p>
-
-</div>
-</div>
-</div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/html/wigner_8h_source.html b/doc/api/html/wigner_8h_source.html
deleted file mode 100644
index 0a74167..0000000
--- a/doc/api/html/wigner_8h_source.html
+++ /dev/null
@@ -1,95 +0,0 @@
-<html>
- <head>
- <meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"/>
- <title>
- NFFT 3.2.3 API Reference - wigner.h Source File
- </title>
- <link href="doxygen.css" rel="stylesheet" type="text/css"/>
- <link href="tabs.css" rel="stylesheet" type="text/css"/>
- </head>
- <body>
- <table>
- <tr>
- <td align="left" valign="top">
- <img src="images/logo.png" alt="NFFT Logo" style="frame-width:0px;margin:0px;padding-top:11px">
- </td>
- <td align="left" valign="top" width="100%" style="frame-width:0px;margin:0px;padding:0px;font-size:55px">
- 3.2.3
- </td>
- </tr>
- </table>
-<!-- Generated by Doxygen 1.8.1 -->
- <div id="navrow1" class="tabs">
- <ul class="tablist">
- <li><a href="index.html"><span>Main Page</span></a></li>
- <li><a href="modules.html"><span>Modules</span></a></li>
- <li><a href="annotated.html"><span>Data Structures</span></a></li>
- <li class="current"><a href="files.html"><span>Files</span></a></li>
- </ul>
- </div>
- <div id="navrow2" class="tabs2">
- <ul class="tablist">
- <li><a href="files.html"><span>File List</span></a></li>
- <li><a href="globals.html"><span>Globals</span></a></li>
- </ul>
- </div>
-<div id="nav-path" class="navpath">
- <ul>
-<li class="navelem"><a class="el" href="dir_dc43877d82dd332f9fb2071fcca799d6.html">kernel</a></li><li class="navelem"><a class="el" href="dir_8f3c7156d7272f1462551f3a6c5fabd1.html">nfsoft</a></li> </ul>
-</div>
-</div><!-- top -->
-<div class="header">
- <div class="headertitle">
-<div class="title">wigner.h</div> </div>
-</div><!--header-->
-<div class="contents">
-<a href="wigner_8h.html">Go to the documentation of this file.</a><div class="fragment"><div class="line"><a name="l00001"></a><span class="lineno"> 1</span> <span class="comment">/*</span></div>
-<div class="line"><a name="l00002"></a><span class="lineno"> 2</span> <span class="comment"> * Copyright (c) 2002, 2012 Jens Keiner, Stefan Kunis, Daniel Potts</span></div>
-<div class="line"><a name="l00003"></a><span class="lineno"> 3</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00004"></a><span class="lineno"> 4</span> <span class="comment"> * This program is free software; you can redistribute it and/or modify it under</span></div>
-<div class="line"><a name="l00005"></a><span class="lineno"> 5</span> <span class="comment"> * the terms of the GNU General Public License as published by the Free Software</span></div>
-<div class="line"><a name="l00006"></a><span class="lineno"> 6</span> <span class="comment"> * Foundation; either version 2 of the License, or (at your option) any later</span></div>
-<div class="line"><a name="l00007"></a><span class="lineno"> 7</span> <span class="comment"> * version.</span></div>
-<div class="line"><a name="l00008"></a><span class="lineno"> 8</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00009"></a><span class="lineno"> 9</span> <span class="comment"> * This program is distributed in the hope that it will be useful, but WITHOUT</span></div>
-<div class="line"><a name="l00010"></a><span class="lineno"> 10</span> <span class="comment"> * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS</span></div>
-<div class="line"><a name="l00011"></a><span class="lineno"> 11</span> <span class="comment"> * FOR A PARTICULAR PURPOSE. See the GNU General Public License for more</span></div>
-<div class="line"><a name="l00012"></a><span class="lineno"> 12</span> <span class="comment"> * details.</span></div>
-<div class="line"><a name="l00013"></a><span class="lineno"> 13</span> <span class="comment"> *</span></div>
-<div class="line"><a name="l00014"></a><span class="lineno"> 14</span> <span class="comment"> * You should have received a copy of the GNU General Public License along with</span></div>
-<div class="line"><a name="l00015"></a><span class="lineno"> 15</span> <span class="comment"> * this program; if not, write to the Free Software Foundation, Inc., 51</span></div>
-<div class="line"><a name="l00016"></a><span class="lineno"> 16</span> <span class="comment"> * Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.</span></div>
-<div class="line"><a name="l00017"></a><span class="lineno"> 17</span> <span class="comment"> */</span></div>
-<div class="line"><a name="l00018"></a><span class="lineno"> 18</span> </div>
-<div class="line"><a name="l00019"></a><span class="lineno"> 19</span> <span class="comment">/* $Id: wigner.h 3775 2012-06-02 16:39:48Z keiner $ */</span></div>
-<div class="line"><a name="l00020"></a><span class="lineno"> 20</span> </div>
-<div class="line"><a name="l00028"></a><span class="lineno"> 28</span> <span class="preprocessor">#ifndef WIGNER_H</span></div>
-<div class="line"><a name="l00029"></a><span class="lineno"> 29</span> <span class="preprocessor"></span><span class="preprocessor">#define WIGNER_H</span></div>
-<div class="line"><a name="l00030"></a><span class="lineno"> 30</span> <span class="preprocessor"></span></div>
-<div class="line"><a name="l00039"></a><span class="lineno"> 39</span> <span class="keywordtype">double</span> SO3_alpha(<span class="keywordtype">int</span> k, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> l);</div>
-<div class="line"><a name="l00048"></a><span class="lineno"> 48</span> <span class="keywordtype">double</span> SO3_beta(<span class="keywordtype">int</span> k, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> l);</div>
-<div class="line"><a name="l00057"></a><span class="lineno"> 57</span> <span class="keywordtype">double</span> SO3_gamma(<span class="keywordtype">int</span> k, <span class="keywordtype">int</span> m, <span class="keywordtype">int</span> l);</div>
-<div class="line"><a name="l00067"></a><span class="lineno"> 67</span> <span class="keywordtype">void</span> SO3_alpha_row(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> m, < [...]
-<div class="line"><a name="l00077"></a><span class="lineno"> 77</span> <span class="keywordtype">void</span> SO3_beta_row(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> m, <sp [...]
-<div class="line"><a name="l00087"></a><span class="lineno"> 87</span> <span class="keywordtype">void</span> SO3_gamma_row(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> m, < [...]
-<div class="line"><a name="l00097"></a><span class="lineno"> 97</span> <span class="keywordtype">void</span> SO3_alpha_matrix(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> n [...]
-<div class="line"><a name="l00107"></a><span class="lineno"> 107</span> <span class="keywordtype">void</span> SO3_beta_matrix(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> n);</div>
-<div class="line"><a name="l00117"></a><span class="lineno"> 117</span> <span class="keywordtype">void</span> SO3_gamma_matrix(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>, <span class="keywordtype">int</span> N, <span class="keywordtype">int</span> n [...]
-<div class="line"><a name="l00118"></a><span class="lineno"> 118</span> </div>
-<div class="line"><a name="l00127"></a><span class="lineno"> 127</span> <span class="keywordtype">void</span> SO3_alpha_all(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">alpha</a>, <span class="keywordtype">int</span> N);</div>
-<div class="line"><a name="l00136"></a><span class="lineno"> 136</span> <span class="keywordtype">void</span> SO3_beta_all(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>, <span class="keywordtype">int</span> N);</div>
-<div class="line"><a name="l00145"></a><span class="lineno"> 145</span> <span class="keywordtype">void</span> SO3_gamma_all(<span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">gamma</a>, <span class="keywordtype">int</span> N);</div>
-<div class="line"><a name="l00146"></a><span class="lineno"> 146</span> </div>
-<div class="line"><a name="l00162"></a><span class="lineno"> 162</span> <span class="keywordtype">void</span> eval_wigner(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> size, <span class="keywordtype">int</span> l, <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots [...]
-<div class="line"><a name="l00163"></a><span class="lineno"> 163</span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>, <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title=" [...]
-<div class="line"><a name="l00180"></a><span class="lineno"> 180</span> <span class="keywordtype">int</span> eval_wigner_thresh(<span class="keywordtype">double</span> *x, <span class="keywordtype">double</span> *y, <span class="keywordtype">int</span> size, <span class="keywordtype">int</span> l, <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a755da8bd28cc1322415bd0ddcfceaf4e" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0, [...]
-<div class="line"><a name="l00181"></a><span class="lineno"> 181</span> <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a6bcfe5201d3fed513c2cdb37832ee255" title="Precomputed recursion coefficients /f$^n/f$ for /f$k = 0,/ldots, N_{{max}}; n=-k,/ldots,k/f$ of associated Legendre-functions /f$P_k^n/f$.">beta</a>, <span class="keywordtype">double</span> *<a class="code" href="structnfsft__wisdom.html#a1703c0339b14ee1f0956d3e394f598e2" title=" [...]
-<div class="line"><a name="l00182"></a><span class="lineno"> 182</span> </div>
-<div class="line"><a name="l00195"></a><span class="lineno"> 195</span> <span class="keywordtype">double</span> wigner_start(<span class="keywordtype">int</span> n1, <span class="keywordtype">int</span> n2, <span class="keywordtype">double</span> theta);</div>
-<div class="line"><a name="l00196"></a><span class="lineno"> 196</span> </div>
-<div class="line"><a name="l00197"></a><span class="lineno"> 197</span> <span class="preprocessor">#endif</span></div>
-</div><!-- fragment --></div><!-- contents -->
- <hr size="1"/>
- Generated on Tue Apr 30 2013 by Doxygen 1.8.1
- </body>
-</html>
diff --git a/doc/api/latex/images/sphere.eps b/doc/api/latex/images/sphere.eps
deleted file mode 100644
index 94c7537..0000000
--- a/doc/api/latex/images/sphere.eps
+++ /dev/null
@@ -1,99 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
%%Title: (sphere.pdf)
%%Version: 1 4
%%Creator: Adobe Acrobat 7.0
%%CreationDate: 26/10/06 22:12
%%DocumentData: Clean7Bit
%%LanguageLevel: 2
%ADO_ContainsXMP: MainFirst
%%BoundingBox: 0 0 345 326
%%HiResBoundingBox: 0.0 0.0 345.0 326.0
%%Pages: 0
%%DocumentProcessColors: Cyan Magenta Yellow Black
%%DocumentSuppliedResources:
%%+ procset (Adobe Acrobat - PDF operators) 1.2 0
%%+ procset (Adobe Acrobat - type operators) 1.2 0
%%EndComments
%%BeginProlog
%%EndProlog
%%BeginSetup
%ADOPrintSettings: L2 W0 VM op crd os scsa T h ef bg ucr sf ef r b fa pr seps ttf hb EF t2 irt Printer/PostScript Color Management 0
-
%%BeginResource: procset l2check 6.0 1
%%Copyright: Copyright 1993,2001 Adobe Systems Incorporated. All Rights Reserved.
systemdict /languagelevel known
{ systemdict /languagelevel get 1 eq }
{ true }
ifelse
{
initgraphics /Helvetica findfont 18 scalefont setfont
72 600 moveto (Error: This application does not support) dup show
72 580 moveto (printing to a PostScript Language Level 1 printer.) dup show
exch = =
/Times-Roman findfont 16 scalefont setfont
72 500 moveto (As a workaround, try selecting Print As Image from) show
72 480 moveto (the Advanced Print dialog.) show
showpage
quit
}
if
%%EndResource
%%BeginResource: file Pscript_CFF PSVER
userdict /ct_CffDict 6 dict put
ct_CffDict begin
/F0Subr
{
systemdict /internaldict known
{
1183615869 systemdict /internaldict get exec
/FlxProc known {save true} {false} ifelse
}
{
userdict /internaldict known not
{
userdict /internaldict
{
count 0 eq
{/internaldict errordict /invalidaccess get exec} if
dup type /integertype ne
{/internaldict errordict /invalidaccess get exec} if
dup 1183615869 eq
{pop 0}
{/internaldict errordict /invalidaccess get exec}
ifelse
}
dup 14 get 1 25 dict put
bind executeonly put
} if
1183615869 userdict /internaldict get exec
/FlxProc known {save true} {false} ifelse
} ifelse
[
systemdict /internaldict known not
{ 100 dict /begin cvx /mtx matrix /def cvx } if
systemdict /currentpacking known {currentpacking true setpacking} if
{
systemdict /internaldict known {
1183615869 systemdict /internaldict get exec
dup /$FlxDict known not {
dup dup length exch maxlength eq
{ pop userdict dup /$FlxDict known not
{ 100 dict begin /mtx matrix def
dup /$FlxDict currentdict put end } if }
{ 100 dict begin /mtx matrix def
dup /$FlxDict currentdict put end }
ifelse
} if /$FlxDict get begin } if
grestore
/exdef {exch def} def
/dmin exch abs 100 div def
/epX exdef /epY exdef
/c4y2 exdef /c4x2 exdef /c4y1 exdef /c4x1 exdef /c4y0 exdef /c4x0 exdef
/c3y2 exdef /c3x2 exdef /c3y1 exdef /c3x1 exdef /c3y0 exdef /c3x0 exdef
/c1y2 exdef /c1x2 exdef /c2x2 c4x2 def /c2y2 c4y2 def
/yflag c1y2 c3y2 sub abs c1x2 c3x2 sub abs gt def
/PickCoords {
{c1x0 c1y0 c1x1 c1y1 c1x2 c1y2 c2x0 c2y0 c2x1 c2y1 c2x2 c2y2}
{c3x0 c3y0 c3x1 c3y1 c3x2 c3y2 c4x0 c4y0 c4x1 c4y1 c4x2 c4y2}
ifelse
/y5 exdef /x5 exdef /y4 exdef /x4 exdef /y3 exdef /x3 exdef
/y2 exdef /x2 exdef /y1 exdef /x1 exdef /y0 exdef /x0 exdef
} def
mtx currentmatrix pop
mtx 0 get abs .00001 lt mtx 3 get abs .00001 lt or
{/flipXY -1 def}
{mtx 1 get abs .00001 lt mtx 2 get abs .00001 lt or
{/flipXY 1 def}
{/flipXY 0 def}
ifelse }
ifelse
/erosion 1 def
systemdict /internaldict known {
1183615869 systemdict /internaldict get exec dup
/erosion known
{/erosion get /erosion exch def}
{pop}
ifelse
} if
yflag
{
flipXY 0 eq c3y2 c4y2 eq or
{false PickCoords}
{
/shrink c3y2 c4y2 eq
{0}{c1y2 c4y2 sub c3y2 c4y2 sub div abs} ifelse def
/yshrink {c4y2 sub shrink mul c4y2 add} def
/c1y0 c3y0 yshrink def /c1y1 c3y1 yshrink def
/c2y0 c4y0 yshrink def /c2y1 c4y1 yshrink def
/c1x0 c3x0 def /c1x1 c3x1 def /c2x0 c4x0 def /c2x1 c4x1 def
/dY 0 c3y2 c1y2 sub round
dtransform flipXY 1 eq {exch} if pop abs def
dY dmin lt PickCoords
y2 c1y2 sub abs 0.001 gt {
c1x2 c1y2 transform flipXY 1 eq {exch} if
/cx exch def /cy exch def
/dY 0 y2 c1y2 sub round dtransform flipXY 1 eq {exch}
if pop def
dY round dup 0 ne
{/dY exdef }
{pop dY 0 lt {-1}{1} ifelse /dY exdef}
ifelse
/erode PaintType 2 ne erosion 0.5 ge and def
erode {/cy cy 0.5 sub def} if
/ey cy dY add def
/ey ey ceiling ey sub ey floor add def
erode {/ey ey 0.5 add def} if
ey cx flipXY 1 eq {exch} if itransform exch pop
y2 sub /eShift exch def
/y1 y1 eShift add def /y2 y2 eShift add def /y3 y3
eShift add def
} if
} ifelse
}
{
flipXY 0 eq c3x2 c4x2 eq or
{false PickCoords }
{ /shrink c3x2 c4x2 eq
{0}{c1x2 c4x2 sub c3x2 c4x2 sub div abs} ifelse def
/xshrink {c4x2 sub shrink mul c4x2 add} def
/c1x0 c3x0 xshrink def /c1x1 c3x1 xshrink def
/c2x0 c4x0 xshrink def /c2x1 c4x1 xshrink def
/c1y0 c3y0 def /c1y1 c3y1 def /c2y0 c4y0 def /c2y1 c4y1 def
/dX c3x2 c1x2 sub round 0 dtransform
flipXY -1 eq {exch} if pop abs def
dX dmin lt PickCoords
x2 c1x2 sub abs 0.001 gt {
c1x2 c1y2 transform flipXY -1 eq {exch} if
/cy exch def /cx exch def
/dX x2 c1x2 sub round 0 dtransform flipXY -1 eq {exch} if pop def
dX round dup 0 ne
{/dX exdef}
{pop dX 0 lt {-1}{1} ifelse /dX exdef}
ifelse
/erode PaintType 2 ne erosion .5 ge and def
erode {/cx cx .5 sub def} if
/ex cx dX add def
/ex ex ceiling ex sub ex floor add def
erode {/ex ex .5 add def} if
ex cy flipXY -1 eq {exch} if itransform pop
x2 sub /eShift exch def
/x1 x1 eShift add def /x2 x2 eShift add def /x3 x3 eShift add def
} if
} ifelse
} ifelse
x2 x5 eq y2 y5 eq or
{x5 y5 lineto }
{x0 y0 x1 y1 x2 y2 curveto
x3 y3 x4 y4 x5 y5 curveto}
ifelse
epY epX
}
systemdict /currentpacking known {exch setpacking} if
/exec cvx /end cvx
] cvx
executeonly
exch
{pop true exch restore}
{
systemdict /internaldict known not
{1183615869 userdict /internaldict get exec
exch /FlxProc exch put true}
{1183615869 systemdict /internaldict get exec
dup length exch maxlength eq
{false}
{1183615869 systemdict /internaldict get exec
exch /FlxProc exch put true}
ifelse}
ifelse
} ifelse
{
systemdict /internaldict known
{1183615869 systemdict /internaldict get exec /FlxProc get exec}
{1183615869 userdict /internaldict get exec /FlxProc get exec}
ifelse
} if
} executeonly def
/F1Subr
{gsave currentpoint newpath moveto} bind def
/F2Subr
{currentpoint grestore gsave currentpoint newpath moveto} bind def
/HSSubr
{
systemdict /internaldict known not
{pop 3}
{1183615869 systemdict /internaldict get exec
dup /startlock known
{/startlock get exec}
{dup /strtlck known
{/strtlck get exec}
{pop 3}
ifelse}
ifelse}
ifelse
} bind def
end
%%EndResource
%%BeginResource: procset Adobe_CoolType_Utility_MAKEOCF 1.19 0
%%Copyright: Copyright 1987-2003 Adobe Systems Incorporated.
%%Version: 1.19 0
systemdict /languagelevel known dup
{ currentglobal false setglobal }
{ false }
ifelse
exch
userdict /Adobe_CoolType_Utility 2 copy known
{ 2 copy get dup maxlength 25 add dict copy }
{ 25 dict }
ifelse put
Adobe_CoolType_Utility
begin
/ct_Level2? exch def
/ct_Clone? 1183615869 internaldict dup
/CCRun known not
exch /eCCRun known not
ct_Level2? and or def
ct_Level2?
{ globaldict begin currentglobal true setglobal }
if
/ct_AddStdCIDMap
ct_Level2?
{ {
((Hex) 57 StartData
0615 1e27 2c39 1c60 d8a8 cc31 fe2b f6e0
7aa3 e541 e21c 60d8 a8c9 c3d0 6d9e 1c60
d8a8 c9c2 02d7 9a1c 60d8 a849 1c60 d8a8
cc36 74f4 1144 b13b 77) 0 () /SubFileDecode filter cvx exec
} }
{ {
<BAB431EA07F209EB8C4348311481D9D3F76E3D15246555577D87BC510ED54E
118C39697FA9F6DB58128E60EB8A12FA24D7CDD2FA94D221FA9EC8DA3E5E6A1C
4ACECC8C2D39C54E7C946031DD156C3A6B4A09AD29E1867A> eexec
} }
ifelse bind def
userdict /cid_extensions known
dup { cid_extensions /cid_UpdateDB known and } if
{
cid_extensions
begin
/cid_GetCIDSystemInfo
{
1 index type /stringtype eq
{ exch cvn exch }
if
cid_extensions
begin
dup load 2 index known
{
2 copy
cid_GetStatusInfo
dup null ne
{
1 index load
3 index get
dup null eq
{ pop pop cid_UpdateDB }
{
exch
1 index /Created get eq
{ exch pop exch pop }
{ pop cid_UpdateDB }
ifelse
}
ifelse
}
{ pop cid_UpdateDB }
ifelse
}
{ cid_UpdateDB }
ifelse
end
} bind def
end
}
if
ct_Level2?
{ end setglobal }
if
/ct_UseNativeCapability? systemdict /composefont known def
/ct_MakeOCF 35 dict def
/ct_Vars 25 dict def
/ct_GlyphDirProcs 6 dict def
/ct_BuildCharDict 15 dict dup
begin
/charcode 2 string def
/dst_string 1500 string def
/nullstring () def
/usewidths? true def
end def
ct_Level2? { setglobal } { pop } ifelse
ct_GlyphDirProcs
begin
/GetGlyphDirectory
{
systemdict /languagelevel known
{ pop /CIDFont findresource /GlyphDirectory get }
{
1 index /CIDFont findresource /GlyphDirectory
get dup type /dicttype eq
{
dup dup maxlength exch length sub 2 index lt
{
dup length 2 index add dict copy 2 index
/CIDFont findresource/GlyphDirectory 2 index put
}
if
}
if
exch pop exch pop
}
ifelse
+
} def
/+
{
systemdict /languagelevel known
{
currentglobal false setglobal
3 dict begin
/vm exch def
}
{ 1 dict begin }
ifelse
/$ exch def
systemdict /languagelevel known
{
vm setglobal
/gvm currentglobal def
$ gcheck setglobal
}
if
? { $ begin } if
} def
/? { $ type /dicttype eq } def
/| {
userdict /Adobe_CoolType_Data known
{
Adobe_CoolType_Data /AddWidths? known
{
currentdict Adobe_CoolType_Data
begin
begin
AddWidths?
{
Adobe_CoolType_Data /CC 3 index put
? { def } { $ 3 1 roll put } ifelse
CC charcode exch 1 index 0 2 index 256 idiv put
1 index exch 1 exch 256 mod put
stringwidth 2 array astore
currentfont /Widths get exch CC exch put
}
{ ? { def } { $ 3 1 roll put } ifelse }
ifelse
end
end
}
{ ? { def } { $ 3 1 roll put } ifelse } ifelse
}
{ ? { def } { $ 3 1 roll put } ifelse }
ifelse
} def
/!
{
? { end } if
systemdict /languagelevel known
{ gvm setglobal }
if
end
} def
/: { string currentfile exch readstring pop } executeonly def
end
ct_MakeOCF
begin
/ct_cHexEncoding
[/c00/c01/c02/c03/c04/c05/c06/c07/c08/c09/c0A/c0B/c0C/c0D/c0E/c0F/c10/c11/c12
/c13/c14/c15/c16/c17/c18/c19/c1A/c1B/c1C/c1D/c1E/c1F/c20/c21/c22/c23/c24/c25
/c26/c27/c28/c29/c2A/c2B/c2C/c2D/c2E/c2F/c30/c31/c32/c33/c34/c35/c36/c37/c38
/c39/c3A/c3B/c3C/c3D/c3E/c3F/c40/c41/c42/c43/c44/c45/c46/c47/c48/c49/c4A/c4B
/c4C/c4D/c4E/c4F/c50/c51/c52/c53/c54/c55/c56/c57/c58/c59/c5A/c5B/c5C/c5D/c5E
/c5F/c60/c61/c62/c63/c64/c65/c66/c67/c68/c69/c6A/c6B/c6C/c6D/c6E/c6F/c70/c71
/c72/c73/c74/c75/c76/c77/c78/c79/c7A/c7B/c7C/c7D/c7E/c7F/c80/c81/c82/c83/c84
/c85/c86/c87/c88/c89/c8A/c8B/c8C/c8D/c8E/c8F/c90/c91/c92/c93/c94/c95/c96/c97
/c98/c99/c9A/c9B/c9C/c9D/c9E/c9F/cA0/cA1/cA2/cA3/cA4/cA5/cA6/cA7/cA8/cA9/cAA
/cAB/cAC/cAD/cAE/cAF/cB0/cB1/cB2/cB3/cB4/cB5/cB6/cB7/cB8/cB9/cBA/cBB/cBC/cBD
/cBE/cBF/cC0/cC1/cC2/cC3/cC4/cC5/cC6/cC7/cC8/cC9/cCA/cCB/cCC/cCD/cCE/cCF/cD0
/cD1/cD2/cD3/cD4/cD5/cD6/cD7/cD8/cD9/cDA/cDB/cDC/cDD/cDE/cDF/cE0/cE1/cE2/cE3
/cE4/cE5/cE6/cE7/cE8/cE9/cEA/cEB/cEC/cED/cEE/cEF/cF0/cF1/cF2/cF3/cF4/cF5/cF6
/cF7/cF8/cF9/cFA/cFB/cFC/cFD/cFE/cFF] def
/ct_CID_STR_SIZE 8000 def
/ct_mkocfStr100 100 string def
/ct_defaultFontMtx [.001 0 0 .001 0 0] def
/ct_1000Mtx [1000 0 0 1000 0 0] def
/ct_raise {exch cvx exch errordict exch get exec stop} bind def
/ct_reraise
{ cvx $error /errorname get (Error: ) print dup ( ) cvs print
errordict exch get exec stop
} bind def
/ct_cvnsi
{
1 index add 1 sub 1 exch 0 4 1 roll
{
2 index exch get
exch 8 bitshift
add
}
for
exch pop
} bind def
/ct_GetInterval
{
Adobe_CoolType_Utility /ct_BuildCharDict get
begin
/dst_index 0 def
dup dst_string length gt
{ dup string /dst_string exch def }
if
1 index ct_CID_STR_SIZE idiv
/arrayIndex exch def
2 index arrayIndex get
2 index
arrayIndex ct_CID_STR_SIZE mul
sub
{
dup 3 index add 2 index length le
{
2 index getinterval
dst_string dst_index 2 index putinterval
length dst_index add /dst_index exch def
exit
}
{
1 index length 1 index sub
dup 4 1 roll
getinterval
dst_string dst_index 2 index putinterval
pop dup dst_index add /dst_index exch def
sub
/arrayIndex arrayIndex 1 add def
2 index dup length arrayIndex gt
{ arrayIndex get }
{
pop
exit
}
ifelse
0
}
ifelse
}
loop
pop pop pop
dst_string 0 dst_index getinterval
end
} bind def
ct_Level2?
{
/ct_resourcestatus
currentglobal mark true setglobal
{ /unknowninstancename /Category resourcestatus }
stopped
{ cleartomark setglobal true }
{ cleartomark currentglobal not exch setglobal }
ifelse
{
{
mark 3 1 roll /Category findresource
begin
ct_Vars /vm currentglobal put
({ResourceStatus} stopped) 0 () /SubFileDecode filter cvx exec
{ cleartomark false }
{ { 3 2 roll pop true } { cleartomark false } ifelse }
ifelse
ct_Vars /vm get setglobal
end
}
}
{ { resourcestatus } }
ifelse bind def
/CIDFont /Category ct_resourcestatus
{ pop pop }
{
currentglobal true setglobal
/Generic /Category findresource
dup length dict copy
dup /InstanceType /dicttype put
/CIDFont exch /Category defineresource pop
setglobal
}
ifelse
ct_UseNativeCapability?
{
/CIDInit /ProcSet findresource begin
12 dict begin
begincmap
/CIDSystemInfo 3 dict dup begin
/Registry (Adobe) def
/Ordering (Identity) def
/Supplement 0 def
end def
/CMapName /Identity-H def
/CMapVersion 1.000 def
/CMapType 1 def
1 begincodespacerange
<0000> <FFFF>
endcodespacerange
1 begincidrange
<0000> <FFFF> 0
endcidrange
endcmap
CMapName currentdict /CMap defineresource pop
end
end
}
if
}
{
/ct_Category 2 dict begin
/CIDFont 10 dict def
/ProcSet 2 dict def
currentdict
end
def
/defineresource
{
ct_Category 1 index 2 copy known
{
get
dup dup maxlength exch length eq
{
dup length 10 add dict copy
ct_Category 2 index 2 index put
}
if
3 index 3 index put
pop exch pop
}
{ pop pop /defineresource /undefined ct_raise }
ifelse
} bind def
/findresource
{
ct_Category 1 index 2 copy known
{
get
2 index 2 copy known
{ get 3 1 roll pop pop}
{ pop pop /findresource /undefinedresource ct_raise }
ifelse
}
{ pop pop /findresource /undefined ct_raise }
ifelse
} bind def
/resourcestatus
{
ct_Category 1 index 2 copy known
{
get
2 index known
exch pop exch pop
{
0 -1 true
}
{
false
}
ifelse
}
{ pop pop /findresource /undefined ct_raise }
ifelse
} bind def
/ct_resourcestatus /resourcestatus load def
}
ifelse
/ct_CIDInit 2 dict
begin
/ct_cidfont_stream_init
{
{
dup (Binary) eq
{
pop
null
currentfile
ct_Level2?
{
{ cid_BYTE_COUNT () /SubFileDecode filter }
stopped
{ pop pop pop }
if
}
if
/readstring load
exit
}
if
dup (Hex) eq
{
pop
currentfile
ct_Level2?
{
{ null exch /ASCIIHexDecode filter /readstring }
stopped
{ pop exch pop (>) exch /readhexstring }
if
}
{ (>) exch /readhexstring }
ifelse
load
exit
}
if
/StartData /typecheck ct_raise
}
loop
cid_BYTE_COUNT ct_CID_STR_SIZE le
{
2 copy cid_BYTE_COUNT string exch exec
pop
1 array dup
3 -1 roll
0 exch put
}
{
cid_BYTE_COUNT ct_CID_STR_SIZE div ceiling cvi
dup array exch 2 sub 0 exch 1 exch
{
2 copy
5 index
ct_CID_STR_SIZE
string
6 index exec
pop
put
pop
}
for
2 index
cid_BYTE_COUNT ct_CID_STR_SIZE mod string
3 index exec
pop
1 index exch
1 index length 1 sub
exch put
}
ifelse
cid_CIDFONT exch /GlyphData exch put
2 index null eq
{
pop pop pop
}
{
pop /readstring load
1 string exch
{
3 copy exec
pop
dup length 0 eq
{
pop pop pop pop pop
true exit
}
if
4 index
eq
{
pop pop pop pop
false exit
}
if
}
loop
pop
}
ifelse
} bind def
/StartData
{
mark
{
currentdict
dup /FDArray get 0 get /FontMatrix get
0 get 0.001 eq
{
dup /CDevProc known not
{
/CDevProc 1183615869 internaldict /stdCDevProc 2 copy known
{ get }
{
pop pop
{ pop pop pop pop pop 0 -1000 7 index 2 div 880 }
}
ifelse
def
}
if
}
{
/CDevProc
{
pop pop pop pop pop
0
1 cid_temp /cid_CIDFONT get
/FDArray get 0 get
/FontMatrix get 0 get div
7 index 2 div
1 index 0.88 mul
} def
}
ifelse
/cid_temp 15 dict def
cid_temp
begin
/cid_CIDFONT exch def
3 copy pop
dup /cid_BYTE_COUNT exch def 0 gt
{
ct_cidfont_stream_init
FDArray
{
/Private get
dup /SubrMapOffset known
{
begin
/Subrs SubrCount array def
Subrs
SubrMapOffset
SubrCount
SDBytes
ct_Level2?
{
currentdict dup /SubrMapOffset undef
dup /SubrCount undef
/SDBytes undef
}
if
end
/cid_SD_BYTES exch def
/cid_SUBR_COUNT exch def
/cid_SUBR_MAP_OFFSET exch def
/cid_SUBRS exch def
cid_SUBR_COUNT 0 gt
{
GlyphData cid_SUBR_MAP_OFFSET cid_SD_BYTES ct_GetInterval
0 cid_SD_BYTES ct_cvnsi
0 1 cid_SUBR_COUNT 1 sub
{
exch 1 index
1 add
cid_SD_BYTES mul cid_SUBR_MAP_OFFSET add
GlyphData exch cid_SD_BYTES ct_GetInterval
0 cid_SD_BYTES ct_cvnsi
cid_SUBRS 4 2 roll
GlyphData exch
4 index
1 index
sub
ct_GetInterval
dup length string copy put
}
for
pop
}
if
}
{ pop }
ifelse
}
forall
}
if
cleartomark pop pop
end
CIDFontName currentdict /CIDFont defineresource pop
end end
}
stopped
{ cleartomark /StartData ct_reraise }
if
} bind def
currentdict
end def
/ct_saveCIDInit
{
/CIDInit /ProcSet ct_resourcestatus
{ true }
{ /CIDInitC /ProcSet ct_resourcestatus }
ifelse
{
pop pop
/CIDInit /ProcSet findresource
ct_UseNativeCapability?
{ pop null }
{ /CIDInit ct_CIDInit /ProcSet defineresource pop }
ifelse
}
{ /CIDInit ct_CIDInit /ProcSet defineresource pop null }
ifelse
ct_Vars exch /ct_oldCIDInit exch put
} bind def
/ct_restoreCIDInit
{
ct_Vars /ct_oldCIDInit get dup null ne
{ /CIDInit exch /ProcSet defineresource pop }
{ pop }
ifelse
} bind def
/ct_BuildCharSetUp
{
1 index
begin
CIDFont
begin
Adobe_CoolType_Utility /ct_BuildCharDict get
begin
/ct_dfCharCode exch def
/ct_dfDict exch def
CIDFirstByte ct_dfCharCode add
dup CIDCount ge
{ pop 0 }
if
/cid exch def
{
GlyphDirectory cid 2 copy known
{ get }
{ pop pop nullstring }
ifelse
dup length FDBytes sub 0 gt
{
dup
FDBytes 0 ne
{ 0 FDBytes ct_cvnsi }
{ pop 0 }
ifelse
/fdIndex exch def
dup length FDBytes sub FDBytes exch getinterval
/charstring exch def
exit
}
{
pop
cid 0 eq
{ /charstring nullstring def exit }
if
/cid 0 def
}
ifelse
}
loop
} def
/ct_SetCacheDevice
{
0 0 moveto
dup stringwidth
3 -1 roll
true charpath
pathbbox
0 -1000
7 index 2 div 880
setcachedevice2
0 0 moveto
} def
/ct_CloneSetCacheProc
{
1 eq
{
stringwidth
pop -2 div -880
0 -1000 setcharwidth
moveto
}
{
usewidths?
{
currentfont /Widths get cid
2 copy known
{ get exch pop aload pop }
{ pop pop stringwidth }
ifelse
}
{ stringwidth }
ifelse
setcharwidth
0 0 moveto
}
ifelse
} def
/ct_Type3ShowCharString
{
ct_FDDict fdIndex 2 copy known
{ get }
{
currentglobal 3 1 roll
1 index gcheck setglobal
ct_Type1FontTemplate dup maxlength dict copy
begin
FDArray fdIndex get
dup /FontMatrix 2 copy known
{ get }
{ pop pop ct_defaultFontMtx }
ifelse
/FontMatrix exch dup length array copy def
/Private get
/Private exch def
/Widths rootfont /Widths get def
/CharStrings 1 dict dup /.notdef
<d841272cf18f54fc13> dup length string copy put def
currentdict
end
/ct_Type1Font exch definefont
dup 5 1 roll put
setglobal
}
ifelse
dup /CharStrings get 1 index /Encoding get
ct_dfCharCode get charstring put
rootfont /WMode 2 copy known
{ get }
{ pop pop 0 }
ifelse
exch
1000 scalefont setfont
ct_str1 0 ct_dfCharCode put
ct_str1 exch ct_dfSetCacheProc
ct_SyntheticBold
{
currentpoint
ct_str1 show
newpath
moveto
ct_str1 true charpath
ct_StrokeWidth setlinewidth
stroke
}
{ ct_str1 show }
ifelse
} def
/ct_Type4ShowCharString
{
ct_dfDict ct_dfCharCode charstring
FDArray fdIndex get
dup /FontMatrix get dup ct_defaultFontMtx ct_matrixeq not
{ ct_1000Mtx matrix concatmatrix concat }
{ pop }
ifelse
/Private get
Adobe_CoolType_Utility /ct_Level2? get not
{
ct_dfDict /Private
3 -1 roll
{ put }
1183615869 internaldict /superexec get exec
}
if
1183615869 internaldict
Adobe_CoolType_Utility /ct_Level2? get
{ 1 index }
{ 3 index /Private get mark 6 1 roll }
ifelse
dup /RunInt known
{ /RunInt get }
{ pop /CCRun }
ifelse
get exec
Adobe_CoolType_Utility /ct_Level2? get not
{ cleartomark }
if
} bind def
/ct_BuildCharIncremental
{
{
Adobe_CoolType_Utility /ct_MakeOCF get begin
ct_BuildCharSetUp
ct_ShowCharString
}
stopped
{ stop }
if
end
end
end
end
} bind def
/BaseFontNameStr (BF00) def
/ct_Type1FontTemplate 14 dict
begin
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/FontBBox [-250 -250 1250 1250] def
/Encoding ct_cHexEncoding def
/PaintType 0 def
currentdict
end def
/BaseFontTemplate 11 dict
begin
/FontMatrix [0.001 0 0 0.001 0 0] def
/FontBBox [-250 -250 1250 1250] def
/Encoding ct_cHexEncoding def
/BuildChar /ct_BuildCharIncremental load def
ct_Clone?
{
/FontType 3 def
/ct_ShowCharString /ct_Type3ShowCharString load def
/ct_dfSetCacheProc /ct_CloneSetCacheProc load def
/ct_SyntheticBold false def
/ct_StrokeWidth 1 def
}
{
/FontType 4 def
/Private 1 dict dup /lenIV 4 put def
/CharStrings 1 dict dup /.notdef <d841272cf18f54fc13> put def
/PaintType 0 def
/ct_ShowCharString /ct_Type4ShowCharString load def
}
ifelse
/ct_str1 1 string def
currentdict
end def
/BaseFontDictSize BaseFontTemplate length 5 add def
/ct_matrixeq
{
true 0 1 5
{
dup 4 index exch get exch 3 index exch get eq and
dup not
{ exit }
if
}
for
exch pop exch pop
} bind def
/ct_makeocf
{
15 dict
begin
exch /WMode exch def
exch /FontName exch def
/FontType 0 def
/FMapType 2 def
dup /FontMatrix known
{ dup /FontMatrix get /FontMatrix exch def }
{ /FontMatrix matrix def }
ifelse
/bfCount 1 index /CIDCount get 256 idiv 1 add
dup 256 gt { pop 256} if def
/Encoding
256 array 0 1 bfCount 1 sub { 2 copy dup put pop } for
bfCount 1 255 { 2 copy bfCount put pop } for
def
/FDepVector bfCount dup 256 lt { 1 add } if array def
BaseFontTemplate BaseFontDictSize dict copy
begin
/CIDFont exch def
CIDFont /FontBBox known
{ CIDFont /FontBBox get /FontBBox exch def }
if
CIDFont /CDevProc known
{ CIDFont /CDevProc get /CDevProc exch def }
if
currentdict
end
BaseFontNameStr 3 (0) putinterval
0 1 bfCount dup 256 eq { 1 sub } if
{
FDepVector exch
2 index BaseFontDictSize dict copy
begin
dup /CIDFirstByte exch 256 mul def
FontType 3 eq
{ /ct_FDDict 2 dict def }
if
currentdict
end
1 index 16
BaseFontNameStr 2 2 getinterval cvrs pop
BaseFontNameStr exch definefont
put
}
for
ct_Clone?
{ /Widths 1 index /CIDFont get /GlyphDirectory get length dict def }
if
FontName
currentdict
end
definefont
ct_Clone?
{
gsave
dup 1000 scalefont setfont
ct_BuildCharDict
begin
/usewidths? false def
currentfont /Widths get
begin
exch /CIDFont get /GlyphDirectory get
{
pop
dup charcode exch 1 index 0 2 index 256 idiv put
1 index exch 1 exch 256 mod put
stringwidth 2 array astore def
}
forall
end
/usewidths? true def
end
grestore
}
{ exch pop }
ifelse
} bind def
/ct_ComposeFont
{
ct_UseNativeCapability?
{
2 index /CMap ct_resourcestatus
{ pop pop exch pop }
{
/CIDInit /ProcSet findresource
begin
12 dict
begin
begincmap
/CMapName 3 index def
/CMapVersion 1.000 def
/CMapType 1 def
exch /WMode exch def
/CIDSystemInfo 3 dict dup
begin
/Registry (Adobe) def
/Ordering
CMapName ct_mkocfStr100 cvs
(Adobe-) search
{
pop pop
(-) search
{
dup length string copy
exch pop exch pop
}
{ pop (Identity)}
ifelse
}
{ pop (Identity) }
ifelse
def
/Supplement 0 def
end def
1 begincodespacerange
<0000> <FFFF>
endcodespacerange
1 begincidrange
<0000> <FFFF> 0
endcidrange
endcmap
CMapName currentdict /CMap defineresource pop
end
end
}
ifelse
composefont
}
{
3 2 roll pop
0 get /CIDFont findresource
ct_makeocf
}
ifelse
} bind def
/ct_MakeIdentity
{
ct_UseNativeCapability?
{
1 index /CMap ct_resourcestatus
{ pop pop }
{
/CIDInit /ProcSet findresource begin
12 dict begin
begincmap
/CMapName 2 index def
/CMapVersion 1.000 def
/CMapType 1 def
/CIDSystemInfo 3 dict dup
begin
/Registry (Adobe) def
/Ordering
CMapName ct_mkocfStr100 cvs
(Adobe-) search
{
pop pop
(-) search
{ dup length string copy exch pop exch pop }
{ pop (Identity) }
ifelse
}
{ pop (Identity) }
ifelse
def
/Supplement 0 def
end def
1 begincodespacerange
<0000> <FFFF>
endcodespacerange
1 begincidrange
<0000> <FFFF> 0
endcidrange
endcmap
CMapName currentdict /CMap defineresource pop
end
end
}
ifelse
composefont
}
{
exch pop
0 get /CIDFont findresource
ct_makeocf
}
ifelse
} bind def
currentdict readonly pop
end
end
%%EndResource
%%BeginFile: MMFauxFont.prc
%%Copyright: Copyright 1987-2001 Adobe Systems Incorporated.
%%All Rights Reserved.
userdict /ct_EuroDict 10 dict put
ct_EuroDict begin
/ct_CopyFont
{
{ 1 index /FID ne {def} {pop pop} ifelse} forall
} def
/ct_GetGlyphOutline
{
gsave
initmatrix newpath
exch findfont dup
length 1 add dict
begin
ct_CopyFont
/Encoding Encoding dup length array copy
dup
4 -1 roll
0 exch put
def
currentdict
end
/ct_EuroFont exch definefont
1000 scalefont setfont
0 0 moveto
[
<00> stringwidth
<00> false charpath
pathbbox
[
{/m cvx} {/l cvx} {/c cvx} {/cp cvx} pathforall
grestore
counttomark 8 add
}
def
/ct_MakeGlyphProc
{
] cvx
/ct_PSBuildGlyph cvx
] cvx
} def
/ct_PSBuildGlyph
{
gsave
8 -1 roll pop
7 1 roll
6 -2 roll ct_FontMatrix transform 6 2 roll
4 -2 roll ct_FontMatrix transform 4 2 roll
ct_FontMatrix transform
currentdict /PaintType 2 copy known {get 2 eq}{pop pop false} ifelse
dup 9 1 roll
{
currentdict /StrokeWidth 2 copy known
{
get 2 div
0 ct_FontMatrix dtransform pop
5 1 roll
4 -1 roll 4 index sub
4 1 roll
3 -1 roll 4 index sub
3 1 roll
exch 4 index add exch
4 index add
5 -1 roll pop
}
{
pop pop
}
ifelse
}
if
setcachedevice
ct_FontMatrix concat
ct_PSPathOps begin
exec
end
{
currentdict /StrokeWidth 2 copy known
{ get }
{ pop pop 0 }
ifelse
setlinewidth stroke
}
{
fill
}
ifelse
grestore
} def
/ct_PSPathOps 4 dict dup begin
/m {moveto} def
/l {lineto} def
/c {curveto} def
/cp {closepath} def
end
def
/ct_matrix1000 [1000 0 0 1000 0 0] def
/ct_AddGlyphProc
{
2 index findfont dup length 4 add dict
begin
ct_CopyFont
/CharStrings CharStrings dup length 1 add dict copy
begin
3 1 roll def
currentdict
end
def
/ct_FontMatrix ct_matrix1000 FontMatrix matrix concatmatrix def
/ct_PSBuildGlyph /ct_PSBuildGlyph load def
/ct_PSPathOps /ct_PSPathOps load def
currentdict
end
definefont pop
}
def
systemdict /languagelevel known
{
/ct_AddGlyphToPrinterFont {
2 copy
ct_GetGlyphOutline 3 add -1 roll restore
ct_MakeGlyphProc
ct_AddGlyphProc
} def
}
{
/ct_AddGlyphToPrinterFont {
pop pop restore
Adobe_CTFauxDict /$$$FONTNAME get
/Euro
Adobe_CTFauxDict /$$$SUBSTITUTEBASE get
ct_EuroDict exch get
ct_AddGlyphProc
} def
} ifelse
/AdobeSansMM
{
556 0 24 -19 541 703
{
541 628 m
510 669 442 703 354 703 c
201 703 117 607 101 444 c
50 444 l
25 372 l
97 372 l
97 301 l
49 301 l
24 229 l
103 229 l
124 67 209 -19 350 -19 c
435 -19 501 25 509 32 c
509 131 l
492 105 417 60 343 60 c
267 60 204 127 197 229 c
406 229 l
430 301 l
191 301 l
191 372 l
455 372 l
479 444 l
194 444 l
201 531 245 624 348 624 c
433 624 484 583 509 534 c
cp
556 0 m
}
ct_PSBuildGlyph
} def
/AdobeSerifMM
{
500 0 10 -12 484 692
{
347 298 m
171 298 l
170 310 170 322 170 335 c
170 362 l
362 362 l
374 403 l
172 403 l
184 580 244 642 308 642 c
380 642 434 574 457 457 c
481 462 l
474 691 l
449 691 l
433 670 429 657 410 657 c
394 657 360 692 299 692 c
204 692 94 604 73 403 c
22 403 l
10 362 l
70 362 l
69 352 69 341 69 330 c
69 319 69 308 70 298 c
22 298 l
10 257 l
73 257 l
97 57 216 -12 295 -12 c
364 -12 427 25 484 123 c
458 142 l
425 101 384 37 316 37 c
256 37 189 84 173 257 c
335 257 l
cp
500 0 m
}
ct_PSBuildGlyph
} def
end
%%EndFile
/currentpacking where{pop currentpacking true setpacking}if
%%BeginResource: procset pdfvars 6.0 1
%%Copyright: Copyright 1987-2002 Adobe Systems Incorporated. All Rights Reserved.
%%Title: definition of dictionary of variables used by PDF & PDFText procsets
userdict /PDF 162 dict put
userdict /PDFVars 89 dict dup begin put
/docSetupDone false def
/InitAll 0 def
/TermAll 0 def
/DocInitAll 0 def
/DocTermAll 0 def
/_pdfEncodings 2 array def
/_pdf_str1 1 string def
/_pdf_i 0 def
/_pdf_na 0 def
/_pdf_showproc 0 def
/_italMtx [1 0 .212557 1 0 0] def
/_italMtx_WMode1 [1 -.212557 0 1 0 0] def
/_italMtxType0 [1 0 .1062785 1 0 0] def
/_italMtx_WMode1Type0 [1 -.1062785 0 1 0 0] def
/_basefont 0 def
/_basefonto 0 def
/_pdf_oldCIDInit null def
/_pdf_FontDirectory 30 dict def
/_categories 10 dict def
/_sa? true def
/_ColorSep5044? false def
/nulldict 0 dict def
/_processColors 0 def
/overprintstack null def
/_defaulttransfer currenttransfer def
/_defaultflatness currentflat def
/_defaulthalftone null def
/_defaultcolortransfer null def
/_defaultblackgeneration null def
/_defaultundercolorremoval null def
/_defaultcolortransfer null def
PDF begin
[/c/cs/cm/d/d0/f/h/i/j/J/l/m/M/n/q/Q/re/ri/S/sc/sh/Tf/w/W
/applyInterpFunc/applystitchFunc/domainClip/encodeInput
/initgs/int/limit/rangeClip
/defineRes/undefineRes/findRes/setSA/pl
/? /! /| /: /+ /GetGlyphDirectory
/pdf_flushFilters /pdf_readstring /pdf_dictOp /pdf_image /pdf_maskedImage
/pdf_shfill /pdf_sethalftone
] {null def} bind forall
end
end
%%EndResource
PDFVars begin PDF begin
%%BeginResource: procset pdfutil 6.0 1
%%Copyright: Copyright 1993-2001 Adobe Systems Incorporated. All Rights Reserved.
%%Title: Basic utilities used by other PDF procsets
/bd {bind def} bind def
/ld {load def} bd
/bld {
dup length dict begin
{ null def } forall
bind
end
def
} bd
/dd { PDFVars 3 1 roll put } bd
/xdd { exch dd } bd
/Level2?
systemdict /languagelevel known
{ systemdict /languagelevel get 2 ge } { false } ifelse
def
/Level1? Level2? not def
/Level3?
systemdict /languagelevel known
{systemdict /languagelevel get 3 eq } { false } ifelse
def
/getifknown {
2 copy known { get true } { pop pop false } ifelse
} bd
/here {
currentdict exch getifknown
} bd
/isdefined? { where { pop true } { false } ifelse } bd
%%EndResource
%%BeginResource: procset pdf 6.0 1
%%Copyright: Copyright 1998-2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: General operators for PDF, common to all Language Levels.
/cm { matrix astore concat } bd
/d /setdash ld
/f /fill ld
/h /closepath ld
/i {dup 0 eq {pop _defaultflatness} if setflat} bd
/j /setlinejoin ld
/J /setlinecap ld
/M /setmiterlimit ld
/n /newpath ld
/S /stroke ld
/w /setlinewidth ld
/W /clip ld
/sg /setgray ld
/initgs {
0 setgray
[] 0 d
0 j
0 J
10 M
1 w
false setSA
/_defaulttransfer load settransfer
0 i
/RelativeColorimetric ri
newpath
} bd
/int {
dup 2 index sub 3 index 5 index sub div 6 -2 roll sub mul
exch pop add exch pop
} bd
/limit {
dup 2 index le { exch } if pop
dup 2 index ge { exch } if pop
} bd
/domainClip {
Domain aload pop 3 2 roll
limit
} [/Domain] bld
/applyInterpFunc {
0 1 DimOut 1 sub
{
dup C0 exch get exch
dup C1 exch get exch
3 1 roll
1 index sub
3 index
N exp mul add
exch
currentdict /Range_lo known
{
dup Range_lo exch get exch
Range_hi exch get
3 2 roll limit
}
{
pop
}
ifelse
exch
} for
pop
} [/DimOut /C0 /C1 /N /Range_lo /Range_hi] bld
/encodeInput {
NumParts 1 sub
0 1 2 index
{
dup Bounds exch get
2 index gt
{ exit }
{ dup
3 index eq
{ exit }
{ pop } ifelse
} ifelse
} for
3 2 roll pop
dup Bounds exch get exch
dup 1 add Bounds exch get exch
2 mul
dup Encode exch get exch
1 add Encode exch get
int
} [/NumParts /Bounds /Encode] bld
/rangeClip {
exch dup Range_lo exch get
exch Range_hi exch get
3 2 roll
limit
} [/Range_lo /Range_hi] bld
/applyStitchFunc {
Functions exch get exec
currentdict /Range_lo known {
0 1 DimOut 1 sub {
DimOut 1 add -1 roll
rangeClip
} for
} if
} [/Functions /Range_lo /DimOut] bld
/pdf_flushfilters
{
aload length
{ dup status
1 index currentfile ne and
{ dup flushfile closefile }
{ pop }
ifelse
} repeat
} bd
/pdf_readstring
{
1 index dup length 1 sub get
exch readstring pop
exch pdf_flushfilters
} bind def
/pdf_dictOp
{
3 2 roll
10 dict copy
begin
_Filters dup length 1 sub get def
currentdict exch exec
_Filters pdf_flushfilters
end
} [/_Filters] bld
/pdf_imagemask {{imagemask} /DataSource pdf_dictOp} bd
/pdf_shfill {{sh} /DataSource pdf_dictOp} bd
/pdf_sethalftone {{sethalftone} /Thresholds pdf_dictOp} bd
/masks [ 2#10000000
2#11000000
2#11100000
2#11110000
2#11111000
2#11111100
2#11111110
2#11111111 ] def
/addNBits
{
/numBits exch def
/byte exch def
OutBitOffset numBits add 8 gt
{
byte OutBitOffset 8 sub bitshift
OutBuffer OutByteIndex get or
OutBuffer OutByteIndex 3 -1 roll put
/OutByteIndex OutByteIndex 1 add def
/bitsDoneSoFar OutBitOffset def
/OutBitOffset numBits 8 OutBitOffset sub sub def
OutBitOffset 0 gt
{
byte bitsDoneSoFar bitshift
masks numBits bitsDoneSoFar sub get and
OutBuffer OutByteIndex 3 -1 roll put
} if
}
{
byte masks numBits 1 sub get and
OutBitOffset neg bitshift
OutBuffer OutByteIndex get or
OutBuffer OutByteIndex 3 -1 roll put
/OutBitOffset OutBitOffset numBits add def
OutBitOffset 8 eq
{
/OutBitOffset 0 def
/OutByteIndex OutByteIndex 1 add def
} if
} ifelse
} bind def
/DevNNFilter
{
/InBuffer Width NumComps mul BitsPerComponent mul 7 add 8 idiv string def
AllSource InBuffer readstring pop pop
/outlen Width NewNumComps mul BitsPerComponent mul 7 add 8 idiv def
/OutBuffer outlen string def
0 1 outlen 1 sub { OutBuffer exch 0 put } for
/InByteIndex 0 def
/InBitOffset 0 def
/OutByteIndex 0 def
/OutBitOffset 0 def
/KeepArray NumComps array def
0 1 NumComps 1 sub { KeepArray exch true put } for
DevNNones { KeepArray exch false put } forall
Width {
KeepArray
{
{
/bitsLeft BitsPerComponent def
{
bitsLeft 0 le { exit } if
/bitsToDo 8 InBitOffset sub dup bitsLeft gt { pop bitsLeft } if def
InBuffer InByteIndex get
InBitOffset bitshift
bitsToDo addNBits
/bitsLeft bitsLeft bitsToDo sub def
InBitOffset bitsToDo add
dup 8 mod /InBitOffset exch def
8 idiv InByteIndex add /InByteIndex exch def
} loop
}
{
InBitOffset BitsPerComponent add
dup 8 mod /InBitOffset exch def
8 idiv InByteIndex add /InByteIndex exch def
}
ifelse
}
forall
} repeat
OutBuffer
} bd
/pdf_image
{
20 dict copy
begin
/UnusedNones where { /UnusedNones get}{false} ifelse
{
/NumComps Decode length 2 div cvi def
/OrigDecode Decode def
/NumNones DevNNones length def
/NewNumComps NumComps NumNones sub def
/Decode NewNumComps 2 mul cvi array def
/devNNindx 0 def
/decIndx 0 def
/cmpIndx 0 def
NumComps {
cmpIndx DevNNones devNNindx get eq
{
/devNNindx devNNindx 1 add dup NumNones eq {pop 0} if def
}
{
Decode decIndx OrigDecode cmpIndx 2 mul get put
Decode decIndx 1 add OrigDecode cmpIndx 2 mul 1 add get put
/decIndx decIndx 2 add def
} ifelse
/cmpIndx cmpIndx 1 add def
} repeat
_Filters dup length 1 sub get /AllSource exch def
/DataSource { DevNNFilter } def
}
{ _Filters dup length 1 sub get /DataSource exch def }
ifelse
currentdict image
_Filters pdf_flushfilters
end
} bd
/pdf_maskedImage
{
10 dict copy begin
/miDict currentdict def
/DataDict DataDict 10 dict copy def
DataDict begin
/DataSource
_Filters dup length 1 sub get
def
miDict image
_Filters pdf_flushfilters
end
miDict /InterleaveType get 3 eq
{ MaskDict /DataSource get dup type /filetype eq { closefile } { pop } ifelse }
if
end
} [/miDict /DataDict /_Filters] bld
/RadialShade {
40 dict begin
/background exch def
/ext1 exch def
/ext0 exch def
/BBox exch def
/r2 exch def
/c2y exch def
/c2x exch def
/r1 exch def
/c1y exch def
/c1x exch def
/rampdict exch def
gsave
BBox length 0 gt {
newpath
BBox 0 get BBox 1 get moveto
BBox 2 get BBox 0 get sub 0 rlineto
0 BBox 3 get BBox 1 get sub rlineto
BBox 2 get BBox 0 get sub neg 0 rlineto
closepath
clip
newpath
} if
c1x c2x eq
{
c1y c2y lt {/theta 90 def}{/theta 270 def} ifelse
}
{
/slope c2y c1y sub c2x c1x sub div def
/theta slope 1 atan def
c2x c1x lt c2y c1y ge and { /theta theta 180 sub def} if
c2x c1x lt c2y c1y lt and { /theta theta 180 add def} if
}
ifelse
gsave
clippath
c1x c1y translate
theta rotate
-90 rotate
{ pathbbox } stopped
{ 0 0 0 0 } if
/yMax exch def
/xMax exch def
/yMin exch def
/xMin exch def
grestore
xMax xMin eq yMax yMin eq or
{
grestore
end
}
{
/max { 2 copy gt { pop } {exch pop} ifelse } bind def
/min { 2 copy lt { pop } {exch pop} ifelse } bind def
rampdict begin
40 dict begin
background length 0 gt { background sssetbackground gsave clippath fill grestore } if
gsave
c1x c1y translate
theta rotate
-90 rotate
/c2y c1x c2x sub dup mul c1y c2y sub dup mul add sqrt def
/c1y 0 def
/c1x 0 def
/c2x 0 def
ext0 {
0 getrampcolor
c2y r2 add r1 sub 0.0001 lt
{
c1x c1y r1 360 0 arcn
pathbbox
/aymax exch def
/axmax exch def
/aymin exch def
/axmin exch def
/bxMin xMin axmin min def
/byMin yMin aymin min def
/bxMax xMax axmax max def
/byMax yMax aymax max def
bxMin byMin moveto
bxMax byMin lineto
bxMax byMax lineto
bxMin byMax lineto
bxMin byMin lineto
eofill
}
{
c2y r1 add r2 le
{
c1x c1y r1 0 360 arc
fill
}
{
c2x c2y r2 0 360 arc fill
r1 r2 eq
{
/p1x r1 neg def
/p1y c1y def
/p2x r1 def
/p2y c1y def
p1x p1y moveto p2x p2y lineto p2x yMin lineto p1x yMin lineto
fill
}
{
/AA r2 r1 sub c2y div def
AA -1 eq
{ /theta 89.99 def}
{ /theta AA 1 AA dup mul sub sqrt div 1 atan def}
ifelse
/SS1 90 theta add dup sin exch cos div def
/p1x r1 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
/p1y p1x SS1 div neg def
/SS2 90 theta sub dup sin exch cos div def
/p2x r1 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
/p2y p2x SS2 div neg def
r1 r2 gt
{
/L1maxX p1x yMin p1y sub SS1 div add def
/L2maxX p2x yMin p2y sub SS2 div add def
}
{
/L1maxX 0 def
/L2maxX 0 def
}ifelse
p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
L1maxX L1maxX p1x sub SS1 mul p1y add lineto
fill
}
ifelse
}
ifelse
} ifelse
} if
c1x c2x sub dup mul
c1y c2y sub dup mul
add 0.5 exp
0 dtransform
dup mul exch dup mul add 0.5 exp 72 div
0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
1 index 1 index lt { exch } if pop
/hires exch def
hires mul
/numpix exch def
/numsteps NumSamples def
/rampIndxInc 1 def
/subsampling false def
numpix 0 ne
{
NumSamples numpix div 0.5 gt
{
/numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
/rampIndxInc NumSamples 1 sub numsteps div def
/subsampling true def
} if
} if
/xInc c2x c1x sub numsteps div def
/yInc c2y c1y sub numsteps div def
/rInc r2 r1 sub numsteps div def
/cx c1x def
/cy c1y def
/radius r1 def
newpath
xInc 0 eq yInc 0 eq rInc 0 eq and and
{
0 getrampcolor
cx cy radius 0 360 arc
stroke
NumSamples 1 sub getrampcolor
cx cy radius 72 hires div add 0 360 arc
0 setlinewidth
stroke
}
{
0
numsteps
{
dup
subsampling { round } if
getrampcolor
cx cy radius 0 360 arc
/cx cx xInc add def
/cy cy yInc add def
/radius radius rInc add def
cx cy radius 360 0 arcn
eofill
rampIndxInc add
}
repeat
pop
} ifelse
ext1 {
c2y r2 add r1 lt
{
c2x c2y r2 0 360 arc
fill
}
{
c2y r1 add r2 sub 0.0001 le
{
c2x c2y r2 360 0 arcn
pathbbox
/aymax exch def
/axmax exch def
/aymin exch def
/axmin exch def
/bxMin xMin axmin min def
/byMin yMin aymin min def
/bxMax xMax axmax max def
/byMax yMax aymax max def
bxMin byMin moveto
bxMax byMin lineto
bxMax byMax lineto
bxMin byMax lineto
bxMin byMin lineto
eofill
}
{
c2x c2y r2 0 360 arc fill
r1 r2 eq
{
/p1x r2 neg def
/p1y c2y def
/p2x r2 def
/p2y c2y def
p1x p1y moveto p2x p2y lineto p2x yMax lineto p1x yMax lineto
fill
}
{
/AA r2 r1 sub c2y div def
AA -1 eq
{ /theta 89.99 def}
{ /theta AA 1 AA dup mul sub sqrt div 1 atan def}
ifelse
/SS1 90 theta add dup sin exch cos div def
/p1x r2 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
/p1y c2y p1x SS1 div sub def
/SS2 90 theta sub dup sin exch cos div def
/p2x r2 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
/p2y c2y p2x SS2 div sub def
r1 r2 lt
{
/L1maxX p1x yMax p1y sub SS1 div add def
/L2maxX p2x yMax p2y sub SS2 div add def
}
{
/L1maxX 0 def
/L2maxX 0 def
}ifelse
p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
L1maxX L1maxX p1x sub SS1 mul p1y add lineto
fill
}
ifelse
}
ifelse
} ifelse
} if
grestore
grestore
end
end
end
} ifelse
} bd
/GenStrips {
40 dict begin
/background exch def
/ext1 exch def
/ext0 exch def
/BBox exch def
/y2 exch def
/x2 exch def
/y1 exch def
/x1 exch def
/rampdict exch def
gsave
BBox length 0 gt {
newpath
BBox 0 get BBox 1 get moveto
BBox 2 get BBox 0 get sub 0 rlineto
0 BBox 3 get BBox 1 get sub rlineto
BBox 2 get BBox 0 get sub neg 0 rlineto
closepath
clip
newpath
} if
x1 x2 eq
{
y1 y2 lt {/theta 90 def}{/theta 270 def} ifelse
}
{
/slope y2 y1 sub x2 x1 sub div def
/theta slope 1 atan def
x2 x1 lt y2 y1 ge and { /theta theta 180 sub def} if
x2 x1 lt y2 y1 lt and { /theta theta 180 add def} if
}
ifelse
gsave
clippath
x1 y1 translate
theta rotate
{ pathbbox } stopped
{ 0 0 0 0 } if
/yMax exch def
/xMax exch def
/yMin exch def
/xMin exch def
grestore
xMax xMin eq yMax yMin eq or
{
grestore
end
}
{
rampdict begin
20 dict begin
background length 0 gt { background sssetbackground gsave clippath fill grestore } if
gsave
x1 y1 translate
theta rotate
/xStart 0 def
/xEnd x2 x1 sub dup mul y2 y1 sub dup mul add 0.5 exp def
/ySpan yMax yMin sub def
/numsteps NumSamples def
/rampIndxInc 1 def
/subsampling false def
xStart 0 transform
xEnd 0 transform
3 -1 roll
sub dup mul
3 1 roll
sub dup mul
add 0.5 exp 72 div
0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
1 index 1 index lt { exch } if pop
mul
/numpix exch def
numpix 0 ne
{
NumSamples numpix div 0.5 gt
{
/numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
/rampIndxInc NumSamples 1 sub numsteps div def
/subsampling true def
} if
} if
ext0 {
0 getrampcolor
xMin xStart lt
{ xMin yMin xMin neg ySpan rectfill } if
} if
/xInc xEnd xStart sub numsteps div def
/x xStart def
0
numsteps
{
dup
subsampling { round } if
getrampcolor
x yMin xInc ySpan rectfill
/x x xInc add def
rampIndxInc add
}
repeat
pop
ext1 {
xMax xEnd gt
{ xEnd yMin xMax xEnd sub ySpan rectfill } if
} if
grestore
grestore
end
end
end
} ifelse
} bd
/currentdistillerparams where { pop currentdistillerparams /CoreDistVersion get 5000 lt}{true}ifelse
{
/PDFMark5 {cleartomark} bd
}
{
/PDFMark5 {pdfmark} bd
}ifelse
/ReadByPDFMark5
{
2 dict begin
/makerString exch def string /tmpString exch def
{
currentfile tmpString readline pop
makerString anchorsearch
{
pop pop cleartomark exit
}
{
3 copy /PUT PDFMark5 pop 2 copy (\n) /PUT PDFMark5
} ifelse
}loop
end
}bd
%%EndResource
%%BeginResource: procset pdflev2 6.0 1
%%Copyright: Copyright 1987-2001,2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: PDF operators, with code specific for Level 2
/docinitialize {
PDF begin
/_defaulthalftone currenthalftone dd
/_defaultblackgeneration currentblackgeneration dd
/_defaultundercolorremoval currentundercolorremoval dd
/_defaultcolortransfer [currentcolortransfer] dd
/_defaulttransfer currenttransfer dd
end
PDFVars /docSetupDone true put
} bd
/initialize {
PDFVars /docSetupDone get {
_defaulthalftone sethalftone
/_defaultblackgeneration load setblackgeneration
/_defaultundercolorremoval load setundercolorremoval
_defaultcolortransfer aload pop setcolortransfer
} if
false setoverprint
} bd
/terminate { } bd
/c /curveto ld
/cs /setcolorspace ld
/l /lineto ld
/m /moveto ld
/q /gsave ld
/Q /grestore ld
/sc /setcolor ld
/setSA/setstrokeadjust ld
/re {
4 2 roll m
1 index 0 rlineto
0 exch rlineto
neg 0 rlineto
h
} bd
/concattransferfuncs {
[ 3 1 roll /exec load exch /exec load ] cvx
} bd
/concatandsettransfer {
/_defaulttransfer load concattransferfuncs settransfer
} bd
/concatandsetcolortransfer {
_defaultcolortransfer aload pop
8 -1 roll 5 -1 roll concattransferfuncs 7 1 roll
6 -1 roll 4 -1 roll concattransferfuncs 5 1 roll
4 -1 roll 3 -1 roll concattransferfuncs 3 1 roll
concattransferfuncs
setcolortransfer
} bd
/defineRes/defineresource ld
/undefineRes/undefineresource ld
/findRes/findresource ld
currentglobal
true systemdict /setglobal get exec
[/Function /ExtGState /Form /Shading /FunctionDictionary /MadePattern /PatternPrototype /DataSource /Image]
{ /Generic /Category findresource dup length dict copy /Category defineresource pop }
forall
systemdict /setglobal get exec
/ri
{
/findcolorrendering isdefined?
{
mark exch
findcolorrendering
counttomark 2 eq
{ type /booleantype eq
{ dup type /nametype eq
{ dup /ColorRendering resourcestatus
{ pop pop
dup /DefaultColorRendering ne
{
/ColorRendering findresource
setcolorrendering
} if
} if
} if
} if
} if
cleartomark
}
{ pop
} ifelse
} bd
/knownColorants? {
pop false
} bd
/getrampcolor {
cvi
/indx exch def
0 1 NumComp 1 sub {
dup
Samples exch get
dup type /stringtype eq { indx get } if
exch
Scaling exch get aload pop
3 1 roll
mul add
} for
setcolor
} bd
/sssetbackground { aload pop setcolor } bd
%%EndResource
%%BeginResource: procset pdftext 6.0 1
%%Copyright: Copyright 1987-2001,2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: Text operators for PDF
PDF /PDFText 78 dict dup begin put
/docinitialize
{
/resourcestatus where {
pop
/CIDParams /ProcSet resourcestatus {
pop pop
false /CIDParams /ProcSet findresource /SetBuildCompatible get exec
} if
} if
PDF begin
PDFText /_pdfDefineIdentity-H known
{ PDFText /_pdfDefineIdentity-H get exec}
if
end
} bd
/initialize {
PDFText begin
} bd
/terminate { end } bd
Level2?
{
/_safeput
{
3 -1 roll load 3 1 roll put
}
bd
}
{
/_safeput
{
2 index load dup dup length exch maxlength ge
{ dup length 5 add dict copy
3 index xdd
}
{ pop }
ifelse
3 -1 roll load 3 1 roll put
}
bd
}
ifelse
/pdf_has_composefont? systemdict /composefont known def
/CopyFont {
{
1 index /FID ne 2 index /UniqueID ne and
{ def } { pop pop } ifelse
} forall
} bd
/Type0CopyFont
{
exch
dup length dict
begin
CopyFont
[
exch
FDepVector
{
dup /FontType get 0 eq
{
1 index Type0CopyFont
/_pdfType0 exch definefont
}
{
/_pdfBaseFont exch
2 index exec
}
ifelse
exch
}
forall
pop
]
/FDepVector exch def
currentdict
end
} bd
Level2? {currentglobal true setglobal} if
/cHexEncoding
[/c00/c01/c02/c03/c04/c05/c06/c07/c08/c09/c0A/c0B/c0C/c0D/c0E/c0F/c10/c11/c12
/c13/c14/c15/c16/c17/c18/c19/c1A/c1B/c1C/c1D/c1E/c1F/c20/c21/c22/c23/c24/c25
/c26/c27/c28/c29/c2A/c2B/c2C/c2D/c2E/c2F/c30/c31/c32/c33/c34/c35/c36/c37/c38
/c39/c3A/c3B/c3C/c3D/c3E/c3F/c40/c41/c42/c43/c44/c45/c46/c47/c48/c49/c4A/c4B
/c4C/c4D/c4E/c4F/c50/c51/c52/c53/c54/c55/c56/c57/c58/c59/c5A/c5B/c5C/c5D/c5E
/c5F/c60/c61/c62/c63/c64/c65/c66/c67/c68/c69/c6A/c6B/c6C/c6D/c6E/c6F/c70/c71
/c72/c73/c74/c75/c76/c77/c78/c79/c7A/c7B/c7C/c7D/c7E/c7F/c80/c81/c82/c83/c84
/c85/c86/c87/c88/c89/c8A/c8B/c8C/c8D/c8E/c8F/c90/c91/c92/c93/c94/c95/c96/c97
/c98/c99/c9A/c9B/c9C/c9D/c9E/c9F/cA0/cA1/cA2/cA3/cA4/cA5/cA6/cA7/cA8/cA9/cAA
/cAB/cAC/cAD/cAE/cAF/cB0/cB1/cB2/cB3/cB4/cB5/cB6/cB7/cB8/cB9/cBA/cBB/cBC/cBD
/cBE/cBF/cC0/cC1/cC2/cC3/cC4/cC5/cC6/cC7/cC8/cC9/cCA/cCB/cCC/cCD/cCE/cCF/cD0
/cD1/cD2/cD3/cD4/cD5/cD6/cD7/cD8/cD9/cDA/cDB/cDC/cDD/cDE/cDF/cE0/cE1/cE2/cE3
/cE4/cE5/cE6/cE7/cE8/cE9/cEA/cEB/cEC/cED/cEE/cEF/cF0/cF1/cF2/cF3/cF4/cF5/cF6
/cF7/cF8/cF9/cFA/cFB/cFC/cFD/cFE/cFF] def
Level2? {setglobal} if
/modEnc {
/_enc xdd
/_icode 0 dd
counttomark 1 sub -1 0
{
index
dup type /nametype eq
{
_enc _icode 3 -1 roll put
_icode 1 add
}
if
/_icode xdd
} for
cleartomark
_enc
} bd
/trEnc {
/_enc xdd
255 -1 0 {
exch dup -1 eq
{ pop /.notdef }
{ Encoding exch get }
ifelse
_enc 3 1 roll put
} for
pop
_enc
} bd
/TE {
/_i xdd
StandardEncoding 256 array copy modEnc
_pdfEncodings exch _i exch put
} bd
Level2?
{
/pdfPatchCStrings
{
currentdict /CharStrings known currentdict /FontType known and
{
FontType 1 eq CharStrings type /dicttype eq and
{
CharStrings /mu known CharStrings /mu1 known not and CharStrings wcheck and
{
CharStrings /mu get
type /stringtype eq
{
currentglobal
CharStrings /mu1
CharStrings /mu get
dup gcheck setglobal
dup length string copy
put
setglobal
} if
} if
} if
} if
} bd
}
{ /pdfPatchCStrings {} bd }
ifelse
/TZ
{
/_usePDFEncoding xdd
findfont
dup length 6 add dict
begin
{
1 index /FID ne { def } { pop pop } ifelse
} forall
pdfPatchCStrings
/pdf_origFontName FontName def
/FontName exch def
currentdict /PaintType known
{ PaintType 2 eq {/PaintType 0 def} if }
if
_usePDFEncoding 0 ge
{
/Encoding _pdfEncodings _usePDFEncoding get def
pop
}
{
_usePDFEncoding -1 eq
{
counttomark 0 eq
{ pop }
{
Encoding 256 array copy
modEnc /Encoding exch def
}
ifelse
}
{
256 array
trEnc /Encoding exch def
}
ifelse
}
ifelse
pdf_EuroProcSet pdf_origFontName known
{
pdf_origFontName pdf_AddEuroGlyphProc
} if
Level2?
{
currentdict /pdf_origFontName undef
} if
FontName currentdict
end
definefont pop
}
bd
Level2?
{
/TZG
{
currentglobal true setglobal
2 index _pdfFontStatus
{
2 index findfont
false setglobal
3 index findfont
true setglobal
ne
{
2 index findfont dup rcheck
{
dup length dict begin
{
1 index /FID ne { def } { pop pop } ifelse
} forall
pdfPatchCStrings
currentdict end
}
if
3 index exch definefont pop
}
if
} if
setglobal
TZ
} bd
}
{
/TZG {TZ} bd
} ifelse
Level2?
{
currentglobal false setglobal
userdict /pdftext_data 5 dict put
pdftext_data
begin
/saveStacks
{
pdftext_data
begin
/vmmode currentglobal def
false setglobal
count array astore /os exch def
end
countdictstack array dictstack pdftext_data exch /ds exch put
cleardictstack pdftext_data /dscount countdictstack put
pdftext_data /vmmode get setglobal
} bind def
/restoreStacks
{
pdftext_data /vmmode currentglobal put false setglobal
clear cleardictstack
pdftext_data /ds get dup
pdftext_data /dscount get 1 2 index length 1 sub
{ get begin dup } for
pop pop
pdftext_data /os get aload pop
pdftext_data /vmmode get setglobal
} bind def
/testForClonePrinterBug
{
currentglobal true setglobal
/undefinedCategory /Generic /Category findresource
dup length dict copy /Category defineresource pop
setglobal
pdftext_data /saveStacks get exec
pdftext_data /vmmode currentglobal put false setglobal
/undefined /undefinedCategory { resourcestatus } stopped
pdftext_data exch /bugFound exch put
pdftext_data /vmmode get setglobal
pdftext_data /restoreStacks get exec
pdftext_data /bugFound get
} bind def
end
setglobal
/pdf_resourcestatus
pdftext_data /testForClonePrinterBug get exec
{
{
pdftext_data /saveStacks get exec
pdftext_data /os get dup dup length 1 sub
dup 1 sub dup 0 lt { pop 0 } if
exch 1 exch { get exch dup } for
pop pop
{ resourcestatus }
stopped
{
clear cleardictstack pdftext_data /restoreStacks get exec
{ pop pop } stopped pop false
}
{
count array astore pdftext_data exch /results exch put
pdftext_data /restoreStacks get exec pop pop
pdftext_data /results get aload pop
}
ifelse
}
}
{ { resourcestatus } }
ifelse
bd
}
if
Level2?
{
/_pdfUndefineResource
{
currentglobal 3 1 roll
_pdf_FontDirectory 2 index 2 copy known
{undef}
{pop pop}
ifelse
1 index (pdf) exch _pdfConcatNames 1 index
1 index 1 _pdfConcatNames 1 index
5 index 1 _pdfConcatNames 1 index
4
{
2 copy pdf_resourcestatus
{
pop 2 lt
{2 copy findresource gcheck setglobal undefineresource}
{pop pop}
ifelse
}
{ pop pop}
ifelse
} repeat
setglobal
} bd
}
{
/_pdfUndefineResource { pop pop} bd
}
ifelse
Level2?
{
/_pdfFontStatus
{
currentglobal exch
/Font pdf_resourcestatus
{pop pop true}
{false}
ifelse
exch setglobal
} bd
}
{
/_pdfFontStatusString 50 string def
_pdfFontStatusString 0 (fonts/) putinterval
/_pdfFontStatus
{
FontDirectory 1 index known
{ pop true }
{
_pdfFontStatusString 6 42 getinterval
cvs length 6 add
_pdfFontStatusString exch 0 exch getinterval
{ status } stopped
{pop false}
{
{ pop pop pop pop true}
{ false }
ifelse
}
ifelse
}
ifelse
} bd
}
ifelse
Level2?
{
/_pdfCIDFontStatus
{
/CIDFont /Category pdf_resourcestatus
{
pop pop
/CIDFont pdf_resourcestatus
{pop pop true}
{false}
ifelse
}
{ pop false }
ifelse
} bd
}
if
/_pdfString100 100 string def
/_pdfComposeFontName
{
dup length 1 eq
{
0 get
1 index
type /nametype eq
{
_pdfString100 cvs
length dup dup _pdfString100 exch (-) putinterval
_pdfString100 exch 1 add dup _pdfString100 length exch sub getinterval
2 index exch cvs length
add 1 add _pdfString100 exch 0 exch getinterval
exch pop
true
}
{
pop pop
false
}
ifelse
}
{
false
}
ifelse
dup {exch cvn exch} if
} bd
/_pdfConcatNames
{
exch
_pdfString100 cvs
length dup dup _pdfString100 exch (-) putinterval
_pdfString100 exch 1 add dup _pdfString100 length exch sub getinterval
3 -1 roll exch cvs length
add 1 add _pdfString100 exch 0 exch getinterval
cvn
} bind def
/_pdfTextTempString 50 string def
/_pdfRegOrderingArray [(Adobe-Japan1) (Adobe-CNS1) (Adobe-Korea1) (Adobe-GB1)] def
/_pdf_CheckCIDSystemInfo
{
1 index _pdfTextTempString cvs
(Identity) anchorsearch
{
pop pop pop pop true
}
{
false
_pdfRegOrderingArray
{
2 index exch
anchorsearch
{ pop pop pop true exit}
{ pop }
ifelse
}
forall
exch pop
exch /CIDFont findresource
/CIDSystemInfo get
3 -1 roll /CMap findresource
/CIDSystemInfo get
exch
3 -1 roll
{
2 copy
/Supplement get
exch
dup type /dicttype eq
{/Supplement get}
{pop 0 }
ifelse
ge
}
{ true }
ifelse
{
dup /Registry get
2 index /Registry get eq
{
/Ordering get
exch /Ordering get
dup type /arraytype eq
{
1 index type /arraytype eq
{
true
1 index length 1 sub -1 0
{
dup 2 index exch get exch 3 index exch get ne
{ pop false exit}
if
} for
exch pop exch pop
}
{ pop pop false }
ifelse
}
{
eq
}
ifelse
}
{ pop pop false }
ifelse
}
{ pop pop false }
ifelse
}
ifelse
} bind def
pdf_has_composefont?
{
/_pdfComposeFont
{
2 copy _pdfComposeFontName not
{
2 index
}
if
(pdf) exch _pdfConcatNames
dup _pdfFontStatus
{ dup findfont 5 2 roll pop pop pop true}
{
4 1 roll
1 index /CMap pdf_resourcestatus
{
pop pop
true
}
{false}
ifelse
1 index true exch
{
_pdfCIDFontStatus not
{pop false exit}
if
}
forall
and
{
1 index 1 index 0 get _pdf_CheckCIDSystemInfo
{
3 -1 roll pop
2 index 3 1 roll
composefont true
}
{
pop pop exch pop false
}
ifelse
}
{
_pdfComposeFontName
{
dup _pdfFontStatus
{
exch pop
1 index exch
findfont definefont true
}
{
pop exch pop
false
}
ifelse
}
{
exch pop
false
}
ifelse
}
ifelse
{ true }
{
dup _pdfFontStatus
{ dup findfont true }
{ pop false }
ifelse
}
ifelse
}
ifelse
} bd
}
{
/_pdfComposeFont
{
_pdfComposeFontName not
{
dup
}
if
dup
_pdfFontStatus
{exch pop dup findfont true}
{
1 index
dup type /nametype eq
{pop}
{cvn}
ifelse
eq
{pop false}
{
dup _pdfFontStatus
{dup findfont true}
{pop false}
ifelse
}
ifelse
}
ifelse
} bd
}
ifelse
/_pdfStyleDicts 4 dict dup begin
/Adobe-Japan1 4 dict dup begin
Level2?
{
/Serif
/HeiseiMin-W3-83pv-RKSJ-H _pdfFontStatus
{/HeiseiMin-W3}
{
/HeiseiMin-W3 _pdfCIDFontStatus
{/HeiseiMin-W3}
{/Ryumin-Light}
ifelse
}
ifelse
def
/SansSerif
/HeiseiKakuGo-W5-83pv-RKSJ-H _pdfFontStatus
{/HeiseiKakuGo-W5}
{
/HeiseiKakuGo-W5 _pdfCIDFontStatus
{/HeiseiKakuGo-W5}
{/GothicBBB-Medium}
ifelse
}
ifelse
def
/HeiseiMaruGo-W4-83pv-RKSJ-H _pdfFontStatus
{/HeiseiMaruGo-W4}
{
/HeiseiMaruGo-W4 _pdfCIDFontStatus
{/HeiseiMaruGo-W4}
{
/Jun101-Light-RKSJ-H _pdfFontStatus
{ /Jun101-Light }
{ SansSerif }
ifelse
}
ifelse
}
ifelse
/RoundSansSerif exch def
/Default Serif def
}
{
/Serif /Ryumin-Light def
/SansSerif /GothicBBB-Medium def
{
(fonts/Jun101-Light-83pv-RKSJ-H) status
}stopped
{pop}{
{ pop pop pop pop /Jun101-Light }
{ SansSerif }
ifelse
/RoundSansSerif exch def
}ifelse
/Default Serif def
}
ifelse
end
def
/Adobe-Korea1 4 dict dup begin
/Serif /HYSMyeongJo-Medium def
/SansSerif /HYGoThic-Medium def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
/Adobe-GB1 4 dict dup begin
/Serif /STSong-Light def
/SansSerif /STHeiti-Regular def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
/Adobe-CNS1 4 dict dup begin
/Serif /MKai-Medium def
/SansSerif /MHei-Medium def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
end
def
/TZzero
{
/_wmode xdd
/_styleArr xdd
/_regOrdering xdd
3 copy
_pdfComposeFont
{
5 2 roll pop pop pop
}
{
[
0 1 _styleArr length 1 sub
{
_styleArr exch get
_pdfStyleDicts _regOrdering 2 copy known
{
get
exch 2 copy known not
{ pop /Default }
if
get
}
{
pop pop pop /Unknown
}
ifelse
}
for
]
exch pop
2 index 3 1 roll
_pdfComposeFont
{3 -1 roll pop}
{
findfont dup /FontName get exch
}
ifelse
}
ifelse
dup /WMode 2 copy known
{ get _wmode ne }
{ pop pop _wmode 1 eq}
ifelse
{
exch _wmode _pdfConcatNames
dup _pdfFontStatus
{ exch pop dup findfont false}
{ exch true }
ifelse
}
{
dup /FontType get 0 ne
}
ifelse
{
dup /FontType get 3 eq _wmode 1 eq and
{
_pdfVerticalRomanT3Font dup length 10 add dict copy
begin
/_basefont exch
dup length 3 add dict
begin
{1 index /FID ne {def}{pop pop} ifelse }
forall
/Encoding Encoding dup length array copy
dup 16#27 /quotesingle put
dup 16#60 /grave put
_regOrdering /Adobe-Japan1 eq
{dup 16#5c /yen put dup 16#a5 /yen put dup 16#b4 /yen put}
if
def
FontName
currentdict
end
definefont
def
/Encoding _basefont /Encoding get def
/_fauxfont true def
}
{
dup length 3 add dict
begin
{1 index /FID ne {def}{pop pop} ifelse }
forall
FontType 0 ne
{
/Encoding Encoding dup length array copy
dup 16#27 /quotesingle put
dup 16#60 /grave put
_regOrdering /Adobe-Japan1 eq
{dup 16#5c /yen put}
if
def
/_fauxfont true def
} if
} ifelse
/WMode _wmode def
dup dup /FontName exch def
currentdict
end
definefont pop
}
{
pop
}
ifelse
/_pdf_FontDirectory 3 1 roll _safeput
}
bd
Level2?
{
/Tf {
_pdf_FontDirectory 2 index 2 copy known
{get exch 3 -1 roll pop}
{pop pop}
ifelse
selectfont
} bd
}
{
/Tf {
_pdf_FontDirectory 2 index 2 copy known
{get exch 3 -1 roll pop}
{pop pop}
ifelse
exch findfont exch
dup type /arraytype eq
{makefont}
{scalefont}
ifelse
setfont
} bd
}
ifelse
/cshow where
{
pop /pdf_cshow /cshow load dd
/pdf_remove2 {pop pop} dd
}
{
/pdf_cshow {exch forall} dd
/pdf_remove2 {} dd
} ifelse
/pdf_xshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
_pdf_x _pdf_y moveto
0
rmoveto
}
ifelse
_pdf_i 1 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdf_yshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
_pdf_x _pdf_y moveto
0 exch
rmoveto
}
ifelse
_pdf_i 1 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdf_xyshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
1 pop
{_pdf_na _pdf_i 1 add get} stopped
{ pop pop pop}
{
_pdf_x _pdf_y moveto
rmoveto
}
ifelse
}
ifelse
_pdf_i 2 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdfl1xs {/_pdf_showproc /show load dd pdf_xshow} bd
/pdfl1ys {/_pdf_showproc /show load dd pdf_yshow} bd
/pdfl1xys {/_pdf_showproc /show load dd pdf_xyshow} bd
Level2? _ColorSep5044? not and
{
/pdfxs {{xshow} stopped {pdfl1xs} if} bd
/pdfys {{yshow} stopped {pdfl1ys} if} bd
/pdfxys {{xyshow} stopped {pdfl1xys} if} bd
}
{
/pdfxs /pdfl1xs load dd
/pdfys /pdfl1ys load dd
/pdfxys /pdfl1xys load dd
} ifelse
/pdf_charpath {false charpath} bd
/pdf_xcharpath {/_pdf_showproc /pdf_charpath load dd pdf_xshow} bd
/pdf_ycharpath {/_pdf_showproc /pdf_charpath load dd pdf_yshow} bd
/pdf_xycharpath {/_pdf_showproc /pdf_charpath load dd pdf_xyshow} bd
/pdf_strokepath
{
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 false charpath
currentpoint S moveto
} bind
exch pdf_cshow
} bd
/pdf_xstrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_xshow} bd
/pdf_ystrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_yshow} bd
/pdf_xystrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_xyshow} bd
Level2? {currentglobal true setglobal} if
/d0/setcharwidth ld
/nND {{/.notdef} repeat} bd
/T3Defs {
/BuildChar
{
1 index /Encoding get exch get
1 index /BuildGlyph get exec
}
def
/BuildGlyph {
exch begin
GlyphProcs exch get exec
end
} def
/_pdfT3Font true def
} bd
/_pdfBoldRomanWidthProc
{
stringwidth 1 index 0 ne { exch .03 add exch }if setcharwidth
0 0
} bd
/_pdfType0WidthProc
{
dup stringwidth 0 0 moveto
2 index true charpath pathbbox
0 -1
7 index 2 div .88
setcachedevice2
pop
0 0
} bd
/_pdfType0WMode1WidthProc
{
dup stringwidth
pop 2 div neg -0.88
2 copy
moveto
0 -1
5 -1 roll true charpath pathbbox
setcachedevice
} bd
/_pdfBoldBaseFont
11 dict begin
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/Encoding cHexEncoding def
/_setwidthProc /_pdfBoldRomanWidthProc load def
/_bcstr1 1 string def
/BuildChar
{
exch begin
_basefont setfont
_bcstr1 dup 0 4 -1 roll put
dup
_setwidthProc
3 copy
moveto
show
_basefonto setfont
moveto
show
end
}bd
currentdict
end
def
pdf_has_composefont?
{
/_pdfBoldBaseCIDFont
11 dict begin
/CIDFontType 1 def
/CIDFontName /_pdfBoldBaseCIDFont def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/_setwidthProc /_pdfType0WidthProc load def
/_bcstr2 2 string def
/BuildGlyph
{
exch begin
_basefont setfont
_bcstr2 1 2 index 256 mod put
_bcstr2 0 3 -1 roll 256 idiv put
_bcstr2 dup _setwidthProc
3 copy
moveto
show
_basefonto setfont
moveto
show
end
}bd
currentdict
end
def
/_pdfDefineIdentity-H
{
/Identity-H /CMap PDFText /pdf_resourcestatus get exec
{
pop pop
}
{
/CIDInit/ProcSet findresource begin 12 dict begin
begincmap
/CIDSystemInfo
3 dict begin
/Registry (Adobe) def
/Ordering (Identity) def
/Supplement 0 def
currentdict
end
def
/CMapName /Identity-H def
/CMapVersion 1 def
/CMapType 1 def
1 begincodespacerange
<0000> <ffff>
endcodespacerange
1 begincidrange
<0000> <ffff> 0
endcidrange
endcmap
CMapName currentdict/CMap defineresource pop
end
end
} ifelse
} def
} if
/_pdfVerticalRomanT3Font
10 dict begin
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/_bcstr1 1 string def
/BuildChar
{
exch begin
_basefont setfont
_bcstr1 dup 0 4 -1 roll put
dup
_pdfType0WidthProc
moveto
show
end
}bd
currentdict
end
def
Level2? {setglobal} if
/MakeBoldFont
{
dup /ct_SyntheticBold known
{
dup length 3 add dict begin
CopyFont
/ct_StrokeWidth .03 0 FontMatrix idtransform pop def
/ct_SyntheticBold true def
currentdict
end
definefont
}
{
dup dup length 3 add dict
begin
CopyFont
/PaintType 2 def
/StrokeWidth .03 0 FontMatrix idtransform pop def
/dummybold currentdict
end
definefont
dup /FontType get dup 9 ge exch 11 le and
{
_pdfBoldBaseCIDFont
dup length 3 add dict copy begin
dup /CIDSystemInfo get /CIDSystemInfo exch def
/_Type0Identity /Identity-H 3 -1 roll [ exch ] composefont
/_basefont exch def
/_Type0Identity /Identity-H 3 -1 roll [ exch ] composefont
/_basefonto exch def
currentdict
end
/CIDFont defineresource
}
{
_pdfBoldBaseFont
dup length 3 add dict copy begin
/_basefont exch def
/_basefonto exch def
currentdict
end
definefont
}
ifelse
}
ifelse
} bd
/MakeBold {
1 index
_pdf_FontDirectory 2 index 2 copy known
{get}
{exch pop}
ifelse
findfont
dup
/FontType get 0 eq
{
dup /WMode known {dup /WMode get 1 eq }{false} ifelse
version length 4 ge
and
{version 0 4 getinterval cvi 2015 ge }
{true}
ifelse
{/_pdfType0WidthProc}
{/_pdfType0WMode1WidthProc}
ifelse
_pdfBoldBaseFont /_setwidthProc 3 -1 roll load put
{MakeBoldFont} Type0CopyFont definefont
}
{
dup /_fauxfont known not 1 index /SubstMaster known not and
{
_pdfBoldBaseFont /_setwidthProc /_pdfBoldRomanWidthProc load put
MakeBoldFont
}
{
2 index 2 index eq
{ exch pop }
{
dup length dict begin
CopyFont
currentdict
end
definefont
}
ifelse
}
ifelse
}
ifelse
pop pop
dup /dummybold ne
{/_pdf_FontDirectory exch dup _safeput }
{ pop }
ifelse
}bd
/MakeItalic {
_pdf_FontDirectory exch 2 copy known
{get}
{exch pop}
ifelse
dup findfont
dup /FontInfo 2 copy known
{
get
/ItalicAngle 2 copy known
{get 0 eq }
{ pop pop true}
ifelse
}
{ pop pop true}
ifelse
{
exch pop
dup /FontType get 0 eq Level2? not and
{ dup /FMapType get 6 eq }
{ false }
ifelse
{
dup /WMode 2 copy known
{
get 1 eq
{ _italMtx_WMode1Type0 }
{ _italMtxType0 }
ifelse
}
{ pop pop _italMtxType0 }
ifelse
}
{
dup /WMode 2 copy known
{
get 1 eq
{ _italMtx_WMode1 }
{ _italMtx }
ifelse
}
{ pop pop _italMtx }
ifelse
}
ifelse
makefont
dup /FontType get 42 eq Level2? not or
{
dup length dict begin
CopyFont
currentdict
end
}
if
1 index exch
definefont pop
/_pdf_FontDirectory exch dup _safeput
}
{
pop
2 copy ne
{
/_pdf_FontDirectory 3 1 roll _safeput
}
{ pop pop }
ifelse
}
ifelse
}bd
/MakeBoldItalic {
/dummybold exch
MakeBold
/dummybold
MakeItalic
}bd
Level2?
{
/pdf_CopyDict
{1 index length add dict copy}
def
}
{
/pdf_CopyDict
{
1 index length add dict
1 index wcheck
{ copy }
{ begin
{def} forall
currentdict
end
}
ifelse
}
def
}
ifelse
/pdf_AddEuroGlyphProc
{
currentdict /CharStrings known
{
CharStrings /Euro known not
{
dup
/CharStrings
CharStrings 1 pdf_CopyDict
begin
/Euro pdf_EuroProcSet 4 -1 roll get def
currentdict
end
def
/pdf_PSBuildGlyph /pdf_PSBuildGlyph load def
/pdf_PathOps /pdf_PathOps load def
/Symbol eq Encoding 160 get /.notdef eq and
{
/Encoding Encoding dup length array copy
dup 160 /Euro put def
}
if
}
{ pop
}
ifelse
}
{ pop
}
ifelse
}
def
Level2? {currentglobal true setglobal} if
/pdf_PathOps 4 dict dup begin
/m {moveto} def
/l {lineto} def
/c {curveto} def
/cp {closepath} def
end
def
/pdf_PSBuildGlyph
{
gsave
8 -1 roll pop
7 1 roll
currentdict /PaintType 2 copy known {get 2 eq}{pop pop false} ifelse
dup 9 1 roll
{
currentdict /StrokeWidth 2 copy known
{
get 2 div
5 1 roll
4 -1 roll 4 index sub
4 1 roll
3 -1 roll 4 index sub
3 1 roll
exch 4 index add exch
4 index add
5 -1 roll pop
}
{
pop pop
}
ifelse
}
if
setcachedevice
pdf_PathOps begin
exec
end
{
currentdict /StrokeWidth 2 copy known
{ get }
{ pop pop 0 }
ifelse
setlinewidth stroke
}
{
fill
}
ifelse
grestore
} def
/pdf_EuroProcSet 13 dict def
pdf_EuroProcSet
begin
/Courier-Bold
{
600 0 6 -12 585 612
{
385 274 m
180 274 l
179 283 179 293 179 303 c
179 310 179 316 180 323 c
398 323 l
423 404 l
197 404 l
219 477 273 520 357 520 c
409 520 466 490 487 454 c
487 389 l
579 389 l
579 612 l
487 612 l
487 560 l
449 595 394 612 349 612 c
222 612 130 529 98 404 c
31 404 l
6 323 l
86 323 l
86 304 l
86 294 86 284 87 274 c
31 274 l
6 193 l
99 193 l
129 77 211 -12 359 -12 c
398 -12 509 8 585 77 c
529 145 l
497 123 436 80 356 80 c
285 80 227 122 198 193 c
360 193 l
cp
600 0 m
}
pdf_PSBuildGlyph
} def
/Courier-BoldOblique /Courier-Bold load def
/Courier
{
600 0 17 -12 578 584
{
17 204 m
97 204 l
126 81 214 -12 361 -12 c
440 -12 517 17 578 62 c
554 109 l
501 70 434 43 366 43 c
266 43 184 101 154 204 c
380 204 l
400 259 l
144 259 l
144 270 143 281 143 292 c
143 299 143 307 144 314 c
418 314 l
438 369 l
153 369 l
177 464 249 529 345 529 c
415 529 484 503 522 463 c
522 391 l
576 391 l
576 584 l
522 584 l
522 531 l
473 566 420 584 348 584 c
216 584 122 490 95 369 c
37 369 l
17 314 l
87 314 l
87 297 l
87 284 88 272 89 259 c
37 259 l
cp
600 0 m
}
pdf_PSBuildGlyph
} def
/Courier-Oblique /Courier load def
/Helvetica
{
556 0 24 -19 541 703
{
541 628 m
510 669 442 703 354 703 c
201 703 117 607 101 444 c
50 444 l
25 372 l
97 372 l
97 301 l
49 301 l
24 229 l
103 229 l
124 67 209 -19 350 -19 c
435 -19 501 25 509 32 c
509 131 l
492 105 417 60 343 60 c
267 60 204 127 197 229 c
406 229 l
430 301 l
191 301 l
191 372 l
455 372 l
479 444 l
194 444 l
201 531 245 624 348 624 c
433 624 484 583 509 534 c
cp
556 0 m
}
pdf_PSBuildGlyph
} def
/Helvetica-Oblique /Helvetica load def
/Helvetica-Bold
{
556 0 12 -19 563 710
{
563 621 m
537 659 463 710 363 710 c
216 710 125 620 101 462 c
51 462 l
12 367 l
92 367 l
92 346 l
92 337 93 328 93 319 c
52 319 l
12 224 l
102 224 l
131 58 228 -19 363 -19 c
417 -19 471 -12 517 18 c
517 146 l
481 115 426 93 363 93 c
283 93 254 166 246 224 c
398 224 l
438 319 l
236 319 l
236 367 l
457 367 l
497 462 l
244 462 l
259 552 298 598 363 598 c
425 598 464 570 486 547 c
507 526 513 517 517 509 c
cp
556 0 m
}
pdf_PSBuildGlyph
} def
/Helvetica-BoldOblique /Helvetica-Bold load def
/Symbol
{
750 0 20 -12 714 685
{
714 581 m
650 645 560 685 465 685 c
304 685 165 580 128 432 c
50 432 l
20 369 l
116 369 l
115 356 115 347 115 337 c
115 328 115 319 116 306 c
50 306 l
20 243 l
128 243 l
165 97 300 -12 465 -12 c
560 -12 635 25 685 65 c
685 155 l
633 91 551 51 465 51 c
340 51 238 131 199 243 c
555 243 l
585 306 l
184 306 l
183 317 182 326 182 336 c
182 346 183 356 184 369 c
614 369 l 644 432 l
199 432 l
233 540 340 622 465 622 c
555 622 636 580 685 520 c
cp
750 0 m
}
pdf_PSBuildGlyph
} def
/Times-Bold
{
500 0 16 -14 478 700
{
367 308 m
224 308 l
224 368 l
375 368 l
380 414 l
225 414 l
230 589 257 653 315 653 c
402 653 431 521 444 457 c
473 457 l
473 698 l
444 697 l
441 679 437 662 418 662 c
393 662 365 700 310 700 c
211 700 97 597 73 414 c
21 414 l
16 368 l
69 368 l
69 359 68 350 68 341 c
68 330 68 319 69 308 c
21 308 l
16 262 l
73 262 l
91 119 161 -14 301 -14 c
380 -14 443 50 478 116 c
448 136 l
415 84 382 40 323 40 c
262 40 231 77 225 262 c
362 262 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-BoldItalic
{
500 0 9 -20 542 686
{
542 686 m
518 686 l
513 673 507 660 495 660 c
475 660 457 683 384 683 c
285 683 170 584 122 430 c
58 430 l
34 369 l
105 369 l
101 354 92 328 90 312 c
34 312 l
9 251 l
86 251 l
85 238 84 223 84 207 c
84 112 117 -14 272 -14 c
326 -14 349 9 381 9 c
393 9 393 -10 394 -20 c
420 -20 l
461 148 l
429 148 l
416 109 362 15 292 15 c
227 15 197 55 197 128 c
197 162 204 203 216 251 c
378 251 l
402 312 l
227 312 l
229 325 236 356 241 369 c
425 369 l
450 430 l
255 430 l
257 435 264 458 274 488 c
298 561 337 654 394 654 c
437 654 484 621 484 530 c
484 516 l
516 516 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-Italic
{
500 0 23 -10 595 692
{
399 317 m
196 317 l
199 340 203 363 209 386 c
429 386 l
444 424 l
219 424 l
246 514 307 648 418 648 c
448 648 471 638 492 616 c
529 576 524 529 527 479 c
549 475 l
595 687 l
570 687 l
562 674 558 664 542 664 c
518 664 474 692 423 692 c
275 692 162 551 116 424 c
67 424 l
53 386 l
104 386 l
98 363 93 340 90 317 c
37 317 l
23 279 l
86 279 l
85 266 85 253 85 240 c
85 118 137 -10 277 -10 c
370 -10 436 58 488 128 c
466 149 l
424 101 375 48 307 48 c
212 48 190 160 190 234 c
190 249 191 264 192 279 c
384 279 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-Roman
{
500 0 10 -12 484 692
{
347 298 m
171 298 l
170 310 170 322 170 335 c
170 362 l
362 362 l
374 403 l
172 403 l
184 580 244 642 308 642 c
380 642 434 574 457 457 c
481 462 l
474 691 l
449 691 l
433 670 429 657 410 657 c
394 657 360 692 299 692 c
204 692 94 604 73 403 c
22 403 l
10 362 l
70 362 l
69 352 69 341 69 330 c
69 319 69 308 70 298 c
22 298 l
10 257 l
73 257 l
97 57 216 -12 295 -12 c
364 -12 427 25 484 123 c
458 142 l
425 101 384 37 316 37 c
256 37 189 84 173 257 c
335 257 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
end
Level2? {setglobal} if
currentdict readonly pop end
%%EndResource
PDFText begin
[39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis
/Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute
/egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde
/oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex
/udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls
/registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash
/.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef
/.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash
/questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef
/guillemotleft/guillemotright/ellipsis/space/Agrave/Atilde/Otilde/OE/oe
/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide
/.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright
/fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand
/Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex
/Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex
/Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla
/hungarumlaut/ogonek/caron
0 TE
[1/dotlessi/caron 39/quotesingle 96/grave
127/bullet/Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis
/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE
/bullet/Zcaron/bullet/bullet/quoteleft/quoteright/quotedblleft
/quotedblright/bullet/endash/emdash/tilde/trademark/scaron
/guilsinglright/oe/bullet/zcaron/Ydieresis/space/exclamdown/cent/sterling
/currency/yen/brokenbar/section/dieresis/copyright/ordfeminine
/guillemotleft/logicalnot/hyphen/registered/macron/degree/plusminus
/twosuperior/threesuperior/acute/mu/paragraph/periodcentered/cedilla
/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis
/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply/Oslash
/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave
/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla/egrave/eacute
/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis/eth/ntilde
/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave/uacute
/ucircumflex/udieresis/yacute/thorn/ydieresis
1 TE
end
%%BeginResource: procset pdfasc.prc 6.0 1
%%Copyright: Copyright 1992-2003 Adobe Systems Incorporated. All Rights Reserved.
/ASR {
13 dict begin
/mirV? exch def
/mirH? exch def
/center? exch def
/autorotate? exch def
/angle exch def
/shrink exch def
/Pury exch def
/Purx exch def
/Plly exch def
/Pllx exch def
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
Dury 0 eq Durx 0 eq and Dlly 0 eq Dllx 0 eq and and
{ shrink 0 gt { GClipBBox } { GPageBBox } ifelse }
{ ITransDBBox }
ifelse
/PHt Pury Plly sub def
/PW Purx Pllx sub def
/DHt Dury Dlly sub def
/DW Durx Dllx sub def
angle 90 eq angle 270 eq or
{
PHt /PHt PW def /PW exch def
} if
autorotate? PHt PW ne and DHt DW ne and
{
DHt DW ge
PHt PW ge
ne
{ /angle angle 90 add def
PHt /PHt PW def /PW exch def
}
if
} if
angle 0 ne
{
/angle angle 360 mod def
angle rotate
angle 90 eq
{ 0 DW neg translate }
if
angle 180 eq
{ DW neg DHt neg translate }
if
angle 270 eq
{ DHt neg 0 translate }
if
} if
center?
{
ITransBBox
Durx Dllx add 2 div Dury Dlly add 2 div
Purx Pllx add -2 div Pury Plly add -2 div
3 -1 roll add exch
3 -1 roll add exch
translate
}
{
ITransBBox
angle 0 eq
{Dllx Pllx sub Dury Pury sub}
if
angle 90 eq
{Durx Purx sub Dury Pury sub}
if
angle 180 eq
{Durx Purx sub Dlly Plly sub}
if
angle 270 eq
{Dllx Pllx sub Dlly Plly sub}
if
translate
}
ifelse
mirH? mirV? or
{
ITransBBox
mirH?
{
-1 1 scale
Durx Dllx add neg 0 translate
} if
mirV?
{
1 -1 scale
0 Dury Dlly add neg translate
} if
} if
shrink 0 ne
{
ITransBBox
Dury Dlly sub Pury Plly sub div
Durx Dllx sub Purx Pllx sub div
2 copy gt { exch } if pop
shrink 1 eq
{
Durx Dllx add 2 div Dury Dlly add 2 div translate
dup scale
Purx Pllx add -2 div Pury Plly add -2 div translate
}
{
shrink 2 eq 1 index 1.0 lt and
{
Durx Dllx add 2 div Dury Dlly add 2 div translate
dup scale
Purx Pllx add -2 div Pury Plly add -2 div translate
}
{ pop }
ifelse
}
ifelse
} if
end
} [/autorotate? /shrink? /mirH? /mirV? /angle /Pury /Purx /Plly /Pllx /Durx /Dury /Dllx /Dlly /PW /PHt /DW /DHt
/Devurx /Devury /Devllx /Devlly /pdfHt /pdfW]
bld
/GClipBBox
{
gsave newpath clippath pathbbox newpath grestore
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
ITransDBBox
} [/Durx /Dury /Dllx /Dlly]
bld
/GPageBBox
{
{
currentpagedevice /PageSize get aload pop
/Devury exch def /Devurx exch def
/Devllx 0 def /Devlly 0 def
ITransBBox
}
stopped
{ GClipBBox }
if
} [/Devurx /Devury /Devllx /Devlly ]
bld
/ITransDBBox
{
Durx Dury transform matrix defaultmatrix itransform
/Devury exch def
/Devurx exch def
Dllx Dlly transform matrix defaultmatrix itransform
/Devlly exch def
/Devllx exch def
Devury Devlly lt {/Devlly Devury /Devury Devlly def def} if
Devurx Devllx lt {/Devllx Devurx /Devurx Devllx def def} if
} [/Durx /Dury /Dllx /Dlly /Devurx /Devury /Devllx /Devlly ]
bld
/ITransBBox
{
/um matrix currentmatrix matrix defaultmatrix matrix invertmatrix matrix concatmatrix def
Devllx Devlly um itransform
Devurx Devury um itransform
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
Dury Dlly lt {/Dlly Dury /Dury Dlly def def} if
Durx Dllx lt {/Dllx Durx /Durx Dllx def def} if
} [ /um /Durx /Dury /Dllx /Dlly /Devurx /Devury /Devllx /Devlly ]
bld
%%EndResource
currentdict readonly pop
end end
/currentpacking where {pop setpacking}if
PDFVars/DocInitAll{[PDF PDFText]{/docinitialize get exec}forall }put
-PDFVars/InitAll{[PDF PDFText]{/initialize get exec}forall initgs}put
-PDFVars/TermAll{[PDFText PDF]{/terminate get exec}forall}put
-PDFVars begin PDF begin
PDFVars/DocInitAll get exec PDFVars/InitAll get exec
[/NamespacePush PDFMark5
[/_objdef {Metadata_In_EPS} /type /stream /OBJ PDFMark5
[{Metadata_In_EPS} 3385 (% &end XMP packet& %) ReadByPDFMark5
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
-<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="3.1-701">
- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
- <rdf:Description rdf:about=""
- xmlns:xap="http://ns.adobe.com/xap/1.0/">
- <xap:CreateDate>2006-10-26T22:12:35+02:00</xap:CreateDate>
- <xap:ModifyDate>2006-10-26T22:12:35+02:00</xap:ModifyDate>
- <xap:MetadataDate>2006-10-26T22:12:35+02:00</xap:MetadataDate>
- </rdf:Description>
- <rdf:Description rdf:about=""
- xmlns:xapMM="http://ns.adobe.com/xap/1.0/mm/">
- <xapMM:DocumentID>uuid:69FDC66D66D111DB80A0F3E4B52BCBBC</xapMM:DocumentID>
- <xapMM:InstanceID>uuid:69FDC66D66D111DB80A0F3E4B52BCBBC</xapMM:InstanceID>
- <xapMM:DerivedFrom rdf:parseType="Resource">
- </xapMM:DerivedFrom>
- </rdf:Description>
- <rdf:Description rdf:about=""
- xmlns:pdfx="http://ns.adobe.com/pdfx/1.3/">
- <pdfx:PTEX.Fullbanner>This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4) kpathsea version 3.5.4</pdfx:PTEX.Fullbanner>
- </rdf:Description>
- <rdf:Description rdf:about=""
- xmlns:dc="http://purl.org/dc/elements/1.1/">
- <dc:format>application/eps</dc:format>
- </rdf:Description>
- </rdf:RDF>
-</x:xmpmeta>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<?xpacket end="w"?>
% &end XMP packet& %
[{Metadata_In_EPS} 2 dict begin /Type /Metadata def /Subtype /XML def currentdict end /PUT PDFMark5
[/Document 1 dict begin /Metadata {Metadata_In_EPS} def currentdict end /BDC PDFMark5
[/NamespacePop PDFMark5
PDFVars/TermAll get exec end end
PDF /docinitialize get exec
-
%%EndSetup
PDFVars begin PDF begin PDFVars/InitAll get exec
0.0 0.0 345.0 326.0 rectclip
q
0.0 0.0 m
345.0 0.0 l
345.0 326.0 l
0.0 326.0 l
h
W
n
q
1.0 0.0 0.0 1.0 -12.0 -26.0 cm
q
12.0 26.0 345.0 326.0 re
W
n
q
1.0 0.0 0.0 -1.0 0.0 0.0 cm
n
12.2451 -26.7217 m
12.2451 -26.7217 356.245 -26.7217 356.245 -26.7217 c
356.245 -26.7217 356.245 -351.722 356.245 -351.722 c
356.245 -351.722 12.2451 -351.722 12.2451 -351.722 c
12.2451 -351.722 12.2451 -26.7217 12.2451 -26.7217 c
h
W
n
q
n
0.0 0.0 m
0.0 0.0 368.5 0.0 368.5 0.0 c
368.5 0.0 368.5 -368.5 368.5 -368.5 c
368.5 -368.5 0.0 -368.5 0.0 -368.5 c
0.0 -368.5 0.0 0.0 0.0 0.0 c
h
W
n
0.216 w
2.6131 M
true setSA
n
341.75 -142.05 m
341.75 -142.05 26.7539 -226.453 26.7539 -226.453 c
26.7529 -142.05 m
26.7529 -142.05 341.751 -226.453 341.751 -226.453 c
184.252 -26.7529 m
184.252 -26.7529 184.252 -341.75 184.252 -341.75 c
[/DeviceRGB] cs 0.0 0.0 0.0 sc
S
n
183.908 -274.625 m
233.479 -274.625 273.907 -234.196 273.907 -184.626 c
273.907 -135.056 233.479 -94.6279 183.908 -94.6279 c
134.339 -94.6279 93.9092 -135.056 93.9092 -184.626 c
93.9092 -234.196 134.339 -274.625 183.908 -274.625 c
183.908 -274.625 183.908 -274.625 183.908 -274.625 c
h
1.0 1.0 1.0 sc
eofill
n
184.252 -274.25 m
233.822 -274.25 274.251 -233.821 274.251 -184.251 c
274.251 -134.681 233.822 -94.2529 184.252 -94.2529 c
134.683 -94.2529 94.2529 -134.681 94.2529 -184.251 c
94.2529 -233.821 134.683 -274.25 184.252 -274.25 c
184.252 -274.25 184.252 -274.25 184.252 -274.25 c
h
0.0 0.0 0.0 sc
S
0.5 w
n
203.322 -211.889 m
198.992 -223.866 191.714 -231.42 184.252 -231.42 c
S
0.216 w
[4.536 4.32001 ] 0.0 d
n
184.252 -94.2529 m
159.467 -94.2529 139.253 -134.681 139.253 -184.251 c
139.253 -233.821 159.467 -274.25 184.252 -274.25 c
S
[] 0.0 d
n
274.251 -184.251 m
274.251 -171.858 233.822 -161.751 184.252 -161.751 c
134.683 -161.751 94.2529 -171.858 94.2529 -184.251 c
S
[4.536 4.32001 ] 0.0 d
n
245.714 -167.862 m
245.714 -167.862 97.3701 -207.534 97.3701 -207.534 c
274.251 -184.251 m
274.251 -196.643 233.822 -206.751 184.252 -206.751 c
134.683 -206.751 94.2529 -196.643 94.2529 -184.251 c
S
n
341.75 -142.05 m
341.75 -142.05 334.991 -140.667 334.991 -140.667 c
334.991 -140.667 336.588 -146.628 336.588 -146.628 c
336.588 -146.628 341.75 -142.05 341.75 -142.05 c
341.75 -142.05 341.75 -142.05 341.75 -142.05 c
h
eofill
n
122.901 -167.8 m
122.901 -167.8 271.245 -207.388 271.245 -207.388 c
S
n
26.7539 -142.05 m
26.7539 -142.05 31.916 -146.626 31.916 -146.626 c
31.916 -146.626 33.5137 -140.665 33.5137 -140.665 c
33.5137 -140.665 26.7539 -142.05 26.7539 -142.05 c
26.7539 -142.05 26.7539 -142.05 26.7539 -142.05 c
h
eofill
0.5 w
[] 0.0 d
n
184.252 -184.251 m
184.252 -184.251 220.78 -236.75 220.78 -236.75 c
S
n
219.2 -237.85 m
219.806 -238.72 221.008 -238.938 221.88 -238.332 c
222.752 -237.724 222.966 -236.521 222.361 -235.651 c
221.756 -234.781 220.553 -234.563 219.681 -235.17 c
218.809 -235.777 218.595 -236.98 219.2 -237.85 c
219.2 -237.85 219.2 -237.85 219.2 -237.85 c
h
eofill
n
207.463 -173.769 m
200.537 -172.833 192.301 -172.271 184.252 -172.271 c
172.271 -172.271 160.104 -173.487 151.494 -175.501 c
228.156 -164.612 m
228.156 -164.612 184.252 -184.251 184.252 -184.251 c
S
0.216 w
n
184.252 -94.2529 m
209.037 -94.2529 229.252 -134.681 229.252 -184.251 c
229.252 -233.821 209.037 -274.25 184.252 -274.25 c
S
[4.536 4.32001 ] 0.0 d
n
184.252 -94.2529 m
184.252 -94.2529 184.252 -274.25 184.252 -274.25 c
S
n
184.252 -341.75 m
184.252 -341.75 181.168 -335.579 181.168 -335.579 c
181.168 -335.579 187.339 -335.579 187.339 -335.579 c
187.339 -335.579 184.252 -341.75 184.252 -341.75 c
184.252 -341.75 184.252 -341.75 184.252 -341.75 c
h
eofill
Q
1.0 0.0 0.0 -1.0 0.0 0.0 cm
true setSA
[/DeviceRGB] cs 0.0 0.0 0.0 sc
%ADOBeginSubsetFont: STFBAA+CMMI12-Identity-H Initial
-Adobe_CoolType_Utility begin ct_MakeOCF begin ct_saveCIDInit
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
%%DocumentNeededResources: ProcSet (CIDInit)
%%IncludeResource: ProcSet (CIDInit)
%%BeginResource: CIDFont (STFBAA+CMMI12)
%%Title: (STFBAA+CMMI12 Adobe Identity 0)
%%Version: 0
/CIDInit /ProcSet findresource begin
14 dict begin
/CIDFontName /STFBAA+CMMI12 def
/CIDFontType 0 def
/CIDSystemInfo 3 dict dup begin
/Registry (Adobe) def
/Ordering (Identity) def
/Supplement 0 def
end def
/FontBBox {-31 -250 1026 750} def
/FontInfo 5 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/FSType 4 def
end def
/CIDMapOffset 57 def
/FDBytes 1 def
/GDBytes 1 def
/CIDCount 121 def
/CDevProc {pop pop pop pop pop 0 -1000 7 index 2 div 880} def
/FDArray 1 array
dup 0
%ADOBeginFontDict
4 dict dup begin
/FontType 1 def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
%ADOBeginPrivateDict
/Private 12 dict dup begin
/BlueValues [-21 -0 431 441 452 463 683 704] def
/OtherBlues [-204 -194] def
/BlueScale 0.04379 def
/StdHW [22] def
/StdVW [65] def
/StemSnapH [22 29] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs[{}{}{}{systemdict/internaldict known not{pop 3}{1183615869
systemdict/internaldict get exec dup/startlock known{/startlock get exec}{dup
/strtlck known{/strtlck get exec}{pop 3}ifelse}ifelse}ifelse}executeonly]def
/SubrMapOffset 0 def
/SDBytes 1 def
/SubrCount 5 def
end def
%ADOEndPrivateDict
end put
%ADOEndFontDict
def
/GlyphDirectory 1 dict def
ct_GlyphDirProcs begin
GlyphDirectory
+
0 <001C60D8A8C9B81F2CC3> |
!
end
ct_AddStdCIDMap
%%EndResource
ct_restoreCIDInit /STFBAA+CMMI12-Identity-H /Identity-H 0 [/STFBAA+CMMI12] ct_ComposeFont pop end end
-%ADOEndSubsetFont
-%%BeginResource: encoding
% Identity-H
%PDF_BeginEncoding: N8 (STFBAA+CMMI12-Identity-H)
-/N8 (STFBAA+CMMI12-Identity-H) /Identity-H [ (STFBAA+CMMI12) ]
- /NoSubstitution [ /Serif ] 0 TZzero
-%%EndResource
214.132 215.992 m
%ADOBeginSubsetFont: STFBAA+CMMI12-Identity-H AddGlyphs
-Adobe_CoolType_Utility begin ct_MakeOCF begin ct_GlyphDirProcs begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
/STFBAA+CMMI12 1 GetGlyphDirectory
114 <001C60D8A8C9B7628037FFC34225CDB51C16B6280E0517770F69131E099
966F689816DBB94E394FAC1DD9A7C1A14C9636A7D2A8B72705C22612EFEFFA6E
5264FF4EBF61CD9C4DD8B27578E011E8DDEBF419CAC1F6A2F1FE994DF5C901FD
0BEA9E7C62177556CCE084E3BECB95D975A4D2F2A65A78E12C3AB4ACCE568AEB
738452E5B0C6CD2019C0B9AA154E192BB18B0CE92FA48AF13577432A54DCB746
56A4A13E51A965BFC9D023FADEC3106AF414E85A814E3E3249DD8D208FADB8DC
3FB27> |
!
end
end end
-%ADOEndSubsetFont
-/N8 11.955 Tf
(\000r) show
345.669 136.324 m
%ADOBeginSubsetFont: STFBAA+CMMI12-Identity-H AddGlyphs
-Adobe_CoolType_Utility begin ct_MakeOCF begin ct_GlyphDirProcs begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
/STFBAA+CMMI12 1 GetGlyphDirectory
120 <001C60D8A8C9B7EF325DF88715F012E085EB64F0A4FE8713D04CDEA9CB2
0E9B15249D56AC8A0C2E0E12761B3B972D802D5F8B18F4F576C2666702361F5C
2B48D78C52532223071C01FA681430DA735F1A7AE51C80B9138D3695956A62D9
B460B17A4E36DAB726D8A63568FAB7BE160BEDB176EF49099F6F41A5863B069F
194EE62B71BD3B36F4A3FC9946AAB077F14F50A9438F7F58BFD49954B5720AE5
7E171B43DB3AF9DBD54119DEA2A7A1C00079C808029D90A7EF0A91CB3EF0628D
6A42D1F0CCEC95B876569E8B0C44DA543AE071E278458104AF4D774998DBD764
C7F96602C> |
!
end
end end
-%ADOEndSubsetFont
-(\000x) show
%ADOBeginSubsetFont: EUOAAA+CMR8-Identity-H Initial
-Adobe_CoolType_Utility begin ct_MakeOCF begin ct_saveCIDInit
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
%%DocumentNeededResources: ProcSet (CIDInit)
%%IncludeResource: ProcSet (CIDInit)
%%BeginResource: CIDFont (EUOAAA+CMR8)
%%Title: (EUOAAA+CMR8 Adobe Identity 0)
%%Version: 0
/CIDInit /ProcSet findresource begin
14 dict begin
/CIDFontName /EUOAAA+CMR8 def
/CIDFontType 0 def
/CIDSystemInfo 3 dict dup begin
/Registry (Adobe) def
/Ordering (Identity) def
/Supplement 0 def
end def
/FontBBox {-36 -250 1070 750} def
/FontInfo 5 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/FSType 4 def
end def
/CIDMapOffset 57 def
/FDBytes 1 def
/GDBytes 1 def
/CIDCount 52 def
/CDevProc {pop pop pop pop pop 0 -1000 7 index 2 div 880} def
/FDArray 1 array
dup 0
%ADOBeginFontDict
4 dict dup begin
/FontType 1 def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
%ADOBeginPrivateDict
/Private 13 dict dup begin
/BlueValues [-21 -0 431 446 665 675 683 704] def
/OtherBlues [-205 -194] def
/BlueScale 0.04379 def
/StdHW [28] def
/StdVW [76] def
/StemSnapH [28 33] def
/StemSnapV [76 92] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs[{}{}{}{systemdict/internaldict known not{pop 3}{1183615869
systemdict/internaldict get exec dup/startlock known{/startlock get exec}{dup
/strtlck known{/strtlck get exec}{pop 3}ifelse}ifelse}ifelse}executeonly]def
/SubrMapOffset 0 def
/SDBytes 1 def
/SubrCount 5 def
end def
%ADOEndPrivateDict
end put
%ADOEndFontDict
def
/GlyphDirectory 1 dict def
ct_GlyphDirProcs begin
GlyphDirectory
+
0 <001C60D8A8C9B808980A> |
!
end
ct_AddStdCIDMap
%%EndResource
ct_restoreCIDInit /EUOAAA+CMR8-Identity-H /Identity-H 0 [/EUOAAA+CMR8] ct_ComposeFont pop end end
-%ADOEndSubsetFont
-%%BeginResource: encoding
% Identity-H
%PDF_BeginEncoding: N9 (EUOAAA+CMR8-Identity-H)
-/N9 (EUOAAA+CMR8-Identity-H) /Identity-H [ (EUOAAA+CMR8) ]
- /NoSubstitution [ /Serif ] 0 TZzero
-%%EndResource
352.321 134.531 m
%ADOBeginSubsetFont: EUOAAA+CMR8-Identity-H AddGlyphs
-Adobe_CoolType_Utility begin ct_MakeOCF begin ct_GlyphDirProcs begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
/EUOAAA+CMR8 1 GetGlyphDirectory
50 <001C60D8A8C9B7883C479819BD474E9964F6BF369AAF487ABFE629F8A563
37D176F7C9556B1CAAE607CA6285C927013D8BDE6137B6739AFDAF8D7D8B1E86
BAFBB9D834592D58F996DFF88B929F1FABA7347C2BBDB5519BE210DDE834DD1D
CB9A84AA77E585DFD5A86708901622F6AC3CFFFF626D8C5FD08A157C4A8F19F7
F5FA2E61175441FDD6> |
!
end
end end
-%ADOEndSubsetFont
-/N9 7.96999 Tf
(\0002) show
12.6611 136.324 m
/N8 11.955 Tf
(\000x) show
19.313 134.531 m
%ADOBeginSubsetFont: EUOAAA+CMR8-Identity-H AddGlyphs
-Adobe_CoolType_Utility begin ct_MakeOCF begin ct_GlyphDirProcs begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
/EUOAAA+CMR8 1 GetGlyphDirectory
49 <001C60D8A8C9B7883C47E9695A643EC7CDC9D492AB150D29B838BCDE5298
51B4F36139BB3C5556B7F7E4934494C8CA669B61323ACA68A6240E429D123FC3
10871A43C3C2B8652E724507A70C99EC1FF6EE1EA351C2BAEF> |
!
end
end end
-%ADOEndSubsetFont
-/N9 7.96999 Tf
(\0001) show
180.665 346.329 m
/N8 11.955 Tf
(\000x) show
187.317 344.536 m
%ADOBeginSubsetFont: EUOAAA+CMR8-Identity-H AddGlyphs
-Adobe_CoolType_Utility begin ct_MakeOCF begin ct_GlyphDirProcs begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
/EUOAAA+CMR8 1 GetGlyphDirectory
51 <001C60D8A8C9B7883CBAA92B92A60ED97CC7706D34A36348BC2B93805C7C
1833580FAA27E95855649C4EE0492E1681D62AEDB7EC0D4D44FE91FF7AD4665F
D8D6994E56FB00B47353D8538086D2C46021ADFB3F80264F6C2EF23799D21E81
ACDE63FE62C97F7BE27D7DCE3B9BAF5B096FE9F9E10574C4FE3C149B03DD0A59
DE10D784DCCBFDFC6D3C5399775DC28DB91A04691B5B8F3D1C009DFAB49BB818
D90EA7C1> |
!
end
end end
-%ADOEndSubsetFont
-/N9 7.96999 Tf
(\0003) show
Q
1.0 0.0 0.0 -1.0 0.0 0.0 cm
0.216 w
2.6131 M
true setSA
n
84.2622 -157.449 m
84.2622 -157.449 122.901 -167.8 122.901 -167.8 c
[/DeviceRGB] cs 0.0 0.0 0.0 sc
S
4.0 M
n
282.892 -157.826 m
282.892 -157.826 245.092 -167.955 245.092 -167.955 c
S
1.0 0.0 0.0 -1.0 0.0 0.0 cm
188.661 211.324 m
%ADOBeginSubsetFont: STFBAA+CMMI12-Identity-H AddGlyphs
-Adobe_CoolType_Utility begin ct_MakeOCF begin ct_GlyphDirProcs begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
/STFBAA+CMMI12 1 GetGlyphDirectory
35 <001C60D8A8C9B7FA1301BE6180781D244B43F2F97D795A8C67AF297570B2
5D011F7553AE87DA67246C75A123D38A7E2A9E73C089D0155659C213520B6BF3
708CF9E463A551165DF528979C5D29939E4C663B7CB9ACD2D34590AACA015370
E594274B63269C8F1CFCDE8C91D720B13F6B93C2E0C4CB325FAAA90199F590A1
AC543010663224FE9AA5C2BA7CFE5A136E95946849176A836312B7F034FCF4D6
AC1AC7238CDCD1DE8CE95FDACABE12915BD7468460A9C53C13689C62E4957EFA
9AD8D18B2997483879F7A346270DF44C1AE41B892E443E6FAAAFC0E03E3402EC
ABE2B7246DA1D5670AD7110BF40E94066EA9490675CB0A81BEFFC608EFE8EB9C> |
!
end
end end
-%ADOEndSubsetFont
-/N8 11.955 Tf
(\000#) show
175.161 175.824 m
%ADOBeginSubsetFont: STFBAA+CMMI12-Identity-H AddGlyphs
-Adobe_CoolType_Utility begin ct_MakeOCF begin ct_GlyphDirProcs begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
/STFBAA+CMMI12 1 GetGlyphDirectory
39 <001C60D8A8C9B6747BB73B43E39C205190D75AB2FA80068C30CFF75B781B
8EF25B40D3CE1F8BF1235B5920904D98C1751ACD1ECE66AA5D36E6C1B0A82706
3C26C16EF05F21A86369CC9EEB5C4FBFDD1B1033971034EB6BB92D726AF889E8
FAEBC642112085AE58F32148895EE95BF45DBD1651424FB17E02ED87E805BC12
A8D7FC6BBCEE3EDEE61F46B81CD695594BD8913AA6E31AFF96FA2BC0EB511234
DC983CFE742ECE43A47058200D1BD7CA0237343381C2D71B3385B4C3D1> |
!
end
end end
-%ADOEndSubsetFont
-(\000') show
225.161 241.324 m
%ADOBeginSubsetFont: STFBAA+CMMI12-Identity-H AddGlyphs
-Adobe_CoolType_Utility begin ct_MakeOCF begin ct_GlyphDirProcs begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
/STFBAA+CMMI12 1 GetGlyphDirectory
24 <001C60D8A8C9B71063258B553F1B532EC10F40E30216C77B3F0B5660F268
1931B66B80D025CB05EB0F48CA6066E901D78AA8BDBA0138C54FFF8BC2753E84
22BAE3AE8CA07E859A4B65B4D5BD4727F3F9107AA32A4A57EB21B5630206288D
D3BEEDDAA3A69061629F0A34376B6E16CE06067FD5361A33C8D6231C3893FBC2
7DA84816540B60AC54A3B46F95C2017D13E3D6A05441ECC1CCFCC0E271B2EB89
2AA15AB9593923D3AFC1719CB0C359E9F3496DECE857F42C607298AB3F002EE3
10452C9265BCFBD8D84E2C48799C08153602DF1797D52F8C67BDFAEBA64E17B0
DD653E1C5FDC09B8B1BE444DD31C2CCE33B522DE3589EF9276F4E8BDDA185B4D
FFD3F802509F0BBF017DBB660603BE2B25606F1B38D53804373299EC38C0556E
CA9B2D754890C919EA4C2FFA9F42AAF4905ECF7BF321854AD8259B94818A6467
EBBE549BDD6FDF0210134D> |
!
end
end end
-%ADOEndSubsetFont
-(\000\030) show
Q
Q
Q
/STFBAA+CMMI12 /CIDFont _pdfUndefineResource
/STFBAA+CMMI12-Identity-H /Font _pdfUndefineResource
/N8 /Font _pdfUndefineResource
/EUOAAA+CMR8 /CIDFont _pdfUndefineResource
/EUOAAA+CMR8-Identity-H /Font _pdfUndefineResource
/N9 /Font _pdfUndefineResource
[/EMC PDFMark5
PDFVars/TermAll get exec end end
%%PageTrailer
%%Trailer
%%EOF
\ No newline at end of file
diff --git a/doc/api/latex/images/sphere.pdf b/doc/api/latex/images/sphere.pdf
deleted file mode 100755
index ee88c7d..0000000
Binary files a/doc/api/latex/images/sphere.pdf and /dev/null differ
diff --git a/doc/logo/nfft_logo.tif b/doc/logo/nfft_logo.tif
deleted file mode 100644
index 76c053e..0000000
Binary files a/doc/logo/nfft_logo.tif and /dev/null differ
diff --git a/doc/tutorial/README b/doc/tutorial/README
deleted file mode 100644
index a86b7bb..0000000
--- a/doc/tutorial/README
+++ /dev/null
@@ -1,9 +0,0 @@
-am 16.03.07 die Version 1490 zu TOMS geschickt.
-am 21.02.08 die Version 2153 zu TOMS geschickt mit den Files
-comments1.pdf comments2.pdf comments3.pdf
-
-am 07.09.08 die Version 2545 in ACM-TOMS Style umgeschrieben.
-zuvor die Aenderungen der 2. Gutachterrunde eingebaut.
-answer.tex - endgueltiger Brief an Editor in Chief und den Assoc. Editor.
-
-am 24.10.08 die Version 2577 mit dem Brief answer.tex eingereicht.
diff --git a/doc/tutorial/acmtrans.bst b/doc/tutorial/acmtrans.bst
deleted file mode 100644
index bc80d4a..0000000
--- a/doc/tutorial/acmtrans.bst
+++ /dev/null
@@ -1,1770 +0,0 @@
-% "ACM Transactions" BibTeX style, acmtrans.bst
-% for BibTeX version 0.99c, LaTeX version 3.141
-% Revised 28-MARCH-1996
-% Revised 30-JUNE-1995
-% Revised 15-JAN-1996
-% $Header: acmtrans.bst,v 1.2 96/01/17 09:05:38 boyland Exp $
-%
-% Hacked by John T. Boyland at University of California, Berkeley
-% (with assistance by John R. Hauser)
-% Hacked by Andrew W. Appel and Rebecca L. Davies at Princeton University,
-% based on a "chicago.bst" by Glenn Paulley at U. Waterloo,
-% which was based on "newapa.bst" found at ymir.claremont.edu.
-%
-% Citation format: [author-last-name year]
-% [author-last-name and author-last-name year]
-% [author-last-name, author-last-name, and author-last-name year]
-% [author-last-name et al. year]
-% [author-last-name]
-% author-last-name [year]
-% [author-last-name and author-last-name]
-% [author-last-name et al.]
-% [year] or [year,year]
-% year or year,year
-%
-% Reference list ordering: alphabetical by author or whatever passes
-% for author in the absence of one.
-%
-% This BibTeX style has support for abbreviated author lists and for
-% year-only citations. This is done by having the citations
-% actually look like
-%
-% \citeauthoryear{full-author-info}{abbrev-author-info}{year}
-%
-% The LaTeX style has to have the following (or similar)
-%
-% \let\@internalcite\cite
-% \def\fullcite{\def\citeauthoryear##1##2##3{##1, ##3}\@internalcite}
-% \def\fullciteA{\def\citeauthoryear##1##2##3{##1}\@internalcite}
-% \def\shortcite{\def\citeauthoryear##1##2##3{##2, ##3}\@internalcite}
-% \def\shortciteA{\def\citeauthoryear##1##2##3{##2}\@internalcite}
-% \def\citeyear{\def\citeauthoryear##1##2##3{##3}\@internalcite}
-%
-% These TeX macro definitions are found in acmtrans.sty. Additional
-% commands to manipulate different components of a citation can be defined
-% so that, for example, you can list author's names without parentheses
-% if using a citation as a noun or object in a sentence.
-%
-% Features of acmtrans.bst:
-% ========================
-%
-% - all authors appear last name first.
-% - all pages are listed xx-xx, (no pp.) and are at the end of the reference
-% - publishers are identified as publisher, address
-% - conferences papers (inproceedings) may give city of conference,
-% date of conference, and journal that the proceedings appear in.
-% - months abbreviated to max four letters (eg. Mar.)
-% - volume of a series indicated after the title of the series
-% - editors appear after edited title and are identified by a trailing "Eds."
-% not in parentheses. Editor names are not given in small caps.
-% (unless there is no author line)
-% - names terminated with a period even if there is no first name.
-% - editions are indicated trailing after the work, not in parentheses.
-% - "et al." citations have a protected period to avoid bad spacing (jrh)
-% - "address" required when publisher given
-% - series (roman) and volume are in a sentence separate from (book-)title
-%
-%
-% Features of chicago.bst:
-% =======================
-%
-% - full names used in citations, but abbreviated citations are available
-% (see above)
-% - if an entry has a "month", then the month and year are also printed
-% as part of that bibitem.
-% - all conjunctions use "and" instead of "\&"
-% - major modification from Chicago Manual of Style (13th ed.) is that
-% only the first author in a reference appears last name first-
-% additional authors appear as J. Q. Public.
-% - pages are listed as "pp. xx-xx" in all entry types except
-% article entries.
-% - book, inbook, and manual use "location: publisher" (or organization)
-% for address and publisher. All other types list publishers separately.
-% - "pp." are used to identify page numbers for all entry types except
-% articles.
-% - organization is used as a citation label if neither author nor editor
-% is present (for manuals).
-% - "et al." is used for long author and editor lists, or when "others"
-% is used.
-%
-% Modifications and bug fixes from newapa.bst:
-% ===========================================
-%
-% - added month, year to bib entries if month is present
-% - fixed bug with In proceedings, added necessary comma after title
-% - all conjunctions changed to "and" from "\&"
-% - fixed bug with author labels in my.full.label: "et al." now is
-% generated when "others" is an author name
-% - major modification from Chicago Manual of Style (13th ed.) is that
-% only the first author in a reference appears last name first-
-% additional authors appear as J. Q. Public.
-% - pages are listed as "pp. xx-xx" in all entry types except
-% article entries. Unnecessary (IMHO) "()" around page numbers
-% were removed, and page numbers now don't end with a period.
-% - created chicago.sty for use with this bibstyle (required).
-% - fixed bugs in FUNCTION {format.vol.num.pages} for missing volume,
-% number, and /or pages. Renamed to format.jour.vol.
-% - fixed bug in formatting booktitles: additional period an error if
-% book has a volume.
-% - fixed bug: editors usually given redundant period before next clause
-% (format.editors.dot) removed.
-% - added label support for organizations, if both author and editor
-% are missing (from alpha.bst). If organization is too long, then
-% the key field is used for abbreviated citations.
-% - In proceedings or books of several volumes, no comma was written
-% between the "Volume x" and the page numbers (this was intentional
-% in newapa.bst). Fixed.
-% - Some journals may not have volumes/numbers, only month/year (eg.
-% IEEE Computer). Fixed bug in article style that assumed volume/number
-% was always present.
-%
-% Original documentation for newapa.sty:
-% =====================================
-%
-% This version was made by modifying the master file made by
-% Oren Patashnik (PATASHNIK at SCORE.STANFORD.EDU), and the 'named' BibTeX
-% style of Peter F. Patel-Schneider.
-%
-% Copyright (C) 1985, all rights reserved.
-% Copying of this file is authorized only if either
-% (1) you make absolutely no changes to your copy, including name, or
-% (2) if you do make changes, you name it something other than 'newapa.bst'.
-% There are undoubtably bugs in this style. If you make bug fixes,
-% improvements, etc. please let me know. My e-mail address is:
-% spencer at cgrg.ohio.state.edu or 71160.3141 at compuserve.com
-%
-% This style was made from 'plain.bst', 'named.bst', and 'apalike.bst',
-% with lots of tweaking to make it look like APA style, along with tips
-% from Young Ryu and Brian Reiser's modifications of 'apalike.bst'.
-
-ENTRY
- { address
- author
- booktitle
- chapter
- city % jtb: added
- date % jtb: added
- edition
- editor
- howpublished
- institution
- journal
- key
- month
- note
- number
- organization
- pages
- publisher
- school
- series
- title
- type
- volume
- year
- }
- {}
- { label.year extra.label sort.year sort.label }
-
-INTEGERS { output.state before.all mid.sentence after.sentence after.block }
-
-FUNCTION {init.state.consts}
-{ #0 'before.all :=
- #1 'mid.sentence :=
- #2 'after.sentence :=
- #3 'after.block :=
-}
-
-STRINGS { s t u }
-
-FUNCTION {output.nonnull}
-{ 's :=
- output.state mid.sentence =
- { ", " * write$ }
- { output.state after.block =
- { add.period$ write$
- newline$
- "\newblock " write$
- }
- { output.state before.all =
- 'write$
- { add.period$ " " * write$ }
- if$
- }
- if$
- mid.sentence 'output.state :=
- }
- if$
- s
-}
-
-% Use a colon to separate output. Used only for address/publisher
-% combination in book/inbook types, address/institution for manuals,
-% and organization:publisher for proceedings (inproceedings).
-%
-FUNCTION {output.nonnull.colon}
-{ 's :=
- output.state mid.sentence =
- { ": " * write$ }
- { output.state after.block =
- { add.period$ write$
- newline$
- "\newblock " write$
- }
- { output.state before.all =
- 'write$
- { add.period$ " " * write$ }
- if$
- }
- if$
- mid.sentence 'output.state :=
- }
- if$
- s
-}
-
-FUNCTION {output}
-{ duplicate$ empty$
- 'pop$
- 'output.nonnull
- if$
-}
-
-FUNCTION {output.colon}
-{ duplicate$ empty$
- 'pop$
- 'output.nonnull.colon
- if$
-}
-
-FUNCTION {output.check}
-{ 't :=
- duplicate$ empty$
- { pop$ "empty " t * " in " * cite$ * warning$ }
- 'output.nonnull
- if$
-}
-
-FUNCTION {output.check.colon}
-{ 't :=
- duplicate$ empty$
- { pop$ "empty " t * " in " * cite$ * warning$ }
- 'output.nonnull.colon
- if$
-}
-
-FUNCTION {output.year.check}
-{ year empty$
- { "empty year in " cite$ * warning$ }
- { write$
- " " year * extra.label *
- mid.sentence 'output.state :=
- }
- if$
-}
-
-
-FUNCTION {fin.entry}
-{ add.period$
- write$
- newline$
-}
-
-FUNCTION {new.block}
-{ output.state before.all =
- 'skip$
- { after.block 'output.state := }
- if$
-}
-
-FUNCTION {new.sentence}
-{ output.state after.block =
- 'skip$
- { output.state before.all =
- 'skip$
- { after.sentence 'output.state := }
- if$
- }
- if$
-}
-
-FUNCTION {not}
-{ { #0 }
- { #1 }
- if$
-}
-
-FUNCTION {and}
-{ 'skip$
- { pop$ #0 }
- if$
-}
-
-FUNCTION {or}
-{ { pop$ #1 }
- 'skip$
- if$
-}
-
-FUNCTION {new.block.checka}
-{ empty$
- 'skip$
- 'new.block
- if$
-}
-
-FUNCTION {new.block.checkb}
-{ empty$
- swap$ empty$
- and
- 'skip$
- 'new.block
- if$
-}
-
-FUNCTION {new.sentence.checka}
-{ empty$
- 'skip$
- 'new.sentence
- if$
-}
-
-FUNCTION {new.sentence.checkb}
-{ empty$
- swap$ empty$
- and
- 'skip$
- 'new.sentence
- if$
-}
-
-FUNCTION {field.or.null}
-{ duplicate$ empty$
- { pop$ "" }
- 'skip$
- if$
-}
-
-%
-% Emphasize the top string on the stack.
-%
-FUNCTION {emphasize}
-{ duplicate$ empty$
- { pop$ "" }
- { "{\em " swap$ * "}" * }
- if$
-}
-
-%
-% Emphasize the top string on the stack, but add a trailing space.
-%
-FUNCTION {emphasize.space}
-{ duplicate$ empty$
- { pop$ "" }
- { "{\em " swap$ * "\/}" * }
- if$
-}
-
-%
-% Emphasize the top string on stack, add a trailing comma and space.
-%
-FUNCTION {emphasize.comma}
-{ duplicate$ empty$
- { pop$ "" }
- { "{\em " swap$ * ",\/}" * }
- if$
-}
-
-INTEGERS { nameptr namesleft numnames }
-%
-% Format bibliographical entries with the first author last name first,
-% and subsequent authors with initials followed by last name.
-% All names are formatted in this routine.
-%
-
-FUNCTION {format.names}
-{ 's :=
- #1 'nameptr := % nameptr = 1;
- s num.names$ 'numnames := % numnames = num.name$(s);
- numnames 'namesleft :=
- { namesleft #0 > }
-
- { nameptr #1 =
- {"{\sc " s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ * "}" * 't := }
- {"{\sc " s nameptr "{vv~}{ll}{, jj}{, f.}" format.name$ * "}" * 't := }
- if$
- nameptr #1 >
- { namesleft #1 >
- { ", " * t * }
- { numnames #2 >
- { "," * }
- 'skip$
- if$
- t "{\sc others}" =
- { " {\sc et~al\mbox{.}}" * } % jrh: avoid spacing problems
- { " {\sc and} " * t * } % from Chicago Manual of Style
- if$
- }
- if$
- }
- 't
- if$
- nameptr #1 + 'nameptr := % nameptr += 1;
- namesleft #1 - 'namesleft := % namesleft =- 1;
- }
- while$
-}
-
-FUNCTION {my.full.label}
-{ 's :=
- #1 'nameptr := % nameptr = 1;
- s num.names$ 'numnames := % numnames = num.name$(s);
- numnames 'namesleft :=
- { namesleft #0 > }
-
- { s nameptr "{vv~}{ll}" format.name$ 't := % get the next name
- nameptr #1 >
- { namesleft #1 >
- { ", " * t * }
- { numnames #2 >
- { "," * }
- 'skip$
- if$
- t "others" =
- { " et~al\mbox{.}" * } % jrh: avoid spacing problems
- { " and " * t * } % from Chicago Manual of Style
- if$
- }
- if$
- }
- 't
- if$
- nameptr #1 + 'nameptr := % nameptr += 1;
- namesleft #1 - 'namesleft := % namesleft =- 1;
- }
- while$
-
-}
-
-FUNCTION {format.names.fml}
-%
-% Format names in "familiar" format, with first initial followed by
-% last name. Like format.names, ALL names are formatted.
-% jtb: The names are NOT put in small caps
-%
-{ 's :=
- #1 'nameptr := % nameptr = 1;
- s num.names$ 'numnames := % numnames = num.name$(s);
- numnames 'namesleft :=
- { namesleft #0 > }
-
- { "{" s nameptr "{f.~}{vv~}{ll}{, jj}" format.name$ * "}" * 't :=
-
- nameptr #1 >
- { namesleft #1 >
- { ", " * t * }
- { numnames #2 >
- { "," * }
- 'skip$
- if$
- t "{others}" =
- { " {et~al\mbox{.}}" * }
- { " {and} " * t * }
-% { " {\&} " * t * }
- if$
- }
- if$
- }
- 't
- if$
- nameptr #1 + 'nameptr := % nameptr += 1;
- namesleft #1 - 'namesleft := % namesleft =- 1;
- }
- while$
-}
-
-FUNCTION {format.authors}
-{ author empty$
- { "" }
- { author format.names add.period$} % jtb: add period if none before
- if$
-}
-
-FUNCTION {format.key}
-{ empty$
- { key field.or.null }
- { "" }
- if$
-}
-
-%
-% Format editor names for use in the "in" types: inbook, incollection,
-% inproceedings: first initial, then last names. When editors are the
-% LABEL for an entry, then format.editor is used which lists editors
-% by last name first.
-%
-FUNCTION {format.editors.fml}
-{ editor empty$
- { "" }
- { editor format.names.fml
- editor num.names$ #1 >
- { ", Eds." * } % jtb: removed parentheses
- { ", Ed." * } % jtb: removed parentheses
- if$
- }
- if$
-}
-
-%
-% Format editor names for use in labels, last names first.
-%
-FUNCTION {format.editors}
-{ editor empty$
- { "" }
- { editor format.names
- editor num.names$ #1 >
- { ", Eds." * } % jtb: removed parentheses
- { ", Ed." * } % jtb: removed parentheses
- if$
- }
- if$
-}
-
-FUNCTION {format.title}
-{ title empty$
- { "" }
- { title "t" change.case$ }
- if$
-}
-
-% Note that the APA style requres case changes
-% in article titles. The following does not
-% change cases. If you perfer it, uncomment the
-% following and comment out the above.
-
-%FUNCTION {format.title}
-%{ title empty$
-% { "" }
-% { title }
-% if$
-%}
-
-FUNCTION {n.dashify}
-{ 't :=
- ""
- { t empty$ not }
- { t #1 #1 substring$ "-" =
- { t #1 #2 substring$ "--" = not
- { "--" *
- t #2 global.max$ substring$ 't :=
- }
- { { t #1 #1 substring$ "-" = }
- { "-" *
- t #2 global.max$ substring$ 't :=
- }
- while$
- }
- if$
- }
- { t #1 #1 substring$ *
- t #2 global.max$ substring$ 't :=
- }
- if$
- }
- while$
-}
-
-FUNCTION {format.btitle}
-{ edition empty$
- { title emphasize }
- { title empty$
- { title emphasize } % jtb: what is this supposed to do ?!?
- { "{\em " title * "\/}, " * edition * " ed." * } % jtb: no parens for ed.
- if$
- }
- if$
-}
-
-FUNCTION {format.emphasize.booktitle}
-{ edition empty$
- { booktitle emphasize }
- { booktitle empty$
- { booktitle emphasize } % jtb: what is this supposed to do ?!?
- { "{\em " booktitle * "\/}, " * edition * " ed." * } % jtb: no ()s for ed.
- if$
- }
- if$
- }
-
-% jtb: if the preceding string (the title of the conference) is non-empty,
-% jtb: append the location, otherwise leave empty (so as to trigger the
-% jtb: error message in output.check
-FUNCTION {format.city}
-{ duplicate$ empty$
- { }
- { city empty$
- { date empty$
- { }
- { " (" * date * ")" * }
- if$
- }
- { date empty$
- { " (" * city * ")" * }
- { " (" * city * ", " * date * ")" * }
- if$
- }
- if$
- }
- if$
-}
-
-FUNCTION {tie.or.space.connect}
-{ duplicate$ text.length$ #3 <
- { "~" }
- { " " }
- if$
- swap$ * *
-}
-
-FUNCTION {either.or.check}
-{ empty$
- 'pop$
- { "can't use both " swap$ * " fields in " * cite$ * warning$ }
- if$
-}
-
-% jtb: If there is a series, this is added and the volume trails after it.
-% jtb: Otherwise, "Vol" is Capitalized.
-FUNCTION {format.bvolume}
-{ volume empty$
- { "" }
- { series empty$
- { "Vol." volume tie.or.space.connect}
- { series ", " * "vol." volume tie.or.space.connect *}
- if$
- "volume and number" number either.or.check
- }
- if$
-}
-
-FUNCTION {format.number.series}
-{ volume empty$
- { number empty$
- { series field.or.null }
- { output.state mid.sentence =
- { "Number" } % gnp - changed to mixed case always
- { "Number" }
- if$
- number tie.or.space.connect
- series empty$
- { "there's a number but no series in " cite$ * warning$ }
- { " in " * series * }
- if$
- }
- if$
- }
- { "" }
- if$
-}
-
-INTEGERS { multiresult }
-
-FUNCTION {multi.page.check}
-{ 't :=
- #0 'multiresult :=
- { multiresult not
- t empty$ not
- and
- }
- { t #1 #1 substring$
- duplicate$ "-" =
- swap$ duplicate$ "," =
- swap$ "+" =
- or or
- { #1 'multiresult := }
- { t #2 global.max$ substring$ 't := }
- if$
- }
- while$
- multiresult
-}
-
-FUNCTION {format.pages}
-{ pages empty$
- { "" }
- { pages multi.page.check
- { pages n.dashify } % gnp - removed () % jtb: removed pp.
- { pages }
- if$
- }
- if$
-}
-
-% By Young (and Spencer)
-% GNP - fixed bugs with missing volume, number, and/or pages
-%
-% Format journal, volume, number, pages for article types.
-%
-FUNCTION {format.jour.vol}
-{ journal empty$
- { "no journal in " cite$ * warning$
- "" }
- { journal emphasize.space }
- if$
- number empty$
- { volume empty$
- { "no number and no volume in " cite$ * warning$
- "" * }
- { "~{\em " * Volume * "}" * }
- if$
- }
- { volume empty$
- {"no volume for " cite$ * warning$
- "~" * number * }
- { "~" *
- volume emphasize.comma
- "~" * number * * }
- if$
- month empty$
- {}
- {" (" * month * ")" *}
- if$
- }
- if$
- pages empty$
- {"page numbers missing in " cite$ * warning$
- "" * } % gnp - place a null string on the stack for output
- { duplicate$ empty$
- { pop$ format.pages }
- { ", " * pages n.dashify * } % gnp - removed pp. for articles
- if$
- }
- if$
-}
-
-FUNCTION {format.chapter.pages}
-{ chapter empty$
- 'format.pages
- { type empty$
- { "Chapter" } % gnp - changed to mixed case
- { type "t" change.case$ }
- if$
- chapter tie.or.space.connect
- pages empty$
- {"page numbers missing in " cite$ * warning$} % gnp - added check
- { ", " * format.pages * }
- if$
- }
- if$
-}
-
-% jtb: format for collections or proceedings not appearing in a journal
-FUNCTION {format.in.emphasize.booktitle}
-{ booktitle empty$
- { "" }
- { "In " format.emphasize.booktitle * }
- if$
-}
-
-% jtb: format for proceedings appearing in a journal
-FUNCTION {format.in.booktitle}
-{ booktitle empty$
- { "" }
- { "In " booktitle * }
- if$
-}
-
-FUNCTION {format.in.ed.booktitle}
-{ booktitle empty$
- { "" }
- { editor empty$
- { "In " format.emphasize.booktitle * }
- % jtb: swapped editor location
- { "In " format.emphasize.booktitle * ", " * format.editors.fml * }
- if$
- }
- if$
-}
-
-FUNCTION {format.thesis.type}
-{ type empty$
- 'skip$
-% {pop$
- {{ "" }
- type "t" change.case$}
- if$
-}
-
-FUNCTION {format.tr.number}
-{ type empty$
- { "Tech. Rep." }
- 'type
- if$
- number empty$
- { "t" change.case$ }
- { number tie.or.space.connect }
- if$
-}
-
-FUNCTION {format.article.crossref}
-{ "See"
- "\citeN{" * crossref * "}" *
-}
-
-FUNCTION {format.crossref.editor}
-{ editor #1 "{vv~}{ll}" format.name$
- editor num.names$ duplicate$
- #2 >
- { pop$ " et~al\mbox{.}" * } % jrh: avoid spacing problems
- { #2 <
- 'skip$
- { editor #2 "{ff }{vv }{ll}{ jj}" format.name$ "others" =
- { " et~al\mbox{.}" * } % jrh: avoid spacing problems
- { " and " * editor #2 "{vv~}{ll}" format.name$ * }
- if$
- }
- if$
- }
- if$
-}
-
-FUNCTION {format.book.crossref}
-{ volume empty$
- { "empty volume in " cite$ * "'s crossref of " * crossref * warning$
- "In "
- }
- { "Volume" volume tie.or.space.connect % gnp - changed to mixed case
- " of " *
- }
- if$
- editor empty$
- editor field.or.null author field.or.null =
- or
- { key empty$
- { series empty$
- { "need editor, key, or series for " cite$ * " to crossref " *
- crossref * warning$
- "" *
- }
- { "{\em " * series * "\/}" * }
- if$
- }
- { key * }
- if$
- }
- { format.crossref.editor * }
- if$
- " \citeN{" * crossref * "}" *
-}
-
-FUNCTION {format.incoll.inproc.crossref}
-{ "See"
- " \citeN{" * crossref * "}" *
-}
-
-% format.lab.names:
-%
-% determines "short" names for the abbreviated author information.
-% "Long" labels are created in calc.label, using the routine my.full.label
-% to format author and editor fields.
-%
-% There are 4 cases for labels. (n=3 in the example)
-% a) one author Foo
-% b) one to n Foo, Bar and Baz
-% c) use of "and others" Foo, Bar et al.
-% d) more than n Foo et al.
-%
-FUNCTION {format.lab.names}
-{ 's :=
- s num.names$ 'numnames :=
- numnames #2 > % change number to number of others allowed before
- % forcing "et al".
- { s #1 "{vv~}{ll}" format.name$ " et~al\mbox{.}" * } % jrh: \mbox{} added
- {
- numnames #1 - 'namesleft :=
- #2 'nameptr :=
- s #1 "{vv~}{ll}" format.name$
- { namesleft #0 > }
- { nameptr numnames =
- { s nameptr "{ff }{vv }{ll}{ jj}" format.name$ "others" =
- { " et~al\mbox{.}" * } % jrh: avoid spacing problems
- { " and " * s nameptr "{vv~}{ll}" format.name$ * }
- if$
- }
- { ", " * s nameptr "{vv~}{ll}" format.name$ * }
- if$
- nameptr #1 + 'nameptr :=
- namesleft #1 - 'namesleft :=
- }
- while$
- }
- if$
-}
-
-FUNCTION {author.key.label}
-{ author empty$
- { key empty$
- { "no key, author in " cite$ * warning$
- cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { author format.lab.names }
- if$
-}
-
-FUNCTION {editor.key.label}
-{ editor empty$
- { key empty$
- { "no key, editor in " cite$ * warning$
- cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { editor format.lab.names }
- if$
-}
-
-FUNCTION {author.key.organization.label}
-%
-% added - gnp. Provide label formatting by organization if author is null.
-%
-{ author empty$
- { organization empty$
- { key empty$
- { "no key, author or organization in " cite$ * warning$
- cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { organization }
- if$
- }
- { author format.lab.names }
- if$
-}
-
-FUNCTION {editor.key.organization.label}
-%
-% added - gnp. Provide label formatting by organization if editor is null.
-%
-{ editor empty$
- { organization empty$
- { key empty$
- { "no key, editor or organization in " cite$ * warning$
- cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { organization }
- if$
- }
- { editor format.lab.names }
- if$
-}
-
-FUNCTION {author.editor.key.label}
-{ author empty$
- { editor empty$
- { key empty$
- { "no key, author, or editor in " cite$ * warning$
- cite$ #1 #3 substring$ }
- 'key
- if$
- }
- { editor format.lab.names }
- if$
- }
- { author format.lab.names }
- if$
-}
-
-FUNCTION {calc.label}
-%
-% Changed - GNP. See also author.organization.sort, editor.organization.sort
-% Form label for BibTeX entry. The classification of which fields are used
-% for which type of entry (book, inbook, etc.) are taken from alpha.bst.
-% The change here from newapa is to also include organization as a
-% citation label if author or editor is missing.
-%
-{ type$ "book" =
- type$ "inbook" =
- or
- 'author.editor.key.label
- { type$ "proceedings" =
- 'editor.key.organization.label
- { type$ "manual" =
- 'author.key.organization.label
- 'author.key.label
- if$
- }
- if$
- }
- if$
-
- author empty$ % generate the full label citation information.
- { editor empty$
- { organization empty$
- { "no author, editor, or organization in " cite$ * warning$
- "??" }
- { organization }
- if$
- }
- { editor my.full.label }
- if$
- }
- { author my.full.label }
- if$
-
-% leave label on the stack, to be popped when required.
-
- "}{" * swap$ * "}{" *
-% year field.or.null purify$ #-1 #4 substring$ *
-%
-% save the year for sort processing afterwards (adding a, b, c, etc.)
-%
- year field.or.null purify$ #-1 #4 substring$
- 'label.year :=
-}
-
-FUNCTION {output.bibitem}
-{ newline$
-
- "\bibitem[\protect\citeauthoryear{" write$
- calc.label write$
- sort.year write$
- "}]{" write$
-
- cite$ write$
- "}" write$
- newline$
- ""
- before.all 'output.state :=
-}
-
-FUNCTION {article}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- crossref missing$
- { format.jour.vol output
- }
- { format.article.crossref output.nonnull
- format.pages output
- }
- if$
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {book}
-{ output.bibitem
- author empty$
- { format.editors
- "author and editor" output.check }
- { format.authors
- output.nonnull
- crossref missing$
- { "author and editor" editor either.or.check }
- 'skip$
- if$
- }
- if$
- output.year.check % added
- new.block
- format.btitle
- "title" output.check
- crossref missing$
- { new.sentence % jtb: start a new sentence for series/volume
- format.bvolume output
- new.block
- format.number.series output
- new.sentence
- publisher "publisher" output.check
- address "address" output.check % jtb: require address
- }
- { new.block
- format.book.crossref output.nonnull
- }
- if$
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {booklet}
-{ output.bibitem
- format.authors output
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- howpublished output
- address output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {inbook}
-{ output.bibitem
- author empty$
- { format.editors
- "author and editor" output.check
- }
- { format.authors output.nonnull
- crossref missing$
- { "author and editor" editor either.or.check }
- 'skip$
- if$
- }
- if$
- output.year.check % added
- new.block
- format.btitle
- "title" output.check
- crossref missing$
- { new.sentence % jtb: start a new sentence for series/volume
- format.bvolume output
- new.block
- format.number.series output
- new.sentence
- publisher "publisher" output.check
- address "address" output.check % jtb: require address
- format.chapter.pages
- "chapter and pages" output.check % jtb: moved from before publisher
- }
- { format.chapter.pages "chapter and pages" output.check
- new.block
- format.book.crossref output.nonnull
- }
- if$
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {incollection}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- crossref missing$
- { format.in.ed.booktitle
- "booktitle" output.check
- new.sentence % jtb: start a new sentence for series/volume
- format.bvolume output
- format.number.series output
- new.sentence
- publisher "publisher" output.check
- address "address" output.check % jtb: require address
- format.chapter.pages output % gnp - was special.output.nonnull
-% left out comma before page numbers
- % jtb: moved from before publisher
- }
- { format.incoll.inproc.crossref
- output.nonnull
- format.chapter.pages output
- }
- if$
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {inproceedings}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- crossref missing$
- { journal missing$ % jtb: proceedings appearing in journals
- { format.in.emphasize.booktitle format.city "booktitle" output.check
- format.editors.fml output
- new.sentence % jtb: start a new sentence for series/volume
- format.bvolume output
- format.number.series output
- new.sentence
- organization output
- publisher "publisher" output.check % jtb: require publisher (?)
- address "address" output.check % jtb: require address
- format.pages output % jtb: moved from before publisher
- }
- % jtb: new:
- { format.in.booktitle format.city "booktitle" output.check
- format.editors.fml output
- new.sentence
- format.jour.vol output
- }
- if$
- }
- { format.incoll.inproc.crossref output.nonnull
- format.pages output
- }
- if$
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {conference} { inproceedings }
-
-FUNCTION {manual}
-{ output.bibitem
- author empty$
- { editor empty$
- { organization "organization" output.check
- organization format.key output } % if all else fails, use key
- { format.editors "author and editor" output.check }
- if$
- }
- { format.authors output.nonnull }
- if$
- output.year.check % added
- new.block
- format.btitle
- "title" output.check
- organization address new.block.checkb
- % jtb: back to normal style: organization, address
- organization "organization" output.check
- address output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {mastersthesis}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- "M.S.\ thesis" format.thesis.type output.nonnull
- school "school" output.check
- address output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {misc}
-{ output.bibitem
- format.authors output
- author format.key output % added
- output.year.check % added
- title howpublished new.block.checkb
- format.title output
- new.block
- howpublished output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {phdthesis}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- format.thesis.type "Ph.D. thesis" output.nonnull
- school "school" output.check
- address output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {proceedings}
-{ output.bibitem
- editor empty$
- { organization output
- organization format.key output } % gnp - changed from author format.key
- { format.editors output.nonnull }
- if$
-% author format.key output % gnp - removed (should be either
-% editor or organization
- output.year.check % added (newapa)
- new.block
- format.btitle format.city "title" output.check % jtb: added city
- new.sentence
- format.bvolume output
- format.number.series output
- new.sentence
- organization output
- % jtb: normal order: publisher, address
- publisher output
- address output
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {techreport}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- format.tr.number output % jtb: moved month ...
- institution "institution" output.check
- address output
- new.sentence
- month output % jtb: ... to here (no parens)
- new.block
- note output
- fin.entry
-}
-
-FUNCTION {unpublished}
-{ output.bibitem
- format.authors
- "author" output.check
- author format.key output % added
- output.year.check % added
- new.block
- format.title
- "title" output.check
- new.block
- note "note" output.check
- fin.entry
-}
-
-FUNCTION {default.type} { misc }
-
-MACRO {jan} {"Jan."}
-
-MACRO {feb} {"Feb."}
-
-MACRO {mar} {"Mar."} % jtb: corrected: was "March"
-
-MACRO {apr} {"Apr."} % jtb: corrected: was "April"
-
-MACRO {may} {"May"}
-
-MACRO {jun} {"June"}
-
-MACRO {jul} {"July"}
-
-MACRO {aug} {"Aug."}
-
-MACRO {sep} {"Sept."}
-
-MACRO {oct} {"Oct."}
-
-MACRO {nov} {"Nov."}
-
-MACRO {dec} {"Dec."}
-
-MACRO {acmcs} {"ACM Comput. Surv."}
-
-MACRO {acmlett} {"ACM Lett. Program. Lang. Syst."}
-
-MACRO {acta} {"Acta Inf."}
-
-MACRO {ai} {"Artificial Intelligence"}
-
-MACRO {al} {"Ada Lett."}
-
-MACRO {acr} {"Adv. Comput. Res."}
-
-MACRO {bit} {"Bit"}
-
-MACRO {cacm} {"Commun. ACM"}
-
-MACRO {cj} {"Comput. J."}
-
-MACRO {cn} {"Comput. Netw."}
-
-MACRO {cl} {"Comput. Lang."}
-
-MACRO {ibmjrd} {"IBM J. Res. and Development"}
-
-MACRO {ibmsj} {"IBM Systems Journal"}
-
-MACRO {ict} {"Inf. Contr."}
-
-MACRO {ieebcs} {"IEE/BCS Softw. Eng. J."}
-
-MACRO {ieees} {"IEEE Softw."}
-
-MACRO {ieeese} {"IEEE Trans. Softw. Eng."}
-
-MACRO {ieeetc} {"IEEE Trans. Comput."}
-
-MACRO {ieeetcad}
- {"IEEE Transactions on Computer-Aided Design of Integrated Circuits"}
-
-MACRO {ieeetpds} {"IEEE Trans. Parall. Distrib. Syst."}
-
-MACRO {ieeetit} {"IEEE Trans. Inf. Theory"}
-
-MACRO {ipl} {"Inf. Process. Lett."}
-
-MACRO {icp} {"Inf. Comput."}
-
-MACRO {ist} {"Inf. Softw. Tech."}
-
-MACRO {ijsa} {"Int. J. Supercomput. Appl."}
-
-MACRO {ijpp} {"Int. J. Parallel Program."}
-
-MACRO {jlp} {"J. Logic Program."}
-
-MACRO {jfp} {"J. Funct. Program."}
-
-MACRO {jcss} {"J. Comput. Syst. Sci."}
-
-MACRO {jsmrp} {"J. Softw. Maint. Res. Pract."}
-
-MACRO {jss} {"J. Syst. Softw."}
-
-MACRO {jlc} {"J. Logic and Comput."}
-
-MACRO {jlsc} {"J. Lisp Symb. Comput."}
-
-MACRO {lpls} {"Lett. Program. Lang. Syst."}
-
-MACRO {mor} {"Math. Oper. Res."}
-
-MACRO {mscs} {"Math. Struct. Comput. Sci."}
-
-MACRO {mst} {"Math. Syst. Theor."} % jtb: was Math. Syst. Theory
- % jtb: (if you ask me, I prefer the old way)
-MACRO {ngc} {"New Gen. Comput."}
-
-MACRO {scp} {"Sci. Comput. Program."}
-
-MACRO {sicomp} {"SIAM J. Comput."}
-
-MACRO {spe} {"Softw. Pract. Exper."}
-
-MACRO {tocs} {"ACM Trans. Comput. Syst."}
-
-MACRO {tods} {"ACM Trans. Database Syst."}
-
-MACRO {tog} {"ACM Trans. Graphics"}
-
-MACRO {toms} {"ACM Trans. Math. Softw."}
-
-MACRO {toois} {"ACM Trans. Office Inf. Syst."}
-
-MACRO {toplas} {"ACM Trans. Program. Lang. Syst."}
-
-MACRO {tocl} {"ACM Trans. On Comp. Logic"}
-
-MACRO {tcs} {"Theor. Comput. Sci."} % jtb: was Theor. Comp. Sci.
-
-MACRO {tr} {"Tech. Rep."}
-
-READ
-
-FUNCTION {sortify}
-{ purify$
- "l" change.case$
-}
-
-INTEGERS { len }
-
-FUNCTION {chop.word}
-{ 's :=
- 'len :=
- s #1 len substring$ =
- { s len #1 + global.max$ substring$ }
- 's
- if$
-}
-
-
-
-FUNCTION {sort.format.names}
-{ 's :=
- #1 'nameptr :=
- ""
- s num.names$ 'numnames :=
- numnames 'namesleft :=
- { namesleft #0 > }
- { nameptr #1 >
- { " " * }
- 'skip$
- if$
- s nameptr "{vv{ } }{ll{ }}{ f{ }}{ jj{ }}" format.name$ 't :=
- nameptr numnames = t "others" = and
- { " et~al" * }
- { t sortify * }
- if$
- nameptr #1 + 'nameptr :=
- namesleft #1 - 'namesleft :=
- }
- while$
-}
-
-FUNCTION {sort.format.title}
-{ 't :=
- "A " #2
- "An " #3
- "The " #4 t chop.word
- chop.word
- chop.word
- sortify
- #1 global.max$ substring$
-}
-
-FUNCTION {author.sort}
-{ author empty$
- { key empty$
- { "to sort, need author or key in " cite$ * warning$
- "" }
- { key sortify }
- if$
- }
- { author sort.format.names }
- if$
-}
-
-FUNCTION {editor.sort}
-{ editor empty$
- { key empty$
- { "to sort, need editor or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { editor sort.format.names }
- if$
-}
-
-FUNCTION {author.editor.sort}
-{ author empty$
- { "missing author in " cite$ * warning$
- editor empty$
- { key empty$
- { "to sort, need author, editor, or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { editor sort.format.names }
- if$
- }
- { author sort.format.names }
- if$
-}
-
-FUNCTION {author.organization.sort}
-%
-% added - GNP. Stack author or organization for sorting (from alpha.bst).
-% Unlike alpha.bst, we need entire names, not abbreviations
-%
-{ author empty$
- { organization empty$
- { key empty$
- { "to sort, need author, organization, or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { organization sortify }
- if$
- }
- { author sort.format.names }
- if$
-}
-
-FUNCTION {editor.organization.sort}
-%
-% added - GNP. Stack editor or organization for sorting (from alpha.bst).
-% Unlike alpha.bst, we need entire names, not abbreviations
-%
-{ editor empty$
- { organization empty$
- { key empty$
- { "to sort, need editor, organization, or key in " cite$ * warning$
- ""
- }
- { key sortify }
- if$
- }
- { organization sortify }
- if$
- }
- { editor sort.format.names }
- if$
-}
-
-FUNCTION {presort}
-%
-% Presort creates the bibentry's label via a call to calc.label, and then
-% sorts the entries based on entry type. Chicago.bst adds support for
-% including organizations as the sort key; the following is stolen from
-% alpha.bst.
-%
-{ calc.label sortify % recalculate bibitem label
- year field.or.null purify$ #-1 #4 substring$ * % add year
- " "
- *
- type$ "book" =
- type$ "inbook" =
- or
- 'author.editor.sort
- { type$ "proceedings" =
- 'editor.organization.sort
- { type$ "manual" =
- 'author.organization.sort
- 'author.sort
- if$
- }
- if$
- }
- if$
- #1 entry.max$ substring$ % added for newapa
- 'sort.label := % added for newapa
- sort.label % added for newapa
- *
- " "
- *
- title field.or.null
- sort.format.title
- *
- #1 entry.max$ substring$
- 'sort.key$ :=
-}
-
-ITERATE {presort}
-
-SORT % by label, year, author/editor, title
-
-STRINGS { last.label next.extra }
-
-INTEGERS { last.extra.num }
-
-FUNCTION {initialize.extra.label.stuff}
-{ #0 int.to.chr$ 'last.label :=
- "" 'next.extra :=
- #0 'last.extra.num :=
-}
-
-FUNCTION {forward.pass}
-%
-% Pass through all entries, comparing current entry to last one.
-% Need to concatenate year to the stack (done by calc.label) to determine
-% if two entries are the same (see presort)
-%
-{ last.label
- calc.label year field.or.null purify$ #-1 #4 substring$ * % add year
- #1 entry.max$ substring$ = % are they equal?
- { last.extra.num #1 + 'last.extra.num :=
- last.extra.num int.to.chr$ 'extra.label :=
- }
- { "a" chr.to.int$ 'last.extra.num :=
- "" 'extra.label :=
- calc.label year field.or.null purify$ #-1 #4 substring$ * % add year
- #1 entry.max$ substring$ 'last.label := % assign to last.label
- }
- if$
-}
-
-FUNCTION {reverse.pass}
-{ next.extra "b" =
- { "a" 'extra.label := }
- 'skip$
- if$
- label.year extra.label * 'sort.year :=
- extra.label 'next.extra :=
-}
-
-EXECUTE {initialize.extra.label.stuff}
-
-ITERATE {forward.pass}
-
-REVERSE {reverse.pass}
-
-FUNCTION {bib.sort.order}
-{ sort.label
- " "
- *
- year field.or.null sortify
- *
- " "
- *
- title field.or.null
- sort.format.title
- *
- #1 entry.max$ substring$
- 'sort.key$ :=
-}
-
-ITERATE {bib.sort.order}
-
-SORT % by sort.label, year, title --- giving final bib. order.
-
-FUNCTION {begin.bib}
-
-{ preamble$ empty$
- 'skip$
- { preamble$ write$ newline$ }
- if$
- "\begin{thebibliography}{}" write$ newline$
-}
-
-
-EXECUTE {begin.bib}
-
-EXECUTE {init.state.consts}
-
-ITERATE {call.type$}
-
-FUNCTION {end.bib}
-{ newline$
- "\end{thebibliography}" write$ newline$
-}
-
-EXECUTE {end.bib}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/doc/tutorial/acmtrans2m.cls b/doc/tutorial/acmtrans2m.cls
deleted file mode 100644
index 442109c..0000000
--- a/doc/tutorial/acmtrans2m.cls
+++ /dev/null
@@ -1,1460 +0,0 @@
-% latex2e by nr 7/3/96
-% acmtrans.cls revised 4/19/96
-% revised again 31-JAN-1996 (see end of file)
-% revised 5-14-1997 :
-% Don't use sans-serif font in categories and descriptors
-% include latexsym by default
-% Define longpage and shortpage
-% Adjusted from the acmtrans2e.cls file to the needs of ACM TOCL by
-% Marco Aiello on June 14, 2000.
-% Further changes made by Frederic Goualard on Sep. 27, 2000
-% to take care of the indentation problem in the bibliography
-% arising without the use of the hyperref package.
-% Modularization to adapt to the needs of JACM, TOCL,
-% TODAES, TODS, TOGS, TOMS, AND TOPLAS, by Marco Aiello on
-% June 2001.
-% Here is the basic framework that is needed to convert your paper
-% into ACM Transactions format and bibliographic format. For a tutorial
-% introduction, see ``instructions.tex'' (compile it with LaTeX) that
-% accompanies the distribution of this style file.
-%
-% -> \documentclass{acmtrans2m}
-% -> \markboth{}{}
-% takes 2 arguments and it is for the left- and right-page headers:
-% the first set of braces is assigned for author's name(s)
-% and
-% the second set of braces is assigned for the title
-% (if the title is too long, contraction may be needed
-% -> \title{}
-% if the title is too long, it can be separated by \\
-% -> \author{}
-% author1 \\ author1 affiliation
-% \and
-% author2 \\ author2 affiliation
-% -> \begin{abstract}
-% -> \end{abstract}
-%
-% -> \category{}{}{}
-% takes 3 arguments for the Computing Reviews Classification Scheme.
-% ex: \category{D.3.3}{Programming Languages}{Language Constructs and
-% Features}[data types and structures]
-% the last argument, in square brackets, is optional.
-% -> \terms{} (ex: \terms{Human Factors, Languages})
-% -> \keywords{} (in alphabetical order \keywords{document processing, sequences,
-% string searching, subsequences, substrings})
-% -> \begin{document}
-%
-% -> \begin{bottomstuff}
-% similar to \thanks
-% for authors' addresses; research/grant statements
-% -> \end{bottomstuff}
-% -> \maketitle
-%
-% Now you can start the body of the paper; your figures, tables and
-% use all the latex constructs.
-%
-% -> \begin{acks}
-% acknowledgements
-% -> \end{acks}
-%
-% -> \bibliographystyle{acmtrans}
-% -> \bibliography{mybib_file}
-%
-% ****
-% If your paper has been accepted with a separate (electronic only)
-% appendix, you need to add the following control sequence:
-%
-%
-% body of appendix
-%!!!!!! \appendixhead has be cut into two: \appendixhead and \elecappendix
-%!!!!!! See end of file. (jtb)
-%
-% -> \end{document}
-%
-% Do not worry about the other definitions in this style file
-% Remember to compile: latex, bibtex, latex latex
-%
-% Bibliographic cite forms needed:
-%
-% \cite{key}
-% which produces citations with author list and year.
-% eg. [Brown 1978; Jarke, et al. 1985]
-% \citeA{key}
-% which produces citations with only the author list.
-% eg. [Brown; Jarke, et al.]
-% \citeN{key}
-% which produces citations with the author list and year, but
-% can be used as nouns in a sentence; no brackets appear around
-% the author names, but only around the year.
-% eg. Shneiderman [1978] states that......
-% \citeN should only be used for a single citation.
-% \citeNN{refkey1,refkey2} for author [ref1year; ref2year]
-% \citeyear{key}
-% which produces the year information only, within brackets.
-%
-% Abbreviated author lists use the ``et al.'' construct.
-%
-% The above are examples of required ACM bibliographic cite formats needed.
-% *******************
-% Here is the complete list of cite forms from the chicago bibliographic style
-%
-% \cite{key}
-% which produces citations with abbreviated author list and year.
-% \citeNP{key}
-% which produces citations with abbreviated author list and year.
-% \citeA{key}
-% which produces only the abbreviated author list.
-% \citeANP{key}
-% which produces only the abbreviated author list.
-% \citeN{key}
-% which produces the abbreviated author list and year, with only the
-% year in parentheses. Use with only one citation.
-% \citeyear{key}
-% which produces the year information only, within parentheses.
-% \citeyearNP{key}
-% which produces the year information only.
-%
-% Abbreviated author lists use the ``et al.'' construct.
-%
-% `NP' means `no parentheses'
-%
-
-\NeedsTeXFormat{LaTeX2e}
-\ProvidesClass{acmtrans2m} [1996/07/03 ACM Transactions class based on <23 April 96>]
-\RequirePackage{latexsym}
-%aiellom{
-\RequirePackage{url}
-
-% Do not change the following! Use the appropriate acmtocl, acmtods, ... option
-\def\@acmVolume{V} %the volume
-\def\@acmNumber{N} %the number
-\def\@acmYear{YY} %the last two digits of the year,
-\def\@acmMonth{Month} %the month
-\def\@journalName{ACM Journal Name} %the name of the ACM journal
-\def\@journalNameShort{jn} %the acronym of the ACM journal
-\def\@permissionCodeOne{0000-0000} %the permission code of the ACM journal
-\def\@permissionCodeTwo{0000} %the permission code of the ACM journal part 2
-\def\@pageCode{\acmPageCode} %the first page of the article in 4 digits
-
-
-\newif\if at acmjacm
-\newif\if at acmtocl
-\newif\if at acmtodaes
-\newif\if at acmtods
-\newif\if at acmtogs
-\newif\if at acmtoms
-\newif\if at acmtoplas
-
-\DeclareOption{acmnow}{
- \typeout{}
- \typeout{Directly generating the Month and Year for footers from the clock.}
- \def\@acmYear{\yearTwoDigits}
- \def\@acmMonth{\monthWord}
-}
-
-\DeclareOption{acmjacm}{
- \typeout{}
- \typeout{Using ACM, JACM's option: 2001/06/01 by Marco Aiello et al.}
- \typeout{}
- %\global\@acmjacmfalse
- \global\@acmtoclfalse
- \global\@acmtodaesfalse
- \global\@acmtodsfalse
- \global\@acmtogsfalse
- \global\@acmtomsfalse
- \global\@acmtoplasfalse
- \global\@acmjacmtrue
- \def\@journalName{Journal of the ACM}
- \def\@journalNameShort{jacm}
- \def\@permissionCodeOne{0004-5411}
- \def\@permissionCodeTwo{0100}
-}
-
-\DeclareOption{acmtocl}{
- \typeout{}
- \typeout{Using ACM, TOCL's option: 2001/06/01 by Marco Aiello et al.}
- \typeout{}
- \global\@acmjacmfalse
- \global\@acmtoclfalse
- \global\@acmtodaesfalse
- \global\@acmtodsfalse
- \global\@acmtogsfalse
- \global\@acmtomsfalse
- \global\@acmtoplasfalse
- \global\@acmtocltrue
- \def\@journalName{ACM Transactions on Computational Logic}
- \def\@journalNameShort{tocl}
- \def\@permissionCodeOne{1529-3785}
- \def\@permissionCodeTwo{0700}
-}
-
-\DeclareOption{acmtodaes}{
- \typeout{}
- \typeout{Using ACM, TODAES option: 2001/06/01 by Marco Aiello et al.}
- \typeout{}
- \global\@acmjacmfalse
- \global\@acmtoclfalse
- %\global\@acmtodaesfalse
- \global\@acmtodsfalse
- \global\@acmtogsfalse
- \global\@acmtomsfalse
- \global\@acmtoplasfalse
- \global\@acmtodaestrue
- \def\@journalName{ACM Transactions on Design Automation of Electronic Systems}
- \def\@journalNameShort{todaes}
- \def\@permissionCodeOne{1084-4309}
- \def\@permissionCodeTwo{0400}
-}
-
-\DeclareOption{acmtods}{
- \typeout{}
- \typeout{Using ACM, TODS's option: 2001/06/01 by Marco Aiello et al.}
- \typeout{}
- \global\@acmjacmfalse
- \global\@acmtoclfalse
- \global\@acmtodaesfalse
- %\global\@acmtodsfalse
- \global\@acmtogsfalse
- \global\@acmtomsfalse
- \global\@acmtoplasfalse
- \global\@acmtodstrue
- \def\@journalName{ACM Transactions on Database Systems}
- \def\@journalNameShort{tods}
- \def\@permissionCodeOne{0362-5915}
- \def\@permissionCodeTwo{0300}
-}
-
-\DeclareOption{acmtogs}{
- \typeout{}
- \typeout{Using ACM, TOGS's option: 2001/06/01 by Marco Aiello et al.}
- \typeout{}
- \global\@acmjacmfalse
- \global\@acmtoclfalse
- \global\@acmtodaesfalse
- \global\@acmtodsfalse
- %\global\@acmtogsfalse
- \global\@acmtomsfalse
- \global\@acmtoplasfalse
- \global\@acmtogstrue
- \def\@journalName{ACM Transactions on Graphics}
- \def\@journalNameShort{togs}
- \def\@permissionCodeOne{0730-0301}
- \def\@permissionCodeTwo{0100}
-}
-
-\DeclareOption{acmtoms}{
- \typeout{}
- \typeout{Using ACM, TOMS's option: 2001/06/01 by Marco Aiello et al.}
- \typeout{}
- \global\@acmjacmfalse
- \global\@acmtoclfalse
- \global\@acmtodaesfalse
- \global\@acmtodsfalse
- \global\@acmtogsfalse
- %\global\@acmtomsfalse
- \global\@acmtoplasfalse
- \global\@acmtomstrue
- \def\@journalName{ACM Transactions on Mathematical Software}
- \def\@journalNameShort{toms}
- \def\@permissionCodeOne{0098-3500}
- \def\@permissionCodeTwo{1200}
-}
-
-\DeclareOption{acmtoplas}{
- \typeout{}
- \typeout{Using ACM, TOPLAS option: 2001/06/01 by Marco Aiello et al.}
- \typeout{}
- \global\@acmjacmfalse
- \global\@acmtoclfalse
- \global\@acmtodaesfalse
- \global\@acmtodsfalse
- \global\@acmtogsfalse
- \global\@acmtomsfalse
- %\global\@acmtoplasfalse
- \global\@acmtoplastrue
- \def\@journalName{ACM Transactions on Programming Languages and Systems}
- \def\@journalNameShort{toplas}
- \def\@permissionCodeOne{0164-0925}
- \def\@permissionCodeTwo{0500}
-}
-%}aiellom
-
-
-
-\if at compatibility\else
-\DeclareOption{a4paper}
- {\setlength\paperheight {297mm}%
- \setlength\paperwidth {210mm}%
- \def\special at paper{210mm,297mm}}
-\DeclareOption{a5paper}
- {\setlength\paperheight {210mm}%
- \setlength\paperwidth {148mm}%
- \def\special at paper{148mm,210mm}}
-\DeclareOption{b5paper}
- {\setlength\paperheight {250mm}%
- \setlength\paperwidth {176mm}%
- \setlength\voffset {-15mm}%
- \setlength\hoffset {-20mm}%
- \def\special at paper{176mm,250mm}}
-\DeclareOption{letterpaper}
- {\setlength\paperheight {11in}%
- \setlength\paperwidth {8.5in}%
- \def\special at paper{8.5in,11in}}
-\DeclareOption{legalpaper}
- {\setlength\paperheight {14in}%
- \setlength\paperwidth {8.5in}%
- \def\special at paper{8.5in,14in}}
-\DeclareOption{executivepaper}
- {\setlength\paperheight {10.5in}%
- \setlength\paperwidth {7.25in}%
- \def\special at paper{7.25in,10.5in}}
-\DeclareOption{landscape}
- {\setlength\@tempdima {\paperheight}%
- \setlength\paperheight {\paperwidth}%
- \setlength\paperwidth {\@tempdima}}
-\fi
-
-\DeclareOption{checkMargin}{\setlength\overfullrule{5pt}}
-\DeclareOption{final}{\setlength\overfullrule{0pt}}
-
-\DeclareOption{oneside}{\@twosidefalse \@mparswitchfalse}
-\DeclareOption{twoside}{\@twosidetrue \@mparswitchtrue}
-
-\DeclareOption{10pt}{\def\@ptsize{0}} %needed for amssymbols.sty
-\DeclareOption{11pt}{\ClassError{acmtrans}{11pt style not supported}
- {ACM transactions documents can be set in 10pt only}}
-\DeclareOption{12pt}{\ClassError{acmtrans}{11pt style not supported}
- {ACM transactions documents can be set in 10pt only}}
-\newif\if at hyperref
-\DeclareOption{hyperref}{%
- \def\pages{\pageref{@firstpg}--\pageref{@lastpg}}%
- \def\mypage{\thepage}%
- \def\@getpagenum#1#2#3#4{#2}%
- \def\pdfinfo#1#2{\pdfmark{pdfmark=/DOCINFO,Title=#1,Author=#2}}
- \global\@hyperreftrue
- }
-\DeclareOption{nohyperref}{
- \def\pages{\pageref{@firstpg}--\pageref{@lastpg}}%
- \def\@getpagenum#1#2{#2}%
- \def\mypage{\thepage}%
- \def\pdfinfo#1#2{}%
- \def\pdfbookmark#1#2{}%
- \global\@hyperreffalse
- }
-\DeclareOption{notfinal}{
- \def\pages{BD}%
- \def\mypage{TBD}%
- \def\@getpagenum#1#2{#2}%
- \def\pdfinfo#1#2{}%
- \def\pdfbookmark#1#2{}%
- }
-\DeclareOption{omitline}{\def\@abstractbottom{\relax}}
-\DeclareOption{dontomitline}{\def\@abstractbottom{\if at acmjacm\else\hbox{\vrule height .2pt width 30pc}\fi}}
-\ExecuteOptions{twoside,notfinal,10pt,dontomitline,nohyperref,letterpaper} % defaults
-
-
-
-\ProcessOptions
-
-%{aiellom to automatize the issue specific data
-\def\acmVolume#1{\def\@acmVolume{#1}}
-\def\acmNumber#1{\def\@acmNumber{#1}}
-\def\acmYear#1{\def\@acmYear{#1}}
-\def\acmMonth#1{\def\@acmMonth{#1}}
-
-
-% Command to get the year from the system and display the last two digits
-\newcommand{\ignoretwo}[2]{}
-\newcommand{\yearTwoDigits}{\expandafter\ignoretwo\the\year}
-%To transform the month number in its name in English
-\newcommand{\monthWord}{\ifnum\the\month=1 January\fi\ifnum\the\month=2 February\fi\ifnum\the\month=3 March\fi\ifnum\the\month=4 April\fi\ifnum\the\month=5 May\fi\ifnum\the\month=6 June\fi\ifnum\the\month=7 July\fi\ifnum\the\month=8 August\fi\ifnum\the\month=9 September\fi\ifnum\the\month=10 October\fi\ifnum\the\month=11 November\fi\ifnum\the\month=12 December\fi}
-% overright the \@setref definition, so that if a reference is undefined
-% then it returns a number 0 and then the usual double boldface
-% question marks ??
-% this is necessary for the \acmPageCode command, otherwise it gives an error
-% everytime the aux file is not there
-\def\@setref#1#2#3{%
- \ifx#1\relax
- \number 0\relax
- \protect\G at refundefinedtrue
- \nfss at text{\reset at font\bfseries ??}%
- \@latex at warning{Reference `#3' on page \thepage \space undefined}%
- \else
- \expandafter#2#1\null
- \fi}
-%make the code a four digits string based on the first page number
-\newcommand{\acmPageCode}{\bgroup
- \newcount\c at tempo
- \setcounter{tempo}{\number\pageref{@firstpg}}\ifnum \c at tempo<1000 0\fi\ifnum \c at tempo<100 0\fi\ifnum \c at tempo<10 0\fi\ifnum \c at tempo<1 0\fi\pageref{@firstpg}
- \egroup
-}
-%}aiellom
-
-
-
-\lineskip 1pt \normallineskip 1pt
-\def\baselinestretch{1}
-
-\renewcommand\normalsize{%
- \@setfontsize\normalsize\@xpt\@xiipt
- \abovedisplayskip 6pt plus2pt minus1pt\belowdisplayskip \abovedisplayskip
- \abovedisplayshortskip 6pt plus0pt minus 3pt
- \belowdisplayshortskip 6pt plus0pt minus3pt\let\@listi\@listI}
-
-\newcommand\small{%
- \@setfontsize\small\@ixpt{11pt}%
- \abovedisplayskip 5pt plus 2pt minus 1pt\belowdisplayskip \abovedisplayskip
- \abovedisplayshortskip 5pt plus0pt minus2pt\belowdisplayshortskip 5pt plus0pt
- minus 2pt
- \def\@listi{\leftmargin\leftmargini \topsep 5pt plus 2pt minus 1pt\parsep 0pt
- plus .7pt
- \itemsep 1.6pt plus .8pt}}
-\newcommand\footnotesize{%
-% \@setfontsize\footnotesize\@viiipt{10pt}
- \@setsize\footnotesize{10pt}\viiipt\@viiipt
- \abovedisplayskip 4pt plus 1pt minus 0pt\belowdisplayskip \abovedisplayskip
- \abovedisplayshortskip 4pt plus 0pt minus 1pt\belowdisplayshortskip 4pt plus
- 0pt minus 1pt
- \def\@listi{\leftmargin\leftmargini \topsep 4pt plus 1pt minus
- 0pt\parsep 0pt plus .5pt
- \itemsep 1pt plus .7pt}}
-
-\newcommand\scriptsize{\@setfontsize\scriptsize\@viipt\@viiipt}
-\newcommand\tiny{\@setfontsize\tiny\@vpt\@vipt}
-\newcommand\large{\@setfontsize\large\@xiipt{14}}
-\newcommand\Large{\@setfontsize\Large\@xivpt{18}}
-\newcommand\LARGE{\@setfontsize\LARGE\@xviipt{20}}
-\newcommand\huge{\@setfontsize\huge\@xxpt{25}}
-\newcommand\Huge{\@setfontsize\Huge\@xxvpt{30}}
-
-\normalsize
-
- \oddsidemargin .75in \evensidemargin .75in \marginparwidth .5in
- \marginparsep .125in
- \topmargin .25in \headheight 12pt\headsep 16pt
- %% not in latex2e \footheight 10pt
- \footskip 15pt
-
-\textheight 47pc \textwidth 30pc \columnsep 10pt \columnseprule 0pt
-% next five lines added by K.R. Apt, March 20, 01
-\advance\textheight-2.6pt
-\newdimen\normaltextheight
-\setlength\normaltextheight{\textheight}
-%\renewcommand\rmdefault{pnc}
-%\renewcommand\sfdefault{phv}
-
-
-\footnotesep 7pt
-\skip\footins 15pt plus 4pt minus 3pt
-\floatsep 12pt plus 2pt minus 2pt
-\textfloatsep \floatsep
-\intextsep 1pc plus 1pc
-%%% not in 2e %% \@maxsep 1pc
-%%% not in 2e %% \@dblmaxsep 20pt
-\dblfloatsep 12pt plus 2pt minus 2pt
-\dbltextfloatsep 20pt plus 2pt minus 4pt
-\@fptop 0pt plus 1fil \@fpsep 1pc plus 2fil \@fpbot 0pt plus 1fil
-\@dblfptop 0pt plus 1fil \@dblfpsep 8pt plus 2fil \@dblfpbot 0pt plus 1fil
-\marginparpush 6pt
-
-\parskip 0pt plus .1pt \parindent 10pt \partopsep 0pt
-\@lowpenalty 51 \@medpenalty 151 \@highpenalty 301
-\@beginparpenalty -\@lowpenalty \@endparpenalty -\@lowpenalty \@itempenalty
--\@lowpenalty
-
-
-\def\part{\@ucheadtrue
- \@startsection{part}{9}{\z@}{-10pt plus -4pt minus
- -2pt}{4pt}{\reset at font\normalsize\sffamily}}
-\def\section{\@ucheadtrue
- \@startsection{section}{1}{\z@}{-10pt plus -4pt minus
- -2pt}{4pt}{\reset at font\normalsize\sffamily}}
-\def\subsection{\@ucheadfalse
- \@startsection{subsection}{2}{\z@}{-8pt plus -2pt minus
- -1pt}{4pt}{\reset at font\normalsize\sffamily}}
-\def\subsubsection{\@ucheadfalse
- \@startsection{subsubsection}{3}{\parindent}{6pt plus
-1pt}{-5pt}{\reset at font\normalsize\itshape}}
-\def\paragraph{\@ucheadfalse
- \@startsection{paragraph}{3}{\parindent}{6pt plus
-1pt}{-5pt}{\reset at font\normalsize\itshape}}
-
-\renewcommand{\@seccntformat}[1]{\textup{\csname the#1\endcsname}}
-
-\gdef\@period{.}
-\def\@trivlist{\@topsepadd\topsep
-\if at noskipsec \gdef\@period{}\leavevmode\gdef\@period{.}\fi
- \ifvmode \advance\@topsepadd\partopsep \else \unskip\par\fi
- \if at inlabel \@noparitemtrue \@noparlisttrue
- \else \@noparlistfalse \@topsep\@topsepadd \fi
- \advance\@topsep \parskip
- \leftskip\z@\rightskip\@rightskip \parfillskip\@flushglue
- \@setpar{\if at newlist\else{\@@par}\fi} \global\@newlisttrue
-\@outerparskip\parskip}
-
-
-\def\@startsection#1#2#3#4#5#6{%
- \if at noskipsec \leavevmode \fi
- \par
- \@tempskipa #4\relax
- \@afterindenttrue
- \ifdim \@tempskipa <\z@
- \@tempskipa -\@tempskipa \@afterindentfalse
- \fi
- \if at nobreak
- \everypar{}%
- \else
- \addpenalty\@secpenalty\addvspace\@tempskipa
- \fi
- \@ifstar
- {\@ssect{#3}{#4}{#5}{#6}}%
- {\@dblarg{\@sect{#1}{#2}{#3}{#4}{#5}{#6}}}}
-\def\@sect#1#2#3#4#5#6[#7]#8{%
- \ifnum #2>\c at secnumdepth
- \let\@svsec\@empty
- \else
- \refstepcounter{#1}%
- \if at uchead%
- \protected at edef\@svsec{\@seccntformat{#1}.\quad\relax}%
- \else%
- \protected at edef\@svsec{\@seccntformat{#1}\quad\relax}%
- \fi%
- \fi
- \@tempskipa #5\relax
- \ifdim \@tempskipa>\z@
- \begingroup
- #6{%
- \@hangfrom{\hskip #3\relax\@svsec}%
- \interlinepenalty \@M \if at uchead\MakeUppercase{#8}\else#8\fi \@@par}%
- \endgroup
- \csname #1mark\endcsname{#7}%
- \addcontentsline{toc}{#1}{%
- \ifnum #2>\c at secnumdepth \else
- \protect\numberline{\csname the#1\endcsname}%
- \fi
- #7}%
- \else
- \def\@svsechd{%
- #6{\hskip #3\relax
- \@svsec \if at uchead\Makeuppercase{#8}\else#8\fi}%
- \csname #1mark\endcsname{#7}%
- \addcontentsline{toc}{#1}{%
- \ifnum #2>\c at secnumdepth \else
- \protect\numberline{\csname the#1\endcsname}%
- \fi
- #7}}%
- \fi
- \@xsect{#5}}
-
-\def\@xsect#1{\@tempskipa #1\relax
- \ifdim \@tempskipa>\z@
- \par \nobreak
- \vskip \@tempskipa
- \@afterheading
- \else \global\@nobreakfalse \global\@noskipsectrue
- \everypar{\if at noskipsec \global\@noskipsecfalse
- \clubpenalty\@M \hskip -\parindent
- \begingroup \@svsechd\@period \endgroup \unskip
- \hskip -#1
- \else \clubpenalty \@clubpenalty
- \everypar{}\fi}\fi\ignorespaces}
-\newif\if at uchead\@ucheadfalse
-
-
-\setcounter{secnumdepth}{3}
-\newcounter{secnumbookdepth}
-\setcounter{secnumbookdepth}{3}
-
-\newfont{\apbf}{cmbx9}
-
-\def\@withappendix#1{App--\number #1}
-
-\newcommand{\elecappendix}{
-}
-
-\def\appenheader{\global\@topnum\z@ \global\@botroom \textheight \begin{figure}
-\newfont{\sc}{cmcsc10}
-\parindent\z@
-\hbox{}
-\vskip -\textfloatsep
-\vskip 11pt
-\hrule height .2pt width 30pc
-\vskip 2pt\rule{0pt}{10pt}\ignorespaces}
-\def\endappenheader{\end{figure}\gdef\appendixhead{}}
-
-\def\@appsec{}
-
-\def\appendix{\par
- \setcounter{section}{0}
- \setcounter{subsection}{0}
- \def\@appsec{APPENDIX }
- \def\thesection{\Alph{section}}
- \def\theHsection{\Alph{section}}}
-
-
-
-\labelsep 5pt
-\settowidth{\leftmargini}{(9)} \addtolength\leftmargini\labelsep
-\settowidth{\leftmarginii}{(b)} \addtolength\leftmarginii\labelsep
-\leftmarginiii \leftmarginii
-\leftmarginiv \leftmarginii
-\leftmarginv \leftmarginii
-\leftmarginvi \leftmarginii
-\leftmargin\leftmargini
-\labelwidth\leftmargini\advance\labelwidth-\labelsep
-\def\@listI{\leftmargin\leftmargini \parsep 0pt plus 1pt\topsep 6pt plus 2pt
-minus 2pt\itemsep 2pt plus 1pt minus .5pt}
-\let\@listi\@listI
-\@listi
-\def\@listii{\leftmargin\leftmarginii
- \labelwidth\leftmarginii\advance\labelwidth-\labelsep
- \topsep 0pt plus 1pt
- \parsep 0pt plus .5pt
- \itemsep \parsep}
-\def\@listiii{\leftmargin\leftmarginiii
- \labelwidth\leftmarginiii\advance\labelwidth-\labelsep
- \topsep 0pt plus 1pt
- \parsep 0pt plus .5pt
- \itemsep \parsep}
-\def\@listiv{\leftmargin\leftmarginiv
- \labelwidth\leftmarginiv\advance\labelwidth-\labelsep}
-\def\@listv{\leftmargin\leftmarginv
- \labelwidth\leftmarginv\advance\labelwidth-\labelsep}
-\def\@listvi{\leftmargin\leftmarginvi
- \labelwidth\leftmarginvi\advance\labelwidth-\labelsep}
-
-
-
-
-\def\enumerate{\ifnum \@enumdepth >3 \@toodeep\else
- \advance\@enumdepth \@ne
- \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list
- {\csname label\@enumctr\endcsname}{\usecounter
- {\@enumctr}\def\makelabel##1{##1\hss}}\fi}
-\def\longenum{\ifnum \@enumdepth >3 \@toodeep\else
- \advance\@enumdepth \@ne
- \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list
- {\csname label\@enumctr\endcsname}{\usecounter
- {\@enumctr}\labelwidth\z@}\fi}
-%\leftmargin\z@ \itemindent\parindent}\fi} - this indents each item in enumerate
-\let\endlongenum\endlist
-%%--------------------CHANGED: always roman parentheses. dave ---------------%%
-\def\labelenumi{{\rm (}\arabic{enumi}\/{\rm )}}
-\def\theenumi{\arabic{enumi}}
-\def\labelenumii{{\rm (}\alph{enumii}\rm{)}}
-\def\theenumii{\alph{enumii}}
-\def\p at enumii{\theenumi}
-\def\labelenumiii{\roman{enumiii}.}
-\def\theenumiii{\roman{enumiii}}
-\def\p at enumiii{\theenumi{\rm (}\theenumii{\rm )}}
-\def\labelenumiv{\Alph{enumiv}.}
-\def\theenumiv{\Alph{enumiv}}
-\def\p at enumiv{\p at enumiii\theenumiii}
-
-\def\p at enumiv{\p at enumiii\theenumiii}
-
-\def\itemize{\list{---\hskip -\labelsep}{\settowidth
- {\leftmargin}{---}\labelwidth\leftmargin
- \addtolength{\labelwidth}{-\labelsep}}}
-\let\enditemize\endlist
-\def\longitem{\list{---}{\labelwidth\z@
- \leftmargin\z@ \itemindent\parindent \advance\itemindent\labelsep}}
-\let\endlongitem\endlist
-\def\verse{\let\\=\@centercr
- \list{}{\leftmargin 2pc
- \itemindent -1.5em\listparindent \itemindent
- \rightmargin\leftmargin\advance\leftmargin 1.5em}\item[]}
-\let\endverse\endlist
-\def\quotation{\list{}{\leftmargin 2pc \listparindent .5em
- \itemindent\listparindent
- \rightmargin\leftmargin \parsep 0pt plus 1pt}\item[]}
-\let\endquotation=\endlist
-\def\quote{\list{}{\leftmargin 2pc \rightmargin\leftmargin}\item[]}
-\let\endquote=\endlist
-
-\def\description{\list{}{\listparindent\parindent\labelwidth\z@
- \leftmargin\z@ \itemindent\parindent\advance\itemindent\labelsep
- \def\makelabel##1{\it ##1.}}}
-\let\enddescription\endlist
-
-\def\describe#1{\list{}{\listparindent\parindent\settowidth{\labelwidth}{#1}\leftmargin
- \labelwidth\addtolength\leftmargin\labelsep\def\makelabel##1{##1\hfil}}}
-\let\enddescribe\endlist
-
- \def\program{\ifx\@currsize\normalsize\small \else \rm \fi\tabbing}
- \let\endprogram\endtabbing
- \def\@begintheorem#1#2{\trivlist \item[\hskip 10pt\hskip
- \labelsep{\sc{#1}\hskip 5pt\relax #2.}] \itshape}
- % aiellom{: this is what makes the theorem environment with names
- % ABOVE #1 is the word example, corollary, etc.
- % #2 is the number
- % \def\@opargbegintheorem#1#2#3{\trivlist
- % \item[\hskip 10pt \hskip \labelsep{\sc #1\savebox\@tempboxa{#3}\ifdim
- % \wd\@tempboxa>\z@ \hskip 5pt\relax \box\@tempboxa\fi.}] \itshape}
- % is been changed to
- % #1 is the word theorem, lemma, etc.
- % #2 is the number
- % #3 is the name of the theorem, lemma, etc.
- \def\@opargbegintheorem#1#2#3{\trivlist
- \item[\hskip 10pt \hskip
-\labelsep{\sc{#1}\savebox\@tempboxa{\sc{#3}}\ifdim
- \wd\@tempboxa>\z@ \hskip 5pt\relax \sc{#2} \box\@tempboxa\fi.}]
-\itshape}
- % aiellom}
-
-
-
-\newif\if at qeded\global\@qededfalse
-\def\proof{\global\@qededfalse\@ifnextchar[{\@xproof}{\@proof}}
-\def\endproof{\if at qeded\else\qed\fi\endtrivlist}
-\def\qed{\unskip\kern 10pt{\unitlength1pt\linethickness{.4pt}\framebox(6,6){}}
-\global\@qededtrue}
-\def\@proof{\trivlist \item[\hskip 10pt\hskip
- \labelsep{\sc Proof.}]\ignorespaces}
-\def\@xproof[#1]{\trivlist \item[\hskip 10pt\hskip
- \labelsep{\sc Proof #1.}]\ignorespaces}
-
-\def\newdef#1#2{\expandafter\@ifdefinable\csname #1\endcsname
-{\@definecounter{#1}\expandafter\xdef\csname
-the#1\endcsname{\@thmcounter{#1}}\global
- \@namedef{#1}{\@defthm{#1}{#2}}\global
- \@namedef{end#1}{\@endtheorem}}}
-\def\@defthm#1#2{\refstepcounter
- {#1}\@ifnextchar[{\@ydefthm{#1}{#2}}{\@xdefthm{#1}{#2}}}
-\def\@xdefthm#1#2{\@begindef{#2}{\csname the#1\endcsname}\ignorespaces}
-\def\@ydefthm#1#2[#3]{\trivlist \item[\hskip 10pt\hskip
- \labelsep{\it #2\savebox\@tempboxa{#3}\ifdim
- \wd\@tempboxa>\z@ \ \box\@tempboxa\fi.}]\ignorespaces}
-\def\@begindef#1#2{\trivlist \item[\hskip 10pt\hskip
- \labelsep{\it #1\ \rm #2.}]}
-
-\def\theequation{\arabic{equation}}
-
-\def\titlepage{\@restonecolfalse\if at twocolumn\@restonecoltrue\onecolumn
- \else \newpage \fi \thispagestyle{empty}\c at page\z@}
-\def\endtitlepage{\if at restonecol\twocolumn \else \newpage \fi}
-
-\arraycolsep 2.5pt \tabcolsep 6pt \arrayrulewidth .4pt \doublerulesep 2pt
-\tabbingsep \labelsep
-
-\skip\@mpfootins = \skip\footins
-\fboxsep = 3pt \fboxrule = .4pt
-
-\newcounter{part}
-\newcounter{section}
-\newcounter{subsection}[section]
-\newcounter{subsubsection}[subsection]
-\newcounter{paragraph}[subsubsection]
-
-\def\thepart{\Roman{part}}
-\def\thesection {\arabic{section}}
-\def\thesubsection {\thesection.\arabic{subsection}}
-\def\thesubsubsection {\thesubsection.\arabic{subsubsection}}
-\def\theparagraph {\thesubsubsection.\arabic{paragraph}}
-
-\def\@pnumwidth{1.55em}
-\def\@tocrmarg {2.55em}
-\def\@dotsep{4.5}
-\setcounter{tocdepth}{3}
-
-\def\tableofcontents{\section*{Contents\@mkboth{CONTENTS}{CONTENTS}}
- \@starttoc{toc}}
-\def\l at part#1#2{\addpenalty{\@secpenalty}
- \addvspace{2.25em plus 1pt} \begingroup
- \@tempdima 3em \parindent \z@ \rightskip \@pnumwidth \parfillskip
--\@pnumwidth
- {\large \bf \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}}\par
- \nobreak \endgroup}
-\def\l at section#1#2{\addpenalty{\@secpenalty} \addvspace{1.0em plus 1pt}
-\@tempdima 1.5em \begingroup
- \parindent \z@ \rightskip \@pnumwidth
- \parfillskip -\@pnumwidth
- \bf \leavevmode #1\hfil \hbox to\@pnumwidth{\hss #2}\par
- \endgroup}
-\def\l at subsection{\@dottedtocline{2}{1.5em}{2.3em}}
-\def\l at subsubsection{\@dottedtocline{3}{3.8em}{3.2em}}
-\def\listoffigures{\section*{List of Figures\@mkboth
- {LIST OF FIGURES}{LIST OF FIGURES}}\@starttoc{lof}}
-\def\l at figure{\@dottedtocline{1}{1.5em}{2.3em}}
-\def\listoftables{\section*{List of Tables\@mkboth
- {LIST OF TABLES}{LIST OF TABLES}}\@starttoc{lot}}
-\let\l at table\l at figure
-
-
-\def\thebibliography#1{\par\footnotesize
-\@ucheadfalse
-\@startsection{subsection}{2}{\z@}{16pt plus 2pt minus
- 1pt}{2pt}{\sf}*{REFERENCES}%
-\list{\arabic{enumi}.}{%
- \settowidth{\labelwidth}{99.}%
- \leftmargin\labelwidth
- \advance\leftmargin\labelsep \topsep \z@ \parsep 0pt plus .1pt
- \itemsep \parsep
- \usecounter{enumi}}%
- \def\newblock{\hskip .11em plus .33em minus .07em}
- \sloppy
- \widowpenalty=4500
- \clubpenalty=4500
- \sfcode`\.=1000\relax}
-\let\endthebibliography=\endlist
-
-
-\newif\if at restonecol
-\def\theindex{\@restonecoltrue\if at twocolumn\@restonecolfalse\fi
-\columnseprule \z@
-\columnsep 35pt\twocolumn[\section*{Index}]
- \@mkboth{INDEX}{INDEX}\thispagestyle{plain}\parindent\z@
- \parskip\z@ plus .3pt\relax\let\item\@idxitem}
-\def\@idxitem{\par\hangindent 40pt}
-\def\subitem{\par\hangindent 40pt \hspace*{20pt}}
-\def\subsubitem{\par\hangindent 40pt \hspace*{30pt}}
-\def\endtheindex{\if at restonecol\onecolumn\else\clearpage\fi}
-\def\indexspace{\par \vskip 10pt plus 5pt minus 3pt\relax}
-
-\def\footnoterule{\kern-3\p@
- \hrule \@height 0.2\p@ \@width 47\p@
- \kern 2.6\p@
-}
-
-\long\def\@makefntext#1{\parindent 1em\noindent
- $^{\@thefnmark}$#1}
-
-
-\setcounter{topnumber}{3}
-\def\topfraction{.99}
-\setcounter{bottomnumber}{1}
-\def\bottomfraction{.5}
-\setcounter{totalnumber}{3}
-\def\textfraction{.01}
-\def\floatpagefraction{.85}
-\setcounter{dbltopnumber}{2}
-\def\dbltopfraction{.7}
-\def\dblfloatpagefraction{.5}
-
-\long\def\@makecaption#1#2{\vskip 1pc \setbox\@tempboxa\hbox{#1.\hskip
-1em\relax #2}
- \ifdim \wd\@tempboxa >\hsize #1. #2\par \else \hbox
-to\hsize{\hfil\box\@tempboxa\hfil}
- \fi}
-
-\def\nocaption{\refstepcounter\@captype \par
- \vskip 1pc \hbox to\hsize{\hfil \footnotesize Figure \thefigure
- \hfil}}
-
-
-\newcounter{figure}
-\def\thefigure{\@arabic\c at figure}
-\def\fps at figure{tbp}
-\def\ftype at figure{1}
-\def\ext at figure{lof}
-\def\fnum at figure{Fig.\ \thefigure}
-\def\figure{\let\normalsize\footnotesize \normalsize \@float{figure}}
-\let\endfigure\end at float
-\@namedef{figure*}{\@dblfloat{figure}}
-\@namedef{endfigure*}{\end at dblfloat}
-
-\newcounter{table}
-\def\thetable{\@Roman\c at table}
-\def\fps at table{tbp}
-\def\ftype at table{2}
-\def\ext at table{lot}
-\def\fnum at table{Table \thetable}
-\def\table{\let\normalsize\footnotesize \normalsize\@float{table}}
-\let\endtable\end at float
-\@namedef{table*}{\@dblfloat{table}}
-\@namedef{endtable*}{\end at dblfloat}
-\def\acmtable#1{\@narrowfig #1\relax
- \let\caption\@atcap \let\nocaption\@atnocap
- \def\@tmpnf{}\@ifnextchar[{\@xntab}{\@ntab}}
-\def\endacmtable{\hbox to \textwidth{\hfil
-\vbox{\hsize \@narrowfig
-\box\@nfcapbox
-{\baselineskip 4pt \hbox{\vrule height .4pt width \hsize}}
-\vskip -1pt
-\box\@nfigbox\vskip -1pt
-{\baselineskip 4pt \hbox{\vrule height .4pt width \hsize}}}\hfil}
-\end at float}
-\def\@xntab[#1]{\def\@tmpnf{[#1]}\@ntab}
-\def\@ntab{\expandafter\table\@tmpnf
- \setbox\@nfigbox\vbox\bgroup
- \hsize \@narrowfig \@parboxrestore}
-\def\@atmakecap #1#2{\setbox\@tempboxa\hbox{#1.\hskip 1em\relax #2}
- \ifdim \wd\@tempboxa >\hsize \sloppy #1.\hskip 1em\relax #2 \par \else \hbox
-to\hsize{\hfil\box\@tempboxa\hfil}
- \fi}
-\def\@atcap{\par\egroup\refstepcounter\@captype
- \@dblarg{\@atcapx\@captype}}
-\long\def\@atcapx#1[#2]#3{\setbox\@nfcapbox\vbox {\hsize \wd\@nfigbox
- \@parboxrestore
- \@atmakecap{\csname fnum@#1\endcsname}{\ignorespaces #3}\par}}
-\def\@atnocap{\egroup \refstepcounter\@captype
- \setbox\@nfcapbox\vbox {\hsize \wd\@nfigbox
- \hbox to\hsize{\hfil \footnotesize Table \thetable\hfil}}}
-
-%
-%% Narrow figures
-%
-\def\narrowfig#1{\@narrowfig #1\relax
- \let\caption\@nfcap \let\nocaption\@nfnocap
- \def\@tmpnf{}\@ifnextchar[{\@xnfig}{\@nfig}}
-\def\endnarrowfig{\hbox to \textwidth{\if at nfeven
- \box\@nfcapbox\hfil\box\@nfigbox
- \else \box\@nfigbox\hfil\box\@nfcapbox\fi}\end at float}
-\def\@xnfig[#1]{\def\@tmpnf{[#1]}\@nfig}
-\def\@nfig{\expandafter\figure\@tmpnf
- \setbox\@nfigbox\vbox\bgroup
- \hsize \@narrowfig \@parboxrestore}
-\def\@nfmakecap #1#2{\setbox\@tempboxa\hbox{#1.\hskip 1em\relax #2}
- \ifdim \wd\@tempboxa >\hsize \sloppy #1.\hskip 1em\relax #2 \par \else \hbox
-to\hsize{\if at nfeven\else\hfil\fi\box\@tempboxa\if at nfeven\hfil\fi}
- \fi}
-\def\@nfcap{\par\egroup\refstepcounter\@captype
- \@dblarg{\@nfcapx\@captype}}
-\long\def\@nfcapx#1[#2]#3{\@seteven
- \setbox\@nfcapbox\vbox to \ht\@nfigbox
- {\hsize \textwidth \advance\hsize -2pc \advance\hsize -\wd\@nfigbox
- \@parboxrestore
- \vfil
- \@nfmakecap{\csname fnum@#1\endcsname}{\ignorespaces #3}\par
- \vfil}}
-\def\@nfnocap{\egroup \refstepcounter\@captype \@seteven
- \setbox\@nfcapbox\vbox to \ht\@nfigbox
- {\hsize \textwidth \advance\hsize -2pc \advance\hsize -\wd\@nfigbox
- \@parboxrestore
- \vfil
- \hbox to\hsize{\if at nfeven\else\hfil\fi
- \footnotesize Figure \thefigure
- \if at nfeven\hfil\fi}
- \vfil}}
-\def\@seteven{\@nfeventrue
- \@ifundefined{r@@nf\thefigure}{}{%
- \edef\@tmpnf{\csname r@@nf\thefigure\endcsname}%
- \edef\@tmpnf{\expandafter\@getpagenum\@tmpnf}%
- \ifodd\@tmpnf\relax\@nfevenfalse\fi}%
-\label{@nf\thefigure}\edef\@tmpnfx{\if at nfeven e\else o\fi}
-\edef\@tmpnf{\write\@unused {\noexpand\ifodd \noexpand\c at page
- \noexpand\if \@tmpnfx e\noexpand\@nfmsg{\thefigure} \noexpand\fi
- \noexpand\else
- \noexpand\if \@tmpnfx o\noexpand\@nfmsg{\thefigure}\noexpand\fi
- \noexpand\fi }}\@tmpnf}
-\def\@nfmsg#1{Bad narrowfig: Figure #1 on page \thepage}
-
-\newdimen\@narrowfig
-\newbox\@nfigbox
-\newbox\@nfcapbox
-\newif\if at nfeven
-
-\def\and{\\ and\\}
-\def\maketitle{\newpage \thispagestyle{titlepage}\par
- \begingroup \lineskip = \z@\null \vskip -30pt\relax
- \parindent\z@ \LARGE {\raggedright \hyphenpenalty\@M
- %\sf \@title \par
- \@title \par
- \global\firstfoot %aiellom
- \global\runningfoot %aiellom
-}
-\label{@firstpg}
-{ \vskip 13.5pt\relax \normalsize \sf %vskip 13.5pt between title and author
- \begingroup \addtolength{\baselineskip}{2pt}
- \@author\par \vskip -2pt
- \endgroup }
- {\ifx \@categories\@empty
- \else
- \baselineskip 17pt\relax
- \if at acmjacm\else\hbox{\vrule height .2pt width 30pc}\fi%to eliminate the lines for jacm
- }
- \vskip 8.5pt \footnotesize \box\@abstract \vskip 4pt\relax %vskip8.5 space above abstract
- {\def\and{\unskip\/{\rm ; }}
- Categories and Subject Descriptors: \@categories \fi}\par\vskip 4pt\relax
- \box\@terms \vskip 4pt\relax
- \box\@keywords \par
- {\baselineskip 14pt\relax
- \@abstractbottom
- }
- \vskip 23pt\relax
- \endgroup
-\let\maketitle\relax
- % \gdef\@author{}\gdef\@title{}
- \gdef\@categories{}}
-
-
-\newbox\@abstract
-\newbox\@terms
-\newbox\@keywords
-\def\abstract{\global\setbox\@abstract=\vbox\bgroup \everypar{}
- \footnotesize \hsize 30pc \parindent 10pt \noindent
- \rule{0pt}{10pt}\ignorespaces}
-\def\endabstract{\egroup}
-
-\def\terms#1{\setbox\@terms=\vbox{\everypar{}
- \footnotesize \hsize 30pc \parindent 0pt \noindent
- General Terms: \ignorespaces #1}}
-\def\keywords#1{\setbox\@keywords=\vbox{\everypar{}
- \footnotesize \hsize 30pc \parindent 0pt \noindent
- Additional Key Words and Phrases: \ignorespaces #1}
-}
-
-\def\category#1#2#3{\@ifnextchar
- [{\@category{#1}{#2}{#3}}{\@xcategory{#1}{#2}{#3}}}
-\def\@category#1#2#3[#4]{\edef\@tempa{\ifx \@categories\@empty
- \else ; \fi}{\def\protect{\noexpand\protect
- \noexpand}\def\and{\noexpand\and}\xdef\@categories{\@categories\@tempa #1
-[{\bf #2}]:
- #3\kern\z at ---\hskip\z@{\it #4}}}}
-\def\@xcategory#1#2#3{\edef\@tempa{\ifx \@categories\@empty \else ;
-\fi}{\def\protect{\noexpand\protect\noexpand}\def\and{\noexpand
- \and}\xdef\@categories{\@categories\@tempa #1 [{\bf #2}]: #3}}}
-\def\@categories{}
-\def\bottomstuff{\global\@topnum\z@ \global\@botroom \textheight \begin{figure}
-\parindent\z@
-\hbox{}
-\vskip -\textfloatsep
-\vskip 10pt
-\hrule height .2pt width 30pc
-\vskip 2pt\rule{0pt}{10pt}\ignorespaces}
-\def\endbottomstuff{\permission\end{figure}\gdef\permission{}}
-
-\newenvironment{ackslike}[1]
- {\par \footnotesize
- \@ucheadfalse
- \@startsection{subsection}{2}{\z@}{-16pt plus -2pt minus -1pt}{2pt}{\sf}*
- {\uppercase{#1}}\par\normalsize
- \pdfbookmark{Acknowledgments}{Ack}
- }
- {\par}
-\newenvironment{acks}{\begin{ackslike}{ACKNOWLEDGMENTS}}{\end{ackslike}}
-
-\def\received{\par\footnotesize\addvspace{18pt plus 0pt minus
-4pt}\parindent\z@}
-%the line below replaced by the line that follows (K.R. Apt, July 11, 2000
-%\def\endreceived{\label{@lastpg}\hskip-2pt\par}
-\def\endreceived{\label{@lastpg}\hskip-2pt\par\normalsize}
-
-\mark{{}{}}
-
-\def\ps at myheadings{\let\@mkboth\@gobbletwo
-\def\@oddhead{\hbox{}\hfill \small\sf \rightmark\hskip
-19pt{\Large$\cdot$}\hskip 17pt\mypage}
-\def\@oddfoot{\hbox{}\hfill\tiny\@runningfoot}
-\def\@evenhead{\small\sf\mypage \hskip 17pt{\Large$\cdot$}\hskip 19pt\leftmark\hfill \hbox{}}
-\def\@evenfoot{\tiny\@runningfoot\hfill\hbox{}}
-\def\sectionmark##1{}\def\subsectionmark##1{}}
-\def\@runningfoot{}
-\def\runningfoot{\def\@runningfoot{\@journalName, Vol.\ \@acmVolume, No.\ \@acmNumber, \@acmMonth\ 20\@acmYear.}}
-\def\@firstfoot{}
-\def\firstfoot{\def\@firstfoot{\@journalName, Vol.\ \@acmVolume, No.\ \@acmNumber, \@acmMonth\ 20\@acmYear, Pages \pages.}}
-\def\ps at titlepage{\let\@mkboth\@gobbletwo
-\def\@oddhead{}\def\@oddfoot{\hbox{}\hfill
-\tiny\@firstfoot}\def\@evenhead{}\def\@evenfoot{\tiny\@firstfoot\hfill\hbox{}}}
-
-\def\today{\ifcase\month\or
- January\or February\or March\or April\or May\or June\or
- July\or August\or September\or October\or November\or December\fi
- \space\number\day, \number\year}
-\def\@marrayclassiv{\@addtopreamble{$\displaystyle \@nextchar$}}
-\def\@marrayclassz{\ifcase \@lastchclass \@acolampacol \or \@ampacol \or
- \or \or \@addamp \or
- \@acolampacol \or \@firstampfalse \@acol \fi
-\edef\@preamble{\@preamble
- \ifcase \@chnum
- \hfil$\relax\displaystyle\@sharp$\hfil \or $\relax\displaystyle\@sharp$\hfil
- \or \hfil$\relax\displaystyle\@sharp$\fi}}
-\def\marray{\arraycolsep 2.5pt\let\@acol\@arrayacol \let\@classz\@marrayclassz
- \let\@classiv\@marrayclassiv \let\\\@arraycr\def\@halignto{}\@tabarray}
-\def\endmarray{\crcr\egroup\egroup}
-
-
-\ps at myheadings \pagenumbering{arabic} \onecolumn
-
-%-----------------------BIBLIOGRAPHY STUFF-------------------------
-% this is adapted (November 1993) by Andrew Appel and Rebecca Davies from
-%
-%%% filename = "chicago.sty",
-%%% version = "4", % MODIFIED!
-%%% date = "31 August 1992",
-%%% time = "09:42:44 199",
-%%% author = "Glenn Paulley",
-%%% address = "Data Structuring Group
-%%% Department of Computer Science
-%%% University of Waterloo
-%%% Waterloo, Ontario, Canada
-%%% N2L 3G1",
-%%% telephone = "(519) 885-1211",
-%%% FAX = "(519) 885-1208",
-%%% email = "gnpaulle at bluebox.uwaterloo.ca",
-
-%%% ====================================================================
-%
-% this file: Modification of chicago.sty for new ACM bibliography
-% style, which is similar (but not identical) to the ``Chicago'' style.
-%
-% chicago.sty: Style file for use with bibtex style chicago.bst, for
-% bibliographies formatted according to the 13th Edition of the Chicago
-% Manual of Style.
-%
-% 'newapa.bst' was made from 'plain.bst', 'named.bst', and 'apalike.bst',
-% with lots of tweaking to make it look like APA style, along with tips
-% from Young Ryu and Brian Reiser's modifications of 'apalike.bst'.
-% newapa.sty formed the basis of this style, chicago.sty. Author-date
-% references in newapa.bst formed the basis for chicago.bst. Chicagoa.bst
-% supports annotations.
-%
-% Version 4 (August, 1992):
-% - fixed chicago.bst and chicagoa.bst to handle long author lists in
-% sorting
-% - fixed chicago.bst and chicagoa.bst so that missing page numbers in
-% ``article'' entries are handled correctly
-% - modified chicago.sty to format entries with 2nd and subsequent lines
-% indented.
-%
-% Citation format: (author-last-name year)
-% (author-last-name and author-last-name year)
-% (author-last-name et al. year)
-% (author-last-name)
-% author-last-name
-% author-last-name (year)
-% (author-last-name and author-last-name)
-% (author-last-name et al.)
-% (year) or (year,year)
-% year or year,year
-%
-% Reference list ordering: alphabetical by author or whatever passes
-% for author in the absence of one.
-%
-% This BibTeX style has support for abbreviated author lists and for
-% year-only citations. This is done by having the citations
-% actually look like
-%
-% \citeauthoryear{full-author-info}{abbrev-author-info}{year}
-%
-% The LaTeX style has to have the following (or similar)
-%
-% \let\@internalcite\cite
-% \def\fullcite{\def\citeauthoryear##1##2##3{##1, ##3}\@internalcite}
-% \def\fullciteA{\def\citeauthoryear##1##2##3{##1}\@internalcite}
-% \def\shortcite{\def\citeauthoryear##1##2##3{##2, ##3}\@internalcite}
-% \def\shortciteA{\def\citeauthoryear##1##2##3{##2}\@internalcite}
-% \def\citeyear{\def\citeauthoryear##1##2##3{##3}\@internalcite}
-%
-%
-% -------------------------------------------------------------------------
-%
-% Citation macros.
-%
-\let\@internalcite\cite
-
-\def\cite{\def\@citeseppen{-1000}%
- \def\@cite##1##2{[##1\if at tempswa , ##2\fi]}%
- \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}
-\def\citeXNP#1#2{%
- \def\@cite at label{#2}%
- \def\@cite##1##2{##1\if at tempswa , ##2\fi}%
- \def\citeauthoryear##1##2##3{\@cite at label}\@internalcite{#1}}
-% \def\@citeseppen{-1000}%
-% \def\@cite at label{#1}
-% \def\@cite##1##2{\if at tempswa ##2\fi}%
-% \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}
-\def\citeNP{\def\@citeseppen{-1000}%
- \def\@cite##1##2{##1\if at tempswa , ##2\fi}%
- \def\citeauthoryear##1##2##3{##2 ##3}\@internalcite}
-\def\citeN{\def\@citeseppen{-1000}%
- \def\@cite##1##2{##1\if at tempswa , ##2]\else{]}\fi}%
- \def\citeauthoryear##1##2##3{##2 [##3}\@citedata}
-\def\shortcite#1{\citeyear{#1}}
-\def\citeS#1{[\citeANP{#1} \citeyearNP{#1}]}
-\def\citeNS#1{\citeANP{#1} \citeyear{#1}}
-\def\citeNPS#1{\citeANP{#1} \citeyearNP{#1}}
-%testing year,year
-\def\citeNN{\def\@citeseppen{-1000}%
- \def\@cite##1##2{[##1\if at tempswa , ##2\fi]}%
- \def\citeauthoryear##1##2##3{##3}\@citedata}
-
-\def\citeA{\def\@citeseppen{-1000}%
- \def\@cite##1##2{[##1\if at tempswa , ##2\fi]}%
- \def\citeauthoryear##1##2##3{##2}\@internalcite}
-\def\citeANP{\def\@citeseppen{-1000}%
- \def\@cite##1##2{##1\if at tempswa , ##2\fi}%
- \def\citeauthoryear##1##2##3{##2}\@internalcite}
-
-\def\citeyear{\def\@citeseppen{-1000}%
- \def\@cite##1##2{[##1\if at tempswa , ##2\fi]}%
- \def\citeauthoryear##1##2##3{##3}\@citedata}
-\def\citeyearNP{\def\@citeseppen{-1000}%
- \def\@cite##1##2{##1\if at tempswa , ##2\fi}%
- \def\citeauthoryear##1##2##3{##3}\@citedata}
-
-%
-% \@citedata and \@citedatax:
-%
-% Place commas in-between citations in the same \citeyear, \citeyearNP,
-% or \citeN command.
-% Use something like \citeN{ref1,ref2,ref3} and \citeN{ref4} for a list.
-%
-\def\@citedata{%
- \@ifnextchar [{\@tempswatrue\@citedatax}%
- {\@tempswafalse\@citedatax[]}%
-}
-
-\def\@citedatax[#1]#2{%
-\if at filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
- \def\@citea{}\@cite{\@for\@citeb:=#2\do%
- {\@citea\def\@citea{; }\@ifundefined% by Young
- {b@\@citeb}{{\bf ?}%
- \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
-{\csname b@\@citeb\endcsname}}}{#1}}%
-
-% don't box citations, separate with ; and a space
-% also, make the penalty between citations negative: a good place to break.
-%
-\def\@citex[#1]#2{%
-\if at filesw\immediate\write\@auxout{\string\citation{#2}}\fi%
- \def\@citea{}\@cite{\@for\@citeb:=#2\do%
- {\@citea\def\@citea{; }\@ifundefined% by Young
- {b@\@citeb}{{\bf ?}%
- \@warning{Citation `\@citeb' on page \thepage \space undefined}}%
-{\csname b@\@citeb\endcsname}}}{#1}}%
-
-% (from apalike.sty)
-% No labels in the bibliography.
-%
-\def\@biblabel#1{}
-
-% (from apalike.sty)
-% Set length of hanging indentation for bibliography entries.
-%
-\newlength{\bibhang}
-\setlength{\bibhang}{2em}
-
-% Indent second and subsequent lines of bibliographic entries. Stolen
-% from openbib.sty: \newblock is set to {}.
-
-\newdimen\bibindent
-\bibindent=1em
-\@ifundefined{refname}%
- {\@ifundefined{chapter}%
- {\newcommand{\refname}{\footnotesize REFERENCES}}%
- {\newcommand{\refname}{\footnotesize BIBLIOGRAPHY}}%
- }%
- {}%
-\@ifundefined{chapter}%
- {\def\thebibliography#1{\footnotesize \section*{\refname\@mkboth
- {\uppercase{\refname}}{\uppercase{\refname}}}\list
- {[\arabic{enumi}]}{
- \settowidth\labelwidth{[#1]}
- \leftmargin\labelwidth
- \advance\leftmargin\labelsep
- \advance\leftmargin\bibindent
- \itemindent -\bibindent
- \listparindent \itemindent
- \parsep \z@
- \usecounter{enumi}}
- \def\newblock{}
- \sloppy
- \sfcode`\.=1000\relax}}
- {\def\thebibliography#1{\footnotesize \chapter*{\refname\@mkboth
- {\uppercase{\refname}}{\uppercase{\refname}}}\list
- {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}
- \leftmargin\labelwidth
- \advance\leftmargin\labelsep
- \advance\leftmargin\bibindent
- \itemindent -\bibindent
- \listparindent \itemindent
- \parsep \z@
- \usecounter{enumi}}
- \def\newblock{}
- \sloppy
- \sfcode`\.=1000\relax}}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-% fixes to acm trans macro package
-% 31-JAN-1996
-% John Tang Boyland
-
-% newdef need to take the optional parameters of newtheorem
-\def\newdef#1{\@ifnextchar[{\@xnewdef{#1}}{\@ynewdef{#1}}}
-\def\@xnewdef#1[#2]#3{\newtheorem{italic@#1}[#2]{{\em #3}}\@newdef{#1}}
-\def\@ynewdef#1#2{\@ifnextchar[{\@xynewdef{#1}{#2}}{\@yynewdef{#1}{#2}}}
-\def\@xynewdef#1#2[#3]{\newtheorem{italic@#1}{{\em #2}}[#3]\@newdef{#1}}
-\def\@yynewdef#1#2{\newtheorem{italic@#1}{{\em #2}}\@newdef{#1}}
-% and now fix up definition, to change body to use roman font:
-\def\@newdef#1{\newenvironment{#1}{\@ifnextchar[{\@xstartdef{#1}}{\@ystartdef{#1}}}{\end{italic@#1}}}
-%changed by K.R. Apt on Sep. 27, 2000. It was: \def\@xstartdef#1[#2]{\begin{italic@#1}[#2]\rm}
-\def\@xstartdef#1[#2]{\begin{italic@#1}[{\em #2}]\rm}
-\def\@ystartdef#1{\begin{italic@#1}\rm}
-
-% footers produced too small (vpt), when ACM typsets them at 7.5pt (!).
-% A better compromise is viipt.
-\def\@oddfoot{\hbox{}\hfill\scriptsize\@runningfoot}
-\def\@evenfoot{\scriptsize\@runningfoot\hfill\hbox{}}
-
-% first footer was set to (vpt), when ACM typesets them at 6.5pt (!).
-% A better compromise is vipt.
-\def\firstfootsize{\@setsize\firstfootsize{7pt}\vipt\@vipt}
-\def\ps at titlepage{\let\@mkboth\@gobbletwo
-\def\@oddhead{}\def\@oddfoot{\hbox{}\hfill\firstfootsize\@firstfoot}%
-\def\@evenhead{}\def\@evenfoot{\firstfootsize\@firstfoot\hfill\hbox{}}}
-
-% new permission statement
-\long\def\permission{\par
-% linebreaks added to conform to the current style
-Permission to make digital/hard copy of all or part of this material without
-fee
-for personal or classroom use
-provided that the copies are not made or distributed for profit
-or commercial advantage, the ACM copyright/server notice, the title of the
-publication, and its date appear, and notice is given that copying is by
-permission of the ACM, Inc. To copy
-otherwise, to republish, to post on servers, or to redistribute to lists
-requires prior specific
-permission and/or a fee.\par
-\copyright\ 20\@acmYear\
-ACM \@permissionCodeOne/20\@acmYear/\@permissionCodeTwo-\@pageCode\$5.00 % aiellom
-}
-
-% make sure \permission doesn't get trashed
-\def\endbottomstuff{\permission\end{figure}}
-
-% alternate way of using citeyear
-% \def\shortcite#1{\citeyear{#1}
-% enumerations and longenums are wrong
-% 1. the second line in a paragraph of an enumerations in theorems
-% (or other trivlists) doesn't line up under the first
-% 1. the second line of a longenum doesn't properly wrap around
-% back to the left margin.
-
-% the original definition of \@listI doesn't set labelwidth
-\def\@listI{\leftmargin\leftmargini
- \labelwidth\leftmargini\advance\labelwidth-\labelsep
- \parsep 0pt plus 1pt
- \topsep 6pt plus 2pt minus 2pt
- \itemsep 2pt plus 1pt minus .5pt}
-\let\@listi\@listI
-\@listi
-
-% add set of \labelwidth and \itemindent
-\def\longenum{\ifnum \@enumdepth >3 \@toodeep\else
- \advance\@enumdepth \@ne
- \edef\@enumctr{enum\romannumeral\the\@enumdepth}\list
- {\csname label\@enumctr\endcsname}{\usecounter
- {\@enumctr}\labelwidth\z@\leftmargin\z@
- \itemindent\parindent \advance\itemindent\labelsep}\fi}
-
-% split electronic appendix into two parts:
-
-
-%aiellom{
-\def\appendixhead#1{\appendix
-\section*{ELECTRONIC APPENDIX}
-The electronic appendix for this article can be accessed in
- the ACM Digital Library by visiting the following URL:$\;$
- \url{http://www.acm.org/pubs/citations/journals/}{\tt \@journalNameShort /20\@acmYear-\@acmVolume-\@acmNumber/p\pageref{@firstpg}-#1}.
-% \quad \href{http://www.acm.org/tocl}{{\small http://www.acm.org/tocl} }
-}
-%aiellom}
-
-\long\def\elecappendix{
-\clearpage
-\makeatletter
-\pagenumbering{withappendix}
-\makeatother
-\appendix
-\par\noindent{\sc This document is the online-only appendix to:}\hfill \vskip 1em
-{\vbox{\Large\sf \parindent0pt\@title{}}}\vskip .5em
-\vbox{\sf \parindent0pt\@author{}}\vskip .5em\noindent
-\vskip 10pt\noindent
-{\firstfootsize
-\@journalName, Vol.\ \@acmVolume, No.\ \@acmNumber, \@acmMonth\ 20\@acmYear, Pages \pages.}
-\vskip 11pt\noindent
-\hrule height .2pt
-\par
-\bottomstuff
-\endbottomstuff
-}
-
-% provide for a single acknowledgment
-\def\ack{ \par \footnotesize
-\@ucheadfalse
-\@startsection{subsection}{2}{\z@}{-16pt plus -2pt minus
- -1pt}{2pt}{\sf}*{ACKNOWLEDGMENT}\par\normalsize
-\pdfbookmark{Acknowledgment}{Ack}
-}
-\def\endack{\par}
-
-% provide both spellings of Acknowledgment(s)
-\let\acknowledgments\acks
-\let\endacknowledgments\endacks
-\let\acknowledgment\ack
-\let\endacknowledgment\endack
-
-\newcommand{\longpage}{\enlargethispage{\baselineskip}}
-\newcommand{\shortpage}{\enlargethispage{-\baselineskip}}
-
-
-% Don't indent bibliography and
-% override \refname (which sets fontsize):
-\def\thebibliography#1{
- \footnotesize\section*{\footnotesize\sf{REFERENCES}\@mkboth
- {\uppercase{\refname}}{\uppercase{\refname}}}%
- \pdfbookmark{References}{Ref}
- \list
- {\@biblabel{\arabic{enumiv}}}{%
- %\settowidth\labelwidth{[#1]}
- \labelwidth 0pt
- \leftmargin \bibindent
- \labelsep 0pt
- \if at hyperref
- \itemindent -\bibindent
- \fi
- \listparindent -\bibindent
- \labelsep -\bibindent
- \usecounter{enumiv}%
- \let\p at enumiv\@empty
- \def\theenumiv{\arabic{enumiv}}}%
- \def\newblock{\hskip .11em plus.33em minus.07em}%
- \sloppy
- \clubpenalty=4500
- \widowpenalty=4500
- \frenchspacing}
-\def\endthebibliography{%
- \def\@noitemerr{\@warning{Empty `thebibliography' environment}}%
- \endlist}
-\def\@lbibitem[#1]#2{\item[]\if at filesw
- {\def\protect##1{\string ##1\space}\immediate
- \write\@auxout{\string\bibcite{#2}{#1}}}\fi\hskip-1em\ignorespaces}
-% Fix cite so it doesn't repeat author lists in citations:
-
-\def\cite{\def\@citeseppen{-1000}%
- \def\@cite##1##2{[##1\if at tempswa , ##2\fi]}%
- \let\@lastauthor=\@noauthor
- \let\citeauthoryear=\citeauthoryear at no@repeats\@internalcite}
- %\def\citeauthoryear##1##2##3{##2 ##3}\@internalcite
-
-\def\@noauthor={\relax}
-\let\@lastauthor=\@noauthor
-\let\@currauthor=\@noauthor
-
-\def\citeauthoryear at no@repeats#1#2#3{%
- \def\@currauthor{\csname @author #1\endcsname}%
- \ifx\@lastauthor\@currauthor{#3}\else{#2 #3}\fi%
- \let\@lastauthor=\@currauthor}
-
-\DeclareOldFontCommand{\rm}{\normalfont\rmfamily}{\mathrm}
-\DeclareOldFontCommand{\sf}{\normalfont\sffamily}{\mathsf}
-\DeclareOldFontCommand{\tt}{\normalfont\ttfamily}{\mathtt}
-\DeclareOldFontCommand{\bf}{\normalfont\bfseries}{\mathbf}
-\DeclareOldFontCommand{\it}{\normalfont\itshape}{\mathit}
-\DeclareOldFontCommand{\sl}{\normalfont\slshape}{\@nomath\sl}
-\DeclareOldFontCommand{\sc}{\normalfont\scshape}{\@nomath\sc}
-\DeclareRobustCommand*\cal{\@fontswitch\relax\mathcal}
-\DeclareRobustCommand*\mit{\@fontswitch\relax\mathnormal}
-
-
-\if at hyperref
- \let\pdfbookmark=\relax
- \RequirePackage[pdfmark]{hyperref}
-\fi
-
-% \renewcommand{\thefootnote}{\arabic{footnote}\hspace{-3pt}}
-
-
diff --git a/doc/tutorial/answer.tex b/doc/tutorial/answer.tex
deleted file mode 100644
index 9c121cf..0000000
--- a/doc/tutorial/answer.tex
+++ /dev/null
@@ -1,102 +0,0 @@
-\documentclass[potts,head,fontsize=11pt,a4paper,twoside,english=true]{tucletter}
-
-\usepackage{amsfonts}
-\usepackage{amsmath}
-\usepackage{amssymb}
-% ISO Latin 1 input encoding
-\usepackage{t1enc}
-
-
-\begin{document}
-
-\setkomavar{signature}{Daniel Potts} % Unterschrift!
-\setkomavar{subject}{2nd revision of
-``Using NFFT~3 -- a software library for various nonequispaced fast
- Fourier transforms''
-by J.~Keiner, S.~Kunis, and D.~Potts
-}
-
-\begin{letter}{Editor-in-Chief\\
-Prof. Ian Gladwell\\
-Department of Mathematics\\
-Southern Methodist University\\
-Dallas, TX 75275 USA}
-
-\opening{Dear Professor Gladwell,}
-
-we thank all three referees for their helpful comments and valuable
-suggestions. In the following we report on the changes.
-
-\textbf{Referee 1}
-No changes.
-
-\textbf{Referee 2}
-The structure of the paper has been kept, in particular Section 3.2 shows the
-typical workflow and details on the precomputation are still in the appendix.
-The following suggestions of the referee have been incorporated, 1), 4), 5),
-and 6).
-
-2) ``Usually $\hat f$ is for the FT of f and not vice versa. If you have a
-good reason for doing it like this, state it.'' and p.~3, sec 2.1 of the first
-report: \\
-The beginning of Section 2 now states that the FFT evaluates a
-trigonometric polynomial at equispaced nodes and that this point of view is
-most convenient for the generalisation to nonequispaced nodes.
-
-3) ``P.3, line -10: what do you mean by no additional memory?''
-The matrix entries are explicitly given and they are computed only when used.
-
-A more detailed cost analysis and performance analysis has been
-added, see the second issue of Referee 3.
-
-\newpage
-
-\textbf{Referee 3}
-On ``The major issues''
-\begin{enumerate}
-\item The Sections 3.2 and 3.4 clearly state how the nodes have to be set.
-\item A more detailed cost analysis and performance analysis has been
-added. In particular, Algorithm 2 and 3 give clear upper bounds on the number
-of arithmetic operations excluding the evaluation of the so called window
-function which is detailed in Appendix A.3. Section 5.1 specifies these costs
-under the tested default settings and gives a performance plot in Figure 5.1.
-\item The size of the 3D problems is considered to be reasonable on standard hardware, since an
-NFFT with $128^3$ Fourier coefficients, $128^3$ evaluation nodes, oversampling
-factor $2$ and disjoint FFTW-in/output arrays takes approximately
-\begin{equation*}
- (128^3 + 2 \times (2\times 128)^3 + 128^3) \times 16 =576 \text{MByte}.
-\end{equation*}
-A NFFT of size $256^3$ would already take over $4\text{GByte}$ with these
-settings (the library can compute such a transform by using a smaller
-oversampling factor etc. at increased cost).
-\end{enumerate}
-
-On ``The minor issues''
-\begin{enumerate}
- \item[1,2.] Done, except ``various $\rightarrow$ certain'', since
- ``Nonequispaced FFT'' is typically associated with (2.3) and ``various''
- refers to the fact that more general transforms are considered as well.
- \item[3.] Done, but we kept the version number when referring to the library.
- \item[4,5,6,7.] Done. However, we found no inconsistent vector notation and
- the terminology ``adjoint'' (or transposed) and ``inverse'' is in
- accordance with [19]
-\item[8.] We changed the section title. The statement on the complexity of the NDFT is correct.
-\item[9.] Done, a detailed description of the precomputation is given in
- Appendix A.3, the naming system follows FFTW and does not use abbreviations
- like LAPACK.
-\item[10.] It is more convenient to present first (up to Section 4) the
- theoretical part and finally the numerical results (Section 5 and 6).
- Test specifications are given in the second paragraph of Section 5.
-\item[11.] Citations now follow the bibliographystyle \verb"acmtrans".
-\end{enumerate}
-
-In addition, the layout of tables has been changed to be compliant with
-the ACM manuscript preparation guidelines.
-
-\bigskip
-
-Yours sincerely
-\closing{\vspace{0.0cm}}
-\end{letter}
-
-\end{document}
diff --git a/doc/tutorial/comments1.tex b/doc/tutorial/comments1.tex
deleted file mode 100755
index cac6e53..0000000
--- a/doc/tutorial/comments1.tex
+++ /dev/null
@@ -1,107 +0,0 @@
-%==============================================================================
-\documentclass[11pt,a4paper,twoside,bibtotoc]{scrartcl}
-%==============================================================================
-
-% LaTeX packages
-\usepackage{a4wide}
-\usepackage{amsfonts}
-\usepackage{amsmath}
-\usepackage{theorem}
-\usepackage{color}
-\usepackage{graphicx}
-\usepackage{subfigure}
-\usepackage[boxed,Algorithm]{algorithm}
-\usepackage{algorithmic}
-\usepackage{multicol}
-%\usepackage{showkeys}
-
-% Allow for more figures on each side
-\renewcommand{\topfraction}{1}
-\renewcommand{\textfraction}{0}
-\setcounter{totalnumber}{4}
-
-% Shortcuts for maths symbols.
-\newcommand{\N}{\ensuremath{\mathbb{N}}}
-\newcommand{\T}{\ensuremath{\mathbb{T}}}
-\renewcommand{\S}{\ensuremath{\mathbb{S}}}
-\newcommand{\NZ}{\ensuremath{\mathbb{N}_{0}}}
-\newcommand{\Z}{\ensuremath{\mathbb{Z}}}
-\newcommand{\R}{\ensuremath{\mathbb{R}}}
-\newcommand{\Rp}{\ensuremath{\mathbb{R}^{+}}}
-\newcommand{\Rn}{\ensuremath{\mathbb{R}^n}}
-\newcommand{\Rnn}{\ensuremath{\mathbb{R}^{n \times n}}}
-\newcommand{\C}{\ensuremath{\mathbb{C}}}
-\newcommand{\nfft}{\textsf{NFFT}}
-\newcommand{\cO}{\ensuremath{\mathcal{O}}}
-\newcommand{\tT}{\ensuremath{\text{\tiny{T}}}}
-\newcommand{\ti}{\ensuremath{\text{\scriptsize{i}}}}
-\newcommand{\e}{{\ensuremath{\mathrm{e}}}}
-\newcommand{\eim}[1]{\ensuremath{\mathrm{e}^{-2\pi{\ti} #1}}}
-\newcommand{\eip}[1]{\ensuremath{\mathrm{e}^{ 2\pi{\ti} #1}}}
-\renewcommand{\mathbf}[1]{\ensuremath{\boldsymbol{#1}}}
-\newcommand{\ds}{\displaystyle}
-\newcommand{\sinc}{{\rm sinc}}
-\newcommand{\dist}{{\rm dist}}
-\newcommand{\adj}{{\vdash \hspace*{-1.72mm} \dashv}}
-\DeclareMathOperator{\diag}{diag}
-\DeclareMathOperator{\dd}{d}
-\newcommand{\bend}
-{
- \hspace*{0ex} \hfill
- \hbox{\vrule height 1.5ex \vbox{\hrule width 1.4ex \vskip
- 1.4ex\hrule width 1.4ex} \vrule height 1.5ex}
-}
-
-\def\invisible#1{\textcolor{white}{#1}}
-
-% Environment Numbering
-\numberwithin{equation}{section}
-\numberwithin{table}{section}
-\numberwithin{figure}{section}
-
-%===============================================================================
-% Title Page
-%===============================================================================
-\begin{document}
-
-\begin{center}
-Answer to the Referee Report\\[2ex]
-{\Large
-``Using NFFT 3 -- a software library for various \\ nonequispaced fast
- Fourier transforms'' }\\[2ex]
-by Jens Keiner, Stefan Kunis, and Daniel Potts
-\end{center}
-%===============================================================================
-
-First of all, we thank all three referees for their helpful comments and valuable
-suggestions.
-
-\section*{Referee 1}
-\label{sect:1}
-
-\begin{itemize}
- \item
- \begin{quote}
- Referee:
- I am not so familiar with the norms in TOMS, but it seems to me that
- installation instructions (section 3.1) would not have longevity that
- merits archiving, and could be relegated to the online code package.
- \end{quote}
- We do think that readers might appreciate brief installation instructions.
- They have been shortened and moved to Appendix A.1.
-
- \item
- \begin{quote}
- Referee:
- As an optional note, it would be convenient if the CGNR routine allowed
- a user-defined preconditioner.
- \end{quote}
- We appreciate the suggestion and are well aware that a variety of
- Toeplitz-preconditioner are possible for the CGNR routine.
- However, numerical experience (in line with theoretical results) suggests
- that for reasonably well-distributed point sets, solving the weighted
- normal equation works well with the used ``diagonal preconditioner''
- $\mathbf{W}$ and $\mathbf{\hat W}$, already.
-\end{itemize}
-
-\end{document}
diff --git a/doc/tutorial/comments2.tex b/doc/tutorial/comments2.tex
deleted file mode 100755
index 5c6164b..0000000
--- a/doc/tutorial/comments2.tex
+++ /dev/null
@@ -1,156 +0,0 @@
-%==============================================================================
-\documentclass[11pt,a4paper,twoside,bibtotoc]{scrartcl}
-%==============================================================================
-
-% LaTeX packages
-\usepackage{a4wide}
-\usepackage{amsfonts}
-\usepackage{amsmath}
-\usepackage{theorem}
-\usepackage{color}
-\usepackage{graphicx}
-\usepackage{subfigure}
-\usepackage[boxed,Algorithm]{algorithm}
-\usepackage{algorithmic}
-\usepackage{multicol}
-%\usepackage{showkeys}
-
-% Allow for more figures on each side
-\renewcommand{\topfraction}{1}
-\renewcommand{\textfraction}{0}
-\setcounter{totalnumber}{4}
-
-% Shortcuts for maths symbols.
-\newcommand{\N}{\ensuremath{\mathbb{N}}}
-\newcommand{\T}{\ensuremath{\mathbb{T}}}
-\renewcommand{\S}{\ensuremath{\mathbb{S}}}
-\newcommand{\NZ}{\ensuremath{\mathbb{N}_{0}}}
-\newcommand{\Z}{\ensuremath{\mathbb{Z}}}
-\newcommand{\R}{\ensuremath{\mathbb{R}}}
-\newcommand{\Rp}{\ensuremath{\mathbb{R}^{+}}}
-\newcommand{\Rn}{\ensuremath{\mathbb{R}^n}}
-\newcommand{\Rnn}{\ensuremath{\mathbb{R}^{n \times n}}}
-\newcommand{\C}{\ensuremath{\mathbb{C}}}
-\newcommand{\nfft}{\textsf{NFFT}}
-\newcommand{\cO}{\ensuremath{\mathcal{O}}}
-\newcommand{\tT}{\ensuremath{\text{\tiny{T}}}}
-\newcommand{\ti}{\ensuremath{\text{\scriptsize{i}}}}
-\newcommand{\e}{{\ensuremath{\mathrm{e}}}}
-\newcommand{\eim}[1]{\ensuremath{\mathrm{e}^{-2\pi{\ti} #1}}}
-\newcommand{\eip}[1]{\ensuremath{\mathrm{e}^{ 2\pi{\ti} #1}}}
-\renewcommand{\mathbf}[1]{\ensuremath{\boldsymbol{#1}}}
-\newcommand{\ds}{\displaystyle}
-\newcommand{\sinc}{{\rm sinc}}
-\newcommand{\dist}{{\rm dist}}
-\newcommand{\adj}{{\vdash \hspace*{-1.72mm} \dashv}}
-\DeclareMathOperator{\diag}{diag}
-\DeclareMathOperator{\dd}{d}
-\newcommand{\bend}
-{
- \hspace*{0ex} \hfill
- \hbox{\vrule height 1.5ex \vbox{\hrule width 1.4ex \vskip
- 1.4ex\hrule width 1.4ex} \vrule height 1.5ex}
-}
-
-\def\invisible#1{\textcolor{white}{#1}}
-
-% Environment Numbering
-\numberwithin{equation}{section}
-\numberwithin{table}{section}
-\numberwithin{figure}{section}
-
-%===============================================================================
-% Title Page
-%===============================================================================
-\begin{document}
-\begin{center}
-Answer to the Referee Report\\[2ex]
-{\Large
-``Using NFFT 3 -- a software library for various \\ nonequispaced fast
- Fourier transforms'' }\\[2ex]
-by Jens Keiner, Stefan Kunis, and Daniel Potts
-\end{center}
-%===============================================================================
-
-First of all, we thank all three referees for their helpful comments and valuable
-suggestions.
-
-\section*{Referee 2}
-\label{sect:1}
-
-\begin{itemize}
- \item
- \begin{quote}
- Referee: The performance of the
- library is not comparable to high performance libraries such as FFTW but
- it should still be reasonable for many applications. Improving performance
- would still be desirable of course.
- \end{quote}
- We generally acknowledge that performance and software design improvements
- are desirable. But NFFT 3 is for the major part the result of recent
- research and as such has not been around for a long time.
- \item
- \begin{quote}
- Referee: As I see it, there are 3 'layers' that are relevant for a
- library: 1) underlying theory and algorithms (the math behind it)
- 2) the actual implementation (what exact specifications have been used and
- why, some pseudo code, what optimization techniques have been used, which
- algorithms and why, arithmetic cost and performance analysis, maybe other
- analyses, etc.) 3) how to install and use the library (Makefiles,
- concrete code examples) In a library paper I would expect a short version
- of 1) as background, 2) as the focus and then 3) very briefly.
- \end{quote}
- In the terminology of TOMS, this paper is a \emph{research paper} and not a
- \emph{library paper}. The aim of the article is to give a mathematical
- description of the algorithms implemented in the NFFT 3 software library
- with some more mathematical background on the core NFFT algorithm. A second
- goal is to mention some applications of the implemented methods.
- The focus of this paper is not the description of technical details of the
- implementation (code optimizations, software engineering concerns,...) and
- the full programming interface.
- \item
- \begin{quote}
- Referee:
- As it is right now the authors put the emphasis on 3) (including details
- on how to untar a file that is really way too much) and have some of 2)
- in the appendix, but not enough. Also, the cost and performance analysis
- is far too brief for a library paper.
- \end{quote}
- We have shortened the installation instructions. They have also been moved
- to Appendix A.1.
-
- As mentioned, our aim is not to describe all details of the implementation.
- But we now summarise performance related tests in Section 5. The focus is
- to observe how the NFFT algorithm does behave in comparison to the
- direct implementation.
-
- It is nevertheless true that more extensive numerical tests at a
- mature state of the library are desirable. At the current stage, an
- extensive and in-depth performance analysis is not available.
- \item
- \begin{quote}
- Referee:
- Concrete, I recommend (following my above numbering) to have a
- background section on 1), then all relevant details on 2) (some of which are
- not in the paper) and then a very short section, or appendix, on 3). (The
- authors may want to look at some existing library papers of popular
- libraries.) Further, there have to be more details on the relevant
- implementation decisions, optimization techniques performed, and, most
- important, a more extensive evaluation of operations count and runtime
- performance (which should be given also in Gflop/s or pseudo Gflop/s, i.e.,
- a number of ops is stipulated in case the exact one is not available).
- \end{quote}
- Section 2 has been extended to start with the classical discrete Fourier
- transform (DFT) and mention more relevant properties of the NFFT algorithm.
- Details are found in the Appendices A.2 and A.3.
- \item
- \begin{quote}
- Referee: Detailed comments \ldots
- \end{quote}
- In the text, the library is now consistently denoted NFFT 3. We include the
- major version number in the name since earlier versions offered
- substantially less functionality. The rest of the comments have been
- incorporated into the paper and all mentioned mistakes have been fixed.
-\end{itemize}
-
-\end{document}
diff --git a/doc/tutorial/comments3.tex b/doc/tutorial/comments3.tex
deleted file mode 100755
index ec8ae19..0000000
--- a/doc/tutorial/comments3.tex
+++ /dev/null
@@ -1,253 +0,0 @@
-%==============================================================================
-\documentclass[11pt,a4paper,twoside,bibtotoc]{scrartcl}
-%==============================================================================
-
-% LaTeX packages
-\usepackage{a4wide}
-\usepackage{amsfonts}
-\usepackage{amsmath}
-\usepackage{theorem}
-\usepackage{color}
-\usepackage{graphicx}
-\usepackage{subfigure}
-\usepackage[boxed,Algorithm]{algorithm}
-\usepackage{algorithmic}
-\usepackage{multicol}
-%\usepackage{showkeys}
-
-% Allow for more figures on each side
-\renewcommand{\topfraction}{1}
-\renewcommand{\textfraction}{0}
-\setcounter{totalnumber}{4}
-
-% Shortcuts for maths symbols.
-\newcommand{\N}{\ensuremath{\mathbb{N}}}
-\newcommand{\T}{\ensuremath{\mathbb{T}}}
-\renewcommand{\S}{\ensuremath{\mathbb{S}}}
-\newcommand{\NZ}{\ensuremath{\mathbb{N}_{0}}}
-\newcommand{\Z}{\ensuremath{\mathbb{Z}}}
-\newcommand{\R}{\ensuremath{\mathbb{R}}}
-\newcommand{\Rp}{\ensuremath{\mathbb{R}^{+}}}
-\newcommand{\Rn}{\ensuremath{\mathbb{R}^n}}
-\newcommand{\Rnn}{\ensuremath{\mathbb{R}^{n \times n}}}
-\newcommand{\C}{\ensuremath{\mathbb{C}}}
-\newcommand{\nfft}{\textsf{NFFT}}
-\newcommand{\cO}{\ensuremath{\mathcal{O}}}
-\newcommand{\tT}{\ensuremath{\text{\tiny{T}}}}
-\newcommand{\ti}{\ensuremath{\text{\scriptsize{i}}}}
-\newcommand{\e}{{\ensuremath{\mathrm{e}}}}
-\newcommand{\eim}[1]{\ensuremath{\mathrm{e}^{-2\pi{\ti} #1}}}
-\newcommand{\eip}[1]{\ensuremath{\mathrm{e}^{ 2\pi{\ti} #1}}}
-\renewcommand{\mathbf}[1]{\ensuremath{\boldsymbol{#1}}}
-\newcommand{\ds}{\displaystyle}
-\newcommand{\sinc}{{\rm sinc}}
-\newcommand{\dist}{{\rm dist}}
-\newcommand{\adj}{{\vdash \hspace*{-1.72mm} \dashv}}
-\DeclareMathOperator{\diag}{diag}
-\DeclareMathOperator{\dd}{d}
-\newcommand{\bend}
-{
- \hspace*{0ex} \hfill
- \hbox{\vrule height 1.5ex \vbox{\hrule width 1.4ex \vskip
- 1.4ex\hrule width 1.4ex} \vrule height 1.5ex}
-}
-
-\def\invisible#1{\textcolor{white}{#1}}
-
-% Environment Numbering
-\numberwithin{equation}{section}
-\numberwithin{table}{section}
-\numberwithin{figure}{section}
-
-%===============================================================================
-% Title Page
-%===============================================================================
-\begin{document}
-\begin{center}
-Answer to the Referee Report\\[2ex]
-{\Large
-``Using NFFT 3 -- a software library for various \\ nonequispaced fast
- Fourier transforms'' }\\[2ex]
-by Jens Keiner, Stefan Kunis, and Daniel Potts
-\end{center}
-%===============================================================================
-
-First of all, we thank all three referees for their helpful comments and valuable
-suggestions.
-
-\section*{Referee 3}
-\label{sect:1}
-
-\begin{itemize}
- \item
- \begin{quote}
- Referee:
- The authors may consider to follow or mention the other commonly
- recognized names, such as USFFT by many mathematicians
- and NUFFT by engineers.
- \end{quote}
- %We now mention the alternative abbreviations USFFT and NUFFT on the first
- %Ppage of the paper.
- References and the alternative abbreviations USFFT and NUFFT are contained
- in the Appendix ``Further NFFT approaches'' (now A.4).
- \item
- \begin{quote}
- Referee:
- This package does not take arbitrary sample nodes as it claims.
- The samples are required to be on a Kronecker grid, which
- may be non-equally spaced in each and every dimension involved.
- \end{quote}
- The software library \emph{does} take arbitrary sample nodes. We do not
- require samples to be on a Kronecker grid or anything similar.
- \item
- \begin{quote}
- Referee:
- The package limits the data structure to linearized arrays,
- which entails additional code and time for data re-formatting
- for high-dimensional NUFFTs.
- \end{quote}
- Data structures are linear and we do not see this as a
- substantial limitation. Like FFTW, we expect multi-dimensional data to be
- stored as a consecutive block in row-major order ('C order').
- Fixed-size arrays allocated by the user are amenable to convenient multiple
- applications of the \verb"[]" operator, e.g. \verb"a[2][4][1]", but the use
- of such arrays cannot recommended in general (e.g., they are allocated on
- the stack). For dynamic arrays, the linear index has to be computed.
-
- Additionally, for nonequispaced transforms, nodes can be
- completely unstructured and multi-dimensional structures, like grids,
- are special cases. Most often, nodes will not be aligned
- and the most appropriate data structure for such nodes is, without further
- assumptions, a linear array.
-
- A current limitation is that (for now) we do not support strided
- data (i.e., general FFTW-style i/o tensors) or vectors of transforms.
- \item
- \begin{quote}
- Referee:
- The algorithm description in Section 2.2 is unacceptable. It mentions the
- arithmetic complexity only.
- \end{quote}
- Memory requirements strongly depend on the precomputation technique
- employed. NFFT 3 offers different strategies here ranging from no
- precomputation at all (everything evaluated on-line) to
- full precomputation (can be expensive in terms of memory). In
- Section 2.4 (which was 2.2), we now include a forward reference to
- Appendix 2.3 where details are given.
- \item
- \begin{quote}
- Referee:
- It fails to specify the essential algorithm components. It
- uses the standard FFT, which is preceded by a numerical
- re-sampling step with arithmetic complexity proportional linearly
- to the data size.
- \end{quote}
- The last paragraph of Section 2.4 (was 2.2) now briefly mentions
- the essential components of the NFFT algorithm. For details, we still refer the
- reader to Appendix A.2.
- \item
- \begin{quote}
- Referee:
- Unlike the FFT, the complexity grows fast with the dimensionality.
- \end{quote}
- A $d$-dimensional FFT of degree $N$ (in each dimension) has a complexity of
- $\mathcal{O}(N^{d} \log N)$.
- A $d$-dimensional NFFT of degree $N$ (in each dimension) with $M$ nodes has
- a complexity of $\mathcal{O}(N^{d} \log N + |\log\varepsilon|^d M)$. Both
- algorithms grow exponentially with the number of dimensions $d$. But it is
- true that for the NFFT, also the constant $|\log\varepsilon|^d$ in front
- of the number of nodes $M$ grows exponentially which does not happen in
- the FFT.
- \item
- \begin{quote}
- Referee:
- In addition, an algorithm shall be described with companion
- data structures and the features of algorithm parameters.
- Specifically, the re-sampling factor shall be singled out at least
- and explained.
- \end{quote}
- The last paragraph of Section 2.4 (was 2.2) now mentions the oversampling
- factor and the truncation parameter. For details, we still refer the reader to
- Appendix A.3. The chief aim of this article is to describe the math behind the NFFT
- routines implemented in the NFFT 3 library, as well as basic usage principles
- and applications. We do not think it would serve the purpose of
- the paper to give details of the implementation and technical concerns.
- \item
- \begin{quote}
- Referee:
- There are many typos and grammar errors. (Need a professional
- proof-reader to help out.)
- \end{quote}
- We have done our best to fix the mistakes.
- \item
- \begin{quote}
- Referee:
- Performance metrics and comparison objectives shall be clearly
- noted.
- \end{quote}
- As mentioned, our aim is not to describe all details of the implementation.
- But we now summarise performance related tests in Section 5. The focus is
- to observe how the NFFT algorithm does behave in comparison to the
- FFT and to the direct evaluation NDFT.
-
- It is nevertheless true that more extensive numerical tests at a
- mature state of the library are desirable. At the current stage, an
- extensive and in-depth performance analysis is not available.
- \item
- \begin{quote}
- Referee:
- This manuscript uses more space on examples and applications.
- It will serve the purpose of the paper if the examples and applications
- are used to demonstrate the range of functions and their
- parameters and the scope of performance tuning the library supports.
- The complexity in terms of arithmetic operations explains
- only why the fast algorithms are implemented, but does not say
- how well they are implemented in this particular software library.
- \end{quote}
- Clearly, the numerical results support the theoretical complexity
- and error estimates.
- New columns in Table 5.2 have been added to show that the NFFT
- is only a reasonable factor slower than the FFT.
- Moreover, our library is open source (i.e., improvements are very welcome)
- and it is to the best of our knowledge the only available implementation
- (besides various \textsc{MatLab}-implementations).
- \item
- \begin{quote}
- Referee:
- There are two fundamental assumptions/limitations (a) the sample
- locations for higher-dimensional FFTs on unequispaced be on
- a Kronecker grid and (b) the sample data be in linearized and
- consecutively packed data arrays.
- \end{quote}
- See comments above.
- \item
- \begin{quote}
- Referee:
- No README file or other documentation is found in the third
- party code directory.
- \end{quote}
- Had been added in the meantime.
- \item
- \begin{quote}
- Referee:
- No explicit mention of using the third party code FFTW, although
- it is mentioned in the installation section.
- \end{quote}
- We now mention the internal use FFTW in Sections 1 (first paragraph) and
- 2.4 (last paragraph).
- \item
- \begin{quote}
- Referee:
- The input and output data structures for high-dimensional transforms
- are not clear, especially, on each particular type of grids,
- such Cartesian grid or spherical grid.
- \end{quote}
- The referee is right in that details of input and output data
- structures for generalisations of the NFFT (NFSFT, NNFFT,...)
- are not given explicitly. Details are found in the API
- documentation acompanying the downloadable software package.
- We do not think that it would improve the paper to mention
- the same here.
-\end{itemize}
-
-\end{document}
diff --git a/doc/tutorial/images/accuracy1.eps b/doc/tutorial/images/accuracy1.eps
deleted file mode 100755
index f304ee1..0000000
--- a/doc/tutorial/images/accuracy1.eps
+++ /dev/null
@@ -1,503 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: accuracy1.eps
-%%CreationDate: 07/27/2004 11:00:44
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 40 199 555 602
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 40 199 555 602
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 273 113 6178 4841 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 826 4894 mt
-(0) s
-2684 4615 mt 2684 4561 L
-2684 389 mt 2684 442 L
-2611 4894 mt
-(5) s
-4469 4615 mt 4469 4561 L
-4469 389 mt 4469 442 L
-4323 4894 mt
-(10) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6109 4894 mt
-(15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 952 4615 L
-6255 4615 mt 6201 4615 L
- 273 4713 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 4550 mt
-(-15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 3206 mt 952 3206 L
-6255 3206 mt 6201 3206 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 3304 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 3141 mt
-(-10) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 1797 mt 952 1797 L
-6255 1797 mt 6201 1797 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 1895 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 1732 mt
-(-5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 389 mt 952 389 L
-6255 389 mt 6201 389 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 487 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 324 mt
-(0) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 389 5357 4227 MR c np
-24 w
-357 2 357 5 357 -2 357 15 357 -19 357 16 357 -31 357 428
-357 638 357 530 357 502 357 529 357 566 357 307 899 565 15 MP stroke
-gr
-
-24 w
-gs 753 419 5291 3793 MR c np
- 60 60 899 565 FO
- 60 60 1256 872 FO
- 60 60 1613 1438 FO
- 60 60 1970 1967 FO
- 60 60 2327 2469 FO
- 60 60 2684 2999 FO
- 60 60 3041 3637 FO
- 60 60 3398 4065 FO
- 60 60 3755 4034 FO
- 60 60 4112 4050 FO
- 60 60 4469 4031 FO
- 60 60 4826 4046 FO
- 60 60 5183 4044 FO
- 60 60 5540 4049 FO
- 60 60 5897 4051 FO
-gr
-
-gs 899 389 5357 4227 MR c np
-357 3 357 5 357 -1 357 77 357 313 357 363 357 319 357 348
-357 450 357 349 357 300 357 341 357 415 1256 770 14 MP stroke
-gs 1110 624 4934 3575 MR c np
-1214 728 mt 1298 812 L
-1298 728 mt 1214 812 L
-1571 1143 mt 1655 1227 L
-1655 1143 mt 1571 1227 L
-1928 1484 mt 2012 1568 L
-2012 1484 mt 1928 1568 L
-2285 1784 mt 2369 1868 L
-2369 1784 mt 2285 1868 L
-2642 2133 mt 2726 2217 L
-2726 2133 mt 2642 2217 L
-2999 2583 mt 3083 2667 L
-3083 2583 mt 2999 2667 L
-3356 2931 mt 3440 3015 L
-3440 2931 mt 3356 3015 L
-3713 3250 mt 3797 3334 L
-3797 3250 mt 3713 3334 L
-4070 3613 mt 4154 3697 L
-4154 3613 mt 4070 3697 L
-4427 3926 mt 4511 4010 L
-4511 3926 mt 4427 4010 L
-4784 4003 mt 4868 4087 L
-4868 4003 mt 4784 4087 L
-5141 4002 mt 5225 4086 L
-5225 4002 mt 5141 4086 L
-5498 4007 mt 5582 4091 L
-5582 4007 mt 5498 4091 L
-5855 4010 mt 5939 4094 L
-5939 4010 mt 5855 4094 L
-gr
-
-357 13 357 162 357 284 357 275 357 258 357 296 357 237 357 283
-357 363 357 264 357 250 357 280 357 358 357 340 899 389 15 MP stroke
-gr
-
-gs 753 243 5291 3956 MR c np
- 839 389 mt 959 389 L
- 899 329 mt 899 449 L
-1196 729 mt 1316 729 L
-1256 669 mt 1256 789 L
-1553 1087 mt 1673 1087 L
-1613 1027 mt 1613 1147 L
-1910 1367 mt 2030 1367 L
-1970 1307 mt 1970 1427 L
-2267 1617 mt 2387 1617 L
-2327 1557 mt 2327 1677 L
-2624 1881 mt 2744 1881 L
-2684 1821 mt 2684 1941 L
-2981 2244 mt 3101 2244 L
-3041 2184 mt 3041 2304 L
-3338 2527 mt 3458 2527 L
-3398 2467 mt 3398 2587 L
-3695 2764 mt 3815 2764 L
-3755 2704 mt 3755 2824 L
-4052 3060 mt 4172 3060 L
-4112 3000 mt 4112 3120 L
-4409 3318 mt 4529 3318 L
-4469 3258 mt 4469 3378 L
-4766 3593 mt 4886 3593 L
-4826 3533 mt 4826 3653 L
-5123 3877 mt 5243 3877 L
-5183 3817 mt 5183 3937 L
-5480 4039 mt 5600 4039 L
-5540 3979 mt 5540 4099 L
-5837 4052 mt 5957 4052 L
-5897 3992 mt 5897 4112 L
-gr
-
-gs 899 389 5357 4227 MR c np
-357 96 357 238 357 275 357 262 357 248 357 283 357 226 357 271
-357 347 357 257 357 241 357 264 357 330 1256 712 14 MP stroke
-gs 1110 566 4934 3631 MR c np
-0 j
--69 119 -69 -119 138 0 1187 752 4 MP
-DP
--69 119 -69 -119 138 0 1544 1082 4 MP
-DP
--69 119 -69 -119 138 0 1901 1346 4 MP
-DP
--69 119 -69 -119 138 0 2258 1587 4 MP
-DP
--69 119 -69 -119 138 0 2615 1844 4 MP
-DP
--69 119 -69 -119 138 0 2972 2191 4 MP
-DP
--69 119 -69 -119 138 0 3329 2462 4 MP
-DP
--69 119 -69 -119 138 0 3686 2688 4 MP
-DP
--69 119 -69 -119 138 0 4043 2971 4 MP
-DP
--69 119 -69 -119 138 0 4400 3219 4 MP
-DP
--69 119 -69 -119 138 0 4757 3481 4 MP
-DP
--69 119 -69 -119 138 0 5114 3756 4 MP
-DP
--69 119 -69 -119 138 0 5471 3994 4 MP
-DP
--69 119 -69 -119 138 0 5828 4090 4 MP
-DP
-gr
-
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/accuracy1.pdf b/doc/tutorial/images/accuracy1.pdf
deleted file mode 100644
index ab63e6f..0000000
Binary files a/doc/tutorial/images/accuracy1.pdf and /dev/null differ
diff --git a/doc/tutorial/images/accuracy2.eps b/doc/tutorial/images/accuracy2.eps
deleted file mode 100755
index 6d3e887..0000000
--- a/doc/tutorial/images/accuracy2.eps
+++ /dev/null
@@ -1,497 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: accuracy2.eps
-%%CreationDate: 07/27/2004 11:00:44
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 40 199 555 602
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 40 199 555 602
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 273 113 6178 4841 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 826 4894 mt
-(0) s
-2684 4615 mt 2684 4561 L
-2684 389 mt 2684 442 L
-2611 4894 mt
-(5) s
-4469 4615 mt 4469 4561 L
-4469 389 mt 4469 442 L
-4323 4894 mt
-(10) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6109 4894 mt
-(15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 952 4615 L
-6255 4615 mt 6201 4615 L
- 273 4713 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 4550 mt
-(-15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 3206 mt 952 3206 L
-6255 3206 mt 6201 3206 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 3304 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 3141 mt
-(-10) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 1797 mt 952 1797 L
-6255 1797 mt 6201 1797 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 1895 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 1732 mt
-(-5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 389 mt 952 389 L
-6255 389 mt 6201 389 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 487 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 324 mt
-(0) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 389 5357 4227 MR c np
-24 w
-357 15 357 -27 357 -35 357 21 357 17 357 -25 357 11 357 416
-357 568 357 584 357 564 357 539 357 537 357 427 899 562 15 MP stroke
-gr
-
-24 w
- 60 60 899 562 FO
- 60 60 1256 989 FO
- 60 60 1613 1526 FO
- 60 60 1970 2065 FO
- 60 60 2327 2629 FO
- 60 60 2684 3213 FO
- 60 60 3041 3781 FO
- 60 60 3398 4197 FO
- 60 60 3755 4208 FO
- 60 60 4112 4183 FO
- 60 60 4469 4200 FO
- 60 60 4826 4221 FO
- 60 60 5183 4186 FO
- 60 60 5540 4159 FO
- 60 60 5897 4174 FO
-gs 899 389 5357 4227 MR c np
-357 14 357 -27 357 -36 357 139 357 353 357 359 357 362 357 350
-357 361 357 369 357 365 357 367 357 338 1256 859 14 MP stroke
-gr
-
-1214 817 mt 1298 901 L
-1298 817 mt 1214 901 L
-1571 1155 mt 1655 1239 L
-1655 1155 mt 1571 1239 L
-1928 1522 mt 2012 1606 L
-2012 1522 mt 1928 1606 L
-2285 1887 mt 2369 1971 L
-2369 1887 mt 2285 1971 L
-2642 2256 mt 2726 2340 L
-2726 2256 mt 2642 2340 L
-2999 2617 mt 3083 2701 L
-3083 2617 mt 2999 2701 L
-3356 2967 mt 3440 3051 L
-3440 2967 mt 3356 3051 L
-3713 3329 mt 3797 3413 L
-3797 3329 mt 3713 3413 L
-4070 3688 mt 4154 3772 L
-4154 3688 mt 4070 3772 L
-4427 4041 mt 4511 4125 L
-4511 4041 mt 4427 4125 L
-4784 4180 mt 4868 4264 L
-4868 4180 mt 4784 4264 L
-5141 4144 mt 5225 4228 L
-5225 4144 mt 5141 4228 L
-5498 4117 mt 5582 4201 L
-5582 4117 mt 5498 4201 L
-5855 4131 mt 5939 4215 L
-5939 4131 mt 5855 4215 L
-gs 899 389 5357 4227 MR c np
-357 13 357 102 357 284 357 278 357 279 357 289 357 286 357 286
-357 281 357 300 357 298 357 324 357 370 357 384 899 399 15 MP stroke
-gr
-
- 839 399 mt 959 399 L
- 899 339 mt 899 459 L
-1196 783 mt 1316 783 L
-1256 723 mt 1256 843 L
-1553 1153 mt 1673 1153 L
-1613 1093 mt 1613 1213 L
-1910 1477 mt 2030 1477 L
-1970 1417 mt 1970 1537 L
-2267 1775 mt 2387 1775 L
-2327 1715 mt 2327 1835 L
-2624 2075 mt 2744 2075 L
-2684 2015 mt 2684 2135 L
-2981 2356 mt 3101 2356 L
-3041 2296 mt 3041 2416 L
-3338 2642 mt 3458 2642 L
-3398 2582 mt 3398 2702 L
-3695 2928 mt 3815 2928 L
-3755 2868 mt 3755 2988 L
-4052 3217 mt 4172 3217 L
-4112 3157 mt 4112 3277 L
-4409 3496 mt 4529 3496 L
-4469 3436 mt 4469 3556 L
-4766 3774 mt 4886 3774 L
-4826 3714 mt 4826 3834 L
-5123 4058 mt 5243 4058 L
-5183 3998 mt 5183 4118 L
-5480 4160 mt 5600 4160 L
-5540 4100 mt 5540 4220 L
-5837 4173 mt 5957 4173 L
-5897 4113 mt 5897 4233 L
-gs 899 389 5357 4227 MR c np
-357 41 357 257 357 271 357 265 357 270 357 276 357 274 357 274
-357 261 357 295 357 293 357 307 357 320 1256 770 14 MP stroke
-gr
-
-0 j
--69 119 -69 -119 138 0 1187 810 4 MP
-DP
--69 119 -69 -119 138 0 1544 1130 4 MP
-DP
--69 119 -69 -119 138 0 1901 1437 4 MP
-DP
--69 119 -69 -119 138 0 2258 1730 4 MP
-DP
--69 119 -69 -119 138 0 2615 2025 4 MP
-DP
--69 119 -69 -119 138 0 2972 2286 4 MP
-DP
--69 119 -69 -119 138 0 3329 2560 4 MP
-DP
--69 119 -69 -119 138 0 3686 2834 4 MP
-DP
--69 119 -69 -119 138 0 4043 3110 4 MP
-DP
--69 119 -69 -119 138 0 4400 3380 4 MP
-DP
--69 119 -69 -119 138 0 4757 3645 4 MP
-DP
--69 119 -69 -119 138 0 5114 3916 4 MP
-DP
--69 119 -69 -119 138 0 5471 4173 4 MP
-DP
--69 119 -69 -119 138 0 5828 4214 4 MP
-DP
-gs 899 389 5357 4227 MR c np
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/accuracy2.pdf b/doc/tutorial/images/accuracy2.pdf
deleted file mode 100644
index 287b3d6..0000000
Binary files a/doc/tutorial/images/accuracy2.pdf and /dev/null differ
diff --git a/doc/tutorial/images/accuracy3.eps b/doc/tutorial/images/accuracy3.eps
deleted file mode 100755
index 0546c5e..0000000
--- a/doc/tutorial/images/accuracy3.eps
+++ /dev/null
@@ -1,497 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: accuracy3.eps
-%%CreationDate: 07/27/2004 11:00:45
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 40 199 555 602
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 40 199 555 602
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 273 113 6178 4841 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 826 4894 mt
-(0) s
-2684 4615 mt 2684 4561 L
-2684 389 mt 2684 442 L
-2611 4894 mt
-(5) s
-4469 4615 mt 4469 4561 L
-4469 389 mt 4469 442 L
-4323 4894 mt
-(10) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6109 4894 mt
-(15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 952 4615 L
-6255 4615 mt 6201 4615 L
- 273 4713 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 4550 mt
-(-15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 3206 mt 952 3206 L
-6255 3206 mt 6201 3206 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 3304 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 3141 mt
-(-10) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 1797 mt 952 1797 L
-6255 1797 mt 6201 1797 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 1895 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 1732 mt
-(-5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 389 mt 952 389 L
-6255 389 mt 6201 389 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 487 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 324 mt
-(0) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 389 5357 4227 MR c np
-24 w
-357 -103 357 -74 357 21 357 8 357 -22 357 -38 357 335 357 533
-357 552 357 514 357 582 357 543 357 503 357 376 899 463 15 MP stroke
-gr
-
-24 w
- 60 60 899 463 FO
- 60 60 1256 839 FO
- 60 60 1613 1342 FO
- 60 60 1970 1885 FO
- 60 60 2327 2467 FO
- 60 60 2684 2981 FO
- 60 60 3041 3533 FO
- 60 60 3398 4066 FO
- 60 60 3755 4401 FO
- 60 60 4112 4363 FO
- 60 60 4469 4341 FO
- 60 60 4826 4349 FO
- 60 60 5183 4370 FO
- 60 60 5540 4296 FO
- 60 60 5897 4193 FO
-gs 899 389 5357 4227 MR c np
-357 -60 357 -98 357 99 357 344 357 353 357 330 357 375 357 342
-357 353 357 336 357 416 357 343 357 371 1256 734 14 MP stroke
-gr
-
-1214 692 mt 1298 776 L
-1298 692 mt 1214 776 L
-1571 1063 mt 1655 1147 L
-1655 1063 mt 1571 1147 L
-1928 1406 mt 2012 1490 L
-2012 1406 mt 1928 1490 L
-2285 1822 mt 2369 1906 L
-2369 1822 mt 2285 1906 L
-2642 2158 mt 2726 2242 L
-2726 2158 mt 2642 2242 L
-2999 2511 mt 3083 2595 L
-3083 2511 mt 2999 2595 L
-3356 2853 mt 3440 2937 L
-3440 2853 mt 3356 2937 L
-3713 3228 mt 3797 3312 L
-3797 3228 mt 3713 3312 L
-4070 3558 mt 4154 3642 L
-4154 3558 mt 4070 3642 L
-4427 3911 mt 4511 3995 L
-4511 3911 mt 4427 3995 L
-4784 4255 mt 4868 4339 L
-4868 4255 mt 4784 4339 L
-5141 4354 mt 5225 4438 L
-5225 4354 mt 5141 4438 L
-5498 4256 mt 5582 4340 L
-5582 4256 mt 5498 4340 L
-5855 4196 mt 5939 4280 L
-5939 4196 mt 5855 4280 L
-gs 899 389 5357 4227 MR c np
-357 254 357 216 357 314 357 281 357 268 357 261 357 284 357 274
-357 285 357 255 357 331 357 285 357 317 357 314 899 389 15 MP stroke
-gr
-
- 839 389 mt 959 389 L
- 899 329 mt 899 449 L
-1196 703 mt 1316 703 L
-1256 643 mt 1256 763 L
-1553 1020 mt 1673 1020 L
-1613 960 mt 1613 1080 L
-1910 1305 mt 2030 1305 L
-1970 1245 mt 1970 1365 L
-2267 1636 mt 2387 1636 L
-2327 1576 mt 2327 1696 L
-2624 1891 mt 2744 1891 L
-2684 1831 mt 2684 1951 L
-2981 2176 mt 3101 2176 L
-3041 2116 mt 3041 2236 L
-3338 2450 mt 3458 2450 L
-3398 2390 mt 3398 2510 L
-3695 2734 mt 3815 2734 L
-3755 2674 mt 3755 2794 L
-4052 2995 mt 4172 2995 L
-4112 2935 mt 4112 3055 L
-4409 3263 mt 4529 3263 L
-4469 3203 mt 4469 3323 L
-4766 3544 mt 4886 3544 L
-4826 3484 mt 4826 3604 L
-5123 3858 mt 5243 3858 L
-5183 3798 mt 5183 3918 L
-5480 4074 mt 5600 4074 L
-5540 4014 mt 5540 4134 L
-5837 4328 mt 5957 4328 L
-5897 4268 mt 5897 4388 L
-gs 899 389 5357 4227 MR c np
-357 254 357 203 357 304 357 269 357 254 357 251 357 271 357 265
-357 271 357 243 357 319 357 275 357 294 1256 682 14 MP stroke
-gr
-
-0 j
--69 119 -69 -119 138 0 1187 722 4 MP
-DP
--69 119 -69 -119 138 0 1544 1016 4 MP
-DP
--69 119 -69 -119 138 0 1901 1291 4 MP
-DP
--69 119 -69 -119 138 0 2258 1610 4 MP
-DP
--69 119 -69 -119 138 0 2615 1853 4 MP
-DP
--69 119 -69 -119 138 0 2972 2124 4 MP
-DP
--69 119 -69 -119 138 0 3329 2389 4 MP
-DP
--69 119 -69 -119 138 0 3686 2660 4 MP
-DP
--69 119 -69 -119 138 0 4043 2911 4 MP
-DP
--69 119 -69 -119 138 0 4400 3165 4 MP
-DP
--69 119 -69 -119 138 0 4757 3434 4 MP
-DP
--69 119 -69 -119 138 0 5114 3738 4 MP
-DP
--69 119 -69 -119 138 0 5471 3941 4 MP
-DP
--69 119 -69 -119 138 0 5828 4195 4 MP
-DP
-gs 899 389 5357 4227 MR c np
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/accuracy3.pdf b/doc/tutorial/images/accuracy3.pdf
deleted file mode 100644
index 782b339..0000000
Binary files a/doc/tutorial/images/accuracy3.pdf and /dev/null differ
diff --git a/doc/tutorial/images/accuracy4.eps b/doc/tutorial/images/accuracy4.eps
deleted file mode 100755
index 3139cf7..0000000
--- a/doc/tutorial/images/accuracy4.eps
+++ /dev/null
@@ -1,497 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: accuracy4.eps
-%%CreationDate: 07/27/2004 11:00:45
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 40 199 555 602
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 40 199 555 602
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 273 113 6178 4841 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 826 4894 mt
-(0) s
-2684 4615 mt 2684 4561 L
-2684 389 mt 2684 442 L
-2611 4894 mt
-(5) s
-4469 4615 mt 4469 4561 L
-4469 389 mt 4469 442 L
-4323 4894 mt
-(10) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6109 4894 mt
-(15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 952 4615 L
-6255 4615 mt 6201 4615 L
- 273 4713 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 4550 mt
-(-15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 3206 mt 952 3206 L
-6255 3206 mt 6201 3206 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 3304 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 3141 mt
-(-10) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 1797 mt 952 1797 L
-6255 1797 mt 6201 1797 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 1895 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 1732 mt
-(-5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 389 mt 952 389 L
-6255 389 mt 6201 389 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 487 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 324 mt
-(0) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 389 5357 4227 MR c np
-24 w
-357 -15 357 -55 357 -31 357 84 357 -71 357 -70 357 176 357 543
-357 575 357 574 357 567 357 566 357 518 357 393 899 580 15 MP stroke
-gr
-
-24 w
- 60 60 899 580 FO
- 60 60 1256 973 FO
- 60 60 1613 1491 FO
- 60 60 1970 2057 FO
- 60 60 2327 2624 FO
- 60 60 2684 3198 FO
- 60 60 3041 3773 FO
- 60 60 3398 4316 FO
- 60 60 3755 4492 FO
- 60 60 4112 4422 FO
- 60 60 4469 4351 FO
- 60 60 4826 4435 FO
- 60 60 5183 4404 FO
- 60 60 5540 4349 FO
- 60 60 5897 4334 FO
-gs 899 389 5357 4227 MR c np
-357 -45 357 -9 357 13 357 342 357 360 357 364 357 361 357 361
-357 347 357 352 357 355 357 361 357 428 1256 806 14 MP stroke
-gr
-
-1214 764 mt 1298 848 L
-1298 764 mt 1214 848 L
-1571 1192 mt 1655 1276 L
-1655 1192 mt 1571 1276 L
-1928 1553 mt 2012 1637 L
-2012 1553 mt 1928 1637 L
-2285 1908 mt 2369 1992 L
-2369 1908 mt 2285 1992 L
-2642 2260 mt 2726 2344 L
-2726 2260 mt 2642 2344 L
-2999 2607 mt 3083 2691 L
-3083 2607 mt 2999 2691 L
-3356 2968 mt 3440 3052 L
-3440 2968 mt 3356 3052 L
-3713 3329 mt 3797 3413 L
-3797 3329 mt 3713 3413 L
-4070 3693 mt 4154 3777 L
-4154 3693 mt 4070 3777 L
-4427 4053 mt 4511 4137 L
-4511 4053 mt 4427 4137 L
-4784 4395 mt 4868 4479 L
-4868 4395 mt 4784 4479 L
-5141 4408 mt 5225 4492 L
-5225 4408 mt 5141 4492 L
-5498 4399 mt 5582 4483 L
-5582 4399 mt 5498 4483 L
-5855 4354 mt 5939 4438 L
-5939 4354 mt 5855 4438 L
-gs 899 389 5357 4227 MR c np
-357 305 357 285 357 260 357 260 357 266 357 279 357 326 357 296
-357 241 357 285 357 311 357 283 357 440 357 289 899 439 15 MP stroke
-gr
-
- 839 439 mt 959 439 L
- 899 379 mt 899 499 L
-1196 728 mt 1316 728 L
-1256 668 mt 1256 788 L
-1553 1168 mt 1673 1168 L
-1613 1108 mt 1613 1228 L
-1910 1451 mt 2030 1451 L
-1970 1391 mt 1970 1511 L
-2267 1762 mt 2387 1762 L
-2327 1702 mt 2327 1822 L
-2624 2047 mt 2744 2047 L
-2684 1987 mt 2684 2107 L
-2981 2288 mt 3101 2288 L
-3041 2228 mt 3041 2348 L
-3338 2584 mt 3458 2584 L
-3398 2524 mt 3398 2644 L
-3695 2910 mt 3815 2910 L
-3755 2850 mt 3755 2970 L
-4052 3189 mt 4172 3189 L
-4112 3129 mt 4112 3249 L
-4409 3455 mt 4529 3455 L
-4469 3395 mt 4469 3515 L
-4766 3715 mt 4886 3715 L
-4826 3655 mt 4826 3775 L
-5123 3975 mt 5243 3975 L
-5183 3915 mt 5183 4035 L
-5480 4260 mt 5600 4260 L
-5540 4200 mt 5540 4320 L
-5837 4565 mt 5957 4565 L
-5897 4505 mt 5897 4625 L
-gs 899 389 5357 4227 MR c np
-357 282 357 277 357 249 357 246 357 256 357 266 357 316 357 286
-357 228 357 271 357 311 357 273 357 401 1256 694 14 MP stroke
-gr
-
-0 j
--69 119 -69 -119 138 0 1187 734 4 MP
-DP
--69 119 -69 -119 138 0 1544 1135 4 MP
-DP
--69 119 -69 -119 138 0 1901 1408 4 MP
-DP
--69 119 -69 -119 138 0 2258 1719 4 MP
-DP
--69 119 -69 -119 138 0 2615 1990 4 MP
-DP
--69 119 -69 -119 138 0 2972 2218 4 MP
-DP
--69 119 -69 -119 138 0 3329 2504 4 MP
-DP
--69 119 -69 -119 138 0 3686 2820 4 MP
-DP
--69 119 -69 -119 138 0 4043 3086 4 MP
-DP
--69 119 -69 -119 138 0 4400 3342 4 MP
-DP
--69 119 -69 -119 138 0 4757 3588 4 MP
-DP
--69 119 -69 -119 138 0 5114 3837 4 MP
-DP
--69 119 -69 -119 138 0 5471 4114 4 MP
-DP
--69 119 -69 -119 138 0 5828 4396 4 MP
-DP
-gs 899 389 5357 4227 MR c np
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/accuracy4.pdf b/doc/tutorial/images/accuracy4.pdf
deleted file mode 100644
index e31fdfb..0000000
Binary files a/doc/tutorial/images/accuracy4.pdf and /dev/null differ
diff --git a/doc/tutorial/images/accuracy5.eps b/doc/tutorial/images/accuracy5.eps
deleted file mode 100755
index cc05392..0000000
--- a/doc/tutorial/images/accuracy5.eps
+++ /dev/null
@@ -1,497 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: accuracy5.eps
-%%CreationDate: 07/27/2004 11:00:45
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 40 199 555 602
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 40 199 555 602
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 273 113 6178 4841 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 826 4894 mt
-(0) s
-2684 4615 mt 2684 4561 L
-2684 389 mt 2684 442 L
-2611 4894 mt
-(5) s
-4469 4615 mt 4469 4561 L
-4469 389 mt 4469 442 L
-4323 4894 mt
-(10) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6109 4894 mt
-(15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 952 4615 L
-6255 4615 mt 6201 4615 L
- 273 4713 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 4550 mt
-(-15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 3206 mt 952 3206 L
-6255 3206 mt 6201 3206 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 3304 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 3141 mt
-(-10) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 1797 mt 952 1797 L
-6255 1797 mt 6201 1797 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 1895 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 1732 mt
-(-5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 389 mt 952 389 L
-6255 389 mt 6201 389 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 487 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 324 mt
-(0) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 389 5357 4227 MR c np
-24 w
-357 -100 357 -32 357 -29 357 -2 357 -48 357 -5 357 371 357 543
-357 546 357 541 357 515 357 559 357 465 357 397 899 426 15 MP stroke
-gr
-
-24 w
- 60 60 899 426 FO
- 60 60 1256 823 FO
- 60 60 1613 1288 FO
- 60 60 1970 1847 FO
- 60 60 2327 2362 FO
- 60 60 2684 2903 FO
- 60 60 3041 3449 FO
- 60 60 3398 3992 FO
- 60 60 3755 4363 FO
- 60 60 4112 4358 FO
- 60 60 4469 4310 FO
- 60 60 4826 4308 FO
- 60 60 5183 4279 FO
- 60 60 5540 4247 FO
- 60 60 5897 4147 FO
-gs 899 389 5357 4227 MR c np
-357 -129 357 -75 357 -85 357 254 357 303 357 426 357 368 357 356
-357 363 357 368 357 336 357 389 357 339 1256 727 14 MP stroke
-gr
-
-1214 685 mt 1298 769 L
-1298 685 mt 1214 769 L
-1571 1024 mt 1655 1108 L
-1655 1024 mt 1571 1108 L
-1928 1413 mt 2012 1497 L
-2012 1413 mt 1928 1497 L
-2285 1749 mt 2369 1833 L
-2369 1749 mt 2285 1833 L
-2642 2117 mt 2726 2201 L
-2726 2117 mt 2642 2201 L
-2999 2480 mt 3083 2564 L
-3083 2480 mt 2999 2564 L
-3356 2836 mt 3440 2920 L
-3440 2836 mt 3356 2920 L
-3713 3204 mt 3797 3288 L
-3797 3204 mt 3713 3288 L
-4070 3630 mt 4154 3714 L
-4154 3630 mt 4070 3714 L
-4427 3933 mt 4511 4017 L
-4511 3933 mt 4427 4017 L
-4784 4187 mt 4868 4271 L
-4868 4187 mt 4784 4271 L
-5141 4102 mt 5225 4186 L
-5225 4102 mt 5141 4186 L
-5498 4027 mt 5582 4111 L
-5582 4027 mt 5498 4111 L
-5855 3898 mt 5939 3982 L
-5939 3898 mt 5855 3982 L
-gs 899 389 5357 4227 MR c np
-357 262 357 269 357 276 357 256 357 260 357 275 357 249 357 278
-357 283 357 276 357 266 357 303 357 285 357 312 899 389 15 MP stroke
-gr
-
- 839 389 mt 959 389 L
- 899 329 mt 899 449 L
-1196 701 mt 1316 701 L
-1256 641 mt 1256 761 L
-1553 986 mt 1673 986 L
-1613 926 mt 1613 1046 L
-1910 1289 mt 2030 1289 L
-1970 1229 mt 1970 1349 L
-2267 1555 mt 2387 1555 L
-2327 1495 mt 2327 1615 L
-2624 1831 mt 2744 1831 L
-2684 1771 mt 2684 1891 L
-2981 2114 mt 3101 2114 L
-3041 2054 mt 3041 2174 L
-3338 2392 mt 3458 2392 L
-3398 2332 mt 3398 2452 L
-3695 2641 mt 3815 2641 L
-3755 2581 mt 3755 2701 L
-4052 2916 mt 4172 2916 L
-4112 2856 mt 4112 2976 L
-4409 3176 mt 4529 3176 L
-4469 3116 mt 4469 3236 L
-4766 3432 mt 4886 3432 L
-4826 3372 mt 4826 3492 L
-5123 3708 mt 5243 3708 L
-5183 3648 mt 5183 3768 L
-5480 3977 mt 5600 3977 L
-5540 3917 mt 5540 4037 L
-5837 4239 mt 5957 4239 L
-5897 4179 mt 5897 4299 L
-gs 899 389 5357 4227 MR c np
-357 251 357 257 357 263 357 245 357 246 357 264 357 238 357 267
-357 271 357 267 357 258 357 287 357 268 1256 683 14 MP stroke
-gr
-
-0 j
--69 119 -69 -119 138 0 1187 723 4 MP
-DP
--69 119 -69 -119 138 0 1544 991 4 MP
-DP
--69 119 -69 -119 138 0 1901 1278 4 MP
-DP
--69 119 -69 -119 138 0 2258 1536 4 MP
-DP
--69 119 -69 -119 138 0 2615 1803 4 MP
-DP
--69 119 -69 -119 138 0 2972 2074 4 MP
-DP
--69 119 -69 -119 138 0 3329 2341 4 MP
-DP
--69 119 -69 -119 138 0 3686 2579 4 MP
-DP
--69 119 -69 -119 138 0 4043 2843 4 MP
-DP
--69 119 -69 -119 138 0 4400 3089 4 MP
-DP
--69 119 -69 -119 138 0 4757 3334 4 MP
-DP
--69 119 -69 -119 138 0 5114 3597 4 MP
-DP
--69 119 -69 -119 138 0 5471 3854 4 MP
-DP
--69 119 -69 -119 138 0 5828 4105 4 MP
-DP
-gs 899 389 5357 4227 MR c np
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/accuracy5.pdf b/doc/tutorial/images/accuracy5.pdf
deleted file mode 100644
index 10e1225..0000000
Binary files a/doc/tutorial/images/accuracy5.pdf and /dev/null differ
diff --git a/doc/tutorial/images/accuracy6.eps b/doc/tutorial/images/accuracy6.eps
deleted file mode 100755
index 4b8ef2b..0000000
--- a/doc/tutorial/images/accuracy6.eps
+++ /dev/null
@@ -1,497 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: accuracy6.eps
-%%CreationDate: 07/27/2004 11:00:45
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 40 199 555 602
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 40 199 555 602
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 273 113 6178 4841 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 826 4894 mt
-(0) s
-2684 4615 mt 2684 4561 L
-2684 389 mt 2684 442 L
-2611 4894 mt
-(5) s
-4469 4615 mt 4469 4561 L
-4469 389 mt 4469 442 L
-4323 4894 mt
-(10) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6109 4894 mt
-(15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 952 4615 L
-6255 4615 mt 6201 4615 L
- 273 4713 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 4550 mt
-(-15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 3206 mt 952 3206 L
-6255 3206 mt 6201 3206 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 3304 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 3141 mt
-(-10) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 1797 mt 952 1797 L
-6255 1797 mt 6201 1797 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 1895 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 1732 mt
-(-5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 389 mt 952 389 L
-6255 389 mt 6201 389 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 487 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 324 mt
-(0) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 389 5357 4227 MR c np
-24 w
-357 -88 357 10 357 -72 357 102 357 -57 357 2 357 251 357 551
-357 532 357 524 357 542 357 527 357 531 357 442 899 502 15 MP stroke
-gr
-
-24 w
- 60 60 899 502 FO
- 60 60 1256 944 FO
- 60 60 1613 1475 FO
- 60 60 1970 2002 FO
- 60 60 2327 2544 FO
- 60 60 2684 3068 FO
- 60 60 3041 3600 FO
- 60 60 3398 4151 FO
- 60 60 3755 4402 FO
- 60 60 4112 4404 FO
- 60 60 4469 4347 FO
- 60 60 4826 4449 FO
- 60 60 5183 4377 FO
- 60 60 5540 4387 FO
- 60 60 5897 4299 FO
-gs 899 389 5357 4227 MR c np
-357 -86 357 -27 357 -70 357 330 357 300 357 471 357 363 357 340
-357 317 357 391 357 361 357 347 357 418 1256 808 14 MP stroke
-gr
-
-1214 766 mt 1298 850 L
-1298 766 mt 1214 850 L
-1571 1184 mt 1655 1268 L
-1655 1184 mt 1571 1268 L
-1928 1531 mt 2012 1615 L
-2012 1531 mt 1928 1615 L
-2285 1892 mt 2369 1976 L
-2369 1892 mt 2285 1976 L
-2642 2283 mt 2726 2367 L
-2726 2283 mt 2642 2367 L
-2999 2600 mt 3083 2684 L
-3083 2600 mt 2999 2684 L
-3356 2940 mt 3440 3024 L
-3440 2940 mt 3356 3024 L
-3713 3303 mt 3797 3387 L
-3797 3303 mt 3713 3387 L
-4070 3774 mt 4154 3858 L
-4154 3774 mt 4070 3858 L
-4427 4074 mt 4511 4158 L
-4511 4074 mt 4427 4158 L
-4784 4404 mt 4868 4488 L
-4868 4404 mt 4784 4488 L
-5141 4334 mt 5225 4418 L
-5225 4334 mt 5141 4418 L
-5498 4307 mt 5582 4391 L
-5582 4307 mt 5498 4391 L
-5855 4221 mt 5939 4305 L
-5939 4221 mt 5855 4305 L
-gs 899 389 5357 4227 MR c np
-357 284 357 219 357 331 357 280 357 266 357 270 357 267 357 271
-357 264 357 297 357 283 357 268 357 338 357 308 899 497 15 MP stroke
-gr
-
- 839 497 mt 959 497 L
- 899 437 mt 899 557 L
-1196 805 mt 1316 805 L
-1256 745 mt 1256 865 L
-1553 1143 mt 1673 1143 L
-1613 1083 mt 1613 1203 L
-1910 1411 mt 2030 1411 L
-1970 1351 mt 1970 1471 L
-2267 1694 mt 2387 1694 L
-2327 1634 mt 2327 1754 L
-2624 1991 mt 2744 1991 L
-2684 1931 mt 2684 2051 L
-2981 2255 mt 3101 2255 L
-3041 2195 mt 3041 2315 L
-3338 2526 mt 3458 2526 L
-3398 2466 mt 3398 2586 L
-3695 2793 mt 3815 2793 L
-3755 2733 mt 3755 2853 L
-4052 3063 mt 4172 3063 L
-4112 3003 mt 4112 3123 L
-4409 3329 mt 4529 3329 L
-4469 3269 mt 4469 3389 L
-4766 3609 mt 4886 3609 L
-4826 3549 mt 4826 3669 L
-5123 3940 mt 5243 3940 L
-5183 3880 mt 5183 4000 L
-5480 4159 mt 5600 4159 L
-5540 4099 mt 5540 4219 L
-5837 4443 mt 5957 4443 L
-5897 4383 mt 5897 4503 L
-gs 899 389 5357 4227 MR c np
-357 307 357 211 357 318 357 274 357 251 357 266 357 254 357 263
-357 247 357 299 357 273 357 237 357 326 1256 778 14 MP stroke
-gr
-
-0 j
--69 119 -69 -119 138 0 1187 818 4 MP
-DP
--69 119 -69 -119 138 0 1544 1144 4 MP
-DP
--69 119 -69 -119 138 0 1901 1381 4 MP
-DP
--69 119 -69 -119 138 0 2258 1654 4 MP
-DP
--69 119 -69 -119 138 0 2615 1953 4 MP
-DP
--69 119 -69 -119 138 0 2972 2200 4 MP
-DP
--69 119 -69 -119 138 0 3329 2463 4 MP
-DP
--69 119 -69 -119 138 0 3686 2717 4 MP
-DP
--69 119 -69 -119 138 0 4043 2983 4 MP
-DP
--69 119 -69 -119 138 0 4400 3234 4 MP
-DP
--69 119 -69 -119 138 0 4757 3508 4 MP
-DP
--69 119 -69 -119 138 0 5114 3826 4 MP
-DP
--69 119 -69 -119 138 0 5471 4037 4 MP
-DP
--69 119 -69 -119 138 0 5828 4344 4 MP
-DP
-gs 899 389 5357 4227 MR c np
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/accuracy6.pdf b/doc/tutorial/images/accuracy6.pdf
deleted file mode 100644
index 00811af..0000000
Binary files a/doc/tutorial/images/accuracy6.pdf and /dev/null differ
diff --git a/doc/tutorial/images/front_pic1.eps b/doc/tutorial/images/front_pic1.eps
deleted file mode 100755
index f6a0e69..0000000
--- a/doc/tutorial/images/front_pic1.eps
+++ /dev/null
@@ -1,240 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: front_pic1.eps
-%%CreationDate: 07/26/2004 11:13:52
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 92 223 543 573
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 92 223 543 573
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 899 460 5405 4199 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-gs 899 389 5357 4227 MR c np
-24 w
-gr
-
-24 w
-0 sg
- 60 60 1434 1938 FO
- 60 60 1702 4441 FO
- 60 60 1970 4512 FO
- 60 60 2238 1564 FO
- 60 60 2505 871 FO
- 60 60 2773 654 FO
- 60 60 3041 707 FO
- 60 60 3309 1418 FO
- 60 60 3577 3020 FO
- 60 60 3844 1089 FO
- 60 60 4112 1713 FO
- 60 60 4380 2268 FO
- 60 60 4648 4250 FO
- 60 60 4916 2270 FO
- 60 60 5183 1743 FO
- 60 60 5451 2808 FO
-gs 899 389 5357 4227 MR c np
-0 -564 1434 2502 2 MP stroke
-0 1939 1702 2502 2 MP stroke
-0 2010 1970 2502 2 MP stroke
-0 -938 2238 2502 2 MP stroke
-0 -1631 2505 2502 2 MP stroke
-0 -1848 2773 2502 2 MP stroke
-0 -1795 3041 2502 2 MP stroke
-0 -1084 3309 2502 2 MP stroke
-0 518 3577 2502 2 MP stroke
-0 -1413 3844 2502 2 MP stroke
-0 -789 4112 2502 2 MP stroke
-0 -234 4380 2502 2 MP stroke
-0 1748 4648 2502 2 MP stroke
-0 -232 4916 2502 2 MP stroke
-0 -759 5183 2502 2 MP stroke
-0 306 5451 2502 2 MP stroke
-5356 0 899 2502 2 MP stroke
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/front_pic1.pdf b/doc/tutorial/images/front_pic1.pdf
deleted file mode 100644
index 1ed6920..0000000
Binary files a/doc/tutorial/images/front_pic1.pdf and /dev/null differ
diff --git a/doc/tutorial/images/front_pic2.eps b/doc/tutorial/images/front_pic2.eps
deleted file mode 100755
index d3ad0a9..0000000
--- a/doc/tutorial/images/front_pic2.eps
+++ /dev/null
@@ -1,257 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: front_pic2.eps
-%%CreationDate: 07/26/2004 11:13:52
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 92 243 543 547
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 92 243 543 547
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 899 772 5405 3646 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-gs 899 389 5357 4227 MR c np
-DO
-24 w
-0 sg
-54 -32 54 -86 53 -109 54 -90 53 -28 54 67 53 174 54 270
-54 330 53 334 54 277 53 162 54 8 53 -159 54 -309 53 -414
-54 -451 54 -417 53 -314 54 -161 53 11 54 174 53 297 54 358
-53 347 54 272 54 145 53 -5 54 -151 53 -264 54 -320 53 -313
-54 -239 54 -113 53 45 54 209 53 356 54 461 53 515 54 508
-53 449 54 350 54 226 53 102 54 -8 53 -86 54 -127 53 -126
-54 -92 53 -33 54 33 54 92 53 126 54 127 53 86 54 8
-53 -102 54 -226 54 -350 53 -449 54 -508 53 -515 54 -461 53 -356
-54 -209 53 -45 54 113 54 239 53 313 54 320 53 264 54 151
-53 5 54 -145 53 -272 54 -347 54 -358 53 -297 54 -174 53 -11
-54 161 53 314 54 417 54 451 53 414 54 309 53 159 54 -8
-53 -162 54 -277 53 -334 54 -330 54 -270 53 -174 54 -67 53 28
-54 90 53 109 54 86 952 3476 100 MP stroke
-53 32 899 3444 2 MP stroke
-SO
-gr
-
-24 w
-0 sg
- 60 60 3208 1056 FO
- 60 60 5501 2344 FO
- 60 60 3400 1153 FO
- 60 60 2432 2872 FO
- 60 60 1248 3644 FO
- 60 60 4417 4197 FO
- 60 60 4274 3594 FO
- 60 60 4817 2801 FO
- 60 60 6013 3785 FO
- 60 60 2877 3611 FO
- 60 60 1270 3561 FO
- 60 60 5545 2191 FO
- 60 60 2477 3056 FO
- 60 60 3862 966 FO
- 60 60 5088 4256 FO
- 60 60 1274 3544 FO
-gs 899 389 5357 4227 MR c np
-0 -1747 3208 2803 2 MP stroke
-0 -459 5501 2803 2 MP stroke
-0 -1650 3400 2803 2 MP stroke
-0 69 2432 2803 2 MP stroke
-0 841 1248 2803 2 MP stroke
-0 1394 4417 2803 2 MP stroke
-0 791 4274 2803 2 MP stroke
-0 -2 4817 2803 2 MP stroke
-0 982 6013 2803 2 MP stroke
-0 808 2877 2803 2 MP stroke
-0 758 1270 2803 2 MP stroke
-0 -612 5545 2803 2 MP stroke
-0 253 2477 2803 2 MP stroke
-0 -1837 3862 2803 2 MP stroke
-0 1453 5088 2803 2 MP stroke
-0 741 1274 2803 2 MP stroke
-5356 0 899 2803 2 MP stroke
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/front_pic2.pdf b/doc/tutorial/images/front_pic2.pdf
deleted file mode 100644
index 32a8851..0000000
Binary files a/doc/tutorial/images/front_pic2.pdf and /dev/null differ
diff --git a/doc/tutorial/images/glacier1.eps b/doc/tutorial/images/glacier1.eps
deleted file mode 100755
index 85fc084..0000000
--- a/doc/tutorial/images/glacier1.eps
+++ /dev/null
@@ -1,27242 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: glacier1.eps
-%%CreationDate: 09/01/2004 09:56:03
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 92 227 543 592
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 92 227 543 592
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 2.08333 def
-portraitMode 0037 1275 csm
-
- 155 41 939 761 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-gs 0 0 1200 901 MR c np
-/picstr 1200 string def
-gs
-1200 436 scale
-1200 436 8
-[1200 0 0 436 0 0] L1i
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C7274767261FFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7F81847F796C6155FFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C87898C89877F766A5C51FFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF898F92949289847C746A57FFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E92949A9A948F877F79716154FFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87929A9C9E9C94928C877C726657FFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F929A9EA49E9C9A948F877F746A5CFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C8C9A9EA4A6A49E9C9992897F746C5F51FFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87999EA4A9A9A6A39E9A928981766C6155FFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F929CA4ABB1ABA6A4A19C928981797167574FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8799A4ABB1B4AEA9A6A49C9489847C726A5D4FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C929CA6B1B7B7B1AEA9A49C9489847C726A5F55FFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8994A1ACB7BEB9B6B1AEA69C948C857C746C6457FFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A929CA6B1BEC1BEB7B1AEA69E948E877F766C675C4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89949EABB7C1C1BEB9B6AEA69E948F877F7671675F54FFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E9AA4AEBCC6C1BEB9B3AEA69E998F877F76726A6157FFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF87929CA9B6C1CCC1BEB9B3AEA69E9992877F79726A6157FFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF8C99A4AEBCC6CCC1BBB9B3B1A99E9A92877F7C746C615C4FFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF81929CA6B4C1CCCCC1BBB9B3B1A9A39A9289817C746C665D54FFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF89949EA9B9C6D3CCC1B9B7B3B1A9A39C9289817C746C675F55FFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF7F8F9CA4AEBCCCD4CCC1B9B6B1B1A9A49C9289847F76716A5F574FFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF87949EA6B4C4D1D4CCC1B9B6B1B1A9A49C948C857F76726A61574FFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF7C8C9AA1A9B7C6D7D9CCC4B9B6B1AEA9A49C948E877F79726A615951FF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF85949CA4AEBCCCD9D4CCC1B9B6B1AEA9A49C948E877F7C746C615C54FF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF8C949EA6B1C1CFD9D4CCC1B9B6B1AEA9A49C948F877F7C746C665D554F
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF849299A1A9B6C4D1D9D3C8C0B9B3B1AEA9A49C969287817C746C675F554F
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF89949CA4AEB7C4D1D4D1C6BEB9B3B1AEA9A49C999289817C76716A5F5751
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF7F92949CA6AEB9C6D3D3CFC6BBB9B3B1AEABA49E999289817C76726A615754
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF8992999EA6B1B9C6D3CFCCC6BBB9B3B1AEA9A69E9A9289847F79726A615955
-4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFF7C8F949AA4A9B1BCC6D1CFC9C1BBB9B3B1AEA9A69E9A9289847F79746C665D55
-4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFF8992949CA4A9B4BECBCFCCC6C1BBB9B1B1AEA9A49E9A9289877F7C746C675F55
-51FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF7C8F949A9CA4ABB7BFCCCCC6C6C1BBB9B1AEAEA6A49E9A928C877F7C7471675F57
-54FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF8992949C9EA6AEB7C4CCC8C6C1BEBBB7B1AEABA6A49E9A948C877F7C76726A6157
-544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF6A8C949A9CA3A6AEB9C4C6C6C1BEBBB9B7B1AEABA6A49E9A948E87817C76726A615C
-554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF8792949A9CA4A9B1B9C1C6C4BEBBB9B9B6B1AEA9A6A49E9A948E87817C76726C665F
-5551FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFF678994999C9EA6A9B1B9C1C1C1BEB9B9B6B1AEAEA9A6A49C9A948F87817F79746C675F
-5751FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFF878F949A9CA3A6A9AEB7BEBEBEB9B9B6B3B1AEABA9A6A39C9A948F89817F79746C6761
-57544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFF678992999C9CA4A6A9AEB7B9B9B9B7B6B1B1AEAEA9A6A4A19C99928F89817F7C74716A61
-59544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFF878F94999C9EA4A6A9AEB6B9B7B7B3B1B1AEAEABA9A6A49E9C99928E89817F7C74726A61
-5D554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFF678994949A9C9EA4A6A9AEB6B6B3B1B1B1AEAEABA9A6A6A49E9C96928E89847F7C76726A66
-5F574FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFF879294949A9C9EA4A6ABAEB1B1B1B1B1AEAEABA9A6A6A6A49E9A94928C87847F7C76726C67
-5F57514FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFF81899294999C9C9EA4A6ABAEB1B1AEAEAEAEABA9A6A6A6A4A19C9A94928C87847F7C76726C67
-5F59544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFF879292949A9A9C9EA4A6A9AEAEAEAEAEAEABA9A6A6A6A4A49E9C9994928987817F7C74726C67
-615C554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FF818C9294949A9A9C9EA3A6A6ABABABA9A9A9A9A6A6A6A4A4A39E9C94928F8987817F7C74726C67
-615D574FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FF8992949494999A9C9EA1A4A6A9A9A9A9A9A6A6A6A6A4A4A19E9C9A94928E8987817F7974726C67
-615F574F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-848F94949494999A9C9C9EA4A6A6A6A6A6A6A6A6A6A4A39E9E9C9C99948F898987817F7974726C6A
-615F57514FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C
-8C9294949494949A9C9C9EA1A4A4A4A4A4A4A4A4A4A39E9E9C9C9A94928E898785817C7974726C6A
-615F59544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87
-92949499949494999A9C9E9EA3A3A3A3A4A4A4A4A39E9E9C9C9A9994928C8987847F7C7974726C6A
-645F5C554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C8E
-94949996949494949A9C9C9E9E9E9E9E9EA19E9E9E9E9C9C9A9994928F898787817F7C7974726C6A
-665F5C574F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8792
-94999A9494949494999A9C9C9C9C9C9C9E9E9E9C9C9C9C9A999494928E8987847F7F7C7674726C6A
-66615D57544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF849294
-969A99949494949494999A9C9C9C9C9C9C9C9C9C9C9A9A999494928F8C8987817F7C7C7674716C6A
-66615D57554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C8F9499
-9A9A99949494949494949A9A9A9A9A9A9C9A9A9A999994949492928E898785817F7C7974746E6A6A
-64615F57554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF748992999A
-9C9A969494929492949494949496999A9A9994949494949292928E898987847F7C7C7674726C6A6A
-61615F5955514FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8492949A9C
-9A9A949494929292929494949494949494949492929292928F8E8C898787817F7C767474726C6A67
-61615F5955544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F92949A9C9C
-9A99949492929292929292929494949494929292928F8F8E8C89898787847F7F7C767472716C6A66
-615F5F5957554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF798C94999C9C9C
-9A99949292928F928F8F92929292929292928F8F8F8E8E898989878784817F7C7C7472726C6A6761
-615F5F5957554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6789949A9C9E9C9C
-9A9492928F8E8E8C8C8E8F8F8F92928F8F8E8E8F8E8E8C8989878784817F7F7C7974726C6C6A6761
-615F5F595755514FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87929A9C9E9E9C9A
-9A94928F8E8C898989898C8C8E8E8E8E8E8E8E8E8E8C8989898787847F7F7F7C7674726C6A6A6661
-5F5F5D5C5754544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF878E969E9EA19E9C9A
-94928F8E8989898789898989898C8E8E8E8E8E8E8E8C898989878785817F7C7C7674726C6A676661
-5F5D5C595754544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF848E949CA3A3A49E9C9A
-948F8E898987878787898989898C8E8E8E8E8E8E8E8E898989878787847F7C7C7674726C6A616161
-5F5D5C595754544F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF818E949CA4A4A4A49E9C94
-928E8989878784858787898989898C8E8E8E8E8E8E8E8C898989878785817F7C767474716A665F5F
-5D5C5957575551514FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F89949CA4A6A4A6A49E9C94
-8F8989878581818787878989898C8E8F8F8F8E8E8E8E8E898989878787847F7C797674726C6A615D
-5C595757575551514FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F89949EA4A6A6A6A6A49E9992
-898987857F7F818787878989898E8F8F928F8F8E8E8E8E8C898989878785817F7C7674726C6A665F
-5757575755554F514FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C89949EA4A6ABA9A6A6A69C948F
-8987857F7F7F8587878989898E8E8F9292928F8E8E8E8E8E898989878787817F7F7C7674726C6761
-5C5757555555514F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF676A6A6C72726C6757
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7989949CA4A6ABAEAEA9A9A39A9289
-87857F7C7F84878789898C8E8F9292929292928F8E8E8E8E8C898987878784817F7C7C7674716A66
-5F5755555554544F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5972727274767C7C797674716A
-4F55FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7687949CA4A6ABB1B1AEAEA69E949287
-8781797C81878789898E8F9292929494949492928F8F8F8E8C89898987878584817F7C7C7674716C
-675F54555551554F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF676A5757747C79797C7C7F8181817F7C7C7674
-726C61FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7987929CA4A9AEB1B3B3B1ACA49C928987
-81767C7F8787898C8E8F929294949494949494929292928F8E8C898987878784817F7F7C79767471
-6C675D515451544F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF727C7F7C767F848484817F818787878784847F7F7F7C
-767471675FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF768C999CA4A6AEB1B6B9B7B1A99E99928781
-7C797F8789898E8F9292929494949494949494949292928F8E8C89898987878584817F7F7C797674
-716C675C4F544F514F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF5F6C744F6C7F878184898E8E8E87878989898989898787878581817F
-7F76726C66614FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76929A9EA4A6AEB1B7B9BBB3AEA69C948C847F
-767F878C8E8F9292949494949999999999999994949492928F8E89898987878784817F7F7C7C7674
-726E6C6657514F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF67616A747F877F7C7C858E928F89878E9294928C898E9292928C8989898787878781
-7F7C74746C6A6659FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79949C9EA4A9AEB1B9BBBBB9B1ABA49C92878174
-7F878E9292949494969999999A9A9A9A9A9A9A9994949492928F8C898987878784817F7F7F7C7B76
-74726C6A6157514F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFF5F6C7C7C7F7C7C878E898C89858E949494928C92999994928C929294928F8C8E898989898785
-817F7976746C6C6761FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F949C9EA6ABAEB3B9BBBBBBB7AEA69E998E857F7F
-878E929494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949492928F8E898987878584817F7F7C7B76
-7472716C6A5F574F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7974
-7C817C898781878E8F94928C8F9492949994949A94969A9999949292949494928E8F8F8E8C898787
-81817C79767274746C6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C949CA4A6AEB1B6B9BBBBBBBBB3AEA69C9289817987
-8C9294999C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9994949492928F8E8987878784817F7F7C7976
-7472726C6A675F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8789877F
-818992928F898C929A9A949292949C9C9A99999A9C9C9C9A9A9A9494999494928F8F928F8E898987
-85847F7C7C79767676726A61FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF929CA4A9AEB1B9BBBBBBBBBBBBB1A9A49A8E877C8589
-92949A9C9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9994949492928E8989878784817F7F7C7976
-747472716C6A615F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF748794929289
-89929494949292999C9C9A94949A9C9E9C9A9A9C9C9C9C9A9A9A9A9999999494929292928F8C8987
-8784847F7F7C7C7C7B76726A5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF929CA4ABB1B3B9BBBEC1C0BBBBB9B1A69E9489817F8992
-949A9C9EA3A4A4A4A4A4A4A39E9E9E9E9C9C9C9C9A9A9994949492928F8C89878784817F7C7C7976
-7474726C6C6A665F574F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7176879A99949494
-929A99949A9A949C9C9C9C9A949C9E9E9C9C9A9C9C9E9C9C9A9A9A9A9A99949492929292928E8989
-878785817F7F7C7C7C7C76726C5EFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E9CA4ABB1B9BBBEC0C1C1C0BBBBB9AEA69C928779878F94
-9A9CA1A4A6A6A6A6A6A6A4A4A4A3A19E9E9C9C9C9C9A9996949492928F8C89878784817F7C7C7976
-7472716C6C6A66615C554F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8189929A9E9C949A9C
-9C9C9A999A9C9C9E9E9C9C9C9A9C9E9E9E9C9A9C9E9E9E9C9C9C9C9A9A99999494949492928F8C89
-87878785817F7F7F7F7F7F76726A5CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF899AA4ABB3B9BBC0C1C1C4C6C1BBBBB6AEA3948981818E9499
-9CA3A6A6A9A9A9A9A9A9A6A6A6A6A4A39E9E9C9C9C9A9A99949492928F8C89878784817F7C7C7674
-74726E6C6A6A66615F574F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF898F999EA6A49E9C9C9C
-9E9E9C9A9C9EA1A19E9E9C9C9C9E9E9E9E9E9C9C9E9E9E9C9C9C9C9C9A9A99969494949292928E89
-8987878785817F7F7F7F7F7F76726A5CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF8794A4ABB3BBBEC1C1C6C6C6C6C1BBBBB1A69C9287798992969C
-9EA6A9A9AEAEAEAEAEAEAEACABA6A4A4A49E9E9C9C9C9A99949492928E89898787847F7F7C797674
-72726C6C6A6A66615F59554F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F92929CA4A6A6A49E9C9E
-9E9E9E9C9C9EA4A49E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9E9C9C9C9C9A9A9A999494949492928F8C
-8987878787848181848181847F76726A59FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF7F929EABB3B9C1C1C6C6C6C6C8C6C1BEB9AEA49A8E858492949A9E
-A4A9AEAEB1B6B6B6B6B4B1B1B1ABA6A6A4A49E9E9C9C9A9A999494928F89898787817F7C7C767474
-72716C6A6A6766615F5C574F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF769499999EA6A6A6A6A39EA4
-9E9E9E9C9E9EA4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A99969494949292928E
-898987878787848485858587857F76746757FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF748E9CA9B1B9C1C6C6C6C9C9C9CCC8C6C0B6A99E94897189929A9CA3
-A6AEB4B6B7B9BCBCBCB9B7B6B4AEA9A6A6A4A39E9E9C9A9A999494928F89898785817F7C79767472
-726C6C6A6A6764615F5D57544F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C899C9C9CA3A9A6A6A6A6A4A4
-A19E9E9E9EA3A4A4A4A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A999494949492928F
-8C898987878787858787878787847F76746757FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF717C879AA6B1B9BEC6C8C8CCCFCFCFCFC9C4BBB1A69C9287848F949C9EA6
-ABB1B7BCBEBEBFBFBEBEBEB9B7B1AEA9A6A6A4A19E9C9C9A99969492928C8987847F7F7C76747472
-716C6A6A676761615F5F5C574F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74879CA3A3A3A6A9A6A6A6A6A6A4
-A39E9EA19EA4A4A4A4A49E9E9E9E9E9EA19E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9994949494929292
-8E89898989878787878789878787847F79746657FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF747F7C94A4AEB9BEC4CCCFCFCFCFCFCFCFC6C0B9AEA3998C728992999CA4A9
-AEB6BCBFC4C4C6C6C6C1C1C0B9B6AEABA9A6A6A49E9E9C9A9A9994928F898987817F7C7976747272
-6C6C6A6A676661615F5F5C57544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C8F9AA4A4A6A6A9A9A6A6A6A6A6A4
-A49E9EA3A3A4A4A4A4A4A3A19E9E9EA1A39E9E9E9E9EA19E9E9E9C9C9C9C9A9A9994949494949292
-8F8C89898989878787898989898989847F7C74664FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFF79856C899EABB7BFC4CCD1D1D1D3D3D3D3CCC4BEB1A69C9287818E949A9EA6AE
-B1B9BFC6C6CBCCCCC9C6C6C1BEB7B1AEAEA9A6A4A49E9C9C9A9994928E898987817F7C767472726C
-6C6A6A67676661615F5F5D59554F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F89949CA4A4A6A9A9A9A6A6A6A6A6A6
-A4A1A1A3A4A4A4A4A4A4A4A3A19E9EA1A3A19E9E9EA1A39E9E9E9E9C9C9C9C9A9994949494949292
-928E8989898989878989898989898989857F7C74664FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF76878E7F9AA6B4BEC6C9D1D4D4D4D4D4D4CFC6BFB9AEA49A8F72878F949CA4ABB1
-B7BEC6CCCFCFCFCFCCC8C6C1BEB9B6B1AEAEA9A6A4A39E9C9A9994928E898787847F7974726C6C6C
-6A6A6A67666661615F5F5D5C574F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C878C999EA4A4A6A9A9A9A6A6A6A6A6A6
-A4A3A1A3A4A4A4A4A4A4A4A4A39EA1A3A4A3A19E9EA1A3A19E9E9E9C9C9C9C9A9994949494949292
-928F8C89898989898989898C8C8C8C8C89877F7B746657FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF74898F928E9EACB9C6CCD1D4D9D9D9D9D4D1CFC6BEB6A99E94897F8992999EA6AEB6
-B9C1C8CFD1D1D1CFCFC9C6C6C1BEB7B6B1B1AEA9A6A49E9C9A9494928C898787817C76746C6A6A6A
-6A6A6766616461615F5F5C5C57554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76898E949C9EA4A4A6A9A9A9A9A6A6A6A6A6
-A4A4A3A4A4A4A4A6A4A4A4A4A3A1A1A3A4A4A39E9EA3A3A19E9E9E9E9C9C9C9A9A94949494949492
-92928E8C8C89898989898C8E8F8F8F8F8E89857F79746657FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFF748E8F928199A6B4C1CCD1D7D9DEDFD9D9D3CFCCC1B9B1A69C9287878E949CA1A6B1B9
-BEC6CCD3D3D3D3D1CFCCC8C6C6BEB9B9B6B1AEABA6A49E9C9A9994928E898787817C76726C6A6666
-66676766616161615F5F5C5C57554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF748792949A9E9EA4A4A6A6A6A6A6A6A6A6A6A6
-A4A4A3A4A4A4A4A6A6A4A4A4A4A3A3A3A4A4A3A1A1A3A4A39E9E9E9E9C9C9C9A9A96949494949492
-92928F8E8C8C8989898C8E8F8F92928F8F8C89857F79746A5CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFF6C7F8E929294929EACBCC9D4D9DCE1DFDCD9D4CFCCC6BEB6AEA3998E7F8992949CA4ABB4BB
-C1C8CFD4D4D4D4D3CFCFCCC8C6C1BEB9B9B6B1ABA6A49E9C9A9994928E8987847F7C76726A676161
-61646661616161615F5F5C5C5957514FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF79878E92949A9C9EA4A4A6A6A6A6A6A6A6A6A6A6
-A4A4A4A4A4A4A4A6A6A6A4A4A4A3A3A4A4A4A4A3A1A3A4A39E9E9E9E9E9C9C9A9A99949494949492
-9292928F8E8E8C8C8C8E8E8F929292928F8E8989877F7C746C61FFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FF6A76898E9294948794A4B4C4D1D9DFE1E1DFDCD9D3CFC9C4B9B1A69C9489848C929A9EA6AEB7C0
-C6CCD3D7D9D9D9D4D3CFCCCCC6C6C1BEB9B3AEA9A6A49E9C9A9994928E8987817F76726C6A61615F
-5F616161615F61615F5F5C595957544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F85898E92949A9C9EA3A4A6A6A6A6A6A6A6A6A6A6
-A6A4A4A4A4A4A6A6A6A6A4A4A4A4A3A4A4A4A4A3A3A4A3A19E9E9E9E9E9C9C9C9A99949494949492
-9292928F8F8E8E8E8C8E8F9292929292928F8C898987847F76726C66FFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A
-7484898E929494968F9CABBCC9D9DFDFE1E1DFD9D9D1CCC6BEB7AEA49A8F7C878F949CA4A9B1B9C1
-C8CFD4D9D9D9D9D4D4D1CFCCC9C6C1BEB9B3AEA9A6A39E9C9A9494928987847F7C746C6A66615F5C
-5D5F6161615F5F5F5F5D5C595957544FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C8187898F92949A9C9C9EA4A6A6A6A6A6A6A6A6A6A6
-A6A4A4A4A4A4A6A6A6A6A6A4A4A4A4A4A4A4A4A4A3A4A3A19E9E9E9E9E9C9C9C9A99949494949492
-929292928F8F8F8F8E8F92929292929292928F8F8E898987857F7C76726C675FFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF747F
-898E8F92949A996194A4B1C1D1DFDFDFE1DFDCD9D7CFC8C6BEB1A99E94897F8992999EA6ACB6BEC6
-CCD3D9D9D9D9D9D9D4D3CFCFC9C6C1BBB9B1AEA9A6A19C9C9994928F8987817C76726C67615F5C59
-57595D5F5F5F5F5F5F5D5C575757554F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F85898C929294999A9C9EA3A4A6A6A6A6A4A6A6A6A6
-A6A4A4A4A4A4A6A6A6A6A6A4A4A4A4A4A4A4A4A4A3A3A19E9E9E9E9E9C9C9C9C9A99949494949492
-92929292928F8F8F8F8F92929292949292929292928F8C898989878787817F76726C675FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF57796E7276FF
-546E5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C878F
-929294999A9A9A899CA9B9C6D4DFDFE1E1DFDCD9D4CFC6C1B9AEA69C9279858C949CA1A6AEB9C1C8
-CFD4D9DCDCDEDCD9D7D4D1CCC8C6C1BBB7B1AEA6A49E9C9A9694928E89877F76746C6A66615C5757
-5757575D5F5F5F5D5F5D5C595757554F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C818789898F9294949A9C9C9EA4A4A4A4A4A4A6A6A6A6
-A6A4A4A4A4A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9C9C9C9C9A99949494949492
-9292929292928F9292929292929494949494949494929292928F8C8C89898987878584817F7F7C54
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A6C76848E8F897F7C8489
-897C6C61FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C878F92
-94949A9A9C9A9A929EB1BECCD7DFDFE1E1DFD9D9D3CCC6BEB6AB9E998E7F878F949CA4A9B4BCC6CC
-D3D9DCDFDFDFDED9D9D4CFCCC8C6C0BBB6B1ABA6A49E9C9A94928F8987817C746C6A6A675F5D5755
-545557575D5F5F5C5D5D5C595757574F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797F818587898F929494999A9C9EA1A4A4A4A4A4A4A6A6A6
-A6A4A4A4A4A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A39E9E9E9E9E9C9C9C9C9C9A99949494949292
-9292929292928F9292929294949494949494949494949694949492929292928F8E89898989878785
-7F797471FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A7F817F879294929492878E92
-8E897C6C6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74898F9294
-999A9C9C9C9A8794A6B6C1CCD9DFDFE1E1DFD9D9D1C9C1B9AEA69C92878189929A9EA6AEB7BEC8CF
-D4D9DFDFE1E1DFD9D4D3CFCCC6C1C0B9B6B1ABA6A49E9C9994928E89857C726C6C7172726C675F55
-54515557595D5D5C5C5C5C59575757544F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F7C7F7F8587898E92929494999A9C9EA1A3A4A4A4A4A6A6A6
-A6A4A4A4A4A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A3A19E9E9E9E9E9C9C9C9C9C9A9A969494949292
-9292929292929292929292949494949499999A9A9A9A9A9A9A9A9A9A9A9994949492929292928F8E
-8987817F7C74716C5555FFFFFFFFFFFFFFFFFFFFFFFF6C74767F878F929494929C9A94999A949A94
-928C8776746CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A898F929499
-9C9C9C9C9C9C8C9CAEB9C4D1DCDFDFE1E1DCD9D4CFC6BEB6ABA3998F7C878E949CA4A9B1BCC4CCD3
-D9DFE1E1E1E1DCD9D4D1CFC9C6C1BEB9B3AEA9A6A19C9A94928F89877F726C727476767676746C61
-55514F5557595C5C5759595C575757544F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF6C76797C7F8487898C8F929294999A9C9C9E9EA1A4A4A4A4A6A6
-A6A4A4A4A4A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A3A19E9E9E9E9C9C9C9C9C9C9A9A999494929292
-929292929292929292929494969999999A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A99
-9494928E8987817C7C7976747474747476747679797C7F848589929494999C9E9E9C9A9A9C9C9C9A
-94928C877C76715FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A878F92949A9C
-9C9C9C9C9C8192A4B1BBC6D3DFDFE1E1DFDCD9D4CCC4B9B1A69C94897F8792999EA6AEB6BEC6CFD4
-D9E1E1E1DFDFD9D9D3D1CFC8C6C1BBB9B1AEA6A49E9C9A94928E87817474797C7F7F7F7F7F7C766C
-61554F545557575957575959575757554F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF7474797C7F848787898E8F929494999A9C9E9E9EA1A4A4A4A6A6
-A6A6A4A4A4A6A6A6A6A4A6A6A6A4A4A4A4A4A4A3A19E9E9E9E9E9C9C9C9C9C9C9A9A999494929292
-929292949492929292949494999A9A9A9A9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C
-9A9A949492928E89898787818181818181848487898E929294949C9C9A9C9EA4A4A19C9C9E9E9E9C
-9A949289877C746A57FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A858F92949A9C9C
-9C9C9C9C9C8799A6B1BECCD4E1E1E1E1DFDCD9D1C6BEB6ACA49A8F768189929CA3A9AEB9C1CCD3D9
-DFE1DFDFDFDCD9D4D3CFCCC8C6C1BBB9B1A9A6A49E9C94928F898479797F84898989898787817F76
-6C61544F5555575757575757595757554F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF6E6C747B7F8184878789898E929294949A9A9C9C9E9EA3A4A4A4A6
-A6A6A4A4A4A6A6A6A4A4A6A6A6A6A4A4A4A4A4A3A19E9E9E9E9C9C9C9C9C9C9A9A9A999494929292
-9292929494929292949494999A9A9A9A9C9C9C9E9E9E9E9E9E9EA1A3A3A4A4A4A3A3A3A3A3A39E9E
-9C9C9C9A9996949292928F8E8C8E8E8E8E8E8E929294949A9CA1A39E9C9EA4A6A4A4A39EA1A39E9E
-9C99948F898179716151FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF818E92949A9C9C9E
-9E9E9E9C7C8E9CABB7C1CCD9E1E1E1E1DFD9D3CCC4B9B1A69E94897C878F949CA4ABB1BCC6CFD4D9
-DCDFDFDCDCD9D9D4D1CFCCC6C4C0B9B6AEA9A4A19C9A94928E876A7F87898F92929292928C89877F
-746A5F4F4F55555757575757575757554F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF6A6A6C72747B7F7F8181858787898C8F929494999A9C9C9C9EA1A4A4A4A4
-A4A4A4A4A4A6A6A6A4A4A4A6A6A6A4A4A4A4A4A19E9E9E9E9E9C9C9C9C9C9C9A9A9A999494949292
-92929494949492929494969A9A9C9C9C9C9C9E9EA1A3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3
-A3A39E9E9C9C9C9A9A999494949494949499999A9C9A9A9C9EA4A4A4A3A3A6A6A4A6A6A3A4A4A19E
-9E9C99928E877F746A59FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F8C92949A9C9C9E9E
-9E9E9C9C8494A1AEB9C6CFD9E1E1E1E1DCD4CFC6BEB7AEA49A92877F89929A9EA6AEB6BEC6D1D4D9
-DCDCDCD9D9D9D9D3CFCFCCC6C1BBB9B1AEA6A49E9C96928F89717F89929499999A9A999494928E87
-7C7161574F4F55555557575757575555544F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFF6A616AFF5F797974767474797C7F7F7F818184878789898E92929494999A9C9C9E9EA3A4A4A4
-A4A4A4A4A4A4A6A6A4A4A4A4A6A6A4A4A4A4A4A19E9E9E9E9E9C9C9C9C9C9A9A9A9A999494949292
-92949494949494949494999A9C9C9C9C9C9E9EA1A3A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A4A4A4A4A3A19E9E9C9C9C9C9C9C9A9C9EA1A19E9E9EA4A6A6A6A6A6A6A6A6A6A6A6A6A4A4A1
-9E9E9C949289847C716455FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67848C92949A9C9C9E9E9E
-9E9C9C9A899AA4B1BEC6D3DFE1E1E1DFD9D1CCC4BCB1A69E948C79848C949CA3A9B1B9C1CCCFD3D9
-D9D9D9D9D9D9D4D3CFCCC8C6C0B9B6B1A9A6A39E9A94928E72818F949A9E9E9E9E9E9E9C9C9A948E
-81746A5D514F51555555555757575755544F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74
-87847F74747F87877F7C7C7F7F8184817F81818184878787898C8F929294949A9A9C9C9E9EA4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A6A4A4A4A4A4A4A39E9E9E9E9E9C9C9C9C9C9A9A9A99999494949292
-929494949494949494999A9A9C9C9C9C9C9E9EA3A4A4A4A4A6A6A6A6A6A9A9A9A9A9A9A9A9A9A9A9
-A9A9ABA9A9A6A6A6A6A4A4A4A4A4A49E9C9EA3A4A6A6A4A4A9A6A6A6A9A9A9A6A6A6A6A6A6A6A4A4
-A19E9C9A948F877F746A5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72898C92949A9C9C9E9EA3A1
-9E9C9A7C929CA6B6C1CCD4DFE1E1DFD9D3CCC6BEB7AEA49C92897C878F949CA4AEB3BEC4CCCFD3D4
-D9D9D9D9D4D4D4D1CFCCC6C1BEB9B1AEA6A49E9C99928F8984929A9CA4A6A6A6A6A4A4A4A49E9A94
-897C7161554F4F515555555557575755544F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A617489
-898789898189898787817F8487878784818181818485878789898E8F929494999A9C9C9E9EA3A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9C9C9C9C9A9A9A9999969494949492
-949494949494949494999A9C9C9C9E9E9E9EA1A4A4A4A6A6A6A6A6A9A9A9ABABABABABABACAEAEAE
-AEAEAEAEAEAEA9A9A9A6A6A6A9A9A6A49EA3A4A6A6A9A9A6ABA9A6A9A9ABA9A9A6A6A6A6A6A6A4A4
-A39E9E9C999289857F746A59FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C7C898E92949A9C9C9E9EA3A39E
-9C9C9A87949CABB9C6CFD9E1DFDFDCD4CFC6C1B9B1A99E998F847F89929A9EA6AEB9BEC6CCCFD1D4
-D9D9D4D4D4D3D3CFCCC6C6BEB9B6B1ABA6A49E9A94928C84929C9EA4A9ABABABABA9A6A6A6A49E9A
-9487766A5C544F4F5155555555575755544F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B8789928E94
-9289898E928F8C898989858789898787848184848485878787898C8F92929494999A9C9C9E9EA3A3
-A3A3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9C9C9C9A9A9A9A9999949494949492
-9494949494969999999A9A9C9C9E9E9E9E9EA3A4A6A6A6A6A6A6A9A9A9ABAEAEAEAEAEAEAEAEB1B4
-B4B4B6B6B4B4AEAEAEABA6A9ABAEABA9A6A6A6A6A6A9ABAEAEABA9A9ABABABA9A9A6A6A9A6A6A6A4
-A4A39E9E9C948F89817C726657FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72747C87898F92949A9C9C9E9EA3A39E9E
-9C9A998999A1AEBCC6D1D9DFDCD9D9D1CCC6BEB6AEA69C948979848C949CA1A9B1B9BEC6CCCFD1D4
-D4D4D4D4D3D1CFCFC8C6C1BEB7B1AEA9A49E9C99948F85929CA3A6ABAEAEAEAEAEAEAEABA9A6A49C
-998E7F7261554F4F4F51555555555755554F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87898F949A9A
-94928F9292928F8C898989898989898785848484858487878789898C8F929294949A9C9C9C9E9EA1
-A1A1A1A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9C9C9C9A9A9A999996949494949494
-949494949499999A9A9A9C9C9C9E9EA1A1A1A4A4A6A6A6A6A9A9A9A9ABAEAEAEAEAEB1B1B1B1B6B7
-B7B7B9BCBCB7B6B1B1AEABABAEAEAEAEA9A6A9A9A9ABAEAEAEAEA9A9ABAEABABA9A9A9A9A9A6A6A6
-A4A4A39E9C9A948E87817C716155FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C797F87898F8F9294999A9C9C9E9EA3A3A19E9C
-9C9A7B929AA4B1BECCD3D9DCD9D9D4CFC6C1B9B1A9A39A92857F878F949CA4ABB1B9BEC6CCCFCFD4
-D4D3D3D1CFCFCCCCC6C1BEB9B6B1ABA6A49E9C94928C8F9AA4A6AEB1B6B6B6B6B6B1B1AEAEA9A69E
-9C9487766759544F4F4F51555555555555514F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF848C8E92999A9A
-999492949292928F8E8E8E8C898989878787858584848487878789898E92929494999A9C9C9E9E9E
-9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9E9C9C9A9A9A999994949494949494
-949494949699999A9A9A9C9C9C9EA3A3A4A4A4A6A6A6A9A9A9A9ABABAEAEAEAEAEAEB1B6B6B7B9BC
-BCBEBEC1BEBEB9B6B3B1AEAEAEAEAEAEAEABAEABA9AEAEB1AEAEABABAEAEAEABABA9A9A9A9A9A6A6
-A6A4A4A19E9C999289877F766C5F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F878787899292929292949A9A9C9C9C9EA3A3A19E9E9C
-9A9485949CA6B6C1C9D1D9D9D9D4D3CCC1BBB3AEA69C94897F7F89929A9EA6AEB6BBC1C6CCCFCFD3
-D3D1CFCFCCCCC8C6C4C0B9B7B1AEA9A49E9C9A948F8E9AA4ABAEB4B9B9B9B9B9B9B7B3B3B1AEA9A4
-9E998E7F715F554F4F4F4F515555555554514F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF67929292949A9A99
-99949494928F92928F8F8E89898989898787878484848485878787898C8F929294949A9A9C9C9E9E
-9E9E9E9EA1A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9E9C9C9A9A99999694949494949494
-9494949499999A9A9A9C9C9C9C9EA3A4A4A4A4A6A6A6A9A9A9ABAEAEAEAEAEB1B1B1B6B9B9B9BEC1
-C1C4C6C6C6C1BEB9B9B3B1B1B1B1AEAEAEAEAEAEABAEB1B1B1AEAEAEAEAEAEABABA9A9ABABA9A9A6
-A6A6A4A49E9C9A949289857F766A5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7681898F929494949499999A9C9C9C9C9C9EA1A3A19E9E9C9C
-96928E949EABB9C4C8CFD9D7D4D3CFC6BEB9B1A9A39A928779848C949CA1A6AEB9BBC1C6CCCFCFD1
-CFCFCCCCC8C6C6C6C1BEB9B6AEABA6A49E9C94928794A3AEB1B7B9BEBEBEC1BEBEB9B9B7B3B1AEA6
-A39C9287766757514F4F4F4F5455555554544F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF879494999A9A9A99
-94949494928F8F9292928E8989898989898787848481818487878789898E8F929494999A9C9C9C9E
-9E9E9E9E9EA1A3A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9E9C9C9A9A99999494949494949494
-94949494999A9A9A9A9C9C9C9C9EA3A4A4A4A6A6A6A6A9A9ABAEAEAEAEAEB1B1B1B3B7B9BBBEC1C6
-C6C6C8C8C6C4C1BBBBB9B3B1B1B1AEAEAEB1B1AEAEAEB1B1B1B1AEAEAEAEAEAEABABABABABABA9A9
-A6A6A6A4A19E9C99948F89857F766A5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF79848E9299999A9A9A9A9C9C9C9C9C9C9C9C9E9EA19E9E9E9C9A
-9476929A9EAEB9C1C8CFD4D4D3CFCCC1B9B3ABA49C948E7F7F8792999CA4A9B1B9BEC1C8CCCCCFCF
-CCCCC8C6C6C4C1C1BEB9B6B1AEA9A49E9C9A947B949EABB6B9BEC1C6C6C6C6C4C1C0BBB9B9B3B1AB
-A69E94897F6E5F554F4F4F4F4F54555554544F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF599494949999999999
-94949492928F8F8F928F8E898989898989878784818181848587878789898E92929494999A9C9C9C
-9C9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9C9C9C9A99949494949494949494
-94949494999A9A9A9A9C9C9C9E9EA1A4A4A6A6A6A6A9A9A9ABAEAEAEAEB1B1B1B1B7B9BEC0C1C6C6
-C9CCCCCCC6C6C1BBBBB9B9B3B3B1AEB1B1B1B1B1AEB1B1B1B1B1AEAEAEAEAEAEAEABAEAEAEAEABA9
-A9A6A6A6A49E9E9A94928F89877F766A5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF7F878F999A9A9A9C9C9C9C9E9E9E9E9C9C9C9E9E9E9E9E9E9C9A99
-9281929CA4B1B9C1C6CFD4D1CFCFC6BEB7AEA6A19A9287767F89929A9EA4ABB1B9BEC6C6C8C8CCC8
-C6C6C6C4C1C1BEBEBBB7B1AEA9A6A49E9C9992899CA6B3B9BEC1C6C6C6C6C6C6C4C1C0BBB9B7B3AE
-A6A49A8F857666574F4F4F4F4F5154555451514F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5D8E9294949494949494
-94949292928F8E8F8F8F8E898989898987878784818181818487878789898C8F929294999A9A9C9C
-9C9C9E9E9E9EA1A3A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9C9C9C9A99949494949494949494
-94949494999A9A9A9A9A9C9C9E9EA1A4A4A6A6A6A6A9A9ABABAEAEAEB1B1B1B1B6B9BBBEC1C6C6C8
-CCCCCCCCC6C6C1BEBBB9B9B9B6B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAB
-A9A9A6A6A4A49E9C9A94928F89847C746C5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF727F8C949A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9A94
-9289949CA6B1BEC1C6CFD1CFCFCCC1B9B1ABA49C948F8179848C949C9EA6AEB6BBC1C4C6C6C6C6C6
-C6C1C1C1BEBEBBB9B9B3AEABA6A49E9C9A947C9AA6AEB9BEC1C6C9C9C9CCCCC8C6C6C1BEBBB9B6B1
-ABA69C94877C6C5F554F4F4F4F4F5154544F514F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87929292929492929294
-949492928F8F8E8E8E8E8C898989898787878784817F7F81848587878789898E929294949A9A9C9C
-9C9C9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9C9C9C9A99949494949494949494
-94949494969A9A9A9A9A9C9C9E9E9EA4A4A4A6A6A9A9A9ABAEAEAEAEB1B1B1B1B6B9BBC0C4C6C8CC
-CFCFCFCFC8C6C1BEBBB9B9B9B7B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAE
-ABA9A9A6A6A4A39E9C9A94928F89847F76726657FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF6C748192999A9C9C9C9C9E9EA4A39E9E9E9E9E9E9E9E9E9E9E9E9E9C9A9992
-748F969EA9B1BEC1C6CCCFCCCCC6BEB6AEA69E9A92897C7F8792999CA3A6AEB9BBBEC1C1C1C1C1C1
-C1BEBEBEBBB9B9B7B3B1AEA6A6A39E9C99748FA4ACB7C1C4C6CCCFCCCFCFCFCCC8C6C4C0BEB9B7B1
-AEA9A394897F7461574F4F4F4F4F4F51544F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C898F9292929292929292
-929292928F8E8C8C8C8C898989898787878787847F7F7F7F818485878787898C8F929294999A9A9C
-9C9C9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9C9C9C9C9A9A969494949494949494
-9494949494999A9A9A9A9C9C9C9E9EA3A4A4A6A6A9A9A9ABAEAEAEAEB1B1B1B3B7B9BEC1C6C6CCCC
-CFCFD1CFC8C6C1BEBBB9B9B9B9B6B1B1B1B1B1B1B1B3B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAE
-AEABA9A9A6A6A49E9E9C9C96929289877F79726A5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFF6C6C747C818E94999A9C9E9E9E9EA3A4A4A3A19EA1A3A39E9E9E9E9E9E9C9C9C9A948F
-81929AA1A9B4BEC1C6CCCCC9C6C1B9B1A9A49C948F87747F89949A9EA4A9B1B7B9BEC1BEBEBEBEBE
-BEBBB9B9B9B7B6B3B1AEA9A6A49E9C9A94879CA9B4BEC6C6CCCFCFCFCFCFCFCFCCC9C6C1BEBBB7B1
-AEA9A69A8F84796A5F554F4F4F4F4F4F51514F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76818C8C8C8C8F8F8E8E8E8F
-9292928F8E8C89898989898989878787878787817F7F7F7F81818487878789898E92929499999A9A
-9C9C9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9C9C9C9C9A9A949494949294949494
-949494949499999A9A9A9C9C9C9E9EA3A4A4A6A6A6A9ABABAEAEAEB1B1B1B1B3B9B9BEC1C6C8CCCF
-D1D3D3CFC9C6C1BEB9B9B9B9B9B6B3B1B1B1B1B1B1B3B3B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAE
-AEAEABA9A6A6A4A4A39E9E9C9994928C87847F79746A5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-7474767C7C7F84878E92949A9A9C9E9E9EA3A4A4A4A4A3A1A1A3A4A39E9E9E9E9E9C9C9C9A969289
-89949CA4A9B6BEC1C6CCC8C6C6BEB6AEA69E9A92897F79878F949C9EA6AEB1B6B9B9BEBBB9B9B9B9
-B9B9B9B6B6B3B1B1AEABA6A49E9C9C9A8199A6B1BCC4CCCCCFD1D3D3D3D3D3D1CFCCC6C1C1BEB9B1
-AEABA69C92877C7161574F4F4F4F4F4F4F544F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F8787878789898C89898E8E
-8F928F8E8C8C89898989898987878787878785817F7F7F7F7F818485878787898C8F929494999A9A
-9C9C9E9E9E9E9E9EA4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9C9C9C9C9C9A9A949494929292949494
-949494949494999A9A9A9C9C9C9E9EA1A4A4A6A6A6A9A9ABAEAEAEB1B1B1B1B6B9BBC0C1C6CCCFCF
-D3D4D4CFCCC6C1BEB9B9B9B9B9B6B3B1B1B1B1B1B3B3B3B3B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAE
-AEAEAEA9A9A6A6A4A4A4A19E9C9C99928E898987857C76726A5FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767F
-7F8187898F92929292949A9C9C9E9EA3A4A4A4A4A4A4A4A3A3A4A3A19E9E9E9E9C9C9C9A99948E76
-8C949CA4ABB6BEC1C6C8C6C4C1B9B1A9A39C948F87797F8992999C9EA6ABB1B3B6B9B9B9B7B7B7B7
-B7B6B3B1B1B1AEAEA9A6A49E9E9C9A9692A1AEB9C1CCCFD1D1D4D4D4D4D4D4D3D1CFC9C6C1BEB9B1
-AEABA69E94897F766A5F554F4F4F4F4F4F514F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767F8181818787878989898C8E
-8E8E8E8C8C8989898989898787878787878785817F7F7F7F7F7F818487878789898E92929496999A
-9C9C9C9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9C9C9C9C9C9A9A949492929292949494
-94929494949496999A9A9A9C9C9E9EA1A4A4A6A6A6A9A9ABAEAEAEB1B1B1B3B7B9BBC1C6C8CCCFD1
-D4D4D4CFCCC6C1BEB9B9B9B9B9B6B3B3B1B1B1B1B3B3B3B3B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAE
-AEAEAEABA9A6A6A6A4A4A4A4A19E9C9A94928F8E898987878181817F7C746C576657575F5F5F5F61
-6167676A6C7474767C7F816C4F54666C616A717474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF798489
-8E92929294949494969A9C9E9EA1A4A4A4A4A4A4A4A4A4A3A4A39E9E9E9E9E9C9C9C9C9A94928981
-8F999EA6AEB6BEC1C6C6C4C1BEB4ACA49E9A948C8174818C929A9CA4A6ABB1B1B3B9B7B6B3B3B3B3
-B3B1B1B1AEAEABA9A6A4A39E9C9C99899CABB7BFC8D3D3D4D4D9D9D9D9D9D9D4D4D1CCC6C6BEB9B3
-B1ABA69E9A8E81796C61574F4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797C7C7F818787898989898C8E
-8E8E8C8C898989898989878787878787878785817F7F7F7F7F7F818184878789898C8F9294949999
-9A9C9C9E9E9E9E9EA3A4A4A3A3A4A4A4A4A39E9E9E9E9E9C9C9C9C9C9A9A99949492929292929494
-9292929494949496999A9A9C9C9E9E9EA4A4A4A6A6A9A9ABAEAEAEB1B1B1B3B9B9BEC1C6C9CFD1D3
-D4D9D4D1CCC6C4C0B9B9B9B9B9B7B6B3B3B1B1B1B3B3B3B3B3B1B1B1B1B1B1B1AEAEAEAEAEAEAEAE
-AEAEAEACA9A9A6A6A6A6A4A4A4A4A49E9C9A94949292928E8989898989898989878989898E898987
-8787817F84878181878987898E928F877C7C7F817C7F814F4F6154FFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A79898E92
-949494949699999A9C9EA1A3A4A4A4A4A4A4A4A6A4A4A4A3A19E9E9E9E9E9C9C9C9C9A94928C8487
-929A9EA6AEB7BEC1C4C1BEBEB7AEA69E9C9992897C7C878F949A9EA4A6ABB1B1B3B6B3B1B1B1B1B1
-B1AEAEAEABA9A9A6A4A19E9C9C9A8194A4B7BEC6D1D7D9D9D9DCDCDCD9D9D9D9D9D3CFC8C6C1B9B6
-B1AEA6A39A92877C746A5F544F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7674767C7F81878989898989898E
-8E8E8C89898989898987878787878787878584817F7F7F7F7F7F7F818487878789898F9294949499
-9A9C9C9E9E9E9E9EA3A4A4A3A1A3A4A4A49E9E9E9E9E9E9C9C9C9C9C9A9A99949492929292929292
-929292929494949496999A9C9C9C9E9EA3A4A4A6A6A9A9ABAEAEAEB1B1B1B3B9BBBEC1C6CCCFD3D4
-D9D9D4D1CCC8C6C0BBB9B9B9B9B7B6B3B3B3B1B1B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEAEAEAEAEAE
-AEAEAEAEABA9A9A6A6A6A6A6A4A4A4A4A19E9C9C9A9A9A94949292929292928F8F8F929292949494
-999A9C999994928E9292929294949499948E928C878789898979665F57FFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF727F89929494
-9499999A9A9C9C9C9EA4A4A4A4A4A4A4A4A6A6A6A6A4A4A19E9E9E9E9C9C9C9C9C9A99928F877989
-949C9EA6AEB9BBBEC1BEBEB9B4ABA49E9C948F85747F8992949C9EA4A6ABAEB1B1B1B1B1AEAEAEAE
-AEAEABA9A9A6A6A4A19E9E9C9A9992A1AEBEC6CFD4D9D9DCDFDFDFDFDFDEDCD9D9D4CFCCC6C1BBB6
-B1AEA6A49C92897F746C61574F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74727981818487898C8E8E8E8E8C8C
-8E8E8E89898989898787878787878785858481817F7F7F7F7F7F7F818184878789898E9292949496
-999A9C9E9E9E9E9EA1A4A3A19EA3A4A4A39E9E9E9E9E9C9C9C9C9C9A9A9994949492929292929292
-929292929294949494999A9C9C9C9E9EA3A4A4A6A6A6A9ABAEAEAEB1B1B1B1B7B9BEC1C6CCCFD1D3
-D4D7D4CFCCC6C6C0BBB9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEAEAEAEAE
-AEAEAEAEABA9A9A9A9A6A6A6A6A6A6A4A4A19E9E9E9E9E9E9C9C9A9A9A9996949494999A99999A9C
-9C9C9C9E9E9E9E9C9C9A99999A9A9A9A9C9E9C94928E92928C897F726C66FFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76878F9494969A
-9A9A9C9C9C9E9E9EA3A4A4A4A4A4A4A6A6A6A6A6A6A4A49E9E9E9E9C9C9C9C9C9A999492897F818E
-949CA3A9B1B9B9BEBEBEB9B7AEA69E9C9A92897F76858C92999CA3A4A6ABAEAEB1B1AEAEAEAEABAB
-A9A9A6A6A6A6A4A19E9C9C9C99879CABB9C4CCD1D9D9DCDCDFDFDFDFDFDFDFDCD9D9D3CFC8C1BEB7
-B1AEA6A49C9489817671665D544F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF727F87878989898F8F8F9292928F8F
-8E8E8E898989898989878787878785858481817F7F7F7F7F7F7F7F7F8184878789898C8F92949494
-999A9C9C9E9E9E9EA1A4A3A19E9EA3A49E9E9C9C9C9C9C9C9C9C9C9A99949494929292928F929292
-929292929292949494999A9C9C9C9E9EA1A4A4A6A6A6A9A9ABAEAEB1B1B1B1B6B9BBC0C6C6CCCFD1
-D3D4D3CFC9C6C1C0BBB9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B1B3B3B1B1B1B1B1B1B1AEAEAEAEAE
-AEAEAEAEABABABA9A9A9A9A6A6A6A6A6A4A4A3A3A4A4A4A4A4A4A3A19E9E9C9C9C9C9C9C9C9C9C9E
-9E9E9EA4A1A3A4A4A4A19E9C9E9E9C9C9E9E9E9E9A949994928F8E857F7267FFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F7F898F94949A9A9C
-9C9C9E9E9E9E9EA3A4A4A4A4A6A6A6A6A6A6A6A6A4A4A39E9E9E9C9C9C9C9C9A9994928C84748792
-999CA4A9B1B7B9B9BCB9B7B1A9A49E9C968F87797C8992949A9EA4A6A6ABAEAEAEAEAEAEABA9A9A9
-A6A6A6A6A4A4A19E9C9C9A9A7C9AA6B4C1C6CCD3D9D9DCDCDFDFDFDFDFDFDFDFDCD9D4D1CCC6BEB9
-B1AEA9A49C94898479726A5F574F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C7276848E89898E8F929292929292929292
-8F8E8E8C89898989898787878785848481817F7F7F7F7C7F7F7F7F7F7F8185878989898E92929494
-949A9C9C9E9E9E9E9EA3A19E9E9EA1A19E9E9C9C9C9C9C9C9C9C9A9A99949492929292928F8F9292
-929292929292929494999A9A9C9C9C9EA1A4A4A6A6A6A9A9ABAEAEAEB1B1B1B3B9B9BEC1C6CCCCCF
-CFD1CFCCC8C6C1BEB9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B3B3B1B1B3B1B1B1B1B1B1B1AEAEAEAEAE
-AEAEAEAEAEABABABABA9A9A9A9A6A6A6A6A4A4A4A4A4A6A4A4A4A4A4A4A4A4A4A4A4A4A4A39EA3A3
-A3A4A4A4A4A4A4A4A4A4A6A4A4A39E9EA3A39E9E9E9C9C999492928F897C7267FFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF6C76767471716A675FFFFFFFFFFFFFFFFFFFFFFFFFFF6C7F878C8F94999A9C9C9E
-9E9E9E9EA1A1A3A4A4A6A6A6A6A6A6A6A6A6A6A6A4A4A19E9E9C9C9C9C9A9A9694928E877F7C8992
-9A9EA4ABB1B6B7B9B9B6B1AEA6A19C9A94898174818C92949C9EA4A6A9A9ABAEAEAEABA9A9A6A6A6
-A6A4A4A4A4A19E9C9C9A99948FA1ACBCC6C6CFD4D9D9DCDEDFE1E1E1E1E1DFDFDFDCD9D3CFC6C1BC
-B3AEA9A49C948C877C726C6159514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7F878E9492928E9292949494929494949492
-928F8E8C8989898989878787858484817F7F7F7F7F7C7C7F7F7F7F7F7F8184878989898E8F929494
-94999A9C9C9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9A9A99949494929292928F8F8F8F92
-929292929292929494969A9A9C9C9C9E9EA4A4A4A6A6A9A9ABAEAEAEB1B1B1B1B7B9BBC1C6C6CCCC
-CFCFCFCCC6C6C1BEB9B9B9B9B9B9B6B3B3B3B3B1B3B3B3B3B3B1B1B1B3B1B1B1B1B1B1AEAEAEAEAE
-AEAEAEAEAEAEAEABABABABABA9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A19E9E9C9C999494928E877C726AFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF6E7F8487858587877F7C7C76726C6766615F616A727C7F84898E9294999A9C9C9E9E
-9EA1A3A3A4A4A4A4A6A6A6A6A6A6A6A6A6A6A4A4A4A4A19E9C9C9C9C9A9A9694928F898179858C94
-9A9EA6AEB1B3B3B7B6B1AEABA49E9C9492877C7C878F94999CA1A4A6A6A9A9ABABA9A9A6A6A6A6A4
-A4A4A4A39E9E9C9A9A9694879CA9B4BFCCC9CFD4D9D9DCDFDFE1E1E1E1E1E1E1E1DFD9D4D1CCC6BE
-B6B1A9A49E948E877F746C675F554F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8987878E94999494929494969694949494949494
-92928F8E8989898989878787848484817F7F7F7F7C7C7C7C7C7F7F7F7F7F8187878989898F929494
-94969A9A9C9C9E9E9E9E9E9E9E9E9E9E9E9C9C9A9C9C9C9C9C9A99949494929292928F8F8E8E8F8F
-92929292929292949494999A9C9C9C9C9EA3A4A4A6A6A9A9A9AEAEAEB1B1B1B1B6B9B9BEC1C6C6C9
-CCCCCCC8C6C1C1BEB9B9B9B9B9B9B6B3B3B3B3B1B3B3B3B3B1B1B1B1B1B3B1B1B1B1B1AEAEAEAEAE
-AEAEAEAEAEAEAEAEABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A39E9E9C9C9994929289877C746AFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFF7284899292929292928F8E8C898987848181818184878789898F92949A9C9C9C9E9EA3
-A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A39E9C9C9C9C9A9A999492928C877F76878F96
-9C9EA6AEB1B1B1B6B1AEAEA6A39C9A948C84767F8C92949A9EA4A4A6A6A6A9A9A9A6A6A6A6A6A4A4
-A4A39E9E9E9C9C9A94947F94A6AEB9C6CFCFD1D9D9DCDCDFDFE1E1E1E1E4E1E1E1E1DCD9D4CFC6C1
-B9B1ABA69E948E877F746E6A5F57514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494928E949C9A9999949499999999999999969494
-9492928F8C898989898987878484817F7F7F7C7C7C7C7C7C7C7C7F7F7F7F8184878989898E929294
-9494999A9A9C9C9E9E9E9E9E9E9E9C9C9C9C9C9A9A9C9C9C9A9A999494929292928F8F8F8E8E8E8F
-92929292929292949494999A9A9C9C9C9E9EA4A4A6A6A6A9A9ABAEAEAEB1B1B1B3B7B9BBC1C1C6C6
-C8C9CCC6C4C1C0BBB9B9B9B9B9B9B6B3B3B3B3B1B1B3B3B3B1B1B1B1B1B1B3B1B1B1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEABABABABABABABABABA9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A9A6A6A6A6A6A9
-A9A9ABA9A9A9A9A9A6A6A9A6A6A6A6A6A6A6A6A4A4A39E9E9C9A9994928F89877C746A4FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFF74879294949494949494949292928F8C8989898989898C8F929494999A9C9C9C9E9EA3A4
-A4A4A4A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A49E9E9C9C9C9A9A999494928E89847C7F899299
-9CA3A6ABAEB1B1B1AEAEA9A49E9A9492877F76878F92949C9EA3A4A4A6A6A6A6A6A6A6A6A6A4A4A3
-9E9E9E9E9C9C9A9694928EA1AEB7C1CCCFCFD3D9D9DCDCDFDFE1E1E1E4E6E4E4E4E4DFD9D4D1CCC4
-B9B1AEA6A3998F877F76716A615D554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87949A9A9C9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A999694
-949492928F8C8989898987878581817F7F7C7C7C7C7C7C7C7C7C7C7C7C7F7F84878789898C8F9292
-949494999A9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A999494929292928F8F8E8E8E8E8E
-8F92929292929292949499999A9A9C9C9E9EA1A4A6A6A6A9A9A9ABAEAEAEAEB1B1B6B9B9BEC1C1C6
-C6C6C6C6C1C1BEBBB9B7B7B9B9B9B7B6B3B3B1B1B1B1B3B3B1B1B1B1B1B1B1B3B1B1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABABA9A9A9A9A9A9A9A9A6A9A9A9A9A9A9A6A9
-A9ABABABABABA9A9A9A9A9A9A9A6A6A6A6A6A6A6A4A49E9E9C9C9A9994928C87847C746A4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFF5F7F8E9494999A9A9A9A9A9A99949494949292929292929494949499999A9C9C9E9E9EA3A4A4
-A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A39E9E9C9C9C9A9A999694928F8987817C878C949A
-9EA3A6A9AEAEAEAEABA9A6A19C99928C857B7F899294999C9E9EA4A4A6A6A6A6A6A4A4A4A4A4A39E
-9E9E9C9C9C9A999492879AABB7BEC6D3D3D3D4D9D9DCDCDFE1E1E4E4E6E6E6E6E6E6E1DED9D4CCC6
-BEB6AEA9A49A92877F76726A665F574F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F929C9C9C9E9EA39E9C9A9A9C9A9C9C9C9C9C9A9A9A9996
-94949492928F8C89898987878584817F7F7C7C7C7C7C7979797C7C7C7C7F7F8184878989898E9292
-92949494999A9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9994929292928F8F8E8E8E8E8E8E
-8E8F929292928F9294949699999A9A9C9C9E9EA3A4A6A6A6A6A9ABAEAEAEAEAEB1B3B7B9BBBEC1C1
-C6C6C6C4C1C0BEB9B9B7B7B7B9B9B7B6B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B3B1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABABABABABABABA9A9A9A9A9A9A9A9A9A9A9A9
-A9ABABABABABABABA9A9A9A9A9A9A9A6A6A6A6A6A6A4A39E9E9C9C9A94948F8987817C746A4FFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F878989878787878481FFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FF5C878C94999A9C9C9C9E9E9C9C9C9C9A9A9A9999999494949999999A9A9C9C9E9E9E9EA3A4A4A6
-A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A19E9E9E9C9C9A9A9A999494928F8C89857F7F878F949C
-9EA3A6A9AEAEAEABA9A6A49C9A9492897F74878E9294999C9E9EA3A4A4A4A4A4A4A4A4A4A4A49E9E
-9C9C9C9C9A9994949292A4B7BEC6CCD4D4D4D4D9D9DCDEDFE1E1E4E6E6E7E7E6E6E7E4DFD9D9D1C6
-BEB7B1ABA69C92877F76726C676159554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A6A6C6A5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F899A9C9C9C9EA3A39E9E9C9C9C9C9C9C9C9C9C9C9A9A9A99
-9694949492928F8C898989878784817F7F7C7C7C797979797676797C7C7C7F7F81858789898E9292
-9294949494999A9A9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9999949292928F8F8E8E8E8E8E8E8E
-8E8E8F92928F8F929294949494999A9A9C9C9E9EA4A6A6A6A6A9A9ABABAEAEAEB1B1B3B9B9BBBEC1
-C1C1C1C1C0BEBEB9B9B7B6B7B7B7B6B6B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABABABABABABABABABABABABA9A9A9A9A9A9A9
-ABABABABABABABABABABABA9A9A9A9A6A6A6A6A6A6A4A4A19E9C9C9A9994928E89877F7C746C61FF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76818C8F9292928F8E8C8989877F7CFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5C
-81898E929A9C9C9E9EA1A3A4A19E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9C9C9C9E9EA3A3A4A4A4A6A6
-A6A6A6A6A6A6A6A6A4A4A4A4A4A4A3A3A19E9E9C9C9C9C9A9A99949492928E8987847F858992999C
-9EA3A4A9A9ABABA9A6A49E9C94928E877C7F898F9294999C9C9EA1A4A4A4A4A4A3A1A3A4A4A19E9C
-9C9C9C9A99949492899CAEBEC6CFD4D9D9D9D9D9D9DCDFDFE1E4E6E6E7E7E7E7E7E7E6E1DFD9D3CC
-C1B9B1AEA69E94898179726C67615D574F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF6C72747676746A5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF6C89949E9E9E9E9EA4A39E9E9C9C9C9C9C9C9C9C9C9C9C9A9A9A
-999694949492928E8C8989878784817F7F7C7C7C79797676767676797C7C7C7F7F848787898C8F92
-929294949494999A9A9A9A9A9C9C9C9C9A9A9A9A9A9A9A9A999994949492928F8E8E8E8E8E8E8E8E
-8E8E8E8F8F8F8F8F929494949494999A9A9C9C9EA1A4A6A6A6A6A9A9A9ABABAEAEB1B3B6B9B9BBC0
-C0C1C1C1BEBEBBB9B9B7B6B6B6B6B6B3B3B3B1B1B1B1B1B1B1B1B1B1B1AEB1B1B1B1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABABABABABABABABABABABABABABA9A9A9A9
-ABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A49E9E9C9C9A9994928C87847F7C76716A
-61FFFFFFFFFFFFFFFFFFFFFFFFFFFF747C848E949499999994949492928F89847F7C74FFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797F7F7C797976726A665FFFFFFFFFFFFFFFFFFFFF597F85
-8992949A9C9EA1A4A4A4A4A4A4A39E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9EA1A4A4A4A4A4A4A6A6
-A6A6A6A6A6A6A6A4A4A4A4A3A3A1A19E9E9E9C9C9C9A9A9999949494928F8989878481878C929A9C
-9EA3A4A9A9A9A9A6A49E9C99948F898174858C929494999C9C9E9EA1A1A3A39E9E9E9EA1A19E9C9C
-9C9C9C9A9494927C99A6B9C1C9D1D9D9D9D9D9D9DCDCDFDFE1E4E6E7E7E7ECECECECE7E4DFDCD4CC
-C4B9B3AEA6A49A8F877B726C67615F57544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF7274767C7C767472665DFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF89949EA4A39E9EA3A3A19E9E9E9C9C9C9C9C9C9C9C9C9C9C9A9A
-9A9996949494928F8E8C89898785817F7F7F7C7C7976767676767676797C7C7F7F81848789898E92
-929292949494949999999A9A9A9A9C9A9A9A9A9A9A9A9A9A999694949492928F8E8E8E8E8E8E8E8E
-8E8C8E8E8F8F8E8E92929294949494999A9A9C9C9EA3A4A6A6A6A6A6A9A9A9ABAEB1B1B3B7B9BBBE
-BEBEBEC0BEBBB9B9B9B6B6B6B6B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1AEAEAEB1B1B1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEABABA9A9ABABABABABABABABABABABABABABABABABABABABABABABABABABABA9
-ABABABABABABABABABABABABABABA9A6A6A6A6A6A6A6A4A4A19E9E9C9C9A94928F898787817C7974
-6C6A61FFFFFFFFFFFFFFFFFFFF6A79878C929A9C9C9E9E9E9C9C9C9A9A96928E8987817C76FFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF767C8187898787878987847F7C74726C6A6A5757767C7F87898E
-92999C9E9E9EA3A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9C9C9C9C9C9E9E9EA1A4A4A4A4A4A4A6A6A6
-A6A6A6A6A6A6A6A4A4A3A3A19E9E9E9E9E9C9C9A9A9A9999949494928F8C8989878484898F949A9C
-9EA1A4A6A6A6A6A49E9C9A94928C877C7F878E9294999A9A9C9C9E9E9E9E9E9E9E9E9E9E9E9E9C9C
-9C9A9A9494928F8EA4B1C1C4CCD1D9D9D9D9D9D9D9DCDFDFE1E4E6E7E7ECECECECECECE6E1DCD9CF
-C6BEB7B1A9A49C92897F726C67615F57554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF72747C7C79767674726C6159FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF89949A9EA3A3A4A3A4A39E9E9E9E9E9C9C9C9C9E9E9C9C9C9C9C9A
-9A9A9996949492928F8E8C89878784817F7F7C7C7976767676767476797C7C7C7F7F818587898C8F
-92929292949494949496999A9A9A9A9A9A9A9A9A9A9A9A9996949494949292928E8E8E8E8E8E8E8E
-8C898C8E8F8E8E8E8F929292929294949A9A9A9C9C9EA4A4A4A6A6A6A6A6A9ABAEAEB1B1B3B7B9BB
-BBBBBEBEBBB9B9B9B7B6B3B6B3B3B3B3B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEABABA9A9A9A9A9A9ABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A39E9E9C9C9A9994928F8C8987817F7C
-7976746C6A67676666676C727C858E94999C9E9EA1A4A4A4A4A4A4A19E9E9C9994928C87847C7672
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF7C8187898E9292928F8C8C89878484817F7F7F7F7F8487898F9494
-999C9C9E9EA1A3A4A4A4A4A4A6A4A4A3A19E9E9EA19E9E9E9E9E9E9E9EA1A4A4A4A4A4A4A6A6A6A6
-A6A6A6A6A6A6A6A4A4A39E9E9E9E9E9E9C9C9A9A9A999694949492928E8989878785878992949C9C
-9EA1A4A4A4A4A49E9C9A94928F89817481898F9494999A9A9C9C9C9E9E9E9E9C9C9C9C9E9C9C9C9A
-9A9A969492927C9CABB7C6C6CCD3D9D9D9D9D9D9D9DCDFDFE1E4E6E7E7ECECECECECECE6E1DFD9D1
-C6BEB9B1ACA69E948C81766C67615F5957544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF6C74767C7976767676747272675F57FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF8F949C9E9EA1A3A3A3A19E9E9E9E9E9E9C9C9C9E9E9E9C9C9C9C9C
-9A9A9A99969494928F8F8E8C898785817F7F7C7C797676767474747676797C7C7C7F7F848787898E
-8F929292949494949494999A9A9A9A9A9A9A9A9A9A9A9A9994949494949292928F8E8E8E8E8E8E8C
-8C89898C8E8E8E8E8E8F929292929494999A9A9A9C9E9EA3A4A4A6A6A6A6A6A9ABAEAEB1B1B6B9B9
-B9BBBBBBBBB9B9B9B7B6B3B3B3B3B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEABA9A9A9A9A9A9A9A9A9A9A9A9A9ABABABABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A39E9E9E9C9C9A9494928F8C89878781
-7F7F7C7C7C7C7C7C7F7F7F87899294999C9E9EA1A4A4A4A4A4A4A4A4A4A4A4A39E9C99948F89847F
-79726CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF81878C9292929494949292928F89898989898989898C8F929494999A
-9A9C9E9E9EA1A4A4A6A6A6A6A6A6A4A4A4A3A4A4A4A4A39E9E9EA1A3A3A4A4A4A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A4A4A4A19E9E9E9E9E9C9C9C9A99999494949492928F8E8989878787898E92999C9C
-9CA1A4A4A4A49E9C9C9994928C877C7F878C929494999A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A
-9A999492927294A1AEBEC6C6CCD3D4D7D7D7D9D9D9DCDFDFE1E4E7E7ECECECECECECECE7E4DFD9D3
-CCC1B9B3AEA6A1998F877B6C67615F5C57554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF676A6A7276797676747674747474726C665F54FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF8992999E9E9E9E9EA1A39E9E9E9E9E9E9E9E9C9E9E9E9E9E9C9C9C9C
-9C9A9A9A99969492928F8F8E898987847F7F7F7C7C767674747474747676797C7C7F7F818587898C
-8F8F9292949494949494999A9A9A9A9A9A9A9A9A9A9A9A999494949494949292928F8E8E8E8E8E8E
-898989898C8E8E8E8E8E8F8F8F92929494999A9A9C9C9E9EA3A4A6A6A6A6A6A9A9AEAEAEB1B3B6B9
-B9B9B9B9B9B9B9B7B6B6B3B3B3B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEABAEAEABABABABABAEAE
-AEAEAEAEABABA9A9A9A6A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9ABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A4A19E9E9C9C9C9A9494928F8C898989
-8785848481818484858787899294999A9C9EA3A4A4A4A6A6A6A6A6A6A4A4A4A4A4A4A39E9C96928C
-87817C746E67FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF7F8E9292949494949494949494949494929292929292929494999A9C9C
-9C9EA1A1A1A3A4A4A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A3A3A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A4A4A4A4A39E9E9E9E9C9C9C9C9A9A99949494949292928E8C89898787878C8F949A9A9C
-9C9EA3A19E9E9C9C9A94928E89817484898E92949496999A9A9C9C9C9C9C9C9C9C9C9C9A9A9A9A99
-999492928C8C9EA9B4C4C8C8CCD3D4D4D4D4D9D9D9DCDFDFE1E4E7E7ECECECECECECECE7E4E1DCD4
-CCC6BBB7B1A9A49C92897F7267615F5C5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FF6A6C727272727274747474747472727474747472716A615CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF818F949A9E9E9E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C
-9C9C9A9A9A99949492928F8F8C898787817F7F7C7C797674747474747476797C7C7C7F7F84878789
-8E8F9292929494949494999A9A9A9A9A9A9A9A9A9A9A9A99949494949494929292928F8F8E8E8E8E
-89898989898C8E8E8E8E8E8E8F9292949494999A9C9C9C9E9EA4A4A4A6A6A6A9A9ABAEAEB1B1B3B6
-B9B9B9B9B9B9B7B6B6B3B3B3B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEABABABABA9A9A9A9A9A9A9AB
-AEAEAEABABA9A9A9A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9ABABABABABABABABABABAB
-ABABABABABABABABABABABABABABABA9A6A6A6A6A6A6A6A4A4A19E9E9C9C9C9A9A949492928F8E8C
-8989898989898989898E8F92949A9C9C9EA3A4A4A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A49E9E9C9C
-94928987817C726A61FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF677F92929494949499999A9A9A9A9999969494949494949494999A9C9C9E9E
-9E9EA3A3A4A4A4A4A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A4A4A4A4A4A4A19E9E9C9C9C9C9C9C9A99949494929292928F8E8C89898787898E92949A9A9C
-9C9E9E9E9E9C9C9A94928F89877C7F87898F9294949499999A9A9A9A9A9C9C9C9A9A9A9A9A999996
-9494928E8799A6AEBCC6CCC9CFD4D4D4D4D4D9D9D9DCDFDFE1E4E7ECECECECECECECECECE6E1DFD9
-CFC6BEB9B1ABA69C948F87766A615F5D5757554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72
-767F7C7C7C7C7C767474727272726E6C7272727472726C6A6157FFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF6C8992949C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C
-9C9C9C9A9A9A99949292928F8E898987847F7F7C7C79767474747474747676797C7C7F7F81858789
-8C8E8F9292949494949494999A9A9A9A9A9A9A9A9A9A9A9999949494949492929292928F8E8E8E8E
-8C89898989898C8E8E8E8E8E8F9292929494999A9A9C9C9E9EA1A4A4A4A6A6A6A9A9ABAEAEB1B1B3
-B6B7B9B9B9B7B6B3B3B3B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEABABABA9A9A9A9A9A9A9A6A6A6A9
-A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A9A9ABABABABABABABABABAB
-ABABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A39E9E9C9C9C9C9A99949494929292
-8F8E8E8F8F8F9292929494999A9C9E9EA4A4A4A6A6A6A6A9A9A9A6A6A6A6A6A6A6A6A6A4A4A19E9E
-9C9C9A99949289857F766C675FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFF74899294949499999A9A9A9C9C9C9C9C9A9A9A999A9A9A9A9A9A9C9C9E9EA3A4
-A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A4A4A4A4A4A6A6A6A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A4A4A4A4A4A39E9E9E9C9C9C9C9C9A9A99949492929292928F8E8C8C8987898C8F92999A9A9A
-9C9E9E9C9C9C9A9994928E8981748587898F929494949699999999999A9A9A9A9A9A9A9999969494
-94928F7C92A4AEB7BFCCCCCCCFD4D4D4D4D4D9D9D9DCDFDFE1E4E7ECECECECEEEEECECECE6E1DFD9
-D1C8C1B9B3AEA69E9A92897F6C615F5C575755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C81
-8787878785847F7C79747472716C6C6A6C6C71727272716C675F54FFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF7F8E92949A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C
-9C9C9C9C9A9A9A94949292928F8C898787817F7C7C7C76767474747474747676797C7F7F81848787
-898E8F9292949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A99969494949292929292928F8E8E8E
-8C8989898989898C8E8E8E8E8E9292929494969A9A9C9C9C9E9EA3A4A4A6A6A6A9A9ABAEAEAEB1B1
-B3B6B6B7B7B6B3B3B3B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEABABABA9A9A9A9A9A6A6A6A6A6A6A6A6
-A6A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9ABABABABABABABABABAB
-ABABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A39E9E9E9C9C9C9C9A999994949494
-929292929292929494969A9C9C9E9EA4A4A4A6A6A6A6A9A9A9A9A9A9A9A9A6A6A6A6A6A6A4A4A4A1
-9E9C9C9C9A99949492928E877F79726C61FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF5D7F878E9494999A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9EA3A4A4A4
-A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A4A4A4A4A3A39E9E9C9C9C9C9C9A9A99949494929292928F8F8E8E898989898E9294999A9A9A
-9C9C9C9C9C9A9A94928F89877C7F8787898F9292949494999694949499999A9A9999999694949494
-928F89899CAEB6BEC6CFCFCFCFD3D3D3D4D4D4D9D9DCDFDFE1E4E7ECECECEEEEEEEEECECE7E4E1D9
-D3CCC4BBB6AEA6A39C948E8774665D57575555544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF848789
-8C8C89898987847F7C7974726E6C6A676A6A6C72727272716A6157FFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF7C898C9294949A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9EA39E9E9E9E9E
-9C9C9C9C9C9A9A9994949292928E89898785817F7C7C79767474747474747476767C7C7F7F818587
-898E8F9292949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A999994949492929292928F8E8E8E
-8E898989898989898C8E8E8E8E8F9292949494999A9C9C9C9E9EA1A4A4A6A6A6A9A9ABAEAEAEAEB1
-B1B3B3B6B6B3B3B1B1B1B1B1B1B1AEAEAEAEAEAEAEABABABABA9A9A9A9A9A6A6A6A6A6A6A6A4A4A6
-A6A6A6A6A6A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9ABABABABABABABABABAB
-ABABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A4A19E9E9E9C9C9C9C9A9A9A999994
-94949494949494969A9A9C9E9E9EA3A4A4A6A6A6A6A9A9A9ABABABA9A9A9A9A9A9A9A6A6A6A6A6A4
-A39E9E9C9C9C9A9A94949492928F8C89877F746C675FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFF5C7F8487899294999A9C9C9C9C9C9E9E9E9E9E9E9E9E9C9E9E9E9E9E9E9E9EA3A4A4A4A4
-A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A4A4A3A3A1A19E9E9E9C9C9C9A9A9A9A99949492929292928F8F8F8E8989898E8F929499999A9A
-9A9C9C9C9A999494928C898176848789898E92929494949494949494949494999494949494949292
-8F8C8794A6B6BEC4CCD1CFCFCFD3D3D3D3D4D4D9D9DCDFDFE1E6E7ECECECEEF1F1EEEEECE7E6E1DF
-D4CFC4BBB3AEA6A49C9492897F6C5F57575555554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF879294
-949292928E898785817C76746C6A6766676A6C6C727272726C675F54FFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFF768789898E929494999A9A9C9C9E9E9E9E9E9E9E9E9E9E9E9EA1A3A19E9E9E9E
-9E9C9C9C9C9C9A9A9994949292928E8C8987847F7C7C7976747474747474747476767C7F7F818487
-898C8F9292929494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949492929292928F8E8E8E
-8E89898989898989898C8E8E8E8F9292949494999A9A9C9C9E9EA1A4A4A4A6A6A9A9ABAEAEAEAEB1
-B1B1B1B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEABABA9A9A9A9A9A6A6A6A6A6A6A6A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9ABABABABABABABABAB
-ABABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A6A4A4A19E9E9E9E9E9C9C9C9C9C9A9A9A
-9999969999999A9A9C9C9E9E9EA3A4A6A6A6A6A6A6A9A9ABABABABABABABABA9A9A9A9A9A6A6A6A6
-A4A4A39E9E9E9C9C9C9A9A969494928F8E8C89898787857F766C5757FFFFFFFFFFFFFFFFFFFFFFFF
-FF5C7C7F8187898F9294999A9C9C9C9C9C9E9E9E9EA1A3A19E9E9E9E9E9E9EA1A1A3A3A4A4A4A4A4
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A4A4A3A19E9E9E9E9E9C9C9C9A9A9A99999494949292929292928F8F8C89898C8F9292949999999A
-9A9A9A9A999494928F89877C7F848789898E92929494949494949492949494949494949292928F8E
-897294A4B1B9BEC6CFCFD1D1D1D1D1D3D3D4D4D9D9DCDFE1E1E6E7ECECEEF1F2F2F1EEECECE6E1DF
-D4CCC1BBB3AEA6A49E99928E8974615757555554514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF848C949A
-99999994928E8987847F7C74716A66616166676C6E727272726A6659FFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFF81878989898F929294999A9A9C9C9C9E9E9E9E9E9E9E9E9E9EA3A4A3A19E9E9E
-9E9E9E9E9E9C9C9C9A9994949292928E898785817F7C7976767474747474747474767C7C7F818487
-898C8E8F9292949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A96949492929292928F8E8E8E
-8C8C89898989898989898C8E8E8F9292929494999A9A9C9C9E9E9EA3A4A4A6A6A6A9ABAEAEAEAEAE
-B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEABABA9A9A9A9A9A6A6A6A6A6A6A6A4A4A4A4A4A3A3A3
-A4A4A4A3A39E9E9E9EA1A3A3A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9ABABABABABABABABAB
-ABABABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A39E9E9E9E9E9E9E9C9C9C9C9C9A
-9A9A9A9A9A9C9C9C9E9EA3A4A4A4A6A6A6A6A9A9A9A9A9ABABABABABABABABABABABABA9A9A9A9A9
-A6A6A4A4A3A3A19E9E9E9C9C9A9994949492928F8C89898989878784817F7F7C7C7C797676797B7C
-7C818787898F929494999A9C9C9C9C9C9E9EA3A4A4A4A4A4A39EA1A1A3A3A4A4A4A4A4A4A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4
-A4A39E9E9E9E9E9E9E9C9C9C9A999994949494929292929292928F8E8989898E8F9292949499999A
-9A9A9A999494928F8C877F7981858989898E9292929494949292929292929294929292928F8E8C89
-87929EABB7B9BEC6CFCFCFCFCFD1D1D1D1D3D4D9D9DCDFE1E1E6E7ECECEEF1F2F2F1EEEEECE6E1DC
-D4CCC1BBB3AEA6A49E9A9492897F6C5C55555554544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C87929A9C
-9C9C9C9A94928E8987847F76726A61615F61666A6C727272726C6A6154FFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF7C81878789898E8F929494969A9A9C9C9E9E9E9E9E9E9E9E9EA1A3A4A4A3A19E9E
-9E9E9E9E9E9E9C9C9C9A9994949292928E8987847F7F7C7676747474747474747476767C7F818487
-87898E8F9292949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494929292928F8F8E8E8C
-8C898989898989898989898C8E8E8F9292949496999A9A9C9C9E9EA3A4A4A6A6A6A9A9ABABAEAEAE
-AEB1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEABABA9A9A9A9A6A6A6A6A6A6A6A4A4A4A4A4A3A19E9EA1
-A1A3A19E9E9E9E9E9E9E9E9E9E9EA1A4A4A4A4A4A6A6A6A6A6A6A6A6A6A9A9ABABABABABABABABAB
-ABABABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A3A19E9E9E9E9E9E9E9E9E9C9C9C
-9C9C9C9C9C9C9C9C9EA3A4A4A6A6A6A6A6A9A9A9A9A9ABABABABABABABABABABABABABABABABABAB
-A9A6A6A6A6A4A4A4A4A4A39E9E9C9C9A9A9A9994949292928F8E8989898987878787848184848787
-898C8F92929494999A9A9C9C9C9C9C9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4
-A39E9E9E9E9E9E9C9C9C9C9A9A999494949494929292929292928F8C89898E8F9292949494969999
-9A9999949494928E89857C7C81878989898E9292929492929292929292929292928F8E8E89898987
-7F9AA4AEB9B9C1C6CFCFCFCFCFCFCFCFD1D3D4D9D9DCDFE1E1E6E7ECEEF1F2F2F2F2F1EEECE6E1D9
-D4CCC1B9B3AEA6A49E9C96928E89766157545554514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF848E999C9E
-9E9E9E9C9A94928E89877F7C746C665F5D5F61676C6C727272726C6759FFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF6A7F8184878789898F9292949494999A9C9C9E9E9E9E9E9E9E9EA3A4A4A4A4A3A19E
-9E9EA1A1A19E9E9C9C9C9A9994949492928C8985817F7C7976747474747474747474767C7C7F8185
-87898E8F9292929494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949492928F8F8E8E8E8C
-8989898989898989898989898C8E8E8F9292949499999A9C9C9E9EA1A4A4A4A6A6A6A9ABABABABAE
-AEAEAEB1B1B1B1B1AEAEB1B1B1AEAEAEAEABA9A9A9A6A6A6A6A6A6A6A4A4A4A4A4A3A19E9E9E9E9E
-9E9E9E9E9E9C9C9C9C9E9E9E9E9E9EA1A4A4A4A4A4A4A4A6A6A6A6A6A6A9A9ABABABABABABABABAB
-ABABABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A4A3A3A19E9E9E9E9E9E9E9E9E9E
-9C9C9E9E9E9E9E9E9EA4A4A4A6A6A6A6A9A9A9A9A9A9ABABABABABABABABABABABABABABABABABAB
-A9A9A6A6A6A6A6A6A6A6A6A4A4A39E9E9E9E9C9C9A9A9994949492929292928F8F8F8E8E8F8F9292
-929294949494999A9C9C9C9C9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A3A3A1
-9E9E9E9E9E9C9C9C9C9C9C9A99949494949292929292929292928E8C8C8C8F929292949494949999
-9994949494928F89877F767F87898989898F92929292929292928F8F8F8F8F8E8E8C89898987876A
-949CABB6B9B9C1C8CCCCCCCFCFCFCFCFCFD3D4D9D9DCDFE1E1E6E7ECEEF1F2F2F2F2EEECE7E4DFD9
-D3C8C1B9B3AEA9A49E9E9A94928E816C5D5454554F514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C89949C9EA3
-A4A4A19E9C9A94928E89857F7672675F5C575F616A6C727272726E6A6154FFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF7C7F7F81848787898E8F92949494949A9C9C9C9E9E9E9E9E9EA1A3A4A4A4A4A4A3A3
-A3A3A3A3A4A19E9E9C9C9C9A99949494928F8987847F7F7C7674747474747474747476797C7F8184
-8789898F9292929494949494969A9A9A9A9A9A9A9A9A9A9A9A9A9A999994949492928F8E8E8E8E8C
-898989898989898989898989898C8E8E8F9294949496999A9C9C9EA1A4A4A4A4A6A6A9A9A9ABABAE
-AEAEAEAEAEB1AEAEAEAEAEB1B1AEAEAEAEABA9A9A6A6A6A6A6A4A4A4A4A4A3A39E9E9E9E9E9E9E9E
-9E9E9E9C9C9C9C9C9C9C9E9E9E9E9E9EA1A4A4A4A4A4A4A6A6A6A6A6A6A6A9A9ABABABABABABABAB
-ABABABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A6A4A4A4A4A3A3A1A19E9E9E9E9E9E9E
-9E9E9E9EA19E9E9EA3A4A4A4A6A6A6A6A9A9ABABABABABABABABABABABABABABABABABABABABABAB
-A9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A39E9E9C9C9C9A9A9A9A9A9A9A9994949494949494
-949499999A9A9C9C9C9C9E9E9E9E9E9EA1A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A19E9E9E
-9E9E9C9C9C9C9C9C9C9C9A9A999494929292929292929292928F8E8E8C8F92929292949494949499
-9494949492928C8984797C81878787898C8F8F929292928F8F8F8E8E8E8C8C898989878785817F8F
-9CA4AEB9BEBEC1C8CCCCCCCCCFCFCFCFCFD3D4D9D9DCDFE1E1E6E9ECEEF1F2F2F2F1EEECE7E1DFD9
-D1C8C1B9B1AEA9A49E9E9C969492897666574F51514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85929A9EA4A6
-A6A6A4A4A19C9C96928E89817C746A5F5C57595F666A6E727474726C675CFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFF767C7C7C7C7F858789898E9292949494999A9C9C9C9E9E9E9E9EA3A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A19E9E9C9C9C9A99949492928C8785817F7C7976747474747474747476767C7C7F81
-8787898E8F929294949494949499999A9A9A9A9A9A999A9A9A9A9999949494949292928F8E8E8E8C
-89898989898989898989898989898C8E8E9292949494969A9A9C9C9EA3A4A4A4A4A6A6A6A9A9A9AB
-ABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABA9A9A6A6A6A6A4A4A4A4A3A19E9E9E9E9E9C9C9C9E9E
-9E9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9EA3A4A4A4A4A4A4A6A6A6A6A6A6A9A9ABABABABABABABAB
-ABABABABABABABABABABABABABABABABABA9A6A6A6A6A6A6A6A4A4A4A4A4A4A4A3A3A1A19E9E9E9E
-9E9EA1A3A4A4A3A1A4A4A4A6A6A6A6A6A9A9ABABABABABABABABABABABABABABABABABABABABABAB
-A9A9A9A9A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A39E9E9E9C9C9C9C9C9C9C9A9A999A9994969999
-9A9A9C9C9C9C9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A19E9E9E9C
-9C9C9C9C9C9C9C9C9A9A9A99949494929292929292929292928E8E8E8E8F92929294949494949494
-94949492928E89877F797F85878789898C8E8F928F8F8F8E8E8E8C8C89898989898787817F7F8799
-A4ABB6C0BEBEC1C8C8C9CCCCCCCFCFCFCFD3D4D7D9DCDFE1E4E6ECECEEF1F2F2F2F1EEECE6E1DED7
-CFC6C1B9B1AEA6A4A19E9C9A949292816C5D544F514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF798E949EA4A6A9
-ABA9A6A6A4A19E9C99928C877F766C615957575C616A6C727272726C6A6154FFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFF74767674767C7F818787898C8F92929494949A9C9C9C9E9E9E9EA1A3A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A19E9E9C9C9C9A999494928E8987847F7F7C7676747474747474747476797C7F7F
-848789898E92929294949494949499999A9A9A9A9999999A9A9A9996949494949292928F8E8E8E8E
-8989898989898989898987898989898C8E8F9292949494999A9A9C9E9EA3A4A4A4A6A6A6A6A6A9A9
-A9ABABAEAEAEAEAEAEAEAEAEAEAEAEAEABA9A9A9A6A6A6A4A4A4A4A39E9E9E9E9E9C9C9C9C9C9C9C
-9C9C9C9C9A9C9C9C9C9C9C9E9E9E9E9E9EA3A4A4A4A4A4A4A6A6A6A6A6A6A9A9ABABABABABABABAB
-ABABABABABABABABABABABABABABABABABA9A9A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A3A3A3A19E9E
-9E9EA3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A9A9ABABABABABABABABABABABABABABABABABABABABAB
-ABA9A9A9A9A9A9A9A9A9A6A6A6A4A4A4A4A4A4A4A4A39E9E9E9C9C9C9C9C9C9C9A9A9A9A9A9A9C9C
-9C9C9C9E9E9E9E9E9E9E9E9E9E9EA1A1A3A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9C9C9C
-9C9C9C9C9C9C9A9A9A9A99999494929292929292929292928F8E8E8E8F9292929292949494949494
-949492928F898781767F8187878789898C8E8E8F8E8E8E8E8E8C8989898989898784817F7C81929E
-A9B1B9C1C1C1C1C6C8C8C8C8CCCCCCCFCFD1D4D4D9DCDFE1E4E7ECECEEF2F2F2F2F1EEECE6E1DCD4
-CFC6C1B9B1AEA6A4A39E9E9C9A94928E7664574F4F4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87949CA4A6ABAE
-AEAEA9A9A6A4A19E9C949289847C74675C5755575F666A6C727272716A6759FFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFF6A74727174767C7F81858789898E9292949494999A9C9C9C9E9E9EA3A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A39E9C9C9C9C9A9994928F898785817F7C7976747474747474747676797C7C7F
-818787898C8F9292929294949494949999999A999994969999999994949494949292928F8F8E8E8E
-8C898989898989898987878789898989898E8F929292949496999A9C9E9EA1A4A4A4A4A6A6A6A6A6
-A6A9A9ABABAEAEAEABABABAEAEAEAEABABA9A9A6A6A6A6A4A4A4A39E9E9E9E9C9C9C9C9C9C9C9C9C
-9C9C9C9A9A9A9A9A9C9C9C9E9E9E9E9E9EA1A4A4A4A4A4A4A6A6A6A6A6A6A9A9ABABABABABABABAB
-ABABABABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A3A3A1
-A1A1A3A4A4A4A4A4A4A4A6A6A6A6A6A6A6A9A9ABABABABABABABABABABABABABABABABABABABABAB
-ABA9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A4A4A4A4A4A39E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9E
-9E9E9E9E9E9E9E9E9E9E9E9EA3A3A3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A19E9E9C9C9C9C
-9C9C9C9C9A9A9A9A999996949494929292929292929292928F8E8E8E8F9292929292929494949494
-949292928C89847C7C7F818787898989898C8E8E8E8E8E8E8E89898989878787847F7F7C7F8E9AA6
-AEB9C1C6C1C1C1C6C6C6C6C8C9CCCCCCCFD1D4D4D9DCDFE1E4E7ECECEEF2F2F2F2F1EEECE4DFD9D4
-CFC6BEB6AEABA6A4A49E9E9E9C9A949284715C544F4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C929AA3A6AEAEB1
-B1AEAEAEA9A6A4A19E9A9492897F766C5F5754575C616A6C717272726C6A6155FFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFF6C6A6C727476797C7C7F848787898C8F92929494999A9C9C9C9E9EA1A3A4A4A4A4A4A4A4A4A4
-A4A6A6A6A6A4A4A4A49E9E9C9C9C9A9994928F898987817F7F7C76767474747474767676767C7C7F
-7F848789898E929292929294949494949499999996949494999994949494949292929292928F8E8E
-8C89898989898989898787878787898989898C8E8F9292929494999A9C9C9E9EA1A4A4A4A4A6A6A4
-A6A6A6A9A9ABABABA9A9A9ABABA9A9A9A9A9A9A6A6A6A6A4A4A4A19E9E9E9C9C9C9C9A9C9C9C9C9C
-9C9C9A9A9A9A9A9A9C9C9C9E9E9E9E9E9EA1A4A4A4A4A4A4A6A6A6A6A6A6A6A9A9ABABABABABABAB
-ABABABA9ABABABABABABABABABABABABA9A9A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A3A3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A9A9ABABABABABABABABABABABABABABABABABABABABAB
-ABA9A9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A4A4A4A39E9E9E9E9E9E9E9C9C9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9EA1A4A4A3A3A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A3A1A1A19E9E9C9C9C9C9C
-9C9A9A9A9A9A99999694949494929292929292929292928F8E8E8E8E8F9292929292929294949492
-9292928E89877F767F7F858789898989898C8E8E8E8E8E8E8C898987878785817F7F7C76899AA4AB
-B4B9C1C4C6C6C6C6C6C6C6C6C8CCCCCCCFD1D3D4D9DCDFE1E4E7ECECF1F2F2F2F1EEECE7E4DFD9D3
-CCC4BCB4AEABA6A4A49E9EA19E9C99948E7C67574F4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87949EA6AEB1B6B6
-B6B1B1AEAEA9A6A4A39E9A948F877F7467575455575F666A6C7272726C6A6759FFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A
-6A6A6C6E7274767C7C7C7C7F84878789898E92929494999A9A9C9C9E9EA3A4A4A4A4A4A4A4A4A4A4
-A6A6A6A6A6A6A4A4A4A39E9E9C9C9C9A9492928C8987847F7F7C7976767474747476767676797C7C
-7F818787898C8F929292929294949494949499999494949494969494949494929292929292928F8F
-8C8989898989898989878787878787878989898C8E8F8F92929494999A9C9C9C9E9EA1A4A4A4A4A4
-A4A6A6A6A6A9ABA9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A4A4A4A39E9E9E9C9C9C9C9A9A9A9A9A9A9C
-9C9C9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9EA3A4A4A4A4A4A4A6A6A6A6A6A6A9A9ABABABABABABAB
-ABABA9A9A9A9A9ABABABABABABABABABA9A9A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A9A9ABABABABABABABABABABABABABABABABABABABABAB
-ABABABABABA9A9A9ABA9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9EA1A3A1A19EA3A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A3A1A19E9E9E9E9E9E9C9C9C9C9A9A
-9A9A9A99999994949494949492929292929292929292928F8E8E8E8E8F8F92929292929292949292
-92928F8987817C7C7F84878789898989898E8E8E8E8E8C8C898989878784817F7F7C6E89949EA9AB
-B4B9C1C1C1C4C4C6C6C6C6C6C8C8CCCCCFD1D3D4D9DCDFE1E4E7ECECF1F2F2F2F1EEECE7E1DFD9CF
-C6C1B9B1AEA9A6A4A49EA1A3A19C9A949285725F544F4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76929CA4ABB1B6B9B9
-B9B6B3B1AEAEA9A6A6A49C9A948C847C6C5F554F555C61676A6E7272716A6A5F55FFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6C72727272
-72727274767C7C7C7C7C7C7F81878787898C92929494999A9A9C9C9E9EA1A4A4A4A4A4A4A4A4A4A4
-A6A6A6A6A6A6A6A4A4A39E9E9C9C9C9A9494928E8987847F7F7C7C79767474747476767676797C7C
-7F7F848789898E8F8F9292929292949494949494949494949494949494949292929292929292928F
-8E89898989898989898787878787878787878789898C8C8E8F92929494999A9C9C9C9C9EA3A3A3A1
-A3A4A4A4A4A6A6A6A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A19E9E9E9C9C9C9C9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9EA3A4A4A4A4A4A4A6A6A6A6A6A6A9A9A9ABABABABABAB
-ABABA9A9A9A9A9A9A9ABABABABABABA9A9A6A6A6A6A4A4A6A6A4A4A4A3A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A9A9ABABABABABABABABABABABABABABABABABABABAB
-ABABABABA9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A19E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A3A1A19E9E9E9E9E9E9E9E9C9C9A9A9A9A9A
-9A999996949494949494929292929292929292929292928E8E8E8E8E8E8F8F929292929292929292
-8F8F8C89847F797C81878789898989898C8E8E8E898989898989878785817F7F7C7484929CA4A9AE
-B6BBC1C1C1C1C1C4C6C6C6C6C6C8C9CCCFCFD3D4D9DCDFE1E4E7ECECF1F2F2F2F1EEECE6E1D9D3CC
-C4BEB7AEAEA9A6A4A4A1A3A4A39C9A94948E7C6A574F4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87949EA9B1B6B9BEBB
-B9B9B7B3B1B1AEA9A6A6A19C9A9489817667575455575F646A6C7271716C6A6759FFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF6A6A6C6C6C74767674747474
-747676797C7C7C7C7C7C7F7F8185878789898F92949496999A9C9C9E9EA1A3A4A4A4A4A4A4A4A4A6
-A6A6A6A6A6A6A6A4A4A39E9E9E9C9C9A9694928E898787817F7C7C7C767674747474767676797C7C
-7F7F81878989898E8F9292929292929494949494949494949494949494949492929292929292928F
-8E8C89898989898989898787858787878787878789898989898E8F9294949499999A9A9C9C9E9E9E
-9E9E9E9EA3A4A4A4A6A6A6A6A6A6A6A4A4A4A4A4A4A3A3A19E9E9E9E9C9C9C9C9A9A99999999999A
-9A9A9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9EA1A3A3A4A4A4A4A6A6A6A6A6A6A9A9A9A9A9ABABABAB
-ABABA9A9A9A9A9A9A9A9A9A9ABABABA9A9A6A6A6A6A4A4A4A4A4A4A4A3A3A3A3A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9ABABABABABABABABABABABABABABABABAB
-ABABABABA9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A39E9E9E9E9EA1A1A39E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A3A4A4A4A4A4A4A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A3A3A1A19E9E9E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9999
-999494949494949492929292929292929292929292928F8E8E8E8E8E8E8E8F8F929292929292928F
-8E8C89877F767C7F858787898989898C8E8E8E8C8989898987878785847F7C79748492969EA9AEAE
-B6BEC0C1C1C1C1C4C4C4C6C6C6C6C8CCCFCFD3D4D9DCDFE1E6E7ECECF1F2F2F2F1EEECE6DFD9CFC6
-C1B9B6AEABA9A6A4A4A3A4A4A19E9A99949284725F544F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E9AA4AEB3B9BEC1C0
-BEBBB9B9B6B1B1AEABA9A6A39C9A92897F715F554F555C61676A6C71716C6C6A5F55FFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72727274767676767676747679
-7C7C7C7C7C7C7C7C7C7F7F7F8184878787898E92929494999A9C9C9E9E9EA1A3A4A4A4A4A4A4A4A6
-A6A6A6A6A6A6A6A6A4A4A19E9E9C9C9A9994928F898987817F7F7C7C797676747474767676767C7C
-7F7F81858789898C8E8F92929292929494949494949494949494949494949492929292929292928F
-8E8C8989898989898989878787878587878585878789898989898C8E92929494949494999A9C9C9C
-9C9C9C9C9E9E9E9EA3A4A4A4A4A4A4A4A4A3A3A19E9E9E9E9E9C9C9C9C9C9C9A9A9A999494969999
-999999999A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9EA1A1A3A4A4A6A6A6A6A6A6A6A9A6A6A9A9A9ABAB
-ABA9A9A9A6A9A9A9A9A9A9A9A9A9A9A9A9A6A6A6A4A4A4A4A4A4A4A3A19EA1A1A3A3A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9ABABABABABABABABABABABABABAB
-ABABABABA9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A3A1A1A3A3A3A3A4A39E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A3A3A3A3A4A4A4A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A3A3A3A3A3A3A1A1A19E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9999999494
-949494949494929292929292929292929292929292928F8E8E8E8E8E8E8E8E8F8F8F929292928F8E
-8C898781767C7F84878789898989898E8E8E8C8989878787878785817F7C79747F8E969CA4AEAEB1
-B6BEBEC1C1C1C1C1C1C4C4C6C6C6C8CCCFCFD3D4D9DCDFE1E6E7ECECF1F2F2F2F1EEE7E1DCD4CCC6
-BEB9B1AEA9A6A6A4A3A4A4A49E9E9C9A9492897666594F4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85949EA9B1B9BBC1C1C1
-C0BEBEB9B9B7B1B1AEABA9A49E9C9992897C6A594F54575F616A6C6E6E6E6C6A6759FFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72747476797676767676767679767C
-7F7F7C7C7C7C7C7F7F7F7F7F8184858787898C8F92949496999A9C9C9E9E9EA3A4A4A4A4A4A4A4A6
-A6A6A6A6A6A6A6A6A4A4A19E9E9C9C9C9A9492928C8987847F7F7C7C79767676747476767676797C
-7F7F81858789898C8E8F929292929294949494949494949494949494949494929292929292929292
-8F8E89898989898989898987878787858585858787898989898989898C8F92929292929494999A9A
-9A9A9C9C9C9C9C9C9C9E9E9E9E9EA1A19E9E9E9E9E9C9C9C9C9C9C9C9C9A9A9A9A99949494949494
-94949699999999999A9A9C9C9C9E9E9E9E9E9E9E9E9E9EA1A4A4A6A6A6A6A6A6A6A6A6A6A6A9A9A9
-A9A9A9A6A6A6A6A6A9A9A6A6A6A6A9A6A6A6A6A4A4A4A4A4A4A4A4A39E9E9E9E9EA1A1A3A4A4A4A4
-A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A9A9ABABABABABABABABABAB
-ABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A3A4A4A4A4A4A4A39E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A19E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A3A3A3A3A3A3A1A1A1A1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9A9A9994949494
-9494949492929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8F8F8F92928F8E8C
-8987846C797F81878789898989898C8E8E8E8989898787878585847F7C79747C89969CA4A9AEB1B1
-B6BBBEC0C0C1C1C1C1C1C1C6C6C6C6CCCCCFD3D4D9DCDFE1E6E7ECECF1F2F2F1EEECE6DFD9D1C8C1
-B9B6B1AEA9A6A6A4A4A4A4A39E9E9C99948F897F6C59544F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF899AA4AEB7B9BEC4C6C6
-C1C1C0BEBCB9B7B3B1AEABA6A49E9C948F877461554F55595F676A6C6C6C6C6C6A5F55FFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7476797C7C7976767676767676797C7C
-7F7F7F7C7C7C7C7C7F7F7F7F818184878789898F92949494999A9C9C9E9E9EA1A3A4A4A4A4A4A4A6
-A6A6A6A6A6A6A6A6A4A4A39E9E9C9C9C9A9494928E8987857F7F7C79797676767476767676767B7C
-7F7F8185878989898E8F929292929292949494949494949494949494949494949292929292929292
-8F8E8C8989898989898989898787878785858585878789898989898989898C8E8F8F929292949494
-949496999A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A99999999949494949494
-9494949494949699999A9C9C9C9C9C9C9E9E9E9E9E9E9E9EA3A4A4A6A6A6A6A6A6A6A6A6A6A6A6A9
-A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A3A3A3A4A4A3A19E9E9E9E9E9E9EA1A4A4A4A4
-A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A9A9A9A9ABABABABAB
-ABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9E
-9E9E9E9E9E9E9E9E9C9C9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A3A3A3A3A3A1A1
-A1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9A9A9694949494
-94929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8E8C89
-89857F797F81858787898989898C8E8E8E8C89898787858585847F7C79747F89949CA4A6AEB1B1B3
-B7B9BBBEC0C0C1C1C1C1C1C4C6C6C6C8CCCFD1D4D9DCDFE1E6E7ECECF1F2F2EEECECE1DCD7CFC6BE
-B9B1AEAEA9A6A4A4A4A4A4A19E9E9C99928E87817461574F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF81929CA6B1B9BEC1C6C6C6
-C6C4C1C1BEBEB9B7B6B1AEABA6A4A39C948C7F6C5C4F51575D61676C6C6C716C6C6759FFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76797C7C7C7C7C76767676767676797C7C
-7C7F7F7C7C7C7C7C7F7F7F7F7F8184858787898E9292949494999A9C9E9E9E9EA1A3A4A4A4A4A4A6
-A6A6A6A6A6A6A6A4A4A4A39E9E9E9C9C9A9694928F898987817F7C79767676767676767676767C7C
-7F7F8185878789898C8E929292929292949494949494949494949494949494949292929292929292
-8F8E8E8C89898989898989898989878787878585878787878989898989898989898C8E8F8F929292
-92929294949494949494949499999A9A9A9A9A9A9A9A9A9999949494969694949694949494949494
-9494949494949494999A9A9C9C9C9C9C9C9C9E9E9E9E9E9E9EA3A4A4A4A6A6A6A6A4A4A4A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A19EA1A1A1A3A39E9E9E9E9E9E9E9EA1A4A4A4A4
-A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A9A9A9A9A9
-A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E
-9E9E9E9E9E9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A3A3A3A3A3A1A1A19E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A969494949292
-9292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8C8C8E8E8E8E8E8E8989
-877F797F818487878989898C8C8E8E8E8C89898787878585857F7C7976818C949C9EA4A9AEB1B3B6
-B9B9BBBBBEC0C1C1C1C1C1C1C6C6C6C8CCCFD1D4D9D9DFE1E6E7ECECEEF2F1ECECE7DFD9D3CCC1B9
-B6B1AEABA9A6A4A4A4A4A4A19E9C9A94928C87817C7159544F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8794A3ABB6BEC1C6C8C8C8
-C6C6C6C6C1BEBEB9B7B6B1AEA9A6A69E9A92877967574F54575F666A6C6C6E6E6C6C5F55FFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76767C7C7C797C79797976767676767676797C
-7C7C7C7C7C7C7C7C7F7F7F7F7F7F81848787898C8F92929494969A9C9C9E9E9E9EA1A3A4A4A4A4A4
-A6A6A6A6A6A6A6A4A4A4A49E9E9E9C9C9C9A94928F8C8987817F7C79767676767676767676797C7C
-7F7F8185878789898C8E8F9292929292949494949494949494949494949494949292929292929292
-928F8E8E8C898989898989898989898787878785858787878789898989898989898989898C8E8F8F
-8F8F8F92929292929492929292949494949496969494949494949494949494949494949494949494
-9494949494949494999A9A9C9C9C9C9C9C9C9C9C9C9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A6A6
-A6A6A6A6A4A4A6A6A6A6A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4
-A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A9
-A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9E
-9E9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9EA1A19E9EA1A1A19E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A94949292929292
-92929292929292929292929292929292928F8E8E8E8E8E8C8C8E8E8E8E8C89898E8E8E8E8E8C8987
-81797F818487878989898C8E8E8E8E8E89898987878584847F7C7C767F89949C9EA1A6AEB1B1B3B6
-B9B9B9BBBBBEC0C1C1C1C1C1C4C6C6C8CCCFD1D4D9D9DFE1E6E7ECECEEF1EEECECE6DFD9CFC6BEB9
-B3B1AEA9A6A6A4A4A4A4A49E9E9C9A94928987817C7466514F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F8F9CA6AEB9BEC4C8CCCCCC
-CCC8C6C6C6C1BEBBB9B7B3B1AEABA9A49C948C7F725F514F555C61676C6C6C726E6C675C4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76767C7C7C79767679767676767676767676767B
-797C7C7C7C7C7C7C7F7F7F7F7F7F8181858789898E8F929294949A9A9C9C9E9E9E9EA1A3A4A4A4A4
-A4A6A6A6A6A6A4A4A4A4A4A19E9E9C9C9C9A9492928E8987847F7C79767676767676767979797C7C
-7F7F818787878989898E8F9292929292929494949494949494949494949494949292929292929292
-928F8E8E8E8E89898989898989898989878787878785878787878989898989898989898989898C8C
-8C8C8C8C8E8F8F929292929292929292929294949494949494949494949494949494949494949494
-949494949494949494999A9A9A9C9C9C9C9C9C9C9C9C9C9E9E9E9E9EA1A3A4A4A4A4A3A4A4A4A4A4
-A4A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4
-A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9
-A9A9A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A999494929292929292
-9292929292929292929292929292928F8F8E8E8E8E8E8C898C8C8E8E8C89898C8E8E8E8E8E898784
-767F818487878789898C8E8E8E8E8E8C898987878581817F7F7C797C8F949CA4A4A4A9AEB1B1B3B6
-B9B9B9BBBBBBC0C1C1C1C1C1C1C6C6C6C9CCCFD4D9D9DFE1E6E7ECECEEEEECECECE1D9D4CCC4BBB6
-B1AEABA9A6A6A4A4A4A4A39E9E9C9994928987847C746A5E4F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87949EABB6BEC1C6CCCFCFCF
-CCCCCCCCC6C6C1C0BEB9B7B3B1AEAEA9A19A92877C6A574F51575F666A6C6C72726C6C6157FFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C7F7F7C76767676767676767676767474747679
-79797C7C7C7C7C7C7C7F7F7F7F7F7F8184858789898E92929494999A9A9C9C9E9E9E9EA1A3A4A4A4
-A4A4A6A6A6A6A4A4A4A4A4A39E9E9E9C9C9C9994928F8C8987817F7C76767476767679797B7C7C7C
-7F7F848787878989898E8F9292929292929494949494949494949494949494949492929292929292
-928F8E8E8E8E8C898989898989898989898987878787878587878789898989898989898989898989
-898989898C8C8C8E8F8F8F8F8F8F9292929292929292929292929292929292949494949494949494
-949494949494949494999A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9E9E9E9EA1A3A3A1A1A1A3A3A4A4
-A4A4A4A4A4A3A4A4A4A4A3A1A1A3A3A3A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A4A4A4
-A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A39E9E9C9C9C
-9C9C9C9C9C9C9C9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A99999999949492929292929292
-92929292928F8F9292929292928F8F8E8E8E8E8E8E8C898989898C8C8989898E8E8E8E8E89878576
-7F848587878789898C8E8E8E8E8E8E898987878784817F7F7F7C7692999CA3A6A6A6A9AEB1B1B3B6
-B9B9B9BBBBBBC0C1C1C1C1C1C1C4C6C6C8CCCFD3D4D9DFE1E6E7ECECEEECECECE7E1D9D1C8C1B9B3
-B1AEABA9A6A6A4A4A4A4A19E9E9C99928F8987817C746A61544F4F4F4F4F4F4F4F4F4F4F4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B8C99A4AEB9C0C6CCCFCFCFCF
-CFCFCFCFCCC6C6C1C0BBB9B7B1B1AEABA49C94897F7461554F555761676C6C7172716C675D54FFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C7F7F7C7C76747474747676767674747474747676
-767676797C7C7C7C7C7C7F7F7C7F7F8181848787898C8F92929494999A9C9C9C9E9E9E9EA1A3A4A4
-A4A4A4A6A6A4A4A4A4A4A4A39E9E9E9E9C9C9A9492928F8987847F7C767474747676767C7C7C7C7C
-7F7F848787878789898E8F8F92929292929494949494949494949494949494949492929292929292
-928F8E8E8E8E8C898989898989898989898989898787878787878789898989898989898989898989
-89898989898989898C8C8E8E8E8E8F8F8F8F8F929292929292929292929292929292929292949494
-949494949494949494969999999A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9EA1A3A3
-A3A4A4A3A19E9EA1A1A39E9E9E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4
-A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A19E9E9E9E9C9C9C9C
-9C9C9C9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9999999996949494949292928F8F8F9292
-9292928F8F8E8F8F92928F8F8E8E8E8E8E8E8E8E898989898989898989898C8E8E8E8E8C8971767F
-85878787898989898E8E8E8E8E8E8C8989878784817F7F7F7C748E9C9EA4A9A9A9A9AEB1B1B1B3B6
-B9B9B9BBBBBBBEC0C1C1C1C1C1C4C6C6C8CCCFD3D4D9DFE1E6E7ECECECECECECE6DFD4CFC6BEB9B3
-B1AEA9A6A6A4A4A4A4A39E9E9C9A94928E8989847F72675D594F4F4F4F4F4F4F4F4F4F4F4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85929CA6B1BBC1C6CFD1D1D1D3
-D1D1CFCFCCC9C6C4C1BEBBB9B6B1B1ABA69E9A8F85796C5D4F4F555F616A6C717272716C6157FFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C7F7F7C7C7974747474747474747474747474747476
-76767676797C7C7C7C7C7C7C7C7F7F7F8184858789898C8F92929494999A9C9C9E9E9E9E9EA1A3A4
-A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9C9994928F8E89877F7C79767474747676797C7C7C7C
-7F81848787878989898E8F9292929292929494949494949494949494949494949492929292929292
-92928F8E8E8E8E898989898989898989898989898987878787878789898989898989898989898989
-89898989898989898989898C8C8C8E8E8E8E8E8F8F8F8F8F8F8F9292929292929292929292929292
-929494949494949494949494969999999A9A9A9A9A9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9EA1
-A1A3A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A1A3
-A3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A3A3A3A1A19E9E9E9E9E9E9E9E9C9C9C9C9C
-9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A99999999999494949494949492928F8F8E8E8F8F92
-8F8F8F8E8E8E8E8F8F8F8E8E8E8E8E8E8E8E8C89898989898989898989898E8E8E8E8C8974797F85
-878789898989898C8E8E8E8E8E8C8989878785817F7F7F7C748E9C9EA4A6ABAEAEAEAEB1B1B1B3B6
-B9B9B9BBBBBBBBC0C0C1C1C1C1C1C6C6C6CCCFD3D4D9DFE1E6E7E9ECECECECE7E4D9D3CCC6BEB9B1
-AEABA9A6A6A4A4A4A3A19E9E9C9994928989877F76726A5F55514F4F4F4F4F4F4F4F4F4F4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89949CA9B6C1C6CCCFD3D3D3D3
-D3D3D1CFCFCCC8C6C6C1BEB9B7B3B1AEA69E9A94897F746A574F545761676C6E7272726E675F54FF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C7F7F7F7C797674747272727274747474747474747474
-76767676797C79797C7C7C7C7C7C7F7F7F8184858789898E8F92949494999A9C9C9E9E9E9E9EA1A3
-A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9E9C9A9492928F8987817F7C767474747676797C7C7C7C
-7F81848787898989898E929292929292929294949494949494949494949494949492929292929292
-92928F8E8E8E8E8C8989898989898989898989898989898787878789898989898989898989898989
-898989898989898989898989898989898C8C8E8E8E8E8E8E8E8F8F8F8F8F92929292929292929292
-9292929292949494949494949494949999999A9A9A9A9A9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E
-9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1
-A1A3A3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A4A4A4A3A3A3A3A3A3A3A3A3A3A3A3A3A3A39E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A
-9A9A9A9A9A9A9A9A9A9A9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9A9A9A9A9A9A9A9A9C9C9C
-9C9C9A9A9A9A9A9A9A9A9A9A9A999999999999969494949494949494949492928E8E8E8E8E8E8F8F
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898C8E8E8C8989747C7F8587
-89898989898C8E8E8E8E8E8E8E898989878784817F7F7C748E999EA1A6A9AEAEAEAEAEB1B1B1B3B6
-B7B9B9B9BBBBBBBEC0C0C0C1C1C1C4C6C6CCCFD1D4D9DFE1E6E7E7ECECECE7E7E1D9D1C9C1BBB6B1
-AEA9A9A6A6A4A4A4A19E9E9E9C94928E8987817C76716A6157544F4F4F4F4F4F4F4F4F4F4F4FFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F8F99A1AEB9C1C8CFD3D4D4D4D4
-D4D4D3D3CFCFC9C6C6C4C1BEB9B6B1AEA6A19C948E84796C61544F555F616A6E727272726C6157FF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74797C7C7C7C7C797674727272727272727474747474747474
-7676767676797979797C7C7C7C7C7C7F7F7F8184878789898F9292949494999A9C9C9E9E9E9E9EA1
-A3A3A4A4A4A4A4A4A4A4A4A4A3A1A19E9E9E9C9C9994928F8987817F7C76747474747676797C7C7C
-7F81848787898989898E929292929292929294949494949494949494949494949492929292929292
-92928F8E8E8E8E8C8989898989898989898989898989898989878989898989898989898989898989
-89898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292
-9292929292929292949494949494949494969999999A9A9A9A9A9C9C9C9C9C9C9C9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9E9E9E9E9E9E
-9E9EA1A3A3A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A6
-A6A4A4A4A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A
-999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999999999999999A9999999999969499999A9A9A
-9A9A9A9999999A9999999999999996949494949494949494949494929292928E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989898E8E8E8989767C81878989
-89898C8C8E8F8F8F8E8E8E8E8C8989878784817F7F7C7489949CA3A4A6AEAEAEAEAEAEB1B1B1B3B6
-B7B9B9B9B9BBBBBEBEBEC0C0C1C1C1C6C6C9CFD1D4D9DFE1E4E6E7ECECE9E7E6DFD7CFC6C1B9B6B1
-AEA9A6A6A6A4A4A39E9E9E9C9A94928989847F7C79746C6159544F4F4F4F4F4F4F4F4F4F4F4FFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87929AA4B1BEC6CCD1D4D4D4D4D4
-D7D4D4D3D1CFCCC9C8C6C1BEB9B9B3AEA6A39C9992877F746A5C4F545761676C71727272716A5F55
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF7476797C7C7C7C7C767674727272727171727274747474747474
-747676767676767676797C7C7C7C7C7F7F7F8181848787898E9292949494999A9C9C9C9C9E9E9E9E
-9EA3A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9C9A9994928F8987847F7C79747472747476767C7C7C
-7F7F8487878989898C8E929292929292929294949494949494949494949494949292929292929292
-9292928F8E8E8E8E8C8C898989898989898989898989898989898989898989898989898989898989
-8989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292
-92929292929292929292929494949494949494969999999A9A9A9A9A9C9C9C9C9C9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9E9E9E9E
-9E9E9E9EA19EA3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A999999
-999494999A9A9A9A9A9A9A9999999999999999969494949494949494949494949494949494999996
-9494949494949499969494949494949494949494949494929292929292928F8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898C8E8E8C89797F8487898989
-8C8E8E8F8F92928F8E8E8E8E8989878785817F7F7C7487929AA4A4A6A9AEAEAEAEAEAEB1B1B1B3B6
-B7B9B9B9B9B9BBBBBEBEBEBEC0C1C1C4C6C9CFD1D4D9DFE1E4E6E7ECECE7E7E4DCD4CCC6C0B9B3B1
-ABA9A6A6A4A4A3A19E9E9E9C99928F89877F7C7674726C665F54514F4F4F4F4F4F4F4F4F4F4FFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7689949CABB7C6C8CFD3D9D9D9D9D9
-D9D9D7D4D3CFCFCCCCC6C6C1BBB9B3AEA9A49C9A948981796C61574F555D616A6C717272726E645D
-5C4FFFFFFFFFFFFFFFFFFFFFFF727476797C7C7C7C76767474727271716E6E6C7172727272747474
-747476767676767676797C7C7C7C7C7C7F7F7F8184858789898F9292949494999A9C9C9C9E9E9E9E
-9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9C9A9994928F8987857F7C7974747272747476797C7C
-7C7F8487878789898C8F929292929292929292949494949494949494949494929292929292929292
-9292928F8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989898989898989
-8989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292
-929292929292929292929292929294949494949494949999999A9A9A9A9A9C9C9C9E9E9E9E9E9E9E
-9C9E9E9E9E9E9E9E9E9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9E9E
-9E9E9E9E9E9E9E9EA1A3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4
-A4A4A4A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A999999999494
-94949494969999999999999996949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494929292929292929292928F8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898E8E8E897C7F878789898C8E
-8E8F8F929292928F8E8E8E8C8989878784817F7C748492999EA6A6A9AEAEAEAEAEAEAEB1B1B1B1B3
-B7B9B9B9B9B9BBBBBBBBBEBEC0C1C1C1C6C8CCCFD4D9DEE1E4E6E7ECE7E6E6E1D9D3CCC6BEB9B1AE
-A9A9A6A6A4A4A19E9E9E9C9C94928C89817C76726E6C6C675F574F4F4F4F4F4F4F4F4F4F4F4F4FFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF818E99A3AEBEC8CCD1D4D9D9D9D9D9
-D9D9D9D4D4D3CFCFCCCCC6C1BEB9B3AEA9A49E9C948E877F746A5F51545761676C6C727272726A61
-575F5C55FFFFFFFFFFFFFFFF7274747676797C7C767674747472716C6C6C6C6C6C71727272747474
-74747476767676767676797C7C797C7C7C7F7F7F81848787898E9292929494999A9C9C9C9E9E9E9E
-9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A49E9E9C9A9994928F8C89857F7C797472716E72727476797C
-7C7F8184878787898C8F8F9292929292929292949494949494949494949494949292929292929292
-9292928F8E8E8E8E8E8E8E8C8C898989898989898989898989898989898989898989898989898989
-89898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292
-92929292929292929292929292929294949494949494949499999A9A9A9A9A9C9C9C9E9E9E9E9E9E
-9C9C9C9C9C9E9E9E9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C
-9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4
-A4A4A39E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A999999999999969494949494
-94949494949494969494949494949494949494949494949494949494949292929292929292929292
-929292929292949494949494949492929292929292929292928F8F8F8F8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898C8E8E6C7C818789898C8E8E8F
-8F92929292928F8E8E8E8C8989878784817F7C747F92999EA6A9A9AEAEAEAEAEAEAEAEAEB1B1B1B3
-B6B9B9B9B9B9B9BBBBBBBBBBBEC1C1C1C6C6CCCFD3D9DCE1E1E4E6E7E6E4E1DFD9CFC8C1BEB7B1AE
-A9A9A6A6A4A4A19E9E9C9C9A948F89857F676A6C6C67666A5F59514F4F4F4F4F4F4F4F4F4F4F4FFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF87929CA6B4C4CCCFD4D9D9D9D9D9D9
-D9D9D9D9D4D4D3CFCFCCC6C1C0B9B3AEA9A49E9C99928981766C61574F555D616A6C6C7272727267
-5F515F5F5CFFFFFFFFFFFF717272747476767679767474747272726C6C6C6C6C6C6C6E7272727474
-7474747676767676767676797979797C7C7C7F7F81848787898C8F92929494999A9A9C9C9E9E9E9E
-9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9C9A9994928F898987817F7C74726E6C6C7274767679
-7C7C7F81848787898C8E8E8F92929292929292949494949494949494949494949292929292929292
-929292928F8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989898989
-898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292
-92929292929292929292929292929292949494949494949494999A9A9A9A9A9C9C9C9E9E9E9E9E9C
-9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9C9C9C9C9C9C
-9C9C9C9E9C9C9C9C9C9E9E9E9EA1A3A4A4A4A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A4A4A4A3A3A3
-A3A3A19E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9A9999999999999999999694949494949494949494
-94929292949494949494949494949494949494949292929292929292929292929292929292929292
-929292929292929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898E8E747F8487898C8E8F8F8F92
-9292929292928E8E8E8E8989898785817F7C747989999CA4A6A9ABAEAEAEAEAEAEAEAEAEB1B1B1B1
-B3B7B9B9B9B9B9B9BBBBBBBBBEC0C1C1C4C6CCCFD1D4D9DFE1E1E6E6E4E1E1DCD4CFC6C1BBB6B1AE
-A9A6A6A6A4A49E9E9E9C9C99928E87816C747676726A5F61615C554F4F4F4F4F4F4F4F4F4F4F4FFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C89949EACBCC8CFD3D4D9DCDCDCDCDC
-DCDCD9D9D9D4D3D1CFCCC6C1C0B9B3AEA9A6A19C99948C877C746A5F55545761676A6C727272726C
-64595F5F5F5F5C57FFFF6C6A6C6C71727474767676747472727272716C6C6C6C6C6C6C6C71727274
-747474747676747474747676797676797C7C7F7F8184858787898E9292949494999A9C9C9C9E9E9E
-9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9C9A9494928E898987817F7C76746E6A6C6C72747676
-797C7C7F81848787898C8E8E8F8F9292929292949494949494949494949494949292929292929292
-929292928F8F8E8E8E8E8E8F8F8E8E8C8C8C8C8C8E8C8C8989898989898989898989898989898989
-898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8F8F8F8E8F8F92929292929292
-92929292929292929292929292929292949494949494949494999A9A9A9A9A9C9C9C9C9C9E9E9C9C
-9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9C9C9C9A
-9A9C9C9C9C9C9C9C9C9C9C9E9E9E9E9EA1A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E
-9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9A9A999996949494949494949494949494949494949292
-92929292929294949494949494929292929292929292929292929292928F8F8F8F8E8E8E8F8F8F8F
-8F8F8F8F8E8F8F929292929292929292928F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E898989898989898989898989898989898C8E747F85898C8E8F8F92929292
-92929292928F8E8E8E8C89898787847F7C767C89949C9EA6A9A9AEAEAEAEAEAEAEAEAEAEB1B1B1B1
-B1B6B7B9B9B9B9B9B9B9BBBBBBC0C1C1C1C6C8CCCFD4D9DCDFE1E1E4E1E1DFD9D3CCC6BEB9B3B1AB
-A9A6A6A6A4A39E9E9C9C9C9492896A72767F857C746C615F5F5C574F4F4F4F4F4F4F4F4F4F4F4F4F
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF818E9AA4B4C1CFD3D4D9DCDCDEDFDFDF
-DFDFDCD9D9D4D3D1CFCCC6C1BEB9B1AEA9A6A39C9A99928981766C615751555D616A6C6C72727272
-6A61555F5F5F5F5F5D5C5C61676A6C717272747474747472727272726C6C6A6A6A6A6A6C6C6E7272
-747474747474747474747476767676767C7C7F7F7F81858787898C9292949494999A9C9C9C9E9E9E
-9E9EA1A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9C9A9492928C898787817F7C7674716C6A6C6C727476
-76797C7C7F81848789898C8C8E8F9292929292929494949494949494949494949494929292929292
-9292929292928F8F8E8E8F8F8F8F8E8F8F8F8F8F8F8E8E8C8C8989898C8C8C8C8C89898989898989
-8C8989898989898989898C8C8989898C8E8F8F8E8E8E8E8E8E8E8F9292928F8F9292929292929292
-9292929292929292929292929292929294949494949494949494999A9A9A9A9A9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9A9A9A9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A
-9A9A9A9C9C9A9A9A9C9C9C9C9C9C9E9E9E9E9EA1A3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9E9E
-9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9A9A96949494949494949494949494949494929292929292
-9292929292929492929292929292929292929292929292928F8E8E8E8C8C8C89898989898C8E8E8E
-8E8E8E8C8C8C8E8F8F9292928F8F8F8F8F8E8E8E8E8C8C8E8E8E8E8E8E8E8C8C8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898E6A7F87898E8F8F929292929292
-92929292928F8F8E8E89898787817F7C767C89949C9EA4A9A9ABAEAEAEAEAEAEAEAEAEAEB1B1AEB1
-B1B3B6B6B9B9B9B9B9B9B9BBBBBEC0C1C1C6C8CCCFD3D9D9DFDFE1E1DFDFD9D4D1C8C1BEB9B3AEA9
-A9A6A6A4A4A19E9E9C9C9A948F6C747C7F87847F746C675F5F5D57544F4F4F4F4F4F4F4F4F4F4F4F
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7487929CABB7C6D3D4D9DCDFDFDFDFDFDF
-DFDFDCD9D9D4D3D1CFCCC6C1BEB9B1AEA9A6A49E9C9A948C877F746A5F554F575F666A6C72727474
-6E675F5F6161616161615F5F61676A6C71727272727472727171716E6E6C6A6A6A6A6A6A6C6C7172
-72747474747474747474747476767676797C7C7F7F8184878789898F92929494999A9C9C9C9E9E9E
-9E9EA1A4A4A4A4A4A4A4A4A4A4A4A19E9E9C9C9A9694928E898787817F7C7674726C6A6A6C6C7274
-7676797C7C7F8187878989898C8F9292929292929294949494949494949494949494949292929292
-929292929292928F8F8F8F929292929292929292928F8F8E8E8E8E8E8E8F8F8F8E8C8C898C8C8C8E
-8E8E8C8C89898C8C8E8E8E8E8E8E8C8E8F8F928F929292928F8F9292929292929292929494929292
-9292929292929292929292929292929292949494949494949494999A9A9A9A9A9C9A9A9A9C9C9C9C
-9A9A9A9A9A9A9A9C9C9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A99999A9A9A9999
-9499999A9A9A99999A9A9A9C9C9C9C9C9C9E9E9E9E9E9E9EA1A3A4A4A4A4A4A4A4A3A19E9E9E9E9E
-9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A999694949494949494949494949292929292929292929292
-928F8F929292929292929292929292929292928F8F8F8F8E8C898989898989898987898989898989
-898989898989898C8C8E8F8E8E8E8E8E8C8C8C8989898C8E8E8E8E8C8C8989898C8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E898989898989898989898989898989898C767F87898C8F9292929292929292
-9292929292928F8E8C898987817F7C767F89929C9EA3A6A9ABABAEAEAEAEAEAEAEAEAEAEB1AEAEAE
-B1B1B3B3B6B7B9B9B9B9B9BBBBBBC0C1C1C4C6C9CCD1D4D9DCDFDFDFDFDCD9D3CFC6C1B9B6B1AEA9
-A9A6A6A4A4A19E9C9C9C99926C747C848787847F76716A615F5F57554F4F4F4F4F4F4F4F4F4F4F4F
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C8994A4AEBECCD4D9D9DFDFDFDFDFDFDF
-DFDFDCD9D9D4D3D1CFCCC6C1BEB9B1AEA9A6A49E9C9C999289847C72675D55555C61676A6C727474
-746C665961616161616161616166676A6C6C7172727272716E6C6C6C6C6C6C6A6A6A6A6A6A6C6C71
-7274747474747474747474747676767676797C7F7F8184878787898F92929494999A9A9C9C9E9E9E
-9E9E9EA3A3A4A4A4A4A4A4A4A4A3A19E9E9C9C9A9994928F8C8987847F7C7974726C6A6A6A6C6C72
-7476767B7C7F7F84878789898C8E8F92929292929292929494949494949494949494949494929292
-929292929292929292929292929292929292929292928F8F8F8F8F9292929292928F8E8E8E8F8F8F
-92928F8F8E8E8E8F8F929292928F8F8F8F9292929292929292929292929292929292949494949494
-9292929292929292929292929292929292929494949494949494999994999A9A9A9A99999A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A99969999999994
-94949494999494949499999A9A9A9C9C9C9C9C9C9C9C9C9C9E9E9E9E9EA1A1A3A39E9E9E9E9E9E9E
-9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A99949494949492929292929292929292929292928F8F8F8F
-8E8E8F8F92929292929292928F8F8F8F8F8F8F8E8E8E8E8989898787878787878787878787898989
-898989898989898989898C8C8C8C8989898989898989898C8C89898989898989898C8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8C89898989898989898989898989898C8E767F87898C8F929292929494929292
-9292929292928F8E898987817F7C767F89929A9EA4A6A9ABABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEB1B1B1B3B3B6B7B9B9B9B9BBBBBEC0C1C1C6C8CCCFD3D4D9DCDCDCD9D9D4CFCCC6BEB9B3B1AEA9
-A6A6A6A4A49E9E9C9C9C6A72747C84878787817F79726C665F5F5C55544F4F4F4F4F4F4F4F4F4F4F
-4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF818F9CA6B6C4D1D9D9DCDFDFDFDFDFDFDF
-DFDFDCD9D9D4D3D1CFC9C6C1BEB7B1AEA9A6A4A39E9C9A948F877F766C615755575F646A6C727474
-74726A6655616461616161676667676A6C6C6C6E6E6C6C6C6C6C6C6C6C6C6C6A6A6A6A6A6A6A6C6C
-7172747474747474747474747476767676767C7F7F8184878787898E92929494969A9A9C9C9C9E9E
-9E9E9EA1A1A3A4A4A4A4A4A4A4A19E9E9E9E9C9A969492928F898987817F7C74726C6A676A6A6C6E
-727476797C7C7F8185878989898E8F92929292929292929294949494949494949494949494949492
-92929294949292929292929292929292949492929292929292929292929292929292928F92929292
-92929292928F92929292929292929292929292929494949494949494949492929494949494949494
-94949492929292929292929292929292929292929494949494949494949494999999949494999999
-999999999999999A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9A9A9A9A9996949494999494
-94949494949494949494949499999A9A9A9C9C9C9C9A9C9C9C9C9C9C9C9E9E9E9E9E9C9C9C9C9C9C
-9C9C9C9C9C9A9A9999999999999999999694949292929292929292929292928F8F8F8F8F8E8E8E8E
-8C8C8E8F928F8F8F8F8F8F8F8E8E8E8E8E8E8C8C8989898987878787878787878787858587878787
-8787878787878789898989898989898989898989898989898989898989898989898C8E8E8E8E8E8E
-8E8E8E8E8E8E8E8C89898989898989898989898989898C8E7681878C8E9292929294949494949292
-92929292928F8E8C8987817F7C767F89929A9EA4A6A9ABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEB1B1B1B1B3B3B6B7B9B9BBBBBBC0C1C1C6C6C9CFD1D4D9D9D9D9D9D9D3CFC6C1BEB6B1AEABA9
-A6A6A4A4A39E9E9C9C6C72767C8487878785817F7C726C6A615F5D57554F4F4F4F4F4F4F4F4F4F4F
-4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7687949EAEBCC6D4D9D9DFDFDFDFDFDFDFDF
-DFDFDCD9D9D4D3CFCFC9C6C1BEB6AEAEA9A6A4A49E9E9C99928C857C746A5F57515961666C717474
-74746E6A61616666666666676A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A67676A6A6A6A6C
-6C7272747474747272747474747476767676797C7F7F81848787898C9292949494999A9C9C9C9C9E
-9E9E9E9E9EA1A3A3A4A4A4A4A39E9E9E9E9E9C9A99949492928F8C8987817C7674716A67676A6A6C
-717474797C7C7F7F81878789898C8F92929292929292929294949494949494949494949494949494
-92929494949494929494949494929494949494949292929292929292929294949494929292929292
-94949492929292929292949494949492929494949494949494949494949494949494949994949494
-94949494949492929292929292929292929292929292949494949494949494949494949494949494
-949494949699999999999999999A9A9A9A9A9A9A9A9A9A9A9C9C9A9A9A9999999994949494949494
-94949494949494929292949494949499999A9A9A9999999A9A9A9A9C9C9C9C9C9C9C9C9A9A9A9A9A
-9A9A9A9A9A9999999996969494949494949494929292929292928F8F8F8F8F8E8E8E8E8C8C8C8989
-898C8E8E8E8E8E8E8E8E8E8C8C898989898989898787878787858585858585858585858585878787
-878787878787878789898989898989898989898989898989898989898989898989898C8E8E8E8E8E
-8E8E8E8E8E8E8E89898989898989898989898989898E6A7C81878C92929292929494949494949492
-929292928F8E8E8987847F7F767C89929A9EA4A6A9AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAB
-AEAEAEB1B1B1B1B1B3B3B6B9B9BBBBBEC0C1C4C6C8CCCFD3D4D9D9D9D4D4CFC9C6C1B9B3B1AEABA9
-A6A4A4A4A39E9E9C7274767C818787878584817F7C74716C645F5F5755514F4F4F4F4F4F4F4F4F4F
-4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F8999A4B1BECCD9D9DCDFDFDFDFDFDFDFDF
-DFDFDCD9D9D4D3CFCCC8C6C1B9B6AEAEA9A6A6A4A49E9C9A9492897F7671665C55555F616A6C7274
-7474746C6A5F6167676767676A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A6A676A6A6A6A6A
-6C6E72727272727272747474747474767676767C7C7F81818787898C8F92929494999A9C9C9C9C9C
-9C9E9E9E9E9E9EA1A3A3A4A4A19E9E9E9E9E9C9C9A9A99949492928F8E87817C76746C6A67676A6A
-6C7274767C7C7C7F7F858789898C8E8F929292929292929294949494949494949494949494949494
-94949494949494949494949494949494949494949494929294949494949494949494949494949492
-94949494949494949494949494949494949494949494969996949494949494949699999999999994
-94949494949494949292929292929292929292929292929292929292929292929494949292929494
-949494949494949494949496999999999999999A9A9A9A9A9A9A9999949496999494949494949494
-94929292949492929292929292949494949494949494949494949999999A9A9A9A9A9A9A9A9A9A99
-99999999999494949494949494949494949292928F8F8F8F8F8F8E8E8E8E8C8C8C89898989898989
-89898C8C8C8989898989898989898787878787878585848484818184848585858585858585878785
-8585858585878787878787878789898989898989898989898989898989898989898C8E8E8E8E8E8E
-8E8E8E8E8E8E8C8989898989898989898989898C8E767F87898E9292929294949494949494949492
-92928F8F8E8C898784817F767C87949A9EA4A6A9AEAEAEAEAEB1AEAEAEAEAEAEAEAEAEAEABABABAB
-ABAEAEAEAEB1B1B1B1B1B3B6B9B9BBBBBEC1C1C6C6C9CFCFD4D4D4D4D3D1CCC6C1BEB7B1AEAEA9A6
-A6A4A4A3A19E717274797C81878787858481817F7C76726C67615F5957554F4F4F4F4F4F4F4F4F4F
-4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF858F9CA6B6C4D1D9D9DCDFDFE1E1E1E1E1E1
-DFDFDCD9D9D4D3CFCCC6C4BEB9B1AEAEA9A6A6A6A49E9C9A94928C857C726A5F5755575F666C7274
-747474726C6A576467676767676A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A67676A6A6A6A
-6A6C6E72727272727272747474747476767676797C7F7F81848789898F92929294949A9A9A9A9A9C
-9C9C9E9E9E9E9E9E9EA1A3A39E9E9E9E9E9E9C9C9C9C9C9A99949494928E877F7C76726C6A67676A
-6C6C7274767C7C7F7F848789898C8E8F929292929292929294949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494999A99999999969494999A9A9A9A9A9A9999
-99969494949494949494929292929292929292929292929292929292929292929292929292929292
-92929294949494949494949494949494949699999999999999999494949494949494949494949492
-92929292929292929292929292929292929292929292929294949494949494949494949494949494
-9494949494949494949494949494949492928F8F8E8E8E8E8E8C8C8C898989898989898989898987
-8989898989878787878787878787858584848481818181817F7F8181848484848485858585858585
-8585858585858787878787878787898989898989898989898989898989898989898E8E8E8E8E8E8E
-8E8E8E8E8E8C8989898989898989898989898E8E7C8187898F929292949494949496999694949492
-928F8E8E89898785817F767C87929A9EA4A9ABAEAEB1B1AEB1B1AEAEAEAEAEAEAEABAEABABA9A9A9
-A9A9ABAEAEAEAEB1B1B1B1B3B6B9B9BBBBBEC1C1C6C6CCCFD1D3D1CFCFCFC6C4BEB9B6B1AEABA9A6
-A4A4A4A19E727274767C7F8484848584817F7F7F7C76726C6A66615D57554F4F4F4F4F4F4F4F4F4F
-4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C89949EABB9C6D4D9DCDFE1E1E1E1E1E1E1E1
-DFDFD9D9D9D4D1CFC9C6C1BEB7B1AEAEA9A9A6A6A6A39E9C94928E877F746C675F57545C616A7174
-74767676726C66556467676A6A6A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A6767676A6A6A
-6A6C6C6E72727272727272747474747476767676797C7F7F818787898C8E9292929499999A9A9A9A
-9C9C9C9C9E9E9E9E9E9E9EA19E9E9E9E9E9E9E9C9C9E9E9C9C9A9A99949289877F7C74726A6A6767
-6A6C727476797C7F7F81878989898E8F929292929292929292949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949499999A9A9A9A99999999999A9A9A9A9A9A9A9A
-9A999994949494949494949494929292929292928F8F9292928F8F8F8F8F8F929292928F8E8E8F8F
-8F929292949494949494949494949494949494949494969994949494949494949494949292929292
-92929292929292928F8F8F8F8F92929292928F8F8F8F929292929292929294949494949494949494
-94949292929494949494929292929292928F8E8E8C8C8C8989898989898989898989878787878787
-8787878787878585848484848481818181817F7F7F7F7F7F7F7F7F81818181818184858585858585
-85858585858585858585858787898989898989898989898989898989898989898C8E8E8E8E8E8E8E
-8E8E8E8E8E89898989898989898989898C8E767F85898E8F92949494949494949999999994949492
-928F8E89898787847F797C8792999EA4A9AEAEB1B1B1B1B1B1B1B1AEAEAEAEAEAEABABA9A9A9A9A9
-A9A9A9ABABAEAEAEAEB1B1B1B3B6B9B9B9BBBEC1C1C6C6CCCCCFCFCCCCC8C6C1BBB7B1AEAEA9A6A6
-A4A4A371727474767C7F7F81818181817F7F7F7F7C74726E6A67615F5755544F4F4F4F4F4F4F4F4F
-4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF818C99A4AEBECCD9DCDFDFE1E1E1E1E1E1E1E1
-DFDFD9D9D4D3CFCCC6C4C0B9B6AEAEAEA9A9A9A6A6A49E9C99928E878179726A615C55515F676C72
-7476767674726C616166676A6A6A6A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A67676767676A6A
-6A6A6C6C71717171716E72727472727474747474767B7C7F8184878989898E929294949494999999
-9A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA39E9E9C9C9C99928F89847F79746C6A6767
-6A6A6C7274767C7C7F81858789898C8E929292929292929292949494949494949494949494949699
-94949494999996949494949494949494949494949494949494949494949494949494949494949494
-949494949494949494949494949494949494949496999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A969494949494949494949292929292928F8F8E8F8F8F8F8E8E8E8E8E8F8F8F8F8E8E8E8E8E
-8E8E8F9292929292929294949494949494949494949494949494929292949494949292929292928F
-8F8F8F8F9292928F8F8E8E8E8F8F8F8F8F8E8E8C8C8C8E8E8F8F8F8F929292929292929292929292
-929292929292929292929292929292928E8C89898989898989898989898787878787878787878785
-85858585848181818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184858585858585
-858585858585858585858787878989898989898989898989898989898989898C8E8E8E8E8E8E8E8E
-8E8E8E8E8C8989898989898989898C8E747C7F87898F929294949494949499999A9A9A9994949292
-8F8E8C898987857F7C7C878E949EA4A9AEB1B1B1B6B3B1B1B1B1B1AEAEAEAEAEAEABA9A9A9A9A6A6
-A6A6A9A9A9ABABAEAEAEAEB1B1B3B6B9B9B9B9BEBFC1C4C6CCCCC8C6C6C6C1BEB9B3AEAEABA9A6A4
-A46E72727474767C7F7F7F7F817F7F7F7F7F7F7C7C7674716C6A615F5957554F4F4F4F4F4F4F4F4F
-4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7687929CA6B4C1D1DCDFDFE1E1E1E1E1E1E1E1E1
-DFDCD9D9D4D1CFC9C6C1BEB9B1AEAEABA9A9A6A6A4A39E9C99948F89817C746C675F575551616A72
-747676767674726C5F6166676A6A6A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A6767676767676A
-6A6A6A6C6C6E6E6C6C6C6E72727272727274747474767C7C7F8184878789898E9292929494949494
-999A9A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A19E9C9A94928C87817C76726C6A67
-676A6A6C7274797C7F7F848789898C8E8F9292929292929292949494949494949999969494949999
-99949496999A99999494949494949494949494949699949494949494949494949494949494949494
-9494949494949494949494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A999494949494949494949292929292928F8E8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8F929292929292929292929292949494949494949492929292929292929292928F928F8F8E
-8E8E8E8E8F8F8F8F8E8E8C8C8E8E8E8C8C898989898989898C8C8C8C8E8E8E8E8E8F8F8F8F8F8F8F
-8F8E8E8E8F9292929292928F8F8F8E8E898989898989898987878787878787878787858585858585
-8585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818181818181818485858585858585
-858585858585858585878787898989898989898989898989898989898989898E8E8E8E8E8E8E8E8E
-8E8E8E8E8C89898989898989898C727C7F8789898F9292949494969999999A9A9A9A999494949292
-8F8E898987857F7C7C818C949CA4A9AEB1B3B6B7B9B6B3B1B1B1B1AEAEAEAEAEABABA9A9A6A6A6A6
-A6A6A6A6A9A9A9ABABAEAEAEB1B1B3B6B7B9B9B9BEBEC1C4C6C6C6C6C4C1BEB9B6B1AEAEA9A6A6A4
-727274747476797C7C7F7F7F7F7F7F7F7F7C7C7C7C7674726C6A66615D5755514F4F4F4F4F4F4F4F
-4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F89949EABB7C4D3DCDFDFE1E1E1E1E1E1E1E1E1
-DFDCD9D4D3CFCCC6C4C0B9B6B1AEAEA9A9A6A6A4A4A19E9C99948F89847C76726A615D575551676C
-72747676797974726C5F6166676A6A6A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A67676767676767
-6A6A6A6A6C6C6C6C6C6C6C7172727272727274747476767C7F7F8184858787898E92929292929494
-9494999A9A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9EA1A3A4A4A4A4A49E9C99948F89877F7C74726A67
-67676A6A6E74767C7C7F81878789898E8F929292929292929292949494949499999A99999499999A
-9A999699999A9A999994949494949699949494949999999694949494949496999494949494949494
-9494949494949494949494949494949494949499999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999
-9A9A9A99949494949494949494929292929292928F8E8E8E8E8E8E8E8E8E8C898C8C8C8E8E8E8E8E
-8E8E8E8F8F9292929292929292929292929292929292929292929292929292928F8F8E8F8F8F8E8E
-8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989898989898989898989898989898C
-8C8C89898C8E8E8E8E8E8C8C89898989898989878787878787878787878585858585858585858585
-85858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184848484848485858585858585858585
-85858585878787878787878989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8C89898989895F767C818487898E929494949499999A9A9A9A9A9A9A9A999494929292
-8E8C898785817C7C7F89929CA4A6AEB1B3B6B7B9B9B7B6B3B1B1B1AEAEAEAEAEABA9A9A9A6A6A6A6
-A6A6A6A6A6A6A9A9A9ABABAEAEB1B1B3B6B6B6B9B9B9BEBFC1C1C1C1BEBEBBB9B1AEAEABA9A67172
-747476767676797C7C7C7F7F7F7F7F7F7C7C7C7C7C7674726C6A67615F5757544F4F4F4F4F4F4F4F
-4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF848C99A4AEBCC9D9DFDFE1E1E1E1E1E1E1E1E1DF
-DED9D9D4D1CFCCC6C1BBB9B3AEAEABA9A6A6A4A4A49E9C9A99928F89877F76726A665F575755516A
-7174767979797674746A5F6166676A6A6A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A676767676767
-676A6A6A6A6C6C6C6C6C6C6C7172727171717274747476797C7C7F7F81848787898C8E8F8F929294
-949494999A9C9C9C9C9E9E9E9E9E9E9EA3A1A19EA1A4A4A4A4A4A39E9C9A94928C87847C76746E6A
-6767676A6C7274797C7F81848789898C8F8F9292929292929292949494949496999A9A9999999A9A
-9A9A99999A9A9A9A999996949494999999969499999A9A9999969494949499999999969494949494
-94949494949494949494949494949999999494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999999
-99999996949494949494949494929292929292928F8E8E8E8E8E8E8E8E8E8C89898989898C8C8C8C
-8E8E8E8E8E8F8F8F8F8F8F929292929292929292929292928F8F8F8F8F92928F8F8E8E8E8E8E8E8E
-8E8E8E8C898C8C8C8C89898989898989898989898989898989898989898989898787878787878989
-89898989898989898989898989898787878787878787878785858585858585858585858584848481
-818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818485858585858585858585858585858585
-858585878787878787878989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8C8989727C7F8489898C8F9294949499999A9A9A9C9C9C9A9A9A9A9A96949492928F
-8E898785817F7C7F87929AA1A6AEB1B6B7B7B9B9B9B6B6B3B1B1B1AEAEAEAEABABA9A9A6A6A6A6A4
-A4A4A4A6A6A6A6A6A9A9A9ABAEAEB1B1B1B1B3B6B7B9B9BEBEBEBEBEBBB9B9B3B1AEABA9A6727476
-7C7C7C7C7976797C7C7C7F7C7F7F7C7C7C7C7C7C7C7674726E6A67615F5C57554F4F4F4F4F4F4F4F
-4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C87929CA6B1BFCCD9DFE1E1E1E1E1E1E1E1E1E1DF
-DCD9D7D3CFCCC8C4C0BBB7B1AEABA9A6A6A6A4A4A19E9C9A94928F89877F79746C67615C57555566
-6C727479797C7C7674746A5F6166676A6A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A676767676767
-67676A6A6A6A6C6C6C6C6C6C6C716E6E6E6C717272747476797C7C7C7F7F8185878989898C8F9292
-94949494999A9C9C9C9E9E9E9E9E9EA1A4A3A3A3A3A4A4A4A4A4A39E9E9C9A948F89877F7C76726C
-676767676A6C7276797C7F818787898C8E8F8F92929292929292949494949494999A9A9A99999A9A
-9A9A9A9A9A9A9A9A9A9A99999499999A9A9999999A9A9A9A9A9999949499999A9A99999996949494
-9494949494949494949494949499999A9999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494
-9496999494949494949494949292929292929292928F8E8E8E8E8E8E8E8C89898989898989898989
-898C8C8C8C8E8E8E8E8E8E8F8F8F8F8F9292929292928F8E8E8E8E8E8E8F8F8F8E8E8E8E8E8E8E8E
-8E8E8C89898989898989898989898989898989898987878787878787878787878785878787878787
-89898989898787878787878787878787878787878584858585858585858585848484818181817F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818181818485858585858585858585858585858585
-8585878787878989898989898989898989898989898C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E6E767F8789898F8F9292949494999A9A9A9C9C9C9C9C9C9C9A9A9A9994949492928E
-898784817F7C7F878F9A9EA6ABAEB6B9B9B9B9B9B9B6B3B3B1B1B1AEAEAEAEABA9A9A9A6A6A6A6A4
-A4A4A4A4A4A6A6A6A6A6A9A9A9AEAEB1B1B1B1B1B6B6B7B9B9B9B9B9B9B7B6B1AEABA97274767C7F
-81817F7C7C76767C7C7C7C7C7C7C7C7C7C7C7C7C7C767472716C6A61615D5755544F4F4F4F4F4F4F
-4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F89929EA9B7C4D1DFDFE1E1E1E1E1E1E1E1E1E1DF
-D9D9D4D1CFCCC6C1BBB9B3AEABA9A9A6A6A4A4A19E9E9C9A94928F8987817C746C6A615F59575555
-6A7172767C7C7C7C7976746A5F6166676A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A6A6767676767
-6767676A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C717272747476797C7C7C7F7F8484878789898C8F92
-9292949494999A9C9C9C9E9E9E9E9E9EA3A3A3A4A4A4A4A4A4A3A19E9E9C9A94928987847F7B7472
-6C676767676A6C7476797C7F848789898C8E8F8F929292929292949494949494999A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9999999A9A9A9A99999A9A9A9A9A9A999999999A9A9A9A9A9A99999994
-94949494949494949999969494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999694
-94949494949494949494949292929292929292928F8F8E8E8E8E8E8E8C8989898989898989898989
-898989898989898C8C8C8C8E8E8E8E8E8F8F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8C8C89898989898989898989898989898989898787878787878787878787878585858585858787
-87878787878787878787878787878585848484818184848585858484848181817F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184848484858585878787878787878787878787878787
-8787878787898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E7F818789898F929294949494999A9A9C9C9C9C9C9E9C9C9C9C9A9A9A99949492928F8E
-8987817F7C7F848E949EA4ABAEB4B9BBB9B9B9B9B9B6B3B1B1B1B1AEAEAEABABA9A9A6A6A6A6A4A4
-A4A3A3A4A4A4A4A6A6A6A6A6A9A9AEAEAEAEAEB1B1B1B3B6B6B6B7B6B3B3B1B1AEA974767C7F8187
-87817F7C7C79797C7C7C7C7C7C7C7C7C7C7C7C7C79767472726C6A66615F5757554F4F4F4F4F4F4F
-4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72858E94A3AEB9C6D4DFE1E1E1E1E1E1E1E1DFDFDFDC
-D9D9D4CFCCC8C6C0BBB7B1ABA9A9A6A6A4A4A39E9E9E9C9A9492928987847C746E6A615F5D575757
-556C7274797C7C7C7C7976766C616166676A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A6767676767
-676767676A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C71727274747676797C7C7F818184878789898E8F
-9292929494969A9C9C9C9E9E9E9E9E9E9EA1A1A3A3A3A4A4A4A39E9E9C9C9A96928E8987817C7974
-726A6767676A6A717476797C7F85878789898E8E8F8F92929292929494949494999A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A99999A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9999
-99969494949494969999999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994
-949494949494949494949292929292929292928F8F8E8E8E8E8E8E8C898989898989898989898989
-898989898989898989898989898C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8C8989898989898989898989898987878787878787878585858585878787858585858585858587
-878787878585858584848484848181818181817F81818484848181817F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818485858585878787878787878787878787878787878787
-8787878789898989898989898989898989898E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E84878C929292949999999A9A9A9A9C9C9C9C9E9E9E9E9E9C9C9C9C9A9994949492928F89
-87847F7F7F8489949CA4A9B1B4B7BEBEBBB9BBB9B7B6B3B1B1B1B1AEAEABA9A9A9A9A6A6A6A6A4A4
-A4A3A1A3A3A4A4A4A4A6A6A6A6A9A9ABABAEAEAEAEB1B1B1B1B3B3B1B1B1AEAEA97C7C7C81878989
-87847F7F7C7C797C7C7C7C7C7C7C7C7C7C7C797979767474726C6A67615F5C5755514F4F4F4F4F4F
-4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F87929AA6B1BECCD9DFE1E1E4E1E1E1E1E1DFDFDFDC
-D9D4D3CFCCC6C1BEB9B3AEA9A9A6A6A6A4A4A19E9E9C9C9A9494928F89877F76726A615F5D5C5757
-57546C74767C7C7C7C7C7979796C674F66676A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6767676767
-67676767676A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C71727274747676797C7C7F818184878789898E
-929292929494999A9C9C9E9E9E9E9E9E9E9E9E9EA1A1A3A3A4A19E9E9C9C9C99948F8987857F7C76
-746E6A6767676A6C7274767C7F8185878789898E8E8F8F92929292949494949494999A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-99999999949494999A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994
-9494949494949494949492929292929292928F8F8E8E8E8E8E8E8C89898989898989898989898989
-898989898989898989898989898989898989898C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8C898989898989898989898989898787878787878787858585858484848484848484848484848484
-8484848181818181818181817F7F7F7F7F7F7F7F7F81817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F8181818181848585858587878787878989898989898989898989898989
-89898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E76878C9294999A9A9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9C9C9C9C9A99949492928F8E89
-87817F7F8489949CA3A6AEB6B9B9BEBEBBBBBBB9B7B3B3B1B1B1AEAEABA9A9A9A6A6A6A6A6A4A4A4
-A3A19E9EA1A3A3A4A4A4A4A4A6A6A6A9A9A9A9ABABAEAEAEB1B1B1B1AEAEAEAB7F7F7F7F87898C89
-8784817F7C7C7C7C7C7C7C7C7C7C7C7C7C7979797976747472716A6761615F5755544F4F4F4F4F4F
-4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8189929CA9B3C1CFD9E1E1E4E4E4E1E1E1E1DFDFDCD9
-D9D4D1CFC8C6C0BBB7B1ABA9A6A6A6A4A4A39E9E9E9C9C9A999494928E898179726A615F5D5C5757
-5757547274767C7C7C7F7C7C7C7972675F666A6C6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A67676767
-67676767676A6A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C71727474747476767C7C7F7F818487878989
-8E8F9292929494999A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9EA3A39E9E9C9C9C9A94928E8987857F7C
-76726C6A6767676A6C7274767C7F8184878789898C8E8F8F929292949494949494999A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A99999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9996
-9494949494949494949292929292929292928F8E8E8E8E8E8E8C8989898989898989898989898989
-8989898989898989898989898989898989898989898989898C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8C
-898989898989898989898989898787878585858585858585858484817F818181818181818181817F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F8184848585858587878787878789898989898989898989898989898989
-8989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E7B8792949A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A96949492928F8987
-847F7F8489929A9EA6AEB3B9BBBEC1C1BEBBBBB9B7B3B1B1B1B1AEAEA9A9A9A6A6A6A6A6A4A4A4A4
-A39E9E9E9E9EA1A3A3A4A4A4A4A6A6A6A6A6A6A6A9A9ABAEAEAEAEAEAEAB7F7F7F818787898C8C89
-8784817F7C7C7C7C7C7C7C7C7C7C7C7B797979797676747472716C6A66615F5957554F4F4F4F4F4F
-4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C858C94A1ABB7C4D1DFE1E1E4E4E4E1E1E1DFDFDFDCD9
-D9D3CFCCC6C1BEB9B3AEA9A6A6A4A4A4A4A19E9E9C9C9C9C9A9994949289877F746C645F5F5C5957
-575757517274797C7C7C7F7F7F7C766E675F676A6C6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A67676767
-6767676767676A6A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6E72727474747476767C7F7F7F8184878789
-898C8E8F929294949A9A9C9C9C9C9C9E9E9E9E9E9E9E9E9EA3A39E9E9E9C9C9A9492928E8987847F
-7C74726C6A6767676A6E7274767C7F8184878789898C8E8E8F9292949494949494999A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A999A9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A99
-94949494949494949494929292929292928F8E8E8E8E8E8E8E898989898989898989898989898989
-89898989898989898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8C89
-8989898989898989898989898787878585858585848184848484817F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181818181
-7F7F7F7F7F7F7F7F7F7F81848585858587878787878787898989898989898C8C8C8C8C8C8C8C8C8C
-8C8C8C8C8C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-7C8992949A9C9C9E9E9E9E9E9E9E9E9EA1A1A3A3A4A3A3A1A19E9E9C9C9C9A99949492928F8E8985
-7F7F818792949EA6ABB1B9BBC0C1C4C1C0BBBBB9B7B3B1B1B1AEAEABA9A6A6A6A6A6A4A4A4A4A4A3
-A19E9E9E9E9E9E9EA1A1A3A3A4A4A4A4A6A6A6A6A6A6A9A9ABABABA96E818184848587898C8C8C89
-8785817F7F7C7C7C7C7C7C7C7C7C7979797976767676747472716C6A6661615C5755514F4F4F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F87929AA4AEB9C6D4E1E1E4E4E4E4E1E1E1DFDFDFD9D9
-D4D1CCC6C1BEB9B7B1ABA6A6A4A4A4A4A39E9E9E9E9E9E9C9C9C9A9A948F89847972675F5D595957
-575757555172747C7C7C7F7F7F7C7C746C6A5F676A6C6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A676767
-666666666666676A6A6A6A6A6C6C6C6C6C6C6C6C6C6C6C7172747474747476797C7F7F7F81848787
-8989898E8F929494999A9A9A9C9C9C9C9C9C9E9E9E9E9E9EA1A4A19E9E9C9C9C999492928E898781
-7F7974726C6A67676A6C717274767C7F7F84878989898C8E8F9292929494949494999A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9A9A9A9A9A9A9C9C9C9A9A9A9A9A9A9A9C
-9C9C9C9A9A9A9A9A9A9C9C9C9C9C9C9A9A9A9A9A9A9A9A9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A99
-949494949494949494949492929292928F8F8E8E8E8E8E8E8E8C8989898989898989898989898989
-8989898989898989898989898989898989898989898989898989898989898E8E8E8C898C8C8C8989
-898989898989898989898987878785858585858481817F7F7F817F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818181848484858481
-817F81818181818181848485858585878787898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E6C
-8992949A9C9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9C9C9A9A99949492928E898781
-7F7F878F949CA4A9B1B9BBC0C1C4C1C1BEBBB9B9B6B3B1B1B1AEAEABA9A6A6A6A4A4A4A4A3A3A19E
-9E9E9E9E9E9E9E9E9E9E9EA1A3A3A3A4A4A4A4A4A4A6A6A6A9A9A674848481858787898C8C8C8989
-898784817F7F7C7C7C7C7C7C79797979797676767676747472726C6A6764615F5755544F4F4F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8189929CA6B1BECCD9E1E1E4E6E6E4E1E1E1DFDFD9D9D4
-D1CFC8C6C1BEB9B3AEA9A6A4A4A3A4A4A3A19EA1A4A3A19E9E9E9C9C9A948F897F746C615C595757
-57575957556C72767C7C7C7C7F7C7C79746C6A5F676C6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A676767
-66616164646666676A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6E7272747474747676797C7F7F7F7F8485
-878789898C8E9294949499999A9A9A9C9C9C9C9C9C9C9E9EA1A4A19E9E9E9C9C9A999492928F8987
-817F7974726C6A6A6A6C71727476797C7F8185878989898C8E8F9292949494949494999A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9A9A9A9A9A9C9C9C9C9C9A9A9A9A9A9C
-9C9C9C9C9C9A9A9A9C9C9C9C9C9C9C9C9C9C9A9A9A9A9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A99
-99999694949494949494949494949292928F8E8E8E8E8E8E8E8E8989898989898989898989898989
-8989898989898989898989898989898989898989898989898989898989898C8E8C89898989898989
-8989898989898989898987878787858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818184848585878787878484
-8484848484858585858787878787878787898989898989898C8E8E8E8E8E8F8F8F8F8F8F8F8F8F8F
-8F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E87
-8F949A9C9E9EA3A4A4A4A4A4A4A4A4A4A4A4A6A6A6A4A4A4A39E9E9C9C9A99949494928F8987817F
-7F878E949CA4A9AEB6BBBBC0C1C6C1C1BEBBB9B9B6B1B1B1AEAEAEA9A6A6A6A4A4A4A4A39E9E9E9E
-9E9E9C9C9E9E9E9E9E9E9E9E9E9EA1A1A3A3A3A3A4A4A4A664727C84858584878789898C8C898989
-898784817F7F7C7C7C7C7B7979797976767676767676747472726C6A6766615F5957554F4F4F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C878C949EA9B3C1CFDCE1E4E6E6E4E4E1E1DFDFDCD9D4D3
-CFCCC6C1BEB9B7B1ABA6A4A4A1A1A1A4A4A4A3A4A6A4A4A4A4A39E9E9E9A948E857C72675F575757
-57575C5957557174767C7C7C7C7C7C7C7674716C5F6A6A6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6767
-6766616161616164676A6A6A6C6C6C6C6C6C6C6C6C6C6C6C7172747474747476797C7C7C7F7F7F81
-8487878989898E92929494949699999A9A9A9C9C9C9C9E9E9EA3A3A3A19E9E9C9C9A999492928F89
-87817C7974716C6A6A6C6C727274767C7C7F81878789898C8E8F9292949494949494999A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9A9A9C9C9C9C9C9C9C9C9A9A9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A
-9A9A9999999994949494949494949292928F8F8F8F8E8E8E8E8E8C89898989898989898989898989
-898989898989898989898989898989898989898989898989898989898989898C8989898989898989
-89898989898989898987878787858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818484858585858587878787878785
-87878787878787878787878787878787878989898989898C8E8E8E8E8E8F92929292929292929292
-929292928F8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F929292928F8F8E8E8E8E8E8E8E8E8E8E8E878C
-929A9C9EA3A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A3A19E9C9C9A99949492928C89847F7C
-8489949CA4A6AEB1B9BEC0C1C1C4C1C0BBBBB9B7B3B1B1AEAEAEABA9A6A6A4A4A4A3A19E9E9E9E9C
-9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9EA1A1A1A3616A71767C7F818587878789898C8C89898989
-878784817F7F7F7C7C7C7C7979797676767676767676747472726E6C6A6661615D5755514F4F4F4F
-4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F878F99A3AEB9C6D1DFE1E4E6E6E4E1E1DFDEDCD9D4D3CF
-CCC6C4C0BBB9B3AEA9A4A39E9E9EA1A4A4A4A4A6A6A6A6A6A6A6A4A4A49E9A92897F766C615C5757
-5757595C5C57556C72747676767C7C7C797674726C61556A6A6C6C6C6C6C6C6C6C6C6C6C6A6A6767
-676661616161616164676A6A6A6C6C6C6C6C6C6C6C6C6C6C717272747474747676797C7C7C7F7F7F
-7F8185878789898E8F92929294949494999A9A9C9C9C9C9E9EA3A4A4A3A19E9C9C9C9A999492928E
-8987817C76746E6C6A6C6C71727474767C7F7F84878989898E8F9292949494949494999A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9E9C9C9C9C9C9C9C9C9C9C9C9C9A9A
-9A9A9A9A9A999999999694949494949292929292928F8F8F8F8F8E89898989898989898989898989
-89898987878789898989898989898989898989898989898989898989898989898989898989898989
-89898989898989898787878785858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181858585858585858787878987878787
-878787878787878789898989898989898989898C8E8E8E8E8E8E8E8E8E8F92929292929292929292
-92929292928F8E8E8E8E8E8E8E8E8E8F8F9292929292929292928F8E8E8E8E8E8E8E8E8E8E818992
-999C9EA1A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A39E9C9C9A999494928E89857F7C81
-89929CA3A6AEB1B7BBC1C1C1C4C1C1C0BBB9B9B6B3B1AEAEAEABA9A9A6A6A4A4A4A39E9E9E9C9C9C
-9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E676C7274797F7F7F818487878789898C8989898989
-878784817F7F7F7C7C7C7C7976767676767676767676747474726E6C6A6764615F5755544F4F4F4F
-4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF768489929AA4AEB9C6D4E1E1E4E6E4E1E1DFDFD9D9D9D3CFCC
-C8C6C1BBB9B6B1ABA6A39E9E9E9EA3A4A4A4A6A6A9ABABA9A9A6A6A6A6A49C9992877C726A5F5755
-5757595D5C5957546C71727474767B7C79767674726C6457676A6A6A6C6C6C6C6C6C6C6C6C6A6A67
-67676461616161616166676A6A6C6C6C6C6C6C6C6C6C6C6C6C72727474747474767676797C7C7C7F
-7F7F818487878989898C8E929294949494999A9C9C9C9C9E9EA1A4A4A4A39E9E9E9C9C9A99949292
-8E89877F7C7672716C6C6C6E72727476797C7F81858789898C8F9292929494949494999A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9C9C9A9A9A9A9C9C9C9C9E9C9C9C9C9C9C9C9C9C9E9C9C9C9C9C9C9C9C
-9E9E9E9C9C9C9C9C9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C
-9C9A9A9A9A9A9A9A9A999999949494929292929292929292928F8E8C898989898989898989898989
-89898987878787878989898989898989898989898989898989898989898989898989898989898989
-8989898989898987878787858585858585858481818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818184858585858587878787898987878787
-8789898989898989898989898989898989898C8E8E8E8E8E8F8F8F8F8F9292929292929292929292
-92929292928F8F8F8F8F8F8E8E8E8F9292929292929292929292928F8E8E8E8E8E8E8E8E7C899294
-9C9C9EA4A4A6A6A6A9A9A9A9A9A9A9A9A9A9A9A9A9A6A6A6A4A39E9C9A999494928F89877F7C7F89
-929CA1A6ABB1B6B9BEC1C1C1C6C1C1BEBBB9B9B6B1B1AEAEABA9A9A6A6A6A4A4A3A19E9E9E9C9C9C
-9C9A9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E676C7274797F7F7F7F81818487878789898C8989898989
-878785817F7F7F7F7C7C7C797676767676767676747474747472716C6A6766615F5957554F4F4F4F
-4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F8789949CA6B1BECCD9E1E4E4E6E4E1DFDFDCD9D9D4D1CCC8
-C6C1BEBBB7B1AEA9A49E9E9E9E9EA4A4A6A6A6ABAEAEAEAEAEABA9A9A9A6A39C9489817671665C55
-5557575C5D5D5957546A6C717274767679767679767471675D66676A6A6C6C6C6C6C6C6C6C6A6A6A
-6A67666161616161616166676A6A6C6C6C6C6C6C6C6C6C6C6C7172747474747474747676797C7C7C
-7C7F7F7F818587878789898E929294949496999A9C9C9C9E9EA1A4A4A4A4A39E9E9E9C9C9A999492
-928E89847F7C7472716C6C6C72727474767C7F7F848787898C8E8F9292949494949496999A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9C9C9C9A9A9C9C9C9C9C9E9E9E9C9C9C9C9C9C9C9E9E9E9C9C9C9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C
-9C9C9C9A9A9A9A9A9A9A9A99949494949292929292929292928F8F8E8C8989898989898989898989
-89898787878787878989898989898989898989898989898989898989898989898989898989898989
-898989898989898787878585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F81818181818181817F7F7F7F7F7F7F7F8181818184848485858787878787878789898989898989
-8989898989898989898989898989898C8C8C8E8E8E8E8E8F92929292929292929292929292929292
-929292929292929292928F8E8E8F929292929292929292929292928F8E8E8E8E8E8E8E76878F949C
-9C9EA4A4A6A6A6A9A9A9A9A9A9A9A9A9A9ABABA9A9A9A6A6A4A19E9C9A999492928C877F7C7F8792
-9A9EA6ABB1B6B9BEC1C4C1C1C6C1C0BBBBB9B7B3B1B1AEABA9A9A6A6A6A4A4A4A39E9E9E9C9C9C9C
-9A9A9A9A9A9C9C9C9C9C9C9E9E9E9E71727274767F8181817F818181848587878989898989898989
-878785817F7F7F7F7C7C7C797676767676767676747474747472716C6A6A6761615D5755514F4F4F
-4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F878F949EA9B3C1CCD9E1E4E4E6E1DFDFDCD9D9D4D3CFC9C6
-C1C0BBB9B3B1ABA6A19E9E9E9EA1A4A4A6A9ABAEB1B1B1B1B1AEAEAEABA6A49E9C92877C766C6157
-555555595D5D5D5C5754616A6C727474767976797C7674726A5F6167676A6A6C6C6C6C6C6C6C6A6A
-6A6A676461616161616166676A6A6C6C6C6C6C6C6C6C6C6E7171727274747474747474767676797C
-7C7C7F7F7F818587878789898F9292949494999A9A9C9C9E9E9EA3A4A4A4A3A39E9E9E9C9A9A9994
-92928C87817C797472726C6C7172747476797C7F81858789898E8F8F92949494949494999A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9C9C9C9C9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9EA1A3A19E9E9E9E9E9E9E9E9E9E9C9C9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C
-9C9C9C9A9A9A9A9A9A9A9A9A9994949494949494949292929292928F8E8E8E8E8C8C8C8C89898989
-89898787878787878789898989898989898989898989898989898989898989898989898989898989
-89898989898989898787878787878787878787878787858481818181818181818181848484848484
-848484848484848481817F7F81818181848484858585858787878787878789898989898989898989
-8989898C8C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292929292929292929292
-929292929292929292928F8F8F8F9292929292929292929292928F8E8E8E8E8E8E8E8E818E949A9E
-9EA1A4A6A6A6A9A9ABABABABABABABACAEAEAEABABA9A6A6A49E9C9A9A9494928E89817C7F878F96
-9EA6ABAEB6B9BEC1C6C6C6C4C4C1C0BBB9B9B6B1B1AEAEA9A9A6A6A6A6A4A4A3A19E9E9E9C9C9C9A
-9A9A9A9A9A9A9A9C9C9C9C9C9E7C7976767C7C7F8785848181818181848587878989898989898989
-87878584817F7F7F7C7C7C797676767676767676767474747472716C6C6A6764615F5755554F4F4F
-4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF7C8489929AA3AEB9C1CFD9E1E4E6E6E1DFDFD9D9D4D4CFCCC6C4
-C1BBB9B6B1AEA6A49E9E9E9E9EA3A4A6A9AEAEB4B6B7B7B7B6B1AEAEAEA9A49E9C968C817C746A5D
-555155575C5F5F5F5D57545F676A6C72747676767C7C7674726A614F64676A6A6A6A6A6C6C6C6A6A
-6A6A67676161616161616166676A6C6C6C6C6C6C6C6C6C6C72727272747474747474747474767679
-7C7C7C7C7F7F8185878787898E9292949494999A9A9C9C9C9E9EA3A4A4A3A1A3A39E9E9C9A9A9A99
-94928E89857F7C76747272716E72727474767C7C7F818787898C8E8F92929494949494999A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9C9E9E9E9E9E9E9E9E9EA1A3
-A3A19E9E9E9E9EA1A3A4A3A3A1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C
-9C9C9C9A9A9A9A9A9A9A9A9A999494949494949494949494949292928F8F8F8F8E8E8E8E8C898989
-89898987878787878989898989898989898989898989898989898989898989898989898989898989
-89898989898989898787878787878787878787878787878585858585858585878787878787878787
-878787858585858584818484848485858585858585858587878989898989898989898989898C8C8C
-8C8E8E8E8E8E8F8F929292929292929292928F8F8F8F8F9292929292929292929292929292929292
-92929292929292929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E7F8992999C9E
-A3A4A6A6A6A9A9ABAEAEAEAEAEAEAEAEAEAEAEAEABA9A6A4A39E9C9A9994928F89847F7C848C949C
-A4ABAEB6B9BEC1C6C6C6C6C6C1C1BEBBB9B6B3B1AEAEABA9A6A6A6A6A4A4A4A39E9E9E9C9C9C9C9A
-9A9A9A9A9A9A9A9A9A9C9C9C8781817F7F8185878787858481818184848587878789898989898989
-87878784817F7F7F7F7C7C797676767676767676767474747472726C6C6A6766615F5957554F4F4F
-4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF7F8789929CA4AEB9C4D1DCE1E4E6E4E1DFDCD9D9D4D3CFC8C6C1
-BEBBB9B1AEA9A69E9E9E9E9E9EA4A6A9AEB1B6B7B9B9B9B9B9B6B1B1AEA9A6A39C9A92877F797266
-57544F55595D5F5F5F5D57555C646A6C727474767679797674726C614F6166676A6A6A6A6C6C6A6A
-6A6A6A676761616161616166676A6A6C6C6C6C6C6C6C6C6C71727272727474747474747474747676
-76797C7C7C7F7F81858787898C8F9292949496999A9C9C9C9E9EA1A4A4A39EA1A3A49E9C9A9A9A9A
-94928F8987817F7C76747472717272747476797C7F7F848789898C8E8F929294949494999A9A9A9A
-9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9EA19E9E9E9EA1A3A4
-A4A3A3A19E9E9EA3A4A4A4A4A4A3A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9C9C9C9A9A9A9A9A9A9A9A999694949494949494949494949494929292928F8F8F8F8F8F8C8989
-89898989898787898989898989898989898989898989898989898989898989898989898989898989
-89898989898989898989898989898989898989898787878787878787878787878787878787878787
-878787878585858585858585858585858585858585858787898989898989898C8C8C8E8E8E8E8E8E
-8F8F8F8F8F9292929292929292949494929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E798792949CA3A4
-A4A6A6A6A9A9ABAEAEAEAEAEAEAEAEAEAEAEAEAEAEA9A6A4A19E9C9A94949289877F797F89929CA3
-A9AEB6B9BEC1C6C6C6C6C6C6C1C0BBB9B6B3B1AEAEABA9A6A6A6A4A4A4A4A3A19E9E9E9E9C9C9A9A
-9A9A9A9A9A9A9A9A9A9C9C8989878787848789898787878481818484858585878787898989898987
-87878784817F7F7F7F7C7C7C7976767676767676767474747472726C6C6A6A6761615D5755544F4F
-4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF7681878E949CA6B1BBC6D3DFE1E4E6E4E1DCD9D9D4D3CFCCC6C1C0
-BBB9B6B1ABA6A49E9E9E9E9EA3A6A9AEB1B6B9BEBEBEBEBEB9B9B3B3AEABA6A49E9C948E857C766C
-5F554F4F575C5F5F5F5F5D57545761676C717274767679767674726C61575F616667676A6A6C6C6A
-6A6A6A67676764616161616166676A6A6A6C6C6C6C6C6C6C6E727274747474747474747474747476
-767679797C7C7F7F81858789898C8F92929494999A9C9C9C9C9E9EA4A3A19E9EA1A39E9C9C9A9A9A
-9994928C8987817F7C767474727272747476767C7C7F81878789898C8E8F929494949496999A9A9A
-9A9A9A9A9A9A9A9A9C9C9C9C9C9E9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A1A19E9EA3A4A4
-A4A4A4A3A3A1A1A3A4A4A4A4A4A4A4A3A3A1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9C9C9C9C9A9A9A9A9A9A9A9A9A9999999996949494949494949494949292929292929292928F8E8E
-8E8E8C8C898989898989898989898989898989898989898989898989898989898989898989898989
-89898989898989898989898989898989898989898987878787878787878787878787878989898989
-8987878785858585858585858585858585878787878787878989898989898C8E8E8E8E8F8F8F8F8F
-92929292929294949494949494949494949492929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8C8C848E949C9EA4A6
-A6A9A9A9ABAEAEAEAEB1B1B1B1B1B1B1B1B1AEAEAEA9A6A49E9C9A9494928E877F797C87929A9EA6
-AEB6B9BEC1C4C6C8C6C6C6C4C1BEBBB9B3B1AEAEABA9A6A6A6A4A4A4A4A4A39E9E9E9E9E9C9C9C9A
-9A9A9A9A9A9A9A9A768792928E898989898C89898787878584848485858585878787898989898787
-87878784817F7F7F7F7F7C7C7976767676767676767474747472726E6C6A6A6764615F5755554F4F
-4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF7C858992999EA9B1BEC6D4DFE1E4E6E1DFDCD9D7D4D1CFC8C6C1BE
-B9B9B1AEA9A49E9C9C9E9EA3A4A9AEB1B6B9BEC1C1C1C1C1BEB9B9B3B1AEA9A49E9C949289817C74
-6759544F54575D5F61615F5D5754575F666A6E7274767676767472716A61575F5F6166676A6A6A6A
-6A6A6A6A6767676461616161666767676A6A6C6C6C6C6C6C6C717274747474747474747474747474
-76767676797C7C7F7F81858789898C8F929294949A9A9C9C9C9C9EA1A39E9E9E9E9E9E9E9C9A9A9A
-9994928E8987857F7C79767474727272747476797C7F7F84878989898C8F92929494949499999A9A
-9A9A9A9A9A9A9A9A9C9C9C9C9E9E9E9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9EA1A3A4A3A1A1A3A4A4
-A4A4A4A4A4A3A3A4A4A4A4A4A4A4A4A4A4A4A3A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C
-9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494949494929292929292929292929292
-92928F8F8F8E8E8C8C89898989898989898989898989898989898989898989898989898989898989
-89898989898989898989898989898989898989898989898989898989898989898989898989898989
-89898787878585858585858787878787878787878787898989898989898C8E8E8E8E8F9292929292
-92929292929494949494949496969694949492929292929292929292929292929292929292929292
-92929292929292929292929292929292929292928F8E8E8E8E8E8E8E8C8C89897F89949A9EA4A6A9
-ABAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1AEAEABA6A4A39E9C9A94928F8984797C878E999EA6AE
-B3B9BBC1C1C6C6C9C6C6C6C1BEBBB9B6B1AEAEABA9A6A6A6A4A4A4A4A4A4A19E9E9E9E9E9C9C9C9A
-9A9A9A9A9A9A74747F8E9494928E8C8E92928C898987878785848585858585858787878989878787
-87878784817F7F7F7F7F7C7C7C76767676767676767474747474726E6C6A6A6766615F5957554F4F
-4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF7F8789929AA3ABB6BECCD4DEE1E4E6E1DFD9D9D4D1CFCCC6C1C0BB
-B9B6B1ABA6A49E9C9C9EA1A4A6AEB1B6B9BEC1C4C6C6C6C6C1BEB9B6B1AEA9A6A49E9A928C877F76
-6C61574F4F575C5F5F61615F5D5754575F616A6C72747474747474726C6A5F555D5F616167676A6A
-6A6A6A6A6A6767676661616161666767676A6A6C6C6C6C6C6C6E7272747474747474747474747474
-76767676767C7C7C7F7F81858789898E8F929294949A9A9C9C9C9E9E9E9E9E9E9E9E9E9C9C9A9A9A
-9994928F8C8987817F7C797674747472747476797C7C7F8187878989898E8F92949494949499999A
-9A9A9A9A9A9A9A9A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A19E9E9EA3A4A4A4A4A3A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C
-9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494949494949494929292929292929292
-92929292929292928F8F8E8E8C8C8989898989898989898989898989898989898989898989898989
-89898989898989898989898989898989898989898989898989898989898989898989898989898989
-898987878787878787878787878787878989898989898989898989898C8E8E8E8E8E8F9292929292
-92929292929494949494949699999994949494949494949494949494949492929292929292929292
-929292929292929292929292929292929292928F8F8E8E8E8E8C8C898989897B8792999CA4A6A9AE
-AEAEAEAEB1B1B1B1B3B6B6B6B6B6B3B3B6B1AEAEABA6A4A19E9C99949289877C76818C949CA6ABB1
-B7B9BEC1C6C6C8C9C6C6C6C1BEBBB9B3B1AEABA9A6A6A6A4A4A4A4A4A4A39E9E9E9E9E9E9E9C9C9A
-9A9A9A9A9A8584818994949494928F9292928E898989878787858585858585858787878987878787
-87878785817F7F7F7F7F7C7C7C7976767676767676747474747472716C6C6A6A6761615D5755544F
-4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF7984878E949CA4AEB9C1CCD9DEE1E1E4DFDCD9D4D3CFCCC8C6C1BEB9
-B7B1AEA9A49E9C9C9C9EA4A6ABB1B6B9BEC1C6C6C6C6C8C6C1C0BBB9B3B1ABA6A49E9C948F89847C
-746A5D544F54575D5F6161615F5F5754555D61676C717274747272726E6A675D515C5F616166676A
-6A67676A6A6A6A6A6766616161646767676A6A6A6C6C6C6C6C6C7172747474747474747474747474
-7476767676797C7C7F7F7F81878789898C8E8F929494999A9C9C9C9C9E9E9E9E9E9E9E9C9C9A9A9A
-999494928E8987857F7F7C7676767474747476767C7C7F7F8487898989898E929294949494949699
-9A9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A3A3A1A1A3A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C
-9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494949494949494949494949494949494
-929292929292929292929292928F8F8E8E8C8C898989898989898989898989898989898989898989
-89898989898989898989898989898989898989898989898C8C8C8C8C8C8C8C8C8989898989898989
-89898987878787878787898989898989898989898989898C8C8C8C8E8E8E8E8E8E8F929292929292
-9294949494949494949494999A9A9999949494949494949494949494949492929292929292929292
-92929292929292929292929292928F8F8F8F8F8E8E8E8C8C8989898989896A848C949CA3A6ABAEB1
-B1B1B1B1B1B3B3B6B7B9B9B9B9B9B7B7B6B1B1AEABA6A49E9C9A94928E877F747F89949CA4A9B1B7
-B9BEC1C6C6C6C9C8C6C6C6C1BEB9B7B1AEABA9A6A6A6A4A4A3A1A1A1A1A19E9E9E9C9C9C9E9C9C9C
-9A9A9A9A898C9292929A99949494929292928F8C8989878787858585858585858587878787878787
-8787878584817F7F7F7F7C7C7C7976767676767676767474747472716C6C6A6A6764615F5755554F
-4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF7F878992999CA6AEB9C4CFD9DCDFE1E1DFD9D4D3CFCFC9C6C1BEBBB9
-B6B1ABA6A39E9C9C9EA3A6A9AEB3B9BBC1C6C8C8C9CCCCC8C6C1BEB9B6B1AEA9A6A19C99928E877F
-796C61574F4F55595F61666661615F5755555D61676A6C72727271716C6C6A64594F595F5F616667
-676767676A6A6A6A6A6766666666666767676A6A6A6A6C6C6C6C6C72727474747474747474747474
-7476767676767C7C7C7C7F7F8487878989898E8F929294999A9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A
-999494928F898987817F7C7C7976767474747476797C7C7F8185878989898C8F9292949494949496
-999A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A3A3A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C
-9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999694949494949494949494949494949494949494949494
-94949494949492929292929292929292928F8F8F8E8E8C8989898989898989898989898989898989
-898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8C8989898989898989
-89898989878989898989898989898989898C8C8C8E8E8E8E8E8E8E8E8E8F8F8F8F92929292929292
-9494949494949494949496999A9A9A99949494949494949494949494949494929292929292929292
-9292929292928F8F8F8F8F8F8F8F8E8E8E8E8C8C898989898989898787877F89929C9EA6ABAEB1B3
-B6B3B3B3B6B7B9B9B9B9B9B9B9B9B9B9B7B3B1AEA9A6A39E9C9A94928984797C89949CA3A6AEB6B9
-BEC1C6C6C6C8CCC8C6C6C1C0BBB9B3B1AEA9A6A6A4A4A4A19E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C
-9A9A9A87898E92949A9A99949494949492928F8E8989898787878585858585858585878787878787
-8787878784817F7F7F7F7C7C7C7C79767676767676767474747472716C6C6A6A6766615F59575551
-4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF7681878C929A9EA6B1BBC6D1D9D9DFDFDFD9D9D4D1CFCCC6C6C1BBB9B7
-B1AEA6A49E9C9C9C9EA4A9AEB1B9BBC1C6C6CCCCCCCFCCCCC6C6C0B9B7B1AEA9A6A49E9C94928984
-7C746A5F544F4F575C5F61676764615F5957575C5F666A6C6E6C6C6C6C6C6A67615751595F5F6164
-6767676767676A6A6A6A67676767676767676A6A6A6A6A6C6C6C6C6C717272747474747474747474
-747476767676797C7C7C7C7F7F8185878789898C8F929294949A9A9A9A9C9C9C9C9C9C9C9A9A9A99
-999494928F8E898787817F7C7C79767674747476797C7C7F7F8487878989898E9292929294949494
-999A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C
-9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494949494949494949494949494
-949494949494949494949492929292929292929292928F8F8E8E8989898989898989898989898989
-8989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8C89898989898989
-89898989898989898989898C8C8C8E8E8E8E8E8F8E8E8E8E8E8E8E8E8F9292929292929292929294
-94949494949494949696999A9A9A9A999999999994949494949494949494929292929292928F8F8F
-8F8F8F8F8F8F8E8E8E8E8E8E8E8C8C8C8989898989898989878787878779878F999EA4A9AEB1B3B9
-B9B9B9B9B9B9B9B9BBBBBBBEBBBBBBBBB9B3B1AEA9A4A19E9C99928E877C7C87929A9EA6ACB1B9BE
-C1C4C6C8C8C9CCC8C6C6C1BEB9B6B1AEA9A6A6A4A4A3A19E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9A
-9A677F8C8E8F92969A9A99949494949492928F8E8989898787878585858585858585878787878787
-8787878584817F7F7F7F7C7C7C7C79767676767676767474747472726C6C6A6A6A6761615D575554
-4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF7C87898F949CA3A9B3BEC6D1D9D9DCDFDCD9D4D1CFCCC8C6C1BEBBB9B3
-AEA9A69E9C9C9C9EA3A6ABB1B6B9C1C6C6CCCFCFCFCFCFCCCCC6C1BBB9B3AEA9A6A49E9C99948E87
-7F766C61594F4F55595D6167676761615F5C59595F61666A6C6C6C6C6C6C6A6A66615754575D5F61
-616767676767676A6A6A6767676767676767676A6A6A6A6C6C6C6C6C6C6E72727474747474747474
-747676767676797C7C7C7C7C7F7F818487878789898E929294949999999A9A9C9C9C9C9C9A9A9999
-96949492928E898987847F7F7C7C7C7674747476767C7C7F7F8185878789898C8F92929292949494
-999A9A9A9A9A9A9A9A9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494949494949494949494949494949494949494
-949494949494949494949494949494949292929292929292928F8E89898989898989898989898989
-8989898989898989898C8C8C8C8C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8C89898989898989
-8989898989898C8C8C8E8E8E8E8F8F8F8F8F92928F8E8E8E8E8E8E8F929292929292929292929294
-94949999999999999999999A9A9A9A9A99999999999494949494949494929292929292928F8E8E8E
-8E8E8E8E8E8E8E8E8E8C898989898989898989898989878787878785747F8C949CA4A9AEB1B6B7B9
-B9B9B9B9B9B9BBBBBBBEC0C0C0BEBBBBB9B3B1ABA6A49E9C9A9492897F7C8792999CA4A9B1B7BEC1
-C4C6C9CCCCCCCCC8C6C6C1BBB7B1AEA9A6A4A4A39E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9A
-5F7F8C8F92929499999999949494949492928F8E8C89898987878785858585858585858787878787
-8787858584817F7F7F7F7F7C7C7C7C767676767676767474747472726C6C6A6A6A6764615F595755
-4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF7F878992999CA4AEB6BEC6D1D4D9D9DCD9D4D3CFCCC8C6C1C0BBB9B3B1
-AEA6A49E9C9A9C9EA4A9AEB6B9BEC6C6CCCFD1D1D3D3D1CFCCC6C1BEB9B6B1ABA6A4A39E9A949289
-847C72675F554F4F575C5F6167676761615F5F5D5F6161676A6A6A6A6A6A6A6A67615F5755595D5F
-61616767676767676A6A6A67676767676767676A6A6A6A6A6C6C6C6C6C6C6E727274747474747474
-76767676767676797C7C7C7C7C7C7F7F8185878789898E8F929294949496999A9A9A9A9A9A9A9999
-94949492928F8C898787847F7F7C7C7B76747476767B7C7C7F7F8187878789898E92929292929494
-999A9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A1A3A3A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949492929292928F8E8E8C8C8C8C89898989898989
-89898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989
-898C8C8C8E8E8E8E8E8E8F8F8F929292929292928F8F8E8E8E8F8F8F929292929292949494949494
-9499999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494929292929292928F8E8E8E
-8E8E8E8E8E8E8E8E8C898989898989898989898989898787858484817C87929AA3A6AEB1B6B7B9BB
-BBBBBBBBBBBBBBBEC0C1C1C1C1C0C0BBB9B3B1A9A6A49E9C99928E856C878F999CA3A6AEB6B9C1C4
-C6C8CCCCCCCCCCC6C6C1BEB9B3B1ABA6A4A4A19E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9A9A9A9C9A74
-7F89898E929494949494949494949492928F8F8E8E89898987878785858585858585858787878787
-8785858484817F7F7F7F7F7C7C7C7C797676767674747474747472726E6C6A6A6A6766615F5C5755
-514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF7C85878E949A9EA6AEB9C1C8D3D4D4D9D9D4D4CFCFC9C6C4C1BBB9B6B1AE
-A9A49E9C9C9C9EA3A6AEB1B9BEC4C6CCCFD3D3D4D4D4D3D1CFCCC6C0BBB6B1AEA9A6A49E9C99948F
-877F766C615C544F54595D5F6667676766615F5F5F616166676A6A6A6A6A6A6A6A67615F55555C5F
-5F61616767676767676A6A6767676767676767676A6A6A6A6C6C6C6C6C6C6C727274747474747474
-76767676767676797B7C7C7C7C7C7C7F7F8184878789898C8F929292949494999A9A9A9A9A999994
-94949492928F8E8989878784817F7F7C7976767676797C7C7F7F8184878787898C8F929292929494
-96999A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9EA1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949292928F8F8F8E8E8E8E8E8E8C8C8C8C8C
-898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8C8C8E8E
-8E8E8E8E8E8E8E8E8E8F92929292929292929292928F8F8F8F929292929292929292949494949494
-94999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494929292929292928F8E8E8E8E
-8E8E8E8E8E8E8E8E8989898989878789898989898987878481817F76848F969EA6ACB1B7B7B9BEBE
-BEBEBEBEBEBEC0C1C1C1C4C4C1C1C1BBB7B3AEA9A4A19C9A9492897F878E949CA3A6AEB1B9BEC6C6
-C8CCCFCFCFCFC8C6C1BEB9B6B1AEA9A6A49E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A767F
-878989898E9294949494949494949492928F8E8E8E89898989878787858585858585858587878787
-8585848484817F7F7F7F7F7C7C7C7C797676767674747474747474726E6C6A6A6A6A6761615D5755
-544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF7F87898F949C9EA6B1B9C1C8D3D3D4D9D4D4D1CFCCC6C6C1BEBBB9B1AEA9
-A6A19C9C9A9C9EA4ABB1B9BEC1C6CCCFD3D4D4D7D9D4D4D3D1CCC6C1BBB9B1AEA9A6A4A49E9C9992
-89847C72675F574F4F575C5F6167676A6767616161616166676A6A6C6C6C6C6C6A6A67615D55555D
-5F6161666767676767676A6A67676767676767676A6A6A6A6A6C6C6C6C6C6C717272747474747474
-747676767676767676797C7C7C7C7C7C7C7F7F8487878789898E9292929494949999999999999694
-9494949292928F8C8987878784817F7F7C79767676797C7C7F7F818487878789898E8F8F92929494
-94999A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A3A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A999694949494949494949494949494949494949494949494949494
-949494949494949494949494949494949494949494949494929292928F8F8F8F8F8F8F8E8E8E8E8E
-8E8E8E8E8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8F92929292929292929292929292929292929292929292929294949494949494
-999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9996949494949494949292928F8F8F8F8E8E8E8E8E
-8E8E8E8E8C8C8C8C8989898787878787898989878785817F7F7F747F89949CA4ABB1B7B9B9BEC0C1
-C1C0C0BEBEC0C1C1C6C6C6C6C6C4C1BBB7B1AEA9A49E9C99928E728992949CA3A6ABB1B7BEC1C6C8
-CCCFCFCFCFCCC6C1C1B9B7B1AEA9A6A49E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A99997F8487
-89898989898F92929494949494949292928F8E8E8E8C898989878787858585858585858587878785
-8585848481817F7F7F7F7F7C7C7C7C7C767676767474747474747472716C6C6A6A6A6764615F5C57
-554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF7684878992999CA3A9B1B9C1C8D1D3D3D4D3D1CFCCC8C6C1C0BBB9B3AEABA6
-A49E9C9C9A9CA4A6AEB6BEC1C6CCCFD3D4D9D9D9D9D9D4D4D3CCC6C1BBB9B3AEABA9A6A49E9C9A94
-8F877F766C615D554F4F575D5F64676A6A6A676661616166676A6A6A6C6C6C6C6C6C6A67615C5557
-5F5F61616767676767676767676767676A6A6A6A6A6A6A6A6A6C6C6C6C6C6C6C7272747474747474
-7476767676767676767679797C7C7C797C7C7F7F8185878789898C8F929292949494949494969494
-9494949292928F8E898987878784817F7F7C767676797C7C7F7F7F818587878989898E8F92929494
-9499999A9A9A9A9A9A9A9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A3A4
-A4A4A4A4A4A4A4A4A3A1A3A3A3A19E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9E9E9E9E9E9C9C9C9C9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494949494949494949494949494949494
-949494949494949494949494949494949494949494949494929292929292929292928F8F8F8F8F8F
-8F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8F92929292929292929292929292929292929292929292949494999999999999
-999A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999999949494929292929292928F8E8E8E8E8E8C8C8C8C
-8989898989898989898987878787878787878584817F7F7C7C6A7C87929AA3A9AEB7BEBEBEC1C1C1
-C1C1C1C1C1C1C1C6C6C6C6C6C6C6C1BBB6B1AEA6A39E9A94926C87949A9CA3A6ABB1B4B9BEC6C6CC
-CCCFCFCFCFCCC4C1BEB9B1AEA9A6A4A19E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A99968187898E
-8989898989898F929292929294929292928F8E8E8E8C898989898787878585858585858587878585
-858584818181817F7F7F7F7C7C7C7C7C767676767474747474747472716C6C6A6A6A6766615F5D57
-55514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF7C87898F949A9CA4AEB3B9C1C9CFD1D3D3D1CFCCC9C6C4C1BEB9B9B1AEA9A4
-9E9C9C9C9C9EA6ACB4B9C1C6CCCFD3D4D9D9D9D9D9D9D9D4D3CFC8C1C0B9B6B1AEABA6A6A49E9C9A
-948C877C726A6157514F55575D61676A6A6A6A6A676666676A6A6A6A6C6C6E71716C6A6A615F5955
-575F6161666767676767676767676767676A6A6A6A6A6A6A6A6A6C6C6C6C6C6C7172747474747474
-747476767676767676767676797B7979797C7C7C7F8184878789898C8E8F92929494949494949494
-9494949292928F8E8E898989878785817F7C7C7979797C7C7C7F7F818487878989898E8F92929294
-949499999A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A3A4A4A4A4A4A4A4A4A3A3
-A3A4A4A4A4A4A4A3A19E9EA1A19E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9E9C9C9C9A9A9A
-9A9A9A9A9A9A9A9A99999A9A99949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494929292929292929292929292929292
-92929292928F8F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8F8F8F8F8F92929292929292929292929292929292949494949494949494999A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949292929292928F8E8E8E8E8E8C89898989
-8989898989898989898787858484848584817F7F7C7C79766C76818E949EA6AEB6BCC1C1C1C1C6C6
-C6C6C4C1C1C1C6C6C8C8C9C8C8C6C1BEB6B1ABA69E9C99947C89949A9EA4A6A9AEB3B7BCC1C6C9CC
-CFCFCFCFCFC6C1BEB9B6B1ABA6A4A39E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9981898E928F
-8E8C89898789898F92929292929292928F8E8E8E8E8C898989898787878585858585858585878585
-858584818181817F7F7F7F7C7C7C7C7C767676767474747474747472716C6C6A6A6A6A6761615F59
-5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF7F878992949C9EA6AEB3B9C1CCCFCFCFCFCFCCC9C6C6C1BEBBB9B3AEA9A6A3
-9E9C9C9A9EA4A9B1B9BEC4C8CFD3D4D9D9D9D9DCD9D9D9D4D3CFC9C6C1BBB9B1AEAEA9A6A6A39E9C
-9992897F766C665F574F4F55595F61676A6A6A6A6A6767676A6A6C6C6C6C727272716C6A67615F57
-545C5F61666767676767666666666767676A6A6A6A6A6A6A6A6A6C6C6C6C6C6C6C72727474747474
-7474767676767676767676767679767676797C7C7C7F7F8487878989898E8F929294949494949494
-9494929292928F8E8E8C8989898987817F7F7C7C7B7C7C7C7C7F7F818487878789898C8E8F929294
-94949499999A9A9A9A9A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A1A3A4A4A4A4A4A3A19E
-A1A1A3A3A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A
-9A9A9A9A9A9A9A999999999999949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494929292929292929292929292
-929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8F8F8F92929292929292929292929292929294949494949494949494949494999A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949492929292928F8F8F8E8E8E8E8C8989898989
-898987878787878787858481817F7F7F7F7F7C7976747472767C89949CA4AEB4B9C1C6C6C6C6C6C6
-C6C6C6C6C6C6C6C8CCCCCCCCC9C8C1BEB7AEA9A49E9A947F89999C9EA4A9ABAEB1B9B9BEC6C8CCCF
-CFCFCFCFCFC6C1BBB9B1AEA9A6A49E9E9C9C9A9A9C9C9C9C9C9C9C9C9C9C9C9C9A9A81898F929492
-928F89898787898C8E8F92929292928F8F8E8E8E8E8C898989898987878785858585858585858585
-8585858181817F7F7F7F7F7C7C7C7C7C797676767474747474747472726C6C6A6A6A6A6764615F5D
-5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFF7C84898E94999C9EA6AEB6BBC1CCCCCFCFCFCCC9C6C6C1C1BBB9B7B1AEA6A49E
-9C9C9A9CA3A6AEB6BEC1C6CCD1D4D4D9DCDCDCDCDCD9D9D7D4CFCCC6C1BEB9B6B1AEAEA9A6A4A19E
-9A948E877C746A615C554F51575C6166676A6C6C6A6A6A6A6A6A6C6C6C6E727272726E6C6A615F5C
-574F5F6166676767676766616464666767676A6A6A6A6C6C6C6C6C6C6C6C6C6C6C71727474747474
-7474747676767676767676767676767676767B7C7C7C7F7F8185878789898E8F9292929292929494
-9494929292928F8E8E8E8C8989898784817F7F7C7C7C7C7C7C7F7F818485878789898C8E8F929294
-9494949499999A9A9A9A9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A3A3A4A4A4A39E9E
-9E9EA1A1A3A3A3A19E9E9E9E9E9E9E9E9E9E9E9E9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A
-9A9A9A9A9A9A9A999494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949292929292
-92929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F
-92929292929292929292929294949494949494949494949494949494949499999A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A99969494949494949292928F8F8F8E8E8E8E8E8E8E898989898989
-898787878787878584817F7F7F7F7F7F7C7C7674746E74767687929AA3A9B1B9BEC6C8C8C8C8C8C8
-C8C6C6C6C6C6C8CCCCCFCFCCCCC9C4BCB3AEA69E9C9A8589999EA4A6A9AEAEB1B7B9BEC1C6CCCFCF
-D1CFCFCFCCC6BEB9B3AEA9A6A4A19E9C9C9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C7F898F92949494
-94928E8787878789898E8F929292928F8E8E8E8E8E8E898989898987878785858585858585858585
-85858581817F7F7F7F7F7F7F7C7C7C7C797676767674747474747472726C6C6A6A6A6A6766615F5F
-595754514F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFF7F878992949A9CA4A6AEB7BEC1C9CCCCCFCCCCC8C6C4C1BEB9B9B3AEA9A4A39E
-9C9A9C9EA6A9B1B9C1C6CCCFD4D4D9D9DCDCDCDFDCDCD9D9D4D1CCC6C1C0B9B7B3B1AEABA9A6A49E
-9C949289817672675F57514F55575F61676A6C6C6C6A6A6A6A6A6C6E727272727474726E6C6A665F
-5C55575F61676A6A6A6767616161616667676A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6E727274747474
-747476767676767676767676767676767676797C7C7C7C7F7F8484878789898E8F92929292929292
-929292929292928F8E8E8E8C89898787817F7F7F7C7C7C7C7C7F7F81818487878989898E8F929292
-9494949494999A9A9A9A9A9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A3A3A3A19E9E
-9E9E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9A9A9C9C9C9C9C9C9C9A9A9A9A
-9A9A9A9A9A9A99969494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-92929292929292929292928F8F8F8F8F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92
-929292929292929292949494949494949494949494949494969999999999999A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9999999999949494929292929292928F8E8C8C8C8C8C898989898989898989
-87878785858484817F7F7C7C7C7C7C7C767472716A747976818C949EA6AEB7BEC4C8C9C9C9C9C8C8
-C8C8C8C8C8C8CCCCCFCFCFCFCFC8C1B9B1A9A49E9C8C949CA4A6A9AEB1B1B6B7B9BEC1C4C9CCCFD1
-D3D1CFCFC9C4BEB7B1AEA6A6A49E9C9C9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C7F898F9294999A9C
-9A948F898784878789898E8F8F928F8E8E8E8E8E8E8E898989898989878787858585858585858585
-85858584817F7F7F7F7F7F7F7C7C7C7C797676767674747474747472726E6C6C6A6A6A676661615F
-5C5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF7981878C92949A9EA4A9B1B9BEC6C8C9CCCCC9C8C6C4C1C0BBB9B6B1AEA6A49E9C
-9A9C9CA4A6AEB6BEC6C9CFD3D4D9D9DCDFDFDFDFDFDCD9D9D4D3CFC8C6C1BBB9B6B1B1AEABA6A6A1
-9C99948F877C746C645D554F4F55595F64676A6C6C6C6C6C6C6C6C6E7272747474747472716C6A66
-5F59545961666A6A6A6A67666161616166676A6A6A6A6A6C6C6C6C6C6C6E71717171727274747476
-767676767676767676767676767676767676767C7C7C7C7C7F818184878789898C8F929292929292
-9292929292928F8F8E8E8E8C8989878784817F7F7F7C7C7C7C7F8181848487878789898C8F929292
-9494949494999A9A9A9A9A9A9C9C9C9C9C9C9C9E9E9E9E9E9E9E9C9C9E9E9E9E9E9E9EA19E9E9E9E
-9E9E9E9E9E9E9E9E9C9C9C9C9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9C9A9A9A9A9A
-9A999999999999949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-949292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F92
-9292929292929292929494949494949494949699999999999999999A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A99949494949494929292929292928F8E8C8989898989898989898989898987
-8784818181817F7F7C7C7C797674747472727171797C797C89929CA4AEB6B9C1C6CCCCCCCCCCC9C8
-C8C8C8C8C8CCCCCFD1CFCFCFCCC6BEB7AEA6A39C929A9EA4A6ABAEB1B3B9B9BBBEC1C6C6CCCFCFD3
-D3D1CFCFC6C1B9B3AEA9A6A49E9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C7F898F92949A9A9C9C
-9C9492898781848787898C8E8F8F8F8E8C8E8E8E8E8E8C8989898989878787858585858585858585
-85858584817F7F7F7F7F7F7F7C7C7C7C797676767674747474747474726E6C6C6A6A6A676661615F
-5D5757544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF7C85898F94999C9EA6A9B1B9BEC6C6C8C8C8C6C6C6C1C0BBB9B7B1AEA9A49E9C9A
-9C9C9EA6ABB1B9C1C8CCD1D4D9D9D9DFDFDFDFDFDFDEDCD9D4D3CFC9C6C1BEBBB9B6B1AEAEA9A6A4
-9E9A9492898176726A6159554F51575D61676A6C6C6C6C6C6C6C6C71727474747474747474716C6A
-666157545F646A6A6A6A6A6A666161616166676A6A6A6A6C6C6C6C6C6C6E72727272727272747476
-76767676767676767676767676767676767676797C7C7C7C7F7F818184878789898C8F8F8F8F8F92
-92929292928F8F8F8E8E8C8C898987878781817F7F7F7C7C7F7F8184848587878789898C8E8F9292
-949494949494999A9A9A9A9A9A9A9C9C9C9C9C9C9C9E9E9E9E9E9C9C9C9C9E9E9E9E9E9E9E9E9E9C
-9C9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9E9E9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A999494949494949494949494949292929292949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94929292929292929292929292929292929292928F8E8F8F8F8F8F8F8F8F8F8F8F8F8F9292929292
-929292929292929294949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A99949494949494949292928F8F8F8F8E8C898989898989898787878787878785
-81817F7F7F7F7C7976747472727274747472767C7F7C76848F9AA3ABB1B9BEC4C9CCCCCCCCCCC9C9
-C9C9C9C9C8CCCFCFD3CFCFCFCCC4BCB1AEA69E899A9CA4A9ABAEB1B3B6B9BBBEC1C6C6CCCFCFD3D4
-D4D1CFCCC6BEB7B1ABA6A4A19E9C9C9A9C9C9E9E9E9E9E9E9E9E9E9E9E9E76898E92949A9C9C9E9E
-9C9A948F898181858789898C8E8E8E8C8C8E8E8E8E8E8C8989898989898787878585858585858585
-85858584817F7F7F7F7F7F7F7C7C7C7C7B767676767474747474747472716C6C6A6A6A6A6761615F
-5F5C5755514F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF727F878C92949A9CA3A6ABB1B9BEC4C6C6C6C6C6C6C1C0BBBBB9B3B1ABA6A39E9C9A
-9C9EA4A9AEB6BEC6CCCFD4D9D9D9DCDFDFDFDFDFDFDFDCD9D4D3CFCCC6C1C0BBB9B6B1B1AEABA6A4
-9E9C969289877C746C675F57544F55575F61676A6C6C6C717171727272747474747474747474726C
-6A665F575161676A6C6C6C6A6766615F6161676A6A6A6A6C6C6C6C6C6C6C71727272727274747476
-7676767676767676767676767676767676767676797C7C7C7C7F7F818184878789898C8E8E8E8E8F
-8F8F9292928F8F8E8E8C8C8989898987878481817F7F7C7F7F7F8184858787878789898C8E8F9292
-949494949494999A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9E9E9E9C9C9C9C9C9C9C9E9E9E9E9E9C9C9C
-9C9C9C9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9C9C9C9A9A9A9A9A9A99999A9A9A9A9A9A
-99969494949494949494949494929292929292929494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949292929292929292929292929292929292928F8F929292929292929292929292929292929292
-929292929292929494949494949494949496999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A99999494949494949292928F8E8E8E8E8E89898989898989878787878787858481
-7F7F7F7F7C7976747472727274767674767F7F7F7F7C7F89949EA6AEB7BEC1C6CCCFCCCCCCCCCCCC
-CCCCCCC9C9CCCFD1D3CFCFCCC8C1B9B1A9A47F969EA4A9AEAEAEB1B6B9B9BEC1C1C6C8CCCFD1D3D4
-D3CFCFC8C1B9B3AEA9A4A39E9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E72878C9294999C9E9EA3A3
-9E9C949289877F84878789898C8C8C8C898C8E8E8E8E8C8989898989898787878585858585858585
-85858584817F7F7F7F7F7F7F7C7C7C7C7C767676767474747474747472716C6C6C6A6A6A6764615F
-5F5D5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF7C81898E92949A9EA4A6AEB3B9BEC1C6C6C6C6C4C1C1BEBBB9B3B1AEA6A49E9C9C9C
-9EA1A6AEB4B9C1C6CFD3D9DCDCDCDFDFE1E1E1E1DFDFDED9D4D3CFCCC6C1C0BBB9B6B1B1AEABA6A4
-A39C9A928E877F76726A615D554F4F555C61666A6C71717272727272727474747476767674747472
-6C6A6661574F666A6C6C6C6C6A67665F5F61616A6A6C6C6C6C6C6C6C6C6C71727274747474747474
-767676767676767676767676767676767676767676797C7C7C7F7F7F81818485878989898C8C8C8E
-8E8E8F928F8F8E8E8C8C898989898987878584817F7F7F7F7F7F818487878787878989898E8F9292
-929494949494999A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9A9A9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A999999999999999999
-99949494949494949494949494929292929292929494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494929292929292929292929292929292929292929292929292929292929292
-9292929494949494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99
-9999999999999999949494929292929292928F8C8C8C89898989898989898787878585848481817F
-7F7C7C79767674747476797C7C797B7F8181847F7C7687929CA6ACB6BEC1C6CCCFCFCFCFCFCCCCCC
-CCCCCCCCCCCFD1D3D4CFCCCCC6BEB7AEA6768EA3A4A6AEB1B1B1B3B9B9BBBEC1C6C6CCCFCFD3D4D4
-D1CFCCC6BEB9B1ABA6A49E9C9C9C9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E84899294999C9EA1A4A6A4
-A39C99928E8781818787898989898C8C89898E8E8E8E8C8989898989898987878785858585858585
-85858584817F7F7F7F7F7F7F7C7C7C7C7C767676767674747474747472716C6C6C6A6A6A6766615F
-5F5D5957554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF7F87899294999C9EA4A9AEB3B9BEC1C1C4C6C1C1C1BEBBB9B7B1AEA9A69E9C9C9A9C
-9EA4ABB1B9BEC4CCD3D4D9DFDFDFDFE1E1E1E1E1DFDFDCD9D4D3CFCCC6C1C0BBB9B6B1AEAEA9A6A4
-A19E9A948F89817C746C676159554F51555F61676A71717272727474747474767676767676767474
-726C6A6661575F6A6A6C6C6C6C6A67615F5F61676A6A6C6C6C6C6C6C6C6C6C727274747474747474
-76767676767676767676767676767676767676767676797C7C7C7F7F7F8181848587898989898989
-8C8E8E8F8F8E8E8E8C8989898989898787858584817F7F7F7F7F818485878787878789898C8F9292
-929494949494999A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9A9A9A9A9A9A9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A999494949494949496
-94949494949494949494949494949494949292949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494929292929292929292929292929292929292929292929494929292929292
-92929294949494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99
-949494949494949494949492929292928F8E898989898989898989898987878784818181817F7F7F
-7C7976767676767C7F7F7F7F7F7F81858787817F797F8C96A1ABB4BCC4C6C6CCD1CFCFCFCFCFCCCC
-CCCCCCCCCCCFD3D4D4CFCCCCC4BCB1AEA4879CA6A9AEB1B3B3B1B7B9B9BEC0C1C6C8CCCFD1D3D4D4
-CFCCC9C4BCB6AEA9A49E9E9C9C9C9A9C9C9E9E9EA19E9E9E9E9E9E9E7F898F94999C9C9EA4A6A6A6
-A49E9A94928985818587878989898C8989898C8E8E8E8C8989898989898987878785858585858585
-85858585817F7F7F7F7F7F7F7C7C7C7C7C797676767674747474747472726C6C6C6A6A6A67666161
-5F5F5C5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFF7C7F878C92949A9CA1A6ABB1B3B9BEC1C1C1C1C1C0BEBBB9B9B3AEABA6A49E9C9C9A9C
-A3A6AEB6BEC4C8D1D4D9DEDFE1E1E1E1E1E1E1DFDFDFD9D9D4D1CFCCC6C1C0BBB9B6B1AEAEA9A6A4
-9E9C9A949289857F76726A665F57554F51575F646A6C727274747474747476767676767679797676
-74746C6A666157616A6C6C6C6C6C6A67615F5F61676A6C6C6C6C6C6E6E7171717274747474747476
-7676767979797976767676767676767676767676767676767B7C7C7F7F7F7F818185878989898989
-898C8E8E8F8E8E8C89898989898989878787858481817F7F7F7F7F8185878787878989898C8E8F92
-9294949494949499999A9A9A9A9A99999A9A9A9A9C9C9C9C9C9C9A9A9A9C9C9C9C9C9C9C9C9A9A9A
-9A9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9C9C9A9A9A9A9A9A9A99999A9A99969494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949292929292929292949494949494949494949494949494949292929292
-92929494949494949494949499999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9996
-94949494949494949492929292928F8F8C89898989898987878787878787878481817F7F7F7F7C79
-767679797C7C7F8484848484848787878787817C7C87929CA6AEB7BFC6CCCCD1D3D1CFCFCFCFCCCC
-CCCCCCCCCFD1D4D4D3CFCCC8C1B9B1A98194A6AEB1B3B9B9B7B6B9B9BBBEC1C4C6C9CCCFD3D4D4D3
-CFCCC6C1B9B1AEA6A39E9C9C9A9A9C9C9C9E9EA3A39E9E9E9E9C9C7C898F92949A9C9EA4A6A9A9A6
-A4A19C94928C878484878787898989898989898E8E8C8C8989898989898989878785858585858585
-85858584817F7F7F7F7F7F7F7F7C7C7C7C797676767674747474747472726C6C6C6C6A6A67666161
-5F5F5D5757544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFF7F84898F92949A9EA4A6AEB1B3B9BEBEC0C1C1C0BEBEBBB9B7B1AEA6A49E9E9C9C9C9E
-A4ACB4B9C1C6CCD4D9DCDFE1E1E1E1E1E1E1E1DFDFDCD9D9D4CFCFCCC6C1C0BBB9B6B1AEAEA9A6A4
-9E9C9A94928C877F79746C67615D57514F545D61676A7172747474747676767676767979797C7C79
-7676746E6A676157676A6C6C6C6C6C6A665F5F61666A6C6C6E717171717272727272747474767676
-76767C7C7C7C7C797976767676767676767676767676767676797C7C7C7F7F7F7F81858787878989
-89898C8E8E8E8C8C89898989898987878787858584817F7F7F7F7F8184878787898989898C8E8F92
-929292949494949499999A9A9A9A999699999A9A9A9A9C9A9A9A9A9A9A9A9A9A9C9C9C9C9A9A9A9A
-9A9A9A9A9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999699999999949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949292929292
-929494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994
-949494949494949492928F8F8F8E8E8989898787878787878787878785858581817F7F7C7C7C7979
-7C7C7F7F84878787878787878789898987857F76848E9AA4AEB6BEC6CCCFD1D4D4D3D1D1CFCFCFCC
-CCCCCCCCCFD3D4D9D3CFCCC6BEB6AE7F92A4B1B3B7B9BBB9B9B9B9BBBEBEC1C6C6CCCFD1D3D4D9D3
-CCC8C6BEB6AEA9A49E9E9C9A9A9A9C9C9E9E9EA3A19E9E9C9C9C66878E9294999C9EA4A6A9ABA9A6
-A6A49C96928F898784878787898989898989898C8E8C8C8989898989898989878785858585858585
-8585848484817F7F7F7F7F7F7F7C7C7C7C797676767676747474747472726E6C6C6C6A6A67666161
-5F5F5D5957554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFF767F87899294999C9EA4A9AEB1B3B9BBBEBEC0C0BEBEBBB9B9B3AEA9A6A49E9C9C9A9CA4
-A6AEB7BEC6CCD1D7D9DFE1E1E1E1E1E1E1E1DFDFDEDCD9D4D3CFCFCCC6C1C0BBB9B6B1AEAEA9A6A4
-9E9C9A94928C877F7C746E6A665F59554F4F575F61676C727474767676767979797979797C7C7C7C
-7C797674726C6A61596A6A6C6C6C6C6A6A646161616A6A6C6E727272727272727272747476767676
-76797C7C7C7C7C7C7C7C79797976767676767676767676767676797C7C7C7C7F7F7F818587878789
-8989898C8E8C8C898989898989878787878785858584817F7F7F7F818487878789898989898E8F92
-92929292949494949496999999999994949999999A9A9A9A99999999999A9A9A9A9A9C9C9A9A9999
-999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A9A9A9A999494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-9494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494
-9492929292929292928F8E8E8E8C8989878787878787858585858585858584817F7F7C7C7C7C7C7F
-7F8185878989898C8C898989898E8C8987817C7F89949EA9B1BCC4CCCFD1D3D4D4D3D3D1CFCFCFCC
-CCCCCCCCCFD3D4D9D3CFC9C6BCB1A9929EABB1B6B9BBBBBBBBBBBBBBBEC1C1C6C8CCCFD1D4D4D9D1
-CCC6C1B9B1AEA6A49E9C9A9A9A9A9C9C9E9E9EA19E9E9C9C9C9C87899294949A9EA3A6A6ABABA9A9
-A6A69E9A929289878785878789898989898989898C8C898989898989898989878785858585858585
-8584848484817F7F7F7F7F7F7F7C7C7C7C797676767676747474747474726E6C6C6C6A6A67666161
-5F5F5F5C5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFF7C81878E92949A9C9EA6A9AEB1B3B7BBBBBBBEBEBBBBB9B9B6B1AEA6A4A39E9C9C9CA1A6
-AEB6BEC1C8CFD4D9DCDFE1E1E1E1E1E1E1E1DFDFDCD9D9D4D1CFCCC9C6C1C0BBB9B6B1AEABA6A6A3
-9E9C9A94928E89817C74726A67615F57554F4F595F666A717474767679797C7C7C797C7C7C7C7C7C
-7C7C7C7974726C6A615C6A6A6C6C6C6C6A6A616164676A6C6C727272727272727272747476767679
-79797C7C7F7F7F7C7C7C7C7C7C7976767676767676767676767676797C7C7C7C7C7F7F8185858787
-898989898C8C89898989898987878787878785858584817F7F7F7F818485878787898989898C8E8F
-929292929294949494949494949494949494949999999A99969494949999999A9A9A9A9A9A999996
-999999999A9A9A9A9A9A9A9A9A9A9A999999999999999A9A99949494949494949494949494949494
-94949494949494949494949494949494999999999999999999969494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-9494949494949494949496999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494
-949292929292928F8E8C8C89898987878787858585858585858585858584817F7F7C7C7C7F7F7F81
-878789898E8F928F8F8F8E8E8F8E8989857F7987929AA4AEB9BEC6CFCFD1D4D4D4D4D3D1CFCFCFCF
-CFCFCFCFD1D4D9D9D3CFC8C1B7AE8E9AA6B1B1B6B9BBBBBBBBBBBBC0C1C1C6C6CCCFCFD3D4D9D4CF
-CCC6BEB7AEA9A69E9C9C9A9A9A9C9C9C9E9E9E9E9E9C9C9C9C85899292949A9C9EA4A6ABAEAEA9A9
-A6A69E9A92928E898787878789898989898989898C89898989898989898989878785858585858585
-8584848481817F7F7F7F7F7F7F7C7C7C7C7B767676767676747474747472716C6C6C6C6A6A676161
-5F5F5F5D5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFF727F85898F92969A9EA4A6A9AEB1B3B7B9B9BBBBBBBBBBB9B7B3AEA9A6A49E9E9C9C9EA4A9
-B1B9C1C6CCD1D7D9DCDFE1E1E1E1E1DFDFDFDFDCDCD9D9D4D1CFCCC8C6C1C1BBB9B9B3B1ABA9A6A4
-9E9C9994928E89847F76726C67615F5C57554F545D61676C727476797C7C7C7C7C7C7C7C7C7C7C7F
-7F7C7C7C7C7674716A665C6A6C6C6C6C6C6A676664676A6C6C717272727272747474747474767979
-7C7C7C7C7F7F7F7F7F7F7F7C7C7C7B767679797676767676767676767979797C7C7C7F7F81848485
-87898989898989898989898787878787878785858484817F7F7F7F7F8185878787898989898C8E8E
-8F8F92929292929494949494949494949494949494999999949494949494969999999A9A9A999494
-94949499999999999A9A9A9A9A9A9A99949494949699999999949494949494949494949494949494
-94949494949494949494949494949496999A9A9A9A9A9A9999999999999999999694949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494969699999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494
-9292929292928F8C898989898987878585858585858585858585858584817F7F7F7F7F8184878787
-898C8F9292929292929292928F8E89878176818C949EA9B6B9C1CCCFCFD3D4D4D4D4D3D1CFCFCFCF
-CFCFCFCFD1D4D9D4CFCCC6BCB487949EA9B6B6B9B9BBBBBBBBBBBEC0C1C1C6C8CCCFD1D4D4D9D4CF
-C8C1B9B1A9A6A49E9C9C9A9A9A9C9C9C9C9E9E9E9C9C9C9A8189929294999C9EA1A6A9AEAEAEA9A9
-A6A6A39C94928F898987878789898989898989898989898989898989898989878785858585858585
-8585848181817F7F7F7F7F7F7F7C7C7C7C7C767676767676747474747472716C6C6C6C6A6A676461
-5F5F5F5D5957554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFF7C8187899294999C9EA4A6ABAEB1B3B7B9B9B9BBBBBBB9B9B6B1AEA9A4A49E9C9C9CA3A6AE
-B6BEC6C8CFD4D9D9DCE1E1E1E1E1E1DFDFDFDFDCD9D9D4D3CFCFCCC8C6C1C1BBBBB9B3B1AEA9A6A4
-9E9C9A94928F89877F7C746E6A615F5F5757544F575F616A6C7474767C7C7C7F7F7C7C7C7C7F7F7F
-7F7F7F7C7C7C7974726C675F4F6C6C6C6C6C6A6A66676A6A6C6E727274747474747474747476797C
-7C7C7C7C7F7F7F7F7F7F7F7F7F7C7C7B79797C7976767676767676767676767679797C7C7F7F8181
-8587898989898989898987878787878787858584848181817F7F7F7F818485878787898989898C8E
-8E8F8F92929292929494949492929292949494949494949494949494949494949499999999999494
-9494949494949699999999999A9A9996949494949494949494949494949494949494949494949494
-949494949494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999999999999969494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949496999999
-999999999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494
-9292928F8F8E89898989898787878585858585858585858585858584817F8181848587878989898E
-8F9292949494929292929292928E89847C7C89929CA6B1B9BEC6CCCFCFD3D4D4D4D4D3D1D1CFCFCF
-CFCFCFCFD3D4D9D1CCC6C1B77C999CA4B1B7B7B9BBBEBBBBBBBBC0C1C1C6C6C9CCCFD3D4D9D9D4CF
-C6BEB7AEA6A49E9C9C9A9A9A9A9C9C9C9C9E9E9C9C9A9A7F89929294949A9C9EA3A6AEB1B1AEABA9
-A6A6A39C94928F8E8987878787898989898989898989898989898989898989878787858585858585
-8585848181817F7F7F7F7F7F7F7C7C7C7C7C767676767676747474747472716C6C6C6C6A6A676661
-615F5F5F5C5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFF7F84898E92949A9C9EA4A6ABAEB1B3B7B9B9B9B9B9B9B9B6B1AEABA6A49E9E9E9E9EA4A9B1
-B9C1C8CCD1D4D9D9DFE1E1E1E1E1E1DFDFDFDCD9D9D9D4D3CFCFCCC8C6C4C1BEBBB9B6B1AEA9A6A4
-A39E9C9994928C89847F79746C665F5D5C5757514F575F666A7274767C7C7F7F7F7F7C7C7F7F7F7F
-817F7F7F7F7F7F7C76746E6A5F516C6C6C6C6C6A6A676A6A6C6E727274747474747474747476767C
-7C7C7C7C7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C797676767676767676767676767676797C7C7F7F
-8185878787878989898787878787878785858484818181817F7F7F7F7F8184858787878989898989
-8C8E8F8F929292929292949292929292929494949494949494949494949494949494949499949494
-94949494949494949494969999999994949494949494949494949494949494949494949494949494
-949494949494949494949999999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999999
-99999694949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494999999999999999A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999969494929292
-92928F8E8C8989898787878787858585858585858585858585858584818485878789898C8E8F9292
-9294949494949494949292929289877F76878F99A1ABB6BEC1C6CFD1D1D3D4D4D4D4D3D3D1CFCFCF
-CFCFCFCFD3D4D9CFC8C4BE728E9EA4A9B6B9B9B9BBBEBEBEBBBEC0C1C4C6C8CCCFD1D3D4D7D9D1C8
-C1B9B4ABA6A39E9C9C9A9A9A9A9C9C9C9C9E9C9C9C9A7C8792929494999A9C9EA4A9AEB1B1AEABA9
-A6A6A39C9692928E8989878787898989898989898989898989898989898989898787858585858585
-8585848181817F7F7F7F7F7F7F7C7C7C7C7C797676767676767474747472726C6C6C6C6A6A676661
-615F5F5F5D5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFF7C7F87898F94999A9CA3A6A9ABAEB1B3B6B7B9B9B9B9B9B7B3B1AEA9A4A39E9E9E9EA3A6AEB6
-BEC6CCCFD3D9D9DCDFE1E1E1E1E1E1DFDFDFDCD9D9D4D4D1CFCCC9C8C6C4C1BEBBB9B6B1AEA9A6A4
-A49E9C9A94928F8987817C76726A615F5C5757554F545C5F676C74767C7F7F7F7F7F7F7F7F7F7F81
-8181818181817F7F7C7674726A61546C6C6C6C6A6A6A6A6A6C6E7172747474747474747474747679
-7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C797676767676767676767474747676767C7C7F
-7F818587878787878787878787878785858484818181817F7F7F7F7F7F7F81848587878787898989
-898C8E8E8F8F92929292929292929292929292949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494999A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A999999999996949494949494949494949494949494949494949494949494949494949494949494
-949494949494949494949494949494949494949494949494949494949494999A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999994949492929292
-928F8E8C898989878787878585858585858585858585878787878785878789898E8F929292929494
-9494999999949494949492928E87817C7F89949CA6AEBCC1C4CCD3D3D3D4D4D4D4D4D3D3D1CFCFCF
-D1D1D1D1D3D4D4CCC6C172849EA6ABB1B9B9B9BBBEC0C0BEBEC0C1C1C6C6C8CCCFD1D1D4D4D4CCC6
-BEB7AEA6A49E9C9C9C9A9A9A9A9A9C9C9C9C9C9C9A76878F929494969A9C9EA1A6A9AEB3B1AEAEA9
-A6A4A39C9994928F8C89878787898989898989898989898989898989898989898787858585858585
-85858481817F7F7F7F7F7F7F7F7F7C7C7C7C797676767676767474747472726C6C6C6C6A6A6A6764
-615F5F5F5D5957554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFF7F84878C9294999C9EA4A6A9AEB1B1B3B6B6B7B9B9B9B7B3B1AEA9A6A49E9E9E9E9EA4A9B1B9
-BFC6CFD1D4D9DCDEDFE1E1E1E1E1DFDFDFDCD9D9D9D4D3D1CFCCC8C6C6C4C1C0BBB9B7B1AEA9A6A6
-A4A19C9C9994928E8987817C76716A5F59575757554F555C616A7276797C7F7F7F7F7F7F7F7F8184
-84848484848484817F7F7C76746C61556C6C6C6C6C6A6A6A6C717272727474747474747474747676
-797C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C79767676767676767674747474747676797C
-7F7F818485878787878787878787858585848181817F7F7F7F7F7F7F7F7F7F818485878787878989
-89898C8C8E8F8F929292929292929292929292929292949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9999999999999996949494949494949494949494949494949494949494949494949494
-949494949494949494949494949494949494949494949494949494949494999A9A9A9A9A9A9A9A9A
-9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494929292929292
-928F8E89898987878785858585858585858787878787878787878787898E8F929292929494949494
-999A9A9A999994949494929289857C7C87929AA4ACB7C1C6C6CFD3D3D3D4D4D4D4D4D3D3D1CFCFD1
-D1D1D1D1D3D4D1C8C184929EA6AEB1B9BBBBBBBEC0C0C0C0C0C0C1C4C6C6CCCFD1D1D1D3D4D1C6C1
-B9B1ABA49E9E9C9C9A9A9A999A9A9C9C9C9C9C9C9A878F92949494999A9C9EA3A6AEB1B3B1AEAEA9
-A6A4A19C9A94928F8E89898787898989898989898989898989898989898989898787858585858585
-858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C797676767676767474747472726E6C6C6C6A6A6A6766
-615F5F5F5F5C5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FF767F85898F92949A9C9EA4A6A9AEB1B1B3B3B3B6B7B6B6B3B1AEABA6A4A3A19E9EA1A3A6AEB3BE
-C4CCD1D4D9DCDEDFE1E1E1E1E1E1DFDFDEDCD9D9D9D4D3CFCFCCC8C6C6C4C1C0BBBBB7B1AEABA9A6
-A4A49E9C9A9A9492928E89847F766E675F57575757554F575F676C74797C7F7F7F7F817F81818484
-878787878787878584817F7C79746C5F546C6C6C6C6C6A6A6C717272727474747474747474747476
-76797C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7C7C7F7C7C7C7B79767676767676747474747474747679
-7C7F7F81848484858787878787858585858481817F7F7F7F7F7F7F7F7F7F7F7F8184858787878789
-898989898C8E8E8F8F92929292929292929292929292929294949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949499999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9999999999999996949494949494949494949494949494949494949494
-9494949494949494949494949494949494949494949494949494949494999A9A9A9A9A9A9A9A9A9C
-9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99969494949292928F8F8F
-8E8E8C8989878787858585858587878787878787878789898989898E92929294949494949499999A
-9A9A9C9A9A9994949494928C877F76848E949EA6B4BCC6C6CCD1D4D4D4D4D4D4D4D4D4D3D1CFD1D3
-D3D3D3D3D3D7CFC689929CA6A9AEB3B9BBBBBEC0C0C0C0C0C0C1C1C6C6C8CCCFD3D1CFD3D4CCC4BE
-B7AEA6A19E9C9C9A9A9A99999A9A9A9C9C9C9C9A7F8E9294949494999A9C9EA4A9AEB1B3B1B1AEA9
-A6A4A19C9A9492928E8C898987898989898989898989898989898989898989898787858585858585
-858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C797676767676767474747474726E6C6C6C6C6A6A6766
-61615F5F5F5D5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FF7C8187899294949A9CA1A4A6A9AEAEB1B1B3B3B3B3B3B3B1AEABA9A6A4A4A39EA3A4A4ABB1B9BF
-C6CFD3D4D9DCDFDFE1E1E1E1E1E1DFDFDCD9D9D9D7D4D3CFCFCCC8C6C6C6C1C1BEBBB9B3B1AEA9A6
-A6A4A39E9C9C9A949494928C877F766C665D57555757555459616A7276797C7F7F7F818181848487
-8787878787878787878484817F7C766C5F6C6C6C6C6C6C6C6C717272727474747474747474747474
-7676797C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C797979797676767474747474747476
-797C7F7F7F8184818484858785858585858584817F7F7F7F7F7F7F7F7F7F7F7F8184858585878787
-89898989898C8C8E8E8F8F9292929292929292929292929292929494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999999999996969494949494949494949494949494
-9494949494949494949494949494949494949494949494949499999999999A9A9A9A9A9A9A9A9A9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949292928F8E8E8E
-8C8C8989898787858587878787878787878789898989898C8E8F9292949494949499999A9A9A9A9C
-9C9C9C9A9A99999494928F89817C7F89949CA4AEB7C1C6CCCFD4D4D4D4D4D4D4D4D4D4D3D1D1D1D3
-D3D3D3D3D4D4CC8C9299A4AEAEB1B6BBBBBBC0C0C1C1C0C0C0C1C4C6C6C9CFCFD3D1CFD1D1CBC1B9
-B1A9A49E9C9C9C9A9A9994999A9A9A9C9C9A9A7C8E9292949494999A9C9CA3A6A9AEB3B3B1B1AEA9
-A6A4A19C9A9492928F8E898989898989898989898989898989898989898989898787858585858585
-858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C79767676767676747474747472716C6C6C6C6A6A6A67
-64615F5F5F5D5957554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-727F85878E9294999C9EA3A6A6ABAEAEB1B1B1B1B3B1B1B1B1AEA9A6A4A4A4A3A3A4A4A6AEB3BBC4
-CCD3D4D9DCDFDFE1E1E1E1E1E1DFDFDCDCD9D9D9D4D4D1CFCCC9C6C6C6C6C1C1C0BBB9B6B1AEABA9
-A6A6A4A39E9E9C9C9C9C9A948F8981766C615C5555555554555D646C7476797C7F7F818484858587
-878789898989898987878787847F7C766A5D6C6C6C6C6C6C6C717274747474747474747474747474
-747676797C7C7C7F7F7F7F7F7F7F7F817F7F7F7F7F7F7F7C7C7C797C7C7976767474747474747474
-76767C7F7F7F81818181818484858585858584817F7F7F7F7F7F7F7F7F7F7F7F8184858585878787
-898989898989898C8C8E8E8F8F929292929292929292929292929292929494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999494949494949494949494949494
-9494949494949494949494949494949494949494949494949999999A9A9A9A9A9A9A9A9A9A9A9C9C
-9C9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9999999999949492929292928F8E8C8989
-898989898787878787878787898989898989898C8E8E8F92929292949494999A9A9A9A9A9C9C9C9C
-9C9C9C9A9A9A9994928F89877F7C87929AA3ABB4BEC6CCCFD3D4D4D4D4D4D4D4D4D4D4D3D1D1D3D3
-D4D4D4D4D461879C9C9EA6AEAEB1B9BBBBBBBEC0C1C1C1C1C1C1C6C6C6CCCFD1D3D1CFCFCFC6BEB6
-AEA6A19E9C9C9A9A999494999A9A9A9A9A9A7F899292949494999A9A9C9EA4A6ABB1B3B3B1B1AEA9
-A6A49E9C9A9494928F8E898989898989898989898989898989898989898989898787858585858585
-858585817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C767676767676747474747472716C6C6C6C6A6A6A67
-66615F5F5F5F5C5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-7C8187898F9294999C9EA4A6A9ABAEAEB1B1B1B1B1B1B1B1AEA9A6A4A4A4A4A4A4A4A6A9B1B9BEC6
-D1D4D9D9DFDFDFE1E1E1E1E1DFDFDFDCD9D9D9D4D4D3D1CFCCC8C6C6C6C6C4C1C1C0BBB9B3B1AEAB
-A9A6A6A4A4A19E9E9E9C9C9A9492897F746C61595555555551575F676C74767C7F7F7F8185858787
-87898989898989898989878787877F7C7266596C6C6E6E6E6E727274747474747474747474747474
-74747676797C7C7C7F7F7F7F7F7F8181817F7F7F7F7F7F7F7C7C7C7C7C7C79767474747474747474
-7476797C7F7F7F817F7F7F8184848585858584817F7F7F7F7F7F7F7F7F7F7F7F7F81848585858787
-8989898989898989898E8E8E8F8F8F92929292929292929292929292929292929494949494949494
-94949494949494949494949494949494949494949494949292929294949494949494949494949494
-9494949494949494949496999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494949494
-949494949494949494949494949494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9C9C
-9C9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A99999996969494949292929292928F8E898989
-898989898787878787898989898C8C8E8E8E8F8F9292929294949496999A9A9C9C9C9C9C9C9C9C9C
-9C9C9C9C9A999494928E877F76848E949EA6AEB9C1C8CCCFD1D4D4D4D4D4D4D4D4D4D3D3D1D1D3D4
-D4D4D4D4717FA3A4A4A4AEB1B1B3B9BBBBBBBEC0C1C1C1C1C1C4C6C6C8CCCFD3D3D1CFCFCCC1B9B1
-ABA49E9C9C9A9A999494969A9A9A9A9A9A7F899292949494999A9A9A9CA3A6A9AEB1B3B3B3B1AEA9
-A6A49E9C9A9694928F8E8E8989898989898989898989898989898989898989898787878585858585
-85858581817F7F7F7F7F7F7F7F7F7C7C7C7C7C797676767676767474747472716C6C6C6C6A6A6A67
-6661615F5F5F5C5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-7F8587899294949A9C9EA4A6A9ABAEAEAEB1B1B1B1B1B1AEABA6A6A4A4A4A4A4A4A6A6AEB3BBC1CC
-D4D9D9DCDFDFDFE1E1E1E1E1DFDFDCD9D9D9D9D4D4D3CFCFCCC8C8C6C6C6C6C1C1C0BEB9B6B1AEAE
-ABA9A6A6A6A4A4A4A19E9E9C9A9492877C726A5F57555555554F59616A7174767C7F7F8184878787
-8989898C8E8C8989898989898987817C766C61576C71717171727274747474747474767474747474
-7474767676797C7C7C7F7F7F7F7F818481817F7F7F817F7F7F7C7C7C7C7C7C767674747474747474
-7474767B7C7F7F7F7F7F7F7F81848485858584817F7F7F7F7F7F7F7F7F7F7F7F7F81848585858787
-8789898989898989898C8E8E8E8E8F8F8F9292929292929292929292929292929292929494949494
-94949494949494949494949494949494949494949494949292929292929292929292929292929494
-9494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999694949494949494949494949494
-9494949494949494949494949494949494949494949494999A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C
-9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9996949494949494929292928F8F8F8E8C898989
-8989898989878989898C8E8F8F8F929292929292929494949499999A9A9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9A9A9994928F8981767F89949CA4AEB4BCC4C9CCCFD1D3D3D3D3D3D3D4D4D4D3D1D1D1D3D3
-D4D38F969EA6ABAEAEAEB3B3B3B3B9BBBBBBBEC0C1C1C1C1C1C6C6C6CCCFD1D4D3D1CFCFC6BEB6AE
-A9A49E9C9A9A99949494999A9A9C9C9C7C898E92949494999A9A9A9C9EA4A6ABB1B3B3B3B3B1AEA9
-A6A49E9C9A999492928F8E8C89898989898989898989898989898989898989898987878585858585
-85858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C797676767676767474747472726C6C6C6C6A6A6A6A
-6764615F5F5F5D5957554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C
-8187898E9294949A9C9EA4A6A9ABAEAEAEB1B1B1B1AEAEAEA9A6A6A4A4A4A4A4A6A6A9B1B9C0C6CF
-D4D9D9DCDFDFDFE1E1E1DFDFDFDEDCD9D9D9D4D4D3D3CFCFCCC8C8C8C6C6C6C6C1C1C0B9B9B3B1AE
-AEA9A9A9A6A6A6A6A4A4A39E9C9A928E857972675F5754555555555D666C7274797C7F8184878787
-8989898E8E8E8C89898989898989877F7C746A5F5471727272727274747474747676767674747474
-747476767676797C7C7C7F7F7F7F8184848181818181817F7F7F7F7C7C7C7C797674747474747474
-747476797C7C7F7F7F7F7F7F7F81818485848481817F7F7F7F7F7F7F7F7F7F7F7F81848585858587
-8789898989898989898C8E8E8E8E8E8E8F8F92929292929292929292929292929292929292929494
-94949494949494949494949494929294949494949494929292929292929292929292929292929292
-929494949494949494949499999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494949494
-9494949494949494949494949494949494949496969699999A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C
-9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9994949494949292928F8F8F8E8E8E8C89898989
-89898989898989898E8F92929292929294949494949494999A9A9C9C9C9C9C9E9E9E9E9E9C9C9E9E
-9C9C9C9A9994948F89847C7B87929AA1A9B1B6BEC6CCCCCFD1D3D3D3D3D3D3D3D3D3D3D1CFCFD1D3
-D489949CA4ABAEB1B1B6B9B7B7B7BBBBBBBBBEC0C1C1C1C1C4C6C6C8CCCFD3D4D3D1CFCCC4B9B1AB
-A69E9C9C9A9994949494999A9C9C9C81898C92949496999A9A9A9C9CA3A6A9AEB1B3B3B3B3B1AEA9
-A6A49E9C9C999492928F8E8C89898989898989898989898989898989898989898987878585858585
-85858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7676767676767474747472726C6C6C6C6A6A6A6A
-6766615F5F5F5F5C5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F
-8487898F9294969C9EA1A4A6A9ABAEAEAEAEAEB1AEAEAEA9A6A6A4A4A4A4A4A4A6A6AEB3BBC1C8D1
-D9D9D9DCDFDFDFDFDFDFDFDFDFDCD9D9D9D9D4D4D3D1CFCFCCC9C9C8C8C6C6C6C4C1C1BEB9B6B1AE
-AEABABABA9A6A6A6A6A6A4A49E9C948F897F766C675F5751555555575F676C72767C7F8184878787
-89898C8E8E8E8E8C898C8C8C898987847F7672675D6C727272727274747476767676767676747474
-74747476767676797C7C7C7F7F7F7F8185848181818181817F7F7F7F7F7F7F7C7676747474747474
-74747676797C7C7F7F7F7F7F7F7F818184848181817F7F7F7F7F7F7F7F7F7F7F7F7F818485858587
-878989898989898989898E8E8E8E8E8E8E8E8F929292929292929292929292929292929292929292
-92929494949494949494949494929292929292929292929292929292929292929292929292929292
-929494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494949494949494949494
-94949494949494949494949494949494949499999999999A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9E
-9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9994949494949492928F8E8E8E8C8C89898989898989
-8989898989898C8E929292949494949494949496999A9A9A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E
-9C9C9C9A99949289877C76848E949EA6AEB6B9C1C9CCCCCFD1D1D1D1D1D1D1D3D3D3D1CFCFCFD1D3
-7C9C9C9EA6AEAEB1B3B7B9B9B9B9BBBBBBBBBBC0C1C1C1C1C6C6C6C8CCCFD3D4D1CFCCC6BEB6AEA9
-A49E9C9A9994949494999A9C9C9C81898F92949499999A9A9C9C9C9EA4A6ABAEB3B3B3B3B3B1AEA9
-A6A49E9C9C9A9494928F8F8E8C898989898989898989898989898989898989898987878585858585
-8585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767676767474747472726E6C6C6C6A6A6A6A
-676661615F5F5F5C5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7981
-87898C929294999C9EA3A4A6A9ABAEAEAEAEAEAEAEAEABA9A6A4A4A4A4A4A4A6A6A9B1B7BEC4CCD3
-D9D9D9DFDFDFDFDFDFDFDFDFDCDCD9D9D9D4D4D3D3D1CFCFCCCCCCC9C8C8C6C6C6C1C1BEB9B6B1B1
-AEAEAEAEABA9A9A9A9A6A6A6A49C949289877F746A665F575455555557616A6C74767C8184858787
-8989898E8E8E8E8C8C8C8E8E8C8989877F7C746C6457727272727274767676767679767976767474
-7476767676767676797C7C7C7F7F7F8184858481848484848181817F7F7F7F7C7C76767474747474
-74747476797C7C7C7F7F7F7F7F7F7F81818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F818485858587
-878789898989898989898C8E8E8E8E8E8E8E8F929292929292929292929292929292929292929292
-92929292929294949494949492929292929292929292929292929292929292929292929292929292
-929294949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494949494
-949494949494949494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E
-9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A99999994949492929292928F8E8C8C89898989898989898989
-8989898C8C8E8F929294949494969999999A9A9A9A9C9C9C9C9C9E9E9E9EA1A3A4A39E9E9E9E9E9E
-9C9C9A9A949289877F767F89949CA4ABB6B9BEC4CCCCCCCFCFCFCFCFD1D1D1D1D1D1D1CFCFCFCF72
-92A6A4A4ABB1AEB1B3B9B9B9BBBBBBBBBBBBBBC0C1C1C1C1C6C6C8CCCFCFD3D3CFCCCCC4B9B1A9A6
-9E9C9A999494949494999A9C9C81899294949499999A9A9A9C9C9EA3A6A9AEB1B6B3B3B3B3B1AEAB
-A6A49E9C9C9A969492928F8E8C898989898989898989898989898989898989898987878585858585
-8585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767676767474747472726E6C6C6C6C6A6A6A
-6A6764615F5F5F5D5957554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F84
-87898E9292949A9C9EA4A6A6A9ABAEAEAEAEAEAEAEABA9A6A6A4A4A4A4A4A4A6A9AEB1B9C1C6CFD4
-D9D9DCDFDFDFDFDFDFDFDFDFDCD9D9D9D7D4D4D3D3D1CFCFCCCCCCCCC9C8C8C6C6C4C1BEB9B6B3B1
-B1AEAEAEAEAEAEAEA9A9A6A6A49E9A928E878179726A615D555555555559616A7174797F81858787
-898989898E8E8E8E8C8E8E8E8C898987847F79746A6155727272747476767679797C7B7979767676
-767676767676767676797C7C7C7F7F8184858584848485858484848181817F7F7C7C767674747474
-7474747676797C7C7C7F7F7F7F7F7F7F8181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818485858585
-87878989898989898989898E8E8E8E8E8E8E8F929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929494949494949494949496999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494949494949494949494
-9494949494949494949494949494949494999A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9E9E9E9E9E
-9E9E9E9E9E9E9C9C9C9C9C9C9C9A9A999494949292929292928F8C89898989898989898989898989
-8C8C8E8E8F9292949499999A9A9A9A9A9A9C9C9C9C9C9C9C9E9E9E9EA3A4A4A4A4A3A19E9E9E9E9C
-9C9C9A94928E877F767C87929A9EA6B1B9BEC1C6CCCCCCCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF6C87
-A4ABA9A6B1B3B1B1B6B9B9B9BBBBBBBBBBBBBBC0C0C1C1C1C6C6C8CCCFD1D4D1CFCCC6BEB6AEA6A4
-9E9C9A9494949494949A9A9C858992949499999A9A9A9A9C9C9C9EA4A6ABAEB3B6B3B3B3B1B1AEAB
-A6A49E9E9C9A999492928F8E8E898989898989898989898989898989898989898987878585858585
-858585858481817F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676747474747472716C6C6C6C6A6A6A
-6A6766615F5F5F5F5C5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767F87
-89898F9294949A9C9EA4A6A6A9ABAEAEAEAEAEAEABA9A9A6A4A4A4A4A4A4A6A6A9AEB7BEC4C8CFD9
-D9D9DCDFDFDFDFDFDFDFDFDCDCD9D9D9D4D4D4D3D1CFCFCCCCCCCCCCCCC9C8C6C6C6C1C0B9B7B3B1
-B1B1B1B1AEAEAEAEABA9A9A6A49E9C949289847F746C6A615C55555555545C666A72767C81848787
-878989898C8E8E8E8C8E8E8E8E8C898787817C76726A5F72747474747679797C7C7C7C7C7C797676
-76767676767676767676797C7C7C7F7F8485858585858587878787858484817F7F7C7C7674747474
-747474767676797C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184858585
-87878989898989898989898C8E8E8E8E8E8E8E8F9292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292928F92929292929292929292929292929292
-92929294949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999694949494949494949494949494949494
-9494949494949494949699999999999999999A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9E9E9E9E9E9E
-9E9E9E9E9E9E9C9C9C9C9C9C9A9A9994949492929292928F8E898989898989898989898989898C8E
-8E8E8F92929494999A9A9A9A9C9C9C9C9C9C9C9C9C9E9E9E9EA1A3A4A4A4A4A4A4A4A39E9E9E9E9C
-9C9A94928F89817C79848E949CA6AEB7BEC1C6CCCCCCCCCFCFCFCFCFCFCFCFCFCFCFCFCFCFCF879A
-B6B1AEAEB6B6B1B1B6B9B9B9BBBBBBBBBBBBBBBEC0C1C1C4C6C8CCCCCFD3D4CFCCC8C4BCB1A9A49E
-9C9A999494949494999A74878E94949499999A9A9A9A9A9C9C9EA3A6A9AEB1B6B6B3B3B3B1B1AEAB
-A6A4A19E9C9C99949292928F8E8C8989898989898989898989898989898989898987878585858585
-858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676747474747472726C6C6C6C6A6A6A
-6A676661615F5F5F5C5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C8487
-898E929294999C9C9EA4A6A6A9ABAEAEAEAEABABA9A9A6A6A4A4A4A4A4A6A6A9ABB1B9C1C6CCD3D9
-D9D9DCDFDFDFDFDFDFDFDFDCD9D9D9D4D4D4D4D3D1CFCFCCCCCCCCCCCCCCC8C8C6C6C1C0BBB9B6B3
-B1B1B1B1B1B1AEAEABA9A9A6A49E9C949289877F7C726C67615957555555545F676C74767F848787
-87878789898E8E8C8C8C8E8E8E8E8C8987857F7C746E66597274747476797C7C7C7C7C7C7C7C7C79
-7676767676767676767676797C7C7C7F818585858585858787878787858484817F7F7C7C76767474
-74747474767676797C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184858585
-87878789898989898989898C8E8E8E8E8E8E8E8F8F8F929292929292929292929292929292929292
-929292929292929292929292929292929292929292928F8E8F929292929292929292929292929292
-92929294949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494949494949494
-94949494949494949699999999999999999A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9E9E9E9E9E9E
-9E9E9E9E9E9C9C9C9A9A9A9A9A9994949292928F8F8F8F8C898989898989898989898989898C8E8F
-8F92929494949A9A9C9C9C9C9C9C9C9C9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A39E9E9E9C9C
-9A99948F89857C767F89929AA3ABB1BBC1C6C8CCCCCCCCCFCFCFCFCFCFCFCFCFCFCFCFCFCF92A4B6
-BBB9B7B3B9B7B3B3B7B9B9B9BBBBBBBBBBBBBBBEC0C1C1C6C6C8CCCFCFD3D4CFC8C6C1B7AEA6A39E
-9C9994949494949499748592949499999A9A9A9A9A9A9A9C9C9EA4A6ABAEB3B9B6B3B3B3B1B1AEA9
-A6A4A39E9C9C9A949492928F8E8C8989898989898989898989898989898989898987878585858585
-858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C76767676767474747472726E6C6C6C6C6A6A
-6A676761615F5F5F5D5957554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767F8789
-898F9292949A9C9E9EA4A6A6A9ABABAEAEABABA9A9A9A6A4A4A4A4A4A6A6A6A9AEB6BEC4C8CFD4D9
-D9DCDFDFDFDFDFDFDFDCDCD9D9D9D9D4D4D3D3D3D1CFCFCCCCCCCFCCCCCCC9C8C6C6C1C0BBB9B9B6
-B3B3B1B1B1B1B1AEAEA9A9A6A49E9C94928C87817C74726C675F5957555555545F6771747C7F8587
-8787878789898C8C898C8E8E8E8E8E898787847F79746C615574747476797C7C7C7F7F7F7F7C7C7C
-797676767676767676767676797C7C7F7F848585858585858787878787858481817F7F7C7C767674
-7474747476767676797C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184858585
-8587878989898989898989898E8E8E8E8E8E8C8E8E8F8F8F92929292929292929292929292929292
-9292929292929292929292929292929292929292928F8E8E8E8F9292929292929292929292929292
-9292929494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494949494949494949494949494
-9494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9E9E9E9E9E9E9E
-9E9E9E9E9C9C9C9A9A9A9A9A99949492928F8E8E8E8E8C89898989898989898989898989898E8F92
-9292949494999A9A9C9C9C9C9E9E9E9E9E9E9EA1A3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9C9C9A
-9994928C877F767F8992999EA6AEB9C0C1C6C8CCCCCCCCCCCCCCCCCCCFCFCFCFCFCFCFCF99A4AEB9
-BBBBBBB9B9B9B6B3B9B9B9BBBBBBBBBBBBBBBBBEC0C1C1C6C6CCCCCFD1D3D3CFC6C4BEB1A9A49E9C
-9A949494949494967485929494999A9A9A9A9A9A9A9A9C9C9EA3A6A9AEB1B6B9B6B3B3B1B1B1AEA9
-A6A4A39E9C9C9A949492928F8F8E8C89898989898989898989898989898989898987878785858585
-85858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7976767676747474747472716C6C6C6C6A6A
-6A676766615F5F5F5F5C5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C818789
-8C8F9294969A9C9E9EA4A6A6A9ABABAEABABA9A9A9A6A6A4A4A4A4A6A6A6A9AEB1B9BFC6CCD3D9D9
-DCDCDFDFDFDFDCDCDCDCDCD9D9D9D4D4D3D3D3D3D1CFCFCCCFCFCFCFCCCCC9C8C6C6C1C0BBB9B9B6
-B3B3B3B1B1B1B1AEAEA9A9A6A49E9A94928E89847F79746E6A645F595755555554616A72767C8184
-848587878789898989898C8E8E8E8C89898787817C76726A5F51747476797C7F7F7F7F7F7F7F7F7C
-7C797676767676767474747676797C7C7F81848585858585878787878785858481817F7F7C7C7976
-7674747676767676797C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81848585
-8587878989898789898989898C8E8E8E8E8E8C8C8C8E8E8E8F8F8F929292929292928F8F8F8F8F92
-9292929292929292929292928F8F8F8F8F8F8F8F8F8F8E8E8E8F9292929292929292929292929292
-9292929294949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494949494949494
-94949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9C
-9C9C9C9C9C9C9A9999999994949492928F8E8C8C8989898989898989898989898989898C8C8E8F92
-9292949496999A9C9C9C9C9E9E9EA1A3A3A4A4A4A4A4A4A4A4A4A4A6A4A4A4A4A4A4A19E9E9C9A9A
-94928E877F767C878E949CA4ABB1B9C1C1C6C8CCCCCCCCCCCCCCCCCCCCCCCCCCCCCFCF929CA6B1BB
-BBBBBBBBBBB9B9B6B9B9B9BBBBBBBBBBBBBBBBBEC0C1C1C6C8CCCFCFD1D4D1CCC6C1B9AEA6A39E9C
-999494949494946787929494999A9A9A9A9A99999A9A9C9C9EA4A6ABAEB3B9B9B6B6B3B1B1AEAEA9
-A6A6A49E9C9C9A99949292928F8E8C89898989898989898989898989898989898989878785858585
-85858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7976767676747474747472726C6C6C6C6A6A
-6A67676661615F5F5F5C5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF727C878789
-8E8F9294999C9C9E9EA4A6A6A9A9ABABABA9A9A9A6A6A4A4A4A4A6A6A6A6ABAEB1BCC4C8CFD4D9D9
-DCDCDFDEDCDCDCDCD9D9D9D9D9D7D4D4D3D3D3D1CFCFCFCFCFCFCFCFCCCCCCC8C6C6C1C0BBB9B9B7
-B6B6B3B3B3B1B1AEAEABA6A6A39E9A94928E89857F7974726C6A615F595557555555616C74767C7F
-81848485878789898989898C8E8C8C89898787857F7C746E665C747476797C7F7F7F7F7F7F7F7F7F
-7F7C797676767474747474747676797C7C7F81848585858587878787878585858481817F7F7C7C7C
-7976767676767676797B7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81848585
-85878787898787878989898989898C8E8E8C898989898C8C8E8E8E8F8F8F9292928F8F8E8E8E8E8F
-8F8F8F8F929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292929292929292
-929292929494949494949494949496999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494949494949494949494949494
-94949499999999999A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C
-9C9C9C9C9C9A9996949494949492928F8E8C89898989898989898989898989898C8C8E8E8F929292
-94949494999A9A9C9C9C9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A6A6A4A4A4A3A3A19E9E9C9C9A96
-948E8781767C8789929AA1A6AEB6BBC1C1C6C8C9C9C9CCCCCCCCCCCCCCCCCCCCCCCC859E9EA6B1BB
-BBBBBBBBBBBBB9B7B9B9B9BBBBBBBBBBBBBBBBBEC0C1C1C6C8CCCFCFD3D4CFC9C6BEB4ABA49E9C9A
-99949494949494878E9494999A9A9A9A999996999A9C9C9C9EA4A9AEB1B6B9B7B6B3B3B1B1AEAEA9
-A6A6A49E9C9C9C99949292928F8F8E8C898989898989898989898989898989898989878785858585
-85858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7B7676767676747474747272716C6C6C6C6A
-6A6A676761615F5F5F5D5957554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7F87898C
-8F9292949A9C9C9EA1A4A6A6A9A9ABABA9A9A9A6A6A6A4A4A4A6A6A6A6A9AEB1B7BEC6CCD1D4D9D9
-DCDFDEDCDCDCD9D9D9D9D9D9D9D4D4D3D3D3D1D1CFCFCFCFCFCFCFCFCCCCCCC8C8C6C1C0BBBBB9B9
-B7B7B6B6B3B3B1AEAEA9A6A49E9C9A94928C89847F7C74746C6A67615D575557575555666C74767C
-7F81818484878789898989898C8C898989898787857F79746A61577474797C7F7F7F81818181817F
-7F7F7C797676747474747474747676797C7C7F81848585848487878787858585858481817F7F7C7C
-7C7B767676767679797C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818485
-858587878787878787878989898989898C898989898989898C8C8C8E8E8E8F8F8E8E8C8C8C8C8C8E
-8E8E8E8F8F8F8F8F8F8F928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292929292929292
-929292929494949494949494949494999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999
-999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999694949494949494949494949494949494949494
-949499999999999A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C
-9C9C9C9C9A9994949494949292928F8F8E89898989898989898989898989898C8E8F8F8F92929494
-949494999A9A9C9C9C9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A6A6A6A4A4A3A19E9E9E9C9C9A9994
-8F89817676848992999EA4A9AEB6BBC1C1C6C8C8C8C8C8C8C8C9C9CCCCCCCCC8C97694A6A6ABB6BB
-BBBBBBBBBBBBB9B9B9B9B9BBBBBBBBBBBBBBBBC0C0C1C4C6C9CFCFD1D3D4CFC6C1B9AEA69E9C9C9A
-949494949494878992999A9A9A9A9A99969494999A9C9C9EA4A6ABAEB1B9B9B7B6B3B3B1B1AEAEA9
-A6A6A49E9C9C9C9A94949292928F8E8C898989898989898989898989898989898989878785858585
-85858585858585817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7676767676747474747472716C6C6C6C6A
-6A6A676766615F5F5F5F5C5755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C8487898E
-8F9294999C9C9E9EA3A4A6A6A9A9ABA9A9A9A6A6A6A6A4A4A6A6A6A6A6ABAEB1B9C1C8CFD3D9D9D9
-DCDFDCDCDCDCD9D9D9D9D9D9D4D4D4D3D1D1D1D1CFCFCFCFCFCFCFCFCCCCCCC9C8C6C1C0BBBBB9B9
-B9B9B7B6B3B1B1AEABA6A6A49E9C9A94928C87817F7C7474716C6A645F5D575757575755676C7476
-7C7F7F7F7F84878789898989898989898989878785817C7672675D5174767C7C7F7F818181848481
-817F7F7C797676747474747474747476767C7C7F81848484848487878785858585858481817F7F7F
-7C7C7976767676797C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818184
-8485878787878787878787878989898989898989898989898989898C8C8C8C8C8989898989898989
-8C8C8C8C8E8E8E8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8F92929292929292929292929292
-9292929294949494949494949494949494969999999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9996
-99999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494949494949494949494
-9494999A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9C9C9C9C
-9A9A9A9A99949494929292928F8E8E8E8C89898989898989898989898989898E8F8F929292949494
-9494999A9A9C9C9C9E9E9EA1A4A4A4A4A4A4A6A6A4A4A4A4A4A6A6A4A4A19E9E9E9E9C9C9A94948F
-89847976818992949CA3A6AEB1B9BEC1C1C6C6C6C8C8C8C8C8C8C8CCCCCCCCC87287A4ABABAEB9BB
-BBBBBBBBBBBBB9B9B9B9BBBBBBBBBBBBBBBBBEC0C0C1C4C6C9CCCFCFD3D1CCC4BBB6ABA49E9C9A99
-9494949494848C92999A9A9A9A9999949494999A9A9C9C9EA6A9AEB1B3B9B9B7B6B3B1B1B1AEAEA9
-A6A6A49E9C9C9C9A94949292928F8E8E898989898989898989898989898989898989878787858585
-8585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7676767676747474747472726C6C6C6C6A
-6A6A67676661615F5F5F5C5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7F85898C8F
-9292949A9C9C9E9EA3A4A6A6A9A9A9A9A9A6A6A6A6A6A4A6A6A6A6A6A9AEB1B6BEC4CCCFD4D9D9DC
-DCDFDCDCDCD9D9D9D9D9D9D9D4D4D3D1D1D1D1D1CFCFCFCFCFCFCFCFCFCCCCC9C8C6C1BEBBBBB9B9
-B9B9B9B6B1B1AEABA9A6A49E9C9A96928F8987817C7C7674726C6C6A615F5C575757575757676C74
-767C7F7C7C7F818587878989898989898989878785847F79746C615774767C7C7F7F818184848584
-81817F7F7C797674747474747274747474767C7C7F81848481848487858585858585858481817F7F
-7F7C7C79767676797C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81
-81848585858585858587878787878989898989898787898989898989898989898989898989898989
-8989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8F928F8F8F8F92929292929292929292929292
-92929294949494949494949494949494949494949494969999999999999A9A9A9A9A9A9A9A999694
-94949494999A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494949494949494949494949494949494
-9494999A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A
-9A9A9A9694949292928F8F8E8E8C8C8989898989898989898989898989898C8E8F92929294949496
-99999A9A9C9C9C9E9E9E9EA3A4A4A6A6A6A6A6A6A4A4A4A4A4A4A4A4A39E9E9E9E9C9C9A94929289
-847C767F878F949A9EA6ABAEB1B9BEC1C1C6C6C6C6C6C6C6C6C6C8C9CCCCC87F8994B1B1B1B1BBBB
-BBBBBBBBBBBBB9B9B9B9BBBBBBBBBBBBBBBBBEC0C1C1C6C6CCCCCCCFCFCCC6BEB9B1A69E9C9A9996
-94949494818E92999A9A9A9A999694949494999A9C9C9EA4A6AEB1B1B7BBB9B7B3B3B1B1AEAEABA9
-A6A4A49E9C9C9C9A9994929292928F8E8C8989898989898989898989898989898989878787858585
-8585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676747474747272716C6C6C6C
-6A6A67676761615F5F5F5D5957554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C8187898E8F
-9294949A9C9C9E9EA4A4A6A6A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A9A9AEB1B7BEC6CCD1D4DCDCDC
-DCDFDCD9D9D9D9D9D9D9D4D4D4D4D3D1D1D1D1CFCFCFCFCFCFCFCFCFCFCCCCC8C6C6C1BEBBBBBBB9
-B9B9B6B1B1AEAEA9A6A4A39E9C9A94928E89877F7C797674726E6C6A67615F5C57595C595C57546C
-7274767C7C7C7F818487878989898989898987878581817C76726A5F55767C7C7F7F818484858585
-8481817F7F7C797674747474727272747474767C7C7F7F8181818484858585858585858584817F7F
-7F7F7C7C797676797C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-81818481818181818484858787878787878989878787878787898989898989898989898989898989
-89898989898989898E8E8E8E8E8E8E8E8E8E8E8E8F8F929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949496999999999999999A9A999494
-9494949496999A9A9A9A9A9A9A999999999999949494949494949494949494949494949494949494
-9494999A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9A9A
-999994949492928F8E8C8C8989898989898989898989898989898C8C8E8E8E8F9292929494949999
-999A9C9C9C9E9E9EA1A1A1A3A4A4A6A6A6A6A6A6A4A4A4A4A4A4A4A39E9E9E9E9C9C9A94928F8984
-7C767C878E949A9EA4A9AEB1B6BBBEC1C1C6C6C6C6C6C6C6C6C6C6C8C9C9C894A3AEB9B7B6B6BBBB
-BBBBBBBBBBBBB9B9B9B9BBBBBBBBBBBBBBBBBEC0C1C1C6C6CCC9C9CCCFC6C4B9B6ACA49C9C9A9994
-9494727F899494999A9A9A9A9994949494969A9A9C9EA3A6A9B1B1B6B9BBB9B7B3B3B1B1AEAEABA9
-A6A4A49E9E9C9C9A9994949292928F8E8C8989898989898989898989898989898989898787858585
-8585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676747474747472716C6C6C6C
-6A6A67676766615F5F5F5F595755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C84878C8F92
-9294999A9C9C9EA1A4A4A6A6A9A9A9A6A6A6A6A6A6A6A6A6A6A6A9A9ABAEB1B9C1C6CFD3D9DCDCDC
-DEDEDCD9D9D9D9D7D4D4D4D4D4D3D3D1D1D1D1CFCFCFCFCFCFCFCFCFCFCCCCC8C6C6C1BEBBBBBBBB
-B9B6B3B1AEAEABA6A6A49E9C9A9694928C87857F7C767472726C6C6A6A66615F5C5C5D5D5D5F5C55
-6A71727476767C7F8184858787878989898787878581817F7C746C615774797C7F7F7F8185858585
-858481817F7F7C79767474747472717272747476797C7C7F7F7F8184858585858585858584817F7F
-7F7F7C7C7C797676797C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F81817F7F7F818181848485878787878787878787878787878787878989898989898989898989
-89898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949496999999949494
-9494949494999A9A9A9A9A9A9A999494949494949494949494949494949494949494949494949494
-949496999A9A9A9A9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9A9A99
-9994949492928E8C8989898989898987878789898989898989898E8E8F8F8F8F929292949496999A
-9A9C9C9C9E9E9EA3A3A4A4A4A4A4A6A6A6A6A6A6A4A4A4A4A4A4A49E9E9E9C9C9C9994928F89847C
-767C878C92999CA4A6ABB1B3B9BBBEC1C1C6C6C6C6C6C6C6C6C6C6C8C9C89AA4ABB6B9B9BBBBBBBB
-BBBBBBBBBBBBB9B9B9B9BBBBBBBBBBBBBBBBC0C0C1C1C6C6CCC8C6C9CCC4BEB7AEA69E9C9A999494
-9494818C929494999A9A9A9A9994949494999A9C9EA1A4A9AEB1B6B9B9BBB9B6B3B3B1B1AEAEABA9
-A6A4A49E9E9C9C9A9994949292928F8F8E8C89898C89898989898989898989898989898787878585
-8585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676747474747472726C6C6C6C
-6A6A6767676661615F5F5F5C5755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C8185898E8F92
-92949A9C9C9E9EA1A4A4A6A6A6A9A9A6A6A6A6A6A6A6A6A6A6A6A9A9AEB1B3B9C1C9CFD4D9DCDCDC
-DFDCDCD9D9D9D9D4D4D4D4D4D4D3D1D1D1D1D1CFCFCFCFCFCFD1CFCFCFCCCCC8C6C6C1C0BBBBBBB9
-B7B3B1AEAEABA9A6A4A39E9C9C9994928987817F79747472726C6C6C6A6761615F5D5D5F5F5F5F5D
-57676C717274767C7F7F7F84878787878787878784817F7F7C76726A5F55767C7C7F7F8184858585
-85858481817F7F7C7B7674747472726C6E72727476767C7C7F7F7F8184858585858585858581817F
-7F7F7F7C7C7C7979797C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F818485858587878787878785858587878787878787878789898989898989
-8989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-9494949494999A9A9A9A9A9A99969494949494949494949494949494949494949494949494949494
-949494999A9A9A9A9A9A9A9A9A9A9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9A9996
-949492928F8E898989898989878787878787878989898989898C8E8F929292929292949494999A9A
-9C9C9C9E9E9EA3A4A4A4A4A4A4A6A6A6A6A6A6A6A4A4A4A4A4A49E9E9C9C9C9C9994928F89847C76
-7C858992999CA3A6ABAEB1B6B9BBBEC1C1C4C4C6C6C6C6C6C6C6C6C6C8949CA6AEB9B9B9BBBBBBBB
-BBBBBBBBBBBBB9B9B9BBBBBBBBBBBBBBBBBEC0C0C1C1C6C8C9C6C6C8C6BFB9B1ABA49C9C99949494
-94858992929494999A9A9A9994949494949A9C9C9EA4A6AEB1B3B9B9BBB9B9B6B3B1B1B1AEAEABA9
-A6A4A49E9E9C9C9A9A9494929292928F8E8C89898C8C898989898989898989898989898787878585
-8585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676767474747472726E6C6C6C
-6C6A6A67676761615F5F5F5D595755514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797C8187898F9292
-94999A9C9C9E9EA3A4A4A6A6A6A9A6A6A6A6A6A6A6A6A6A6A6A6A9ABAEB1B7BEC6CCD1D4DCDEDEDF
-DFDCDCD9D9D9D4D4D4D4D4D4D4D3D1D1D1D1D1CFCFCFCFCFD1D1CFCFCFCCC9C8C6C4C1C0BEBBB9B9
-B6B1B1AEABA9A6A6A49E9E9C9C9994928F89847C76747271716C6C6C6A6A66615F5F5F5F615F5F5F
-5F5C556A6C6C7274767C7F7F848787878787878484817F7F7F7C746E665C547C7C7F7F8184858585
-8585858481817F7F7C7C7676747472716C6C6E72747476797C7C7F7F81848585858585858584817F
-7F7F7F7F7C7C7C797B7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F8184858585858587878585858585858585878787878787878789898989
-898989898989898989898989898E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292
-92929292929292949494949494949494949494949494949494949494949494949494949494949494
-94949494949499999999999999949494949494949494949494949494949494949494949494949494
-949494999A9A9A9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A999494
-92928F8E8C898989878787878787878787878989898989898C8E8F92929292929294949696999A9C
-9C9C9C9E9EA1A3A4A4A4A4A4A4A6A6A6A6A6A6A4A4A4A4A4A4A19E9C9C9C9A9994928E87817C767C
-848992949CA1A6A9AEB1B1B7B9BBBBC0C1C1C1C1C1C1C1C1C1C6C6C689A3A3A6B1B9B9B9BBBBBBBB
-BBBBBBBBBBBBBBB9B9BBBBBBBBBBBBBBBBBEC0C1C1C4C6C8C8C6C6C6C1BEB6AEA69E9C9A94949494
-85898E9292949499999A9A9994949494999A9C9EA4A6A9AEB3B7B9BBBBB9B9B6B3B1B1B1AEAEABA9
-A6A4A49E9E9C9C9A9A9694949292928F8E8E898C8C8C898989898989898989898989898987878785
-8585858585858585817F7F7F7F7F7F7F7C7C7C7C7C7C7C79767676767676747474747472716C6C6C
-6C6A6A67676766615F5F5F5F595755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7F84898E8F9294
-94999A9C9C9E9EA3A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9AEB1B3B9BFC6CFD3D9DEDFDFDF
-DFDCD9D9D9D9D4D4D4D4D4D4D3D3D1D1D1D1CFCFCFCFCFCFD1D1CFCFCFCCC8C6C6C1C1C0BBB9B9B6
-B3B1AEABA9A6A6A4A39E9C9C9C9994949289857F7674726C6C6C6C6C6A6A676661615F5F61616161
-615F5D5761676A7274767C7C7F8485858585848481817F7F7F7C76726C6157797C7C7F8184858585
-858587858481817F7F7C7C79767474726C6C6C6C72747474767C7C7F7F818485858585858584817F
-7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F8184858585858585858585858585858585858585878787878789898989
-898989898989898989898989898C8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292
-92929292929292929292929294949494949494949494949494949494949494949494949494949494
-94949494949494949494949694949494949494949494949494949494949494949494949494949494
-94949494999A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A99949492
-8F8E8989898787878787878585858587878989898989898C8E8F92929292929494949999999A9A9C
-9C9C9E9E9EA3A4A4A4A4A4A4A6A6A6A6A6A6A6A4A4A4A4A3A19E9E9C9C9A9994928C87817C767C84
-898F949C9EA4A6A9AEB1B3B9B9BBBBBEC1C1C1C1C1C1C1C1C1C1C17F99A6A6ABB3B9B9B9BBBBBBBB
-BBBBBBBBBBBBBBBBB9BBBBBBBBBBBBBBBBBEC0C1C1C6C6C8C6C6C4C6BEB9B1ABA49E9A999494947F
-878992929494949499999994949494999A9C9EA3A6A9AEB1B9B9B9BEBBB9B9B6B3B1B1B1AEAEABA9
-A6A4A49E9E9C9C9A9A999494929292928F8E8C8C8C8E898989898989898989898989898987878785
-8585858585858585817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C767676767676747474747472716C6C6C
-6C6A6A6767676661615F5F5F5C575554514F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C8187898E929294
-949A9A9C9C9E9EA4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9AEB1B3B9C1C8CFD4D9DFDFDFDF
-DCD9D9D9D9D4D4D4D4D3D3D3D3D3D1D1D1D1CFCFCFCFCFCFD1D1CFCFCFCCC8C6C6C1C0BBBBB9B7B3
-B1AEAEA9A6A6A4A39E9E9C9C9A9A9494928C877F76726C6C6A6C6C6C6A6A6A676461616161616461
-6664615F5C5761676C7274797C7F7F81818181817F7F7F7F7F7C797471675F557C7C7F7F81858585
-85878787878484817F7F7F7C79767472716C6A6A6C72747474767C7C7F7F8184858585858585817F
-7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F81848485858585858585858585858585858585858585878787898989
-89898989898989898989898989898E8E8E8E8E8E8E8E8E8F92929292929292929292929292929292
-92929292929292929292929292929294949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949492929294949494949494949494
-94949494999A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9A999999999999999492928E
-89898787878787878585858585858787878989898989898C8E8F92929294949494999A9A9A9A9C9C
-9C9C9E9EA1A3A4A4A6A6A6A6A6A6A6A6A6A6A4A4A3A19E9E9E9E9C9C9A96949289877F7C767C8187
-8E949A9CA3A6A6ABAEB1B3B9B9B9BBBBBEBEBEC0BEBEBEBEBEC0768EA4ABABAEB9B9B9BBBBBBBBBB
-BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBC0C0C1C1C6C6C8C6C6C1C1B9B3AEA6A39C9A9494947C87
-898F929294949494969494949494999A9C9C9EA4A6AEB1B7B9B9BBC0BBB9B9B6B3B1B1B1AEAEABA9
-A6A4A49E9E9C9C9C9A999494949292928F8E8C8C8E8E8C8989898989898989898989898989878785
-858585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C767676767676767474747472716C6C6C
-6C6A6A6A67676761615F5F5F5D595755544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7F84878C8F929294
-969A9C9C9E9EA1A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9ABAEB1B6BEC6CCD1D4D9DFDCDCDC
-DCD9D9D9D7D4D4D3D3D3D3D3D3D1D1D1D1D1CFCFCFCFCFCFD1D1CFCFCFCCC8C6C6C1BEBBB9B9B3B1
-B1AEA9A6A6A4A19E9E9C9C9C9A9A9494928C877F79726C6A6A6A6C6A6A6A6A6A6761616161616667
-676A6766615F5D57666C717476797C7F7F7F7F7F7F7F7F7C7C7C7C74726C615C4F7C7C7F7F848585
-878787878787858481817F7F7C7C767472716A6A6A6C71727474767C7C7F7F818485858585858481
-7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F818181848485858585858585858585858585858585878787878789
-89898989898989898989898989898C8C8C8C8E8E8E8E8E8E8F8F8F8F8F8F92929292929292929292
-92929292929292929292929292929294949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949292929294949494949494949494
-9494949496999A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9A9A99999696949494928F8C89
-898787878784848485858585858787878989898989898C8E8F929292949494999A9A9A9A9A9A9C9C
-9C9E9E9EA3A4A4A4A6A6A6A6A6A6A6A6A6A6A4A49E9E9E9E9C9C9C9A99948F89877F7C767C7F878C
-92999C9EA4A6A9AEB1B1B3B9B9B9B9BBBEBEBEBEBEBEBEBEBEBE879AB1B1B1B1BBBBBBBBBBBBBBBB
-BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBEC0C0C1C1C6C6C6C6C1C1BBB7B1A9A69E9A999494798789
-8E929294949494949494949499999A9C9C9EA4A6ABB1B6B9BBBEBEC1BBB9B9B6B3B1B1B1AEAEABA9
-A6A4A49E9E9C9C9C9A999494949292928F8F8E8E8E8E8C8989898989898989898989898989878787
-858585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C767676767676767474747472716C6C6C
-6C6A6A6A67676766615F5F5F5F59575555544F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C8187898C8F929494
-999A9C9C9E9EA3A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9AEB1B3B9BEC6CFD3D9DCDCDCDCDC
-D9D9D9D9D4D4D3D3D3D3D3D3D3D1D1D1D1D1CFCFCFCFCFD1D1D1D1CFCFCCC8C6C4C1BEB9B9B6B1B1
-AEABA9A6A4A19E9E9C9C9C9C9A9994948F8987817C746C6A67676A6A6A6A6A6A6A67666664616767
-6A6A6A6A6A6766615F5C6A6C727474767C7F7F7F7F7F7C7C7C7C7C7674726A6157767C7C7F818787
-87878787878787858481817F7F7C7C7674726C6A67676A6C727474767C7C7F7F8184858585858584
-81817F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818181848485858585858585858585858585858787878787
-87878787898989898989898989898989898989898C8C8C8E8E8E8E8E8E8F8F8F8F8F8F9292929292
-92929292929292929292929292929292949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949292929294949494949494949494
-9494949499999A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9A99969494949494928F8C8987
-8787858481818181848585858787878989898C8C8C8C8E8F92929294949496999A9A9C9C9C9C9C9C
-9C9E9E9EA1A4A4A4A6A6A6A6A6A6A6A6A6A4A49E9E9C9C9C9C9C9A94928F89857F7C767C7F878992
-949A9CA3A6A6ABAEB1B1B6B9B9B9B9B9BBBBBBBBBBB9B9B9B9899AA6B6B6B6B6BBBBBBBBBBBBB9B9
-BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBEC0C1C1C1C6C6C6C1C1BEB9B1ACA6A39C9A96947984898C
-8F92929494949494949699999A9A9C9C9EA4A6A9AEB6B9BEBEBEC1C1BEB9B9B6B3B1B1B1AEAEABA9
-A6A4A49E9E9C9C9C9A99949494929292928F8E8E8E8E8E8C89898989898989898989898989878787
-858585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676767474747472726C6C6C
-6C6A6A6A6767676661615F5F5F5C575555544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797F8487898E92929494
-999A9C9C9E9EA3A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9ABAEB1B6B9C1C8CFD3D9DEDCDCDCDC
-D9D9D9D4D4D4D3D3D3D3D1D1D1D1D1D1D1D1CFCFCFCFCFD1D1D1D1CFCFCCC8C6C1C1BBB9B7B3B1AE
-AEA9A6A4A39E9E9C9C9C9C9A9A9994928E89877F7C746C6A6766676A6A6A6A6A6A6767676767676A
-6A6C6C6C6C6C6A6A6761615F576C727274797C7C7C7C7C7C7C79797674726E675F55767C7F7F8487
-878787878987878787848481817F7C7C7674726C6766676A6C717274767C7F7F7F81848585858585
-8481817F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818181848485858585858585858585858585878787
-878787878787878787898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F92
-92929292929292929292929292929292949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949492929292929292929292949494949494949494
-94949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949492928E898787
-858584817F7F81848585858587878989898C8E8E8E8F8F8F929292949494999A9A9C9C9C9C9C9C9C
-9E9E9E9EA1A3A4A4A6A6A6A6A6A6A6A6A4A4A19E9C9C9C9A9A9A94928E89857F7C79797F87898F94
-9A9C9EA4A6A9AEAEB1B3B6B9B9B9B9B9B9B9B9B9B9B9B9B95F9AA9B3B9B9BBBBBBBBBBBBBBBBB9B9
-B9BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBEC0C1C1C1C6C6C4C1BEB9B6AEA6A49E9A99947981898C8F
-929294949494949499999A9A9A9C9C9EA4A6A9AEB1B9BEC1C1C1C1C1BEB9B9B6B3B1B1B1AEAEA9A9
-A6A4A49E9E9C9C9C9A99949494949292928F8E8E8E8E8E8C89898989898989898989898989898787
-858585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676767474747472726C6C6C
-6C6A6A6A6A67676761615F5F5F5D57575555514F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C818789898E92929494
-999A9C9C9E9EA4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9AEAEB1B7BBC4CCCFD4D9DFDCDCDCD9
-D9D9D9D4D4D3D3D1D1D1D1D1D1D1D1D1D1D1D1CFCFCFCFD1D1D1D1CFCCCCC6C6C1C0BBB9B6B1B1AE
-A9A6A6A49E9C9C9C9C9C9C9A9994928F8C8984557674716A676466676A6A6A6A6A6A67676767676A
-6A6C71727272726E6C6A6A66615F5D6C7172747676767C79797676767674716A61594F767C7F8185
-87878789898989898787858585847F7C7C7674726A676466676A6E7274797C7F7F81818485858585
-8584817F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818181848484858585858585858585858585
-85858587878787878789898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F
-92929292929292929292929292929292929294949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949292929292929292929292949494949494949494
-949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949292928F89898785
-858584818181848585858587878789898C8E8F8F8F929292929294949499999A9C9C9C9C9C9C9C9C
-9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A19E9E9C9C9A999694928C87857F7C79797F8789929499
-9C9EA4A6A9ABAEAEB1B3B6B9B9B9B9B9B9B9B9B9B9B7B7B79AA4AEB9B9B9BBBBBBBBBBBBBBBBB9B9
-B9B9B9BBBBBBBBBBBBBBBBBBBBBBBBBBC0C0C1C1C1C6C6C1BEBBB7B1ABA49E9C9A99617F878C8F92
-92949494949494969A9A9A9C9C9C9EA4A6A9AEB1B7BEC1C1C1C4C6C1BEB9B9B6B3B1B1B1AEAEA9A9
-A6A4A4A19E9E9C9C9A9999949494929292928F8E8E8E8E8E89898989898989898989898989898787
-858585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7B7676767676767474747472726E6C6C
-6C6C6A6A6A67676766615F5F5F5F59575555544F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797F8487898C8F92929496
-9A9C9C9E9EA1A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9ABAEB1B3B9BEC6CCD1D4D9DFDCD9D9D9
-D9D9D4D4D3D3D1D1D1D1D1D1D1D1D1D1D1D1D1CFCFCFCFD1D1D1D1CFCCCCC6C6C1BEB9B7B3B1AEAB
-A6A6A49E9E9C9C9C9C9A9A9694928E87877255675F71726A6764616667676A6A6A6A6767676A6A6A
-6C6C7272747474747472716C6A676661615F6C7274747676767676747474726C675F5774797C7F84
-8787898989898989898987878787847F7F7C7974716A666161676A6C7274797C7F7F818184858585
-858584817F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818181818484848485858585858585
-85858585858585878787898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F
-92929292929292929292929292929292929292929292949494949494949494949494949494949494
-94949494949494949494949494949494949494949492929292929292929292949494949494949494
-949496999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949292928E8C89878585
-858584848485858585858787878989898E8E8F92929292929292949494999A9A9C9C9C9E9E9E9C9E
-9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A39E9E9C9A99949494928C87857F7C7C797F87899294999A
-9CA1A4A6A9ABAEAEB1B1B6B6B6B7B7B6B7B7B9B7B6B6B3929CA6B1B9B9B9B9BBBBBBBBBBBBBBB9B9
-B9B9B9B9BBBBBBBBBBBBBBBBBBBBBBBEC0C0C1C1C1C6C6BEB9B9B1AEA6A19C9C9A5F7F878E8F9292
-94949494949494999A9C9C9C9C9EA4A6A9AEB1B6B9C0C6C6C6C6C6C1BEB9B9B6B1B1B1AEAEAEA9A9
-A6A4A4A19E9E9C9C9A9A99949494949292928F8E8E8E8E8E8C898989898989898989898989898787
-858585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767474747474726E6C6C
-6C6C6A6A6A6767676661615F5F5F5C575555554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C818787898E8F92949499
-9A9C9C9E9EA3A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9AEAEB1B6B9C1C6CFD3D9DCDEDCD9D9D9
-D9D7D4D4D3D1D1D1CFD1D1D1D1D1D1D1D1D1D1CFCFD1D1D1D1D1D1CFCCCCC6C4C1BEB9B6B1AEAEA9
-A6A4A19E9C9C9C9C9A9A9494928E87817474726A61596A6A676161616666676A6A6A6A6A676A6A6A
-6C6E72747476767676767472726C6C6A6A6761615F597474747474747474726C6A615C54767C7F81
-8487898989898C8C8C89898989898787847F7C7C746E6A646161666A6C7274797C7F7F7F81848585
-858484817F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181818181848484858585
-858585858585858787878787898989898989898989898989898C8C8C8C8E8E8E8E8E8E8E8E8E8E8F
-92929292929292929292929292929292929292929292929292929292949494949494949494949494
-94949494949494929292929292929494949494949494949494949494949494949494949494949494
-9494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949492928F8E898987858585
-8585858585858585858787878989898C8E8F92929292929292949494999A9A9A9C9C9C9E9E9E9E9C
-9C9E9E9E9EA1A4A4A4A4A4A4A4A4A4A39E9E9C9A99949492928C87817F7C79797F87899294949A9C
-9EA4A6A6A9ABAEAEB1B1B3B3B6B6B6B3B3B3B6B3B3B1899CA3A9B6B9B9B9B9BBBBBBBBBBBBBBB9B9
-B9B9B9B9B9BBBBBBBBBBBBBBBBBBBBBEC0C1C1C1C1C6C1BEB9B6AEA9A49E9C9A617F87898F929494
-949494949494999A9C9C9C9E9EA4A6A9AEB1B3B9BEC1C6C6C6C6C1C1BEB9B9B6B1B1B1AEAEAEA9A6
-A6A4A4A19E9E9C9C9A9A99969494949292928F8F8E8E8E8E8C898989898989898989898989898787
-858585858585858585817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C797676767676747474747472716C6C
-6C6C6A6A6A6A67676761615F5F5F5D57575555514F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797F848789898E9292949499
-9A9C9C9E9EA3A4A6A6A6A6A4A6A6A6A6A6A6A6A6A6A6A9ABAEB1B3B9BBC1CCCFD4D9DCDCDCD9D9D9
-D9D4D4D3D1CFCFCFCFCFD1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1CFCFCCC9C6C1C1BBB9B1B1AEA9A6
-A4A39E9C9C9C9A9A999494928E8981747C76726A675F55676661616161646467676A6A6A6A6A6A6A
-6C71727476797C7C7C7C7C7674747272716C6C6A6766615F727472747472726E6A675F5774767C7F
-8487898989898C8E8E8F8E8C8C8989898787817F7C746C6A616161646A6C7276797C7C7F7F818484
-848481817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818181818184
-8485858585858585878787878787878787878989898989898989898989898C8C8C8E8E8E8E8E8E8E
-8F8F9292929292929292929292929292929292929292929292929292949494949494949494949494
-94949494949494929292929292929292929494949494949494949494949494949494949494949494
-9499999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949492928F8C89898785858585
-85858585858587878787878989898C8E8F9292929292929294949494999A9A9A9A9C9C9C9E9E9E9C
-9C9C9C9C9E9EA3A3A3A4A4A4A3A3A19E9C9C9A94949292928987817F7C767B7F87899294949A9C9E
-9EA4A6A6A9ABAEAEB1B1B3B3B3B3B3B1B1B1B1B1B17F94A4A6AEB9B9B9B9B9BBBBBBBBBBBBB9B9B9
-B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBEC0C1C1C1C4C6C1BBB7B1ABA6A19E9C727F85898E92949494
-9494949496999A9C9C9E9E9EA4A6A9AEB1B1B7B9C1C6C6C6C6C6C1C0BBB9B9B6B1B1B1AEAEAEA9A6
-A6A4A4A19E9E9C9C9A9A9999949494929292928F8E8E8E8E8E8C8989898989898989898989898787
-878585858585858585817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7676767676747474747472716C6C
-6C6C6A6A6A6A67676766615F5F5F5F59575555544F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C818787898E8F9292949499
-9A9C9C9E9EA4A4A6A6A6A4A4A6A6A6A6A6A6A6A6A6A9A9AEAEB1B3B9BEC6CCD1D4D9DFDCDCD9D9D9
-D4D4D4D3D1CFCFCFCFCFD1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1CFCFCCC9C6C1C0BBB6B1AEABA9A6
-A49E9E9C9C9A9A949494928E8476767C7674726C6A6159556161616161616166676A6A6A6A6A6A6C
-6C72727476797C7F7F7C7C7C7C7B767674747472716C6A6764615771727272726C6A615C5574797F
-81878789898C8E8E8F8F92928F8E8E8C898987817F7C746C6A616161666A6C7274767C7C7F7F8181
-8181817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81
-84858585858585858585858787878787878787878787898989898989898989898989898C8C8C8E8E
-8E8E8F8F8F8F8F929292929292929292929292929292929292929292929494949494949494949294
-94949494949492929292929292929292929294949494949494949494949494949494949494949494
-94999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949492928F8C8987878785858585
-858587878787878787878989898C8E8F8F92929292929292949494999A9A9A9A9A9C9C9C9E9E9C9C
-9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9C9C9A949492928F89877F7C7C767C7F87899294999A9C9C9E
-A4A6A6A6A9ABAEAEAEB1B1B1B1B1B1B1B1B1B1AE798EA4A9AEB1BBB9B9B9B9B9B9BBBBBBBBB9B9B9
-B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBEC0C1C1C1C4C1BEB9B3AEA9A49E9C727F84878C8F92949494
-96999999999A9C9C9E9EA1A4A6A9AEAEB1B7B9BEC4C8C6C6C6C6C1BEBBB9B9B6B1B1AEAEAEAEA9A6
-A6A4A4A39E9E9C9C9C9A9A99949494949292928F8E8E8E8E8E8C8989898989898989898989898787
-87858585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767474747472716C6C
-6C6C6A6A6A6A6767676661615F5F5F5C575555554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797F8487898C8F92929494969A
-9C9C9C9EA1A4A4A6A6A4A4A4A4A6A6A6A6A6A6A6A9A9ABAEAEB1B6B9C0C6CFD3D9D9DFDCD9D9D9D4
-D4D3D3D1CFCFCFCFCFCFD1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1CFCFCCC8C6C1BEB9B3AEAEA9A6A4
-9E9E9C9C9A9A99949292898476767C79767472716C676157545F5F5F5F61616166676A6A6A6A6C6C
-71727474767C7C7F7F7F7F7F7F7F7C7C7C7B7676767472716C6A615C6C71716E6C6A665F574F767C
-7F858789898C8E8F8F9292929292928F8F8E8987817F7C746C6A616161676A6E7474767C7C7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81
-8184858585858585858585858585858587878787878789898989898989898989898989898989898C
-8E8E8E8E8E8E8F8F8F8F8F9292929292929292929292929292929292929494949494949494929292
-92929292929292929292929292929292929494949494949494949494949494949494949494949494
-999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999999999999999494928E89898787878585858585
-878787878787898989898989898C8E8F9292929292929294949496999A9A9A9A9A9C9C9C9E9E9C9C
-9C9C9C9C9C9C9C9E9E9E9E9E9E9E9C9A999494928F8E89877F7C7C76797F878992949A9C9C9C9EA3
-A4A6A6A9A9ABAEAEAEB1B1B1B1B1B1AEAEAEAE7C899CA9AEB1B7BBB9B9B9B9B9B9B9B9BBBBB9B9B9
-B9B9B9B9B9B9B9B9B9B9BBBBBBBBBBBEC0C0C1C1C1C1B9B7B1AEA69E9E9C7C87898C8F9294949999
-999A9A9A9A9C9C9E9EA1A4A6A9AEAEB4B7B9BEC1C6CCC8C6C6C6C1BEB9B9B9B6B1B1AEAEAEAEA9A6
-A6A4A4A39E9E9C9C9C9A9A9999949494929292928F8E8E8E8E8E8989898989898989898989898987
-87858585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767474747472726E6C
-6C6C6C6A6A6A6A67676761615F5F5F5D57575555514F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C818789898E8F92929494999A
-9C9C9E9EA3A4A4A6A4A4A4A4A4A6A6A6A6A6A6A6A9A9ABAEB1B3B9BBC1C8CFD4D9D9DCD9D9D9D4D4
-D3D3D1CFCFCFCFCFCFCFD1D1D1D1D1D1D1D1D1D1D1D1D1D1D1D1CFCFCCC8C6C1BBB7B1AEABA6A6A3
-9E9C9C9A9A9994948F898474767C7C767474726E6C6A615F574F5D5C5F5F5F6161676A6A6A6A6C6C
-71727476797C7F7F818181818181817F7F7F7F7C7C7C797674726C675F4F6C6C6C6A67615C557479
-7F818789898C8E8F9292929292949292928F8E8987817F7C746C6A616164676A71727476797C7C7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-8181848484848585858585858585858585858585878787898989898989898989898989898989898C
-8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F92929292929292929292929292929294949494949492929292
-92929292929292929292929292929292949494949494949494949494949494949494949999999694
-94999A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494928F8989878784818484858787
-8787898989898989898989898C8E8F9292929292929294949494999A9A9A9A9A9A9A9C9C9C9C9C9C
-9C9A9C9C9C9C9C9C9C9C9C9C9C9C9A999492928E8989877F7C7C79767F878992949A9C9C9E9EA1A4
-A6A6A6A9A9ABAEAEAEAEAEB1B1AEAEAEAEAEAB899CA6AEB1B7BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9BBBBBBBBBEBEBEC1C1BEB9B1AEA9A49E9C7C87898E9292929494999A
-9A9A9A9A9C9C9E9EA3A4A6A9AEAEB1B7B9BEC1C4C8CCC9C6C6C6C1BEB9B9B7B6B1B1AEAEAEAEA9A6
-A6A4A4A39E9E9C9C9C9C9A9A99949494949292928F8E8E8E8E8E8C89898989898989898989898987
-87858585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7676767676747474747472716C
-6C6C6C6A6A6A6A67676766615F5F5F5F59575555544F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797F8487898C8F9292949494999A
-9C9C9E9EA3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A9ABAEAEB1B6B9BBC6CCD1D4D9D9D9D9D9D4D4D3
-D3D1D1CFCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1D1D1D1D1D1D1CFCFCFCCC6C1BEB9B6AEABA9A6A49E
-9C9C9A9A99949492898476767C7C79767472726C6C6A6A645F5754575D5F5F5F6161676A6A6A6C6C
-72747476797C7F7F8184858484848585848481817F7F7F7C7C7974726A61556C6A6A6A615F575176
-7C7F858989898E8F929292929294949492928F898985817F79746C6A6661666A6C6E727476797C7C
-7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F8181818181848484848585858585858585858587878789898989898989898989898989898989
-8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292929292929292929292929492929292
-9292929292929292929292929292929294949494949494949494949494949494949494999A9A9994
-94999999999A9A9A9A9A9A9A9A9A9A9A99949494949494949494928F898987848181818485878789
-898989898989898C8C8C8C8C8E8F929292929292929294949499999A9A9A9A9A9A9A9C9C9C9C9C9C
-9A9A9A9A9A9A9A9A9A9C9C9C9C9A9694928F898987857F7C7C7B767F858992949A9C9C9E9E9EA3A4
-A6A6A6A9A9ABAEAEAEAEAEAEAEAEAEAEABA98E9AA4AEAEB1B9BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9BBBBBEBBBEBEBEB9B6AEA9A6A19C7C87898F9292929494999A9A
-9C9C9C9C9E9EA1A4A4A6A6ABAEB1B6B9BEC1C6C6CCCFCCC8C6C6C1BBB9B9B7B6B1B1AEAEAEAEA9A6
-A6A4A4A39E9E9C9C9C9C9A9A99969494949292928F8F8E8E8E8E8C89898989898989898989898987
-87858585858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676747474747472726C
-6C6C6C6A6A6A6A6767676661615F5F5F5C575555554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C818789898E8F92929494999A9A
-9C9C9E9EA4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9A9ABAEB1B1B7B9C0C6CCD1D4D9D9D9D9D4D4D3D3
-CFCFCFCFCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1D1D1D1D1D1D1CFCFCFCCC6C1BBB7B1AEA9A6A49E9C
-9C9A9A999494928C8779767C7C7C7974727272716C6C6C6A665F5754575C5D5F5F61676A6A6A6A6C
-727474767C7C7F818485878787858787878787858484817F7F7F7C79746C66556A6A6A66615C554F
-7C7F818789898C8E929292929494949494928F8E8987857F7C7974716A6761676A6C6C7274747679
-797C7C7C7F7F7F7F7F7F7F7F7C7F7F7F7F7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F818181818184848585858585858587878787878789898989898989898989898989
-8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292929292929292
-92929292929292929292929292929292949494949494949494949494949494949494999A9A9A9994
-9494969699999999999999999A9A9994949494949494929292928E89898781817F7F818587878989
-89898C8C8C8E8E8E8E8E8E8E8F929292929292929294949494999A9A9A9A9A9A9A9A9A9C9C9C9C9A
-9A999A9A9A9A9A9A9A999A9A999494928F898987847F7C7C7C797F84898F92999C9C9E9E9EA3A4A6
-A6A6A6A6A9A9ABAEAEAEAEAEAEAEABABA9A6949CA6AEAEB3B9BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9BBBBB9BBBEB9B7B1ABA6A49E7C85898F9294949494999A9A9C
-9C9C9C9E9EA3A4A4A6A6ABAEB1B6B9BEC1C6C6CCCFCFCCC8C8C6C1BBB9B9B7B6B1B1AEAEAEAEA9A6
-A6A6A4A49E9E9C9C9C9C9A9A9A99949494929292928F8E8E8E8E8E8C898989898989898989898987
-87858585858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676747474747472726E
-6C6C6C6C6A6A6A6A67676761615F5F5F5D57575555514F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797F8487898C8F9292949494999A9C
-9C9C9EA1A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9A9AEAEB1B3B9BBC1C6CFD1D4D9D9D9D4D4D4D3CF
-CFCFCFCFCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1D1D1D1D1D1D1CFCFCCC6C1BEB9B6AEABA6A6A49E9C
-9A9A999494928C877C767C7C7C79747474747272726E6C6C6A665F5755575C5D5F5F61676A6A6A6C
-727476767C7C7F81858787878787878789898987878787878787817F7C766C6757676767615F5754
-747C7F8187898C8E8F929294949494949492928F8C8987847F7C7974726C6A66676A6C6C71727476
-76797C7C7C7F7F7F7F7F7F7C7C7C7F7F7F7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F81848585858585858585878787878787898989898989898989898989
-8989898C8C8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292929292929292
-9292929292929292929292929292929294949494949494949494949494949494949496999A9A9994
-94949494949494949496969999969494949292929292928F8F8C898787817F7F7F81848787898989
-8C8E8E8E8F8F8F8F8F8F8F9292929292929292929494949494999A9A9A9A9A9A9A9A9A9C9C9C9C9A
-9A999999999999999494949494949292898785817F7C7C7C7C7F84898F92949A9C9E9EA1A3A4A4A6
-A6A6A6A6A9A9ABAEAEAEAEAEAEABA9A9A6929AA3ABB1B1B3B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9BBB9B9B9B9B7B1AEA9A49E6681898F9294949496999A9C9C9C
-9E9E9EA1A4A4A6A6A6A9AEB1B6B9BBC1C4C6CCCFD1CFCCCCC6C1BEBBB9B9B7B6B1B1AEAEAEAEA9A6
-A6A6A4A49E9E9E9C9C9C9C9A9A99949494949292928F8E8E8E8E8E8C898989898989898989898987
-87858585858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C797676767674747474747271
-6C6C6C6C6A6A6A6A67676766615F5F5F5F59575555544F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C818787898E9292949494999A9A9C
-9C9E9EA3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9ABAEB1B1B6B9BBC1C8CFD1D4D9D9D9D4D4D3D1CF
-CFCFCFCFCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1D1D1D1D1D1CFCFCCCCC6C1BBB9B1AEA9A6A49E9C9A
-9A999494928E897F76797C7C7C747474747474747472716C6C6A645F575557595C5F61676A6A6A6C
-727476797C7F7F818587878787878789898989898989898989898787817F767261556667615F5955
-4F747C7F8187898E8F8F929294949494949292928E898987817F7C7974726C6A676A6A6C6C717274
-7676797C7C7C7C7F7F7C7C7C7C7C7C7F7F7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F818181817F81818485858585858585858585858787898989898989898989898989
-898989898989898C8C8E8E8E8E8E8E8E8E8F92929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929294949494949494949494949494949999999994
-949494949494949494949494949494929292929292928F8E898787847F7F7F7F818487878789898C
-8E8F8F8F929292929292929292949494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9996949494949494949494949292928C87857F7F7C7C7C7C7F84898E92949A9C9E9EA1A4A4A4A6A6
-A6A6A6A6A9A9ABAEAEAEAEAEABA9A9A9899A9EA6B1B1B1B6B9B9B9B9B9B7B9B9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B4AEA9A6A36A81878E9294999999999A9C9C9C9E
-9EA1A4A4A6A6A6A9A9AEB1B3B9BBBEC1C6C8CCCFCFCFCCC9C6C1BEB9B9B7B6B6B1B1AEAEAEAEA9A6
-A6A6A4A4A19E9E9C9C9C9C9A9A9994949494929292928F8E8E8E8E8E898989898989898989898987
-87858585858585858585817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C797676767674747474747272
-6C6C6C6C6A6A6A6A6767676661615F5F5F5C575555554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797F848789898E92929494999A9A9C9C
-9C9E9EA3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9ABAEB1B3B9B9BBC1C8CFD1D4D9D9D4D4D3D1CFCF
-CFCCCCCCCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1D1D1D1D1D1CFCCCCC8C4BEB9B6B1A9A6A4A39E9C9A
-999494948F89817C7C7C7C7C7474747476767676767474726C6C6A615F575557575D5F61676A6A6C
-7274767C7C7F7F818487878787898989898C8C8C8C8C8C8C8C8E8E8987857F7672614F6161615D57
-546C747C7F8487898E8E8F9294949494949292928F8C898787817F7C7C74726C6A6A6A6A6C6E7274
-74747676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F8181817F7F81818484848181848587878585858585858585878787878989898989898989898989
-8989898989898989898E8E8E8E8E8E8E8E8E8F8F8F8F929292929292929292929292929292929292
-92929292929292929292929292929292929292929294949494949494949494949494949496999494
-94949494949494949494949494929292929292928E8C898987847F7F7F7F7F818485878789898C8E
-8F92929292929292929292949494949494949494949494949496999A9A9A9A9A9A9A9A9A9A9A9A9A
-99949494949494949292929292928C8784817F7C7C7C797C81898E92949A9C9E9E9EA3A4A4A4A6A6
-A6A6A6A6A9A9ABABABABAEABA9A9A97F949EA4A9B1B1B3B6B9B9B9B9B7B7B7B9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B7B9B9B9B9B9B9B9B9B9B7B6B6B1ABA6A49E81898E929499999A9A9A9C9C9C9E9E
-A3A4A4A6A6A9A9ABAEAEB1B7B9BEC1C6C6C8CCCFCFCFCCC8C6C1BEB9B9B7B6B3B1B1AEAEAEABA9A6
-A6A6A4A4A19E9E9E9C9C9C9C9A9994949494949292928F8E8E8E8E8E8C8989898989898989898987
-87878585858585858585817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C797676767676747474747272
-6E6C6C6C6C6A6A6A6A67676761615F5F5F5D57575555514F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C818587898C8F92929494999A9A9C9C
-9C9E9EA4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9A9AEAEB1B3B9BBC0C6CCCFD3D4D9D4D4D3D1CFCFCC
-CCCCCCCCCFCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1D1D1CFCFCFCCC8C6C1BEB9B1AEA9A6A49E9C9A99
-9694949289857C7C7C7C7C747476797C7C7C7C7C7C7C767474726E6A645F555557595D61676A6A6C
-7174767C7C7F7F8184878787898989898E8F8F8F8F92929292928F8E8C89857F766C5F4F61615F59
-555172747C7F8487898E8E929294949492929292928E89898784817F7C7974726C6A6A6A6C6C7172
-7474747676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81817F7F7F
-81818484818181848587858584858787878787878785858587878787898989898989898989898989
-8989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F92929292929292929292929292
-92929292929292929292929292929292929292929292949494949494949494949494949494949494
-9494949494929292929494929292928F8E8C8C89898787847F7F7F7F7F7F7F818587878989898E8F
-9292929292929292929294949494949494949494949494949494999A9A9A9A9A9A9A9A9999999999
-949494949494949292928F8E8E898784817F7F7C7B767C81898E92949A9C9C9E9EA1A4A4A4A4A6A6
-A6A6A6A6A6A9A9ABABABABA9A9A6768C9EA4A9AEB3B3B3B7B9B9B9B7B6B6B7B7B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B6B6B7B9B9B9B9B9B9B7B6B3B1AEA6A4A181878C9294969A9A9A9A9C9C9E9EA1A4
-A4A6A6A6A9ABAEAEAEB1B6B9BBBEC1C6C8C9CFD1CFCFCCC8C6C1BBB9B9B7B6B3B1B1AEAEAEABA9A9
-A6A6A4A4A19E9E9E9C9C9C9C9A9994949494949292928F8F8E8E8E8E8C8989898989898989898987
-8787858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676747474747472
-716C6C6C6C6A6A6A6A67676766615F5F5F5F59575555544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797F858787898E8F929494999A9A9C9C9C
-9E9EA1A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9A9AEB1B1B6B9BBC1C6CCCFD3D4D4D4D3D1CFCFCFCC
-CCCCCCCCCFCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1D1CFCFCFCCC9C8C6C0B9B6B1ABA6A49E9C9C9996
-9494928E877F7C7C7C7C7674797C7F7F7F81817F7F7F7C7C797674726C665F5455575C5F61676A6A
-6E7274797C7F7F8184858787898989898E8F929292929294949292928F8E89847C746A5C4F5F5F5D
-57554F71747C7F8587898E8F9292949292929292928F8C89878785817F7C7974726E6C6A6A6C6E72
-72747474767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818181817F7F7F7F7F8181818181817F7F7F818184848484
-84858785858484858787878787878787878787878787878787878789898989898989898989898989
-8989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F8F92929292929292
-92929292929292929292929292929292929292929292929292949494949494949494949494949494
-949494949492929292929292928F8E8C898989878785817F7F7F7F7F7F7F848787878989898C8E8F
-9292929494949494949494949494949494949494949494949494999A9A9A9A9A9A9A999994949496
-94949492929292928F8E8C89898784817F7F7C79767C81898F9294999A9C9E9E9EA3A4A4A4A4A4A6
-A6A6A6A6A6A6A9A9A9A9A9A9A6A68799A4A9AEB1B3B6B7B9B9B9B7B6B6B6B6B7B7B7B9B9B9B9B9B9
-B9B9B9B9B9B9B9B6B3B6B6B6B6B6B7B6B3B1B1AEA9A6A37F87899294949A9A9C9C9C9C9E9EA3A4A4
-A6A6A9A9ABAEAEB1B1B6B9BBBEC1C6C8C8CCCFD1CFCCCCC6C4C0BBB9B9B7B6B3B1B1AEAEAEABA9A9
-A6A6A4A4A39E9E9E9E9C9C9C9A9A9694949494929292928F8E8E8E8E8E8C89898989898989898989
-8787878585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676747474747472
-726C6C6C6C6A6A6A6A6767676661615F5F5F5C575555554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C81858789898E92929494999A9C9C9C9C
-9E9EA3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9ABAEB1B3B9B9BEC1C6CCCFD3D4D4D3D3D1CFCFCCCC
-CCCCCCCCCFCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1CFCFCFCFCCC8C6C1BEB9B3AEA9A4A39E9C9A9994
-94928F877F7C7C7C7C79767C7F818485878787858484817F7F7C7B76726A645C4F55575D61676A6A
-6C7274797C7F7F7F81848787898989898E929292929294949494949292928E89817C7267554F5F5F
-5755516A6E747C7F8587898E9292949292929292928F8E8989898787847F7C7674726E6C6A6C6C71
-72747474747476767C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F81818181818181848484848181818184848585848484818184848585878787
-87878787878787878787878787878787898989898787878787878989898989898989898989898989
-898989898989898989898C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F8F8F92
-92929292929292929292929292929292929292929292929292929292929294949494949494949494
-94949494929292929292928F8E8E89898987878785817F7F7F7F7F7F81848787878989898C8E8F92
-929294949494949494949494949494949494949494949494949496999A9A9A9A9A9A999494949494
-9494949292928F8E8C89898787817F7F7F7C7B797C81878E9294999A9C9C9E9EA1A4A4A4A4A4A4A4
-A4A4A4A4A6A6A6A6A6A6A6A6A68594A3A6A9AEB1B3B3B6B9B9B7B6B6B3B6B6B6B6B7B7B9B9B9B9B9
-B9B9B9B9B9B9B7B3B3B3B3B3B3B3B3B1B1AEAEABA6A37F87898F9294999C9C9C9C9C9E9EA1A4A6A6
-A6A9A9ABAEB1B1B1B6B7B9BBC1C1C6C9CCCCCFCFCFCCC9C6C1BEB9B9B7B6B6B3B1B1AEAEABABA9A9
-A6A6A4A4A39E9E9E9E9C9C9C9A9A9694949494949292928F8E8E8E8E8E8C89898989898989898989
-8787878585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7B7676767676767474747472
-726E6C6C6C6C6A6A6A6A67676761615F5F5F5D57575555514F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7B7F858587898C8F929294949A9A9C9C9C9E
-9E9EA3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9ABAEB1B3B9BBC0C4C6CFCFD3D4D4D3D1CFCFCCCCCC
-CCCCCCCCCCCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1CFCFCFCFCCC6C6C1BBB7B1ABA6A49E9C9C999494
-928F89817C7C7C7C7C7C7F8487878989898987878787878784817F7C76726A61574F575C5F61676A
-6C7274767C7C7F7F81848787898989898E929292929294949494949492928F89877F767161514F5D
-5C57544F676C747C7F8487898F9292929292929292928F8E8C89898787847F7C7674726E6C6C6C6E
-7272747474747676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F8181848484848184858585858585878787878787878785878787878787878787
-89898787878787878787898989878789898989898989898787898989898989898989898989898989
-89898989898989898989898989898C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F
-8F8F8F8F8F8F8F8F8F92929292929292929292929292929292929292929294949494949292929292
-92929292929292929292928F8E8C89898987878584817F7F7F7F818187878989898989898E8F9292
-92949494949494949494949494949494949494949494949494949499999999999999969494949494
-94949292928F8E8C89898785817F7F7F7C7C7C7C7F878E9294999A9C9C9E9E9EA3A4A4A4A4A4A4A4
-A4A4A4A4A4A6A6A6A6A6A4A466929CA4A6ABB1B1B1B3B6B7B7B6B6B3B3B3B6B6B6B6B7B7B7B9B9B9
-B9B9B9B9B9B9B7B3B1B1B1B1B1B1B1AEAEABA9A6A47C87898F9294969A9C9C9C9C9E9EA1A4A6A6A9
-A9ABAEAEB1B1B3B6B7B9BBC0C1C6C8CCCCCFCFCFCFCCC8C6C1BEB9B9B7B6B3B3B1B1AEAEABABA9A9
-A6A6A4A4A39E9E9E9E9C9C9C9A9A9994949494949292928F8F8E8E8E8E8E89898989898989898989
-898787858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7676767676767474747474
-72716C6C6C6C6A6A6A6A67676766615F5F5F5F59575555544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C81858787898C8F929494999A9C9C9C9E9E
-9E9EA4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9A9AEAEB1B6B9BBC1C6C8CFCFD1D3D3D1CFCFCFCCCCCC
-C9C9CCCCCCCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1CFCFCFCCC8C6C1BEB9B3AEA9A4A19E9C9A949494
-928C877F7C7C7C7C71818789898E8F8F8F8E8E8C898989898787847F7C74716A5F5554575D5F676A
-6C7174767C7C7F7F818487878789898C8E8F929294949494949494949492928E89877F746C5F4F4F
-5C5755514F676C747C818789898F92929292929292928F8F8E8C89898787817F7C7674726E6C6C6C
-7172747474747476797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F
-7F7F7F7F7F7F81818484858585858585858585858585878787878787878787878787878787878789
-89898989898987878789898989898989898989898989898989898989898989898989898989898989
-8989898989898989898989898989898989898C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8F8F8F8F8F8F8F8F9292929292929292929292929292949494929292929292
-929292929292929292928F8E8C89898987878584817F7F818184848787898989898C8C8C8E8F9292
-92949494949494969999999999999996949494949494949494949494949494969999949494929494
-949292928F8F8E898787848181817F7F7C7C7C7F87899294999A9C9C9C9E9E9EA3A3A3A3A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A39E8E99A1A6A6AEB1B1B1B1B3B6B6B3B3B3B3B3B3B3B6B6B6B6B7B7B7B9
-B9B9B9B9B9B9B6B3B1B1B1B1AEB1AEABA9A6A6A47C85898E929494999A9C9C9C9E9EA1A4A4A6A9AB
-AEAEAEB1B1B3B7B9B9BBBEC1C6C6CCCCCFCFD1CFCFCCC8C6C1BEB9B9B7B6B3B3B1B1AEAEABABA9A9
-A6A6A4A4A39E9E9E9E9E9C9C9C9A999494949494929292928F8E8E8E8E8E8C898989898989898989
-898787878585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7676767676767474747474
-72716C6C6C6C6A6A6A6A6767676661615F5F5F5C575555554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF727C7F85858789898E8F929494999A9C9C9E9E9E
-9EA1A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9A9AEB1B1B7B9BEC1C6CCCCCFCFD1D3D1CFCFCCCCC9C9
-C8C8C9CCCCCFCFCFCFCFCFCFD1D1D1D1D1D1D1D1CFCFCFCCC6C6C1BBB7B1ABA6A49E9C9C99949492
-8F87817C7C7C7C6C85898E92929294949494929292928F8E898989847F7C746C665D5455595F616A
-6A6E7274797C7F7F818185878789898C8E8F929294949494949494949494928F89878179726A574F
-4F5755544F5D676C747C8187898C9292929292929292928F8F8E8E89898787817F79747272716E71
-717272747474747676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F7F7F7F7F7F818485858585858585858585858585878787878787898787878787898989898989
-89898989898989898989898989898989898989898989898989898989898989898989898989898989
-89898989898989898989898989898989898989898989898C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292949494929292929292
-9292929292929292928F8E8C89898987878784817F818184858787878789898C8E8E8E8E8F929292
-94949494949494999A9A9A9A9A999999999999999996949494949494949494949494949494929292
-929292928F8E898987858484817F7F7C7C7C7F87899294949A9C9C9C9E9E9E9EA1A1A1A1A1A1A3A3
-A3A3A4A4A4A4A3A19E9E9E89929CA6A6A9AEB1B1B1B1B3B3B3B3B3B1B3B3B3B3B3B6B6B6B6B6B7B7
-B9B7B7B9B9B9B6B1B1B1AEAEAEAEABA6A6A4A37F87898E929494999A9C9C9C9E9EA1A4A4A6A9ABAE
-AEAEB1B1B3B6B9B9BBBEC1C1C6C8CCCFCFCFD1CFCCCCC6C4C0BBB9B9B7B6B3B3B1B1AEAEABA9A9A9
-A6A6A6A4A39E9E9E9E9E9C9C9C9A999494949494929292928F8F8E8E8E8E8C898989898989898989
-89878787858585858585858481817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7976767676767674747474
-72726C6C6C6C6C6A6A6A6A67676661615F5F5F5D57575555514F4F4F4F4F4F4F4F4FFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767F81858787898C8F92929494999A9C9C9E9E9E
-9EA3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9ABAEB1B3B9BBC0C4C6CCCCCFCFCFD1CFCFCFCCCCC8C8
-C8C8C9CCCCCFCFCFCFCFCFD1D1D1D1D1D1D1D1CFCFCFCCC8C6C1BEB9B6AEA9A49E9E9C9A94949292
-89847F7C7C7C7C848992949494999A9A9A9A9A9999949492928F8E89857F76726A61574F575C5F67
-6A6C7274767C7C7F7F818487878989898E8F92929294949494949494949492928C89857F746C6151
-4F4F57554F4F5D6772767F8487898E9292929292929292928F8F8E8E8C8987857F7C797474727272
-727272747476767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F7F7F7F7F7F818184848485858585858585858585858787878787878787898789898989898787
-87898989898989898989898989898989898989898989898989898989898989898989898989898989
-898989898989898989898989898989898989898989898989898989898C8C8C8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292929292929292
-92929292929292928F8F8E898989878787848481848487878787878989898C8E8F8F8F9292929292
-94949494949499999A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494949492929292
-9292928F8C89898785858584817F7C7C7C7F8789929294999A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9C8492999EA6A9ABAEB1B1B1B1B1B3B3B1B1B1B1B1B3B3B3B3B3B6B6B6B6B7
-B7B6B6B6B7B6B3B1B1AEAEAEABA9A6A6A4A17F87898F929494999A9C9C9C9E9EA1A4A4A6A6A9AEAE
-AEB1B1B1B6B9B9BBBEC0C1C4C6CCCFCFCFD1CFCFCCC9C6C1BEB9B9B7B6B6B3B3B1B1AEABABA9A9A9
-A6A6A6A4A49E9E9E9E9E9C9C9C9A99949494949492929292928F8E8E8E8E8E8C8989898989898989
-89898787878585858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7976767676767674747474
-72726C6C6C6C6C6A6A6A6A67676761615F5F5F5F59575555544F4F4F4F4F4F4F4F4F4FFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF747C7F84858789898E8F929294949A9C9C9C9E9E9E
-9EA3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9AEAEB1B3B9BBC1C6C6CCCCCCCFCFCFCFCFCCCCC8C8C8
-C8C8C9CCCCCCCFCFCFCFCFD1D1D1D1D1D1D1D1CFCFCFCCC6C1C0BBB7B1AEA6A39E9C9C999494928C
-87817C7C7C7C7F899294999A9C9C9C9C9C9C9C9C9C9C9A999494928F89817C746C675F574F595D61
-6A6C7274767C7C7F7F818487878789898C8F92929294949494949494949292928F89877F7C726A5C
-4F4F4F55544F4F5F6A72767F8787898E8F9292929292929292928F8E8E8C8987847F7C7974747472
-727272747476767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F7F7F7F7F7F7F7F81818184858585858585858585858585858787878787878787878989878787
-87878787878989898989898987878789898989898987878787878989898989898989898987898989
-898989898989898989898989898989898989898989898989898989898989898989898C8C8C8C8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F929292929292929292929292929292929292
-92929292929292928F8E8C898989878787878485878787878989898989898E8F8F92929292929294
-949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494949494949494929292928F
-8F8F8E8989898785858584817F7C7C7C7F87898F9494949A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9C9C9C9C7C8F949EA6A6A9AEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B6B6B6B6
-B6B3B3B6B6B3B1B1AEAEABABA9A6A6A4A17F878C92929494999A9C9C9C9E9EA1A4A4A6A6A9ABAEB1
-B1B1B1B3B7B9B9BBBEC1C1C6C6CCCFCFCFD1CFCFCCC8C6C1BEB9B9B7B6B3B3B1B1B1AEABABA9A9A9
-A6A6A6A4A4A19E9E9E9E9C9C9C9A99949494949492929292928F8E8E8E8E8E8C8989898989898989
-89898787878585858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7976767676767674747474
-72726E6C6C6C6C6A6A6A6A6767676161615F5F5F5C575555554F4F4F4F4F4F4F4F4F4FFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767F81858789898C8F92929494999A9C9C9E9E9E9E
-9EA4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9ABAEAEB1B6B9BEC1C4C6C8CCCCCFCFCFCFCCCCC9C8C8C8
-C8C8C8CCCCCCCFCFCFCFCFD1D1D1D1D1D1D1D1CFCFCCC6C6C1BEB9B6B1A9A49E9E9C9A9494928F89
-847F7C7C7C79898F949A9C9E9E9EA1A3A39E9E9EA3A39E9C9A9994928C877F76726A615C55575C5F
-666C717474797C7F7F818487878789898C8E8F929294949494949494949292928F8987817C766C66
-574F4F4F554F4F545F6A74797F8787898C8F9292928F929292928F8E8E8E8C8987817F7C79767474
-7472747474747679797B7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F8181848585858585858585858585858585858587878787878787878787
-87878787878787878989898787878787878787898787878787878787878989898989898787878787
-89898989898989898989898989898989898989898989898989898989898989898989898989898989
-898C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F9292929292929292929292929292
-929292929292928F8E8E8989898987878787878787878989898989898C8C8E8F9292929292929494
-9494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494949292928F8E
-8E8C8989878787858585817F7F7C7C8187898E9294969A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E
-9C9C9C9C9C9C9A9A7487949CA3A6A9ABAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B6B6
-B3B3B3B3B3B1B1AEAEABA9A9A6A6A4A37F878C929294949A9A9C9C9E9E9EA3A4A4A6A6A9ABAEAEB1
-B1B3B3B6B9B9BBBEC0C1C1C6C6CCCFCFCFD1CFCFCCC8C6C1BEB9B9B7B6B3B3B1B1B1AEABA9A9A9A9
-A6A6A6A4A4A19E9E9E9E9E9C9C9A99949494949492929292928F8F8E8E8E8E8E8989898989898989
-8989878787858585858585858581817F7F7F7F7F7F7F7C7C7C7C7C7C7C7976767676767674747474
-72726E6C6C6C6C6C6A6A6A6A67676461615F5F5F5D57575555514F4F4F4F4F4F4F4F4F4FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF747C7F818587898C8E9292929494999A9C9C9E9E9E9E
-A1A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A9AEAEB1B1B7B9BEC1C4C6C8C8CCCCCCCCCFCCCCC8C8C8C8
-C8C8C8CCCCCCCFCFCFCFCFD1D1D1D1D1D1D1CFCFCCC8C6C1BEB9B7B1AEA6A49E9C9C999492928985
-7F7F7C7C74878F949A9C9EA4A4A4A6A6A6A4A4A4A4A4A4A39E9C9C949289847C746C6A5F574F575D
-616A6C7274767C7F7F818185878789898C8E8F929294949494949494929292928F8987847F79726A
-5F544F4F4F544F4F55616C747C7F858789898F92928F8F8F92928F8E8E8E8E898784817F7C7C7676
-74747474747476767B7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F81848585858585858585858585858585858585858587878787878785
-85858587878787878787878787878787878787878787878787878787878787878789878787878787
-87878787898989898989898989878787898989898989898989898989898989898989898989898989
-8989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292
-92929292929292928F8E8C89898989878787878789898989898C8E8E8E8E8F929292929292929494
-9494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999694949494949494949494949292928F8E8E
-898989898787878785817F7F7C7F8187898F9294999A9A9C9C9C9E9E9E9E9E9E9E9E9E9C9C9E9E9C
-9C9C9C9A9A9999948792999EA4A6A9AEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3
-B3B1B1B1B1B1AEAEABA9A6A6A6A4A37C898C929494969A9A9C9C9E9E9EA3A4A4A6A6A9A9AEAEB1B1
-B3B6B7B7B9BBBBBEC1C1C1C6C8CCCFCFCFD1CFCCCCC6C6C1BBB9B9B7B6B3B3B1B1B1AEABA9A9A9A6
-A6A6A6A4A4A19E9E9E9E9E9C9C9A9994949494949292929292928F8E8E8E8E8E8C89898989898989
-8989898787878585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7976767676767674747474
-7472716C6C6C6C6C6A6A6A6A67676661615F5F5F5F59575555544F4F4F4F4F4F4F4F4F4FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767F7F848789898E8F9292949494999A9C9C9E9E9E9E
-A3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A9ABAEAEB1B3B9BBBEC1C4C6C6C8C8CCCCCCCCCCC8C8C8C8C8
-C8C8C8C9CCCCCFCFCFCFD1D1D1D1D1CFCFCFCFCCC8C6C4C1BBB9B6B1ABA69E9E9C9A9492928E8781
-7F7C7C7C848E949A9EA1A4A6A6A9A9A9A9A6A6A6A6A6A6A6A4A39C9A948E877F76726A665F554F59
-5F666A717274797C7F7F818487878989898E8F929292949494949492929292928F8C89857F7C766E
-66594F4F4F4F4F4F4F55616C747C7F848789898E8E8F8E8F8F928F8F8E8E8C89898781817F7F7C76
-7674747474747476797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F81818484858585858585858584858585858585858585858585878585
-85858585858585878787878787858585858587878787878585858585878787878787878787858587
-87878787878787878989898987878787878787878789898989898989898989898989898989898989
-898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292929292929292
-92929292929292928F8F8E8C898989898787898989898C8E8E8E8F8F8F8F92929292929292949494
-94949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494929292928F8E8C
-898989898987878784817F7C7F81878E92929494999A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9C9C
-9C9A99999494948792949C9EA6A9ABAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3
-B1B1B1B1B1AEAEAEA9A6A6A6A4A47C878C929494969A9A9C9C9E9EA1A4A4A4A6A6A6A9AEAEB1B1B3
-B6B9B9B9B9BBBEC0C1C1C6C6C8CCCFCFCFCFCFCCC9C6C6C1BBB9B7B6B6B3B3B1B1B1AEABA9A9A9A6
-A6A6A6A4A4A39E9E9E9E9E9C9C9A9A96949494949492929292928F8E8E8E8E8E8C89898989898989
-898989878787858585858585858481817F7F7F7F7F7F7F7C7C7C7C7C7C7C76767676767674747474
-7472716C6C6C6C6C6A6A6A6A6767666161615F5F5F5C575555554F4F4F4F4F4F4F4F4F4FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C7F818587898C8F9292949494969A9C9C9E9E9E9E9E
-A3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A9AEAEB1B1B3B9BBC0C1C4C6C6C6C8C8C9CCCCC9C8C6C6C8C8
-C8C8C8C9CCCCCCCFCFCFD1D1CFCFCFCFCFCFCCC8C6C6C1BEB9B6B1AEA9A49E9C9C9994928F89847F
-7F7C7C7F89929A9EA3A4A6A6A9ABAEAEAEA9A6A9A9A6A6A6A6A69E9C949289847C746C6A61595457
-5D61676C7274767C7F7F818487878789898C8F9292929494949492929292928F8F8C8987817F7974
-6A61554F4F4F4F4F4F4F57616C747C7F8487878989898C8E8F8F8F8E8E8C898989878481817F7C7C
-767674747474747676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181818484848585858481818484848585858585858585858485
-85858585858585858585858785858585858585858587858585858585858585858787878785858585
-85858587878787878787878787878787878787878787878787878989898989898989898989898989
-898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F9292929292929292929292
-9292929292929292928F8E898989898989898989898C8E8E8E8E8F92929292929292929292949494
-9494949499999A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494949292928F8E8C89
-8989898989878784817F7C7C81878E92929499999A9A9C9C9C9E9E9E9E9E9E9E9E9E9C9C9C9C9C9A
-9A9994949492848C949A9EA4A6A9ABAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1AEAEB1B1B1B1B1B1B1
-B1B1B1B1AEAEAEABA9A6A4A4A37F87898F9294999A9C9C9C9E9EA3A4A4A6A6A6A6A9ABAEB1B1B3B6
-B9B9B9B9BBBBBEC1C1C4C6C6C8CCCFCFD1CFCFCCC8C6C4C0BBB9B7B6B3B3B1B1B1B1AEABA9A9A9A6
-A6A6A6A4A4A39E9E9E9E9E9C9C9A9A9994949494949292929292928F8E8E8E8E8E8C898989898989
-898989898787878585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C79767676767676747474
-7472716C6C6C6C6C6C6A6A6A6A67666161615F5F5F5D57575555514F4F4F4F4F4F4F4F4F4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72767F7F848789898E8F9292949494999A9C9C9E9E9E9E9E
-A4A4A4A4A4A4A4A4A4A4A6A6A6A6A9ABAEAEB1B1B6B9BBC0C1C4C6C6C6C6C8C8C9C9C8C6C6C6C8C8
-C8C8C8C8CCCCCCCFCFCFCFCFCFCFCFCFCCCCC9C6C6C1BEBBB9B1AEABA6A39E9C9A94928F89877F7F
-7C7C748792969CA1A4A6A9A9ABAEAEAEAEAEABABA9A9A6A6A6A6A49E9A948E877F76726C675F574F
-575F616A717274797C7F818485878789898C8E8F92929494949492929292928F8E8C8987857F7C74
-71675C514F4F4F4F4F4F4F57646C74797F8185878789898C8E8E8E8E8C8989898987878481817F7C
-7976767474747474767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818184848481817F8181818184848485858585848181
-84848485858585858585858585858585858585858585858585858585858585858585858585858585
-85858585858585878787878787878585858585878787878787878787878787878989898989898989
-89898989898989898989898989898C8C8C8C8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F8F8F8F92929292
-92929292929292928F8E8C8989898989898989898C8E8E8E8E8F9292929292929292929292929494
-9494949494999A9A9A9A9A9A9A9A9A9A9A9A9A999994949494949494949494949292928F8E8C8989
-898989898787857F7C7C7C81878C9294949A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9A9A99
-99949292927F89929A9CA3A6A6A9AEAEAEAEAEAEAEAEAEAEAEAEAEAEB1B1AEAEAEAEAEAEAEB1B1B1
-B1B1AEAEAEAEABA9A6A4A4A17F85898F9294999A9C9C9C9E9EA4A4A6A6A6A6A9A9A9AEAEB1B1B3B7
-B9B9B9BBBBBEC0C1C4C6C6C6C8CCCFCFD1CFCFCCC8C6C1C0BBB9B7B6B3B3B1B1B1B1AEABA9A9A9A6
-A6A6A6A4A4A39E9E9E9E9E9C9C9A9A9994949494949292929292928F8E8E8E8E8E8C898989898989
-898989898787878585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C79767676767676747474
-7472726C6C6C6C6C6C6A6A6A6A67666161615F5F5F5F59575555544F4F4F4F4F4F4F4F4F4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C7F818787898C8E929294949494999A9C9C9E9E9E9EA1
-A4A4A4A4A4A4A4A4A4A4A6A6A6A6A9ABAEB1B1B1B6B9BBC0C1C4C6C6C6C6C6C8C8C8C8C6C6C6C8C8
-C8C8C8C8CCCCCCCCCFCFCFCFCFCCCCCCCCC9C6C6C4C1BBB9B3B1ABA6A49E9C9A9994928C89847F7C
-7C7C818E949C9EA4A6A9AEABAEAEB1B1B1AEAEAEABA9A9A9A9A6A6A39C999289847C74716A615C55
-4F5C5F676C7274767C7F7F818587878989898E8F9292929294929292929292928F8E898987817F79
-726C61554F4F4F4F4F4F4F4F59666C74797C7F8487878789898E8E8C8C8989898987878584817F7F
-7C7B79767674747476767676797B7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181817F7F7F7F7F7F8181818184848481817F
-81818181848484858585858585858584848585858585858585858585858585858585858585858585
-85858585858585858585858787858585858585858585858585878787878787878787878787878787
-8989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F
-8F8F8F8F8F8F8F8F8E8C898989898989898989898E8E8E8E8F929292929292929292929292929494
-9494949494999A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494929292928F8E8E8C89
-8989898787847F7C7C7C81878C9294969A9A9A9A9A9C9C9C9E9E9E9E9E9C9C9C9C9C9C9C9A9A9994
-9492928F8C89929A9C9EA4A6A9ABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEABABA9A9A6A6A4A17F84898F9294999A9C9C9C9E9EA3A4A6A6A6A9A9ABABAEAEB1B1B1B3B7
-B9B9B9BBBBBEC1C1C6C6C6C6C8CCCFCFD1CFCCCCC8C6C1C0BBB9B7B6B3B3B1B1B1B1AEABA9A9A6A6
-A6A6A6A4A4A39E9E9E9E9E9C9C9C9A9996949494949292929292928F8F8E8E8E8E8E898989898989
-89898989878787858585858585858481817F7F7F7F7F7F7C7C7C7C7C7C7C7C797676767676747474
-7472726C6C6C6C6C6C6A6A6A6A6767616161615F5F5F5C575555554F4F4F4F4F4F4F4F4F4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74797F7F848789898E8F9292949494949A9A9C9C9E9E9E9EA3
-A4A4A4A4A4A4A4A4A4A4A6A6A6A9ABAEAEB1B1B3B7B9BBC0C1C4C6C6C6C6C6C6C8C6C6C6C6C6C8C8
-C8C8C6C8C8CCCCCCCCCCCCCCCCCCCCC9C8C6C6C4C1BEB9B7B1AEA9A6A39E9C9A94928F89877F7F7C
-7C7F8992999CA4A6A9AEAEAEAEAEB1B1B1B1AEAEAEABA9A9A9A9A6A49E9A948E877F76746C675F57
-51575D616A6E7274797C7F818487878989898C8F9292929292929292929292928F8E8C8987857F7C
-7471675C544F4F4F514F4F4F5159666C74767C7F8185878789898C8C89898989898787878784817F
-7C7C7C7976767474767676767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818181817F7F
-7F7F7F7F818181818484848585858484818184848485858585858585858585858585858585858585
-85858585858585858585858585858585858585858585858585858585858585878787878787878787
-8787878787878787898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8C898989898989898989898C8E8E8E8E8F929292929292929292929292929294
-949494949494999A9A9A9A9A9A9A9A9A9A9A999694949494949494949494949292928F8E8E8E8E8C
-89898987817F7F7F7F81878C9294999A9A9C9C9C9C9C9C9C9E9E9E9E9C9C9C9C9C9C9A9A99949494
-92928E898792999C9EA4A6A6A9ABAEAEAEAEAEAEAEAEAEAEAEABAEAEAEAEAEAEAEAEAEABABAEAEAB
-ABABA9A9A6A6A6A6A4A17C87898E9294999A9C9C9C9E9EA3A4A6A6A9A9ABABAEAEAEAEB1B1B1B6B9
-B9B9BBBBBBBEC1C1C6C6C6C6C8CCCFCFCFCFCCC9C6C6C1BEBBB9B7B6B3B1B1B1B1AEAEABA9A9A6A6
-A6A6A6A4A4A39E9E9E9E9E9C9C9C9A999994949494929292929292928F8E8E8E8E8E8C8989898989
-89898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C7C7C797676767676747474
-7472726C6C6C6C6C6C6C6A6A6A6A67646161615F5F5F5D59575555514F4F4F4F4F4F4F4F4F4FFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C7F818787898E8E8F9294949494969A9C9C9E9E9E9E9EA1
-A3A4A4A4A4A4A4A4A4A4A6A6A9A9ABAEAEB1B1B3B9B9BBC0C1C1C4C6C6C6C6C6C6C6C6C6C6C6C6C6
-C6C6C6C6C8C8C9C9CCCCCCCCC9C8C8C8C6C6C4C1BEBBB9B1AEA9A6A49E9C9A9994928C87817F7C7C
-798792949CA1A6A9AEB1B1AEAEB1B1B1B1B1B1B1AEAEAEAEABA9A6A6A49C999289847C74726A645D
-554F575F666C7274767C7F7F8487878789898C8E8F92929292929292929292928F8E8C898987817F
-79726C61574F4F4F4F4F4F4F4F5559666C72767C7F7F848787898989898989898989878787878581
-7F7C7C7C797676767676767676767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7F7F7F7F7F7F7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F81818181848484817F7F81818181848484858585858585858585858585858585
-85858585858585858585858585858585858585858585858585858585858585858585858585858587
-878787878787878787898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8C
-8C8C8C8C8C8C898989898989898989898989898E8E8E8E8F92929292929292929292929292929294
-949494949494999A9A9A9A9A9A9A9A9A9A9A9994949494949494949494949292928F8E8E8E8E8E89
-898987817F7F7F7F7F878C929494999A9C9C9C9C9C9C9C9E9E9E9E9E9C9C9C9C9C9A9A9994949492
-8F8C897C8F949C9EA1A6A9A6A9ABAEAEAEAEAEAEAEAEABAEABABABABAEABABABABABA9A9A9A9A9A9
-A9A9A6A6A6A4A4A4A17987898E9294999A9C9C9C9E9EA3A4A6A6A9ABAEAEAEAEAEB1B1B1B3B3B6B9
-B9B9BBBBBBC0C1C1C6C6C6C6C8CCCFCFCFCFCCC8C6C4C1BBBBB9B7B3B3B1B1B1B1AEAEAEA9A9A6A6
-A6A6A6A6A4A49E9E9E9E9E9C9C9C9A9A9994949494929292929292928F8E8E8E8E8E8C8989898989
-89898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C7C7C7B7676767676747474
-7472726E6C6C6C6C6C6C6A6A6A6A67666161615F5F5F5F59575755544F4F4F4F4F4F4F4F4F4FFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF767C7F7F8587898C8E8E929294949494999A9C9C9E9E9E9E9EA1
-A3A4A4A4A4A4A4A4A4A6A6A6A9ABAEAEAEB1B1B6B9BBBBC0C1C1C1C1C4C6C6C6C6C6C6C6C6C6C6C6
-C6C6C6C6C6C8C8C8C8C9C8C8C8C6C6C6C6C4C1C0BBB9B3B1ABA6A49E9C9C9A94928F89877F7F7C7C
-848E949C9EA4A6ABAEB1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEABA9A6A49E9C948E877F79746C6A61
-5954555C616A6C7274797C7F8185878789898C8E8F9292929292929292929292928F8E898989857F
-7C746E675D554F4F4F544F4F4F4F555C666A7274797C7F8185878789898989898989898787878784
-817F7C7C7C7C79767676767676767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7F7F7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F8181817F7F7F7F7F7F7F818181818484848585858585858585858585
-85858585858585858585858585858585858585858484848484858585858585858585858585858585
-85858585858587878789898989898989898989898989898C8C8C8C8E8E8E8E8E8E8E8E8E8C898989
-8989898989898989898989898989898989898C8E8E8E8E8F92929292929292929292929292929292
-949494949494999999999A9A9A9A9A9A9A999494949494949494949494949292928F8E8E8E8E8C89
-8987847F7F7F7F7F878C929494999A9A9C9C9C9C9C9C9C9E9E9E9E9C9C9C9C9A9A9994949492928F
-8C89728C929A9EA1A4A6A9A9A9ABAEAEAEAEAEAEAEAEABABA9A9A9A9A9A9A9A9A9A9A9A9A6A6A6A6
-A6A6A4A4A4A3A1A17C87898E9294969A9C9C9E9EA1A4A4A6A6A9ABAEAEAEAEB1B1B1B1B3B3B6B7B9
-B9B9BBBBBBC0C1C1C6C6C6C6C8CCCFCFCFCCCCC8C6C1C1BBB9B9B6B3B3B1B1B1B1AEAEAEABA9A6A6
-A6A6A6A6A4A4A19E9E9E9E9C9C9C9A9A999994949492929292929292928F8E8E8E8E8E8C89898989
-8989898989898787858585858585858584817F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676747474
-747472716C6C6C6C6C6C6A6A6A6A6766616161615F5F5F5C575757554F4F4F4F4F4F4F4F4F4F4FFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF767F7F818789898E8E8F929294949494999A9C9C9E9E9E9E9E9E
-A3A4A4A4A4A4A4A4A4A6A6A9A9ABAEAEAEB1B1B6B9BBBBBEC1C1C1C1C1C4C6C6C6C6C6C4C6C6C6C6
-C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C4C1BEBBB9B6B1AEA9A4A19C9C9A9494928C87817F7C7C7F
-89929A9EA4A6A9AEB1B3B3B1B1B1B1B1B1B1B1B1B1B1AEAEAEABA9A6A6A49C999289847C76726C66
-5F574F575F666A7274767C7F7F8487878989898E8F9292929292929292929292928F8E8989898784
-7F79726A6157514F4F4F554F4F4F54555D666A7274767C7F81848787878787898989898987878787
-847F7F7F7C7C7C79767676767676767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181818184848485858585858585
-84848484858585858585858585858484858585848181818181818184848484848585858585858585
-8585858585858587878787878789898989898989898989898989898989898C8C8C8C8C8C89898989
-89898989898989898989898989898989898C8E8E8E8E8E8F8F929292929292929292929292929292
-9494949494949496969999999A9A9A9A999994949494949494949494949292928F8E8E8E8E8C8989
-8785817F7F7F7F87898F929494999A9C9C9C9E9E9E9E9E9E9E9E9E9C9C9C9A9A9994949492928E89
-89858792999CA1A4A6A9A9A9A9ABAEAEAEAEAEAEAEABABA9A9A9A6A9A9A6A6A6A6A6A6A6A6A6A6A4
-A4A4A4A19E9E9E7F87898E9294949A9C9C9E9EA3A4A4A6A6A9ABAEAEAEAEB1B1B1B1B3B3B6B6B9B9
-B9BBBBBBBBC0C1C1C6C6C6C6C8CCCCCFCFCCC8C6C6C1C0BBB9B9B6B3B3B1B1B1B1AEAEAEABA9A6A6
-A6A6A6A6A4A4A19E9E9E9E9E9C9C9A9A9A9994949494929292929292928F8E8E8E8E8E8C89898989
-8989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676747474
-747472726C6C6C6C6C6C6A6A6A6A6767646161615F5F5F5D59575755514F4F4F4F4F4F4F4F4F4FFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-gr
-gs
-0 436 translate
- 1200 436 scale
-1200 436 8
-[1200 0 0 436 0 0] L1i
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF767C7F7F8587898C8E8E8F9294949494969A9A9C9C9E9E9E9E9E9E
-A1A3A4A4A4A4A4A4A4A6A6A9A9ABAEAEAEB1B3B7B9BBBBBBC0C1C1C1C1C1C4C6C6C4C4C1C4C6C6C6
-C6C4C6C6C6C6C6C6C6C6C6C6C6C6C1C1C1BEBBB9B7B1AEA9A6A39E9C9A9494928E89857F7C7C7687
-8F999CA1A6A9ABAEB1B3B3B3B3B3B1B1B1B1B1B1B1B1B1AEAEAEABA9A6A49E9C948E877F7C746E6A
-615C554F5961676C7274797C7F8487878789898C8E8F92929292929292929292928F8E8C89898987
-817C746E675F554F4F4F54544F4F4F55575F646A6E74767C7F818487878787878989898989898787
-87817F7F7F7C7C7C7C7976767679767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7C7C7C
-7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818181848484858584
-8481818181848484858585858584848181818481817F7F7F7F7F7F81818181818181818484848484
-85858585858585858787878787878787878789898989898989898989898989898989898989898989
-89898989898989898989898989898989898C8E8E8E8E8E8E8F929292929292929292929292929292
-9494949494949494949494999A9A9A9A9994949494949494949494949292928F8E8E8E8E8E898989
-87817F7F7F8185898F929294999A9A9C9C9C9E9E9E9E9C9C9C9C9C9C9C9A9A9994949292928E8987
-857F8E949C9EA4A6A6A9A9A9A9ABABAEAEAEAEABABA9A9A9A9A6A6A6A6A6A6A6A4A4A4A4A4A4A4A3
-A39E9E9E9C9C7F878C8F9292949A9C9C9E9EA1A4A6A6A6A6A9AEAEAEAEB1B1B1B1B3B3B6B6B7B9B9
-B9BBBBBBBBC0C1C1C4C6C6C6C8C9CCCFCCCCC8C6C6C1BEBBB9B9B6B3B1B1B1B1B1AEAEAEABA9A6A6
-A6A6A6A6A4A4A19E9E9E9E9E9C9C9A9A9A9996949494929292929292928F8E8E8E8E8E8C89898989
-898989898989878787858585858585858481817F7F7F7F7F7C7C7C7C7C7C7C7C7C76767676767474
-74747272716C6C6C6C6C6A6A6A6A6767666161615F5F5F5F59575755544F4F4F4F4F4F4F4F4F4FFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF74797F7F848789898E8E8E929294949494999A9C9C9E9E9E9E9E9E9E
-A1A4A4A4A4A4A4A4A6A6A6A9A9ABABAEAEB1B3B7B9BBBBBBC0C0C1C1C1C1C1C4C4C1C1C1C1C4C4C4
-C1C1C4C6C6C6C6C6C6C6C6C4C1C1C1BEBEBBB9B7B1B1ABA6A49E9C9A969492928987817F7C76848C
-949C9EA4A6A9AEB1B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEA9A6A4A39C999289847F76726C
-675F574F555F646A7174767C7F8185878789898C8E8F9292929292929292929292928F8E8C8C8987
-847F76726A61594F4F4F5155514F4F4F55575F666A7274767C7F7F81858787878789898989898989
-8785817F7F7F7F7C7C7C7979797979797676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818181818481
-817F7F7F7F818181818184848484817F7F7F81817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181818181
-81818184848484848585858787878787878789898989898989898989898989898989898989898989
-8989898989898989898989898989898989898C8E8E8E8E8E8F929292929292929292929292929294
-9494949494949494949494999A9A9A999694949494949494949494949292928F8E8E8E8E8C898987
-84817F7F8184898E92929494999A9A9C9C9C9E9E9E9E9C9C9C9C9C9C9C9A9A999494928F8E898785
-7C87929A9EA4A4A6A9A9A9A9ABABABABABAEABA9A9A9A9A6A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E
-9E9E9C9C7481878E8F9292949A9C9C9E9EA1A4A6A6A9A9A9ABAEAEAEB1B1B1B1B3B3B3B6B7B9B9B9
-B9BBBBBBBEC0C1C1C4C6C6C6C8C9CCCCCCC8C6C6C4C1BBBBB9B9B6B3B1B1B1B1B1AEAEAEABA9A9A6
-A6A6A6A6A4A4A19E9E9E9E9E9C9C9A9A9A9A99949494949292929292928F8E8E8E8E8E8E8C898989
-898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767474
-74747472716C6C6C6C6C6A6A6A6A676767616161615F5F5F5C575757554F4F4F4F4F4F4F4F4F4F4F
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFF767C7F81878789898E8E8F9292949494999A9A9C9C9E9E9E9E9E9E9E
-A1A4A4A4A4A4A4A4A6A6A6A9A9ABABAEAEB1B3B7B9BBBBBBBEC0C0C1C1C1C1C1C1C1C1C1C1C1C1C1
-C1C1C1C4C6C6C6C4C1C1C1C1C0BEBEBEB9B9B7B1B1AEA9A6A39E9A999494928E89847F7F7B7F8992
-9A9CA3A6A9ABAEB1B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEABA6A6A49E9C948E87817C7471
-6A615C554F5761676C72767C7F7F8587878989898E8F9292929292929292929292928F8F8E8E8C89
-87817C746C665F574F4F4F55554F4F4F51575961676C7274767C7F7F848487878787878989898989
-87878481817F7F7F7C7C7C7C7C7C7C7C7979797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81
-7F7F7F7F7F7F7F7F7F7F818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F818181848585858585858585878787898989898989898989898989898989898989898989
-8989898989898989898989898989898989898C8E8E8E8E8F92929292929292929292929292929494
-949494949494949494949494999A9A999494949494949494949494929292928F8F8E8E8C89898787
-8481818485878C92929494999A9A9C9C9C9E9E9E9E9C9C9C9C9C9C9C9A9A99949492928E8987877C
-818F949C9EA3A4A6A6A9A9A9A9A9A9ABABABA9A9A9A6A6A6A6A6A4A4A4A4A49E9E9C9C9C9C9C9C9C
-9C9C9A7487898E8F929294999C9C9E9EA1A4A4A6A9A9ABACAEAEAEB1B1B1B1B3B3B6B6B6B7B9B9B9
-B9BBBBBBBEC0C1C1C4C6C6C6C6C8CCCCC9C8C6C6C1C1BBBBB9B9B6B3B1B1B1B1AEAEAEAEABA9A9A6
-A6A6A6A6A4A4A39E9E9E9E9E9C9C9A9A9A9A99949494949292929292928F8E8E8E8E8E8E8C898989
-898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767474
-74747472726E6C6C6C6C6C6A6A6A6A6767646161615F5F5F5D59575755514F4F4F4F4F4F4F4F4F4F
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF767C7F7F848789898C8E8E9292929494999A9A9A9C9C9E9E9E9E9E9E9E
-A3A4A4A4A4A4A4A4A6A6A6A9A9A9ABAEAEB1B3B7B9B9BBBBBBBEBEC0C0C1C1C1C1C1C1C1C1C1C1C1
-C1C1C1C1C1C1C1C1C1C1C0BEBEB9B9B9B7B6B1B1AEA9A6A49E9C9A9494928F8987817F7C7C879294
-9C9EA4A6ABAEAEB1B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEACA9A6A4A19C999289857F7672
-6C675F5751545F646A7174797C7F8487878789898C8E8F9292929292929292929292928F8F8F8E89
-87857F76726A615C544F4F5455544F4F4F54575D616A6C7476797C7F818184858787878789898987
-8787878481817F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818181817F7F7F
-7F7F8181818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F81818485858585858585878787878789898989898989898989898989898989898989
-8989898989898989898989898989898989898E8E8E8E8E8F92929292929292929292929292929494
-94949494949494949494949499999994949494949494949494949292929292928F8E8E8989898787
-8584848787899292949494999A9A9C9C9C9E9E9E9E9C9C9C9A9A9A9A9A99969494928F8989877F7F
-8C92999C9EA3A4A6A6A6A6A6A6A9A9A9A9A9A9A9A6A6A6A6A6A4A4A19E9E9E9E9C9C9A9A9A9A9999
-999A7C87898C92929494999C9C9E9EA1A4A4A6A6A9ABAEAEAEB1B1B1B1B1B3B3B6B6B6B6B7B9B9B9
-BBBBBBBBC0C0C1C1C1C6C6C6C6C8CCC9C8C6C6C4C1C0BBB9B9B7B6B3B1B1B1B1AEAEAEAEABA9A9A6
-A6A6A6A6A4A4A39E9E9E9E9E9C9C9A9A9A9A9996949494929292929292928E8E8E8E8E8E8E898989
-898989898989898987878585858585858585817F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767674
-7474747472716C6C6C6C6C6A6A6A6A6767666161615F5F5F5F5C575755554F4F4F4F4F4F4F4F4F4F
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF747C7C7F81878989898E8E8F9292949494999A9A9A9C9C9E9E9E9E9E9E9E
-A4A4A4A4A4A4A4A4A6A6A6A9A9A9ABAEB1B1B3B7B9B9BBBBBBBBBEBEC0C0C1C1C1C1C1C1C1C1C1C0
-C0C0C1C1C1C0BEBEBEBEBEBBB9B9B7B6B6B1B1AEABA9A6A39E9C949492928E89847F7F76818E929A
-9EA3A6A9AEAEB1B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEA9A6A6A49E9A948E87817C74
-726A615D554F5761676C72767C7F8184878789898C8E8F92929292929292929292929292928F8F8E
-8987817C746C665F574F4F4F5555514F4F4F55575F666A7274767C7C7F8181848587878787878787
-8787878584817F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F8181818181818184848484818181
-818181848584848481818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F818484848485858585858787878787878989898989898989898989898989898989
-89898989898989898989898989898989898C8E8E8E8E8F9292929292929292949494949292949494
-94949494949494949494949494949494949494949494949494949292929292928F8E8C8989878785
-85858787898F92929494999A9A9C9C9C9E9E9E9E9C9C9C9A9A9A9A9A9A999494928F8C89877F7F89
-92949A9C9EA1A4A4A6A6A6A6A6A6A6A6A9A6A6A6A6A6A6A4A4A4A19E9E9E9C9C9C9A999494949494
-947F87898C92929494999A9C9E9EA3A4A4A4A6A9ABAEAEAEAEB1B1B1B1B3B3B6B6B7B7B6B9B9B9B9
-BBBBBBBBBEC0C1C1C1C6C6C6C6C8C9C8C6C6C6C1C1BEBBB9B9B7B3B1B1B1B1B1AEAEAEAEABA9A9A6
-A6A6A6A6A4A4A39E9E9E9E9E9C9C9A9A9A9A9A99949494949292929292928F8E8E8E8E8E8E8C8989
-898989898989898987878785858585858585817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C767676767674
-7474747472726C6C6C6C6C6A6A6A6A676767616161615F5F5F5C575757554F4F4F4F4F4F4F4F4F4F
-4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF767C7F7F85878989898E8F9292929494999A9A9A9C9C9E9E9E9E9E9E9EA1
-A4A4A4A4A4A4A4A6A6A6A6A6A9A9ABAEB1B1B3B7B9B9BBBBBBBBBBBBBEC0C0C1C1C1C1C1C0C0C0BE
-BEBEBEC0BEBEBEBEBBB9B9B9B7B6B6B1B1B1AEABA9A6A49E9C9A9494928F89877F7F7C7F8992949C
-9EA4A9ABAEB1B1B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEABA9A6A49E9C999289877F79
-746C675F57544F5C616A7174797C7F8185878989898E8F9292929292929292929292929292928F8F
-8C89877F76726A615C554F4F545555514F4F4F555761676A7274767C7C7F7F818184858787878787
-878785848481817F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7F7C7C7C7C7F7F7F7F7F7F7F7F7F7F8181818181818184848484818485858585858484
-8484848585858585858584848484818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7F7F7F7F
-7F7F7F7F7F7F7F7F8181818184858585858585878787878789898989898989898989898989898989
-898989898989898989898989898989898C8E8E8E8E8F929292929292929494949494949494949494
-949494949494949494949494949494949494949494949494949292929292928F8E8C898987878585
-858787898E9292949494999A9A9C9C9C9E9E9E9E9C9C9C9A9A9A9A9A99969492928E89878579878E
-92949C9E9EA1A3A4A4A4A4A6A6A6A6A6A6A6A6A6A6A4A4A4A4A19E9C9C9C9C9A9A99949292929292
-7F87898E92929494999A9C9E9EA3A4A4A6A6A6A9ABAEAEAEB1B1B1B1B3B3B6B6B7B9B7B7B9B9B9B9
-BBBBBBBBBEC0C1C1C1C4C6C6C6C8C8C6C6C6C4C1C1BBBBB9B9B6B3B1B1B1B1B1AEAEAEAEABA9A9A6
-A6A6A6A6A4A4A39E9E9E9E9E9C9C9C9A9A9A9A99949494949292929292928F8E8E8E8E8E8E8C8989
-89898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C7C7C767676767676
-7474747472726E6C6C6C6C6A6A6A6A676767646161615F5F5F5D59575755514F4F4F4F4F4F4F4F4F
-4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF747C7F7F81878989898C8E8F92929294949A9A9A9A9C9C9E9E9E9E9E9E9EA3
-A4A4724F4F4F4FA6A6A6A6A6A9A9ABAEB1B1B3B9B9B9BBBBBBBBBBBBBBBEC0C0C1C1C0C0BEBEBEBE
-BBBBBEBEBEB9B9B9B9B9B9B7B6B1B1AEAEAEABA9A6A4A39E9C999492928C89817F7C7C878F949A9E
-A4A6ABAEAEB1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEA9A6A4A39E9A948E87817C
-76726A615D574F555F666C7274797F7F84878789898C8E929292929292929292929292929292928F
-8E8989817C746C665F57514F4F555555514F4F51555D61676C7274767C7C7F7F8181848484848585
-858584848181817F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F818181818181818484848484818485858585858585858585858585
-8585858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C
-7C7C7F7F7F7F7F7F7F7F7F7F81848585858585858587878789898989898989898989898989898989
-898989898989898989898989898989898E8E8E8E8E8F929292929292949494949494949494949494
-949494949494949494949494949494949494949494949494949292929292928F8E89898987878585
-878789898F92929494999A9A9C9C9C9E9E9E9E9C9C9C9A9A9A9A9A9A999494928F8989876A858992
-949A9C9C9E9EA1A3A4A4A4A4A4A4A6A6A6A4A4A4A4A4A3A39E9E9C9C9A9A9A99949492928F8F8E7F
-878C8F92929494999A9C9EA1A3A4A4A6A6A6A9ABABAEAEAEB1B1B1B1B3B3B6B9B9B9B9B7B9B9B9BB
-BBBBBBBBBEC0C1C1C1C4C6C6C6C6C6C6C6C6C1C1C0BBBBB9B9B6B3B1B1B1B1AEAEAEAEAEABA9A9A6
-A6A6A6A6A6A4A49E9E9E9E9E9C9C9C9A9A9A9A99949494949492929292928F8E8E8E8E8E8E8E8C89
-89898989898989898987878785858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676
-747474747472716C6C6C6C6A6A6A6A676767666161615F5F5F5F5C575757554F4F4F4F4F4F4F4F4F
-4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFF767C7F8185878989898E8F9292929494999A9A9A9A9C9C9E9E9E9E9E9E7F89
-94949494928F89847FA6A6A6A9A9ABAEB1B1B3B9B9B9B9B9B9B9BBBBBBBBBBBEC0C0BEBEBEBBBBBB
-BBBBBBBBB9B9B9B9B7B7B6B1B1AEAEAEABABA9A6A6A49E9C9A9494928F89877F7F76818992999CA3
-A6ABAEAEB1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEAEABA6A6A49E9C969289877F
-79746C676157544F5761676C72767C7F81848789898C8E8F92929292929292929292929292929292
-8F8C89877F76726A615D574F4F515555554F4F4F54575F616A6C7274767C7C7F7F7F818184818181
-81818481817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7F7F7C7C7C7C7C7C7C7C7F7F7C7F7C7C7C7C7C7C7F7C7C7C7F7F7F7F7F7F7F7F7F
-7F7F7F7F81817F818181848181818484858484848485858585858585858585858585858585858585
-858585858585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C
-7C7C7C7F7F7F7F7F7F7F7F7F81818485858585858787878789898989898989898C8C89898989898C
-8C89898989898989898989898989898C8E8E8E8E8F92929292929292949494949696949494949494
-9494949494949494949494949494949494949494949494949292929292928F8E8C89898787858585
-8787898E9292949494999A9A9C9C9C9E9E9E9E9C9C9C9A9A9A9A9A99949492928E89877F84898F92
-949A9C9C9C9C9E9E9E9EA3A4A4A4A4A4A4A4A4A3A19E9E9E9C9C9A9A9494949494928F8E8C897F87
-898F92929494999A9C9E9EA4A4A4A6A6A6A6A9ABAEAEAEAEB1B1B1B3B3B3B6B7B9B9B9B9B9B9B9BB
-BBBBBBBBBEC0C1C1C1C4C4C6C6C6C6C6C6C4C1C1BEBBB9B9B7B6B3B1B1B1B1AEAEAEAEAEABA9A9A6
-A6A6A6A6A6A4A49E9E9E9E9E9C9C9C9A9A9A9A99949494949492929292928F8E8E8E8E8E8E8E8C89
-89898989898989898987878785858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676
-747474747472726C6C6C6C6A6A6A6A6A676767616161615F5F5F5C575757554F4F4F4F4F4F4F4F4F
-4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFF767C7F7F84878989898C8F929292929494999A9A9A9C9C9C9E9E9E9E76858E97
-9E9C9C9A9A99928987816CA6A9ABAEAEB1B1B3B7B9B9B9B9B9B9B9BBBBBBBBBEBEBEBBBBBBBBBBBB
-B9B9B9B9B9B7B6B6B3B3B1B1AEAEABA9A9A9A6A6A49E9E9C9A9494928987817F7C7F8792949C9EA6
-A9AEB1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEACA9A6A4A39E9A948F8981
-7C74726A665F574F545C616A6C74767C7F84878989898E8F92929292929292929292929292929292
-928E8987847C74726A5F57544F4F555555554F4F4F55575F666A6C727476797C7C7F7F7F81817F7F
-7F8181817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7F7F7F7F7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818181818181
-81818484848481818485858584848485858585858585858585858585858585858585858585858585
-8585858585858585858585858585858585848181818181818181818181817F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F8184858585858787878789898989898989898C8E8E8E8E8E8E8E8E
-8C8989898989898989898989898C8C8E8E8E8E8F9292929292949494949499999999999999999999
-9694949494949494949494949494949494949494949494929292929292928F8E8989878785858587
-87898C8F92929494999A9A9C9C9C9E9E9E9E9C9C9C9C9A9A9A9A9A999494928F8987847F878C9294
-949A9C9A9A9C9C9C9C9C9E9C9E9EA4A4A3A19E9E9E9E9C9C9C9A94949292928F8F8C898989768789
-8F92929494999A9C9C9EA3A4A4A6A6A6A9A9A9ABAEAEAEB1B1B1B1B3B3B3B6B7B9B9B9B9B9B9B9BB
-BBBBBBBBBBC0C1C1C1C1C1C6C6C6C6C4C1C1C1C0BBBBB9B9B7B3B1B1B1B1B1AEAEAEAEABABA9A9A6
-A6A6A6A6A6A4A4A19E9E9E9E9E9C9C9A9A9A9A99949494949492929292928F8E8E8E8E8E8E8E8E89
-89898989898989898987878785858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676
-767474747472726E6C6C6C6C6A6A6A6A676767666161615F5F5F5D59575755544F4F4F4F4F4F4F4F
-4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF747C7C7F8185878989898E8F929292929494999A9A9A9C9C9E9E9E9E768F929AA1
-A6A4A39E9E9E9A949292816CA9ABAEAEB1B1B3B6B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBBB9B9B9
-B9B9B9B9B6B3B1B1B1B1B1AEAEABA9A6A6A6A4A49E9E9C9A9994928E89857F7C79878C949A9EA4A6
-AEB1B1B1B1B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEAEA9A6A6A49E9C96928987
-7F76746C6A615C554F555D616A6E74797C81878789898C8F92929292929292929292929292929292
-928F8989877F7C746C665D554F4F51555555544F4F5155595F666A6C72747476797C7C7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F
-7F7F7F7F7F7F7F7F817F7F7F7F7F7F81818181848485858584848484818184848484848485858584
-84848485858584848585858585858585858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858585848484848484848484818181818181817F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F81818485858585878789898989898989898C8E8F8F8F8F8F8F8F8F
-8E8C89898989898989898C8C8E8E8E8E8E8E8E8F92929294949494949496999A9A9A9A9A9A9A9A99
-99999999999696949494949494949494949494949494949292929292928F8E898989878785858587
-89898E9292949494999A9A9C9C9C9E9E9E9E9E9C9C9C9A9A9A9A999494928F8C89847C87898F9294
-999C9A9A999A9A9A9A9C9A9A9A9C9C9C9E9E9E9C9C9C9C9A999494928F8C8989898787877487898E
-92929494999A9C9C9E9EA4A4A4A6A6A6A9A9ABAEAEAEAEB1B1B1B1B3B3B3B6B7B9B9B9B9B9B9B9BB
-BBBBBBBBBBC0C0C1C1C1C1C4C6C6C4C1C1C1C0BEBBBBB9B9B6B3B1B1B1B1AEAEAEAEAEABABA9A9A6
-A6A6A6A6A6A4A4A19E9E9E9E9E9C9C9A9A9A9A99949494949492929292928F8E8E8E8E8E8E8E8E8C
-89898989898989898989878787858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C797676767676
-76747474747472716C6C6C6C6A6A6A6A67676766616161615F5F5F5C575757554F4F4F4F4F4F4F4F
-4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF767C7F7F85878789898C8F929292929294969A9A9A9A9C9C9E9E9E768F9EA1A4AE
-AEABA9A6A6A6A49C9C9C947F745FAEAEB1B1B3B6B9B9B9B9B9B9B9B9B9B9BBBBBBBBB9B9B9B9B9B9
-B9B9B9B6B3B1B1B1B1AEAEAEABA9A6A6A4A4A4A39E9C9C9A94928F8987817F79848992999CA1A6AB
-B1B6B3B3B3B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEABA9A6A6A39C9A948E87
-817C74726A665F57514F575F676A72767C7F848789898C8E8F929292929292929292929292929292
-928F8C8987847F76726A6157514F4F545557554F4F4F54575D61666A6C7172747676797C7C7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7C7C7F7F7F
-7F7F81817F7F7F818181818181848485858787878787878787878787878587878787878787878787
-85848585858585858585858585858585858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858587878787878787878785858585848484848481
-81818181817F7F7F7F7F7F7F7F818184858585858787878989898989898C8E8E8F9292929292928F
-8E8E89898989898989898E8E8E8E8E8E8E8E8F92929294949494949494999A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9999999999949494949494949494949494949292929292928F8E8C898987878585858787
-898E9292949494999A9A9C9C9C9E9E9E9E9E9E9C9C9C9C9A9A9A999494928E89857687898E929494
-9A9A9994949494949999949494949999999A9A9A9A9A999494928F8C898787878481816781898E92
-929494999A9C9C9C9EA3A4A4A6A6A6A6A9A9ABAEAEAEAEB1B1B1B3B3B3B3B6B7B9B9B9B9B9B9BBBB
-BBBBBBBBBBBEC0C1C1C1C1C1C4C1C1C1C1C0BEBBBBB9B9B9B6B3B1B1B1B1AEAEAEAEAEABABA9A9A9
-A6A6A6A6A6A4A4A19E9E9E9E9E9C9C9A9A9A9A99949494949492929292928F8E8E8E8E8E8E8E8E8C
-89898989898989898989878787858585858585817F7F7F7F7F7F7F7F7C7C7C7C7C7C797676767676
-76747474747472726C6C6C6C6A6A6A6A6A676767616161615F5F5F5C575757554F4F4F4F4F4F4F4F
-4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFF767C7F7F81858789898C8E92929292929494999A9A9A9A9C9C9E9E768FA6AEAEAEB9
-B6B1AEAEAEABA9A6A6A6A49E94895FAEAEB1B1B3B7B9B9B9B9B9B9B9B9B9B9BBB9B9B9B9B9B9B9B9
-B7B7B6B3B1B1AEAEAEAEAEABA9A6A6A4A4A39E9E9C9C9A9494928E89847F7C7F878F949A9EA4A9AE
-B3B9B7B6B6B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEABA9A9A6A49E9C969289
-857F76746C6A615D57514F575F676C74797C818789898C8E8F929292929292929292929292929292
-92928E8987847F7C746E675F554F4F4F555757554F4F4F55575F61666A6C7172747476767C7C7F7C
-7C7C7C7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F
-7F818184818181818484858587878787878787878787878787898989878787878787878987878787
-87878785858585858585858585858585858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858787878787878787878787878787878787878787
-858787878785848481817F8181848485858585858587878989898989898C8E8F929292929292928F
-8E8C898989898989898C8E8E8E8E8E8E8E8F9292929494949494949499999A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A99949494949494949494949494949292929292928F8E89898787858585878789
-898F9292949494999A9A9C9C9C9E9E9E9E9E9E9E9C9C9C9A9A999494928F8C877481898E92929494
-94949494929292929492929292929292929292929292928F898989878784817F7F7F7F7F878C9292
-9494949A9C9C9E9E9EA4A4A4A6A6A6A9A9ABABAEAEAEAEB1B1B1B3B3B3B3B3B6B9B9B9B9B9B9B9BB
-BBBBBBBBBBBEC0C1C1C1C1C1C1C1C1C1C0BEBEBBB9B9B9B7B3B3B1B1B1B1AEAEAEAEAEABA9A9A9A6
-A6A6A6A6A6A4A4A39E9E9E9E9E9C9C9A9A9A9A9994949494949492929292928E8E8E8E8E8E8E8E8E
-8C898989898989898989898787858585858585817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7676767676
-76747474747472726E6C6C6C6C6A6A6A6A676767666161615F5F5F5D59575755544F4F4F4F4F4F4F
-4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFF74797C7F8185858789898E8F92929292929494999A9A9A9C9C9E9E768EA6B9B9BEBEC1
-BEB9B7B6B3B1B1AEAEACA6A49E9C945FAEB1B1B3B6B9B9B9B7B7B7B9B9B9B9B9B9B9B9B9B9B7B7B6
-B6B6B3B1B1AEAEABABA9A9A9A6A6A4A39E9E9E9C9C9A9994928F8987817C7C878C92999CA4A6AEB1
-B7B9B9B9B9B9B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEABA9A6A49E9C9A948E
-877F7C76726C675F59554F4F5C616A71747C7F848789898E8F929292929292929292929292929292
-92928E898785817F79746C61594F4F4F54555757544F4F4F55575F5F646A6C6E72747474767C7C7C
-7C7C7C7C7C7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F
-81818485848484848485858787878787878787898989878789898989898989878787898989898987
-87878787878585858585858585858585858585858585858585858585858585858585858585858585
-85858585858585858585858585858587878787878787898989898987878787878989898989898787
-878787898987878787858484848585858585858587878787898989898C8E8F929292929292928F8E
-8C898989898989898C8E8E8E8E8E8F8F8F8F92929294949494949494999A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9994949494949494949494949292929292928F8E8C89898787858585878789
-8E9292949494999A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9C9A9A999494928E89817F89898E92929294
-949292928F8E8E8F8E898989898989898989898989898987858481817F7F7C7C7C7C7C87898F9292
-9494999C9C9E9E9EA3A4A4A6A6A6A6A9A9ABAEAEAEAEAEB1B1B1B3B3B3B3B3B6B9B9B9B9B9B9B9BB
-BBBBBBBBBBBEC0C1C1C1C1C1C1C1C0C0BEBEBBBBB9B9B9B7B3B1B1B1B1B1AEAEAEAEABABA9A9A9A6
-A6A6A6A6A4A4A4A39E9E9E9E9E9C9C9A9A9A9A9A96949494949492929292928F8E8E8E8E8E8E8E8E
-8C89898989898989898989878785858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7676767676
-7676747474747472716C6C6C6C6A6A6A6A67676766616161615F5F5F5C57575755514F4F4F4F4F4F
-4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFF767C7F7F84858787898C8F92929292929494949A9A9A9A9C9C9E7689A3B9C1C6C6C6C6
-C1BEBBB9B9B9B7B7B7B4AEA6A49E9A8959B1B1B3B6B9B9B7B7B6B6B7B9B9B9B9B9B9B7B7B6B6B6B3
-B3B3B1B1AEAEABA9A9A6A6A6A6A4A39E9E9C9C9C9A9994928F8987817F74848992949A9EA4A9AEB3
-B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEABABA9A6A49E9C9492
-89847C79746E6A615F57544F555F666A72767C818789898C8E8F9292929292929292929292929292
-92928F89898787817C76716A5F554F4F4F55575757554F515155575F5F616A6A6C72747474767C7C
-7C7C7C7C7C7C7C7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F81
-81848585858585848585858787878989878789898989898989898989898989898989898989898989
-89878787878787878585858585858585858585858585858585858585858585858585858585858585
-8585858585858585858585858585878787878787878989898989898989898989898C8E8C8C898989
-8989898989898989898787878787878787858587878787898989898C8E8F8F929292929292928F8E
-8989898989898C8C8E8E8F8F8F8F92929292929294949494949494999A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A99949494949494949494949492929292928F8F8F8C898987878585858789898C
-8F9292949494999A9A9C9C9C9E9E9E9E9E9E9E9C9C9C9A9A999494928F89847C8789898E8F929292
-928F8E8C8989898987878584818181848485878787847F7F7F7C7C7C7C797676767C85898E929294
-94969A9C9E9E9EA1A4A4A4A6A6A6A9A9A9ABAEAEAEAEAEB1B1B1B3B3B3B3B3B6B7B9B9B9B9B9B9BB
-BBBBBBBBBBBBC0C1C1C1C1C1C1C0C0BBBBBBBBB9B9B9B9B6B3B1B1B1B1AEAEAEAEAEABABA9A9A9A6
-A6A6A6A6A4A4A4A39E9E9E9E9E9C9C9A9A9A9A9A99949494949492929292928F8E8E8E8E8E8E8E8E
-8C89898989898989898989878785858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676
-7676747474747472726C6C6C6C6C6A6A6A6A676767616161615F5F5F5D5757575554514F4F4F4F4F
-4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFF747C7C7F8185858789898E9292929292949494999A9A9A9A9C9C76899EB6C1C6C8CCCCCC
-C6C4C1C1BFBEBEBEBCBCB4ABA6A49C947B51B1B1B6B7B7B6B6B6B3B6B6B7B9B9B7B6B6B6B3B3B3B1
-B1B1B1AEAEABA9A6A6A6A6A6A4A49E9E9C9C9C9A9A9494928E89857F7C7F878E92999CA3A6ABB1B3
-B9B7B7B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEABABA9A6A49E9C9A92
-8C877F7C76726C67615D554F4F575F676C747C7F848789898E8E8F92929292929292929292929292
-92928F8C898987877F7B746C665C514F4F5155575757554F545455575D5F61676A6C72727474767C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F81
-81848585858585858585858587878989898989898989898989898989898989898989898989898989
-89898989878787878785858585858585858585858585858585858585858585858585858585858585
-8585858585858585878787878787878789898989878989898989898989898989898E8E8E8E8E8E8E
-8C8C8C898989898989898989898787878787878787878989898989898E8F929292929292928F8E8C
-8C8989898C8E8E8E8E8F9292929292929292929294949494949494999A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A999994949494949494949494949292928F8F8E8E8E898989878785858789898E8F
-9292949494999A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9C9A9A999492928C877F8489898C8E8F92928F
-8E8C8987878784817F7F7F7C7C79797979797C7C797676767676767674747474618189898F929494
-94999C9C9E9E9EA3A4A4A6A6A6A6A9A9ABABAEAEAEAEAEAEB1B1B3B3B3B3B3B6B7B9B9B9B9B9B9BB
-BBBBBBBBBBBBBEC0C0C0C0C0C0BEBBBBBBBBB9B9B9B9B9B6B3B1B1B1B1AEAEAEAEAEABA9A9A9A6A6
-A6A6A6A6A4A4A4A39E9E9E9E9E9C9C9C9A9A9A9A99949494949492929292928F8E8E8E8E8E8E8E8E
-8E89898989898989898989878785858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767676
-767674747474747472716C6C6C6C6A6A6A6A676767666161615F5F5F5D5957575554514F4F4F4F4F
-4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFF74767C7F7F85858789898E8E9292929294949494999A9A9A9A9C7C899CAEBECCCCCFCFCFCF
-CCC6C6C6C6C4C4C6C4C1B9B1ABA69E9A926CB1B1B3B6B6B6B6B3B3B3B6B6B7B6B6B3B3B3B1B1B1B1
-B1B1AEAEABA9A6A6A6A4A4A4A49E9E9C9C9A9A9A9994928E89877F7C7C878C92949A9EA4A9AEB1B7
-B9B7B7B7B7B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEABABA9A6A39E9A94
-8F89847C76746C6A615F59554F5457616A72767C81878789898E8E8F8F9292929292929292929292
-9292928E8C898987817C76726A61554F4F4F5557575757554F555557575C5F61676A6C7272747476
-797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-81848585858585858585858587878789898989898989898989898989898989898989898989898989
-89898987878789878787858585858585858585858585858585858585858585858585858585858585
-8585858585858587878787878787878989898989898989898989898C8C8C8C898C8E8F8F8F8F8F8F
-8E8E8E8E8C8C8C8C8E8E8C89898989898787878787898989898989898C8E8F8F8F8F92928F8C898C
-8C8C8C8E8E8E8E8E8F9292929292929292929294949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9994949494949494929292929292928F8E8E8E8E8C8989878785858789898E8F92
-9294949999999A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9A9A999494928C877F7F8789898C8E8E8F8E8C
-89898784817F7F7C7976767674747472727272727272727474747472727272727F87898E92949496
-9A9A9C9E9E9EA1A4A4A4A6A6A6A6A9A9ABAEAEAEAEAEAEAEB1B1B1B3B3B3B3B6B7B9B9B9B9B9B9BB
-BBBBBBBBBBBBBBBEBEBEBEBEBEBBBBBBBBB9B9B9B9B9B7B3B1B1B1B1B1AEAEAEAEABABA9A9A9A6A6
-A6A6A6A4A4A4A4A49E9E9E9E9E9C9C9C9A9A9A9A99949494949492929292928F8F8E8E8E8E8E8E8E
-8E89898989898989898989878787858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767676
-767674747474747472716C6C6C6C6A6A6A6A67676766616161615F5F5F5C57575755544F4F4F4F4F
-4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFF767C7F7F84858787898C8E8F9292929294949494999A9A9A9C61929EABB7C4D1D1D3D4D4D3
-CFCCCCCCCCCCCCCCCCC8BEB6AEABA49C948E6672716A6661B3B3B3B3B3B3B6B3B3B1B1B1B1B1B1B1
-AEAEAEABA9A6A6A4A4A4A4A39E9E9C9C9C9A999994928F8987817F7484898F94999CA3A6ABAEB1B9
-B9B6B6B6B7B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEAEABABA6A49E9C99
-9289877F7C74726A67615F57514F555C616A72767F84878789898E8E8F9292929292929292929292
-929292928E8C8989877F7C76716A5D554F4F4F55575757575554555557595D5F61676A6C72727474
-76767C7C7C7C7C7C7C7C7F7F7F7F7F7C7C7F7F7F7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-81818585858585858585858587878789898989898989898989898989898989898989898989898989
-89898787878787878787858585858585858585858585858585858585858585858585858585858585
-8585858585858787878789898989898989898989898989898989898C8E8E8E8E8E8F8F9292929292
-8F8F8F8F8E8E8E8F8F928F8F8E8C89898989878789898989898989898C8E8E8E8C8C8E8C8C898989
-8C8E8E8E8E8E8E8E8F9292929292929292929494949494949496999A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9996949494949494949292929292928F8F8E8E8E8E8989878785878789898F929294
-949499999A9A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9C9A999494928C897F7C84898989898C8E8E8989
-8987847F7F7C7C7676767474747272716C6C6C6C6C717171716E6C6C6C6C6C7F84898C8F9294999A
-9A9C9C9E9E9EA3A4A4A4A6A6A6A9A9A9ABAEAEAEAEAEAEAEB1B1B1B3B3B3B3B6B7B9B9B9B9B9B9BB
-BBBBBBBBB9BBBBBBBBBBBBBBBBBBB9BBB9B9B9B9B9B7B6B3B1B1B1B1AEAEAEAEAEABABABA9A9A6A6
-A6A6A6A4A4A4A4A4A19E9E9E9E9C9C9C9A9A9A9A9994949494949292929292928F8E8E8E8E8E8E8E
-8E89898989898989898989898787858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C76767676
-767674747474747472726E6C6C6C6C6A6A6A6A676767616161615F5F5F5D5757575555544F4F4F4F
-4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFF767C7C7F8185858789898E8E9292929294949494969A9A9A9A6194A4ABB4BECCD4D4D9D9D9D9
-D4D1D1D3D1D1D4D4D2CCC4B9B6AEA69E9A92816176767676726A675CB1B3B3B1B1B1B1B1B1B1AEAE
-AEAEABA9A6A6A6A4A3A19E9E9E9E9C9C9A9A999494928E89857F7C7F898E92949A9EA4A9AEB1B3B9
-B7B6B6B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEAEABABA9A6A19C9A
-948F89817C76746C6A645F59554F4F555F676C747C7F85878789898C8E8F92929292929292929292
-92929292928E8C8989857F7C746C61574F4F4F5455575759575555555557595D5F61676A6C727474
-7476797C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F818485858585858585858585878787878789898989898989898989898989898989898989898989
-89878787878787878787858585858585858585858585858585858585858585858585858585858585
-85858585858787878789898989898989898989898989898989898C8E8E8E8E8E8E8E8F9292929292
-9292928F8F8F8F8F92929292928F8E8C898989898989898989898989898C89898989898989898989
-8E8E8E8E8E8E8E8F9292929292929292929294949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A999A9A9A9994949494949494929292929292928F8E8E8E8E8C898987878787898C9292929494
-94999A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9A999494928E898179818787898989898C898989
-87847F7F7C7C7C7C797676767474747272716C6C6C6C6C6C6C6C6C6C6C6C7C8589898E9294949A9C
-9C9C9E9E9EA1A4A4A4A6A6A6A6A9A9ABAEAEAEAEAEAEAEAEB1B1B1B3B3B3B3B3B6B9B9B9B9B9B9B9
-BBBBBBBBB9B9BBB9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B1B1B1B1AEAEAEAEAEABABABA9A9A6A6
-A6A6A6A4A4A4A4A4A19E9E9E9E9E9C9C9A9A9A9A9994949494949292929292928F8F8E8E8E8E8E8E
-8E8C89898989898989898989878785858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C79767676
-76767474747474747472716C6C6C6C6A6A6A6A676767666161615F5F5F5D5957575555554F4F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FF74767C7F7F84858789898E8E8E9292929294949494999A9A9A619CA4ABB1BCC8D4D9D9DCDFDCD9
-D9D7D9D9D9D9D9D9D9D1C8BEB9B1ABA49C948F79577F7C7674726A6A5F57B1B1B1B1B1AEAEAEAEAE
-AEABA9A6A6A6A4A49E9E9E9E9C9C9C9C9A999494928E89877F7C7C87898F94999C9EA6ABAEB1B6B9
-B7B6B3B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEAEABA9A6A49E9C
-999289877F7974726A67615F57544F5157616A72747C7F84878789898E8F92929292929292929292
-9292929292928E8C8989857F79746A5F554F4F4F5557575C595755575555575C5F5F61676A6C7274
-7476767C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F818185858585858585858585858787878787878789898989898989898989898989878787898989
-87878787858585878785858585858585858585858585858585858585858585858585858585858585
-858585858787878789898989898989898989898989898989898C8E8E8E8E8E8E8E8E8F8F8F929292
-9292929292929292929292929292928E8C898989898989898989898989898989878989898989898C
-8E8E8E8E8E8E8F929292929292929292929494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A999999999994949494949494949292929292928F8E8E8E8C8C898987878587898C929294949499
-9A9A9A9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C9A9494928F8984797F8587878989898989898987
-84818181817F7F7F7C7C7C7C7C79767674747272727272716C6E717171798589898E929294999A9C
-9C9C9E9E9EA3A4A4A4A6A6A6A9A9A9ABAEAEAEAEAEAEAEAEB1B1B1B3B3B3B3B3B6B9B9B9B9B9B9B9
-BBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B9B6B6B3B3B1B1B1B1AEAEAEAEABABABABA9A6A6A6
-A6A6A6A4A4A4A4A4A19E9E9E9E9E9C9C9A9A9A9A999494949494929292929292928F8E8E8E8E8E8E
-8E8C89898989898989898989878785858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C79767676
-76767474747474747472726C6C6C6C6A6A6A6A67676766616161615F5F5F5C57575755554F4F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FF767C7F7F81858787898C8E8E8F9292929294949494999A9A9A92A4ABB4B9C1CED9DFE1E1E1E1DF
-DFDCDFDFDFDFE1E1E1D9CFC6BBB6AEA69E9A928F71547C797674716C6C6159B1B1AEAEAEAEAEAEAB
-ABA9A9A6A6A4A4A19E9E9C9C9C9C9C9A9A9994928F8987847C7684898E92949A9CA4A9AEB1B3B9B9
-B6B6B3B3B3B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEAEAEA9A6A49E9C
-9A948F89817C76726C6A665F5C554F4F545D616A72767C7F81878789898F92929292929292929292
-929292929292928F8E8989857F76726657514F4F515557595C5C5757575757575D5F5F61676A6C72
-747676797C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F8184858585858585858585858585858787878787878989898989878787878987878787878787
-87878785858585858585858585858585858585858585858585858585858585858585858585858585
-8585858787878789898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8F8F8F92
-9292929292929292929292929292928F8E8C8C898989898989898989878787878787898989898C8E
-8E8E8E8E8E8E8F92929292929292949494949494949494949499999A9A9A9A9A9A9A9A9A9A9A9A9A
-999994949494949494949494949292929292928F8F8E898989898989878587898C9294949494999A
-9A9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C9C9A9994928F89877C7C818787878989898989898987
-858587878787848181817F7F7F7C7C79767676767474727274747474748587898E929294949A9C9C
-9C9E9E9EA1A4A4A4A6A6A6A6A9A9ABABAEAEAEAEAEAEAEAEB1B1B1B3B3B3B3B3B6B7B9B9B9B9B9B9
-BBBBBBBBB9B9B9B9B7B7B7B9B9B7B7B9B9B7B6B7B6B6B3B1B1B1B1B1AEAEAEAEABABABABA9A9A6A6
-A6A6A6A4A4A4A4A4A19E9E9E9E9E9C9C9A9A9A9A999494949494929292929292928F8E8E8E8E8E8E
-8E8C8989898989898989898987878585858585858481817F7F7F7F7F7F7F7F7C7C7C7C7C7C797676
-76767674747474747472726C6C6C6C6C6A6A6A6A676767646161615F5F5F5D5757575555544F4F4F
-4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-767C7C7F8185858789898E8E8E8F92929294949494949A9A9A5FA1ABB4B9C1C9D7E1E4E6E6E6E4E4
-E1E1E1E4E6E6E6E6E4D9CFC6C0B9B1ABA49C999287667C7C76747472716C675FAEAEAEAEABABABA9
-A9A9A6A6A4A4A19E9E9C9C9C9C9C9C9A999492928E89877F747F87898F92949A9EA6A9AEB1B3B9B7
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEAEAEABA9A6A49E
-9C999289877F7974716A67615F57544F4F575F676C72767C7F818787898C8F929292929292929292
-92929292929292928F8E8989847C766C61554F4F4F5557575C5D595757575759595D5F5F61676A6C
-7274747676797C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F8184858585858585858585858585858585878787878787878987878787878787878787878787
-87878585858585858585858585858585858585858585858585858585858585858585858585858585
-85858787878789898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92
-929292929292929292929292929292928F8E8E8E8C8C898989898989878787878787878989898C8E
-8E8E8E8E8E8E8F92929292929494949494949494949494949494999999999999999999999A9A9A9A
-999494949494949494949494929292929292928F8E8C898989898787878789899294949499999A9C
-9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C9A94949289877C7C7F858787898989898989898987
-8789898989878787878785847F7F7F7C7C7C7C7C76767676767676768187898E92929494999A9C9C
-9C9E9E9EA3A4A4A4A6A6A6A6A9A9ABAEAEAEAEAEAEAEAEAEAEB1B1B3B3B3B3B3B6B7B7B7B9B9B9B9
-BBBBBBB9B9B9B9B7B6B6B6B6B6B6B6B7B7B6B6B6B6B3B3B1B1B1B1AEAEAEAEAEABABABABA9A9A6A6
-A6A6A6A4A4A4A4A4A39E9E9E9E9E9C9C9A9A9A9A9A949494949494929292929292928F8E8E8E8E8E
-8E8C8989898989898989898987878585858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C797676
-76767674747474747472726E6C6C6C6C6A6A6A6A676767666161615F5F5F5D5957575555554F4F4F
-4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76
-767C7F7F8485878789898E8E8F9292929294949494999A9A5F9CA6B1B9C1C8D1DFE7E7ECECECE7E7
-E6E6E6E7E6E6E6E6E1D9CFC6C0BBB6AEA6A19C94927C617C7674747472716C665FAEABABA9A9A9A9
-A6A6A6A4A4A39E9E9E9C9C9C9C9C9A999494928E89877F747C85898E9294999CA1A6A9AEB1B6B7B7
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEAEAEABA9A6A49E
-9C9A948F89817C74726C6A665F5C554F4F5159616A6C74767C7F848789898E929292929292929292
-929292929292929292928E8987817C746A5C4F4F4F4F55575C5D5D595959595C5D5D5F5F5F61676A
-6C6E72747476797C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F81848485858585858585858585858585858585878787878787878787878787878785858587
-87858585858585858585858585858585858585858585858585858585858585858585858585858585
-85878787878989898989898989898989898989898989898C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8F
-929292929292929292929292929292928F8E8E8E8E8C89898989898987878787878789898989898C
-8E8E8E8E8E8E8F8F9292929294949494949494949494949494949494949494949496969999999999
-9694949494949494949494949292928F8F8F8F8E8C898989878787858789898F92949999999A9C9C
-9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C9C9A9994928C877F747C84878789898989898989898989
-89898E8C8C89898989878784817F7F7F7F7F7F7C7C7C7C7C7C7C7C7F87898E92929494999A9C9C9C
-9E9E9EA1A4A4A4A6A6A6A6A9A9A9ABAEAEAEAEAEAEAEAEAEAEB1B1B1B3B3B3B3B6B6B6B7B7B7B9B9
-B9BBB9B9B9B9B7B6B3B3B3B3B3B3B3B6B6B6B6B6B6B3B3B1B1B1B1AEAEAEAEAEABABABABA9A9A6A6
-A6A6A6A4A4A4A4A4A39E9E9E9E9E9C9C9A9A9A9A9A969494949494929292929292928F8E8E8E8E8E
-8E8C8989898989898989898987878585858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7676
-76767674747474747474726E6C6C6C6C6A6A6A6A67676767616161615F5F5F5C5757575555514F4F
-4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7476
-7C7F7F8185858789898C8E8E929292929294949494999A5F9AA4AEB9C1C8D1D9E4ECECEEEEECECE7
-E7E7E7E7E6E6E6E6E1D9CFC6C0BBB9B1ABA69E9A9492765E767674747272716A615CA9A9A9A6A6A6
-A6A6A4A4A39E9E9E9C9C9C9A9A9A999494928F8987817C798187898F92949A9CA4A6ABAEB1B6B7B6
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEA9A6A6A4
-9E9C969289877F7674716A67615F57554F4F545F616A7174797C7F8587898C8F9292929292929292
-92929292929292929492928E89877F797266554F4F4F5457595D5F5D5C5C5C5C5D5F5F5F5F5F6166
-6A6C6C71727476797C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F81818184848585858585858585858585858585858585878787878585858587878585858585
-85858585858585858585858585858585858585858585858585858585858585858585858585858585
-8587878789898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8F
-929292929292929292929292929292928F8E8E8E8E8E8C898989898989878787878989898989898C
-8E8E8E8E8E8E8E8F9292929294949494949494949494949494949494949494949494949494949494
-94949494949494949494949292928F8E8E8E8E8C898989878785878789898F9294999A9A9A9C9C9C
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A94928E8984727C818787878989898989898989898C
-8E8F8F8F8E8E8C89898787848484848484817F7F7F7F7F7F81817C87898E92929494999A9C9C9C9E
-9E9E9EA3A4A4A4A6A6A6A6A9A9ABABAEAEAEAEAEAEAEAEAEAEB1B1B1B3B3B3B3B6B6B6B6B6B6B7B9
-B9B9B9B9B7B6B6B3B1B1B1B1B1B3B3B3B3B3B3B6B6B3B1B1B1B1B1AEAEAEAEABABABABABA9A9A6A6
-A6A6A6A4A4A4A4A4A39E9E9E9E9E9C9C9C9A9A9A9A999494949494929292929292928F8F8E8E8E8E
-8E8E898989898989898989898787858585858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7976
-7676767474747474747472716C6C6C6C6C6A6A6A6A676767646161615F5F5F5D5957575555544F4F
-4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF767C
-7C7F7F8585878989898E8E8F929292929294949494999A94A1ABB4BEC8CED9E4ECF2F2F1EEECECEC
-E7E7E7E7E7E6E6E6E1D9CFC4C0BBB9B6AEA9A49C9A948E74597674747472726E676157A6A6A6A6A6
-A6A4A4A39E9E9E9E9C9C9A9A99949494928F8C87847F747F84898C9294999C9EA4A6ABAEB1B6B6B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEA9A9A6A4
-A39E9A948F87817C74726C6A66615F57514F4F555F676C72747C7F818789898E9292929292929292
-92929292929292929494928F8989877F766C5F514F4F4F55575C5F5F5F5D5D5D5F5F615F5F616161
-666A6A6C6E727474767C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F81818485858585858585858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858585858585858585858585858585858585858585
-858787878989898989898989898989898989898989898989898989898E8E8E8E8E8E8E8E8E8E8E8E
-8F8F92929292929292929292929292928F8F8E8E8E8E8C8989898989898989898989898989898C8E
-8E8E8E8E8E8E8F8F9292929294949494949494949494949494949494949494949494949494949494
-949494949494949494949292928F8F8E8C8989898989878785878789898E92949A9A9A9A9C9C9C9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C99928F898476797F858787898989898989898C8E8F92
-9292928F8F8E8C8989878787878787878784818184878787897281898C92929494999A9C9C9C9E9E
-9EA1A3A4A4A4A6A6A6A6A9A9A9ABABABAEAEAEAEAEAEAEAEAEB1B1B1B1B3B3B3B3B3B6B6B6B6B6B9
-B9B9B7B6B3B3B3B1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B1B1B1B1AEAEAEAEAEABABABABABA9A9A6A6
-A6A6A6A6A4A4A4A4A39E9E9E9E9E9C9C9C9A9A9A9A99949494949492929292929292928F8E8E8E8E
-8E8E898989898989898989898787878585858585858584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7976
-7676767474747474747472716C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5957575555554F4F
-4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76767C
-7F7F848587878989898E8F929292929294949494969A599CA6B4BCC4CED7E1ECF2F2F2F2F1EEECEC
-ECECECECE7E6E6E6DFD7CCC6C0BBB9B6B1AEA6A19C9A948C74747474747272726C6A615CA6A6A4A4
-A4A4A39E9E9E9E9E9C9C9A94949492928F8C89877F767C8187898F92949A9C9EA4A9AEAEB1B3B6B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEABA9A6A6
-A49E9C949289877F7674716C6A615F59554F4F515761676C72767C7F8187898C8F92929292929292
-9292929292929292949494928E8989847C746A574F4F4F54575C5F5F5F5F5F5F5F5F6161615F6161
-61666A6C6C71727474767C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F818185858585858585858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858585858585858585858585858585858585858585
-858587878789898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8F8F8F8F9292929292929292928F8F8E8E8E8E8E8E8C8C898989898989898989898989898E8E
-8E8E8E8E8E8E8F929292929292949494949494949494949494949494949494949494949494949494
-949494949494949494949292928F8E8C8989898989878787878789898E9294999A9C9C9C9C9C9C9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A949289877C797F858787898989898C8E8E8F92929292
-929292928F8E8E8989898787898989878787878789898E928F7F87898F929494999A9C9C9C9E9EA1
-A3A4A4A4A4A4A6A6A6A6A9A9ABABABABAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B3B3B3B3B3B6B6B6B6
-B9B6B6B3B3B3B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B1B1B1B1AEAEAEAEAEABABABABABABA9A6A6
-A6A6A6A6A4A4A4A4A49E9E9E9E9E9C9C9C9A9A9A9A99949494949494929292929292928F8E8E8E8E
-8E8E89898989898989898989898787858585858585858481817F7F7F7F7F7F7F7C7C7C7C7C7C7C76
-7676767674747474747472716C6C6C6C6C6A6A6A6A6A676767616161615F5F5F5C5757575555514F
-4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74767C7F
-7F818585878989898C8E92929292929494949494995C9AA4AEB7C4CCD4DFE6ECF2F2F2F2F2F2EEEC
-ECECECECE7E6E6E4DFD4CCC6C0BBB9B6B3B1ABA49E9C9992896C747474747272726C6A615FA4A4A4
-A39E9E9E9E9E9C9C9C9A96949292928F8C89878174797F87898E9294969A9EA3A6A9AEB1B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAEABA9A9A6
-A6A49E9A948F87817C74726C6A67615F57544F4F5559616A6E74767C7F8587898E8F929292929292
-9292929292929292929494928F8C89877F767161554F4F4F55595D5F5F5F5F5F5F5F616166616161
-6666666A6C6C72727474767B7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F8184858585858585858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858585858585858585858585858585858585858585
-85858787878989898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8F8F8F8F9292929292928F8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898C8E
-8E8E8E8E8E8F92929292929292949494949494949494949494949494949494949494949494949494
-9494949494949494949292928F8E8C8989898787878787858789898E9294949A9C9C9C9C9C9C9E9E
-9EA1A1A1A1A1A1A1A1A19E9E9E9E9C9C9C99928C877F797F848789898C8E8E8F9292929292929294
-94929292928F8E8E89898989898989898787898C8F9292927C87898F9294949A9A9C9C9E9E9EA3A4
-A4A4A4A4A4A4A6A6A6A6A9A9ABABABABAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B3B3B3B3B3B3B6
-B6B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B1B1B1B1AEAEAEAEABABABABABABABA9A6A6
-A6A6A6A6A4A4A4A4A4A19E9E9E9E9C9C9C9A9A9A9A9994949494949492929292929292928F8E8E8E
-8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C79
-7676767674747474747472726C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5D5957575555544F
-4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74767C7C7F
-7F848587898989898E8F9292929292949494949499949EA9B4BEC8D3DCE1E7ECF2F4F2F2F2F2F1EC
-ECECECECE7E6E6E1DCD4CCC6C1BBB9B6B3B1AEA9A49E9C94928961747474747272726C6A665FA39E
-9E9E9E9E9C9C9C9C9A999492928F8E8989877F7C767F85898C8F9294999C9EA4A6A9AEB1B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEA9A9A6
-A6A49E9C949289877F7674726C6A61615D57544F4F555D646A7274797F8187898C8E8F9292929292
-929292929292929292949494928E8989857C746A574F4F4F54575C5F5F5F5F5F5F5F616166676661
-666767676A6C717272747476797C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F8184848585858585858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858585858585858585858585858585858585858585
-858787878789898989898989898989898989898989898989898989898989898C8C8C8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8F8F8F8F92928F8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898C8E
-8E8E8E8E8E8F92929292929294949494949494949494949494949494949494949494949494949494
-94929292929292929292928F8F8E89898987878787858787898C8F929294999A9C9C9C9C9C9C9E9E
-A1A4A4A3A3A3A3A3A3A39E9E9E9C9C9C9A948F8981797F8587898E8F8F9292929292929294949494
-94929292928F8F8E8C8C8989898C8C8989898E8F9292926C84898E9294949A9A9C9C9E9EA1A3A4A4
-A4A6A6A6A6A6A6A6A6A6A9A9A9ABABABAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B3B3B3B3B3
-B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B3B1B1B1B1AEAEAEAEAEABABABABABABABA9A6A6
-A6A6A6A6A4A4A4A4A4A19E9E9E9E9E9C9C9A9A9A9A9994949494949494929292929292928F8E8E8E
-8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F7F7F7C7C7C7C7C7C7C79
-7676767676747474747472726C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5C57575755554F
-4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76797C7F7F
-818587878989898C8E9292929292949494949494929CA4AEBCC6CFD9DFE1E7EEF2F4F4F2F2F2F2EE
-EEECECECE7E6E6E1D9D4CCC6C1BBB9B7B3B1B1AEA6A49E9C948E7F57747474747474716C6A66619E
-9E9C9C9C9C9C9C9A999494928F8C8987857F7C767C8187898E8F92949A9EA4A6A9ABAEB1B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAEABA9A9
-A6A6A49E9A948F89817C74726C6A6761615C55514F4F575F666C72767C7F8487898E8E8F92929292
-929292929292929292929494928F8C89877F766C61554F4F51555C5D5F5F5F615F5F6161676A6A67
-67676A6A6A6A6C72727474767676797C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F81818184848585858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858585858585858585858585858585858587858585
-87878787898989898989898989898989898989898989898989898989898989898989898C8C8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898C
-8E8E8E8E8E8E8F929292929494949494949494949494949494949494949494949494949494949494
-92929292929292929292928F8E8C898987878785878787898C8F929294949A9C9C9C9C9E9E9E9EA1
-A4A4A4A4A4A4A4A4A4A39E9E9C9C9C9A94928984768187898C8F9292929294949494949494949494
-9494929292928F8F8E8C8C8C8E8E8E8C8E8E8F929294947F878C8F9294999A9C9C9E9EA3A4A4A4A4
-A6A6A6A6A6A6A6A6A6A6A9A9A9A9ABABABAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B3B3
-B1B1B1AEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEABABABABABABABA9A9A6
-A6A6A6A6A4A4A4A4A4A19E9E9E9E9E9C9C9A9A9A9A9994949494949494929292929292928F8F8E8E
-8E8E8C89898989898989898989878787858585858585858581817F7F7F7F7F7F7C7C7C7C7C7C7C7C
-7976767676747474747472726E6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5C575757555551
-4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76797C7F7F7F
-8485878989898C8E8F929292929494949494948E999EA9B6C4CFD4D9DFE4E9F1F4F4F4F2F4F4F2F2
-F1EEEEECECE6E6E1D9D4C8C6C1BBB9B7B6B3B1B1ABA6A49E9A928971747472747474726C6C6A6761
-579C9C9C9C9C9A999494928F8C8987847F7C767C7F87898C8E8E92969C9EA4A9A9AEB1B1B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEAEAEABA9
-A9A6A69E9C969289877F7674726C6A66615F5755514F51575F676C74767C7F8587898E8E8F929292
-92929292929292929292949292928E8989847C726A59514F4F55575D5F5F5F6161616164676A6A6A
-6A6A6A6A6A6A6C717272747476767676797C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F81818485858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858585858585858585858585858585858787878787
-878787898989898989898989898989898989898989898989898989898989898989898989898E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8E8E8E8E8E8E8E8C8C8C8C8C89898989898989
-8C8E8E8E8E8E8F8F9292929494949494949494949494949494949494949494929292949494949492
-929292929292928F8F8F8F8E8C898989878785878789898E8F92929494999A9C9C9E9E9E9E9EA1A4
-A4A4A4A4A4A4A4A4A49E9E9C9C9C9A99928C87768187898E92929494949494949694949494949494
-949492929292928F8F8E8E8E8E8E8E8E8F8F929294947C87898F9294999A9C9E9EA3A4A4A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9ABABAEAEAEAEAEAEAEAEAEB1B1B1B1B1AEB1B1B1B1B1B1B1
-B1B1AEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEABABABABABABABABA9A9A6
-A6A6A6A6A4A4A4A4A4A39E9E9E9E9E9C9C9A9A9A9A999494949494949492929292929292928F8E8E
-8E8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C7C7C
-7976767676747474747474726E6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5D595757555554
-4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74767C7C7F7F81
-8587898989898E8E8F92929294949494949494949CA6AEBCC6CFD4D9E1E6ECF2F4F4F4F4F4F4F4F2
-F2F1F1ECECE7E6DFD9D3C9C6C1BBB9B9B6B3B1B1AEABA6A49C948F875F727272747474726C6C6A6A
-615F9C9C9C9A999494928F8C8987847F7C74767C848789898C8F949A9CA4A6A9ABAEB1B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEAEAEAEAB
-A9A6A6A49E9A948F89817C74726C6A6764615F57554F4F555C616A7274797F818789898E8F8F9292
-92928F92929292929292929292928F8C89877F746C5F554F4F54555C5F5F5F5F61616164676A6A6A
-6A6A6A6A6A6A6C717272747476767676767C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F81817F7F7F818485858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858585858585858585858787878787878787878787
-878789898989898989898989898989898989898989898989898989898989898989898989898C8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292928F8F8F8F8F8F8F8F8E8E8E8E8E8C898989898989
-8C8E8E8E8E8E8F929292929494949494949494949494949494949494949494929292929292929292
-92928F8F8F8F8F8E8E8E8E8C898987878785878789898E9292929494999A9C9C9C9E9E9E9EA1A4A4
-A4A4A4A4A4A4A4A4A39E9C9C9C9A99948F897481878C8F929494949499999A9A9A99969494949494
-94949492929292928F8E8E8E8E8E8E8E92929294947984898C9294949A9C9E9EA4A4A4A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9ABABABAEAEAEAEAEAEAEAEB1B1B1AEAEAEAEB1B1B1B1B1
-B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1AEAEAEAEABABABABABABABA9A9A9A6
-A6A6A6A6A4A4A4A4A4A39E9E9E9E9E9C9C9A9A9A9A9A9694949494949494929292929292928F8E8E
-8E8E8E8C89898989898989898989878787858585858585858481817F7F7F7F7F7C7C7C7C7C7C7C7C
-7C7676767676747474747472716C6C6C6C6C6C6A6A6A6A67676766616161615F5F5F5C5757575555
-4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74767C7C7F7F7F84
-87878989898E8E8E929292929494949494948E9AA4ABB7C1CCD1D9DEE1E6ECF2F4F4F4F4F4F4F4F4
-F2F2F2ECECE7E4DFD9D1C9C6C1BBB9B9B7B3B1B1B1AEABA6A19C948976577272727474726E716C6C
-6C6661579A999494928F8C8987847F7F76767C7F878789898C92949C9EA4A9ABAEAEB1B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEAEAEAB
-A9A9A6A69E9C94928C877F7674726C6766615F5C57554F4F555D616A72767C7F848789898E8F8F8F
-928F8F9292929292929292929292928E89878179726759514F4F55575D5F5F5F6161616166676A6A
-6A6C6C6C6C6C6C71727272747476767679797C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F81818184818181818484858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858585858585858787878785878787878787878787898989
-89898989898989898989898989898989898989898989898989898989898989898989898989898E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F929292929292929292928F8E8E8E8E8E8C898989898989
-8C8E8E8E8E8F92929292929292929294949494949494949494949494949492929292929292929292
-928F8F8E8E8C8C8C8C8C89898987878785878787898E92929494949A9A9C9C9C9C9E9E9EA1A4A4A4
-A6A6A6A6A4A4A4A49E9E9C9C9A99949289817F878C92929499999A9A9A9A9A9A9A9A999494949494
-949492929292928F8E8E8E8E8E8E8E8F92929494948187898E9294999C9C9EA4A4A6A6A6A9A9A6A6
-A9A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9ABABABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1AEAEAEAEAEAEABABABABABABABA9A9A9A6
-A6A6A6A6A4A4A4A4A4A39E9E9E9E9E9C9C9A9A9A9A9A969494949494949492929292929292928F8E
-8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C7C
-7C7976767676747474747472716C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5D5757575555
-544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF72767C7C7F7F7F8185
-878989898C8E8E8F92929292949494949461949EA6B1BEC6CCD3D9DFE4E7ECF2F4F4F4F4F4F7F4F4
-F4F4F2ECECE7E1DCD4CFC9C6C1BBB9B9B7B6B1B1B1B1AEABA69E9A92876C7272727474747272726C
-716C6A6A615C94928F8C898784817F7976797F84878787898E949A9CA3A6ABAEAEB1B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEAE
-ABA9A9A6A49E9A948F89817C76746C6A6766615F5D57544F4F575F666C74767C7F8587898C8E8E8E
-8F8F8F8F929292928F9292929292928F8987847C746C61554F4F5455595F5F5F6161616166676A6A
-6C6C6C6C6C6C6C7272727474747676797C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-817F7F7F7F8181848485858484848485858585858585858585858585858585858585858585858585
-85858585858585858585858585858585858787878585878787878787878787898987878789898989
-89898989898989898989898989898989898989898989898989898989898989898989898989898C8C
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F9292929292929292929292928F8E8E8E8E8E8C898989898C
-8E8E8E8E8E8F9292929292929292929292929292929292929292929494929292928F8F8F8F8F928F
-8E8E8C89898989898989898787858585878787898C9292929494999A9C9C9C9C9E9E9EA3A4A4A4A6
-A6A6A6A6A6A4A4A39E9C9C9A96949289877F878C929294999A9A9A9C9C9C9C9C9A9A999694949494
-949492929292928F8E8E8E8E8E8E8E92929294947F87898C8F94949A9C9EA3A4A6A6A9A9A9A9A9A9
-A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9ABABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1AEAEAEAEAEAEAEABABABABABABABABA9A9A9A6
-A6A6A6A6A4A4A4A4A4A39E9E9E9E9E9C9C9C9A9A9A9A999494949494949494929292929292928F8E
-8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C7C
-7C7976767676747474747472726E6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5D5957575555
-554F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74797C7C7F7F7F8487
-878989898E8E8E8F9292929294949494998F9AA4AEB7C0C6CFD4D9E1E6E9ECF2F4F4F7F7F7F7F7F4
-F4F2F2ECECE7E1DCD4CFCCC6C1BBB9B9B9B6B3B1B1B1B1AEA9A49C948C7F61727272747472727272
-7274726C6A665F8F8C898784817F7976767C7F848487878992949C9EA4A9ABAEB1B1B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEAEAE
-AEABA9A6A49E9C96928C877F7C74726A6A6761615F5D57514F4F575F676E74767C81878789898C8C
-8E8E8E8E8F92928F8F9292929292928F8C89877F7672675C514F5155575D5F5F5F61616161676A6A
-6C6C6C6C6C6C6C7272747474747476797C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181
-81818181818184848585858585858585858585858585858585858585858585858585858785858585
-85878787878585858585858787878585878787878787878787898787878789898989898989898989
-89898989898989898989898989898989898989898989898989898989898989898989898989898989
-898C8E8E8E8E8E8E8E8E8E8E8E8F8F929292929292929292929292928F8E8E8E8E8E8E8C8C8C8C8E
-8E8E8E8E8F8F92929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E
-89898989898989898989878785858585878789898F92929494999A9C9C9C9C9C9E9EA1A4A4A4A6A6
-A6A6A6A6A4A4A49E9C9C9A9494928C877C87899294949A9C9C9C9C9C9C9C9C9C9A9A999994949494
-9492929292928F8E8E8E8E8E8E8E8F92929494798487898E9294999C9C9EA4A6A6A9A9A9A9A9ABAB
-A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9ABABABAEAEAEAEAEAEAEAEABABABABABAEAEAE
-AEABABABABABABABABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A9A9A9A6
-A6A6A6A6A4A4A4A4A3A19E9E9E9E9E9C9C9C9A9A9A9A999494949494949494929292929292928F8E
-8E8E8E8E8C89898989898989898989878787858585858585858581817F7F7F7F7F7C7C7C7C7C7C7C
-7C7C7976767676747474747472716C6C6C6C6C6C6A6A6A6A67676766616161615F5F5F5C57575755
-55514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74767C7C7F7F7F818587
-8989898E8E8E8F9292929294949494965F949EA6B1B9C1C8D1D9DCE1E6ECEEF2F4F4F7F7F7F7F7F4
-F4F2F2ECECE7E1DCD4CFC9C6C1BBBBB9B9B6B3B3B1B1B1B1AEA69E9A9287765C7172747474727474
-747474726C6C67615487847F7F797679767F7F7F7F85878C929A9CA1A6A9AEAEB1B1B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1AEAE
-AEABA9A9A6A49E9A948F89847C76746C6A6766615F5F5C57514F545C616A7174797F848787898989
-8C8C8E8E8F8F928F8F8F929292928F8F8E8987817C746C5F554F4F5555595F5F5F6161616166676A
-6A6C6C6E6E71727272747474747476767C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818184
-84858484818484858585858585878785858587878787878585858585858787858585878787878787
-87878787878787878585878787878787878787878787878789898989898989898989898989898989
-89898989898989898989898989898989898989898989898989898989898989898989898989898989
-89898C8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8F929292929292929292929292929292929292929292929292928F8E8C8C8C8C8C8989
-898989898787878787878785858585878789898E92929494949A9C9C9E9E9E9E9E9EA3A4A4A6A6A6
-A6A6A6A4A4A49E9E9C9A9492928C877984898F92949A9C9C9C9C9C9C9C9C9C9C9C9A999494949494
-9492929292928F8E8E8E8E8E8E8F9292929474818789898F92949A9C9EA3A4A6A6A9A9A9A9A9A9A9
-A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9ABABABAEAEAEAEAEAEAEABA9A9A9A9ABABAB
-ABABABABABABABABABABABABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A9A9A6A6
-A6A6A6A4A4A4A4A4A3A19E9E9E9E9E9C9C9C9A9A9A9A99949494949494949492929292929292928E
-8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C
-7C7C7976767676747474747472726C6C6C6C6C6C6C6A6A6A6A676767646161615F5F5F5D57575755
-55544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74767C7C7F7F7F81858587
-89898C8E8E8E929292929294949494618F9AA4AEB6BBC4CCD3D9DFE4E7ECF2F4F4F4F7F7F7F7F7F4
-F4F2F2ECECE6E1D9D4CFC9C6C1BBBBB9B9B7B6B3B3B1B1B1AEABA49C948E87715572727474747474
-7474747472726C6A64597F7F7C747C747C7C7C7C7F848992999C9EA4A6ABAEAEB1B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1AE
-AEAEABA9A6A4A19C99928C877F7C74726A6A676461615F5C55514F555D616A72747C7F8487878989
-8989898C8E8F8F8F8E8F8F9292928F8F8E8987847F76716657544F4F55575C5F5F6161616166676A
-6A6C6C71717272727474747476767676797C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818484
-85878785848487878787858587878787878787878787878787878585878787878787878787878787
-87878989878787878787878787878989898989898989878989898989898989898C8C8C8989898989
-8989898989898C8C8989898989898989898989898989898989898989898989898989898989898989
-8989898E8E8E8E8E8E8E8E8E8F929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8F92929292929292929292929292929292929292928F8F8F8E8C8989898989898987
-87878787878787878787858585858789898C8E9292929494969A9C9C9E9E9E9E9EA1A4A4A4A6A6A6
-A6A6A6A4A39E9E9C9A9994928E877F7F898F92949A9C9C9C9C9C9C9C9C9C9C9C9A9A999494949494
-92929292928F8E8E8E8E8E8E8E8F929292947F8789898C9294999A9E9EA4A6A6A6A9A9A9A9A9A9A9
-A9A9A6A6A6A6A6A6A6A6A4A6A6A6A6A6A6A6A6A9A9A9A9A9ABABABAEAEAEAEABABA9A9A9A9A9A9A9
-A9A9A9A9A9ABABABABABABABABABAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABA9A9A9A6A6
-A6A6A6A4A4A4A4A3A39E9E9E9E9E9C9C9C9C9A9A9A9A99949494949494949492929292929292928F
-8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C7C
-7C7C7B76767676767474747472726E6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5D59575755
-55554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74767C7C7C7F7F7F84858787
-898C8E8E8E8F92929292929494949489949EA9B1B9BEC6CFD4D9E1E6ECECF2F4F4F7F7F7F7F7F7F4
-F4F2F1ECECE6E1D9D4CFC9C6C1BBBBB9B9B9B6B6B3B3B1B1AEAEA9A39A9289856A54727272727474
-74747476747474716C67617C717B74747476767C81878F949C9EA3A4A9AEAEB1B1B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1
-AEAEAEA9A6A6A49E9A948F89857F79746C6A67666161615F59554F4F575F676C72767C8184878787
-898989898E8E8F8F8E8E8F92928F8F8F8E8C89857F7C746A5F554F4F5457575D5F5F61616161676A
-6A6C6C71727274747474767676767679797C7C7C7C7C7C7F7F7F7F7F7F81817F7F7F7F8181848485
-87878787878787878787878787878787878787878989898989878787878787878787878989898989
-89898989898989878989898989898989898989898989898989898C898989898C8E8E8E8E8C8C8C89
-8989898C8C8E8E8E8E8E8C8C89898989898989898989898989898989898989898989898989898989
-8989898C8E8E8E8E8E8E8E8F8F92929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8F8F929292929292929292929292929292929292928F8E8E8C89898989898989878787
-858481818184848484818484858789898E8F929292949494999A9C9C9E9E9E9E9EA3A4A4A4A6A6A6
-A6A6A6A49E9E9C9A9994928C877F7C878E92949A9C9C9E9E9E9C9E9E9C9C9C9C9A99949494949494
-92929292928F8E8E8E8E8E8E8F929292927C8589898C8F92949A9C9EA1A4A6A6A9A9ABA9A9A6A9A9
-A9A6A6A6A6A6A6A6A6A6A4A4A4A6A6A6A6A6A6A6A9A9A9A9A9ABABABABAEAEABA9A9A9A9A9A9A9A9
-A9A9A9A9A9ABABABABABABABABABABAEAEAEAEAEAEAEABAEAEAEAEABABABABABABABA9A9A9A9A6A6
-A6A6A6A4A4A4A4A3A19E9E9E9E9E9C9C9C9C9A9A9A9A99949494949494949492929292929292928F
-8E8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C
-7C7C7C7676767676747474747472716C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5C575757
-5555514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74767B7C7C7F7F7F8185858789
-898E8E8E8F9292929292949494945F8E9AA4AEB6B9C1C6CFD4DCE1E7ECEEF2F4F4F7F7F9F9F9F7F4
-F4F2F1ECECE6E1D9D4CFC9C6C1BBBBB9B9B9B7B6B6B3B3B1B1AEAEA69E9992897C64717272727474
-747474767674767474726C6A665D6C6A6A6C747C8789929A9EA1A4A6ABAEAEB1B1B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1
-AEAEAEABA9A6A4A19C99928C87817C74716A6767666161615F57554F4F575F676C72767F7F818587
-878989898C8E8E8E8E8E8E8F8F8F8F8E8E8C8987817F766C6157514F4F55575C5F5F616161616667
-6A6A6C717272747476767676767979797C7C7C7C7C7C7F7F7F7F7F81818184818181818184848587
-87878787878787878787878789898989898989898989898989898989898989898989898989898989
-8C8C898989898989898989898989898C8C8E8C8C8989898C8C8E8E8E8C8C8C8E8E8F8F8F8E8E8E8E
-8C8E8E8F8F8F8F8F8F8F8E8E8E8E8C8C8C8989898989898989898989898989898989898989898989
-8989898C8E8E8E8E8E8E8E8E8F92929292929292949494929292929292928F8F8E8E8E8E8E8E8E8E
-8E8E8E8E8E8F929292929292929292929292929292929292928F8E8C898989878787878787878481
-7F7F7F7F7F7F7F7F7F818184858789898E8F929292949494999A9C9C9C9E9E9E9EA3A4A4A6A6A6A6
-A6A6A4A39E9C9C9994928C877F79848992949A9C9C9E9E9E9E9E9C9C9C9C9C9A9A99949494949492
-9292928F8F8E8E8E8E8E8E8E8F929292748187898C8E9294969C9EA1A4A4A6A6A9A9A9A9A6A6A6A6
-A6A6A6A6A6A6A6A6A6A4A4A4A4A4A6A6A6A6A6A6A6A9A9A9A9A9A9ABABABABABA9A9A6A9A9A9A9A9
-A9A9A9A9A9ABABABABABABABABABABABAEAEAEAEAEABABABAEAEAEABA9ABABABABABA9A9A9A6A6A6
-A6A6A4A4A4A4A4A3A19E9E9E9E9E9C9C9C9C9A9A9A9A99949494949494949492929292929292928F
-8E8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C
-7C7C7C7976767676747474747472726C6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5D595757
-5555544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7276767C7C7F7F7F818585878989
-8C8E8E8E9292929292929494949489929EA9B1B7BBC4CCD3D9DFE4E7ECF1F2F4F4F7F7F9F9F9F7F4
-F4F2EEECE9E6DFD9D3CFC9C6C1BBBBBBB9B9B9B7B6B6B3B1B1AEAEA9A49C948F8776617172727274
-747474767976797C797674726C6C6A6C74747F87898E949C9EA4A6A9ABAEAEB1B1B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1
-B1AEAEAEA9A6A6A49E9C949289877F79726C6A6767616161615F57554F5459616A6C747C7F7F8184
-87878989898C8E8E8E8E8E8F8F8F8E8E8E8C8987847F79726A5D554F4F5157595D5F5F6161616667
-6A6A6C6C727274747676767979797C7C7C7C7C7F7F7F7F7F7F7F8181818485858585858585878787
-8787898987878787898989898989898989898C8C8989898C8C8E8C898989898989898C8C8989898C
-8E8E8E8C8989898C8C8C8E8E8C89898C8E8F8E8E8E8E8E8E8F8F8F8F8E8E8E8E8F9292928F8F8F8F
-8E8F8F9292929292928F8F8F8F8F8F8F8E8E8E8E8E8F8E8E8C898989898989898989898989898989
-89898C8E8E8E8E8E8E8E8E8E8F9292929292929294949492929292929292928F8E8E8E8E8E8E8E8E
-8E8E8E8E8F92929292929292929292928F8F8F8F8F8F8F8F8E8C8989898787878484848481817F7F
-7F7C7C7C7C7C7C7F7F7F8181878789898E92929294949499999A9C9C9C9E9E9EA1A4A4A4A6A6A6A6
-A6A6A49E9E9C9A949289877F7681899294999C9C9EA3A19E9E9C9C9C9C9C9C9A9A96949494949492
-92928F8E8E8E8E8E8E8E8E8F929292927F8789898E8F92949A9C9EA4A4A6A6A6A9A9A9A9A6A6A6A6
-A6A6A6A6A4A4A6A6A6A4A4A4A4A4A4A6A6A6A6A6A6A6A9A9A9A9A9A9A9ABABABA9A9A6A6A6A6A6A6
-A6A6A6A6A9A9ABABABABABABABABABABABAEAEAEAEABA9ABABAEABABA9A9ABABABABA9A9A9A6A6A6
-A6A6A4A4A4A4A3A19E9E9E9E9E9C9C9C9C9C9A9A9A9A99949494949494949492929292929292928F
-8E8E8E8E8E8E8E898989898989898989898787878585858585858584817F7F7F7F7F7F7C7C7C7C7C
-7C7C7C797676767676747474747272716C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F595757
-5755554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF76767C7C7F7F7F7F858587878989
-8E8E8E8F929292929294949494618E99A4AEB1B9BEC6CCD4D9DFE6E7ECF1F2F4F4F7F7F9F9F9F7F4
-F2F2EEECE7E4DFD9D3CFC8C6C1BEBBBBB9B9B9B9B7B6B3B1B1AEAEABA6A19A948C87746171727274
-7474747679797C7C7C797676747476747C7F87898E92999C9EA4A6A9ABAEB1B1B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1
-B1B1AEAEABA9A6A49E9C99948F89847F746C6A676766646461615F57554F555C616A71767C7C7F81
-8487898989898C8E8E8E8E8E8F8E8E8E8C8C898987817C746C6157514F4F55575C5F5F6161616167
-6A6A6C6C71727474767679797C7C7C7C7C7F7F7F7F7F7F7F7F818184848587878787878787878787
-8789898989898789898989898C8C8989898C8E8E8C8C898C8E8E8E8E8C8C8989898C8E8E8E8C8C8C
-8E8F8E8E8E8E8E8E8F8F8F8E8E8E8C8E8F8F8F8F8F8F8F92929292928F8F8F8F8F9292929292928F
-8F8F929292929292929292929292929292928F8F929292928F8F8E8C898C8C8E8E8C8C8989898989
-8C8C8E8E8E8E8E8E8E8E8E8E8F8F929292929292949494949292929292928F8E8E8E8E8E8E8E8E8E
-8E8E8E8F9292929292929292929292928F8E8E8E8E8E8E8C89898987878784817F7F7F7F7F7C7C79
-76767676797C7C7C7F7F7F818787898C8F929294949494999A9A9C9C9C9E9E9EA3A4A4A4A6A6A6A6
-A6A4A19E9C9A94948E877F747F878F94969C9C9EA1A39E9E9E9C9C9C9C9C9A9A9994949494949292
-928F8E8E8E8E8E8E8E8E8E8F9292927C8789898E8F9294999C9EA3A4A6A6A6A6A9A9A9A9A6A6A6A6
-A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6
-A6A6A6A6A9A9ABABABABABABABABABABABABAEAEABABA9A9ABABABABA9A9A9ABABA9A9A9A9A6A6A6
-A6A6A4A4A4A4A3A19E9E9E9E9E9C9C9C9C9C9A9A9A9A9A969494949494949492929292929292928F
-8E8E8E8E8E8E8E8C8989898989898989898987878785858585858584817F7F7F7F7F7F7F7C7C7C7C
-7C7C7C797676767676747474747472716C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5C5757
-575555514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74767C7C7C7F7F7F84858587898989
-8E8E8F9292929292949494949489929CA6AEB6B9C1C6CFD4DCE1E6ECECF2F4F4F4F7F9F9F9F9F7F4
-F2F2EEECE7E4DFD9D3CFC8C6C1BEBBBBB9B9B9B9B9B7B6B3B1B1AEAEA9A69E99928C877C6A717272
-74747476797C7C7C7C7C797C7C767C7F8187878C92949A9C9EA4A6A9ABAEB1B1B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1
-B1B1B1AEAEA9A6A4A39E9C94928C878179726C6A676766666666615D57544F555D646A72767C7C7F
-8185878989898C8E8E8E8E8E8E8E8E8C8C89898987817F7972675D554F4F5157595D5F6161616166
-676A6A6C717274747476797C7C7C7C7C7F7F7F818181818181818484858787878787898787878787
-89898989898989898989898C8E8E8E8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8E8E8F8E8E8E8E
-8F8F8F8F8F8F8F929292928F8F8F8E8E8F9292928F8F9292929292929292928F9292929292929292
-9292929292929292929292929292929292929292929292929292928F8F8E8F8F8F8F8E8C8C8E8E8E
-8F8F8E8E8E8E8E8E8E8E8E8E8E8F9292929292929494949292929292928F8E8E8E8E8E8E8F8F8F8F
-8F8F8F8F92929292929292929292928F8E8C8C8C8C8C89898987878784817F7F7C7C7C7976747474
-7472747476797C7F7F7F81858789898E929292949494999A9A9C9C9C9C9E9EA1A4A4A4A4A6A4A4A4
-A4A39E9C9A96948F897F767F878C92949A9C9E9E9E9E9E9E9C9C9C9A9A9A9A9A9994949494949292
-8F8E8E8E8E8E8C8C8E8E8F929292748489898C8F9292949A9C9EA4A4A6A6A6A6A9A9A9A6A6A6A6A6
-A6A6A6A4A4A4A4A4A4A4A4A3A4A4A4A4A4A4A6A6A6A6A6A6A6A9A9A6A6A6A9A9A6A6A6A6A6A6A6A6
-A6A6A6A6A9A9ABABABABABABABABABABA9ABABAEABABA9A9ABABABA9A9A9A9ABABA9A9A9A6A6A6A6
-A6A4A4A4A4A4A39E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A999494949494949494929292929292928F
-8E8E8E8E8E8E8E8C8989898989898989898987878785858585858584817F7F7F7F7F7F7F7C7C7C7C
-7C7C7C797676767676747474747472726E6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5D5957
-575555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF74767C7C7C7F7F7F818585878989898C
-8E8E8F929292929494949494878E94A1A9B1B7BEC1CCD1D9DEE1E7ECECF2F4F4F7F7F9F9F9F9F7F4
-F2F1ECECE7E1DFD9D3CFC8C6C1BEBBBBB9B9B9B9B9B9B6B3B1B1AEAEABA9A49C96928E89856A7172
-74747476797C7C7C7C7F7C7C7F7C7F858789898E92999C9EA1A4A6A9ABAEB1B1B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1
-B1B1B1AEAEABA9A6A49E9E9A949289877F746C6A67676767666666615D57514F575F676C74767C7C
-7F8487878989898C8E8E8E8E8E8E8C8C8989898989857F7C746A6157514F4F55575D5F5F61616166
-676A6A6C6C7272747476797C7C7C7C7F7F7F81848484848484848485878787878789898989878789
-898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F8F
-8F9292928F8F929292929292928F8F8F929292929292929292929292929292929292929292929292
-92929292929292929292929292929494949494929494949292929292929292929292928F8F8F9292
-928F8F8F8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292928F8E8E8E8F8F8F92929292
-92929292929292929292929292928F8E8E89898989898787878584817F7F7C7C797674747271716E
-6E727474767C7C7F7F81858789898E8F929294949494999A9A9C9C9C9E9E9EA3A4A4A4A4A4A4A4A3
-A19E9C9C9994928981767C87898F94999C9C9E9E9E9E9E9E9C9C9C9A9A9A9A999494949494929292
-8F8E8E8E8C8989898C8E929292927F87898C8E8F9294999C9EA3A4A4A6A6A6A6A9A9A9A6A6A6A6A6
-A6A6A4A4A4A4A4A4A4A4A4A3A3A3A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A9A9ABABABABABABABABABA9A9ABABABA9A9A9A9ABABA9A9A9A9A9ABA9A9A9A6A6A6A6
-A6A4A4A4A4A3A19E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A999494949494949494929292929292928F
-8E8E8E8E8E8E8E8E8C89898989898989898989878787858585858585817F7F7F7F7F7F7F7F7C7C7C
-7C7C7C79767676767676747474747472716C6C6C6C6C6C6A6A6A6A67676766616161615F5F5F5C57
-575755554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7476797C7C7F7F7F81858587878989898E
-8E8E9292929294949494949489929CA4ABB1B9BEC6CCD3D9DFE4E7ECEEF2F4F4F7F7F9F9F9F9F7F4
-F2F1ECECE7E1DED9D3CFC8C6C1C0BBBBB9B9B9B9B9B9B7B3B1B1AEAEAEA9A6A39C9A94928E896C72
-7274747676797C7C7C7F7F7F7F84858787898E92949A9C9EA3A4A6A9ABAEB1B1B1B3B3B3B3B3B3B3
-B3B3B1B3B3B3B3B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1
-B1B1B1B1AEAEA9A6A4A49E9C9A948E89817C746C6A67676767676766615D554F4F575F676E74767C
-7F818487878989898C8E8E8E8E8E8C8C898989898987817C766C665C554F4F51575C5F5F61616161
-676A6A6C6C7172747476767C7C7C7C7F7F8184858587878787878587878787878989898989898989
-8989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F9292928F8F
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929494949494949494949494949494949494949292929292929492929292929292
-929292928F8F8E8E8E8E8E8E8E8E8F929292929292929292929292928F8E8E8F8F92929292929292
-929292929292929292929292928F8F8E8C8989898787878584817F7F7C7C767474726C6A6A6A6C6E
-727476797C7C7F7F81858789898C8F929292949494999A9A9C9C9C9C9E9EA1A4A4A4A4A4A4A39E9E
-9E9C9C9A94928981767C84898F92949A9C9C9E9E9E9E9E9E9C9C9A9A9A9A9A99949494949292928F
-8E8E8E8C898989898E8F9292927C8789898E8E9292949A9C9EA4A4A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A3A3A4A4A4A4A3A19EA1A3A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4
-A4A4A6A6A6A6A9A9A9A9ABABABABABABA9A9A9ABABA9A9A9A9A9ABA9A9A9A9A9A9A9A9A6A6A6A6A6
-A6A4A4A4A4A3A19E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9994949494949494949292929292929292
-8E8E8E8E8E8E8E8E8C89898989898989898989878787858585858585817F7F7F7F7F7F7F7F7C7C7C
-7C7C7C7C767676767676747474747472726C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5C57
-57575555544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7476767C7C7F7F7F7F848587878989898C8E
-8E8F929292929494949494948E949EA6AEB6B9C1C6CFD4D9DFE6E7ECEEF2F4F4F7F7F9F9FAF9F7F4
-F2EEECECE7E1DCD9D3CFC8C6C1C0BBBBB9B9B9B9B9B9B7B6B3B1B1AEAEABA9A6A49E9A94928F876C
-7272747476797C7F7F7F817F84858787898C8F92949A9C9EA4A6A6A9AEAEB1B1B1B1B3B3B3B3B3B3
-B3B1B1B1B3B3B3B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1
-B1B1B1B1AEAEABA9A6A4A39E9C949289877F76716A67676767676767645F59554F515C616A727476
-7C7F818587898989898E8E8E8E8C8C89898989898987847F79726A5F554F4F4F55575C5F61616161
-66676A6A6C7172747476767C7C7C7F7F7F8485858587878787878787878787898989898989898989
-89898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929494949494949494949494949494949494949494949292949494949492929292
-9292929292928F8F8F8E8E8E8E8E8F8F8F8F9292929292929292928F8F8E8F929292929292929292
-949492929292929292929292928F8E8989898787878481817F7F7C7C7674726E6C6C727272727274
-7676797C7C7F7F81858789898C8E92929294949496999A9A9C9C9C9E9E9EA3A4A4A4A4A4A19E9E9E
-9C9C9A94928E84767C81898E9294999A9C9C9C9E9E9E9C9C9C9C9A9A9A9A9994949494929292928E
-8E8C89898989898C8F929292748489898E8E8F9294999C9EA1A4A4A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A3A19EA1A3A3A4A4A19E9E9EA19EA3A4A4A4A4A4A4A4A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A6A6A6A9A9A9A9ABABABABA9A9A9A9A9ABA9A9A9A9A9A9A9A9A6A9A9A9A9A9A6A6A6A6A6
-A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9994949494949494949292929292929292
-8F8E8E8E8E8E8E8E8E8989898989898989898987878785858585858584817F7F7F7F7F7F7F7C7C7C
-7C7C7C7C767676767676767474747472726E6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5D59
-57575555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7476767C7C7C7F7F7F84858587898989898E8E
-8E8F92929292949494949487929AA4A9AEB7BEC4CCCFD4DCE1E6ECECF1F2F4F4F7F7F9F9F9F9F7F4
-F2EEECECE6E1DCD4D3CFC8C6C1C0BBBBB9B9B9B9B9B9B9B6B3B1B1B1AEAEA9A6A6A49E9C9A948C85
-6A7272747476797C7F7F818485878789898E9294999A9C9EA4A6A6A9AEAEB1B1B1B1B1B1B3B3B3B3
-B3B1B1B1B3B3B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1
-B1B1B1B1B1AEAEA9A6A6A49E9C9A948F89857C746C6A67676767676A67615F57554F555D646A7274
-767C7F8187878989898C8E8E8E8C8989898989898989857F7C746A6459554F4F5457595F5F616161
-66676A6A6C6C72727476797C7C7F7F7F7F8185858585878789878787878789898989898989898989
-898C8C898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929494949492949494949494949494949494949494949494949494949494949494949494949494
-94929292929292928F8F8F8E8E8E8E8E8E8F8F8F8F8F8F8F8F8F8F8E8E8E8F929292949494949494
-9494949492929292929292928F8E8C8987878784817F7F7F7C797674726E7174767C7C7676767676
-797C7C7F7F7F8184878789898E92929294949494999A9A9A9C9C9C9C9E9EA1A1A1A3A39E9E9E9C9C
-9A9A94928E8776797F878C929496999A9C9C9C9E9C9C9C9C9C9A9A9A9A9A949494929292928F8F8E
-8C8989898989898E8F928F8F7F89898C8E8E8F92949A9C9EA4A4A4A6A6A6A6A6A6A6A6A6A6A4A4A4
-A3A19E9E9E9E9EA1A3A3A19E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A6A6A9A9A9A9A9A9ABABA9A9A9A9A9A9A9A9A6A9A9A9A9A9A6A6A9A9A9A9A6A6A6A6A6
-A4A4A4A4A4A19E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9994949494949494949292929292929292
-8F8E8E8E8E8E8E8E8E8C89898989898989898989878785858585858584817F7F7F7F7F7F7F7F7C7C
-7C7C7C7C79767676767676747474747472716C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5C
-5757575555514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7476797C7C7C7F7F7F81858587898989898C8E8E
-8E9292929294949494949489949CA4A9B1B9BEC6CCD1D9DCE1E7ECECF2F2F4F4F7F7F9F9F9F9F4F4
-F2EEECECE6E1D9D4D1CFC8C6C1C0BBBBBBBBB9B9B9B9B9B6B3B1B1B1B1AEABA9A9A9A6A49C9A9289
-816172727476797C7F7F8184878787898C8E9294999C9C9EA4A6A6A9AEAEB1B1B1B1B1B1B3B3B3B3
-B3B1B1B1B1B3B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B1B1B1B1B1AEAEABA9A6A6A49E9C99928E87817C726A67676767676A6A67615F57544F575F676C72
-74797C7F8487878989898C8E8E8E8989898989898987877F7C766C675F554F4F4F55575C5F616161
-61676A6A6C6C71727476797C7C7F7F7F7F8184858585878789898787878989898989898989898989
-898C8E8C8C898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F92929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949494
-94949492929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929294949494949494
-94949494929292929292928F8E8E8987878481817F7F7C7C7974727172767C7F817F7F7F7C7C7C7C
-797C7F7F7F8181858789898E8F92929294949499999A9A9A9C9C9C9C9C9E9E9E9E9E9E9E9C9C9A9A
-9994928C8779767F8789929494999A9A9C9C9C9C9C9C9C9C9C9A9A9A9A949492929292928F8E8C89
-8989898989898C8E8E8F8E7C87898C8E8E8E9292949A9C9EA4A4A6A6A6A6A6A6A6A6A6A6A4A4A4A3
-A19E9E9E9E9E9E9E9EA19E9E9E9E9E9E9E9EA3A3A3A1A1A3A4A3A3A3A1A1A3A3A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A6A6A6A9A9A9A9A9A9A9A9A6A9A9A9A9A9A6A6A9A9A9A9A6A6A9A9A9A6A6A6A6A6A4
-A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9994949494949494949292929292929292
-8F8E8E8E8E8E8E8E8E8C89898989898989898989878787858585858584817F7F7F7F7F7F7F7F7C7C
-7C7C7C7C79767676767676747474747472726C6C6C6C6C6C6C6A6A6A6A676767646161615F5F5F5D
-5757575555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7476797C7C7C7F7F7F81858587878989898C8E8E8E
-8F9292929294949494947F8F9A9EA6AEB1B9C1C6CFD3D9DFE4E7ECECF2F4F4F4F7F9F9FAF9F7F4F4
-F2ECECECE6DFD9D4D1CFC8C6C1C1BBBBBBBBBBB9B9B9B9B6B3B3B1B1B1AEAEABA9A9A9A6A49C9992
-877F57727274767C7F7F8184878787898E8F9294999C9C9EA4A6A6A9ACAEB1B1B1B1B1B1B1B3B3B3
-B3B1B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B1B1B1B1AEAEABA9A9A6A4A19E9C949289877F766C6A676767676A6A67665F5D554F4F575F676C
-72767C7F8185878989898C8E8E8E898989898989878787817C76726A6159554F4F5155575F616161
-6166676A6C6C71727476797C7C7F7F7F7F8184858585878787898989898989898989898989898989
-8C8E8E8E8E8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F9292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92949494949494949494949494949494949494949494949494949494949494949494949494949494
-9494949292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F9292929494949494949494
-949494929292929292928F8E8C8989878481817F7F7C7C76747272747C7F8587878784817F7F7F7C
-7C7C7F7F7F8184858789898E8F929294949494999A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9A9A9994
-94928E8779767F85898F9294999A9A9A9A9C9C9C9C9C9C9A9A9A9A9A9494929292928F8F8E898987
-878789898989898C8E8E768489898E8E8E8F9294999C9EA1A4A4A6A6A6A6A6A4A4A4A4A4A4A4A4A1
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A1A1A1A1A1A1
-A1A3A3A3A4A4A6A6A6A6A9A9A9A9A9A9A9A6A6A9A9A9A6A6A6A6A9A9A6A6A6A6A9A9A6A6A6A6A6A4
-A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9994949494949494949292929292929292
-8F8E8E8E8E8E8E8E8E8E89898989898989898989878787858585858584817F7F7F7F7F7F7F7F7F7C
-7C7C7C7C7976767676767674747474747472716C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F
-5957575555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7474767C7C7C7F7F7F7F84858787898989898E8E8E8F
-9292929292949494949487929C9EA6AEB6BBC1C8CFD4D9DFE6ECECEEF2F4F4F7F7F9F9FAF9F7F4F4
-F1ECECE7E4DFD9D4D1CFC8C6C1C1BEBBBBBBBBBBB9B9B9B7B3B3B3B1B1B1AEAEABABABABA6A49C94
-8E857171727476797C7F8184878789898E929294999C9EA1A4A6A6A9ABAEAEB1B1B1B1B1B1B1B3B3
-B1B1B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1B1AEAEABA9A9A6A49E9C9A948F89847C746C6A676767676A6A67615F59554F4F59616A
-6E74767C7F8187878989898E8E8E8C8989898987878787847F79746C675F574F4F4F55575C5F6161
-6166676A6A6C6E727274797C7F7F7F7F7F818185858585878789898989898989898989898989898C
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-949494929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8F9292929292929494949494949494
-9494949292928F8F8F8E8C898987878581817F7C7C7974747474797F81878989898987878584817F
-7F7C7C7F7F8181848789898E8F929494949494999A9A9A9A9A9C9C9C9C9C9C9C9C9C9A9A99949492
-9289877C767F85878C9294999A9A9A9A9A9A9A9A9A9A9A9A9A999996949292928F8F8E8C89878787
-878787898989898C8E8E7F89898E8E8E8E8F92949A9C9EA4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9E9E9E9E9E9E9E9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E
-9E9E9EA1A1A4A4A6A6A6A6A6A9A9A9A9A6A6A6A9A9A9A6A6A6A6A9A9A6A6A6A6A6A9A6A6A6A6A6A4
-A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A96949494949494949292929292929292
-8F8E8E8E8E8E8E8E8E8E89898989898989898989898787858585858584817F7F7F7F7F7F7F7F7F7C
-7C7C7C7C7976767676767674747474747472726C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F
-5C5757575555514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7474767C7C7F7F7F7F7F81858587898989898E8E8E8E92
-9292929294949494949489949CA4A9B1B7BEC1C9CFD4D9E1E6ECECF1F2F4F4F7F7F9F9FAF9F7F4F2
-F1ECECE7E4DFD9D4D1CFC8C6C1C1BEBBBBBBBBBBB9B9B9B7B6B3B3B3B1B1AEAEAEAEAEAEABA6A49C
-92897F61717274767C7F8184878789898F929294999C9EA3A4A4A6A6ABAEAEAEB1B1B1B1B1B1B1B3
-B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1B1AEAEABABA9A6A4A39E9C99928C878179726A6A676767676A6766615F57554F545C66
-6A7274797F7F84878789898E8E8E8C8989898787878787847F7C746E6A6159544F4F5155575F6161
-6161676A6A6C6C727274767C7C7F7F7F7F7F81848585858787898989898989898989898989898C8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929294
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-949494929292929292929292928F8E8E8E8E8E8E8E8E8E8E8F929292929292949494949494949494
-94949292928F8F8E8C89898987878481817F7C7B76767676767C7F848789898E8E8C898987878784
-817F7F7F7F7F81848787898E92929494949494999A9A9A9A9A9A9A9A9A9A9A9A9A99969494928F8C
-87847C767F8587899294949A9A9A9A999999999A9A9A9A99999694949292928F8E8E898987858787
-878789898989898E8E7C87898C8E8E8E8E9294949A9C9EA4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A19E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E
-9E9E9E9E9EA3A4A6A6A6A6A6A6A9A9A9A6A6A6A6A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A49E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A99949494949494949492929292929292
-8F8E8E8E8E8E8E8E8E8E8C898989898989898989898787858585858584817F7F7F7F7F7F7F7F7F7C
-7C7C7C7C7C79767676767674747474747472726E6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F
-5D5957575555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7274767C7C7C7F7F7F7F81858587898989898C8E8E8E8F92
-9292929294949494947F929A9EA4ABB1B9BEC6CCD1D9DCE1E7ECECF2F2F4F4F7F7F9F9FAF9F7F4F2
-F1ECECE7E4DFD9D4D1CFC8C6C1C1BEBBBBBBBBBBB9B9B9B7B6B6B3B3B3B1B1AEAEAEAEAEAEABA69E
-998F877457727476797C7F818587898C8F929294999C9CA1A4A4A6A6A9AEAEAEAEB1B1B1B1B1B1B1
-B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B1B1B1AEAEAEABABA9A6A49E9C9A949289877F76716A676767676A6A67615F5D57514F555F
-676C72767C7F81858789898C8E8E8C8989878787878787847F7C76726C675F574F4F4F55575C5F61
-616166676A6C6C717274767C7C7F7F7F7F7F818485858587878789898989898989898989898C8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929294
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-949492929292929292929292928F8F8F8F8E8E8E8E8E8E8F92929292949494949494949494949494
-94949292928F8E89898987878481817F7F7F7C7979797C7C7F848787898C8E8F92928E8989898787
-85848181817F8184858789898F92949494949499999A9A9A9A9A9A9A99949494949292928E898784
-7F76767F8487878E92949A9A9A999994949496999A99999494949492928F8E8E8C89878785858587
-8789898989898C8E7987898C8E8E8E8E8F9294999C9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9C9C9C9C9C9C9C9C9A9A9A9A9A9C9C9C9E9E9E9E9E9E
-9E9E9E9E9E9EA4A4A6A6A6A6A6A6A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A49E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A99949494949494949492929292929292
-8F8E8E8E8E8E8E8E8E8E8C89898989898989898989878785858585858584817F7F7F7F7F7F7F7F7F
-7C7C7C7C7C7976767676767474747474747472716C6C6C6C6C6C6A6A6A6A67676766616161615F5F
-5F5C57575755554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7476767C7C7C7F7F7F7F81858587878989898C8E8E8E8F9292
-92929292949494949485949C9EA6AEB3B9C0C6CCD3D9DFE4E7ECEEF2F2F4F4F7F7F9F9FAF9F7F4F2
-EEECECE6E1DFD9D4D1CCC8C6C4C1C0BBBBBBBBBBB9B9B9B7B6B6B6B3B3B3B1B1AEAEAEAEAEAEABA6
-9C94897F664F7274767C7F818487898C8F929294999A9C9EA4A4A6A6A9AEAEAEAEAEB1B1B1B1B1B1
-B1B1B1B1B1B1B1B1B1AEB1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B1B1B1AEAEAEABABA9A6A49E9C99948F89817C746C6A67676767676766615F5C574F4F55
-616A6C74767C7F818787898C8E8E8E898987878787878784817C76746C6A6159544F4F4F55575F61
-616166676A6A6C6E727274797C7F7F7F7F7F81818585858587878989898989898989898989898E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F92929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94929292929292929292929292929292928F8F8F8F8F8F8F92929294949494949494949494949494
-949292928F8E8C89878785817F7F7F7F7F7C7C7C7C7C7F81878989898C8E8F9292928F8F8C898987
-87878584817F7F81848787898C92929494949494999A9A9A9A99999994929292928E8C8987817F79
-72797F848787899294999999999694949494949999949494949292928F8E8C898987858585858587
-8789898989898E8E8189898E8E8E8E8E9294969A9C9EA4A4A4A4A4A4A4A3A3A3A3A3A3A3A3A39E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9C9C9C9C9C9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E
-9E9E9E9E9E9EA1A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A19E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A99949494949494949492929292929292
-928E8E8E8E8E8E8E8E8E8C89898989898989898989878785858585858584817F7F7F7F7F7F7F7F7F
-7C7C7C7C7C7B76767676767674747474747472726C6C6C6C6C6C6C6A6A6A6A676767616161615F5F
-5F5C5757575555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFF7476767C7C7C7F7F7F7F7F84858787898989898E8E8E8F929292
-92929294949494949489999C9EA6AEB6B9C1C6CFD4D9DFE4ECECEEF2F4F4F4F7F9F9FAFAF9F7F4F2
-EEECECE6E1DCD9D4D1CCC8C6C4C1C0BBBBBBBBBBBBB9B9B7B6B6B6B6B3B3B3B1B1B1B1AEAEAEAEA9
-A39A8F87765F717474797C7F848789898F929294999A9C9EA4A4A6A6A9ABAEAEAEAEAEB1B1B1B1B1
-B1B1B1B1B1B1B1B1B1AEAEB1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1AEAEAEAEABA9A6A4A19C9A94928C877F79746C6A676767676766615F5F5955514F
-57666A7274797C818487898C8E8E8E898987878787878784817F7974726A665F574F4F4F54575C5F
-616164676A6A6C6C727274767C7C7F7F7F7F7F818485858587878989898989898989898989898C8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F9292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94929292929292929292929292929292929292929292929292929494949494949494949494949494
-9292928F8E8E8987878484817F7F7F7F7F7C7C7C7F8187878989898C8E8F9292928F8F8E8C898989
-87878784817F7F8181848787898E929294949494999A9A9A9999949492928E8C898987817F7C7472
-797F818789898F949496999994949494949494949494949292928F8E8C8989898785858585858787
-89898989898C8E7F89898E8E8E8E8E8F92949A9C9C9EA4A4A4A3A3A3A1A19E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9C9C9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E
-9E9E9E9E9E9E9EA3A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A19E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A99949494949494949492929292929292
-928F8E8E8E8E8E8E8E8E8C8989898989898989898987878585858585858481817F7F7F7F7F7F7F7F
-7F7C7C7C7C7C7976767676767474747474747272716C6C6C6C6C6C6A6A6A6A676767666161615F5F
-5F5D5957575555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF7476767C7C7C7F7F7F7F7F84858587898989898E8E8E8F92929292
-92929294949494947C929A9CA3A9B1B7BBC1C6CFD4D9E1E6ECECEEF2F4F4F7F7F9F9FAF9F9F7F4F2
-EEECE9E6E1DCD9D4D1CCC8C6C4C1C0BEBBBBBBBBBBB9B9B9B7B6B6B6B6B3B3B3B1B1B1B1AEAEAEAB
-A69C94897F6C57727476797F818787898E929294999A9C9EA4A4A6A6A9A9AEAEAEAEAEAEB1B1B1B1
-B1B1B1AEB1B1B1B1B1AEAEB1B1B1B1B1B1B1B3B3B3B3B3B3B3B1B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1AEAEAEAEABA9A6A49E9C9A949289857F76726C6A676766666661615F5F575551
-4F5C676C7274797F818789898E8E8C898989878787878784817F7C74726C676159544F4F4F55575F
-5F616166676A6C6C717274767C7C7F7F7F7F7F818485858587878789898989898989898989898C8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949292929292929292929292929292929292929292929292949494949494949494949494949494
-9292928F8C8989878585848481817F7F7F7F7F818587878989898C8E8F8F9292928F8E8E8C898989
-89878781817F7F7F7F7F818789898E929292929294949999949494928F8C898787847F7C76727279
-7F818789898E9294949494949494949494949494949492928F8E8C89898989878585848485878789
-898989898C8E7C87898C8E8E8E8E8E9294999A9C9EA1A4A4A19EA19E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E
-9E9E9E9E9E9E9EA1A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A39E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A99949494949494949492929292929292
-928F8E8E8E8E8E8E8E8E8E8989898989898989898987878585858585858584817F7F7F7F7F7F7F7F
-7F7C7C7C7C7C7976767676767474747474747472716C6C6C6C6C6C6A6A6A6A6A676767616161615F
-5F5F5C5757575555514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF6C7476767C7C7C7F7F7F7F7F81858587898989898E8E8E8E9292929292
-929292949494949484949A9EA4A9B1B7BEC1C8CFD4DCE1E6ECECF1F2F4F4F7F7F9F9FAF9F9F7F4F2
-EEECE7E4E1DCD9D4D1CCC8C6C6C1C0BEBBBBBBBBBBB9B9B9B7B7B6B6B6B6B3B3B3B1B1B1B1AEAEAB
-A6A49A8F877C6A547274767C7F8587898C8F9294949A9C9EA3A4A6A6A6A9ABAEAEAEAEAEB1B1B1B1
-B1B1AEAEB1B1B1B1AEAEAEAEB1B1B1B1B1B1B1B3B3B3B3B3B3B1B1B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1AEAEAEAEABA9A6A6A39E9C99948F89847C76726A6A676764646461615F5D5755
-514F5F666A72747C7F8487898E8E8C8C8989878787878584817F7C76746C6A615D574F4F4F51575C
-5F616166676A6A6C6E727274797C7F7F7F7F7F81818585858587878989898989898989898989898E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929494
-94949494949494949494949494949494949494949294949494949494949494949494949494949494
-94949492929292929292929292929292929494929292929494949494949494949494949494949492
-928F8E8989878785858585848481817F818485878789898C8E8E8E8E8F8F92928F8F8E8C89898989
-878785817F7F7F7F7F7F7F818787898C8F8F92929294949492928F8C89878784817C767471747C7F
-81878989899292949494949494949292929494949492928E8C898989898787878581818185878789
-898989898E6A8489898E8E8E8E8E8F92949A9C9C9EA4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9C9C9C9C9E9E9EA3
-A1A19E9E9E9E9E9EA3A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A4A4A6A6A6A6A4A4A6A6A6A6A4A4A4A4
-A4A4A4A4A4A4A39E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A99949494949494949492929292929292
-928F8E8E8E8E8E8E8E8E8E8989898989898989898987878785858585858584817F7F7F7F7F7F7F7F
-7F7C7C7C7C7C7C79767676767474747474747472726E6C6C6C6C6C6A6A6A6A6A676767646161615F
-5F5F5D5757575555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFF6C7476767C7C7C7F7F7F7F7F81858587878989898C8E8E8E8F9292929292
-929294949494949489949C9EA6ABB1B9BEC4C9D1D9DEE1E6ECECF1F2F4F4F7F7F9F9FAF9F9F7F4F2
-ECECE7E4DFD9D9D4CFCCC8C6C6C1C1C0BEBBBBBBBBB9B9B9B9B9B7B6B6B6B6B3B3B3B1B1B1B1AEAE
-A9A69E948C857C67717474797C7F8787898E9292949A9C9EA3A4A4A6A6A9ABAEAEAEAEAEAEB1B1AE
-AEAEAEAEAEB1B1B1AEAEAEAEAEB1B1B1B1B1B1B1B3B3B3B3B3B1B1B1B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1AEAEAEAEAEA9A9A6A49E9C9A94928E87817C74716A6A676661616161615F5C57
-55544F5F666C72767F8187898E8C8C898989878787858584817F7C7674726A675F59544F4F4F5557
-5F5F6164676A6A6C6C727274767C7C7F7F7F7F7F818485858587878989898989898989898989898C
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-94949494949494949494929294949494949494929292929294949494949494949494929494949494
-9494949494949292929292929292929292949494949494949494949494949494949494949492928F
-8E8C89898787878585858585848481848587878789898C8E8E8E8E8E8E8F8F8F8F8E8C8989898987
-8784817F7F7F7C7C7C7C7C7F7F8187898C8E8E8F8F929292928E898787847F7F79747272767C7F81
-878789898E92929494949494929292929292929292928F8E8989898787878784817F818487878989
-8989898C8E7F89898E8E8E8E8E8E9294999A9C9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9A9A9A9C9C9C9C9C9C9C9C9E9EA1A3
-A4A3A3A19E9E9E9EA1A4A4A4A4A6A6A6A6A6A4A4A6A6A6A6A4A4A6A6A6A6A4A4A6A6A6A6A4A4A4A4
-A4A4A4A4A4A4A39E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9999949494949494949492929292929292
-928F8E8E8E8E8E8E8E8E8E898989898989898989898987878585858585858584817F7F7F7F7F7F7F
-7F7F7C7C7C7C7C7976767676747474747474747472716C6C6C6C6C6A6A6A6A6A676767666161615F
-5F5F5D5957575555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF6A67676767676766616161616161615F5F5F5DFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFF6A72747676797C7C7F7F7F7F7F8185858787898989898E8E8E8F929292929292
-929294949494947C92999C9EA6AEB3B9BEC6CCD3D9DFE1E7ECECF2F2F4F4F7F7F9F9FAF9F9F7F4F2
-ECECE7E1DFD9D4D3CFCCC8C6C6C1C1C0BEBEBBBBBBB9B9B9B9B9B9B7B7B6B6B6B3B3B3B1B1B1AEAE
-A9A6A49C92898179617274767C7F8487898C929294999C9EA1A4A4A4A6A6A9ABAEABABAEAEAEAEAE
-AEAEAEAEAEAEB1B1AEAEAEAEAEB1B1B1B1B1B1B1B3B3B3B3B3B1B1B1B1B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1B1AEAEAEAEABA9A6A6A49E9C9A94928C877F7C74716A676761616161615F5F5C
-5755544F5F666E747C7F8487898C89898989878785858484817F7C7974726C6A615F57514F4F5157
-5D5F6161676A6A6C6C727274767C7C7F7F7F7F7F818485858587878789898989898989898989898C
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929294949494949492929292929294949492929292929292929294949494949492929292949494
-94949494949494949492929292929292949494949494949494949494949494949494929292928F8E
-8989898787878785858587878785858787878789898C8E8E8E8E8E8E8E8E8E8E8E8C898989898787
-84817F7F7C7C7C79767676797C7C7F84878789898C8E8E8E8C8987817F7C7974747474797C7F8187
-8789898C8F929294949492929292928F8F8F9292928F8E8C898987878784817F7F81848787898989
-89898C8E7F87898C8E8E8E8E8E8F92949A9C9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E
-9EA1A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9C9C9C9C9C9C9C9E9E9EA3A4
-A4A4A4A3A19E9E9E9EA3A4A4A4A4A6A6A6A6A4A4A4A6A6A6A4A4A4A6A6A4A4A4A4A6A6A6A4A4A4A4
-A3A4A4A4A4A4A39E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9999949494949494949492929292929292
-928F8E8E8E8E8E8E8E8E8E8C8989898989898989898987878585858585858584817F7F7F7F7F7F7F
-7F7F7C7C7C7C7C7B76767676767474747474747472726C6C6C6C6C6A6A6A6A6A6A67676761616161
-5F5F5F5C5757575555514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF6A6A6A6A6A6A676767676767676766616161616161615F5F5F5F57FFFFFFFFFFFF
-FFFFFFFFFFFFFF6C72747676797C7C7C7F7F7F7F7F8485858789898989898E8E8E92929292929292
-9292949494949484929A9CA3A6AEB3B9C1C6CCD3D9DFE1E7ECEEF2F2F4F4F7F7F9F9FAF9F9F7F4F2
-ECECE6E1DFD9D4D3CFCCC9C6C6C1C1C0BEBEBBBBBBB9B9B9B9B9B9B9B7B7B6B6B3B3B3B3B1B1B1AE
-ABA6A4A39A92897F765F7274767C7F8587898F9294949A9C9EA4A4A4A4A6A9ABABABABABAEAEAEAE
-AEAEAEAEAEAEAEB1AEAEAEAEAEAEB1B1B1B1B1B1B1B3B3B3B1B1B1B1B1B1B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1B1AEAEAEAEABA9A6A6A4A39E9C99949289877F79746C6A676661616161615F5F
-59575555515F6A71767F8187898C898989898787878484847F7F7C7C74726E6A675F5955514F4F55
-575F616166676A6C6C72727476797C7F7F7F7F7F8181858585858787898989898989898989898989
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F9292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929294949292929292929292929292929292929292929292929494949292929292929294
-949494949494949494949494949492949494949494949494949494949494949292929292928F8E8C
-8989898987878787878787878787878787898989898E8E8E8E8E8E8E8E8E8E8E8C89898989878787
-84817F7C7C7976767474747476767C7C7F8184878787878787817F7C7674747474797C7F81858787
-8789898E8F92929294929292928F8F8E8E8E8F8F8F8E8C898787878581817F7F7F84878787898989
-89898E7C87898C8E8E8E8E8E8F9294999C9C9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E
-9EA1A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9A9A9C9C9C9C9C9C9C9C9E9E9EA3A4
-A4A4A4A4A39E9E9E9EA3A4A4A4A4A4A6A6A4A4A4A4A4A6A4A4A4A4A4A6A4A4A4A4A4A6A4A4A4A4A3
-A3A4A4A4A4A4A39E9E9E9E9E9E9C9C9C9C9C9A9A9A9A999996949494949494949494929292929292
-928F8E8E8E8E8E8E8E8E8E8C898989898989898989898787858585858585858481817F7F7F7F7F7F
-7F7F7F7C7C7C7C7C79767676767474747474747472726E6C6C6C6C6C6A6A6A6A6A67676766616161
-5F5F5F5D5957575555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFF6C6C6C6A6A6A6A6A6A6A6A6A6A676767676767676766616161616161615F5F5F5F5F57FFFF
-FFFFFFFFFF6C6C74747676797C7C7C7F7F7F7F7F8485858789898989898C8E8E8F92929292929292
-9294949494949489949A9EA4A9AEB6B9C1C6CFD4D9DFE4E7ECEEF2F4F4F4F7F9F9FAFAF9F9F7F4F2
-ECECE6E1DFD9D4D3CFCCC9C6C6C1C1C1C0C0BEBBBBB9B9B9B9B9B9B9B9B7B7B6B6B3B3B3B3B1B1AE
-ABA6A6A49E9A92877F74577274767C8187898C9294949A9C9EA4A4A4A4A6A6ABA9A9A9ABAEABAEAE
-AEAEAEABABAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B3B3B1B1B1B1B1B1B1B3B3B3B3B3B3B3B3B1
-B3B3B3B3B1B1B1B1AEAEAEAEAEAEABA9A6A6A4A19C9A96928F89857F76726A67666161616161615F
-5D5757555554616C72797F848789898989898987878484817F7F7C7C7674726C6A615F57544F4F4F
-575D5F6166676A6A6E72747476797C7C7F7F7F7F7F81848585858787898989898989898989898989
-8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9494949494949494949494949494949494949494949494949494949494949292929292928F8E8E8E
-8C8989898987878787898787878787898989898C8E8E8E8F8F8F8F8F8F8F8F8F8E8C898989878787
-84817F7C7C7676747472727272747474767C7C7F7F7F7F7F7C7C7674747474797C7F818587878789
-89898C8F929292929292928F8F8E8E8E8E8E8E8E8E8C8987878584817F7F7F7F8185878789898989
-898C6A8189898E8E8E8E8E8E9292949A9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9C9C9C9C9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9C9C9C9C9C9C9C9E9E9EA1A4A4
-A4A4A4A4A39E9E9E9E9EA3A4A4A4A4A4A6A4A4A4A4A4A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3
-A1A3A4A4A4A3A39E9E9E9E9E9C9C9C9C9C9C9A9A9A9A999994949494949494949494929292929292
-928F8E8E8E8E8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F7F
-7F7F7F7C7C7C7C7C7976767676747474747474747472716C6C6C6C6C6A6A6A6A6A67676766616161
-615F5F5F5C57575755554F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-6C6C6C6C6C6C6C6C6A6A6A6A6A6A6A6A6A6A6A676767676767676661616161616161616161616166
-67676A6A6C7274747676797C7C7C7F7F7F7F7F818585878989898989898E8E8E8F92929292929292
-949494949494768E949C9EA4A9B1B7BBC1C8CFD4D9DFE4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F2
-ECECE6E1DFD9D4D3CFCCCCC6C6C4C1C1C0C0BEBBBBB9B9B9B9B9B9B9B9B9B7B7B6B3B3B3B3B1B1AE
-AEA9A6A6A49E998F877C716C7274767F8487898E9294999C9EA3A3A3A3A4A6A6A9A9A9A9ABA9A9AB
-AEAEABA9A9ABAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B3B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B1
-B1B3B3B3B1B1B1B1AEAEAEAEAEAEABA9A6A6A4A49E9C9A94928F89847C746C6A676461616161615F
-5F5C57575555554F6C747C7F8587898989898987878581817F7F7C7C7674726C6A675F5C55544F4F
-55595F6161676A6A6C72747476797C7C7F7F7F7F7F81848585858787878989898989898989898989
-8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8F8F9292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-94949494949494949494949494949494949494949494949494949494949292929292928F8E8E8E8E
-8E8C8989898987898989898787898989898C8E8E8F8F9292929292929292928F8E8C898989878787
-85817F7C7C76747472716C6C6C6C6C6E72727474767676747272747476797C7F8184858787878989
-898C8E8F8F92929292928F8E8E8E8E8E8E8E8E8C8989878784817F7F7F7F7F818487878989898989
-8C8C7F87898E8F8F8E8E8E8F9294999C9C9C9C9C9C9A9A999A9A99999499999A9A9C9C9C9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9C9C9C9C9E9E9E9E9E9EA3A4A4
-A4A6A4A4A39E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3
-9EA1A3A4A4A3A19E9E9E9E9E9C9C9C9C9C9C9A9A9A9A999994949494949494949494929292929292
-92928E8E8E8E8E8E8E8E8E8C89898989898989898989878787858585858585858481817F7F7F7F7F
-7F7F7F7C7C7C7C7C7C79767676767474747474747472726E6C6C6C6C6A6A6A6A6A6A676767646161
-615F5F5F5C5757575555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF747271
-6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A6A6A6A6A6A6A6A6767676767676767676767676767676767
-6A6A6C6E7274747676797C7C7C7F7F7F7F81818585878789898989898C8E8E8E9292929292929294
-9494949494948192999C9EA6ABB1B9BEC1C8CFD9DCDFE4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F1
-ECECE6E1DFD9D4D3CFCFCCC8C6C4C1C1C0C0BEBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B1B1B1
-AEA9A6A6A6A49E948E87796A6C72747C7F8787898F94949A9C9E9E9E9EA4A6A6A6A9A9A9A9A9A9A9
-ABABA9A9A6A9AEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B3B3B1
-B1B1B3B3B1B1B1B1AEAEAEAEAEAEAEABA9A6A6A4A39E9C9A94928E89847C726C6A66616161616161
-5F5F5C57575555554F71767F8185878989898987878781817F7F7C7C7674726E6C67615F5755544F
-51575D616166676A6C72747476767C7C7F7F7F7F7F81818585858587878989898989898989898989
-898E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8F8F8F9292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-94949494949494949494949494949494949494949494949494949494949292929292928F8E8E8E8E
-8E8E8C8989898989898989898989898C8E8E8F929292929292929292929292928F8E8C8989898787
-87847F7F7F7C79767472716C6C6C6A6A6A6C6C6C6C6C6E72727476797C7F7F818185878789898989
-8C8E8E8E8F8F92928F8E8E8C8C8C8E8E8C8C8989898785817F7F7F7F7F7F81848787878989898989
-8C7F87898C8F8F8F8E8E8E9294949A9C9C9C9C9C9A999494949494949494999A9A9A9C9C9C9C9E9E
-9E9E9E9C9C9C9C9C9E9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9C9A9A9C9C9C9C9C9C9C9E9EA1A4A4A4
-A6A6A6A4A4A19E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A1
-9E9EA3A4A4A3A19E9E9E9E9C9C9C9C9C9C9A9A9A9A9A999494949494949494949494929292929292
-92928F8E8E8E8E8E8E8E8E8E89898989898989898989898787858585858585858584817F7F7F7F7F
-7F7F7F7F7C7C7C7C7C7976767676747474747474747472716C6C6C6C6A6A6A6A6A6A676767666161
-615F5F5F5D5957575555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7474747272
-716C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A6A6A6A6A6A6A6A6A6A6A6767676A6A6A6A6A6A6C
-6C6C727474747676797C7C7C7F7F7F7F8181858587878989898989898E8E8E8F9292929292929494
-94949494949489929A9CA3A6AEB1B9BEC6CCD1D9DCE1E4E7ECF1F2F4F4F7F7F9F9FAF9F9F7F7F4F1
-ECE9E6E1DFD9D4D3CFCFCCC8C6C6C1C1C1C0BEBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B1B1B1
-AEABA9A6A6A4A49C948C8176616C72767C8187898C92949A9C9C9E9E9EA3A4A4A4A6A6A6A6A6A6A6
-A9A9A9A6A6A9A9ABAEAEAEAEAEAEAEAEAEB1AEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B3B1B1
-B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEABA9A6A6A6A4A19E9C9A94928E897F76716A67616161616161
-5F5F5F5957575557554F72767F81878989898789878784817F7F7C7C767674726C6A665F5C555551
-4F55595F6166676A6C7174747676797C7C7F7F7F7F7F818485858587878989898989898989898989
-898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8F8F8F929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92949494949494949494949499999999999999949494949494949494929292929292928F8E8E8E8E
-8E8E8C8C8C8C8C8C8C898989898C8E8E8E8F92929292929494949492929292928F8E8C8989898987
-878584817F7F7F7C7C7676747472716C6C6E717272747476767C7C7F7F8181848487878989898C8E
-8E8E8E8E8E8F8F8F8E8C8989898C8C89898989898784817F7F7F7F7F7F7F8185878789898989898C
-7C8487898E92928E8E8E8F9294999C9C9C9C9A9A99949494949494949494949999999A9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9C9C9C9E9C9C9C9C9A9A9A9A9C9C9C9C9C9C9E9E9EA3A4A4
-A6A6A6A4A4A19E9E9E9E9E9E9EA3A4A4A4A4A4A3A3A4A4A4A4A3A3A4A4A4A4A3A3A4A4A4A4A4A3A1
-9E9EA1A3A3A19E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A999494949494949494949494929292929292
-92928F8E8E8E8E8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F7F7F
-7F7F7F7F7C7C7C7C7C7B76767676767474747474747472726C6C6C6C6A6A6A6A6A6A6A6767676161
-61615F5F5F5C5757575555514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7474747472
-727272716E6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6C6C6C
-6C747474747676797C7C7C7F7F7F7F8484858587878989898989898E8E8E8E929292929292929494
-94949494949489949A9EA4A6AEB3B9C0C6CCD3D9DEE1E6E7ECF1F2F4F4F7F7F9F9FAF9F9F7F4F2F1
-ECE7E6E1DFD9D7D3CFCFCCC8C6C6C1C1C1C0BEBBBBBBBBB9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B1B1
-AEAEABA9A6A6A4A49C94897F74556C72767C8487898F94999A9A9C9C9E9E9E9E9EA4A6A6A6A6A4A6
-A6A6A6A6A6A6A9A9A9AEABABABABABAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B3B1B1
-B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEA9A9A6A6A6A49E9E9C9A94928C877F74716A676161616161
-5F5F5F5D57575755575755747C7F818789878787878785817F7F7C7C797674726E6A67615F575555
-4F54575D6164676A6A6C72747476797C7C7F7F7F7F81818485858587878789898989898989898989
-898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8F8F9292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929494949494949494949496999A9A9A9A9A9A999494949494949494929292929292928F8F8E8E8E
-8E8E8F8F8F8F8F8E8C89898C8E8E8E8E8F929292929494949494949494949292928F8E8C89898989
-87878787878584817F7F7F7C7C797676747676767676797C7C7F7F81848587878789898C8C8E8E8E
-8E8E8E8E8E8E8E8C898989898989898989898787847F7F7C7C7F7F7F7F818487878787898989898C
-8187898E8F928F8E8E8E9294949A9A9C9C9A9A969494949492949292949494949496999A9A9A9C9C
-9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9C9C9C9C9C9C9C9C9A9A9A9A9A9C9C9C9C9C9C9E9E9EA3A4A4
-A6A6A6A4A4A39E9E9E9E9E9E9EA1A3A4A4A4A4A3A3A4A4A4A4A3A1A3A4A4A4A3A3A4A4A4A4A3A19E
-9E9E9EA3A3A19E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9494949494949494949494929292929292
-92928F8F8E8E8E8E8E8E8E8E8C89898989898989898989878787858585858585858581817F7F7F7F
-7F7F7F7F7C7C7C7C7C7C79767676767474747474747472726E6C6C6C6C6A6A6A6A6A6A6767676461
-61615F5F5F5D5757575555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7474747474
-7474747272716C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A6A6A6A6A6A6A6A6C6C6C6C7172
-747474767676797C7C7C7F7F7F7F8185858585878989898989898C8E8E8E8F929292929292949494
-94949494947C8E949C9EA4A9AEB6B9C1C6CFD4D9DFE1E6E9ECF2F2F4F4F7F7F9FAFAF9F9F7F4F2F1
-ECE7E6E1DFD9D7D3CFCFCCC8C6C6C4C1C1C0C0BBBBBBBBBBB9B9B9B9B9B9B9B9B6B3B3B3B3B3B1B1
-AEAEAEABA9A6A6A4A19C92877C6C6A6C74797F85878C929494999A9C9C9E9C9C9C9EA4A4A4A4A4A4
-A6A6A6A6A6A6A6A6A9A9ABABABA9A9ABAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B3B3B3B1B1
-B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEABA9A9A6A6A4A39E9E9C9A949289847C74716A6661616161
-615F5F5F5D57575557575755747C7F8487878787878787847F7F7C7C79767472716C6A665F5C5555
-515155595F61666A6C6C72747476767C7C7F7F7F8181818485858787878789898989898989898989
-89898E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8F92929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292949494949494949494999A9A9A9A9A9A9A99949494949494949292929292929292928F8F8E8F
-8F8F929292928F8F8E8C8E8E8E8E8E8E92929494949494999A99999494949292928F8E8C8C8C8C89
-8989898989898987878584817F7F7F7F7F7C7C7C7C7C7F7F7F8184858787898989898E8E8E8E8E8E
-8E8E8E8E8E8C898989898989898989898787847F7F7C7C7C7F7F7F7F81848587878787898989897F
-87898E8F92928F8E8E8E92949A9A9A9A9A9A94949292929292929292949494949494949699999A9A
-9A9C9A9A9A9C9C9C9C9C9C9C9C9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9C9C9C9E9EA1A4A4
-A4A4A4A4A4A39E9E9E9E9E9E9E9EA1A3A4A4A3A19EA3A4A4A3A19EA3A4A4A4A3A1A3A4A4A4A3A19E
-9E9E9EA1A19E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9694949494949494949494929292929292
-9292928F8E8E8E8E8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F7F
-7F7F7F7F7C7C7C7C7C7C7976767676747474747474747472716C6C6C6C6A6A6A6A6A6A6767676661
-61615F5F5F5F5957575555554F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7474747474
-7474747472727271716E6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6C6C6C6C6C6C6C6C72727474
-7474767676797C7C7C7F7F7F7F8185858585878789898989898C8E8E8E8F92929292929292949494
-9494949494878F969C9EA6A9B1B6BEC1C8CFD4D9DFE1E6ECECF2F4F4F4F7F9F9FAF9F9F9F7F4F2EE
-ECE7E6E1DFD9D7D3CFCFCCC8C6C6C4C1C1C1C0BBBBBBBBBBBBB9B9B9B9B9B9B9B6B3B3B3B3B3B1B1
-B1AEAEAEABA9A6A6A49E9A8E8174616A71747C7F87898E92949494999A9C9C9C9C9C9E9EA1A3A1A3
-A4A4A4A4A4A4A4A6A6A6A9A9A9A9A9ABAEAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B3B1B1B1
-B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEABABA9A9A6A6A49E9E9E9C99928E897F7974716A66616161
-615F5F5F5F5C57575757575755767F7F81878787878987847F7F7F7C79767474726E6A67615F5755
-554F55575D61666A6C6C7174747676797C7C7F7F8184848485878787878789898989898989898989
-89898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8F92929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292928F8F8F929292929292928F8F8F8F92929292929292929292
-9292949494949494949499999A9A9A9A9A9A9A9994949494949492929292929292929292928F8F92
-929292929292928F8E8E8E8E8E8E8F929294949494969A9A9C9A9A999494949292928F8F8E8E8E8E
-8E8E8E8E8E8E8E8E898989878787878584848181818181858587878789898C8E8E8E8E8E8E8E8C8C
-8E8E8E8C898989898989898989878787847F7F7F7C7C7C7F7F7F7F7F818184848787878989897F87
-898C8F92928F8E8E8E8F94949A9A9A9A9A94949292928F8F8F929292929294949494949494949499
-9A9A9A99999A9A9C9C9A9A9A9C9C9C9C9C9C9C9A9A9A99999999999A9A9A9A9A9A9C9C9E9E9EA4A4
-A4A4A4A4A4A39E9E9E9E9E9E9E9E9EA1A3A4A3A19EA1A3A4A3A19EA1A3A4A3A19EA1A3A4A3A19E9E
-9E9E9E9EA19E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9994949494949494949494929292929292
-9292928F8F8E8E8E8E8E8E8E8E8C89898989898989898989878787858585858585858481817F7F7F
-7F7F7F7F7F7C7C7C7C7C7C79767676767474747474747472726C6C6C6C6C6A6A6A6A6A6767676661
-6161615F5F5F5C5757575555514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7674747474
-74747474747474747272726E6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C727474747474
-747676767B7C7C7C7F7F7F7F8185858585858789898989898C8E8E8E8F9292929292929292949494
-949494949489929A9CA3A6ABB1B7BEC6C9CFD4D9DFE1E6ECECF2F4F4F7F7F9F9FAF9F9F7F7F4F2EE
-ECE7E6E1DFD9D9D4D1CFCCC9C6C6C4C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B6B3B3B3B3B3B1B1
-B1B1AEAEAEABA9A6A4A39E94897C72556C72767C818789898F9294949499999A9A9A9C9C9E9E9E9E
-9EA1A3A3A3A4A4A4A4A6A6A9A9A9A9A9A9ABABABABAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1
-B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEABABABA9A9A6A4A4A19E9E9C949289877F79746C6A666161
-61615F5F5F5F5957575759595755797C7F84878787878787817F7F7C7B76767472716C6A665F5957
-55515455595F61676A6C7272747476797C7C7F7F8184858585858787878989898989898989898989
-89898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8F8F92929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292928F8E8E8F8F8F9292928F8F8E8E8F8F8F9292929292929292
-92929494949494949496999A9A9A9A9A9A9A99949494949494949292929292929292929292929292
-929292929292928F8E8E8E8E8E8F929294949494999A9A9C9C9C9A9A99999494949292929292928F
-8F8F8F929292928F8E8C898989898989898989878787878789898989898C8E8E8E8E8E8E8C898989
-8C8C89898989898989898987878787817F7F7C7C7C7C7C7C7F7F7F7F7F8184878787898989798587
-8C8E9292928E8E8E8E9294999A9A9A9A949492928F8F8E8E8F8F8F8F929292929492929292949494
-949999949494999A9A9A99999A9A999A9A9A9A9A9999949496999999999999999A9A9C9C9E9EA3A4
-A4A4A4A4A3A3A19E9E9E9E9E9E9E9E9EA1A3A19E9E9EA1A3A39E9E9EA1A3A39E9E9EA3A4A3A19E9E
-9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9994949494949494949494949292929292
-929292928F8E8E8E8E8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F
-7F7F7F7F7F7C7C7C7C7C7C7976767676747474747474747472716C6C6C6C6A6A6A6A6A6767676661
-6161615F5F5F5D5957575555554F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7674747474
-747474747474747474747272716C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C71727274747474747474
-7676767C7C7C7C7F7F7F7F818585858585878789898989898E8E8E8F929292929292929294949494
-94949494798C949C9EA4A6AEB1B9BEC6CCD1D9DCDFE4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F2EE
-ECE7E6E1DFD9D9D4D1CFCCC9C6C6C4C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B7B6B3B3B3B3B1B1
-B1B1B1AEAEAEABA9A6A49E9C9284766A676C74767C818587898C9292949494949494999A9C9C9C9C
-9E9E9E9E9E9EA1A3A4A4A6A6A6A6A6A9A9A9A9A9ABABAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1
-B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEABABABA9A9A6A4A3A19E9C9A948F89847F76746C676461
-61615F5F5F5F5D595757575C5C5755797C7F87878787898784817F7F7C76767472726C6A67615F57
-57555155575D61676A6C7272747476767C7C7F7F7F81848585858787898989898989898989898989
-8989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8F8E8E8E8E8F8F9292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292928F8E8E8E8E8E8F8F8F8F8E8E8E8E8E8E8F92929292929292
-929292949494949494999A9A9A9A9A9A9A9A99949494949494929292929292929292929292929292
-9494949492928F8E8E8E8E8F92929294949496999A9A9C9C9C9C9C9C9A9A99949494949494949292
-92929292929292928F8E8E8E8E8C89898989898989898989898989898C8E8E8E8E8E8C8989898989
-8989898989898989898787878785817F7C7C79797C7C7C7C7C7C7F7F818485878789898989818789
-8E8F92928F8E8E8E929494999A9A9A999492928F8E8C8C8E8E8E8E8E8E8F92929292929292929294
-9494949492949499949694949494949494949494949494949494949494949699999A9C9C9C9EA1A4
-A3A3A1A19EA3A19E9E9E9E9E9E9E9E9E9EA1A19E9E9E9EA1A19E9E9E9EA3A19E9E9EA1A3A39E9E9E
-9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9994949494949494949494949292929292
-929292928F8E8E8E8E8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F7F
-7F7F7F7F7F7C7C7C7C7C7C7C76767676767474747474747472726C6C6C6C6A6A6A6A6A6767676761
-616161615F5F5F5C5757575555514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7676747474
-747474747474747474747472727272727272716E6C6C6C717171716E727474747474747474767676
-76797C7C7C7C7F7F7F7F818585858585858789898989898E8E8E8E92929292929292929294949494
-94949494878F949C9EA4A9AEB3B9C1C6CCD3D9DCE1E4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F4F4F2EE
-ECE7E6E1DFD9D9D4D1CFCCCCC6C6C4C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B7B6B3B3B3B3B1B1
-B1B1B1B1AEAEAEA9A6A6A49E99897F725F6A6C72767C7F818787898F929292929294949499999A9C
-9C9C9C9C9E9E9E9E9EA3A4A6A6A6A6A6A6A6A6A9A9A9ABAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A6A6A4A49E9E9C99928E87817C76726C6761
-6161615F5F5F5F5D5C5957595D5C5957797C7F878787878787817F7F7C7976747472716C6A645F5C
-5755515555595F616A6C717274747676797C7C7F7F81848585858787878989898989898989898989
-8989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8E8E8E8E8E8E8E8F8E8E8E8E
-8F8F8F8F8E8F8F929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8F8E8E8E8E8F929292929292
-929292949494949494999A9A9A9A9A9A9A9994949494949494949294949492929292929292929494
-9494949292928F8E8E8E8E8F929294949999999A9C9C9C9C9C9C9C9C9C9A9A999994949494949494
-929292949494949292929292928F8E8C89898989898989898989898C8E8E8E8C8C89898989898989
-898989898989898787878784817F7C7C76767676767676797C7C7C7F81858787898989897F87898E
-8F92928F8E8E8E8F9294969A9A9A9A9492928F8E8C89898C8C8C8C89898E8F92928F8F8E8F8F9292
-9292929292929292929292929292928F9292929292929292929294949494949494999A9C9C9E9EA1
-A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA19E9E9E9EA1A19E9E9E
-9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9994949494949494949494929292929292
-92929292928F8E8E8E8E8E8E8E8E8E89898989898989898989898787858585858585858584817F7F
-7F7F7F7F7F7C7C7C7C7C7C7C79767676767474747474747472726E6C6C6C6C6A6A6A6A6A67676764
-616161615F5F5F5D5757575555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7676767474
-74747474747474747474747474747474747272727272747472727274747474747474747476767676
-7C7C7C7C7C7F7F7F7F818585858585858787898989898E8E8E8E8F92929292929292929494949494
-949494948792999CA1A6A9B1B6B9C1C6CFD4D9DFE1E6E7ECF1F2F4F4F7F7F9F9FAF9F9F7F4F2F2EC
-ECE7E4E1DFD9D9D4D1CFCCCCC8C6C6C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B7B6B3B3B3B3B1B1
-B1B1B1B1B1AEAEAEA9A6A49E9C9287796C576A6E72747C7C7F848789898E8F8F929292929494969A
-9A9C9C9C9C9C9C9C9E9EA1A4A4A6A6A6A6A6A6A6A6A9A9ABAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1
-AEAEAEB1B1AEAEAEAEAEAEAEAEAEAEAEAEABABABA9A9A9A6A4A4A19E9C9C949289877F7C74726A66
-616161615F5F5F5F5D5C5C595C5F5D5C57767C81878787878785817F7C7C76747472726C6A67615D
-5757555455575D61676A6E7272747476797C7C7F7F81848585858587878989898989898989898989
-898989898E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F9292928F8F8E8E8E8E8F8F8F8F8E8F
-8F9292928F8F92929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292928F8F8F8F8F8E8E8E8E8F8F8F8F8F8F8F929292929292
-92929294949494949496999A9A9A9A9A9A9994949494949494949494949494929292949494949494
-94949492928F8E8E8E8E8F929294969A9A9A9A9C9C9C9E9E9E9E9C9C9C9C9C9A9A99999696969494
-94929494949494929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989
-898989898987878787847F7F7C7B76747474747474747476797C7F818587878789898C7C87898E8F
-92928F8E8E8E8E929494999A9A9A9994928F8E8C8989898C8989898989898C8E8E8E8C898C8E8E8F
-928E8C8E8E8E8E8C89898C8E8E8C898989898C8C8C8E8E8E8F8F8F92929294949494999A9C9C9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9994949494949494949494929292929292
-92929292928F8E8E8E8E8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F
-7F7F7F7F7F7C7C7C7C7C7C7C7976767676747474747474747472716C6C6C6C6A6A6A6A6A67676766
-616161615F5F5F5D595757555555514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7676767676
-7676767474747474747474747474747474747474747474747474747474747474747474767676767C
-7C7C7C7C7F7F7F7F818485858585858787898989898C8E8E8E8E8F92929292929292929494949494
-9494947689929A9CA3A6ABB1B7BEC1C8CFD4D9DFE1E6E7ECF2F4F4F4F7F9F9FAFAF9F9F7F4F2F1EC
-ECE7E4E1DFD9D9D4D3CFCFCCC8C6C6C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B7B6B3B3B3B3B3B1
-B1B1B1B1B1B1AEAEABA9A6A39C998E7F746A666A6C7274767C7F81878789898C8E8F8F9292929494
-99999A9A9A9C9C9C9C9C9EA1A4A4A4A6A6A6A6A6A6A6A9A9ABABABAEAEAEAEAEAEAEB1B1B1B1B1B1
-AEAEAEAEB1AEAEAEAEAEAEAEAEAEAEAEAEABABABA9A9A9A6A6A4A49E9E9C9A948E87877F7B74716A
-666161615F5F5F5F5F5D5D5C5C5D5F5F5D57797F848587878787847F7F7C76747472726C6C67615F
-5C5755555557595F616A6C7272747476797C7C7F7F7F818485858787878989898989898989898989
-8989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F9292929292928F8F8F8F8F9292928F8F
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929294949494929292929292929292929292928F8F8F9292928F8F92929292929292
-92929292949494949494999999999999999494949494949494949494949494949494949494949494
-94949292928F8E8E8E8F929294969A9A9A9A9C9C9C9E9E9E9E9E9E9C9C9C9C9C9A9A999999999994
-9494949494949494929292929292928F8F8F8F8F8E8E8E8E8E8E8E8C898989898987898989898989
-8989898987878784817F7C797674747271717172727476797C7F81858787878989897987898E8F92
-92928E8E8E8E8F9294999A9A9A9994928E8C898989898C8C8989898989898989898989898989898C
-8989878789898987878587878787858587878787898989898989898C8E9292929294949A9A9C9C9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9994949494949494949492929292929292
-92929292928F8E8E8E8E8E8E8E8E8E8C898989898989898989898787878585858585858584817F7F
-7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767474747474747472726C6C6C6C6C6A6A6A6A67676766
-61616161615F5F5F5C5757575555514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7676767676
-76767676747676767474747474747474747474747474747474747474747476767676767676797C7C
-7C7F7F7F7F7F7F818485858585858787898989898C8E8E8E8E8E9292929292929292949494949494
-949494848E949C9EA4A6AEB1B9BEC6CCCFD4D9DFE1E6ECECF2F4F4F7F7F9F9FAF9F9F7F7F4F2F1EC
-ECE7E4E1DFD9D9D4D3CFCFCCC8C6C6C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B6B6B6B3B3B3B1
-B1B1B1B1B1B1B1AEAEA9A6A49E9A94897F7461676A6C7274767B7C7F8487878989898C8E8F929294
-94949499999A9A9A9C9C9C9EA1A3A4A4A4A4A4A4A6A6A6A9A9ABABABAEAEAEAEAEAEAEB1B1B1B1B1
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABA9A9A6A6A6A6A4A19E9C9C94928987847F79746C
-6A666161615F5F5F5F5F5F5F5D5D5F5F5F5D574F7F848587878785817F7C79747472726E6C6A665F
-5D5957555555575D61676C7172747476797C7C7C7F7F818485878787878789898989898989898989
-89898C8E8E8E8E8E8E8E8F8F8E8E8E8E8F8F8F8E8E8E8F9292929292929292928F8F929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929494949494949492929292929292929292929292929292929292929292929292
-92929292949494949494949496999999999494949494949494949494949494949494949494949494
-949492928F8E8E8E8E929294999A9A9C9C9C9C9C9E9E9E9E9E9E9E9C9C9C9C9C9C9C9A9A9A9A9A9A
-999494949494949492929292929292929292928F8E8E8E8E8E8E8C89898987878787878989898989
-898989898787817F7C76747474716C6C6C6C6C7172767C7C7F81848787878989897485878C8E9292
-928F8E8E8E8F9294949A9A9A9994948F8C89898789898C8989898989898989898989878787878987
-87878481818484817F7F7F7C7C7C7F7F7F7F7F818184848787878789898C8F92929294949A9C9C9C
-9C9C9C9C9E9E9E9E9E9C9E9E9E9E9E9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A96949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8C898989898989898989898987878785858585858584817F7F
-7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676747474747474747472716C6C6C6C6A6A6A6A67676766
-61616161615F5F5F5D595757555554514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7979767676
-7676767676767676767474747474747474747474747474747474747676767676767676767C7C7C7C
-7F7F7F7F7F7F818485858585858787898989898C8E8E8E8E8E8F9292929292929294949494949494
-9494948792949C9EA4A9AEB3B9C0C6CCD1D9DCDFE1E7ECECF2F4F4F7F7F9F9FAF9F9F7F7F4F2F1EC
-ECE7E4E1DFD9D9D4D3CFCFCCC8C6C6C1C1C1C0C0BBBBBBBBBBBBB9B9B9B9B9B9B9B6B6B6B6B3B3B3
-B1B1B1B1B1B1B1B1AEAEA9A6A19C9992877C6C59676A6C6E7274767C7F818487878989898C8E8F92
-92949494949499999A9C9C9C9E9EA1A4A4A4A4A4A4A6A6A6A9A9ABABABAEAEAEAEAEAEAEB1B1B1AE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABA9A9A9A6A6A6A6A4A39E9C9C9A948E8987817C7672
-6C67616161615F5F5F5F5F5F5F5F5D5F5F5F5D5C54818485878787847F7F7C76747472716C6A6761
-5F5C5755555757595F646A6E72727474767C7C7F7F7F818487878787878789898989898989898989
-898C8E8E8E8E8E8E8E8E8F928F8F8E8F8F92928F8F8F8F9292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929494949292949494949494949494949492929294949494949292929292929292929294929292
-92929292929494949494949494949494949494949494949494949494949494949494949494949494
-949292928F8E8E8F929294999A9C9C9C9C9C9C9E9EA1A1A1A19E9E9C9C9E9E9E9C9C9C9A9A9A9A9A
-9A999494949494949492929292929292929292928F8E8E8E8E8E8989898787878787898989898989
-8989898785817F797472726E6A6A6C6E72747476767C7C7F81848787878989898C8187898E8F9292
-928F8E8E8E9292949A9A9A999694928989878789898C8C8C89898989898989898987878787858481
-817F7F7F7F7C7C7C7C7C7C7B79797C7C7C7C7C7C7C7C7F7F818485878789898E8F929294949A9A9C
-9C9C9C9C9C9E9E9E9C9C9C9E9E9E9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9996949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E898989898989898989898987878785858585858585817F7F
-7F7F7F7F7F7F7C7C7C7C7C7C7C7C76767676767474747474747472726C6C6C6C6A6A6A6A67676767
-6161616161615F5F5F5C575757555554514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7976767676
-76767676767676767676767476767676747474747676767676767676767676767676767C7C7C7C7F
-7F7F7F7F7F818485858585858587898989898C8E8E8E8E8E8E8F9292929292929494949494949494
-9494798992999CA1A6A9AEB6B9C1C6CFD3D9DCDFE4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F2F1EC
-ECE7E4E1DFD9D9D4D3CFCFCCC8C6C6C4C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B7B6B6B6B6B3B3
-B3B1B1B1B1B1B1B1AEAEABA6A49E9C999287766A54676A6A6C7274767C7F7F818587878989898E8F
-9292929294949494999A9C9C9C9E9EA1A3A3A3A4A4A4A6A6A6A9A9A9ABABAEAEAEAEAEAEAEAEB1AE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABA9A9A6A6A6A6A6A4A49E9E9C9A9492898987817C76
-726C67616161615F5F5F5F5F5F5F5F5F5F615F5D5D558184878787857F7F7C76747472716C6C6A61
-5F5D5957555757575F61676C72727474767C7C7F7F7F818487878787878989898989898989898989
-8C8E8E8E8E8E8E8E8E8F8F9292928F8F92929292928F929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494929292929494949492
-92929292929292949494949494949494949494949494949494949494949494969999949494949494
-9492928F8E8E8F929294969A9C9C9C9C9C9E9E9EA3A3A3A4A19E9E9E9E9E9E9E9C9C9C9C9C9C9C9A
-9A9994949494949494929292929292929292928F8E8E8E8E8E8C8989878787878789898C8C898989
-898987847F7C747271677274747474767676767C7C7C7F7F84858787878989897F87898E8F929292
-928E8E8E8F9294949A9A999994928E898787878989898C8C89898989898989898787848181817F7F
-7C7C7C7C7C79797979767676767676767676797979797C7C7F7F7F81848787898C8E8F929494999A
-9C9C9C9C9C9C9E9E9C9C9C9C9E9E9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C
-9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9999949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E89898989898989898989898987878785858585858584817F
-7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767474747474747472726E6C6C6C6C6A6A6A6A676767
-6661616161615F5F5F5C575757555555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C79767676
-767676767676767676767676767676767676767676767676767676767676767676797C7C7C7C7F7F
-7F7F7F81818485858585858587898989898C8E8E8E8E8E8E8F929292929292929494949494949494
-94947F89949A9EA4A6ABB1B7BBC1C8CFD3D9DCE1E4E7ECF1F2F4F4F7F7F9F9FAF9F9F7F7F4F2F1EC
-ECE6E4E1DFD9D9D4D3CFCFCCC8C6C6C4C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B7B7B7B6B6B6B3
-B3B3B1B1B1B1B1B1AEAEAEA9A69E9C9A948F81746761676A6A6C7274767C7C7F818185878789898C
-8E8F92929292949494999A9C9C9C9E9E9E9E9EA3A3A4A4A6A6A6A6A9A9ABABAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABA9A9A9A6A6A6A6A6A4A4A39E9C9C99928E8987877F7C
-74726A666161615F5F5F5F5F5F5F5F5F5F61615F5F5F578184878787817F7C79747472726C6C6A66
-615F5C59575757575D5F666A6E72747476797C7F7F7F81848787878789898989898C89898989898C
-8E8E8E8E8E8E8E8E8F8F929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92949494949494949494949494949494949494949494949499949494949494949492929494949494
-94929292929292929494949494949494949494949494949494949494969999999A99949494949494
-9292928F8F8F929294949A9C9C9C9C9C9E9E9EA4A4A4A4A4A39E9E9E9E9E9E9E9C9C9C9C9C9C9C9C
-9A99999494949494949492929292929292928F8E8E8E8E8E8C89898987878789898C8E8E8C898989
-8787817F76727274767C7C7C7C7F7C7C7C7C7C7C7C7F7F7F818487878787877F87898E8F92929292
-8F8E8E8E8F92949A9A9A999494928987858789898989898E8C898989898989878784817F7F7F7F7C
-7C7C797676767676767676767676767676767676767676797C7C7C7F7F81878789898C8F92949499
-9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C
-9C9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A999996949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E89898989898989898989898987878785858585858584817F
-7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767474747474747472716C6C6C6C6A6A6A6A676767
-6661616161615F5F5F5D595757555555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7B797979
-797976767676767676767676767676767676767676767676767676767676767C7C7C7C7C7C7F7F7F
-7F7F8484848585858585858789898989898E8E8E8E8E8E8F92929292929292949494949494949494
-9494848F949A9EA4A6AEB1B9BEC6C8CFD4D9DFE1E6E7ECF1F2F4F4F7F7F9F9FAF9F9F7F7F4F2F1EC
-ECE6E4E1DFD9D9D4D3CFCFCCC8C6C6C4C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B9B7B7B6B6B6
-B3B3B3B1B1B1B1B1B1AEAEABA6A49E9C9A94897F74616166676A6C727476797C7F7F818487878989
-898C8E8F8F9292929494999A9A9C9C9E9E9E9E9EA1A3A4A4A6A6A6A6A9A9ABABAEAEAEABAEAEAEAE
-AEAEAEAEAEABAEAEAEAEAEAEABAEAEAEAEABA9A9A9A6A6A6A6A6A6A4A49E9E9C9A94928E8989857F
-7C74716A666161615F5F5F5F5F5F5F5F5F5F61615F5F5F5781858787817F7F7C767472726C6C6A67
-615F5D5C57575757595F61676C72727474767C7F7F7F818487878789898989898C8C8E8C89898C8E
-8E8E8E8E8E8E8E8F8F92929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-94949494949494949494949494949494949494949494949999999994949494949494949494949494
-94949494929292929294949494949494949494949494949494949999999A9A9A9A99949494949494
-9292928F92929294949A9A9C9C9C9E9E9E9EA3A4A4A4A4A4A3A19E9E9E9E9E9E9E9C9C9C9C9C9C9C
-9A9A999494949494949492929292929292928F8E8E8E8E8C89898989898789898E8E8E8C89898787
-847F7C74667F7F8184818184858584817F7F7F7F7F7F7F7F8184858787877C87898E8F9292929292
-8F8E8E8E9294969A9A999494928C87878587878989898C8E8E8C8989898987878784817F7F7F7C7C
-7B79767676767676767676767676767676767676767676767676797C7C7F81878789898E8F929494
-999999999A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C
-9C9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A999994949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8C898989898989898989898989878785858585858584817F
-7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767474747474747472726E6C6C6C6C6A6A6A6A6767
-676161616161615F5F5F5C575757555555544F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7C797676767676767676767676767676767676767676767676767676797C7C7C7C7C7C7F7F7F7F
-7F8485858585858585858787898989898C8E8E8E8E8E8F9292929292929292949494949494949494
-947C8792949C9EA4A9AEB3B9BEC6CCCFD4D9DFE1E6E9ECF2F4F4F4F7F9F9FAFAF9F9F7F4F4F2F1EC
-E9E6E4E1DFD9D9D4D3CFCFCCC8C6C6C4C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B7B6B6
-B6B3B3B3B1B1B1B1B1AEAEABA9A6A39E9C9A948C81745F6166676A6C727476797C7C7F8184878787
-898989898C8E9292929494999A9A9C9C9E9E9E9E9EA1A3A4A4A4A6A6A6A9A9ABABABABABABAEAEAE
-AEAEABABABA9ABAEAEAEAEABABABABAEABABA9A9A6A6A6A6A6A6A6A4A4A19E9C9A9492928E898784
-7F79746C67646161615F5F5F5F5F5F5F61616161615F5F5F57558487847F7F7C767474726E6C6A6A
-615F5F5D5C575959575F61676A6C727474767C7F7F818184878789898989898C8C8E8E8E8C8C8C8E
-8E8E8E8E8E8E8F8F9292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9494949494949494949494949494949494949494949496999A9A9994949494949494949494949494
-9494949494949292949494949494949494949494949494999999999A9A9A9A9A9A99949494949492
-9292929292929494999A9C9C9E9E9E9E9E9EA3A4A4A4A4A4A4A3A1A1A1A39E9E9E9E9E9E9E9C9C9C
-9A9A999694949494949494929292929292928F8E8E8E8E898989898989898C8F8F8E8E8989878581
-7F76727C8185878787878787878585858584817F7F7F7F7F7F7F8181817C87898E8F929292929292
-8E8E8E8F92949A9A999494928F89878185878787898C8E8E8E8C8989898787878784817F7F7F7C7C
-7C7976767676767676767674747474747474747476767676767676767C7C7F81858789898E929294
-94969696969A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9C9E9E9E9E9E9E9E9E9E9E9E9E9C9C
-9C9C9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A99999694949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8C898989898989898989898989878787858585858584817F
-7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676747474747474747472716C6C6C6C6A6A6A6A6767
-676661616161615F5F5F5D575757555555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7C7C797676767676767676767676767676767676767676767679797C7C7C7C7C7C7F7F7F7F7F81
-848585858585858585878789898989898E8E8E8E8E8F929292929292929292949494949494949494
-947F8992999CA1A6A9AEB3B9C1C6CCD1D4D9DFE1E6ECECF2F4F4F7F7F9F9FAF9F9F7F7F4F4F2F1EC
-E7E6E1E1DFD9D9D4D3CFCFCCC8C6C6C6C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B7B7B6
-B6B6B3B3B3B1B1B1B1AEAEACABA6A49E9E9C9A948F84715D6161676A6C727474767C7C7F7F818485
-87878789898C8E8F92929494999A9A9C9C9E9E9E9E9E9EA1A4A4A4A6A6A6A9A9ABABA9A9A9ABABAB
-ABABABABA9A9A9ABABABABABA9ABABABABA9A9A9A6A6A6A6A6A6A6A4A4A39E9E9C999492928F8987
-847C76726C676161615F5F5F5F5F5F5F61616161616161615F595781847F7F7C79767472716C6C6A
-66615F5D5D59595C595D5F646A6C72747476797C7F8184858787898989898C8C8E8E8E8E8E8E8E8E
-8E8E8E8E8E8F8F929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9494949494949494949494949494949494949494949494999A9A9994949494949494949494949494
-9494949494949494949494949494949494949499999999999A9A9A9A9A9A9A9A9994949494949492
-92929292929494999A9C9C9E9E9E9E9E9EA1A4A4A4A4A4A4A4A3A3A3A4A39E9E9E9E9E9E9E9C9C9C
-9C9A9A9994949494949494929292929292928F8F8E8E8C89898989898C8E8F928F8E8C898785817C
-74747C8787898C8C89898787878785858481817F7F7F7F7C7C7C7C7C7C87898E8F9292929292928F
-8E8E8E9294969999949492928987848187878787898E8E8E8E898989878787878481817F7F7F7F7C
-7C7C7976767676767676747474747474747474747476767676747474767C7F7F818787898C8F9292
-9494949494969A9A9A9C9A9C9C9C9C9C9C9C9C9C9C9E9E9E9C9C9C9E9E9E9E9C9E9E9E9E9E9C9C9C
-9C9C9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A99999494949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8C898989898989898989898989878787858585858584817F
-7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C76767676767474747474747472726C6C6C6C6A6A6A6A6A67
-67676161616161615F5F5F5C575757555555514F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7C7C7C79797C7C7C797976767676767676767676767676767C7C7C7C7C7C7C7C7F7F7F7F7F8184
-8585858585858585878789898989898C8E8E8E8E8E92929292929292929294949494949494949494
-94858F949A9EA4A6ABB1B6BBC1C6CCD1D9DCDFE4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F4F2EEEC
-E7E6E1E1DFD9D9D4D3CFCFCCC8C6C6C6C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B7B7
-B6B6B3B3B3B3B1B1B1AEAEAEABA9A6A49E9C9C9A99927F6C5F6161676A6C71727476797C7F7F7F7F
-818487878789898E8F92929294969A9A9C9C9E9E9E9E9E9EA1A4A4A4A6A6A6A9A9A9A9A9A9A9A9A9
-A9A9A9A9A9A9A9A9A9ABA9A9A9A9A9ABABA9A9A6A6A6A6A6A6A6A6A4A4A39E9E9C9A949494928F89
-87817C74716A676161615F5F5F5F5F5F6161616161616161615F5D57817F7F7C7C767472716C6C6A
-67615F5F5F5D5C5C5C5C5F61676A6C727476797C7F81848587878989898C8C8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8F92929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9494949494949494949494949494949494949494949494999A9A9999949494949494949494949494
-94949494949494949494949494949494949496999A9A9A9A9A9A9A9A9A9A9A9A9994949494949292
-929292929494999A9C9C9E9E9E9E9EA1A1A3A4A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9E9E9E9E9C9C
-9C9A9A999494949494949494929292929292928F8E8E8C8C898C8E8F929292928F8E8987857F7B6C
-767F8789898C8C89898987878787858481817F7F7F7C7C7C7976767C87898E8F9292929292928F8E
-8E8E8F92949699969494928E87857F8187878789898C8E8E8C8989898787878481817F7F7F7C7C7C
-7C79767676767676747474747474747474747474747476747474747474767C7F7F848787898C8F92
-929494949494969A9A9A9A9A9C9C9C9C9A9C9C9C9C9C9E9E9C9C9C9E9E9E9C9C9C9E9E9E9E9C9C9C
-9C9C9C9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9999999494949494949494949492929292929292
-929292929292928E8E8E8E8E8E8E8E8E8C898989898989898989898989898787858585858584817F
-7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676747474747474747272716C6C6C6C6A6A6A6A67
-67676661616161615F5F5F5C575757555555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7979767676767679797979767C7C7C7C7C7C7C7C7C7F7F7F7F7F818585
-8585858585858587878989898989898E8E8E8E8E8F92929292929292929294949494949494949494
-7C8792949C9EA4A6AEB1B9BBC1C6CFD3D9DCDFE4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F4F2EEEC
-E7E6E1E1DFD9D9D4D3CFCFCCC8C6C6C6C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7
-B7B6B3B3B3B3B1B1B1AEAEAEAEA9A9A6A49E9E9C9A998F7C675F5F61676A6C6C727476767C7C7C7F
-7F7F8185878789898E8E8F92929496999A9A9C9C9E9E9E9E9EA1A4A4A4A6A6A6A6A6A6A6A6A9A6A6
-A6A6A6A6A6A6A6A6A9A9A9A9A6A6A9A9A9A9A9A6A6A6A6A6A6A6A6A4A4A39E9E9C9A96949494928E
-89857F79746C6A676161615F5F5F6161616166666464616161615F5F597F7F7C7C797472726C6C6A
-6A64615F5F5F5D5D5D5C5F61676A6C717474767C7F7F818487878989898C8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8F8F92929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929494949494949494949494949494949494949494949499999A9996949494949494949494949494
-949494949494949494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A999494949494949292
-9292949494999A9C9C9E9E9EA1A1A3A3A3A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C
-9C9C9A99999494949494949492929292929292928F8F8F8F8F9292929292928F8E8987847C766E7C
-84878989898C898989898787878584817F7F7F7C7C7C7B7674747F87898C8F9292929292928F8E8E
-8E8E92949494999494928F8987817F848485878989898C8C8989878787858481817F7F7F7C7C7C79
-767676767676767474747474747474747474747474747474747474747476797C7F81848789898C8F
-929292929494949699999A9A9A9C9C9C9A9A9C9C9C9C9C9C9C9C9C9C9E9E9C9C9C9E9E9E9C9C9C9C
-9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949492929292929292
-929292929292928F8E8E8E8E8E8E8E8E8C898989898989898989898989898787858585858585817F
-7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767474747474747472716C6C6C6C6A6A6A6A67
-67676661616161615F5F5F5D595757555555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C797976797C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F81858585
-8585858585858787898989898989898E8E8E8E8F9292929292929292929494949494949494949494
-7F8992949C9EA4A9AEB1B9BEC1C8CFD3D9DCE1E4E7ECF1F2F4F4F7F7F9F9FAF9F9F7F7F4F4F2EEEC
-E7E6E1E1DFDCD9D4D3CFCFCCC8C6C6C6C1C1C1C0C0BBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9
-B7B6B3B3B3B3B3B1B1AEAEAEAEABA9A6A6A4A39E9C9C948974615F6161676A6C6C72747476797C7C
-7C7F7F818487878989898C8E9292949494999A9C9C9C9C9C9E9E9EA3A4A4A6A6A6A4A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A6A6A6A6A6A6A6A6A6A4A49E9E9C9C9A9494949492
-8987847C76726C6A676161615F5F616161616767666666666661615F5F594F7C7C7C7674726E6C6A
-6A66615F5F5F5F5F5D5D5F5F646A6A6C7274767C7C7F818487878789898C8E8E8E8E8E8E8E8E8E8E
-8E8E8E8F8F9292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292949494949494949494949494949494949494949496999994949494949494949494949494
-949494949494949494949494949494949496999A9A9A9A9A9A9A9A9A9A9A9A999494949494929292
-92949494949A9C9C9E9EA3A3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9C
-9C9C9A9A9994949494949494949292929292929292929292929292929292928F8C87817C6C747F81
-8789898C8C8C8989898787878584817F7F7F7C7976747472747F87898C8E8F92929292928F8E8E8E
-8E8F92949494949494928987817F81848485878989898989898787848181817F7F7F7F7C7C7C7976
-767676767674747474747474747474747474747474747474747474747474767C7C7F81878789898C
-8F929292929494949699999A9A9A9C9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9C9C9C9C
-9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A999996949494949494949494949494929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8989898989898989898989898987878585858585858181
-7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7976767676767474747474747472726E6C6C6C6C6A6A6A6A
-6767676161616161615F5F5F5C575757555555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F8185858585
-85858585858787898989898989898E8E8E8E8F929292929292929292949494949494949494949494
-858F92999CA3A6A9AEB3B9BEC6C8CFD4D9DFE1E6E7ECF1F2F4F4F7F7F9F9FAF9F9F7F7F4F4F2EEEC
-E7E6E1E1DFDCD9D4D3CFCFCCC8C6C6C6C4C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9
-B9B6B3B3B3B3B3B1B1AEAEAEAEACA9A6A6A6A4A49E9C9A9484715C5F61646A6A6C6C727474767679
-7C7C7C7F81848787878989898E9292949494969A9C9C9C9C9C9E9E9EA1A4A4A4A4A4A4A4A6A6A6A6
-A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A6A6A6A4A4A19E9C9C9A9694949492
-8E89877F7C74726C6A6661615F5F6161616166676767676767666161615F597C7C79767472716C6A
-6A6761615F5F5F5F5F5F5F5F61676A6C717274797C7F818485878789898C8E8E8E8E8E8E8E8E8E8E
-8E8E8E8F929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292928F9292929292929292928F9292929292929292929292929292929292929292929292
-92929292929292949494949494949494949494949494949494949494949494949494949494949494
-9494949494949494949494949499969696999A9A9A9A9A9A9A9A9A9A9A9A99969494949494929294
-949494949A9A9C9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9E9E9C9C9C9C9C
-9C9A9A9A99999494949494949492929292929292929292929294929292928F89877F7672767F8187
-898C8C8C8989898987878785817F7F7F7C7C767474726C768587898E8F8F9292929292928E8E8E8E
-8F92949494949494928E87847F7F818181858787878787878785817F7F7F7F7F7F7F7C7C7C797676
-76767676767674747474747474747474747474747476747474747474747474767C7F7F8487878989
-8C8E929292929494949499999A9A9C9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A999994949494949494949494949494929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8989898989898989898989898987878585858585858481
-7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676747474747474747472716C6C6C6C6A6A6A6A
-6767676661616161615F5F5F5D575757555555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F848585858585
-858587878787898989898989898E8E8E8E8F9292929292929292929494949494949494949494947C
-8992949A9EA4A6ABB1B6BBC0C6CCCFD4D9DFE1E6E9ECF2F4F4F4F7F9F9FAFAF9F9F7F4F4F4F2EEEC
-E7E6E1E1DFDCD9D4D1CFCFCCC8C6C6C6C4C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9
-B9B6B3B3B3B3B3B1B1B1AEAEAEAEABA9A6A9A6A6A49E9C94927F6A5F5F6166676A6C6E7274747676
-797B7C7C7F7F848487878789898E8F92929294949A9A9C9C9C9C9C9C9EA1A4A39E9E9EA3A4A4A4A4
-A4A4A4A4A4A4A4A4A4A6A6A6A6A4A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A19E9C9C9C9A99999494
-8F8987857F7974716C6A616161615F6161616467676767676767666161615F597C79797674716C6C
-6A6766615F5F5F5F5F5F5F5F61676A6C6C7274767C7C7F818587878989898E8E8E8E8E8E8E8E8E8E
-8E8E8E8F929292929292929292929292929292929292929292929292929292929292929292929292
-8F929292928F8F8F8F8F92929292928F8F8F8F929292929292929292929292929292929292929292
-92929292929292929292949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949499999999999A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494949494
-949499999A9C9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9C9C9C9C9C9C
-9C9A9A9A9A9994949494949494949292929292929292949494949492928E89877F74747C7F818789
-8989898989898987878785817F7C7C7C797674726C727C87898C8F8F929292929292928F8E8E8E8F
-92929499949494929289857F7F7F7F7F818787878785848484817F7F7F7F7F7F7F7C7C7B79767676
-7676767676767474747474747474747474747676767676747474747474747476797C7F8185878789
-898C8F929292929494949499999A9A9A9A999A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A99999694949494949494949494949494929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8C89898989898989898989898987878585858585858481
-817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7B7676767676767474747474747472726C6C6C6C6C6A6A6A
-6A6767676161616161615F5F5F5C575757555555514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F8184858585858585
-8587878787898989898989898E8E8E8E8E9292929292929292929494949494949494949494949481
-8C92949C9EA4A6AEB1B9BBC1C6CCD1D4D9DFE1E6ECECF2F4F4F7F7F9F9FAF9F9F7F7F4F4F4F2ECEC
-E7E6E1E1DFDCD9D4D3CFCFCCC8C6C6C6C4C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9
-B9B7B3B3B3B3B3B1B1B1AEAEAEAEABA9A9A9A9A9A6A49E9A948C76645F616166676A6C7172747474
-7676797C7C7F81818184858787898C8F9292929494999A9A9A9C9C9C9C9E9E9E9E9C9C9E9EA1A1A1
-A3A1A19E9EA1A3A4A4A4A4A4A4A4A4A4A6A6A6A6A4A4A4A4A4A4A4A4A4A4A39E9C9C9C9A9A999494
-928E8987817C7674726C6761616161616166666667676767676767666161615F5776767674726C6C
-6A6A6761615F5F5F5F5F5F5F61666A6A6C717274797C7F818487878789898C8E8E8E8E8E8E8E8E8E
-8E8E8E8E8F92929292929292929292929292929292929292929292929292929292928F929292928F
-8F8F8F928F8F8E8E8E8F8F8F9292928F8E8E8E8F8F8F929292929292929292929292929292929292
-92929292929292929292929292949494949494949494949494949494949494949494949494949494
-949494949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A96949494949494949494
-96999A9A9C9C9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A19E9E9E9E9E9E9C9C9C9C9C9C
-9A9A9A9A9A99969494949494949492929294949494949494949492928E89877F71747C7F84878789
-89898989898987878785847F7F7C7C7676747274798487898F929292929292929292928F8E8E8E8F
-92949999969492928C87817F7F7F7F7F81878585848181817F7F7F7F7F7F7F7F7C7C7C7C79797676
-7676767674747474747474747474747474767676767676767474747474747476767C7C7F81878787
-89898E92929292929494949499999A9A9A99999A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9A9A9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A99999494949494949494949494949494929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8C89898989898989898989898987878785858585858584
-817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7676767676767474747474747472726C6C6C6C6C6A6A6A
-6A6767676661616161615F5F5F5C575757555555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F818485858585858585
-87878787898989898989898E8E8E8E8E8F9292929292929292929494949494949494949494949487
-8F92999C9EA4A9AEB1B9BEC1C6CCD3D9DCDFE4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F4F2F2ECEC
-E7E6E1E1DFDCD9D4D3CFCFCCC8C6C6C6C4C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9
-B9B7B6B3B3B3B3B1B1B1B1AEAEAEAEABA9A9A9ABA9A4A19C949287745F5F616166676A6C72727474
-7476767C7C7C7F817F7F81858787898C8E8F9292949494999A9A9A9A9A9C9C9C9C9C9C9C9C9E9E9E
-9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9C9C9C9C9A999494
-948F8989877F7C7674726C67616161616166676667676767676767676661615F5D57767674726E6C
-6A6A67666161615F5F5F5F5F6161676A6C6C7274767C7C7F8187878789898C8E8E8E8E8E8E8E8E8E
-8E8E8E8E8F8F9292929292928F9292929292929292929292929292928F929292928F8F8F8F928F8F
-8E8E8E8F8F8E8E8E8E8E8E8E8F8F8F8E8E8E8E8E8E8E8F8F8F929292929292929292929292929292
-92929292929292929292929292929292949494949494949494949494949494949494949494949494
-9494949494949499969494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494949499
-999A9A9C9C9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A1A1A19E9E9E9E9E9E9C9C9C9C9C9A9A
-9A9A9A9A9A9A9994949494949494949494949494949494949492928F89877C74747C7F8185878789
-89898989898987878584817F7F7C797674747C7F87898C9292929292929292929292928E8E8E8F92
-92949A999494928F87817F7F7F7F7F818485858581817F7F7F7F7F7F7F7F7C7C7C7C7C7C79767676
-767676767674747474747474747476767676767676767676767474747474747676797C7F81848787
-87898C8F929292929494949494999A9A999999999A9A9C9C9C9C9A9C9C9C9C9C9C9C9C9C9C9C9C9C
-9A9A9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9999969494949494949494949494949494929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989878785858585858584
-817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7976767676767674747474747472726E6C6C6C6C6A6A6A
-6A6767676661616161615F5F5F5D595757555555554F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7C7C7F7F7F7F7F7F7F7F81858585858585858587
-898987898989898989898E8E8E8E8E8E929292929292929292949494949494949494949494947C89
-8F949A9CA3A6A9AEB3B9BEC1C6CFD3D9DCE1E4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F4F2F2ECEC
-E7E6E1E1DFDCD9D4D3CFCFCCC8C6C6C6C6C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9
-B9B7B6B3B3B3B3B1B1B1B1B1AEAEAEAEABABABABA9A6A49E9A948F816C6161616166676A6C727274
-747476797C7C7F7F7F7F7F8187878789898C8E8F9292949494969696999A9C9C9C9A9A9A9C9C9C9C
-9E9E9E9C9C9E9E9E9E9EA3A3A3A1A3A3A4A4A4A4A4A4A4A3A3A3A3A1A1A1A19E9C9C9C9A9A999494
-94928E8987847F797674716A67616161616467676767676767676767676661615F5C55767674726C
-6C6A6A676161616161615F616164676A6C6C717274767C7F818587878989898C8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8F8F9292928F8F8F8F929292929292928F929292928F8F8F8F928F8F8E8E8F8F8F8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F929292929292929292929292
-92929292929292929292929292929292929294949494949494949494949494949494949494949494
-9494949494949999999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A969494949494949499999A
-9A9A9C9C9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A
-9A9A9A9A9A9A99969494949494949494949494949494949494928F89877F76767C7F818587878989
-898989898987878784817F7F7F7C79797C7F8487898F9292949494949292929292928F8E8E8F9292
-94999A9494929289857F7F7F7C7F7F8181848584817F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676
-767676767676747474747474767676767676767676767676767674747474747676797C7C7F818587
-8789898E8F9292929294949494969999999694999A9A9A9C9C9C9A9A9C9C9C9C9A9C9C9C9C9C9C9A
-9A9A9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494949494929292929292
-92929292929292928E8E8E8E8E8E8E8E8E8E8C898989898989898989898989878785858585858585
-84817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676767674747474747474726E6C6C6C6C6C6A6A
-6A6A6767676461616161615F5F5F5C575757555555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F8185858585858585878789
-8989898989898989898E8E8E8E8E8E8F92929292929292929294949494949494949494949494818C
-92949A9EA4A6ABB1B6BBC0C6C8CFD4D9DCE1E4E7ECF1F2F4F4F7F7F9F9FAF9F9F7F7F4F4F2F1ECEC
-E7E4E1E1DFDCD9D4D3CFCFCCC8C6C6C6C6C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9
-B9B7B6B3B3B3B3B1B1B1B1B1B1AEAEAEAEABAEAEABA9A6A39C99928C7C6C6161616164676A6C7172
-747476797C7C7F7F7F7F7F81848787878989898E8F929294949494949494999A9A999A9A9A9A9C9C
-9C9C9C9C9C9C9C9E9E9E9E9E9E9E9EA1A3A4A4A3A3A1A19E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9694
-9492928C8987817C7C7674716A67646161616667676767676767676767676661615F59557474726E
-6C6A6A6766616161616161616166676A6C6C71727476797C7F848787898989898C8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8F8F8F8F8E8E8E8F8F929292928F8F8F8F928F8F8E8E8F8F8F8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F929292929292929292
-92929292929292929292929292929292929292929294949494949492929294949494949494949494
-949494949496999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949699999A9A
-9A9C9C9E9EA1A1A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A
-9A9A9A9A9A9A9A9994949494949494949494949494949494928F89877F76797C7F81848787898989
-8989898987878784817F7F7F7F7F7F818587898E92929494949494929292929292928F8E8F929294
-949A999492928E87817C7C7C7F7F7F7F818181817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676
-7676767676767676767476767676767676767676767676767676767474747476797C7C7C7F7F8485
-8787898C8E8F9292929294949494969999949496999A9A9A9C9A9A9A9A9C9C9C9A9A9C9C9C9C9C9A
-9A9A9A9A9C9C9A9A9A9A9A9A9A9A9A9A999996949494949494949494949494949492929292929292
-92929292929292928F8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989878785858585858585
-84817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C797676767676767674747474747472716C6C6C6C6C6A6A
-6A6A6767676661616161615F5F5F5D595757575555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7F7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F81848585858585858587878989
-89898989898989898E8E8E8E8E8E8E8F92929292929292929494949494949494949494949472878E
-92949C9EA4A6AEB1B7BBC1C6C9CFD4D9DFE1E6E7ECF2F2F4F4F7F7F9FAFAF9F9F7F7F4F4F2F1ECEC
-E7E4E1E1DFDCD9D4D3CFCFCCC8C6C6C6C6C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9
-B9B7B6B3B3B3B3B3B1B1B1B1B1B1AEAEAEAEAEAEABA9A6A49E9C949289796C61616161666A6C6C71
-727476767B7C7C7F7F7F7F7F81858787898989898C8F92929294949494949496949999999A9A9A9A
-9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9EA1A1A19E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9A9A9A999994
-9492928F8987857F7C7C76746C6A67616161666767676A6A6A6A6A6A6A6A676661615F5955747472
-6C6C6A6A67616161616161616166676A6A6C6E727274797C7F81878787898989898C8C8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8F8F8E8E8E8E8E8E8F8F928F8F8E8E8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F929292929292
-92929292929292929292929292929292929292929292929494949292929292929494949494949494
-9494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949499999A9A9A9C
-9C9C9E9EA3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9E9C9C9C9C9C9C9C9A9A9A9A9A
-9A9A9A9A9A9A9A99969496999999999999949494949494949289877F767C7F818485878787898989
-89898987878784818181818181848789898F9292949494949994949292929292928F8E8F92929294
-999A9494928F89847F7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C797676
-7676767676767676767676767676767676767676767676767676767674747476797C7C7C7C7F8184
-858789898E8E8F9292929294949494999494949499999A9A9A9A9A9A9A9C9C9A9A9A9C9C9C9C9A9A
-9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A999994949494949494949494949494949492929292929292
-92929292929292928F8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989878785858585858585
-8481817F7F7F7F7F7F7F7F7F7C7C7C7C7C797676767676767674747474747472716C6C6C6C6C6C6A
-6A6A6A67676761616161615F5F5F5F5C575757575555514F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7F7F7F7C7C7C7F7F7F7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184858585858585858787898989
-898989898989898E8E8E8E8E8E8E8F929292929292929292949494949494949494949494947C898F
-94999C9EA6A9AEB1B9BBC1C6CCCFD4D9DFE1E6ECECF2F4F4F4F7F9F9FAF9F9F7F7F4F4F4F2F1ECEC
-E7E4E1E1DFDCD9D4D3CFCFCCC8C6C6C6C6C4C1C1C0C0BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9
-B9B9B6B3B3B3B3B3B1B1B1B1B1B1B1AEAEAEAEAEAEABA9A6A49E9A948F877C7166616166676A6C6C
-71727476797C7C7C7F7F7F7F8184878787898989898C8F9292929292949494949494949999999A9A
-9A9A9A9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A999994
-949292928E8987817F7F7C76726C6A666161646767676A6A6A6A6A6A6A6A6A676661615F59557472
-716C6A6A67666161616161616161676A6A6C6C727274767C7F818587878789898989898C8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F929292
-92929292929292929292929292929292929292929292929292929292929292929292949494949494
-9494949499999A9A9C9C9C9C9A9A9A9A9A9A9C9C9A9A9A9A9A9A9A999494949499999A9A9A9C9C9C
-9C9C9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A999999999A9A9A9A999494949494928F89877C767C7F81858787878989898989
-89898787878787878585858787898C8F929494949496999A94949492929292928F8E8E8F92929494
-999994928F89877F7C7C797C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976
-7676767676767676767676767676767676767676767676767676767674747676797C7C7C7C7F7F81
-848787898C8E8F8F9292929294949494949494949499999A9A9A9A999A9A9C9A9A9A9A9C9C9C9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999694949494949494949494949494949292929292929292
-929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989878787858585858585
-8584817F7F7F7F7F7F7F7F7F7C7C7C7C7C797676767676767674747474747472726C6C6C6C6C6C6A
-6A6A6A67676766616161615F5F5F5F5C575757575555554F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818585858585858585878789898989
-8989898989898E8E8E8E8E8E8E8F9292929292929292929294949494949494949494949494818992
-949A9CA3A6A9AEB3B9BEC1C6CCD1D4D9DFE1E6ECECF2F4F4F7F7F9F9FAF9F9F7F7F4F4F4F2EEECE9
-E7E4E1E1DFDCD9D4D3D1CFCCC9C8C6C6C6C4C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9
-B9B9B6B6B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEABA9A6A6A39C99928C897F7467616167676A6C
-6C72747676797C7C7C7F7F7F818485878789898989898E8F92929292929294949494949494969999
-9A9A9A9A9A9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A99999694
-949292928F8C8987817F7F7C74726C6A666161666767676A6A6A6A6A6A6A6A6A676661615F575472
-726C6C6A6A67666464616161616166676A6C6C71727476797C7F848787878787898989898C8C8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F
-9292929292929292928F929292929292929292929292929292929292929292929292929294949494
-94949496999A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A99949699999A9A9A9A9C9C9C9C
-9C9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949292928E89877C747C7F8185878789898989898989
-8989898787878787878787898E9292949494999A9A9A9A99949492929292928F8E8E8E9292949499
-999494928C89817C79767C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7B767676
-7676767676767676767676767676767676767676767676767676767676767676797C7C7C7C7C7F81
-81848789898C8E8F8F92929292949494949494949494999A9A9A9A999A9A9A9A9A9A9A9A9C9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999494949494949494949494949494949292929292929292
-929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989878787858585858585
-858481817F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676767676747474747472726C6C6C6C6C6C6A
-6A6A6A67676766616161615F5F5F5F5D595757575755554F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184858585858585858587878989898989
-89898989898E8E8E8E8E8E8E8F929292929292929292929494949494949494949494949476878E92
-949A9EA4A6ABB1B6BBC0C4C6CCD3D9DCDFE4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F4F2F2EEECE7
-E6E4E1E1DFDCD9D4D3D1CFCCC9C8C6C6C6C4C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9
-B9B9B6B6B6B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEA9A9A6A49E9C94928E8984766A6164676A6A
-6C6C72747676797C7C7C7F7F7F8184878789898989898C8E8F929292929292929494949494949496
-9999999A9A9A9A9C9C9C9C9C9C9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A99999494
-94949292928E898785817F7C7674716A676161666767676A6A6A6A6C6C6C6C6A6A676661615F5754
-72716C6C6A67666666666664646166676A6A6C6E727274797C7F8184858787878789898989898C8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F
-8F8F8F92929292928F8F8F8F8F929292929292929292929292929292929292929292929292949494
-949494999A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9999999A9A9A9A9C9C9C9C9C9C
-9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A3A19E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949492928E898579747C7F818587878989898989898989
-89898987878989898989898F92949496999A9C9C9C9A9A999494929292928F8E8E8E8F9294949494
-9994928E89877F79767C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7B797676
-7676797C7C797679797976767676767676767676767676767676767676767676767C7C7C7C7C7F7F
-8184878789898C8E8F8F92929294949494949494949496999A9A9999999A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999969494949494949494949494949494949292929292929292
-9292929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898787858585858585
-858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767676767676747474747472726E6C6C6C6C6C6C
-6A6A6A6A67676764616161615F5F5F5F5C575757575555544F4F4F4F4F4F4F4F4F4F4FFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818485858585858585858787898989898989
-898989898E8E8E8E8E8E8E8F9292929292929292929294949494949494949494949494947C898F92
-949C9EA4A6AEB1B7BBC0C6C8CFD3D9DCE1E4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F4F2F2EEECE7
-E6E4E1E1DFDCD9D4D4D1CFCCCCC8C6C6C6C4C1C1C1C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9
-B9B9B7B6B6B6B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEABA9A6A6A49E9C9492928E877C72675D676A
-6A6C6E72747676797C7C7C7F7F818487878789898989898C8E8F9292929292929292949494949494
-94969999999A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A999999949494
-9494929292928C898785817F7C76726C6A6764616767676A6A6A6A6A6C6C6C6C6A6A676661615F57
-51726C6C6A6A676766666666666666676A6A6C6C727274767C7C7F8184858787878989898989898E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8F8F8F8F928F8F8E8E8E8E8F8F8F9292929292928F8F8F929292929292929292929292929494
-949499999A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9E9E
-9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9C9C9C9C9A9A9A9A999494928F8C878179747C7F8185858787898989898989898C
-89898989898C8E8C8C8E929494999A9A9C9C9E9C9C9A99949492929292928E8E8E8E929494949494
-9492928987817C767C7C7C7C7F7F7F7F7F7F7F81818181817F7F8181817F7F7F7F7F7C7C7C7C7979
-797C7C7C7C7C79797C7C7976767676767676767676767676767676767676767679797C7C7C7C7F7F
-818185878989898C8E8F92929292949494949494949494999999999699999A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494949494949292929292929292
-9292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898787878585858585
-858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C6C6C
-6A6A6A6A67676766616161615F5F5F5F5D595757575755554F4F4F4F4F4F4F4F4F4F4F4FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184858585858585858587878789898989898989
-8989898E8E8E8E8E8E8E8F9292929292929292929294949494949494949494949494949481899294
-999CA1A6A9AEB1B9BBC1C6C8CFD4D9DEE1E4E7ECEEF2F4F4F7F7F9F9FAF9F9F7F7F4F4F2F1ECECE7
-E6E4E1E1DFDCD9D4D4D1CFCFCCC8C6C6C6C4C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9
-B9B9B7B7B6B6B6B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEA9A6A6A4A49E9C999492928E877C72675F
-6A6A6C7274747676797C7C7F7F8184858787898989898C8E8E8F9292929292929292929294949494
-949494949999999A9A9A9A9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9C9A99949699949494
-9494929292928F89878785817F7C74726C6A6666666767676A6A6A6A6C6C6C6C6C6A6A676661615D
-57516E6C6C6A6A676767676767666667676A6C6C71727476797C7F7F81848487878989898989898C
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8F8F8F8E8E8E8E8E8E8E8F8F8F9292928F8F8E8F8F8F92929292929292929292929494
-9494999A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9E9E9E
-9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9C9C9C9C9C9C9C9C9A9A9A9A9694928F89877F7674797F818585878789898989898C8C8E8E
-8E8E8C8E8F8F8F8F8F9294999A9C9C9C9E9E9C9C9C9A999494929292928F8E8E8E8F929494949494
-94928E89857C767C7C7C7C7F7F7F7F7F81818484858584818184848481817F7F7F7F7F7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C79767676767676767676767676767676767676797979797C7C7C7C7C7F
-7F818487878989898C8E8F929292929494949494949494949999999494999A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A999996949494949494949494949494949494949292929292929292
-9292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898787878585858585
-85858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767676767676747474747472726C6C6C6C6C6C
-6C6A6A6A6A676767616161615F5F5F5F5F5C575757575555514F4F4F4F4F4F4F4F4F4F4FFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818485858585858585858787898989898989898989
-89898E8E8E8E8E8E8E8F9292929292929292929294949494949494949494949494949476878C9294
-9A9CA3A6A9AEB3B9BBC1C6C9CFD4D9DFE1E6E7ECEEF2F4F4F7F9F9FAFAF9F9F7F4F4F4F2F1ECECE7
-E6E4E1E1DFDCD9D4D4D3CFCFCCC8C6C6C6C6C1C1C1C0BEBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9
-B9B9B9B7B7B6B6B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEABA9A6A6A4A49E9C9A949492928E877C76
-7164576C7274747676797C7F7F7F818487878989898C8E8E8E8F9292929292929292929292929494
-9494949494949999999A9A9A9A9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494
-949492929292928E898787857F7C7974716C6767676767676A6A6A6A6C6C6C6E6C6C6A6A6A66615F
-5C57516C6C6A6A676767676767676767676A6C6C71727474767C7C7F7F818487878789898989898C
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8E8E8E8E8E8F8F9292929292929292929494
-9499999A9A9A9A9C9C9C9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9E9E9E9E
-9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9C9C9C9C9C9C9C9C9C9A9A9994928E89877F7674767C8185858787898989898C8E8F8F9292
-928F92929292929292949A9C9C9C9E9E9E9E9C9C9A9A949492929292928F8E8E8E92949494949494
-928F89877F76767C7C7C7C7F7F818184848585858585858485858585848481817F7F7F7C7C7C7F7F
-7F7F7F7F7F7C7C7C7C7C7C7C76797976767676767676767676767676797979797C7C7C7C7C7C7C7F
-7F818487878989898C8E8E8F929292929494949494949494949996949494999A9A9A9A9A9A9A9A9A
-9A9A9A9A9A999A9A9A9A9A9A9A999994949494949494949494949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898987878785858585
-85858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C76767676767676767474747472726E6C6C6C6C6C
-6C6A6A6A6A676767666161615F5F5F5F5F5D575757575555554F4F4F4F4F4F4F4F4F4F4F4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F81817F8184858585858585878585878789898989898989898989
-898E8E8E8E8E8E8E8F92929292929292929292949494949494949494949494949494947C898F9294
-9A9EA4A6ABB1B6B9BEC1C6CCCFD4D9DFE1E6E7ECEEF2F4F7F7F9F9FAF9F9F7F7F4F4F4F2EEECECE7
-E6E4E1E1DFDCD9D9D4D3CFCFCCC8C6C6C6C6C1C1C1C0BEBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9
-B9B9B9B9B7B7B6B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEABA9A6A6A6A4A4A19C9C9A99949292928F
-897F746E665774747676797C7F7F818487878789898C8E8E8E8E8F92929292929292929292929292
-94949494949494949999999A9A9A9A9A9A9999999999999999999999999999999994949494949494
-949492929292928F8C898787847F7C76746E6A67676767676A6A6A6A6A6C7171716C6C6C6A6A6661
-5F5C576C6C6C6A6A67676767676767676A6A6C6C71727474767C7C7F7F8184858787898989898989
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F9292929292929294
-9494999A9A9A9A9C9C9C9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9E9E9E9EA1
-A3A3A4A4A4A4A4A4A4A4A4A6A4A4A4A39E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9C9C9C9C9C9C9C9C9C9C9A9494928E89857F7674767C7F848587878989898C8E8F9292929292
-9292929494949494999A9C9E9E9E9E9E9E9E9C9C9A999492929292928F8E8E8E8F92949494949494
-928E89857C747C7C7C7C7F7F81848787878785858587878585858585858484817F7F7C7C7F7F8481
-7F7F7F7F7F7F7F7C7C7C7C7C7979797976767676767676767676797979797C7C7C7C7C7C7C7C7C7F
-7F81848787878989898C8E8F8F929292929494949494949494969494949499999A9A9A9A9A9A9A9A
-9A9A9A9A9A999A9A9A9A9A9A99999694949494949494949494949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898987878785858585
-8585858581817F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767676767676747474747472716C6C6C6C6C
-6C6C6A6A6A6A676767616161615F5F5F5F5F59575757575555514F4F4F4F4F4F4F4F4F4F4FFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F81848181848585858585858787878787898989898989898989898C
-8E8E8E8E8E8E8E8F9292929292929292929292949494949494949494949494949494948189929499
-9C9EA4A6AEB1B6BBC0C1C6CCD1D7D9DFE1E6E7ECF1F2F4F7F7F9F9FAF9F9F7F7F4F4F2F2EEECECE7
-E6E4E1DFDFDCD9D9D4D3CFCFCCC8C6C6C6C6C1C1C1C0BEBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9
-B9B9B9B9B9B7B7B6B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEAEA9A9A6A6A6A4A4A49E9E9C9A99949494
-94949492897F715F7476767C7C7F7F818487878989898C8C8E8E8F8F929292929292929292929292
-929294949494949494949999999A9A99999694949494949494949494949494949494949494949494
-94929292929292928F89898987817F7C76726C6A67676767676A6A6A6A6C6C7272716C6C6C6C6A66
-615F5C576C6C6C6A676767676767676A6A6A6C6C72727474767C7C7F7F7F81848787898989898989
-8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C89
-8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8E8E8F8F8F929292929292
-949494999A9A9A9A9C9C9C9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9E9EA1A3A3
-A4A4A4A4A4A4A4A4A6A6A6A6A4A4A4A39E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9C9C9C9C9E9C9C9C9C9A9492928E89857F7674767C7F848587878989898E8F92929294949494
-949494949499999A9C9C9E9E9EA1A19E9E9E9C9C99949292929292928F8E8E8F9294949494949492
-8F89877F747C7C7C7C7F7F8187878787878787878787878785878787878784817F7F7F8187878784
-818181817F7F7F7C7C7C7C7C7C7B7C7C7976767676767676797979797C7C7C7C7C7C7C7C7C7C7C7F
-7F8181858787878989898C8E8F8F929292949494949494949494949494949499999A9A9A9A9A9A9A
-9A9A9A9A9999999A9A9A9A9A99999494949494949494949494949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989878787858585
-8585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7B76767676767676747474747472726E6C6C6C6C
-6C6C6A6A6A6A676767666161615F5F5F5F5F5C575757575555544F4F4F4F4F4F4F4F4F4F4F4FFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F818485848485858585858587878787878789898989898989898989898E
-8E8E8E8E8E8E8E92929292929292929292929294949494949494949494949494949479878C92949A
-9C9EA4A9AEB1B7BBC0C4C6CCD3D9DCDFE4E7E9ECF1F2F4F7F7F9F9FAF9F9F7F7F4F4F4F2EEECECE7
-E6E4E1DFDFDCD9D9D4D3D1CFCCC8C6C6C6C6C4C1C1C0C0BEBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9
-B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEABA9A6A6A6A6A4A4A4A4A39E9C9C9A9A
-9A9999999996927F715974767C7F7F7F81848789898989898C8E8E8F8F9292929292929292929292
-92929294949494949494949499999999949494949494949494949494949494949494949292929294
-9292929292929292928E898987847F7F7C74726C6A6A6A6A6A6A6A6A6A6C6C717272716C6C6C6C6A
-66615F5C556C6C6A6A676767676767676A6A6C6C72727476767C7C7C7F7F81848787878989898989
-8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989
-89898C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8E8E8E8C8C898C8C8E8E8F8F8F92929292
-9294949499999A9A9C9C9C9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9E9EA3A4A4
-A4A4A4A4A4A6A6A6A6A6A6A6A4A4A3A19E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9C9C9C9C9C9C9C9C9C9A9694928E89857F7674767C7F8185858789898C8E929294949494999494
-9496999A9A9A9C9C9E9EA1A3A4A4A4A3A39E9C9A94949292929292928E8E8F929494949494949492
-8C898176767C7C7C7F818487878789898787878787878787878787878787817F818185878C898787
-85848484817F7F7F7C7C7C7C7C7C7C7C7C7976767676797979797C7C7C7C7C7C7C7C7C7C7C7F7F7F
-7F7F8184878787898989898C8E8F929292929494949494949494949494949494999A9A9A9A999A9A
-9A9A9A9A999999999A9A9A9999969494949494949494949494949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989878787858585
-858585858481817F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767676767676747474747472716C6C6C6C
-6C6C6A6A6A6A67676766616161615F5F5F5F5D595757575755554F4F4F4F4F4F4F4F4F4F4F4FFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F817F7F7F
-7F7F7F7F7F817F7F7F81848585858585858585858587878987878989898989898989898989898C8E
-8E8E8E8E8E8E8F9292929292929292929292949494949494949494949494949494947C898E92949A
-9C9EA4A9AEB1B9BBC1C6C8CFD3D9DCE1E4E7ECECF1F2F4F7F7F9F9FAF9F9F7F7F4F4F4F2EEECECE7
-E6E4E1DFDFDCD9D9D4D3D1CFCCC9C8C6C6C6C4C1C1C1C0BEBEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9
-B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEAEABA9A9A9A6A6A6A6A6A6A6A4A4A19E9E
-9E9C9C9C9C9C9A96927C6774797C7F7F7F81878787898989898C8E8E8E8F8F929292929292929292
-92929294949494949494949494949994949494949494949494949494949492929292929292929292
-9292929292929292928F8E898987817F7F7974726C6A6A6A6A6A6A6A6A6A6C71727272716E716E6C
-6A67615F5C556C6C6A6A6767676767676A6A6C6C7272747476797C7C7F7F81848587878989898989
-898E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989
-89898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898C8E8C898989898C8C8E8E8F8F8F9292
-92929294949496999A9C9C9E9E9E9E9C9C9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9E9EA1A4A4A4
-A4A4A4A6A6A6A6A6A6A6A6A4A4A39E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9C9C9C9C9A9A9A9A9994928E89857F7976767C7F8185858789898C8F9292949496999A9A9999
-9A9A9A9C9C9C9C9E9EA4A4A4A4A4A4A4A19E9C9A949292929292928F8E8E9292949494949494928E
-89877C7479797F7F848787898989898989878989898989898989898787858181848789928F898987
-8787878584817F7F7F7C7C7C7C7C7C7C7C797676797979797B7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F
-7F7F818485878787898989898E8E8F929292929494949492949494949494949496999A9A9999999A
-9A9A9A99999694999A9A9A9999949494949494949494949494949494949494949492929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989898787858585
-858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767676767676747474747472726C6C6C6C
-6C6C6C6A6A6A6A676767646161615F5F5F5F5F5C575757575555544F4F4F4F4F4F4F4F4F4F4FFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF817F7F8181
-817F7F81848181818485858585858585858585878787898989898989898989898989898989898E8E
-8E8E8E8E8E8E9292929292929292929292929494949494949494949494949494947481898F94999C
-9EA1A6A9AEB3B9BBC1C6C8CFD4D9DFE1E6E7ECECF1F2F4F7F7F9F9FAF9F9F7F7F4F4F4F2EEECECE7
-E6E4E1DFDFDCD9D9D4D3D1CFCCC9C8C6C6C6C4C1C1C1C0BEBEBEBEBBBBBBBBBBBBB9B9B9B9B9B9B9
-B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAEABABA9A9A6A6A6A6A6A6A6A6A6A4A4
-A4A3A1A19E9E9C9C9A947C61767C7C7F7F7F848787878989898C8E8E8E8E8F929292929292929292
-929292949494949494949494949494949494949292929292929292929292929292929292928F8F92
-929292929292929292928F8C898987817F7C7674726C6A6A6A6A6A6A6A6A6C6C727272727172726E
-6C6A67665F59546C6A6A6A67676767676A6A6C6C7272747476797C7C7F7F7F818487878989898989
-898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-8989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E
-8E8E8E8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8E8C8C898989898989898989898989898C8E8E8F8F8F
-9292929292949494949A9A9C9C9C9C9C9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9E9EA3A4A4A4
-A4A4A6A6A6A6A6A6A6A6A4A4A39E9E9E9E9C9C9C9A9A9A9A999999999A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9C9C9C9A9A99999494928E89877F7C76767C7C7F8585858789898F92949494999A9A9C9A9A9A
-9C9C9C9C9C9E9EA1A4A4A4A6A6A6A4A39E9C9C99949292929292928F8E8F92949494949494928F89
-877F7476767F8187878989898989898989898989898C8C898989898987858487878C9294928E8989
-8987878784817F7F7F7C7C7C7C7C7C7C7C7C797979797B7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F
-7F7F818485858787878989898C8E8E8F929292929494929294949494949494949499999A9999999A
-9A9A9A9999949499999A999996949494949494949494949494949494949494949492929292929292
-929292929292928E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989898787858585
-858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676767676747474747472716C6C6C
-6C6C6C6A6A6A6A676767666161615F5F5F5F5F5D595757575555554F4F4F4F4F4F4F4F4F4F4F4FFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8181848484
-818184858584848585858585858585858585878787898989898989898989898989898989898C8E8E
-8E8E8E8E8E8F9292929292929292929292949494949494949494949494949494947C878C9294999C
-9EA3A6ABB1B3B9BBC1C6CCCFD4D9DFE1E6E7ECECF1F2F4F7F9F9FAFAF9F9F7F7F7F4F4F2EEECECE7
-E6E4E1DFDFDCD9D9D4D3D1CFCCCCC8C6C6C6C4C1C1C1C0C0C0BEBEBBBBBBBBBBBBB9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEABABABA9A9A9A9A9A9A9A9A9A9A9A9
-A6A6A6A6A4A39E9C9C9A8F746A767C7C7F7F81848787878989898E8E8E8E8F929292929292929292
-92929292949494949494949494949494949492929292929292929292928F8F8F8F8F8F8E8E8E8E8F
-9292928F8F9292929292928E89898784817F7C7674726C6A6A6A6A6A6A6A6C6C7172747272727272
-6E6C6A6A665F57516C6C6A6A676767676A6A6C6C7172747476767C7C7C7F7F818487878789898989
-898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989
-8989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F
-8E8E8E8E8E8F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898C8E8E8F
-8F8F9292929292949494999A9A9A9A9A9A96999A9A9A9A9A9C9C9C9C9C9C9C9C9E9E9E9EA3A4A4A4
-A4A4A6A6A6A6A6A6A4A4A4A39E9E9E9E9E9C9C9A9A999999969496999A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9994949494928F8987817C79767C7C7F8485858789898E929494999A9A9C9C9C9C9C9C
-9C9C9E9E9E9EA3A4A6A6A6A6A6A4A49E9E9C9A949292929292928F8F8F9292949494949492928E89
-847976767C8187898989898C8C8C89898989898C8E8E8E8C89898987878587878C929A9494928E8C
-898787878584817F7F7F7C7C7C7C7C7C7C7C7B79797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F81848585878787878989898C8E8F8F9292929494929292949494949494949494999999949699
-9A9A9999969494949999999994949494949494949494949494949494949494949492929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989898787858585
-858585858585817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767676767676747474747472726C6C6C
-6C6C6C6C6A6A6A6A676767616161615F5F5F5F5F5C575757575555514F4F4F4F4F4F4F4F4F4F4FFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8485858585
-848585858585858585858585858585858787878989898989898989898989898989898989898E8E8E
-8E8E8E8E8E8F9292929292929292929294949494949494949494949494949494947F898E92949A9C
-9EA4A6AEB1B6B9BEC1C6CCD1D4D9DFE1E6E7ECECF1F2F4F7F9F9FAFAF9F9F9F7F7F4F4F2EEECECE7
-E6E4E1DFDFDCD9D9D4D3D1CFCFCCC8C6C6C6C4C1C1C1C0C0C0C0C0BBBBBBBBBBBBBBB9B9B9B9B9B9
-B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEABABABA9A9A9A9A9A9A9A9A9ABAB
-AEABA9A9A6A6A4A19E9C9989766E797C7C7C7F818587878789898C8E8E8F8F929292929292929292
-929292929494949494949494949494949494929292928F8F8F8F8F8F8F8E8E8E8C8C8C8C8C8C8C8C
-8F92928F8E8F92929292928E8989898784817F7C7474716C6C6C6C6C6C6C6C6C7172747472727272
-726E6C6A6A665F574F6C6C6A6A6A6A6A6A6A6A6C6E7272747476797C7C7F81818485878789898989
-8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989
-898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8E8E8E8F9292928F
-8F8F8F8E8F8F929292928F8F8F8E8E8E8E8E8E8E8C89898989898989898989898989898989898C8E
-8E8F8F8F9292929292949494999999969494999A9A9A9A9A9C9C9C9C9C9E9E9E9E9E9EA1A4A4A4A4
-A4A4A6A6A6A6A4A4A4A4A39E9E9E9E9C9C9C9C9A999994949494949999999999999A9A9A9A9A9A9A
-9A9A9A9A9994949292928E8987817F7C767C7C7F8185858587898C929294999A9C9C9C9C9C9C9C9C
-9E9E9E9EA1A4A4A6A6A6A6A6A6A4A19E9C9C9994929292929292928F9292949494949494928F8987
-7C7476797F848989898C8E8E8E8E8C898C8E8E8E8F8F8E8E8C89898787878789929A9C9A9492928F
-89898787878481817F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F7F81858585878787898989898C8E8F9292929292929292929494949494949494969996949499
-999A9999949494949699999494949494949494949494949494949494949494949492929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898787878585
-85858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C76767676767676767474747472726E6C6C
-6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5D575757575555554F4F4F4F4F4F4F4F4F4F4F4F
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585858585
-8585858585858585858585858585858787878989898989898989898989898989898989898E8E8E8E
-8E8E8E8E8F9292929292929292929294949494949494949494949494949494947681898F94969A9C
-9EA4A6AEB1B7BBC0C1C6CCD1D9DCDFE1E6E7ECECF2F2F4F7F9F9FAFAFAF9F9F7F7F4F4F2EEECECE7
-E6E4E1DFDFDCD9D9D4D3D1CFCFCCC8C6C6C6C6C1C1C1C0C0C0C0C0BBBBBBBBBBBBBBB9B9B9B9B9B9
-B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEAEAEAEAEABABAEAEAEAEABABABABAEAE
-AEAEAEAEABA9A6A4A39C9A94877C746C7C7C7C7F8187878789898C8E8E8F92929292929292929292
-929292929292949494949494949494949492929292928F8E8E8E8E8E8E8989898989898989898989
-8C8E8F8E8C8E92929292928F8C89898787847F7C797472716C6C6C6C6C6C6C6C6C72727474727474
-72726E6C6A67615F574F6C6C6A6A6A6A6A6A6A6C6C7272747476797C7C7F8181848487878989898C
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-898C898989898C8E8E8E8E8E8E8E8F8F8E8E8E8E8E8E8E8E8F8E8E8E8E8F92928F8F8F9292929292
-92928F8F8F92929292929292928F8F8F8E8E8E8E8E8989898989898989898989898989898989898C
-8E8E8E8F8F8F929292929294949494949496999A9A9A9A9C9C9C9C9E9E9E9E9E9E9E9EA3A4A4A4A4
-A4A4A6A4A4A4A4A4A4A49E9E9C9C9C9C9C9C9A9A999494949494949499969494999A9A9A9A9A9A9A
-9A9A999494949292928E8987847F7C797C7F7F818585858787898F9294999A9C9C9C9E9E9C9C9C9E
-9EA1A3A4A4A4A6A6A6A6A6A6A4A39E9C9C9A949492929292929292929294949494949494928C897F
-7476767F8187898C8E8E8F8F8F8E8E8E8F92928F928F8F8E89898787878989929A9E9C9C9A94928F
-8C898987878784817F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F7F8184858585878789898989898E8E8F92929292929292929494949494949494949994949494
-99999996949494949499999494949494949494949494949494949494949494949492929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898987878585
-85858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676767676747474747472716C6C
-6C6C6C6C6C6A6A6A6A676767616161615F5F5F5F5F59575757575555514F4F4F4F4F4F4F4F4F4F4F
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585858585
-85858585858585858585858585878787898989898989898989898989898989898989898E8E8E8E8E
-8E8E8E8F929292929292929292929494949494949494949494949494949494947C87899294999C9E
-9EA4A9AEB1B9BBC0C6C8CFD3D9DCDFE4E7E9ECEEF2F4F7F7F9F9FAFAFAF9F9F7F7F4F4F2EEECECE7
-E6E4E1DFDFDCD9D9D4D3D3CFCFCCC8C6C6C6C6C1C1C1C1C1C0C0C0BEBBBBBBBBBBBBB9B9B9B9B9B9
-B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEABAEAEAEAEAEAEABAEAEAE
-AEAEB1AEAEAEA9A6A49E9C9A94897F76724F7C7F818587878989898E8F8F92929292929292929292
-9292929292929292949494949494949492929292928F8F8E8C8C8C8C898989898989898989898989
-89898C8E898C8F929292928F8E8989898787817F7C767472716C6C6C6C6C6C6C6C71727474747474
-7472726E6C6A67615D556C6C6C6A6A6A6A6A6A6C6C7172747476797C7F7F8184848587878789898C
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-8C8E8E8C8C8C8E8E8F8E8E8E8E8F92928F8F8F8E8E8E8E8F8F8F8F8F8F8F92929292929292929292
-9292929292929292929292929292928F8F928F8F8E8C8C898989898989898989898989898989898C
-8E8E8E8E8E8E8F8F929292949494949494999A9A9A9A9A9C9C9C9E9E9E9E9E9EA1A1A3A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A19E9C9C9C9C9C9C9C9A9996949494949494949494949496999A9A9A999999
-999994949492928F8C8987847F7F7C797F7F818585858587898E9294949A9C9C9E9E9E9E9C9C9E9E
-A4A4A4A4A6A6A6A9A9A9A9A6A49E9E9C9A999492929292929292929294949494949494928F89877C
-74767C81878C8E8E8F8F9292928F8F929292929292928F8E898989878989929A9E9E9E9E9C9A9492
-8E89898787878584817F7F7F7C7C7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F7F8184858585878789898989898C8E8F8F929292929292929294949494949494949494949494
-96999994949494949494949494949494949494949494949494949494949494949292929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898987878585
-85858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C76767676767676747474747472726E6C
-6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5C575757575555544F4F4F4F4F4F4F4F4F4F4F
-4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585858585
-8585858585858585858585878787898989898989898989898989898989898989898C8E8E8E8E8E8E
-8E8F8F92929292929292929292929494949494949494949494949494949494727F878E92949A9C9E
-A3A6A9AEB3B9BBC1C6CCCFD3D9DCE1E4E7ECECEEF2F4F7F7F9F9FAFAFAF9F9F7F7F4F2F2EEECECE7
-E6E4E1DFDFD9D9D9D4D3D3CFCFCCC8C6C6C6C6C1C1C1C1C1C1C0C0BEBBBBBBBBBBBBB9B9B9B9B9B9
-B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEB1B1B1B1AEAEABA6A49E9C9A9489817C74617C7F8487878789898C8E8F92929292929292929292
-92929292929292929292949494949492929292928F8F8E8E8C898989898989878787878787878787
-8989898989898E8F92928F8F8F898989898784817F7C7674726E6C6C6C6C6C6C6C71727474747474
-747472726C6C6A666159546C6C6C6A6A6A6A6A6A6C6E72727474767C7F7F81848587878787898989
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8E8E8E8C8C8C
-8E8E8F8E8E8E8E8F8F8F8F8F8F8F929292928F8F8F8F8F92929292928F9292929292929292929492
-9292929292929292949492929292929292929292928F8E8E8C8C8C8C8C8E8E8C8C89898989898989
-8E8E8E8E8E8E8E8E8F9292929494949496999A9A9A9A9A9C9C9E9E9E9E9E9EA1A3A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A3A19E9C9C9C9C9C9C9A9A9A999494949494949494949494949499999999999694
-94949492928F8E8C898784817F7C7C7F7F7F848585858787898F92949A9C9C9E9E9E9E9E9E9E9EA4
-A4A6A6A6A6A6A9ABA9A9A9A6A49E9C9C9A949492929292929292929494949494949492928C877F74
-767C8187898E8F8F9292929292929294949494929292928E898989898C8F949CA4A4A39E9E9C9492
-8F89898987878784817F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F
-7F7F7F8184858585878789898989898C8E8E8F8F9292929292929292949494949494949494949494
-94999494949494949494949494949494949494949494949494949494949494949292929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898987878585
-85858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676767676747474747472716C
-6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5F5D595757575755554F4F4F4F4F4F4F4F4F4F4F
-4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585858585
-85858585858585858585878787898989898989898989898989898989898989898C8E8E8E8E8E8E8E
-8F9292929292929292929292929494949494949494949494949494949494947984898F92949A9C9E
-A4A6ABB1B3B9BBC1C6CCCFD4D9DFE1E6E7ECECEEF2F4F7F7F9FAFAFAFAF9F9F7F7F4F2F2EEECECE7
-E6E4E1DFDFD9D9D9D4D3D3D1CFCCC9C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9
-B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEB1AEAEAEAEAEAE
-B1B1B1B1B1B1AEAEA9A6A49E9C9A968C877F7C71578185878789898C8E8F92929292929292929292
-929292929292929292929292949494929292928F8F8E8E8C89898989898987878785858585858587
-8787898989898C8E8F8F8F8F8E8C8989898787847F7C7C7674726E6E6E6E6E717171727274747474
-74747472726C6A67615F574F6C6C6C6A6A6A6A6A6C6C72727474767C7F7F81848787878787898989
-8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8E8E8E8E8E8E8E8E8F8E8E8E8E8F8F928F8F8E8E8E8E
-8E8F8F8F8F8F8F92929292928F929292929292929292929292929292929292929292929292949494
-94949292929292949494949492929292929494949292928F8F8E8F8F8F8F8F8E8E8C8C898989898C
-8C8E8E8F8F8F8E8E8F92929294949494999A9A9C9C9C9C9C9C9E9E9E9E9E9EA4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A3A1A19E9E9C9C9C9C9A9A9A9A99969494949494949494949494949494949494949494
-949492928F8E89898785817F7C7C7C7F81818585858787898E9294999A9C9E9E9E9E9E9E9E9EA4A6
-A6A6A6A9A9A9ABAEABA9A9A6A39C9C9A969492929292928F8F929294949494949494928E89877976
-7C8187898E8F929292929294949494949494949292928F8E8989898C92949CA1A4A4A4A4A19C9492
-8F8C89898787878584817F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F7F7F8185858587878789898989898E8E8E8F9292929292929292929494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494929292929292929292
-9292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989898987878585
-85858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7976767676767676747474747472726E
-6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5C575757575555544F4F4F4F4F4F4F4F4F4F
-4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585858585
-858585858585858587878789898989898989898989898989898989898989898C8E8E8E8E8E8E8E8F
-929292929292929292929292929494949494949494949494949494949494947C87899294999C9E9E
-A4A6ABB1B6B9C0C1C6CCD1D4D9DFE1E6E7ECECF1F2F4F7F9F9FAFAFAFAF9F9F7F7F4F2F2EEECECE7
-E6E4E1DFDFD9D9D9D4D3D3D1CFCCC9C8C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9
-B9B9B9B9B9B9B9B7B6B6B6B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEB1B1AEAEAEB1B1
-B1B1B1B1B1B1B1AEAEA9A6A39E9C9A998F89847F76668587878989898E8F92929292929292949492
-9292929292929292929292929292929292928F8F8E8E8C8989898989878787858481818181818181
-84878787898989898E8F8F8E8E8E8C8989898785817F7C7C76747271717171727272727274747474
-7474747472726C6A67615F556C6C6C6C6C6C6C6C6C6C7172747476797C7F81848787878789898989
-8C8E8E8E8E8E8E8E8E8E8F8E8E8E8E8F8F8F8F8F8E8E8E8E8E8F8F8F8F8F8F92929292928F8F8F8F
-8F8F9292929292929292929292929292929292929292929294929292929292949494929294949494
-949494949292949494949494949494929494949494949292929292929292928F8F8E8E8E8E8E8E8E
-8E8E8F8F92928F8F8F929292949494999A9A9C9C9C9C9C9C9E9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4
-A4A4A3A3A19E9E9E9E9C9C9A9A9A9A9A999996949494949494949494949494949494949494949494
-9292928F8C89898785817F7F7C7C7F81818585858587898C9294949A9C9C9E9E9E9E9E9E9EA4A6A6
-A9A9A9ABAEAEAEAEAEABA6A49E9C9A999492929292928F8E929294949494949494928F89877F767C
-7F8787898E8F929292949494949494969494949492928F8C89898C8F92999EA4A6A6A4A4A49C9992
-928E8989898787878481817F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F
-7F7F7F7F8184858585878789898989898E8E8E8E8F92929292929292929494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494929292929292929292
-9292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989898987878585
-85858585858585817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676767674747474747271
-6C6C6C6C6C6C6A6A6A6A67676766616161615F5F5F5F5D595757575755554F4F4F4F4F4F4F4F4F4F
-4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585858585
-8585858585858787878989898989898989898989898989898989898989898E8E8E8E8E8E8E8E8F92
-929292929292929292929292949494949494949494949494949494949494747F878E92949A9C9EA3
-A4A6AEB1B6BBC0C6C8CFD3D4D9DFE1E6E7ECECF1F2F4F7F9F9FAFAFAFAF9F9F7F7F4F2F2EEECECE7
-E6E4E1DFDFD9D9D9D4D4D3D1CFCCCCC8C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B7B6B6B6B3B3B3B3B3B3B3B3B1B1B1B1B1AEAEAEAEAEAEAEB1B1B1B1B1B1B1B1
-B1B1B1B1B1B1B1AEAEABA6A4A39E9C9C9A928C87817C724F878789898C8E8F929292929294949494
-9292929292929292929292929292929292928F8E8E8C8989898989878787858481817F7F7F7F7F7F
-8184878787878989898E8F8E8E8C8C898989898784817F7C79767472727272727272727274747474
-747474747472716C6A665F594F6C6C6C6C6C6C6C6C6C7172747474767C7F7F818587878989898989
-898E8E8E8F8F8E8E8E8F8F8F8F8F8F8F929292928F8F8F8F8F8F9292929292929292929292929292
-92929292929292949492929292929292949492929294949494949492929292949494949494949494
-94949494949494949494949494949494949494949494949492929292929292928F8F8F8E8F8F8F92
-8F8F8F929292929292929294949494999A9A9C9C9C9C9C9C9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4
-A4A3A19E9E9E9E9E9C9C9A9A9A999999949494949494949292929294949494949494949494949292
-928F8E8989898787847F7F7F7F7F8184858585858789898F9294999C9C9E9E9E9E9E9E9EA3A6A6A9
-ABAEAEAEAEAEAEAEABA9A6A39C9C999494929292928F8E8F929294949494949494928E898574797F
-8789898E8F92929494949494999999999494949494928F8C8C898F92949CA1A6A6A6A6A6A49E9A94
-928F8989898987878584817F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F
-7F7F7F7F8184858585878789898989898C8E8E8E8F8F929292929292929294949494949494949494
-94949494949494949494949494949494949494949494949494949494949492929292929292929292
-92929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989898987878585
-85858585858585817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C797676767676767674747474747272
-6C6C6C6C6C6C6C6A6A6A6A676767646161615F5F5F5F5F5C575757575555514F4F4F4F4F4F4F4F4F
-4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585858585
-858585858787878789898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8F9292
-9292929292929292929292929494949494949494949494949494949494947C84898F92949A9C9EA4
-A6A9AEB1B9BBC1C6C9CFD3D9DCDFE4E6E7ECECF2F2F4F7F9F9FAFAFAFAF9F9F9F7F4F2F2EEECECE7
-E6E4E1DFDFD9D9D7D4D4D3D1CFCFCCC8C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBB9B9B9B9B9
-B9B9B9B9B9B9B9B9B7B7B6B6B6B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEAEAEAEAEB1B1B1B1B1B1B1B1
-B1B1B1B1B1B1B1AEAEAEABA6A4A39E9E9C9C949289857F765E8789898C8E8F929292929292949494
-92929292929292929292929292929292928F8F8E8C89898989898787878584817F7F7F7F7F7F7F7F
-7F7F84858787878789898E8E8C8C8C8C8989898787847F7F7C767474727272727272727272747474
-747474747474726C6A67615F554F6C6C6C6C6C6C6C6C6C72727474767C7F7F818487878989898989
-8C8E8E8F928F8F8F8F8F9292928F8F92929292929292929292929292929292949492929292929292
-92929292929494949494949292929294949494949494949494949494949294949494949494949494
-949494949494949494949494949494949494949494949494949492949292929292928F8F8F929292
-9292929292929292929292949494999A9A9C9C9C9C9E9E9E9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4
-A39E9E9E9E9E9E9C9C9A9A9999999494949494949492929292929294949494949292929292929292
-8F8E898989878785817F7F7F7F8184848585858787898E9294969A9C9E9E9E9E9E9E9EA3A4A6ABAE
-AEAEAEAEAEB1AEAEA9A9A49E9C9A9494949292928F8E8E8F9292949494949494928F898774767F87
-898C8E8F929494949496999A9A999A999994949494928F8E8E8E8F92999EA4A6A6A6A6A6A49E9C94
-928F8C8989898787878481817F7F7F7F7F7F7C7C7F7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F
-7F7F7F7F8184858585878789898989898C8E8E8E8E8F929292929292929292949494949494949494
-94949494949494949494949494949494949494949494949494949494949292929292929292929292
-92929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898987878785
-8585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767676747474747472
-716C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5D575757575555554F4F4F4F4F4F4F4F4F
-4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585858585
-8585878787878989898989898989898989898989898989898C89898C8E8E8E8E8E8E8E8E8F929292
-9292929292929292929292949494949494949494949494949494949494947C87899294999C9C9EA4
-A6A9AEB1B9BBC1C6CCCFD4D9DCE1E4E7ECECEEF2F4F7F7F9F9FAFAFAFAFAF9F9F7F4F2F2EEECECE7
-E6E4E1DFDFD9D9D7D4D4D3D1CFCFCCC8C6C6C6C6C1C1C1C1C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B7B7B6B6B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEAEAEB1B1B1B1B1B1B1B1
-B3B3B1B1B1B1B1AEAEAEABABA6A6A4A19E9C9C9A928C878176678989898E8F929292929292949494
-949292929292929292929292929292928F8F8E8C8C898989898787878584817F7F7F7C7C7C7C7C7C
-7C7F7F81848485878789898E8C89898C8C8989898785817F7C7C7674747272727272747474747474
-74747474747474726C6A666159546C6C6C6C6C6C6C6C6E71727476767C7C7F81848787878989898C
-8E8E8F8F9292928F8F92929292929292929292929292929292929292929494949494949492929294
-94949494949494949494949494929494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949492929292929292929292
-9292929292929292929294949496999A9A9C9C9C9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4
-A39E9E9E9E9E9C9C9A9999969494949494949292929292929292929292929292929292929292928F
-8E8C898987878784817F7F7F818587878787878789898F92949A9C9C9EA3A19E9EA1A4A4A6A9AEAE
-B1B1B1B1B1B1AEABA9A6A39C9A9994949292928F8E8F8F9292949494949494928F89877F747F8589
-8E8F929294949496999A9A9C9A9A9A9A9994949494928E8E8E8F92949CA1A6A6A6A9A6A6A49E9C94
-92928E8C89898987878584817F7F7F7F7F7F7C7F7F7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F
-7F7F7F7F8184858585878789898989898C8E8E8E8E8E8F9292929292929292949494949494949494
-94949494949494949494949494949494949494949494949494949494949292929292929292929292
-92929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989878785
-8585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767676747474747472
-726C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5F5F59575757575555514F4F4F4F4F4F4F4F
-4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8787878585
-87878787898989898989898989898989898989898989898E8E8C8C8E8E8E8E8E8E8E8E8F92929292
-9292929292929292929294949494949494949494949494949494949494767F878E92949A9C9EA1A4
-A6ABAEB6B9C0C1C6CCD1D4D9DEE1E4E7ECECEEF2F4F7F7F9F9FAFAFAFAF9F9F7F7F4F2F2EEECECE7
-E6E4E1DFDED9D9D7D4D4D3D1CFCFCCC8C6C6C6C6C1C1C1C1C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B7B7B6B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEB1B1B1B1B1B1B1B1B1
-B3B3B3B3B1B1B1AEAEAEABABABA6A6A4A39E9E9E9C94928E84797189898C8E8F9292929292929494
-9292929292929292929292929292928F8F8E8E8C898989898987878481817F7F7F7C7C7C7C797979
-7C7C7C7F81818185878789898C89898C8C898989898784817F7C7976747474747474747474747474
-74747474767474726E6C67615F574F6C6C6C6C7171717171727476767C7C7F81818587878989898E
-8E8F8F92929292929292929292929292929294929292929494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949292929292929292
-929292929294949494949494999A9A9C9C9C9C9E9E9E9E9E9E9EA1A1A3A3A4A4A4A4A4A4A4A4A4A4
-A19E9E9E9C9C9C9A9996949494949494929292929292929292929292929292929292929292928F8F
-8E89898987878784818181818587878787878789898E9294999A9C9EA1A4A19E9EA4A4A6A9AEB1B1
-B1B1B1B1B1B1AEA9A6A49E9C99949492928F8F8E8F92929292949494949492928E8981747C87898F
-929294949499999A9A9C9C9C9C9C9A9A99999494928F8E8E8E8F92999CA4A6A6A9A9A9A6A49E9C99
-94928E8C8989898787878584817F7F817F7F7F7F7F7F7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F8185858587878789898989898E8E8E8E8E8F8F92929292929292929494949494949494
-94949494949494949494949494949494949494949494949494949494929292929292929292929292
-92929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989878787
-8585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767676767474747472
-72716C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5C575757575555544F4F4F4F4F4F4F4F
-4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8787878787
-8787898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8F929292929292
-92929292929292929294949494949494949494949494949494949494947C84898F92949A9C9EA4A4
-A9AEB1B6BBC0C6C8CFD3D4D9DFE1E6E7ECECF1F2F4F7F9F9FAFAFAFAFAF9F9F7F7F4F2F2EEECECE7
-E6E4E1DFDED9D9D7D4D4D3D3CFCFCCC8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1
-B3B3B3B3B3B1B1B1AEAEAEABABABA6A6A4A3A19E9E9E9C948F857C6C898C8E8F9292929292929294
-92929292929292929292929292928F8F8E8E8C8989898989878784817F7F7F7F7C7C7C7976767676
-767676797C7F7F8185878789898989898C8C8989898787847F7F7C79767474747474747474747474
-7474767676767474726C6A676159554F6C6C6C7172727272727274767C7C7F7F818487878989898C
-8F8F9292929292929292929294929292929494949492949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949492929292929294
-94929292949494949494999A9A9A9C9C9C9C9C9E9E9EA1A1A1A3A3A3A4A4A4A4A4A4A4A4A4A4A4A3
-9E9E9C9C9C9C9A999494949494949292929292929292929292929292929292929292929292928F8E
-8C89898989878784848181848787878787878989899294949A9C9E9EA3A4A39EA3A4A6A6ABAEB1B1
-B3B3B1B1B1B1AEA9A6A39C9A949492928F8E8E8F92929292949494949494928F8987747C87898F92
-94949494999A9A9C9C9C9C9C9C9C9C9A9A999494928E8E8E8F92949A9EA4A6A6A9A9A9A6A49E9C9A
-94928F8E8C89898987878784817F8181817F7F7F7F7F7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F8184858585878789898989898C8E8E8E8E8E8F8F929292929292929294949494949494
-94949494949494949494949494949494949494949494949494949494929292929292929292929292
-9292929292928E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989878787
-858585858585858481817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767676767474747474
-72716C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5F5D59575757575555514F4F4F4F4F4F4F
-4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8787878789
-89898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292
-92929292929292929494949494949494949494949494949494949494767F87899294999C9C9EA4A6
-A9AEB1B7BBC1C6CCCFD3D7D9DFE1E6E7ECECF1F2F4F7F9F9F9FAFAFAFAF9F9F7F7F4F2F1ECECECE7
-E6E4E1DFDED9D9D4D4D4D3D3CFCFCCC8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B3
-B3B3B3B3B3B1B1B1AEAEAEAEABABABA9A6A4A4A4A19EA19E9A8F87796A898C8F9292929292929292
-92929292929292929292929292928F8E8E8C898989898987878784817F7F7F7C7C79767676747474
-74747474767C7F7F8184878789898989898C898989898785817F7C7C767674747474747474747474
-767676767676747472716C6A615F57546C6C6C7172727272727274767C7C7F7F818487878789898C
-8E8F9292929292929292929494949492949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949292929494
-9494949494949496999A9A9A9C9C9C9C9C9C9E9E9EA3A3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A1
-9E9C9C9C9C9C9A949494949492929292929292929292929292929292929292929292929292928F8E
-8E8C8989898787848484848787878787878789898E9294999C9C9E9EA4A4A3A1A4A6A6A9AEB1B3B6
-B6B6B3B1B1AEABA6A49E9C999492928F8E8E8E8F92929494949494949492928C877F7C87898E9294
-949496999A9C9C9C9E9E9E9E9E9C9C9A9A9994928F8E8E8E9294969C9EA4A6A6A6A9A9A6A49E9C9A
-9492928E8C8989898787878584818181817F7F7F7F7F7F7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F818485858587878989898989898C8E8E8E8E8E8F929292929292929294949492929494
-94949494949494949494949494949494949494949494949494949492929292929292929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989898787
-878585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C767676767676767674747474
-72726E6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5C57575757555554514F4F4F4F4F4F
-4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8787898989
-8989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292
-92929292929292949494949494949494949494949494949494949494797F878C92949A9C9EA1A4A6
-ABAEB1B9BEC1C6CCCFD3D9D9DFE1E6E7ECECF1F2F4F7F7F9F9FAFAFAFAF9F9F7F7F4F2F1ECECECE7
-E6E4E1DFDCD9D9D7D4D4D3D3CFCFCCC8C8C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B3B3B1B1B1B3
-B3B3B3B3B3B1B1B1AEAEAEAEAEABABABA9A6A6A4A4A4A4A4A49A9287766A898E8F92929292929292
-929292929292929292929292928F8E8E8C89898989898787878784817F7F7C7C7C79767474747272
-7171727274767C7F7F7F848787898989898989898989898784817F7C797676747474747474767676
-767676767676747472726C6A67615D554F6C6C6E72727272727274767C7C7F7F8184858787898989
-8E8F9292929292929292929494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949492929292949494949494929292
-92949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494999A9A9C9C9C9C9E9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A39E
-9E9C9C9C9C9A99949494929292929292929292929292929292929292929292929292929292928F8F
-8E8C89898787878787858787898787878789898C9294969A9C9E9EA1A4A4A4A4A4A6A9AEB1B3B6B9
-B9B9B6B1B1AEABA6A39C999492928F8E8E8E8F92929494949494949494928E89817C85898E929494
-9999999A9C9C9E9E9E9E9E9E9E9C9C9A9A9694928E8E8E8F92949A9CA4A4A6A6A6A9A9A6A49E9C9A
-9492928F8E8C8989898787878481818181817F7F7F7F7F7F7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F818485858587878989898989898C8E8E8E8E8E8E8F9292929292929292949492929494
-94949494949494949494949494949494949494949494949494949292929292929292929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989898787
-87858585858585858481817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C797676767676767674747474
-7472716C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5F5D59575757575555544F4F4F4F4F4F
-4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898989
-89898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292
-929292929292929494949494949494949494949494949494949494947C84898F92949A9C9EA3A4A6
-ABB1B6B9BEC4C6CCCFD4D9DCDFE4E7E9ECEEF2F4F4F7F7F9F9FAFAFAFAF9F9F7F7F4F2F1ECECECE7
-E6E4E1DFDCD9D9D9D4D4D3D3CFCFCCC8C8C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B3B3B3B1B1B3
-B3B3B3B3B3B1B1B1AEAEAEAEAEAEACABABA9A6A6A6A4A4A4A4A39C928474678C8E9292928F8F8F92
-9292929292929292929292928F8F8E8C8989898989878787878584817F7F7F7C7C7676747272716C
-6C6C6C6C6E72767C7C7C7F8485878789898989898989898787847F7F7C7B79767474747676767676
-76767679767676747472716C6A645F59554F6C6C7272727274747474797C7F7F7F81848787898989
-8C8F9292929292929292929494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949492929494949292929292929294949492929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949499999A9A9C9C9C9E9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A19E9E
-9C9C9C9A9A999494949292929292929292929292929292929292929292929292929292929292928F
-8F8C89898787878787878789898989898989898F92949A9C9C9E9EA3A4A4A4A4A6A9ABAEB1B6B9B9
-B9B9B7B3B1AEA6A49E9C949492928E8E8E8E8F929494949494949494928F89857684898E92929499
-999A9A9C9C9E9E9E9E9E9EA19E9E9C9A999494928E8E8E92949A9C9EA4A4A6A6A6A6A6A6A49E9C9A
-9494928F8E8C8989898787878584818484817F7F7F7F7F7F7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F81848585858787898989898989898C8E8E8E8E8E8F8F92929292929292929292929294
-94949494949494949494949494949494949494949494949494949292929292929292929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989898987
-87878585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7676767676767674747474
-7472726E6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5C57575757555555544F4F4F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898989
-89898989898989898989898C8989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E9292929292929292
-929292929292929494949494949494949494949494949494949494767F87899294999C9C9EA4A6A9
-AEB1B6B9C0C6C8CCD1D4D9DCE1E4E7ECECEEF2F4F7F7F7F9F9FAFAFAF9F9F7F7F4F4F2F1ECECECE7
-E6E4E1DFDCD9D9D9D4D4D4D3CFCFCCC8C8C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBBB9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEABABA9A9A6A6A6A6A6A4A19C927F715C8C8F8F8F8F8E8F8F
-8F92929292928F8F8F8F928F8F8E8C89898989898787878785848481817F7F7C7C76747472726C6C
-6A6A6A6A6A6C727476797C7F8185878789898989898989898785817F7C7C7C797676767676767676
-76797979797676747472726C6A67615F57546C6C7172747474747474767C7C7F7F81848787878989
-8C8E8F92929292929292929294949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949492929292929292929292929292929292929292
-92929292929294949494949494949494949494949494949494949494949494929494949494949494
-949494949496999A9A9C9C9C9C9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A1A19E9E9E9C
-9C9A9A9A9A9994949292929292929292929292929292929292929292949494929292929292929292
-8F8C898987878787878789898989898989898C9294999A9C9E9E9EA4A4A4A4A6A9ABAEB1B6B9B9BB
-BBB9B6B1AEA9A69E9C999492928F8E8E8E8E92949494949494949492928C877481898E929494999A
-9A9A9C9C9C9E9E9E9EA1A3A4A19E9C9A9994928F8E8E8F92999C9EA3A4A4A6A6A6A6A6A6A49E9C9A
-9494928F8F8E8C8989898787878484848481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F81858585878787898989898989898C8E8E8E8E8E8F92929292929292929292929292
-94949292949494949494949494949494949494949494949494929292929292929292929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898987
-8787858585858585858481817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767676747474
-747472716C6C6C6C6C6C6C6A6A6A67676766616161615F5F5F5F5D59575757555555554F4F4F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898989
-898989898989898989898C8C8C898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292
-9292929292929494949494949494949494949494949494949494947C7F878C92949A9C9C9EA4A6A9
-AEB1B7BBC1C6C8CFD1D4D9DFE1E6E7ECECEEF2F4F7F7F7F9F9FAFAFAF9F9F7F7F4F4F2F1ECECECE7
-E6E4E1DFDCD9D9D9D4D4D4D3CFCFCCC9C8C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBB9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEABABA9A9A6A6A6A6A6A49E9C89766C8989898C8C8E8E8E
-8F8F8F928F8F8F8E8E8F8F8F8E8C89898989898989878787848181817F7F7F7C7C76747472726E6C
-6A676767676A6C727476767C7F8184858787898989898989898784817F7C7C7C7976767676767679
-79797C7C7C7976747472726E6C6A66615D554F6C7172747474747474767C7C7F7F81848587878989
-898E8F92929292929292929292949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949492929292949292929292929292929292929292929292929292
-92929292929292929494949494949492929494949494949494929494949492929292949494949494
-9494949494999A9A9A9C9C9C9E9E9E9E9EA3A4A4A6A6A6A6A6A4A4A4A4A4A4A3A19E9E9E9E9E9C9C
-9A9A9A99999494949292929292929292929292929292929294949494949494949292929292929292
-8F8C898989878787878989898989898989898F92949A9C9C9E9EA1A4A4A4A4A6A9AEB1B3B9B9B9BB
-B9B7B3B1ABA6A49E9A949492928F8E8E8E92949494949494949494928E877F7F878E929494999A9A
-9C9C9C9C9E9EA1A1A3A4A4A49E9E9C9A9994928E8E8E92949A9C9EA4A4A4A4A6A6A6A6A4A49E9C9A
-949492928F8E8C8989898787878584848484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F8181848585858787898989898989898C8E8E8E8E8E8E8F929292929292929292929292
-94929292929494949494949494949494949294949494949494929292929292929292929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989
-8787858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767676747474
-747472726E6C6C6C6C6C6C6A6A6A6A676767646161615F5F5F5F5F5C57575757555555544F4F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898989
-89898989898989898C8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292
-9292929292929494949494949494949494949494949494949494767C84898E92949A9C9C9EA4A6AB
-AEB3B9BEC1C6C9CFD3D4D9DFE1E6E7ECECF1F2F4F7F7F7F9F9FAFAFAF9F9F7F7F4F4F2F1ECECECE7
-E6E4E1DFDCD9D9D9D4D4D4D3CFCFCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEABABABA9A9A9A6A6A4A39E9281746A8989898989898C
-8E8E8F8E8E8C8C8C8C8E8E8E8E8C898989898989898787878581817F7F7F7F7F7C7676747472726C
-6A6766616161676A6E7274767C7F7F818587878789898989898787847F7F7C7C7C79767676797979
-7B7C7C7C7C7C7976747472716C6A67615F59556C6C7272747474747476797C7F7F7F818487878989
-898C8F92929292929292929292929294949494949494949494949494949494949494949494949494
-94949494949494949492929294949292929292929292929292929292929292929292929292929292
-92929292929292929292949494949292929292929494949492929292949492929292929494949494
-9494949499999A9A9C9C9C9C9E9E9EA3A3A4A4A6A6A6A6A6A6A4A4A4A4A4A4A19E9E9E9E9E9C9C9C
-9A999996949494929292929292929292929292929292949494949494949494949492949494929292
-8F898989898989878989898989898989898C9294999C9C9E9EA3A3A4A4A4A6A9AEAEB1B7B9B9B9BB
-B9B3B1AEA9A49E9C999492928F8E8E8E8F929494999994949494928F89847F878C9294999A9A9C9C
-9C9C9E9E9EA3A3A4A4A4A4A49E9E9C9A94928F8E8E8F92969C9EA3A4A4A4A4A6A6A6A4A4A19E9C9A
-999494928F8F8E8C8989898787878484858581817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F8181818184858585878789898989898989898C8E8E8E8E8E8F8F9292929292929292929292
-92929292929494949292949494949494929292949494949492929292929292929292929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989
-8787878585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767676767474
-74747472716C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5D57575757555555554F4F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898989
-8989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F92929292929292929292
-9292929292949494949494949494949494949494949494949494767F87899294999A9C9CA1A4A9AE
-B1B6B9BEC1C6CCCFD3D9D9DFE1E6E7ECECF1F2F4F7F7F7F9F9F9FAFAF9F9F7F7F4F4F2F1ECECECE7
-E6E4E1DFDCD9D9D9D4D4D4D1CFCFCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBB9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1B1B1B1AEAEAEAEAEAEAEAEABABABA9A9A9A9A6A49E9A897C725F878787878989
-898C8C898989898989898C8C8C898989898989898989878785848181817F7F7F7C7C797676747472
-6C6A6761615F61666A6C7274767C7F7F7F8587878787898989898785817F7F7C7C7C7C797979797C
-7C7C7C7C7C7C7C79747472726C6C6A67615D57546C7172747474747676797C7C7F7F818487878789
-898C8E8F929292929292929292929292949494949494949494949494949494949494949494949494
-94949492929494949292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292949492929292929292929292929292949494
-94949496999A9A9C9C9C9C9E9E9EA1A4A4A4A6A6A6A6A6A6A6A4A4A4A4A4A39E9E9E9E9E9C9C9C9A
-9A969494949494929292929292929292929292929294949494949494949494949494949494929292
-8E898989898989898989898989898989898F92949A9C9E9EA3A4A4A4A4A4A6ABAEB1B3B9B9B9B9B9
-B6B1AEABA6A19C9A949492928F8E8E8F929494999999969494929289877C84899294969A9C9C9C9C
-9E9E9E9EA3A4A4A4A4A4A4A49E9E9C9A94928E8E8E92949A9C9EA4A4A4A4A4A6A6A4A4A49E9E9C9C
-99949492928F8E8C8989898787878585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F81818181818485858587878989898989898989898C8E8E8E8E8E8F9292929292929292929292
-92929292929294949292949494949494929292949494949292929292929292929292929292929292
-929292929292928E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989
-898787858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767676767474
-74747472726C6C6C6C6C6C6C6A6A6A6A676767646161615F5F5F5F5F5C57575757555555514F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898989
-898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292929292
-92929292949494949494949494949494949494949492949494927C81898C92949A9C9C9EA3A6A9AE
-B1B6B9C0C4C6CCCFD4D9DCDFE4E6E7ECECF2F2F4F7F7F7F9F9F9FAFAF9F9F7F7F4F4F2F1ECECECE7
-E6E1E1DFDCD9D9D9D4D4D4D1CFCFCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBB9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1B1B1B1B1AEAEAEAEAEAEAEAEABABABABABABA6A6A19C94817971598184878787
-87898989898989898989898989898989898989898989878787848485858481817F7F7F7C7C797674
-74726C6A615F5D5F61676A6C74767B7C7F7F85878787898989898787847F7F7F7F7C7C7C797C7C7C
-7C7C7C7C7C7C7C7C767472726E6C6A6A615F5C554F6C727474767676767C7C7C7F7F818485878789
-89898E8F8F9292929292929292929292949494949494949494949494949494949494949494929494
-94949492929292949292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292949494
-949494999A9A9A9C9C9C9C9E9E9EA3A4A4A4A6A6A6A6A6A6A4A4A4A4A4A4A19E9E9E9C9C9C9C9C9A
-9994949494929292929292929292929292929292949494949696949494949494949494949492928F
-8E8C89898989898989898989898989898E9294999C9C9EA3A4A4A4A4A4A6A9AEB1B1B6B9B9B9B9B9
-B3B1AEA6A49E9C999494928F8E8E8F929494999A9A99949492928C877681878F94949A9C9C9C9E9E
-9EA1A3A4A4A4A4A4A4A4A4A49E9E9C9994928E8E8E92949C9EA4A4A4A4A4A4A4A4A4A4A39E9E9C9C
-99949492928F8F8E8C8989898787878585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F8181818184848485858587878989898989898989898C8E8E8E8E8E8E8F92929292929292929292
-92929292929292929292929494949492929292929494949292929292929292929292929292929292
-9292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989898989
-898787858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C797676767676767674
-7474747472716C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5D57575757555555554F4F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89898C8C89
-89898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292929292929292
-92929294949494949494949494949494949494949292929492767F87898E92949A9C9C9EA4A6A9AE
-B1B9BBC1C6C8CCCFD4D9DCE1E4E7ECECEEF2F4F7F7F7F7F7F9F9FAFAF9F9F7F4F4F4F2F1ECECE9E7
-E6E1E1DFDCD9D9D9D7D4D4D1CFCFCCCCC8C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEABAEAEAEA9A6A49C99897F766C577F818485
-87878787878787878989898989898989898989898989898787878787878787858481817F7F7F7F7C
-767474716A665F595C5F666A6C7274767C7F7F85878787898989898787817F7F7F7F7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C79747472726C6C6A67615F57546C717474747676767C7C7F7F7F7F8184878789
-89898C8E8E8F8F929292929292929292929494949494949494949494949494949494949494929292
-94949292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929494
-94949496999A9C9C9C9C9E9E9EA1A3A4A4A6A6A6A6A6A6A6A4A4A4A4A4A39E9E9E9C9C9C9C9C9A9A
-9994949292929292929292929292929292929292949496999999949494949494949494949292928F
-8E8E8C8C8989898989898989898989898F92949A9C9E9EA4A4A4A4A4A6A6ABAEB1B3B9B9B9B9B9B7
-B1AEA9A69E9C9A9694928F8E8E8F92929494999A9A949492928E87747F878C94949A9C9C9E9E9EA1
-A4A4A4A6A4A6A6A6A6A6A4A49E9C9A94928F8E8C8F949A9EA4A6A4A4A4A4A4A4A4A4A19E9E9C9C9C
-9A94949292928F8E8C8989898787878585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-81818181848484858585858787878989898989898989898C8E8E8E8E8E8F8F929292929292929292
-92929292929292929292929294949292929292929494929292929292929292929292929292929292
-9292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989898989
-89878785858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C797676767676767674
-7474747472726C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5F5F5957575757555555514F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C8E8E8E8C
-8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F9292929292929292929292929292
-929294949494949494949494949494929294949292929292927C7F89899294999A9C9C9EA4A6ABB1
-B3B9BBC1C6C8CFD1D4D9DCE1E4E7ECECEEF2F4F7F7F7F7F7F9F9FAF9F9F7F7F4F4F4F2F1ECECE9E7
-E6E1E1DFDCD9D9D9D7D4D4D1CFCFCCCCC8C8C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBBBBB
-B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEABA6A49E9A94877F746A547F7F81
-8484858787878787878787898989898989898989898989878787878787898987878785848484817F
-7F7C7976746C675F59575D61676C7274767C7F818485878789898989878481817F7F7F7F7C7C7C7C
-7C7C7C7C7C7C7C7C7C76747472726C6A6A66615D574F6C7274747676797C7C7F7F7F7F8184878787
-8989898C8E8E8F8F8F92929292929292929494949492929294949494949494929294949492929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292928F92929292929292929292929292929292929494
-94949494999A9C9C9C9C9E9E9EA3A4A4A4A6A6A6A6A6A6A4A4A4A4A4A4A39E9E9C9C9C9C9C9C9A99
-94949492929292929292929292929292929292949494999A9A99969494949694949494949292928F
-8F8E8E8C8C898989898989898989898E9294999C9C9EA3A4A4A4A4A6A6A9AEB1B3B6B9B9B9B9B9B3
-B1AEA6A49E9C9A9494928E8E8E92929494949A9A969492928F89747C878C92949A9C9C9E9EA1A3A4
-A4A6A6A6A6A6A6A6A6A6A4A39E9C9A94928E8C8992949CA3A6A6A4A4A4A4A4A4A4A39E9E9E9C9C9C
-9A94949292928F8F8E8C8989898787878585858584817F7F7F7F7F817F7F7F7F7F7F7F7F7F7F7F81
-8181818484848585858585858787898989898989898989898C8E8E8E8E8E8F929292929292929292
-92929292929292929292929294949292929292929294929292929292929292929292929292929292
-92929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989
-89878785858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7976767676767676
-747474747472716C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5C57575757555555554F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292929292929292929292
-949494949494949494949494949492929292929292929292767C85898C9294999A9C9C9EA6A9AEB1
-B3B9BEC1C6C9CFD3D4D9DFE1E6E7ECECEEF2F4F7F7F7F7F7F9F9FAF9F9F7F7F4F4F2F2F1ECECE9E7
-E6E1E1DFDCD9D9D9D9D4D4D1CFCFCCCCC8C8C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBBBBB
-B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEA9A6A19C9492877F7467517C7F
-81818184848585878787878787878989898989898989898989878787898989898989878787878785
-847F7C7C7C76726A615957595F676C7274767C7F818484878989898787858181817F7F7F7F7C7C7C
-7C7F7F7F7C7C7C7C7C7C767474726E6A6A67615F59544F7172747476797C7C7F7F7F7F8184858787
-89898989898C8E8E8F8F929292929292929494949292929292929494949492929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292928F9292929292929292928F92929292928F8F8F929292929292928F929292929292929494
-94949494999A9A9C9C9C9E9EA1A3A4A4A6A6A6A6A6A6A6A4A4A4A4A3A3A19E9E9C9C9C9C9A9A9A99
-949492929292929292929292929292929294949494999A9A9A9A9999999999969494949292929292
-8F8E8E8E8E8C8C89898989898989898F92949A9C9E9EA4A4A4A4A4A6A6ABB1B3B6B9B9B9B9B9B9B1
-AEA9A69E9C9A9994928E8E8E8F929294949999999492928F89877C878C9294999A9C9E9EA3A4A4A4
-A6A6A9A9A9A6A9A6A6A6A4A19E9C9994928E898C929A9EA6A9A6A6A4A4A4A3A3A3A19E9E9C9C9C9C
-9A9494929292928F8E8C8989898787878585858584817F7F7F7F8181817F7F7F7F7F7F7F7F818181
-8181848484858585858585858787898989898989898989898C8E8E8E8E8E8E8F9292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989
-8987878585858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767676
-747474747472726C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5F5D59575757575555554F4F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929294
-949494949494949494949494949292929292929292929292767F87898E92949A9C9C9EA3A6A9AEB1
-B6B9BEC1C6CCCFD3D7D9DFE1E6E7ECECF1F2F4F7F7F7F7F7F9F9FAF9F9F7F7F4F4F2F2F1ECECE9E7
-E6E1E1DFDCD9D9D9D9D4D4D1CFCFCCCCC9C8C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBBBBBBB
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEA9A6A49C99948F877C74617C7F
-7F7F7F81818184848585878787878787878989898989898989898989898989898989898989898987
-8785817F7F7C76716A615955575F676C7172767C7F81818587898787878781818481817F7F7F7F7C
-7F7F7F7F7F7C7C7C7C7C79747474726C6A6A67615F574F6C72727476797C7C7F7F7F7F7F81848787
-8989898989898C8E8E8E8F8F92929292929292929292929292929292949492929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292928F8F8F8F9292929292928F8F8F92928F8F8E8E8F8F92929292928F8F9292929292929294
-94949494999A9A9C9C9C9E9EA1A4A4A4A6A6A6A6A6A6A6A4A4A3A1A19E9E9E9C9C9C9A9A9A999994
-949492929292929292929292929294949494949494999A9A9A9A99999A9A9A999494949492929292
-8F8E8E8E8E8E8C8C8989898989898E9294999C9C9EA1A4A4A4A4A4A6A9AEB1B6B9B9BBB9B9B9B3B1
-ABA6A49E9C9994928F8E8E8E929294949496999494928E89877C84899294999A9C9C9EA3A4A4A6A6
-A6A9ABABA9A9A9A9A6A6A49E9C9A94928E89898E949CA3A9A9A6A6A4A4A4A3A1A19E9E9E9C9C9C9C
-9A9494929292928F8F8E8C8989898787878585858584817F7F81818181817F7F7F7F7F7F81818181
-818484848585858585858585878789898989898989898989898E8E8E8E8E8E8F8F92929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989
-8987878785858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C79767676767676
-76747474747272716C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5C57575757555555544F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F929292929292929292929292929292929494
-9494949494949494949494929292929292929292929292747C8189898F94969A9C9C9EA4A6ABAEB1
-B7B9BEC1C6CCCFD3D9D9DFE1E6E7ECECF1F2F4F7F7F7F7F7F9F9F9F9F9F7F7F4F4F2F2F1ECECE7E7
-E6E1E1DFDCD9D9D9D9D4D4D1CFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BBBBBBBBBBBBBBBBBBBB
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEABA6A49E9A94948E877C74617C
-7F7F7F7F7F7F8181818484858587878787878787878989898989898989898C89898989898C8C8987
-878785847F7F7C766E6A615C55575F666A6C72767C7F81848787878787878484848481817F7F7F7F
-7F7F7F7F7F7F7C7C7C7C7976747474716C6A6A66615C544F6E727474767C7C7F7F7F7F7F81848787
-8789898989898C8E8E8E8E8F92929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292928F8F
-8F92928F8E8E8E8E8F8F8F92928F8E8E8E8F8F8F8E8E8E8E8E8F8F92928F8F8E8F8F929292929292
-9494949494999A9C9C9C9E9E9EA3A4A4A6A6A6A6A6A6A4A4A4A19E9E9E9E9E9C9C9C9A9A99999494
-9492929292929292929292929494949494949494999A9A9A9A9A9A9A9A9A9A99949494949292928F
-8E8E8E8E8E8E8E8C8989898989898F9494999C9E9EA3A4A4A4A4A6A6ABB1B3B7B9BBBBB9B9B6B1AE
-A9A49E9C9A9494928E8E8E8F9294949494949694928F89877981899294949A9C9C9EA1A4A4A6A6A6
-A9AEAEAEAEABA9A6A6A4A39E9C9994928C898992969CA4ABA9A9A6A6A4A4A39E9E9E9E9C9C9C9C9C
-9A949494929292928F8E8C8989898787878585858584817F8181818184817F7F7F7F7F8181818181
-848484858585858585858585878789898989898989898989898E8E8E8E8E8E8E8F92929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989
-898787878585858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767676
-76747474747472726C6C6C6C6C6C6C6A6A6A6A676767616161615F5F5F5F5D59575757575555554F
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292949494
-9494949494949494949494929292929292929292929292767F87898C9294999A9C9C9EA4A6AEB1B3
-B9BBC0C4C6CCCFD4D9DCDFE4E7E9ECEEF2F4F4F7F7F7F7F7F9F9F9F9F9F7F4F4F4F2F2F1ECECE7E7
-E6E1E1DFDCD9D9D9D9D4D4D1CFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBBB
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEA9A69E9C9A99948C857C745F
-7C7C7C7F7F7F7F7F7F818184858585858787878787898989898989898989898C8989898989898989
-87878784817F7C7C746C6A615D55575F666A6C74767C7F818487878787878784848484818181817F
-7F7F7F7F7F7F7F7C7C7C7C76767474726E6C6A6A645F574F6C71727474797C7F7F7F7F7F81848587
-878989898989898E8E8E8E8F92929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292928F8F9292928F8F8E
-8E8F8F8F8E8E8E8E8E8E8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8E8C8E8E8F8F92929292
-9292949494999A9A9C9C9E9E9EA3A4A4A6A6A6A6A6A6A4A4A39E9E9E9E9E9E9C9C9A9A9994949494
-9492929292929292929292949494949496999999999A9A9A9A9A9A9A9A9A9A99999494949492928F
-8E8E8E8E8E8E8E8989898989898E9294949A9C9E9EA3A4A4A4A4A6A9AEB1B7B9B9BBB9B9B6B3AEA9
-A6A39C9A9694928F8E8E8E929494949494949492928C89767F879294949A9C9C9E9EA4A4A6A6A6A9
-AEAEAEAEAEAEA9A6A6A4A19E9A94928E89898C929A9EA6ABA9A9A6A6A6A4A4A19E9E9E9C9C9C9C9C
-9A949494929292928F8F8E8C898989878787858585858481818181848481817F7F7F818181818184
-848485858585858585858585878787898989898989898989898C8E8E8E8E8E8E8E8F929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989898989
-898987878585858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C797676767676
-7676747474747272716C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5C5757575755555554
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F929292929292929292929292929292929494949494
-94949494949494949494929292929292929292929292927C7F87898E9294999A9C9EA3A6A9AEB1B6
-B9BBC1C6C8CFD1D4D9DCE1E4E7ECECEEF2F4F4F7F7F7F7F7F7F9F9F9F7F7F4F4F4F2F2F1ECECE7E7
-E6E1E1DFDCD9D9D9D9D4D3D1CFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBBB
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEA9A6A49E9C9A99948C847C74
-617C7C7C7C7F7F7F7F7F818485858585858585878787898989878989898989898989898989898989
-8987878481817F7C79746C67615D55575F616A6C74767C7F7F818587878787858484848481818481
-817F7F7F817F7F7F7C7C7C7C79767474726C6C6A67615F574F6E727274767C7C7F7F7F7F7F818487
-878989898989898C8E8E8E8E8F929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292929292928F8F8F8F8F8F8F8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8E8E8E8E8C8C8C8C8E8E8F8F9292
-929292929494999A9C9C9C9E9EA3A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9C9C9C9C9A999494949492
-92929292929292929292949494969999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9996949492928F8E
-8E8E8E8E8E8E8C898989898989929294969C9C9EA1A4A4A4A4A6A6A9AEB3B9B9B9B9B9B6B3B1AEA6
-A49E9C9994928F8E8E8E929294949494949494928E89727F878E9294999A9C9E9EA3A4A6A6A9A9AE
-AEB1B1AEAEAEA9A6A6A49E9C9994928989898F949CA4A9ABA9A9A6A6A6A4A4A19E9E9C9C9C9C9C9C
-9A96949492929292928F8E8C898989878787858587878481818184848484817F7F81818181848484
-848585858585858585858585858787898989898989898989898C8E8E8E8E8E8E8E8F8F9292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989898989
-89898787858585858585858585858581817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C797676767676
-7676747474747472726C6C6C6C6C6C6A6A6A6A6A676767616161615F5F5F5F5D5957575757555555
-4F4F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292949494949494
-94949494949494949494929292929292929292929292767C8489898F9494999A9C9EA4A6A9AEB1B7
-B9BEC1C6C9CFD1D4D9DFE1E6E7ECECEEF2F4F4F7F7F7F7F7F7F9F9F9F7F7F4F4F2F2F2F1ECECE7E7
-E4E1E1DFDCD9D9D9D9D4D3D1CFCFCCCCCCC8C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEA9A6A6A49E9C9A99948C847C
-7461797C7C7C7C7C7F7F818184858585858585858787898987878787878989898989878789898989
-87878781817F7F7C7C76746C67615F55575D616A6C74767C7F7F8185878585848484848584848484
-81817F8181817F7F7F7F7C7C7C7C767674726C6C6A67615D574F71727474767C7F7F7F7F7F818487
-878789898989898C8E8E8E8E8F929292929292929292929292929292929292929292929292929292
-9292929292928F8F8F929292929292928F8F8F929292929292928F8F8F92928F8E8E8E8E8F8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8E8E8E8C89898C8E8E8C8989898C8E8E8F8F8F
-92929292929494999A9C9C9E9EA1A4A4A4A4A4A4A4A4A4A39E9E9E9C9C9C9C9C9A9A999494949292
-92929292929292929292949496999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949492928F8F
-8E8E8E8E8E8E8989898989898E929294999C9E9EA1A4A4A4A4A6A9AEB1B6B9B9B9B9B6B1B1AEA9A6
-A19C999492928F8E8E8F9294949494949494928F89857C85899294969A9C9C9EA1A4A4A6A6A9ABAE
-AEB1B1B1AEAEA9A6A6A39E9C94928E898989929A9EA4ABABABA9A6A6A6A4A4A19E9E9C9C9C9C9C9C
-9A99949492929292928F8E8E8C898989878787878787858481848484858481818181818184848484
-858585858585858585858585858787898989898989898989898C8E8E8E8E8E8E8E8E8F9292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989898989
-89898787858585858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7676767676
-7676767474747472726E6C6C6C6C6C6C6A6A6A6A676767666161615F5F5F5F5F5C57575757555555
-544F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F929292929292929292929292929292929294949494949494
-94949494949494949492929292929292929292929292767F87898C9294949A9C9C9EA4A6ABB1B3B9
-B9BEC1C6CCCFD3D4D9DFE1E6E7ECECEEF2F4F4F7F7F7F7F7F7F9F9F9F7F7F4F4F2F2F2EEECECE7E7
-E4E1E1DFDCD9D9D9D9D4D3D1CFCFCCCCCCC8C8C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEABA6A6A6A49E9C9C99948C85
-7C74617679797C7C7F7F7F8181848485858585858787878787878787878787898987878787878987
-878784817F7F7F7F7C7674726C6A615F55575D616A6C74767C7F7F81848584818181818484848485
-848181818181817F7F7F7F7F7F7C7C767474716C6A6A66615D556C72747476797C7F7F7F7F818485
-87878989898989898E8E8E8E8F8F8F92929292929292929292929292929292929292929292929292
-8F8F9292928F8F8E8E8F8F8F9292928F8F8E8E8F8F8F9292928F8E8E8E8F8F8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8E8E8E8C89898C8C8C89898989898C8989898989898C8E8E8F
-8F92929292929494999A9C9C9E9EA3A4A4A4A4A4A4A4A4A19E9E9C9C9C9C9C9C9A99949494929292
-929292929292929292949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494929292928F
-8F8E8E8E8E8E898989898989929294949A9C9E9EA3A4A4A4A6A6A9AEB1B6B7B9B9B9B3B1AEA9A6A4
-9E9A9492928F8E8E8F9294949494949494928F89877981898F94949A9C9C9E9EA4A4A6A6A9ABAEAE
-B1B1B1B1B1AEA9A6A49E9C99948F8989898F949CA1A6ABABABA9A9A6A6A4A4A39E9E9C9C9C9C9C9A
-9A99949492929292928F8E8E8C898989878787878787878484848485858584818181818484848585
-85858585858585858585858585878789898989898989898989898E8E8E8E8E8E8E8E8E8F92929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-89898787878585858585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676
-767676747474747472726C6C6C6C6C6C6A6A6A6A6A676767616161615F5F5F5F5D59575757555555
-554F4F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292929494949494949494
-949494949494949494929292929292929292929292747C8187898F9294999A9C9EA1A6A9AEB1B3B9
-BBC0C1C6CCCFD3D9D9DFE1E6E7ECECEEF2F4F4F7F7F7F7F7F7F9F9F9F7F7F4F4F2F2F1EEECECE7E7
-E4E1E1DFDCDCD9D9D9D4D3D1CFCFCCCCCCC8C8C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1AEAEAEAEABA9A6A6A6A39E9C9C99948C
-877F766176767C7C7C7F7F7F7F818181848485858787878787878587878787878787878787878787
-878481817F7F7F7C7C797674716C6A615F57555C616A6C72747C7C7F8181817F7F81818184858585
-85848181848481817F817F7F7F7F7F7C767472716C6A6A665F5C546C727474767C7C7F7F7F7F8184
-87878989898989898C8E8E8E8E8E8F8F8F92929292929292929292929292929292928F929292928F
-8F8E8F8F8F8F8E8E8E8E8E8E8F8F8F8F8E8E8E8E8E8E8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8C8989898C8C898989898989898989898989898989898989898C8C8E
-8E8F8F929292929494999A9C9C9EA1A4A4A4A4A3A3A19E9E9E9C9C9C9C9C9A9A9A99949492929292
-929292929292929292949496999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949292929292
-8F8F8E8E8E8C89898989898F929294999A9C9E9EA4A4A4A6A6A9ABAEB1B7B7B7B9B6B1AEABA6A49E
-9C9492928F8E8E8F929294949494949492928C87767F898E92949A9C9C9E9EA3A4A6A6A9ABAEAEAE
-B1B1B1B1B1AEA9A6A39E9C94928C898989929A9EA4A9ABABABA9A9A6A6A4A4A39E9E9C9C9C9C9C9A
-9A99949492929292928F8E8E8E8C8989898787878787878584848585858584818181848484858585
-85858585858585858585858585878789898989898989898989898E8E8E8E8E8E8E8E8E8F8F92928F
-8F929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-89898787878585858585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C76767676
-767676767474747472726E6C6C6C6C6C6A6A6A6A6A676767666161615F5F5F5F5F5C575757575555
-55514F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8F8F929292929292929292929292929292929294949494949494949494
-949494949494949492929292929292929292929292767F848789929494999A9C9EA3A6A9AEB1B6B9
-BBC1C6C8CFD1D4D9DCDFE4E6E7ECECEEF2F4F4F7F7F7F7F7F7F7F7F7F7F7F4F4F2F2F1EEECECE7E6
-E4E1E1DFDCDCD9D9D9D4D3D1CFCFCFCCCCC8C8C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEAEAEABA9A6A6A6A4A49E9C9C9994
-8E8984766A76797C7C7C7F7F7F7F7F7F818181848485878787858585858587878787878787878787
-84817F7F7F7F7C7C7C7B767474726C6A665F57555C61676C72747C7C7F7F7F7F7F7F7F8181848585
-85858484848584848181848181817F7C7C7674726E6C6A67645F59516E747474767C7F7F7F7F8184
-87878789898989898C8E8E8E8E8E8E8E8F8F8F92929292929292929292929292928F8F8F8F8F8F8F
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8E8E8E8E8E8E8F8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989898989898C
-8C8E8E8F8F8F9292929494999A9C9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9994949492929292
-9292929292929294949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999999949494929292929292
-928F8E8E8E89898989898C8F9292949A9C9E9EA1A4A4A6A6A6A9AEAEB3B6B6B6B7B1AEAEA9A4A19C
-9992928F8E8E8E929294949494949492928E87747F878C9294999C9C9E9EA1A4A6A6A9ABAEAEB1B1
-B1B1B1B1B1AEA6A49E9C9A948F8989898F949CA3A6ABABABABA9A9A6A4A4A4A39E9E9C9C9C9C9A9A
-9A9994949292929292928E8E8E8C8989898787878787878784858585858585848184848485858585
-85858585858585858585858585878787898989898989898989898C8E8E8E8E8E8E8E8E8E8F928F8F
-8F929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-89898987878785858585858585858584817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676
-76767676747474747472716C6C6C6C6C6A6A6A6A6A6A676767616161615F5F5F5F5D595757575555
-55554F4F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292929294949494949494949494
-9494949494949492929292929292929292929292927C7F87898C929494999C9C9EA4A6A9AEB1B7B9
-BEC1C6C9CFD3D4D9DCE1E4E7ECECEEF1F2F4F4F7F7F7F7F7F7F7F7F7F7F4F4F4F2F2F1EEECECE7E6
-E4E1E1DFDCDCD9D9D9D4D3D1CFCFCFCCCCC9C8C6C6C6C4C1C1C1C1C1C1C1C0BBBBBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B6B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEAEAEAEAEA9A9A6A6A6A4A49E9C9C99
-99928E84766C76797C7C7C7C7C7F7F7F7F7F7F818181848485858585858584858787878584848484
-817F7F7F7F7F7C7C797676747474716C6A665F57555961676C7274767B7C7C7F7F7F7F7F81818485
-8585858485858584848484848481817F7C7B7674726E6C6A67645F574F72747476797C7F7F7F8184
-8587878989898989898E8E8E8E8E8E8E8E8E8E8F8F929292929292928F8F8F92928F8E8E8E8E8F8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989898989898989898989898989898989
-898C8E8E8E8E8E8F92929494949A9A9C9C9C9C9E9E9C9C9C9C9C9A9A9A9A99999494949292929292
-8F8F8F9292949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99969494949494929292929292
-928F8E8E8C89898989898E929294999A9C9E9EA3A4A4A6A6A9ABAEB1B3B6B6B3B3B1AEA9A6A49E9A
-94928F8E8E8E8F9292949494949492928E89717C87899294949A9C9E9EA3A4A6A6A9ABAEAEB1B1B1
-B1B1B3B1AEA9A6A39E9C94928C898989929A9EA4A9ABABABABA9A9A6A4A4A4A49E9E9E9C9C9C9A9A
-9A9994949492929292928F8E8E8E8C89898987878787878785858585858585858484848585858585
-85858585858585858585858585858787898989898989898989898C8E8E8E8E8E8E8E8E8E8E8F8F8F
-8E8F9292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-89898987878785858585858585858585817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C767676
-76767676767474747472726E6C6C6C6C6A6A6A6A6A6A676767666161615F5F5F5F5F5C5757575755
-5555514F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8E8E8E8E8F8F929292929292929292929292929292929292929494949494949494949494
-9494949494949292929292929292929292929292767F8187898E9294949A9C9EA1A4A6A9AEB3B9BB
-BEC1C6CCCFD3D4D9DEE1E4E7ECECEEF1F2F4F4F7F7F7F7F7F7F7F7F7F7F4F4F2F2F2F1EEECECE7E6
-E4E1E1DFDCDCD9D9D9D4D3D1CFCFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BBBBBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B6B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEAEAEAEAEABA9A9A6A6A6A4A49E9C9C
-9A9C999285766A7676797C7C7C7C7C7C7F7F7F7F7F8181818484858585848484848585848481817F
-7F7F7F7F7F7C7C7976767676747474716C6A645F5755575F666A6E747476797C7C7C7F7F7F818184
-8585858585858585848485858584847F7F7C79767474726C6A6A645F594F727474767C7C7F7F7F81
-8487878789898989898C8E8E8E8E8E8E8E8E8E8E8E8F8F8F9292928F8E8E8E8F8F8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8E8E8F8F9292928F8F8F8F8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898989898989898989878989
-8989898C8989898E8F9292929294949A9A9A9C9C9C9C9C9C9A9A9A9A999994949494949292929292
-8E8E8F92929494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949492929292929292
-928E8E8E89898989898E8F9292949A9C9C9E9EA4A4A6A6A9A9AEAEB1B3B3B3B3B1AEA9A6A49E9C94
-928F8E8E8E8E8F92929494949492928F89857984898F92949A9C9EA3A4A4A4A6A9ABAEAEB1B1B1B1
-B3B3B1B1AEA6A49E9C9A948F8989898C949C9EA6ABABABABABA9A9A6A4A4A4A4A19E9E9C9C9A9A9A
-9A9994949492929292928F8E8E8E8C89898987878787878787858585858585858484858585858585
-85858585858585858585858585858787898989898989898989898C8E8E8E8E8E8E8E8E8E8E8F8F8F
-8E8F8F92928F8F929292929292929292929292929292929292929292929292929292929292929292
-9292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989
-8989898987878785858585858585858581817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C797676
-7676767676747474747472716C6C6C6C6C6A6A6A6A6A6A676767616161615F5F5F5F5D5757575755
-5555554F4F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8F8E8E8E8E8F8F9292929292929292929292929292929292929292929494949494949494949494
-9494949494929292929292929292929292929292797F858789929294969A9C9EA3A6A6ABB1B3B9BB
-C0C4C6CCD1D4D9D9DFE1E6E7ECECEEF1F2F4F4F7F7F7F7F7F7F7F7F7F7F4F4F2F2F2F1EEECECE7E6
-E4E1E1DFDCDCD9D9D9D4D3D1CFCFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEA9A9A6A6A6A6A4A49E9C
-9C9C9C9C8F7F744F76767679797C7C7C7C7C7F7F7F7F7F7F81818184848481818181848181817F7F
-7F7F7F7C7C7C7C797676747474747472716C6A645F5955575F646A6C72747476797C7C7C7F7F8181
-848585858585858585858585858585847F7F7C79767474726E6C6A645F594F717274767C7C7F7F81
-8487878789898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8E8E8E8F8F92928F8F8F929292929292928F8F8F8F8E8E
-8E8E8E8E8E8F8F8F8E8E8E8E8C898989898989898989898989898989898989898989898987878789
-89898989898989898E8F92929292929494999A9A9C9A9A9A9A9A999994949494949492929292928F
-8E8F9292949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949492929292929292
-8F8E8E8E898989898C8F929294999A9C9E9EA1A4A4A6A6A9ABAEAEB1B3B3B3B1AEABA6A49E9C9994
-8F8E8E8E8E8F92929494949292928F89877681878E9294999C9EA3A4A4A4A6A9ABAEAEB1B1B3B3B3
-B1B1B1AEA9A6A49E9C94928C89898992999CA4A6ABABABABABA9A9A6A4A4A4A3A19E9E9C9C9A9A9A
-9A9A96949492929292928F8E8E8E8E8C898989878787878787858585858585858585858585858585
-8585858585858585858585858585878789898989898989898989898E8E8E8E8E8E8E8E8E8E8E8F8E
-8E8E8F928F8F8F929292929292929292929292929292929292929292929292929292929292929292
-9292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989
-8989898987878785858585858585858584817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7676
-7676767676767474747472726E6C6C6C6C6A6A6A6A6A6A676767666161615F5F5F5F5F5C57575757
-555555514F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8F
-8F8F8F8E8E8F92929292929292929292929292929292929292929292949494949494949494949494
-94949494929292929292929292929292929292767C8187898C929494999C9C9EA4A6A9AEB1B6B9BE
-C1C6C8CFD3D4D9D9DFE1E6E7ECECEEF1F2F4F4F4F7F7F7F7F7F7F7F7F7F4F4F2F2F1EEECECECE7E6
-E4E1E1DFDCD9D9D9D9D4D3D1CFCFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEABA9A9A6A6A6A6A4A49E
-9E9E9E9E9A897C72747476767676797C7C7C7C7C7C7F7F7F7F7F7F818181817F7F818181817F7F7F
-7F7F7C7C7C7C7C79767474747474747472716C6A645F5957575F61676A6C727474767C7C7C7F7F81
-81848585858585858585858585858585817F7F7C7976747472716C6A66615C51717474797C7F7F81
-818587878989898989898E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F928F8F8F8F929292929292929292929292929292928F9292
-928F8E8E8F9292928F8F8F8E8E8E8C8C898989898989898989898989898989898989898787878787
-8789898989898989898E8F8F92929294949494999A9A9A999999949494949494929292929292928F
-8F9292929494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949292929292929292
-8E8E8E8C8989898C8E929294949A9C9C9E9EA3A4A4A6A6ABAEAEB1B1B3B1B1AEABA6A49E9C9A9492
-8E8E8E8E8E8F929294949492928F8987747F878C9294949A9C9EA4A4A6A6A9ABAEAEB1B1B3B3B3B1
-B1B1B1AEA9A49E9C9A948F89898989929A9EA4A9ABABABABABA9A6A6A4A4A4A3A19E9E9C9C9A9A9A
-9A9A99949492929292928F8E8E8E8E8C898989878787898787878585858585858585858585858585
-8585858585858585858585858585878789898989898989898989898E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8F8F8F8E8F9292929292929292929292929292929292929292929292929292929292929292
-929292928E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-8989898989878787858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976
-767676767676747474747472716C6C6C6C6A6A6A6A6A6A6A676766616161615F5F5F5F5D57575757
-555555554F4FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8F8F92
-92928F8F929292929292929292929292929292929292929292929292949494949494949494949494
-94949494929292929292929292929292929292767F8487898F9294949A9C9EA1A4A6A9AEB1B7B9BE
-C1C6CCCFD3D4D9DCDFE1E6E7ECECEEF2F2F4F4F4F7F7F7F7F7F7F7F7F7F4F4F2F2F1EEECECECE7E6
-E4E1DFDFDCD9D9D9D9D4D3D1CFCFCFCCCCCCC8C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEAEAEAEAEABA9A9A9A6A6A6A6A6A4
-A3A3A49E9C94877C6C747676767676797C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7C7C7C7C797676767474747474747472726E6C6A66615C57595F61676A6C6E72747679797C7F7F
-8181848585858585858585858585848481817F7F7C7676747472716C6A67615C54727476797C7F7F
-818487878789898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F
-8F8F8F8E8E8E8E8E8E8F8F8F8F8F8F929292928F9292929292929292929494929292929292929292
-92929292929292929292928F8F8F8F8E8C8C89898989898989898989898989898989898987878787
-878989898989898989898E8E8F92929494949494969999999494949494949492929292929292928F
-92929294949494949499999A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494929292929292928F
-8E8E8E898989898E8F929294999A9C9C9E9EA3A4A6A6A9ABAEB1B1B1B1AEAEABA6A49E9C9C99928E
-8E8E8E8E8F929294949492928E8987817C8789929294999C9EA4A4A6A6A9A9AEAEB1B1B3B3B3B3B1
-B1B1B1ABA6A49E9C94928C8989898E949CA1A6ABABABABABA9A9A6A6A4A4A3A19E9E9E9C9C9C9A9A
-9A9A99949494929292928F8E8E8E8E8E8C8989898789898787878585858585858585858585858585
-8585858585858585858585858585878787898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8F8F8F8E8F8F92928F8F929292929292929292929292929292929292929292929292929292
-929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-8989898989878787858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C76
-767676767676747474747472726E6C6C6C6C6A6A6A6A6A6A676767666161615F5F5F5F5F5C575757
-57555555514FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F929292
-92928F92929292929292929292929292929292929292929292929294949494949494949494949494
-949494929292929292929292929292929292747C81878789929294949A9C9EA3A4A6A9AEB1B9BBC0
-C1C6CCCFD3D4D9DCDFE4E7E9ECEEF1F2F2F4F4F4F7F7F7F7F7F7F7F7F4F4F4F2F2F1EEECECECE7E6
-E4E1DFDFDCD9D9D9D9D4D3D1CFCFCFCCCCCCC8C8C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEA9A9A9A9A6A6A6A6A6
-A4A4A4A39E9C9285766A7476767676767C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7C
-7C7C7C7C7C76767474747474727272727272726C6C6A67615D595C5F6166676A6C72747476797C7F
-7F818184858585858585858585848481817F7F7F7C7C7976767472716C6A67615D547274767C7C7F
-81848587878989898989898E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8E8F8F8F
-9292928F8F8F8E8F8F92929292929292929292929292929292929292929494949494929292929494
-949492929292929292929292929292928F8E8E8C8C898C8989898989898989898989898989878787
-8787898989898989898C8E8E8F929292929292949494949494949494949492929292929292929292
-92929494949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949492929292929292928F
-8E8E8C8989898E8F929294949A9C9C9E9EA1A4A4A6A6A9AEAEB1B1B1AEAEA9A6A4A19C9C9994928E
-8E8E8E8F929292949494928E8987847984898F9294999A9C9EA4A6A6A9A9AEAEB1B1B1B3B3B3B3B1
-B1B1AEA9A69E9C9A948F89898789929A9EA4A6ABABABABABA9A9A6A6A4A4A3A19E9E9E9C9C9C9A9A
-9A9A99949494949292928F8E8E8E8E8E8C8989898989898987878785858585858585858585858585
-8585858585858585858585858587878787898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8F8E8E8E8F92928F8F929292929292929292929292929292929292929292929292929292
-929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-8989898989898787858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C79
-76767676767676747474747472716C6C6C6C6A6A6A6A6A6A6A676766616161615F5F5F5F5D575757
-57555555554FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292929292929292929292929292929292949494949494949494949494949494
-949494929292929292929292929292929292767F8487898E929494999C9C9EA4A6A6A9AEB3B9BBC1
-C4C8CCD1D4D4D9DCE1E4E7ECECEEF1F2F2F4F4F7F7F7F7F7F7F7F7F7F4F4F4F2F2F1EEECECECE7E6
-E4E1DFDFDCD9D9D9D9D4D3D1CFCFCFCFCCCCC8C8C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEABA9A9A9A9A6A6A6A9
-A6A6A6A49E9C9A8F81746A747476767679797C7C7C7C7C7C7C7C7C7C7C7F7F7F7C7C7C7F7F7F7C7C
-7C7C7C7979767474747272727272717172727272716C6A67615F5C5C5F5F61666A6C71727476797C
-7F7F81818485858585858585848481817F7F7F7F7F7C7C7979767474726C6A67615D557274797C7F
-81818587878989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8E8E8E8F8F929292929292
-92929292928F92929292929292929294929292929292929494949292949494949494949494929494
-9494949494949492929292929494949292928F8F8E8E8E8E8E898989898989898989898989898787
-87878989898989898C8E8E8E8F929292929292929494949494949494949492929292929292929292
-9294949494949494949499999A9A9A9A9A9A9A9A9A9A9A9A99949494949494929292929292928F8E
-8E8E8989898E8F92929494999A9C9C9E9EA3A4A4A6A6A9AEAEAEAEAEABA9A6A4A19E9C9994928E8E
-8E8E8F929292929494928F8989847481878E9294949A9C9EA4A6A6A9A9AEAEAEB1B1B1B3B3B3B3B1
-B1B1AEA6A49E9C99928C8987878E949C9EA6A9ABABABABABA9A9A6A6A4A4A39E9E9E9E9C9C9C9A9A
-9A9A9994949494929292928F8E8E8E8E8E8C89898989898987878785858585858585858585858585
-8585858585858585858585858787878787898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8F8F8F8E8F9292929292929292929292929292929292929292929292929292
-9292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-898989898989878785858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C
-76767676767676767474747472726E6C6C6C6C6A6A6A6A6A6A676767666161615F5F5F5F5F5C5757
-575755555551FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292929292929292929292929292929294949494949494949494949494949494
-949494929292929292929292929292929292797F8787898F9294949A9C9EA1A4A6A9ABB1B3B9BEC1
-C6C8CFD1D4D9D9DFE1E6E7ECECEEF1F2F2F4F4F7F7F7F7F7F7F7F7F7F4F4F2F2F2F1EEECECECE7E6
-E4E1DFDFDCD9D9D9D9D4D3D3D1CFCFCFCCCCC9C8C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEABABA9A9A9A9A6A6A9
-A9A9A6A4A39E9A94897F724F74747476767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7B79767676747472716E6C6C6C6C6C6E72727272726E6C6A615F5D5D5F5F6166676A6C72747679
-7C7F7F8181818585858585848481817F7F7F7F7F7F7F7C7C7C79767474726C6A67615F5574767C7F
-7F818487878789898989898C8E8E8E8E8E8E8E8E8E8F8E8E8E8E8F8F928F8F929292929292929292
-92929292929292929292929294949494949494929292949494949494949494949494949494949494
-9494949494949494949494949494949494929292929292928F8F8F8E8E8E8E8E8C8C8E8E8E898989
-898989898989898C8E8E8E8E8E8F9292929292929294949494949494949292929292929292929294
-94949494949494949494969A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494929292929292928F8E
-8E8C89898C8E8F929294969A9A9C9C9E9EA3A4A4A6A9ABAEAEAEAEABA9A6A49E9E9C9994928F8E8E
-8E8F92929292949492928C89877F7F878C9292949A9C9C9EA4A6A9A9ABAEAEAEB1B1B3B3B3B3B1B1
-B1AEA9A6A19C9A948F8987878992999CA3A6ABABABABABA9A9A9A6A6A4A4A19E9E9E9E9C9C9C9A9A
-9A9A9994949494949292928F8E8E8E8E8E8C89898989898989878787858587858585858585858585
-8585858585858585858585878787878787898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8F8F8F8E8F8F92928F8F929292929292929292929292929292929292929292
-92928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989
-898989898989878787858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C
-7976767676767676747474747472716C6C6C6C6A6A6A6A6A6A6A676766616161615F5F5F5F5D5757
-575755555555FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292929292929292929292929292929494949494949494949494949494949494
-9494929292929292929292929292929292767C81878989929494969A9C9EA3A4A6A9AEB1B6B9BEC1
-C6CCCFD3D4D9D9DFE1E6E7ECECEEF1F2F2F4F4F7F7F7F7F7F7F7F7F7F4F4F2F2F1EEECECECECE7E6
-E4E1DFDFDCD9D9D9D9D4D3D3D1CFCFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BBBBBBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEABABA9A9A9A9A9A9
-A9ABA9A6A49E9C9A94877C724F74747476767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C79767676767474726E6C6C6C6C6A6A6C6C7172727272716C6A645F5F5F5F5F6164676A6C6C7476
-797C7F7F7F7F81848585848481817F7F7F7F7F7F7F7F7C7C7C7C7C76747472716C6A675F5776797C
-7F81848587878989898989898E8E8E8E8E8E8E8E8E8F8F8F8F8E8F92929292929292929294949494
-94949292929294949494949494949494949494949492949494949494949494949494949494949494
-9494949494949494949494949496949494949494929292929292929292928F8F8F8F8F8F8E8E8C89
-8989898989898C8E8E8E8E8E8E8F9292929292929294949494949494949292929292929292929294
-94949494949494949494999A9A9A9A9A9A9A9A9A9A9A9A999494949494949292929292928F8E8E8E
-8E8C898C8E8E92929494999A9C9C9C9E9EA4A4A6A6A9A9AEABABABA9A6A49E9E9C9A94928F8E8E8E
-8F92929292929492928E89877F7C84898F9294999A9C9EA4A6A6A9ABAEAEAEB1B1B1B3B3B3B3B1B1
-AEAEA6A49E9C99928C8987878E949A9EA4A9ABABABABABA9A9A9A6A6A4A4A19E9E9E9E9C9C9C9A9A
-9A9A999494949494929292928F8E8E8E8E8E8C898989898989878787858787878585858585858585
-858585858585858585858787878787878789898989898989898989898E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8F8E8E8E8F92928F8F929292929292929292929292929292929292929292
-92928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989
-89898989898987878785858585858585858584817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C
-7C76767676767676767474747472726E6C6C6C6C6A6A6A6A6A6A676767666161615F5F5F5F5F5C57
-575757555555FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292929292929292929292929294949494949494949494949494949494949494
-9492929292929292929292929292929292767F8587898E929494999C9C9EA4A6A6A9AEB1B7B9BEC1
-C6CCCFD3D4D9D9DFE1E6E7ECECEEF2F2F2F4F4F7F7F7F7F7F7F7F7F7F4F4F2F2F1EEECECECECE7E6
-E4E1DFDFDCD9D9D9D9D4D3D3D1CFCFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEABABA9A9A9A9A9
-A9ABA9A6A4A19C9C9992847C725F74747676767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C797676747474726E6C6A6A6A6A6A6A6A6C7172747272726C6A64615F5F5F5F6161676A6A6C74
-76797C7C7F7F7F7F81848181817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C79767474726E6C6A5F57767C
-7F7F818587878989898989898C8E8E8E8E8E8E8E8F9292928F8F9292929292949494949294949494
-94949494949294949494949494949494949494949494949494949494949494949494949494949494
-9494949494949494949499999999999994949494949494949292949492929292929292928F8F8E8E
-8C8C8C8C8C8C8E8E8F8F8F8F8E8F9292929292929292949494949494929292929292929292929494
-949494949494949494969A9A9A9A9A9A9A9A9A9A9999999994949494949492929292928F8E8E8E8E
-8E8C8C8E8E8F92929494999A9C9C9E9EA1A4A4A6A6A6A9ABA9A9A9A6A4A19E9C9A9492928F8E8E8F
-92929292929292928E8987817481898E9294949A9C9CA1A4A6A9ABAEAEAEAEB1B1B1B3B3B3B1B1B1
-AEA9A6A19C9A94928987878992949C9EA6A9ABABABABA9A9A9A6A6A6A4A4A19E9E9E9E9C9C9C9A9A
-9A9A9A9694949494949292928F8E8E8E8E8E8C898989898989898787878787878585858585858585
-858585858585858585878787878787878787898989898989898989898E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F9292929292929292929292929292929292929292
-928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989
-89898989898989878785858585858585858584817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C
-7C7976767676767676747474747472716C6C6C6C6A6A6A6A6A6A6A676767616161615F5F5F5F5D57
-575757555555FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292929292929292929292929494949494949494949494949494949494949494
-92929292929292929292929292929292767C818789898F9294969A9C9EA1A4A6A9ABAEB1B9BBC0C4
-C6CCCFD3D4D9DCDFE4E6E7ECECF1F2F2F4F4F4F7F7F7F7F7F7F7F7F4F4F4F2F2F1EEECECECECE7E6
-E4E1DFDFDCD9D9D9D7D4D3D3D1CFCFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBB
-BBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEABABA9A9A9A9
-ABABA9A9A6A49E9C9A948E817C745F747474767676797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7976747272716C6A6A64616666676A6C7272727272726C6A6661615F5F5F616166676A6C
-7276767C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767472716C675F557C
-7F7F8184878787898989898C8E8E8E8E8E8E8E8F8F92929292929292929294949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494999A9A9A9A999996949699999994949494949494929292929292928F8F8E
-8E8E8E8E8F8F8E8F8F92928F8F8F9292929292929294949494949494929292929292929292929494
-949494949494949494999A9A9A9A9A9A9A99999999949494949494949492929292928F8E8E8E8E8E
-8E8E8E8E8E8F929494969A9A9C9C9E9EA3A4A4A6A6A6A9A9A9A6A6A4A39E9C9A9492928F8E8E8F92
-929292929292928E898781797F87898F9294999C9C9EA4A6A9A9AEAEAEAEAEB1B1B3B3B1B1B1B1AE
-AEA6A49E9C99928E8787878C92999CA4A6ABABABABABA9A9A9A6A6A6A4A4A39E9E9E9C9C9C9C9A9A
-9A9A9A999494949494929292928F8E8E8E8E8E8C8989898989898787878787878785858585858787
-858585858585858587878787878787878789898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8E8F8F9292928F929292929292928F92929292929292
-8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989
-8989898989898987878585858585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C
-7C7C76767676767676767474747472726E6C6C6C6C6A6A6A6A6A6A676767666161615F5F5F5F5F5C
-575757575555FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292929292929292929294949494949494949494949494949494949494949292
-92929292929292929292929292929292767F8487898C929494999A9C9EA3A4A6A9AEAEB3B9BBC1C6
-C8CCD1D4D4D9DCE1E4E7E7ECECF1F2F2F4F4F7F7F7F7F7F7F7F7F7F4F4F4F2F2F1EEECECECECE7E6
-E4E1DFDFDCD9D9D9D4D4D4D3D1CFCFCFCCCCCCC8C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBBB
-BBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEABABA9A9A9
-ABABA9A9A6A4A49E9C999489847C744F7474747476767679797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C79767674726E6C6A66615F6161676A6E7272727272726C6A676661615F5F616166676A
-6C72747679797C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C797674726C6A615C54
-7C7F81848587878989898C8E8E8E8E8E8E8E8F8F9292929292929292929494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494999A9A9A9A9A9A999494999A9A999494949494949494949292929292928F
-8F8F9292928F8F8F9292929292929292929292929494949494949494929292929292929292949494
-9494949494949494969A9A9A9A9A9A999996949494949494949494929292929292928E8E8E8E8E8E
-8E8E8E8E8E92929494999A9C9C9C9E9EA4A4A6A6A6A6A9A6A6A6A4A39E9C9A969492928F8E8F9292
-929292928F8F8E8987817C7C84898E9294999A9C9EA3A4A6A9ABAEAEAEAEB1B1B1B3B1B1B1B1AEAE
-ABA6A39C9A9492898785898E949A9EA4A6A9ABABABABA9A9A9A6A6A6A4A4A39E9E9E9C9C9C9C9C9A
-9A9A9A999494949494929292928F8E8E8E8E8E8C8989898989898987878787878785858585878787
-858585858585858787878787878787878989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8F92928F8F9292929292928F8F8F929292929292
-8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989
-8989898989898987878585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C
-7C7C7976767676767676747474747472716C6C6C6C6A6A6A6A6A6A6A676767616161615F5F5F5F5D
-575757575555FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292929292929292929494949494949494949494949494949494949494949292
-929292929292929292929292929292717C7F8789898E9294969A9C9C9EA4A6A6A9AEB1B3B9BEC1C6
-C8CFD1D4D9D9DFE1E6E7E7ECECF1F2F2F4F4F7F7F7F7F7F7F7F7F7F4F4F2F2F2F1EEECECECECE7E6
-E4E1DFDFD9D9D9D9D4D4D4D3D1CFCFCFCCCCCCC8C8C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBBBB
-BBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEAEAEAEAEAEAEAEABABA9AB
-ABABA9A9A6A6A4A39E9C94928E877F76717474747476767676767C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7974726C6A67615F5F5F61666A6E7272727274726C6C6A676661616161616467
-6A6C727474767679797C7C7C7C7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C767472726C676157
-7C7F7F818487878989898C8E8E8E8E8E8E8F8F929292929292929292949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-9494949494949494949499999A9A9A9A9A999494999A9A9994949494949494949494949292929292
-8F8F9292929292929292929292929292929292929494949494949494949292929292929292949494
-9494949494949494999A9A9A9A9A9A9994949494949494949492929292929292928F8E8E8E8E8E8E
-8E8E8E8E8F92929494999A9C9C9E9EA1A4A4A6A6A6A6A6A6A6A4A39E9C9A99949492928E8E929292
-9292928F8E8C8987817C747F878C9292949A9C9C9EA4A6A9ABAEAEAEAEAEB1B1B1B1B1B1B1B1AEAE
-A9A49E9C99928E8987878992949C9EA4A6A9A9A9ABA9A9A9A6A6A6A6A4A4A39E9E9C9C9C9C9C9C9A
-9A9A9999949494949492929292928F8E8E8E8E8E8C89898989898987878787878787858587878787
-878585858585858787878787878787898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8F8F8F8F8F8F92929292928F8F8F92929292928F
-8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989
-898989898989898787858585858585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C
-7C7C7C76767676767676767474747472726E6C6C6C6C6A6A6A6A6A6A676767666161615F5F5F5F5F
-5C5757575755FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292929292929294949494949494949494949494949494949494949494949292
-929292929292929292929292929292767F8487898C8F9294999A9C9C9EA4A6A9ABAEB1B6B9BEC1C6
-CCCFD3D4D9D9DFE1E6E7E7ECECF1F2F2F4F4F7F7F7F7F7F7F7F7F7F4F4F2F2F2EEECECECECECE7E6
-E4E1DFDFD9D9D9D9D4D4D4D3D1CFCFCFCFCCCCC8C8C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBBBB
-BBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEAEAEAEAEAEAEAEABABAB
-ABABA9A9A6A6A6A4A39C9A949492898179727474747476767676797C7C7C7C7C7C7F7F7C7C7C7C7F
-7F7C7C7C7C7C7C7C7C7C7674726C6A5F5C595F61666C717272747474726C6C6C6A67616161616164
-676A6C72747474767676797C7C7C7C7C7F7F7C7C7C7C7C7C7C7C7C7C7C7C7B7976747472716A665F
-547F7F818487878789898C8E8E8E8E8E8E8F92929292929292929292929494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949999999A9A9A99949499999A9996949494949494949494949492929292
-92929292929292929292929292929292929292949494949494949494949292929292929494949494
-9494949494949496999A9A9A9A9A999494949494949494949492929292929292928E8E8E8E8E8E8E
-8E8E8E8F92929494969A9A9C9C9E9EA3A4A4A6A6A6A6A6A6A4A49E9C9C99949492928F8E8F929292
-92928F8E8C8987817C747C87898F9294999A9C9EA3A4A6A9AEAEAEAEB1B1B1B1B3B1B1B1B1AEAEAB
-A6A49C9A9492898785878992949C9EA4A6A9A9A9A9A9A9A9A6A6A6A6A6A4A49E9E9E9C9C9C9C9A9A
-9A9A9999949494949492929292928F8E8E8E8E8E8C89898989898989878787878787858787878787
-87858585858587878787878787878989898989898989898989898989898E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8E8F929292928F8F8F8F8F9292928F8F
-8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989
-898989898989898787858585858585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C
-7C7C7C7976767676767676747474747472726C6C6C6C6A6A6A6A6A6A6A676767616161615F5F5F5F
-5D5757575755FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292929292949494949494949494949494949494949494949494949494929292
-92929292929292929292929292928F797F8789898E9294949A9A9C9C9EA4A6A9AEAEB1B7B9BEC1C6
-CCCFD3D4D9D9DFE1E6E7E9ECECF1F2F2F4F4F7F7F7F7F7F7F7F7F7F4F4F2F2F1EEECECECECECE7E6
-E4E1DFDFD9D9D9D9D4D4D4D3D1D1CFCFCFCCCCC9C8C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBBBB
-BBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEABAB
-ABABABA9A6A6A6A6A49E9C9A9999948E877F746C747476767676767C7C7C7C7C7F7F7F7F7F7C7F7F
-7F7F7F7C7F7F7F7F7F7F7F7C79746C675F57575D5F676C7172747474747272716C6A676664616161
-66676A6C717274747476767679797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C79797676747472716C6761
-594F7F81848587878989898E8E8E8E8E8F8F92929292929292929292929494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-949494949494949494949494949999999A9996949496999994949494949494949494949494949292
-92929292929292929292949494949492929292949494949494949494949492929292949494949494
-94949494949494999A9A9A9A9A9A9994949494949494949492929292929292928F8E8E8E8E8E8E8E
-8E8E8F9292929494999A9C9C9C9E9EA4A4A6A6A6A6A6A4A4A49E9C9C9A94949292928F8E8F929292
-928F8E8C8987847F767681878C9294949A9C9C9EA4A6A9ABAEAEB1B1B1B1B1B1B3B1B1B1AEAEABA9
-A49E9C99928E898787898E92999C9EA4A6A6A9A9A9A9A9A6A6A6A6A6A4A4A4A19E9E9C9C9C9C9A9A
-9A99999994949494949292929292928F8E8E8E8E8E8C898989898989878787878787878787878787
-87878585858787878787878787898989898989898989898989898989898E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8F92928F8F8F8E8E8F9292928F8F
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989
-89898989898989878787858585858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C
-7C7C7C7C7676767676767676747474747272716C6C6C6C6A6A6A6A6A6A676767666161615F5F5F5F
-5F5C57575757FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292929294949494949494949494949494949494949494949494949494929292
-9292929292929292929292928F8F767C8187898C8F9294969A9C9C9EA3A4A6A9AEB1B3B9BBC0C4C6
-CCCFD3D4D9DCDFE4E6E7E9ECECF1F2F4F4F4F7F7F7F7F7F7F7F7F4F4F4F2F2F1EEECECECECE9E7E6
-E4E1DFDFD9D9D9D9D4D4D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BBBBBBBBBBBBBB
-BBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B6B6B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAB
-ABABABA9A9A6A6A6A6A49E9C9C9C9C9A9289817671747476767676797C7C7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7C746E675F55575C61676E7274767676747472726C6A6A67666666
-6666676A6C7172747474747476797C7C7C7C7C7C7C7C7C7C7C7C7C797976767676747472716C6A61
-5F557C7F818487878789898C8E8E8E8E8F9292929292929292929292929494949494949494929494
-94949494949494929494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949499999994949494949494949494949494949494949494949492
-92929292949494929294949494949494949494949494949494949494949494929294949494949494
-94949494949496999A9A9A9A9A9994949494949494949492929292929292928F8E8E8E8E8E8E8E8E
-8E8F929292929494999A9C9C9E9EA1A4A4A6A6A6A6A4A4A39E9E9C9A94949292928F8E8F92929292
-8F8E8C8987847F76767F87898F9294999C9C9EA3A4A6ABAEAEAEB1B1B1B1B1B1B1B1B1B1AEAEABA6
-A49C9A94928C878787898E92999C9EA4A6A6A6A9A9A6A6A6A6A6A6A6A4A4A4A19E9E9C9C9C9A9A9A
-9A99999494949494949492929292928F8E8E8E8E8E8C898989898989898787878787878787878787
-87878585878787878787878789898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8F8F8F8F8F8E8E8E8E8F928F8F8F
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989
-89898989898989898787858585858585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C
-7C7C7C7C7976767676767676747474747472726C6C6C6C6A6A6A6A6A6A6A676767616161615F5F5F
-5F5D59575757FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929292949494949494949494949494949494949494949494949494949492929292
-92929292929292929292928F8E8E767F8587898E8F9494999A9C9C9EA4A6A9ABAEB1B6B9BBC1C6C8
-CCD1D4D4D9DCE1E4E6E7E9ECECF1F2F4F4F4F7F7F7F7F7F7F7F7F4F4F4F2F2F1EEECECECECE7E7E6
-E4E1DFDFD9D9D9D9D7D4D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B6B6B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEAEAEAEAEAEAEAEAEAE
-ABABABA9A9A9A6A6A6A6A49E9C9C9C9C9C948E877C746776767676767C7C7C7F7F7F7F7F7F7F7F7F
-81817F7F7F7F7F8181818181817F7C746C675C54575C616A71727479767674747472716C6A6A6767
-6A6A6A6A6C6C7274747474747676797C7C7C7C7C7C7C7C7C7C7C797676767676747474726E6C6A66
-5F594F7F7F8487878787898C8E8E8E8E8F9292929292929292929292929292929494949492929292
-92949494949492929292949494949494929292929494949494949292929294949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94929294949494949494949494949494949494949494949494949494949494949494949494949494
-949494949494999A9A9A9A9A9A999494949494949494949292929292928F8F8E8E8E8E8E8E8F8F8E
-8F929292929494969A9A9C9C9E9EA3A4A4A6A6A4A4A4A19E9E9C9A99949292928F8E8E8F9292928F
-8E8C8989877F79747C81878E9294969A9C9E9EA4A6A9ABAEAEB1B1B1B1B1B1B1B1B1B1AEAEABA9A4
-9E9C96928E89878587898F92999C9EA4A4A6A6A6A6A6A6A6A6A6A6A4A4A4A4A39E9E9C9C9C9A9A9A
-9A9996949494949494949292929292928F8E8E8E8E8E8C8989898989898787898987878787878787
-878787878787878787878789898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8E8E8E8E8E8F8F8F8F8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989
-8989898989898989878785858585858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C
-7C7C7C7C7C7676767676767676747474747272716C6C6C6C6A6A6A6A6A6A676767666161615F5F5F
-5F5F5C575757FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292929494949494949494949494949494949494949494949494949494949292929292
-929292929292929292928F8E8E767C8187898C8F929494999A9C9C9EA4A6A9AEAEB1B7B9BEC1C6C8
-CFD1D4D7D9DEE1E4E7E7E9ECECF1F2F4F4F4F7F7F7F7F7F7F7F7F4F4F2F2F2F1EEECECECECE7E7E6
-E4E1DFDED9D9D9D9D4D4D3D3D1CFCFCFCCCCCCC9C8C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B6B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAE
-AEABABA9A9A9A9A6A6A6A6A49E9E9E9E9E9C9A928984766A76767676797C7C7F7F7F7F7F7F7F7F81
-81818181818181818484858481817F7C746C665951555D616C7174797C797676767474726C6C6A6A
-6A6A6C6C6C6C7272747474747476797C7C7C7C7C7C7C7C7C7C7C797676767674747472726C6C6A67
-615F554F7F81848587878789898E8E8E8E8F92929292929292929292929292929292949492929292
-92929294949492929292929294949494929292929292949494949292929292929494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949294949494949494949499969494949494949496999494949494949494949494949494949494
-949494949494999A9A9A9A9A999494949494949492929292929292928F8E8E8E8E8E8E8F8F928F8F
-92929292929494999A9C9C9E9E9EA4A4A4A6A4A4A39E9E9E9C9C99949492928F8E8E8E9292928F8E
-898989877F7C747C7F87898F92949A9C9C9EA3A4A6A9AEAEAEB1B1B1B1B1B1B3B1B1B1AEABA9A6A4
-9C9A949289878587878992949A9CA3A4A4A6A6A6A6A6A6A6A6A6A6A4A4A4A4A39E9E9C9C9C9A9A9A
-9A9994949494949494949292929292928F8E8E8E8E8E8C8989898989898989898987878787878787
-898787878787878787878989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8E8E8E8E8E8E8F8F8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989
-898989898989898987878585858585858585858585858481817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C
-7C7C7C7C7C7976767676767676747474747472726C6C6C6C6A6A6A6A6A6A6A676767616161615F5F
-5F5F5D595757FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292949494949494949494949494949494949494949494949494949494929292929292
-9292929292929292928F8E8E8E767F8587898E8F9294949A9A9C9C9EA4A6A9AEB1B3B9BBBEC1C6C9
-CFD3D4D9D9DFE1E6E7E7ECECECF1F2F4F4F4F7F7F7F7F7F7F7F7F4F4F2F2F2EEECECECECECE7E7E6
-E4E1DFDEDCD9D9D9D4D4D3D1D1CFCFCFCCCCCCC8C8C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B6B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAE
-AEACABABA9A9A9A9A6A6A6A6A4A4A39E9E9E9E9E9A92877C6C747676767C7C7C7F7F7F7F7F7F8181
-84848584848484848485878784847F7F7C746C615751575F676C72767C7C79797979767472716C6C
-6A6A6C6C6E6E727474747474767676797C7C7C7C7C7C7C7C7C7C7C7976767676747472726C6C6A67
-615F59547C7F7F81848587878989898C8E8E8F8F9292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949999999999999999999999999494949494949494949494949494949494
-9494949499999A9A9A9A9A9A9994949494949492929292929292928F8E8E8E8E8E8E8F9292929292
-92929292929494999A9C9C9E9EA1A4A4A4A4A4A19E9E9E9C9C9A949492928F8E8E8E8F92928F8E89
-8989877F7C74767C84898E9294999A9C9E9EA4A6A9ABAEAEAEB1B1B1B3B3B3B1B1B1AEAEA9A9A69E
-9C94928E89878587878C92949C9EA1A4A4A4A6A6A6A6A6A6A4A4A4A4A4A4A3A19E9E9C9C9C9A9A9A
-9A999494949494949494929292929292928F8E8E8E8E8E8C89898989898989898989878787878789
-8987878787878787878989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8E8E8E8E8F8F8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989
-898989898989898987878585858585858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C
-7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C6A6A6A6A6A6A676767666161615F5F
-5F5F5F5C5757FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929494949494949494949494949494949494949494949494949494949292929292929292
-92929292929292928F8E8E8E767C818789898E929294969A9C9C9EA1A4A6A9AEB1B3B9BBC0C1C6CC
-CFD3D4D9D9DFE1E6E7E7ECECECF1F2F4F4F4F7F7F7F7F7F7F7F7F4F4F2F2F1EEECECECECECE7E7E6
-E4E1DFDEDCD9D9D9D4D4D3D1CFCFCFCFCCCCCCC8C8C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAE
-AEAEABABABA9A9A9A9A6A6A6A6A6A4A4A4A3A19E9E9E9A897C6A747476797C7C7F7F7F7F7F818184
-8485878787878787858787878785817F7C79726A615754575F6A7274797C7C7C7C7C7C767474726E
-6C6C6C717272727474747676767679797C7C7C7C7C7C7C7C7C7C7C7C7B797676747472726E6C6A6A
-665F5D574F7C7C7F7F81848787878989898C8E8E8F8F8F9292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292949494
-94949494929292949494949494949292949494949494949494949494949494949494949494949494
-9494949494949996949496999A9A9A9A9A9A9A9A9A9A999994949494949494949494949494949494
-949496999A9A9A9A9A9A9A999494949494949292929292929292928F8E8E8E8E8E8F929292929292
-92929292949499999A9C9C9E9EA1A4A4A4A4A19E9E9C9C9C9A999492928F8E8E8E8E8F8F8F8C8989
-89857F7C76747C7F87898F92949A9C9C9EA4A4A6A9ABAEAEAEB1B1B3B3B3B3B1B1B1AEABA9A6A49E
-9A948F8987858787899294999C9E9EA3A4A4A6A6A4A4A4A4A4A4A4A4A4A4A3A19E9E9C9C9C9A9A9A
-9A999494949494949494929292929292928F8E8E8E8E8E8C89898989898989898989878787878789
-8989878787878787878989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989
-89898989898989898787858585858585858585858585858481817F7F7F7F7F7F7F7F7F7C7C7C7C7C
-7C7C7C7C7C7C7976767676767676747474747472726C6C6C6C6C6A6A6A6A6A6A676767616161615F
-5F5F5F5D5957FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929294949494949494949494949494949494949494949494949494949494949292929292929292
-929292929292928F8E8E8E8E767F8487898C8F929494999A9C9C9EA3A4A6ABAEB1B6B9BBC1C4C6CC
-CFD3D4D9DCDFE1E6E7E7ECECECF1F2F2F4F4F7F7F7F7F7F7F7F4F4F4F2F2F1EEECECECECE9E7E7E6
-E4E1DFDCDCD9D9D9D4D4D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAE
-AEAEAEABABABA9A9A9A9A6A6A6A6A6A6A4A4A4A4A4A4A49987766A7476797C7C7C7F7F7F81818484
-858787878787878787878787878785817F7C76726A5F555457616C72767C7C7C7C7F7C7C79767472
-72716E71727272747476767679797C7C7C7C7C7C7F7F7C7C7C7C7C7C7C7C797676747472716C6A67
-66615F575576797C7F7F7F81848787878989898C8E8E8F8F8F929292929292928F92929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-94949492929292929294949494949292929494949494949492949494949492929494949494949494
-949494949499999999999A9A9A9A9A9A9A9A9A9A9A9A999494949494949494949494949494949494
-9499999A9A9A9A9A9A9A9A9994949494949492929292929292928F8E8E8E8E8E8F92929292929292
-92929292949499999A9C9E9E9EA1A3A4A4A39E9E9C9C9A9A99949492928F8E8E8E8E8F8E8C898989
-857F7C76747C7F84898E9294999A9C9EA1A4A6A6A9ABAEAEB1B1B1B1B3B3B3B1B1B1AEABA6A69E9C
-94928E87858585878E92949A9C9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A3A39E9E9E9E9C9C9A9A9A
-9A99949494949494949492929292929292928F8E8E8E8E8E8C898989898989898989898787878989
-8989878787878787898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989
-89898989898989898787878585858585858585858585858584817F7F7F7F7F7F7F7F7F7C7C7C7C7C
-7C7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C6A6A6A6A6A6A676767666161615F
-5F5F5F5F5C57FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92949494949494949494949494949494949494949494949494949494949494949292929292929292
-92929292928F8F8E8E8E8E747C7F8587898E8F929494999A9C9C9EA4A6A9ABB1B3B9BBBEC1C6C8CC
-D1D4D4D9DCDFE4E6E7E7ECECECF1F2F2F4F4F7F7F7F7F7F7F7F4F4F4F2F2F1EEECECECECE7E7E7E6
-E4E1DFDEDCD9D9D9D4D4D3D1CFCFCFCCCCCCC9C8C6C6C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEAEAEAEAEAEAEAEAE
-AEAEAEAEABABABA9A9A9A9A6A6A6A9A6A6A6A6A4A4A4A4A39484746A7676797C7C7F7F8181848485
-878787878789898987878787878787847F7F7B746C675F54545C666C74767C7F7F7F7F7F7C7C7674
-747472727272747474767979797C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7C7C7C7976747472726E6A67
-66615F5C574F74767C7C7F7F7F818487878789898C8C8E8E8F8F8F92929292928F8F8F8F92929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929492929292929292929494929292929292949494949492929294949292929292949494949494
-9494949494999A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9A999494949494949494949494999994949496
-999A9A9A9A9A9A9A9A9A999494949494949292929292929292928F8E8E8E8F929292929292929292
-92929294949494999A9C9E9E9E9EA3A4A49E9E9C9C9A9994949492928F8E8E8E8E8E8E8C89898787
-7F7C7674767F7F87899292949A9C9E9EA4A4A6A6ABAEAEAEB1B1B1B1B3B3B3B1B1AEAEA9A6A49E9A
-948F89878584848992949A9C9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9C9C9A9A9A
-9A99949494949494949492929292929292928F8E8E8E8E8E8C898989898989898989898787898989
-8989898787878789898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989
-89898989898989898987878585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C
-7C7C7C7C7C7C7C7976767676767676747474747472726C6C6C6C6C6A6A6A6A6A6A67676761616161
-5F5F5F5F5D59FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929294
-94949494949494949494949494949494949494949494949494949494949494929292929292929292
-929292928F8E8E8E8E8E8E767C818789898E92929494999A9C9E9EA4A6A9AEB1B3B9BBC0C1C6C8CF
-D1D4D7D9DCE1E4E6E7E7ECECECF1F2F2F4F4F4F7F7F7F7F7F7F4F4F2F2F2F1EEECECECECE7E7E7E6
-E4E1DFDFDCD9D9D9D4D4D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C1C1C1C1C1C1C1C0BBBBBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1AEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEABABABA9A9A9A9A9A9A9A9A9A9A6A6A6A6A6A49E9281746A76797B7C7F7F7F81848587
-87878787898989898989898989878787817F7C76746C675C4F545F6772747C7F7F7F7F817F7F7C79
-76767474747474747476797C7C7C7C7C7F7F818181817F7F7F7F7F7F7F7F7C797676747472716C6A
-6661615F57544F7476797C7C7F7F8184848787898989898C8E8E8E8F8F92928F8F8E8E8F8F8F9292
-9292929292928F9292929292929292928F9292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929294949292929292929292929292929494949494
-9494949494999A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9A9494949494949494949499999A9994949999
-9A9A9A9A9A9A9A9A9A9A9994949494949492929292929292928F8E8E8F8F92929292929292929292
-92929294949494999A9C9C9E9E9EA1A3A19E9C9C9A999494949292928F8E8E8E8E8E8C8989878781
-7C7674767C7F84898E9294999C9C9EA3A4A6A6A9ABAEAEAEAEB1B1B1B3B3B1B1B1AEAEA9A6A19C96
-928C87858581858992949A9C9E9E9EA1A4A4A3A3A3A3A3A3A1A1A1A1A1A39E9E9E9E9E9C9C9A9A9A
-9A9A969494949494949494929292929292928F8E8E8E8E8E8E8C8989898989898989898989898989
-8989898787878989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989
-89898989898989898987878585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C7C
-7C7C7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C6A6A6A6A6A6A67676766616161
-5F5F5F5F5F5CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292949494
-94949494949494949494949494949494949494949494949494949494949494929292929292929292
-9292928F8E8E8E8E8E8E8E797F8487898C8F929494949A9A9C9EA3A4A6A9AEB1B6B9BBC1C4C6C9CF
-D3D4D9D9DFE1E6E7E7E9ECECECF1F2F2F4F4F4F7F7F7F7F7F7F4F4F2F2F2EEECECECECECE7E7E6E6
-E4E1DFDEDCD9D9D9D4D4D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEABABABA9A9A9A9A9A9A9ABA9A9A9A9A9A6A4A39C8E8174667676797C7F7F81848787
-8787878789898989898989898989878785817F7C76746C675F4F575F6A74767C7F7F7F8184817F7C
-7C7976767674747676767C7C7C7C7F7F7F818484848484848181817F7F7F7F7C7976747472726E6A
-6764615F59554F6C727476797C7F7F818184858789898989898C8C8E8E8F8F8F8E8E8E8E8E8E8F8F
-8F929292928F8F8F8F8F92929292928F8F8F8F8F9292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292949494
-9494949494999A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9994949494949494949494999A9A9999999A9A
-9A9A9A9A9A9A9A9A9A999494949494949292929292929292928F8F8F929292929292929292929292
-92929294949494999A9C9C9E9E9E9E9E9E9C9C9A999494949292928F8E8E8E8E8E8C89898787817C
-7676767B7F7F87899294949A9C9E9EA4A6A6A9A9ABAEAEAEAEB1B1B1B3B3B1B1B1AEA9A6A49E9A94
-8F89878581818792949A9C9E9E9E9E9EA3A1A19E9E9EA1A19E9E9E9E9E9E9E9E9E9E9E9C9C9A9A9A
-9A9A999494949494949494929292929292928F8E8E8E8E8E8E8C8989898989898989898989898989
-898989898789898989898989898989898989898989898989898989898E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989
-89898989898989898987878585858585858585858585858585817F7F7F7F7F7F7F7F7F7F7F7C7C7C
-7C7C7C7C7C7C7C7C7976767676767676747474747472726E6C6C6C6C6A6A6A6A6A6A676767646161
-615F5F5F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949494949494949494949494949494949492929292929292929292
-92928F8E8E8E8E8E8E8E767C7F8587898C8F929494999A9C9C9EA4A6A6ABAEB1B7B9BBC1C6C6CCCF
-D3D4D9D9DFE1E6E7E7ECECECEEF1F2F2F4F4F4F7F7F7F7F7F7F4F4F2F2F1EEECECECECECE7E7E6E6
-E4E1DFDCDCD9D9D9D4D4D1CFCFCFCFCCCCC9C8C8C6C6C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEABABABA9A9A9A9ABABABABABABA9A9A6A6A49E9A8C7F725F76767C7C7F81818587
-8787878989898989898C8C8C898989878784817F7C76746C675F4F57616C74797C8181818787847F
-7C7C7C7C79797676797C7C7C7C7F7F7F818485878787878787858481817F7F7F7C7976747472716C
-6A6661615D57544F6C727476797C7F7F7F818185878989898989898C8C8E8E8E8E8E8E8E8E8E8E8E
-8F8F8F92928F8E8E8E8E8F8F8F92928F8E8E8E8F8F8F8F9292929292928F8F8F9292929292929292
-929292929292929292928F9292929292929292929292929292929292929292929292929292929494
-949494949496999A9C9C9C9E9E9E9C9C9C9C9C9C9A99949494949494949494969A9A9A9A999A9A9A
-9A9A9A9A9A9A9A9A9A999494949494929292929292929292928F9292929292929292929292929292
-92929292949494999A9C9C9C9E9E9E9E9C9C9A999494949292928F8E8E8E8E8E8989898787847F76
-76767B7F7F84898E9294999C9C9EA4A4A6A6A9ABAEAEAEAEAEB1B1B1B1B3B1B1AEA9A6A49E9C9992
-8C8785847F818992949A9C9E9E9E9E9EA1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A
-9A9A99949494949494949492929292929292928E8E8E8E8E8E8E8C89898989898989898989898989
-898989898989898989898989898989898989898989898989898989898E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989
-8989898989898989898787858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7C7C7C
-7C7C7C7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C6A6A6A6A6A6A676767666161
-615F5F5F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949494949494949494949494949494949292929292929292929292
-92928F8E8E8E8E8E8E8E767F818787898E92949496999A9C9EA1A4A6A9AEB1B3B9BBC0C1C6C8CCCF
-D3D4D9D9DFE1E6E7E7ECECECEEF1F2F2F4F4F4F7F7F7F7F7F4F4F4F2F2F1EEECECECECE9E7E7E6E6
-E1E1DFDCDCD9D9D9D4D4D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEABABABABABABABAEAEAEAEAEAEABA9A6A4A39E948779745774767C7F7F818487
-87878989898989898C8E8E8E8E8C8989878787847F7C76746C675F4F5C6672747C7F818187878784
-7F7F7C7C7C7C7C7C7C7C7C7F7F7F7F8184858787878787878787878484817F7F7F7C7C767674726C
-6A6764615F59554F6A6C727476797C7F7F7F7F818587878989898989898C8C8E8E8E8E8E8E8E8E8E
-8E8E8E8F8F8E8E8E8E8E8E8E8F8F8F8E8E8E8E8E8E8E8F8F8F929292928F8E8E8F8F8F9292929292
-9292929292929292928F8F8F8F9292929292929292929292928F8F92929292929292929292929292
-949494949494999A9C9C9C9E9E9E9E9C9C9C9C9C9A94949494949494949494999A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9994949494949492929292929292929292929292929292929292929292929292
-92929292949494999C9C9C9C9C9C9E9C9C9C9A9494929292928F8E8E8E8E8E8989898787847F7676
-76797C7F8187899292949A9C9EA1A4A6A6A9ABAEAEAEAEAEAEB1B1B1B1B1B1AEABA6A4A39C9A948F
-8987857F7F878F94999C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A
-9A9A99949494949494949492929292929292928F8E8E8E8E8E8E8C89898989898989898989898989
-898989898989898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989
-8989898989898989898787858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7C7C
-7C7C7C7C7C7C7C7C7C7976767676767676747474747472726E6C6C6C6C6A6A6A6A6A6A6767676461
-61615F5F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949494949494949494949494949494929292929292929292929292
-928F8E8E8E8E8E8E8E767C7F848789898E929494999A9A9C9EA3A4A6A9AEB1B6B9BBC0C1C6C8CCD1
-D3D4D9DCDFE1E6E7E7ECECECEEF1F2F2F2F4F4F7F7F7F7F7F4F4F4F2F2F1EEECECECECE7E7E7E6E6
-E1E1DFDCDCD9D9D9D4D4D3D1CFCFCFCCCCC9C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEABABABAEAEAEAEAEAEAEAEAEAEA9A6A6A49E9C92817C745574797C7F818487
-878789898989898C8E8E8F8F8F8F8E898989878784817F7C74726A5F4F5F6774767C818487878987
-84817F7F7F7F7F7F7C7C7F7F7F81818487878789898989898987878785848181817F7F7C79767472
-6C6761615F5C57514F6A6C727476797C7F7F7F7F8185878787898989898989898C8C8E8E8E8E8E8E
-8E8C8C8E8E8E8E8E8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8E8E8E8E8E8F8F8F8F9292
-9292928F8F8F8F928F8F8E8E8F8F8F929292928F8F8F92928F8F8E8F8F9292929292929292929292
-929294949494999A9A9C9C9C9E9E9E9C9C9C9C9A9994949494949999949494999A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9994949494929292929292929292929292929292929292929292929292929292
-929292929494999A9A9C9C9C9C9C9C9C9A9A9494929292928F8E8E8E8E8C8989898787847C767676
-767C7F7F84898E9294999C9C9EA4A4A6A9A9AEAEAEAEAEAEAEAEB1B1B1B1AEAEA9A6A49E9C94928C
-8787817F818992949A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9E9C9C9C9C9C9A9A
-9A9A99949494949494949492929292929292928F8E8E8E8E8E8E8E8C898989898989898989898989
-898989898989898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989
-8989898989898989898787878585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7C7C
-7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C6A6A6A6A6A6A6A67676661
-6161615F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949494949494949494949494949292929292929292929292929292
-928F8E8E8E8E8E8C89767F7F8487898C8F9494999A9A9C9C9EA4A6A6ABAEB1B7B9BBC1C6C6CCCFD1
-D4D4D9DCDFE1E6E7E7ECECECEEF1F2F2F2F4F4F7F7F7F4F4F4F4F2F2F2F1EEECECECECE7E7E6E6E4
-E1E1DFDCD9D9D9D9D4D4D3D1CFCFCFCCCCC9C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEABAEAEAEAEAEAEAEAEAEAEAEABA9A6A4A39E9A89817C6C51747B7C7F8185
-8787878989898C8E8E8E8F8F92928F8E8C8C8989878784817F79746C614F5F6C74797F8487878989
-878481817F7F7F7F7F7F7F7F818184878787898989898989898989878787878584817F7F7C7C7674
-726A645F5F5D57554F616A6C727476797C7C7F7F7F818787878789898989898989898C8C8E8E8E8E
-8C8989898C8C8E8E8E8E8C89898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8E8E8E8E8E8F8F8F
-92928F8F8E8E8F8F8F8E8E8E8E8E8F8F8F928F8F8E8E8F8F8F8E8E8E8E8F8F929292928F8F929292
-929292949494999A9A9C9C9C9E9E9C9C9C9C9C9A9494949496999A999694999A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A969494929292929292929292929292929292929292929292929292929292928F
-8F9292949494999A9A9C9C9C9C9C9C9A9994949292928F8E8E8E8E8E8C8989898787817C76767676
-7C7F7F8187898F92949A9C9EA3A4A6A6A9ABAEAEAEAEAEAEAEAEB1B1B1AEAEA9A6A49E9C99948F89
-87847F7F878C92949A9C9C9C9C9C9C9E9E9E9E9E9C9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9A9A
-9A9A99949494949494949492929292929292928F8E8E8E8E8E8E8E8C898989898989898989898989
-898989898989898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C898989898989898989
-8989898989898989898987878585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7C
-7C7C7C7C7C7C7C7C7C7C7C7676767676767676747474747272716C6C6C6C6A6A6A6A6A6A67676766
-6161615F5F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949494949494949494949494949292929292929292929292929292
-8F8E8E8E8E8E8E89767C7F818787898E929494999A9A9C9EA1A4A6A9AEB1B3B9B9BBC1C6C8CCCFD3
-D4D9D9DCDFE1E6E7E9ECECECEEF1F2F2F2F4F4F4F4F4F4F4F4F4F2F2F2EEECECECECECE7E7E6E6E4
-E1E1DFDCD9D9D9D9D4D4D3D1CFCFCFCCCCC9C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1AEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEA9A6A6A49E9C9289817C6A72767C7F7F84
-85878789898C8C8E8E8F8F92929292928F8F8E8C8989878784817C747266576172767C7F87878789
-89878784848481818181818184848787878989898C8C8C8C8989898989878787878584817F7C7C76
-746C67615D5C57554F4F616A6C727476797C7C7F7F818485878789898989898989898989898C8C8C
-8989898989898C8C8E8C8989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8E8C8C8E8E8E8E8E8E8E8E8F8F92928F8F8E8F8F92
-92929292949494999A9A9C9C9E9E9C9C9C9C9A9694949699999A9A999999999A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9994949492929292929292929292929294929292929292929292928F9292928F8E
-8F92929494999A9A9A9A9C9C9A9A9A9694949292928F8E8E8E8E8E8C8989878787817C767679767C
-7C7F7F85898E9292949A9C9EA4A4A6A6A9AEAEAEAEAEAEAEAEAEB1B1B1AEA9A6A4A19C9A94928987
-877F7C81878E92949A9C9C9C9C9C9C9C9E9E9E9C9C9C9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9A9A
-9A9A99949494949494949492929292929292928F8E8E8E8E8E8E8E8E8C8989898989898989898989
-898989898989898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C89898989898989898989
-8989898989898989898987878585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7C
-7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472726C6C6C6C6A6A6A6A6A6A6A676767
-616161615F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949494949494949494949494949494949494949492929292929292929292929292928F
-8F8E8E8E8E8E8C89767F7F848789898F9294999A9A9C9C9EA4A4A6A9AEB1B6B9BBC0C1C6C8CCCFD3
-D4D9D9DCDFE4E6E7ECECECECEEF1F2F2F2F4F4F4F4F4F4F4F4F4F2F2F1EEECECECECECE7E7E6E6E4
-E1E1DFDCD9D9D9D9D4D4D3D1CFCFCFCCCCCCC8C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C0BBBBBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABA9A6A4A49E9C928981796474767C7F7F
-84878787898C8E8E8F8F9292929292929292928F8F8E8C898987877F7C746C616774767F84878789
-898987878787858585848485858787878989898C8E8E8E8E8E8E8E8C8989898987878787847F7F7C
-76746C645F595757544F5F666A6C727476797C7F7F81818587878789898989898989898989898989
-898989898989898989898989898989898989898E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898C8E8E8E8E8E8E8E8E8E8F8F8F8E8E8E8E8F
-8F9292929494949999999A9C9E9C9C9C9A9A99949499999A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A99949492929292929292929292949494949492929292929292928F8F8F928F8E8E
-9292929494999A9A9A9A9C9A9A9994949292928F8F8E8E8E8E8E898989878785817F76767C767C7C
-7F7F84878C8F9294999C9CA1A4A4A6A9ABAEAEAEAEAEAEAEAEAEAEB1AEABA9A6A49E9C99948F8987
-817C7F84898E92949A9A9C9C9C9C9C9C9C9E9E9C9C9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A
-9A9999969494949494949292929292929292928F8E8E8E8E8E8E8E8E8C8989898989898989898989
-8989898989898989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8989898989898989898989
-898989898989898989898787858585858585858585858585858581817F7F7F7F7F7F7F7F7F7F7F7F
-7C7C7C7C7C7C7C7C7C7C7C7C7676767676767676747474747472716C6C6C6C6A6A6A6A6A6A676767
-666161615F5FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949494949494949494949494929292929292929292929292928F8E
-8E8E8E8E8E8E89747C7F818787898E929494999A9C9C9E9EA4A6A6ABAEB1B6B9BBC0C4C6CCCFCFD3
-D4D9D9DFE1E4E6E7ECECECECEEF1F2F2F2F4F4F4F4F4F4F4F4F4F2F2F1EEECECECECE9E7E7E6E6E4
-E1E1DFDCD9D9D9D9D4D4D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABA9A6A6A49E9C9992897F765F74797C7F
-7F84878789898E8F8F92929292929494949292929292928F8E898989877F79746A54747C7F878789
-898C898987878787878787878787878989898C8E8E8F8F8F8F8F8F8F8F8E8C89898989898785817F
-7C76726A615C5755554F4F5F676A6C727476797C7F7F818487878789898989898989898989898989
-898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898C8E8E8E8E8E8C8C8E8E8E8E8C8C8E8E
-8F8F9292929494969494999A9C9C9C9A9A999694999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9999949494929292929292929294949494949494929292929292928F8E8E8F8F8E8E8F
-9292949496999A9A9A9A9A9A9994949292928F8E8E8E8E8E8C898989878785817F76767C79797C7F
-7F8187898E8F9294999C9EA3A4A6A6A9AEAEAEAEAEAEAEAEAEAEAEB1AEA9A6A49E9C9A94928C8984
-7F7C7F8787898F9294999A9A9A9C9C9C9C9C9C9C9C9C9C9C9E9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A
-999999949494949494929292929292929292928F8E8E8E8E8E8E8E8E8E8C89898989898989898989
-89898989898989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8989898989898989898989
-898989898989898989898787858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F
-7F7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472726C6C6C6C6C6A6A6A6A6A6A6767
-67616161615FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949494949494949494949494949494949494949494949292929292929292929292928F8E8E
-8E8E8E8E8E8C89767F7F848789898E9294969A9A9C9C9EA3A4A6A9AEB1B3B7B9BBC1C6C8CCCFD1D3
-D4D9D9DFE1E4E6E7ECECECECEEF1F2F2F2F4F4F4F4F4F4F4F4F4F2F2F1EEECECECECE7E7E7E6E6E4
-E1E1DFDCD9D9D9D9D4D4D3D1CFCFCFCFCCCCC8C8C6C6C6C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABA9A6A6A39E9C948F877C725574797C
-7F7F848787898E8F8F92929292949494949494949292949492928E8E8C89857F766C57767C818789
-89898C89878789878787878787878989898C8E8E8F8F8F929292929292928F8F8E8C8C8989878781
-7F7C766E675F5755554F4F4F616A6C6E7274767B7C7F818485878789898989898989898989898989
-898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F
-8F8F8E8E8E8E8E8E8E8F8F8E8E8E8E8E8E8E8E8C898989898C8E8E8E8E8C89898C8E8E8C89898C8C
-8E8E8F8F92949494949494999A9C9A9A99999494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A99999494949492929292929294949494949494949494949292929292928E8E8E8E8E8E8E92
-92929494999A9A9A9A9A9999949492928F8F8E8E8E8E8E8C898989878784817F76767C797C7C7C81
-818487898E9292949A9C9EA4A4A6A6A9AEAEAEAEAEAEAEAEAEAEAEAEABA6A6A39E9C99928F89877F
-7C7C818187898C8F929494949A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9C9C9C9C9C9A9A9A9A
-99999494949494949492929292929292929292928E8E8E8E8E8E8E8E8E8C89898989898989898989
-898989898989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C898989898989898989898989
-89898989898989898989878785858585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F
-7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C6A6A6A6A6A6A6767
-67666161615FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949494949494949494949494949494949494949292929292929292929292928F8E8E8E
-8E8E8E8E8E8974797F818787898E8F9294999A9C9C9C9EA4A6A6A9AEB1B3B9B9BBC1C6C8CCCFD1D4
-D4D9DCDFE1E4E6E7ECECECECEEF2F2F2F2F2F4F4F4F4F4F4F4F2F2F2F1EEECECECECE7E7E6E6E4E4
-E1E1DFDCD9D9D9D9D4D4D3D1D1CFCFCFCCCCC8C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABA9A9A6A49E9C9C948F857C6A747679
-7C7F818487898C8F929292929494949494949494949494949494929292928F877F767259767F8789
-89898989898989898989898989898989898E8F8F8F8F92929292929292929292928F8F8E8E898987
-847F7C746C615C5555544F4F57616A6C717274797C7F7F8184878787898989898989898989898989
-89898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8E8F8F92
-92928F8F8E8E8E8E8F928F8F8F8E8E8E8E8E8E8C89898989898E8E8E8E8C898989898C8989898989
-8C8E8E8F929294949492949494999996949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A99999494949494929292929494949494949494949494949492929292928F8E8E8E8E8E8E8F92
-92949494999A9A9A999999949492928F8E8E8E8E8E8E8C898989898787817F79797C7C7C7C7C7F81
-8187898C8F9294999C9C9EA4A4A6A6A9AEAEAEAEAEAEAEAEAEAEAEAEA9A6A49E9C9A94928C89847C
-7C7F7C7F848789898E929294999A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9C9C9C9C9A9A9A99
-99999494949494949492929292929292929292928F8E8E8E8E8E8E8E8E8E8C898989898989898989
-898989898989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-89898989898989898989878787858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F
-7F7F7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472726E6C6C6C6C6A6A6A6A6A6A67
-676764616161FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949494949494949494949292929292929292929292928F8E8E8E8E
-8E8E8E8E8989767C7F848789898E929494999A9C9C9EA1A4A6A6ABAEB1B3B9BBBEC1C6C9CCCFD3D4
-D9D9DCDFE1E4E6E7ECECECEEF1F2F2F2F2F2F4F4F4F4F4F4F2F2F2F1EEECECECECECE7E7E6E6E4E4
-E1E1DFDCD9D9D9D7D4D4D3D3D1CFCFCFCCCCC9C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABA9A6A6A39E9C9C94898176617476
-7C7C7F818787898E929292929494999999999999969499999A9A99949492929289847C725C7C8187
-8989898C898989898C898989898989898E8E8F9292929292929492929292949492929292928F8E89
-87857F7C726A5F5755544F4F4F57646A6C7274797C7C7F8184858787898989898989898989898989
-898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F92928F8F8F9292
-929292928F8F8F8F8F9292928F8F8F8E8E8E8E8E89898989898C8E8E8E8C898989898C8C89898989
-8C8E8E8E8F9292929292929294949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-999994949494949292929292949494949494949494949494949492929292928E8E8E898C8E8E9292
-92949496999A99999994949492928F8E8E8E8E8E8E8E898989898787847F7C7C7C7C7C7C7F7F8184
-8787898E9292949A9C9EA3A4A6A6A6A9AEAEAEAEAEAEAEAEAEAEAEABA6A6A39E9C94928E89877F76
-7C7C7C7C7F848789898C8F9294969A9A9A9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9C9C9C9A9A9A9A99
-99949494949494949492929292929292929292928F8E8E8E8E8E8E8E8E8E8C898989898989898989
-8989898989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-8989898989898989898989878785858585858585858585858585858481817F7F7F7F7F7F7F7F7F7F
-7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C6A6A6A6A6A6A67
-676766616161FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949494949494949494949494949494949292929292929292929292928F8E8E8E8E8E8E
-8E8E8C898972767F7F8787898E8F929494999A9C9C9EA3A4A6A9AEAEB1B6B9BBC0C1C6CCCFCFD3D4
-D9D9DCDFE1E4E6E7ECECECEEF1F2F2F2F2F2F4F4F2F2F2F2F2F2F2F1EEECECECECECE7E7E6E6E4E1
-E1E1DFDCD9D9D9D4D4D4D3D3D1CFCFCFCCCCC9C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9
-B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1
-B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABA9A6A49E9E9C9C92877C725774
-767C7F7F8487898C8F9292929494999A9A9A9A9A9A9A9A9A9A9C9C9A9A949494948E877C725C7F85
-898989898C89898C8E8989898989898C8E8F9292929292929494949494949494949494929292928F
-8989857F766E675D55544F4F4F515C676C7174797C7F7F7F81848787878989898989898989898989
-8989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F92929292928F9292
-9292929292928F8F929292929292928F8F8E8E8E8C8C8C8C8C8C8E8E8E8C89898989898C89898989
-898E8E8E8E8E8F92928F9292929494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99
-9994949494929292929294949494949494949494949494949492929292928F8E8C8989898C8F9292
-949494949999969494949492928E8E8E8E8E8E8E8E8C8989898987857F7C7C7C7C7C7C7F7F818485
-8789898E9294999C9C9EA4A4A6A6A6A9AEAEAEAEAEAEAEAEAEAEABA9A6A49E9C9A948F8987817C79
-797C7C7C7C7F858789898E92929494999A9A9A9A9A9A9A9C9C9C9C9C9A9A9A9A9A9C9C9A9A9A9999
-9694949494949494949292929292929292929292928F8E8E8E8E8E8E8E8E8E8C8989898989898989
-89898989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989
-8989898989898989898989878787858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F
-7F7F7F7C7C7C7C7C7C7C7C7C7C7C7976767676767676767474747472726E6C6C6C6C6A6A6A6A6A67
-676767666161FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949494949494949292929292929292929292928F8E8E8E8E8E8E8E
-8E8C898989767C7F848789898E929294949A9C9C9E9EA4A6A6A9AEB1B1B6B9BBC0C4C6CCCFCFD3D4
-D9D9DFDFE1E4E6E7ECECECEEF1F2F2F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECE9E7E7E6E6E4E1
-E1E1DFDCD9D9D9D4D4D4D3D3D1CFCFCFCCCCC9C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0BBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7
-B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1
-B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABA6A6A49E9E9E9A8E81766672
-74767C7F818789898E9292929494999A9A9A9A9A9A9A9C9C9C9C9C9E9C9A999494948E847671577F
-8787878989898C8E8E8C8989898C8C8E8F9292929292929294949494949496999694949494929292
-928C87817C746A61574F514F4F4F555F6A6C74767C7C7F7F81848787878989898989898989898989
-8989898989898989898989898C898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F8F9292929292929292
-92929292929292929292929292929292928F8F8E8E8E8E8F8F8F8E8E8E8E89898989898C89898989
-898C8E8E8E8E8E8E8E8F9292929494949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994
-949494949492929292949494949494949494949494949494949292928F8F8E8C898989898C8F9292
-94949494949494949492928F8E8E8E8E8E8E8E8E8E898989878785817C7C7C7F7F7C7C7F7F858587
-89898C9294949A9C9E9EA4A4A6A6A9A9AEAEAEAEAEAEAEAEABABA9A6A4A19C9A94928E89857F7679
-7C7F7F7F7F7F818787898E8F929494949999999A9A9A9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9999
-9494949494949494949492929292929292929292928F8E8E8E8E8E8E8E8E8E8C89898C8C89898989
-898989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989
-898989898989898989898987878785858585858585858585858585858584817F7F7F7F7F7F7F7F7F
-7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472726C6C6C6C6A6A6A6A6A67
-676767676161FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949494949494949494949494949494949492929292929292929292928F8E8E8E8E8E8E8E8E
-8C89898974767C7F8587898E8F929494999A9C9C9EA1A4A6A9A9AEB1B3B7B9BBC1C6C8CCCFD1D3D4
-D9D9DFE1E1E4E6E7ECECECEEF1F2F2F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECE7E7E7E6E4E4E1
-E1E1DFDCD9D9D9D4D4D4D3D3D1CFCFCFCCCCCCC8C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C0BBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1
-B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABA9A6A4A4A19E9E94877C745C
-7274767C7F8487898C8F92949494999A9C9C9C9C9C9C9C9C9C9C9E9E9E9C9C9A9A9994897F766C55
-7F878787898C8E8E8E8E8C898C8C8E8F92929294949492949494969694999A9A9A9A999694949494
-928F89877F7672675F554F4F4F4F4F555F6A72747B7C7F7F81818487878989898989898989898989
-89898989898989898989898C8E8C8C898C8E8E8E8E8E8E8E8E8E8E8E8E8F8F929292929292929292
-929292929292929292929292929292929292928F8F8F929292928F8F8E8E8C8C8C8C8C8C8C898989
-898C8E8E8E8E8E8E8E8F8F929292949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999494
-9494949492929294949494949494949494949494949494949292928F8E8C8989898989898E929294
-9494949494949492928F8E8E8E8E8E8E8E8E8E8E8C8989878785817C7C7C7F7F7F7C7F7F84858787
-898C8F9294999C9C9EA3A4A4A6A6A9ABAEAEAEAEAEAEAEABA9A9A6A6A49E9C99948F89877F79747C
-7F8181818181848587898C8E929294949496999999999A9A9C9C9C9A9A9A9A9A9A9A9A9A9A999996
-949494949494949494949292929292929292929292928F8E8E8E8E8E8E8E8E8E8C8C8C8E89898989
-8989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989
-898989898989898989898989878787858585858585858585858585858584817F7F7F7F7F7F7F7F7F
-7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7676767676767676747474747472716C6C6C6C6A6A6A6A6A
-676767676661FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949494949494929292929292929292928F8F8E8E8E8E8E8E8E8E8C
-89898989767C7F818789898E92929494999A9C9C9EA4A4A6A9ABAEB1B3B9B9BBC1C6C8CCCFD1D4D4
-D9DCDFE1E1E4E6E7ECECECEEF2F2F2F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECE7E7E6E6E4E4E1
-E1E1DFDCD9D9D9D4D4D4D3D1D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1
-B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABA9A6A4A4A39E9A8C81796A
-577274797C7F8589898E92929494999A9C9C9C9C9C9C9C9E9E9E9E9E9E9E9C9C9C9A9992877F7467
-517F878789898E8E8E8E8E8C8C8E8E8F929292949494949494999999999A9A9C9C9A9A9999999494
-94928C87817C746C6157514F4F4F4F4F57616C72767C7C7F7F818184878789898989898989898989
-89898989898C8E8C8C898C8E8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292
-92929292929292929292929292929292929292928F8F92929292928F8F8E8E8E8E8E8E8F8E8C8C89
-8C8E8E8E8E8E8E8E8F8F92929292949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9996949494
-949494949294949494949494949494949494949494949492928F8F8E8C898989878789898F929294
-94949494949492928F8E8E8E8E8E8C8E8E8E8C898989878784817F7C7C7F7F7F7C7F7F8185858789
-898E9294949A9C9E9EA4A4A6A6A6A9ABABAEAEAEAEAEABA9A9A6A6A49E9C9A94928E89847C767C81
-87878787858487878789898E8F9292949494949494999A9A9A9C9A9A9A9A9A9A9A9A9A9A9A999994
-949494949494949494949292929292929292929292928F8E8E8E8E8E8E8E8E8E8C8C8C8E8C898989
-8989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-89898989898989898989898987878785858585858585858585858585858584817F7F7F7F7F7F7F7F
-7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472726C6C6C6C6C6A6A6A6A
-676767676761FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949494949494929292929292929292928E8E8E8E8E8E8E8E8E8989
-89898974767C7F8587898E8F92929494999A9C9E9EA4A6A6A9ABAEB1B3B9BBBEC1C6C9CCCFD3D4D9
-D9DCDFE1E1E4E6E7ECECEEF1F2F2F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECECE7E7E6E6E4E4E1
-E1DFDFDCD9D9D7D4D4D4D3D1CFCFCFCFCCCCC9C8C8C6C6C6C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABA6A6A4A49E9C92877F76
-614F72767C7F8187898C8F929494999A9C9C9C9C9C9C9C9E9E9EA1A1A1A1A19E9E9C9A9492877C74
-647C7F878789898E8E8E8E8E8E8E8E929292949494949494999A9A9A9A9A9C9C9C9C9A9A9A9A9A94
-94928F89877F7C726A5F554F4F4F4F4F4F57616C74767C7F7F7F7F81848787898989898989898989
-8C8C8C898C8E8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292
-92929292929292929292929292929292929292929292929292929292928F8F8F9292928F8F8E8E8C
-8C8E8F8F8E8E8E8E8F92929292949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9694949494
-9494949494949494949494949494949994949494949492928F8E8C89898987878787898E92929494
-949494949292928F8E8E8E8E8C89898C8E8C898989878784817F7C7C7F7F7F7F7F7F818585878989
-8E8F9294999C9C9EA1A4A4A6A6A6A9A9ABAEAEAEAEAEA9A9A6A6A49E9E9C99948F89877F797C8189
-89898989878787878789898E8F929292949494949494999A9A9A9A9A9A9A9A9A9A9A9A9A99999694
-94949494949494949494929292929292929292929292928F8E8E8E8E8E8E8E8E8E8C8E8E8E898989
-89898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-8989898989898989898989898987878785858585858585858585858585858481817F7F7F7F7F7F7F
-7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C6A6A6A6A
-676767676766FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949494949494949494949494949494929292929292929292928F8E8E8E8E8E8E8E8E898989
-898989767C7F818789898F92929494949A9A9C9EA3A4A6A6A9AEAEB1B6B9BBC0C1C6CCCFCFD3D4D9
-D9DCDFE1E1E4E6E7ECECEEF1F2F2F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECE9E7E7E6E6E4E1E1
-E1DFDFDCD9D9D4D4D4D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1
-B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABA9A6A6A4A19C9989847C
-715F6E74767C7F8789898F929494999A9A9C9C9E9E9C9E9E9EA3A3A3A3A3A4A39E9E9C99948E857C
-74617C818787898C8E8E8E8E8E8E8F929294949494969494999A9A9C9A9A9C9C9E9C9C9A9A9A9A99
-9492928E87847F766C6659544F4F4F4F4F4F5C666C74797C7C7F7F7F818487878787898989898989
-898C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F929292929292
-9292929292929292929292929292929292929292929292929292929292928F8F92929292928F8F8E
-8E8F8F8F8F8F8E8F9292929294949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494
-94949494949494949494949494999999969494949492928F8E8C8989898787878789898F92929494
-9494929292928F8E8E8E8E8C8989898989898987878785817F7C7C7C7F7F7F7F7F7F85858787898C
-8F9294969A9C9E9EA3A4A4A6A6A9A9A9ABAEAEAEABABA9A6A6A4A19E9C9A94928E89817C767F898F
-8F8E8C8C898787878989898E8F92929292949494949496999A9A9A9A9A9A9A9A9A9A9A9A99999494
-94949494949494949494929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989
-8C8C89898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-8989898989898989898989898987878785858585858585858585858585858584817F7F7F7F7F7F7F
-7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472726E6C6C6C6C6A6A6A
-6A6767676767FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949494949494949494949494949492929292929292929292928E8E8E8E8E8E8E8E8C898989
-898787767C7F8587898E8F92929494999A9C9C9EA4A6A6A9A9AEB1B1B7B9BBC1C4C6CCCFCFD3D4D9
-D9DFDFE1E4E4E6E7ECECEEF1F2F2F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECE7E7E7E6E6E4E1E1
-E1DFDFDCD9D9D4D4D4D3D3D1CFCFCFCCCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1
-B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABA9A6A6A49E9A92877F
-796A5C7174797F8487898E929294999A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A4A4A39E9C9A94928C84
-7C72617C858789898C8E8E8E8E8F8F9292949494949999999A9A9A9C9C9C9C9E9E9E9C9C9C9C9C9A
-9494928F89877F7C746A5F554F4F4F4F4F4F4F5C676C7476797C7C7F7F8184878787878787898989
-898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F92929292
-92929292929292929292929292929292929292929292929292929292929292929292929292928F8F
-8E8F9292928F8F8F92929294949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494
-949494949494949494949499999A9A9A9994949492928F8C898989878787858787898E9292929292
-92929292928F8F8E8E8E8C8989898989898987878585847F7F7F7F7F7F7F7F7F7F8485878789898E
-9292949A9C9C9E9EA3A4A6A6A6A6A9A9ABABABABABA9A6A6A4A19E9C9A9494928C877F767C879294
-9494928E8C89898989898C8E8E9292929292929494949499999A9A9A99999A9A9A9A9A9999969494
-9494949494949494949492929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8C89
-8C8C898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989
-898989898989898989898989898987878785858585858585858585858585858481817F7F7F7F7F7F
-7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C6A6A6A
-6A6767676767FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949494949494949494949492929292929292929292928F8E8E8E8E8E8E8E8E89898989
-8787767C7C8187898C8F9292949496999A9C9EA1A4A6A6A9A9AEB1B3B9BBBEC1C6C8CCCFD1D3D4D9
-D9DFE1E1E4E4E6E7ECECEEEEF1F2F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECE7E7E7E6E4E4E1E1
-E1DFDFDCD9D9D4D4D4D3D1D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0C0BBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A6A49E9C948E87
-7C74665772747C7F87898C8F929494999A9C9C9E9E9E9E9EA4A4A4A4A4A4A4A4A4A39E9C9A949289
-817C72617F878789898E8E8E8E8F8F929294949499999A9A9A9A9A9C9C9C9C9E9E9E9E9C9C9C9C9A
-999492928E89847F766E665C544F4F4F4F4F4F4F59616C727476797C7C7F81848587878787878989
-8989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F9292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-8F8F92929292929292929294949499999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494
-9494949494949494949699999A9A9A9994949492928F8C89898987878585878789898E9292929292
-9292928F8F8E8E8E8E8E898989898989898787858584817F7F7F7F7F7F7F7F7F8185858789898C8F
-9294969A9C9E9EA1A4A4A6A6A6A6A9A9A9ABABABA9A6A6A4A19E9C9A9994928F89817C7B84929499
-9C9A94928F8C8989898C8E8E8F8F92929292929494949494999A9A9999999A9A9A9A9A9999949494
-9494949494949494949492929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C
-8C8E8C8989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-898989898989898989898989898989878785858585858585858585858585858584817F7F7F7F7F7F
-7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7B7676767676767676747474747272716C6C6C6C6A6A
-6A6A67676767FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949494949494949494929292929292929292929292928E8E8E8E8E8E8E8E8C89898989
-8785767C7F8587898E8F92929494999A9A9C9EA4A4A6A6A9ABAEB1B6B9BBC0C1C6C8CCCFD1D4D4D9
-DCDFE1E1E4E6E6E7ECECECEEF1F2F2F2F2F2F2F2F2F2F2F2F2F2EEEEECECECECE7E7E6E6E4E4E1E1
-E1DFDFDCD9D9D4D4D4D3D1CFCFCFCFCCCCC9C8C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0BBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A6A4A19C999289
-817C6E5F5472767F8487898E929294999A9C9C9C9E9E9EA3A4A4A4A4A4A4A4A6A4A4A39E9C9A9492
-89817972617F878789898E8E8E8F92929294949699999A9A9A9A9A9C9C9C9E9E9E9E9E9C9C9C9C9A
-999492928F89877F7C746A61554F4F4F4F4F4F545457616A6C7274767C7C7F818484858787878989
-8989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F
-9292929292928F8F9292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929294949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494
-949494949494949494999A9A9A9A9A99949492928F8C8989878787858587878989898E8F92929292
-928F8F8E8E8E8E8E8E8C8989898989898987878584817F7F7F7F7F7F7F7F7F818585878989898E92
-92949A9C9C9E9EA3A4A4A6A6A6A6A9A9A9ABA9A9A6A6A4A39E9C9A9994928F8C877F767F8F999A9C
-9E9E9A92928F8E8E8E8E8E8F8F8F9292929292949494949494999A999996999A9A9A999994949494
-949494949494949494949492929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8C
-8E8E8E89898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C898989898989898989898989
-89898989898989898989898989898987878585858585858585858585858585858581817F7F7F7F7F
-7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472726C6C6C6C6C6A
-6A6A6A676767FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494949292929292929292929292928F8E8E8E8E8E8E8E8E8989898987
-87767C7C818789898F92929494999A9A9C9C9EA4A6A6A6A9ABAEB1B7B9BBC1C4C6C9CCCFD3D4D9D9
-DCDFE1E1E4E6E6E7ECECECEEF1F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECECE7E7E6E6E4E4E1E1
-DFDFDFDCD9D9D4D4D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A6A6A49E9A948E
-877F766A596C747C8187898C8F9294949A9C9C9C9E9EA1A3A4A4A4A6A6A6A6A6A6A4A4A39E9C9A94
-928981797261848787898C8E8E8E929292949499999A9A9A9A9A9A9A9C9C9E9E9E9E9E9E9C9C9C9C
-9A9494928F8C89847F7972675C544F4F4F4F4F4F555559616A6C7174767C7C7F7F81818487878789
-89898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8E8E8E8E8E8E8E8E8E8E8E
-8F8F8F92928F8F8E8F8F929292929292929292929292929292929292929292929292929292929292
-92929292929292929294949494999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A96949494949494
-9494949494949494969A9A9A9A9999949494928F8C8989878785848485878789898C8E8F8F928F8F
-8E8E8E8E8E8E8E8E8C8989898989898987878584817F7F7F7F7F7F7F7F7F818585878789898C8F92
-94999A9C9C9E9EA3A4A4A4A6A6A6A6A9A9A9A9A6A6A4A39E9C9C9A9494928E877F797C89949A9C9E
-A4A19C9492928F8F8F8E8F8F8F929292929292949494949494999999969499999A99999994949494
-949494949494949494949292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8C
-8E8E8E8C8989898C89898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C89898989898989898989898989
-89898989898989898989898989898987878585858585858585858585858585858584817F7F7F7F7F
-7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7676767676767676747474747472716C6C6C6C6A
-6A6A6A676767FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949494949494949492929292929292929292928F8F8E8E8E8E8E8E8E8E898989898987
-85767C7F8487898C8F92949494999A9C9C9EA3A4A6A6A9A9AEB1B3B9B9BEC1C6C6CCCFCFD3D4D9D9
-DCDFE1E1E4E6E6E7ECECECEEF1F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECE9E7E7E6E6E4E1E1E1
-DFDFDFDCD9D9D4D4D3D3D1CFCFCFCCCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEACABABABA9A9A6A49E9C9992
-89847C7261576E767F8487898F929494999C9C9C9E9EA3A4A4A4A4A6A6A6A6A6A6A6A4A4A39E9C99
-928F8981796E5F878789898E8E8E8F92929494969A9A9A9A9C9A9A9A9C9C9E9E9E9E9E9E9E9C9C9C
-9A999492928E89877F7C746C61574F4F4F4F4F4F5455575C616A6A6C72767C7C7F7F818181878789
-898989898989898989898989898C8C8E8E8E8E8E8E8C8C8C8E8E8C8989898C8C8E8E8E8E8E8C8C8C
-8E8E8F8F8F8F8E8E8E8E8F8F92929292929292929292929292929292929292929292929292929292
-92929292949494949494949499999A9A9A9A9A9A9C9C9C9A9A9A9A9A9A9A9A9A9994949494949494
-9494949494949494999A9A9A9999949494928F8C898787878481818487878989898E8E8E8F8F8E8E
-8E8E8E8E8E8E8C8989898989898989878785847F7F7F7F7F7F7F7F7F7F7F848587878989898E8F92
-949A9C9C9C9EA1A3A4A4A4A6A6A6A6A6A9A6A6A6A4A39E9C9C9A9494928F89847C7985929A9C9EA1
-A4A19E99949292928F8F8F8F92929292929292949494949494949999949494999A99999494949494
-94949494949494949492929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E89898C8C898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-89898989898989898989898989898987878585858585858585858585858585858585817F7F7F7F7F
-7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472726E6C6C6C6C
-6A6A6A6A6767FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949494949494929292929292929292928F8E8E8E8E8E8E8E8E8C89898989898787
-767C7C818787898E92929494999A9A9C9C9EA4A4A6A6A9A9AEB1B6B9BBC0C1C6C8CCCFCFD3D4D9D9
-DFDFE1E4E4E6E7E7ECECECEEF1F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECE7E7E7E6E6E4E1E1E1
-DFDFDFDCD9D9D4D4D3D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A6A49E9C9A94
-8F87817C6C5D6A72797F84878C929294999A9C9C9E9EA1A4A4A4A4A6A6A6A6A6A6A6A6A6A4A39E9C
-94928F8981766C5C8787898C8E8E8F9292949494999A9A9C9C9C9A9A9C9C9E9E9E9E9E9E9E9E9C9C
-9C9A9494928F8C89847F7672675D514F4F4F4F4F4F5557595F666A6C717476797C7F7F7F7F818587
-878989898989898989898989898989898C8C8E8E8C8989898C8C8989898989898C8C8E8E8C898989
-8C8C8E8E8F8E8E8E8E8E8E8E8F8F9292929292929292929292929292929292929292929292929292
-9292929494949494949499999A9A9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9994949494949494
-9494949494949494999A999994949494928F8C8987878584817F8487878989898C8E8E8E8E8C8C8C
-8E8E8E8E8C898989898989898987878785847F7F7F7F7F7F7F7F7F7F7F84858587898989898E9294
-999A9C9C9E9E9EA3A4A4A4A6A6A6A6A6A6A6A6A4A49E9C9C9A9994928F8C877F767F8C999C9E9EA4
-A4A19E9C94949492928F8F9292929292929292929494949494949494949494969999969494949494
-94949494949494949492929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8C8C8C8E8C89898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989898989
-8989898989898989898989898989898787878585858585858585858585858585858584817F7F7F7F
-7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472716C6C6C6C
-6A6A6A6A6767FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949494949494949494929292929292929292928F8E8E8E8E8E8E8E8E8C8989898989878785
-767C7F818789898E92929494999A9C9C9EA1A4A4A6A6A9ABAEB1B7B9BBC1C4C6C8CCCFD1D4D4D9D9
-DFDFE1E4E4E6E7E7ECECECEEF1F2F2F2F2F2F2F2F2F2F2F2F2F1EEECECECECE7E7E6E6E4E4E1E1E1
-DFDFDEDCD9D9D4D4D3D1D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0C0BEBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A6A6A39C9A99
-9489877F7467576C747C8187898F9294949A9C9C9E9EA1A4A4A4A6A6A6A6A6A9A9A6A6A6A6A4A39C
-9A94928F897F746A578787898C8E8F9292949494999A9A9C9C9C9C9A9C9C9C9E9E9E9E9E9E9E9E9C
-9C9A969492928E89877F7C746C61574F4F4F4F4F4F54575C5F61676A6C727476797C7F7F7F7F8185
-8787878989898989898989898989898989898C8C8989898989898989898989898989898C89898989
-89898C8C8E8E8E8E8E8E8E8E8E8F8F8F929292929292929292929292929292929292929292929292
-929294949494949999999A9A9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A999494949494949494
-949494949494949499999494949494928F8E89878784817F7F8185878989898C8E8E8C8C89898989
-8C8E8C8989898989898989898787858584817F7F7F7F7F7F7F7F7F7F81858587898989898C8F9294
-9A9A9C9C9E9E9EA1A3A4A4A4A6A6A6A6A6A4A4A49E9E9C9A999494928E8981797C87929C9E9EA4A6
-A4A19E9C9994949292928F9292929292929292929494949494949494949494949999949494949494
-9494949494949494929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8C8C8E8C89898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-8989898989898989898989898989898987878585858585858585858585858585858584817F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7B7676767676767676747474747472716C6C6C
-6C6A6A6A6A67FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949494949494949494929292929292929292928F8E8E8E8E8E8E8E8C898989898987878576
-797C7F8487898C8F929294999A9A9C9C9EA3A4A4A6A6A9AEB1B3B9B9BEC1C4C6C8CCCFD1D4D7D9DC
-DFDFE1E4E6E6E7E7ECECECEEEEF1F2F2F2F2F2F2F2F2F2F2F2EEECECECECECE7E7E6E6E4E4E1E1E1
-DFDFDCD9D9D9D4D3D3D1CFCFCFCFCCCCCCC8C6C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A9A6A49E9C9A
-949289847C6C5F546C747F848789929494999C9C9E9EA1A4A4A4A6A6A6A6A6A9A9A9A6A6A6A6A4A1
-9C9A94928F897C7266548789898E8F8F92929494999A9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E
-9C9A999492928E8989847C7672675D4F4F4F4F4F4F4F575C5F5F646A6C71727476797C7C7F7F7F81
-85878787898989898989898989898989898989898989898989898989898989898989898989898989
-89898989898C8E8E8E8E8E8E8E8E8E8F8F9292929292929292929292929292929292929292929292
-92929494949499999A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A999494949494949494
-949494949494949494949494949492928E89878584817F7F81858789898C8C8C8C89898989898989
-8C898989898989898989898787858585817F7F7F7F81818181817F81858587878989898C8E929499
-9A9C9C9C9E9E9E9EA3A4A4A4A6A4A4A6A4A4A49E9E9C9C9A9494928E89877C76848F9A9EA1A4A4A6
-A4A19E9C9A9994929292929292929292929292929494949494949494949494949496949494949494
-9494949494949494929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8C8E8E8E8C8989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-8989898989898989898989898989898987878585858585858585858585858585858584817F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767676747474747472726C6C6C
-6C6C6A6A6A6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949494949492929292929292929292928F8E8E8E8E8E8E8E8E89898989898787858476
-7C7F818787898C8F929494999A9C9C9C9EA3A4A6A6A9ABAEB1B6B9BBC0C1C6C6C9CCCFD3D4D9D9DC
-DFDFE1E4E6E6E7E7ECECECECEEF1F2F2F2F2F2F2F2F2F2F2F1EEECECECECECE7E7E6E6E4E1E1E1DF
-DFDFDCD9D9D9D4D3D3D1CFCFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABA9A9A6A49E9C9A
-99948E877F7467596A71797F85898F9294999A9C9C9E9EA3A4A4A6A6A6A6A9A9A9A9A9A9A6A6A6A4
-A19C9A94928E84766C5F8787898C8E8F8F929494999A9A9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E
-9C9C9A9494928F8C89877F79746A61574F4F4F4F4F4F55575F5F61676A6C727476797C7C7C7F7F81
-84858787898989898989898989898989898989898989898989898989898989898989898989898989
-898989898989898C8E8E8E8E8E8E8E8E8E8F8F929292928F8F8F9292929292929292929292929292
-929494949496999A9A9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A969494949494949494
-9494949494949494949494949292928E898785817F7F7F818587898C8C8989898989898989898989
-898989898989898989898987878585847F7F7F7F84848481817F8185858787898989898E92949499
-9A9C9C9C9E9E9E9EA1A4A4A4A4A4A4A4A4A39E9E9C9C9A9994928F89877F747F89949E9EA4A4A6A6
-A4A19E9C9C9A94949292929292929292929292929494949494949494949494949494949494949494
-949494949494949292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E89898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-8989898989898989898989898989898987878585858585858585858585858585858584817F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767674747474747472716C6C
-6C6C6A6A6A6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949494929292929292929292929292928F8E8E8E8E8E8E8E8C89898989878785857679
-7C7F818789898E92929494999A9C9C9E9EA4A4A6A6A9ABAEB1B7B9BBC0C1C6C6CCCFCFD3D4D9D9DC
-DFE1E1E4E6E7E7E7ECECECECEEF1F2F2F2F2F2F2F2F2F2F2F1EEECECECECE9E7E7E6E6E4E1E1E1DF
-DFDFDCD9D9D9D4D3D3D1CFCFCFCFCFCCCCC8C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABA9A9A6A6A49E9C
-9A949289817C6C5F556A747C8187899294949A9C9C9E9EA3A4A4A6A6A6A6A9A9A9ABABA9A9A6A6A4
-A4A19C9A9492897F746A578789898C8E8F929494999A9A9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E
-9C9C9A999492928E8987817C7672675C4F4F4F4F4F4F54575C5F61676A6C71727476797C7C7F7F81
-81848787878989898989898989898989898989898989898989898989898989898989898989898989
-89898989898989898C8C8E8E8E8E8E8E8E8E8E8F8F928F8F8E8F8F92929292929292929292929292
-9494949494999A9A9A9C9C9C9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A99949494949494949494
-94949494949494949494929292928E898785817F7F7F818787898989898989898989898989898989
-898989898989898989898787858584817F7F7F8485848484817F84858587898989898E8F9294949A
-9A9C9C9C9C9E9E9EA1A3A4A4A4A4A4A3A19E9E9C9C9A999492928C8984797C87929C9EA1A4A6A6A6
-A49E9E9C9C9A99949292929292929292929292929294949494949494949494949494949494949494
-949494949494929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-8989898989898989898989898989898987878585858585858585858585858585858585817F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767674747474747472726E6C
-6C6C6C6A6A6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94949494949494949292929292929292929292928F8E8E8E8E8E8E8E8E898989898787858584767C
-7F7F848789898E929294949A9A9C9C9EA1A4A4A6A6A9AEB1B3B9B9BEC1C1C6C8CCCFCFD3D4D9D9DC
-DFE1E1E4E6E7E7E9ECECECECEEF1F2F2F2F2F2F2F2F1F1F1F1EEECECECECE7E7E7E6E4E4E1E1E1DF
-DFDFDCD9D9D9D4D3D1D1CFCFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0C0BBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABA9A9A6A6A49E9C
-9A99948C877F74675C516C747F85898E9494999C9C9E9EA3A4A4A6A6A6A9A9A9ABABAEABABA9A6A6
-A4A4A19C99928E877C7261518787898E8E929294969A9A9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E
-9E9C9C999494928F8987847F79746A61574F4F4F4F4F4F55595F61676A6C6C727476797C7C7F7F7F
-81848787878989898989898989898989898989898989898989898989898989898989898989878989
-898989898989898989898C8C8E8E8E8E8E8E8E8E8F8F8F8E8E8E8E8F8F9292929292929292929294
-9494949499999A9A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A99949494949494949494
-949494949494949494929292928E8987857F7F7F7F81878789898989898989898989898989898989
-8989898989898989898787858585818181818485858585817F84858587898989898C8F929494999A
-9A9C9C9C9C9E9E9E9EA3A4A4A4A4A39E9E9E9C9C9C9A9494928E89877C76818C949E9EA3A4A6A6A6
-A49E9E9C9C9A99949492929292929292929292929292949494949494949494949494949494949494
-94949494949492929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989
-8989898989898989898989898989898987878785858585858585858585858585858585817F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676767674747474747472726C
-6C6C6C6A6A6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949494949292929292929292929292928F8E8E8E8E8E8E8E8E8C898989898787858476797C
-7F818787898C8F929294999A9C9C9E9EA3A4A4A6A9ABAEB1B6B9BBBEC1C4C6C8CCCFD1D4D4D9D9DC
-DFE1E1E4E6E7E7ECECECECECEEF1F2F2F2F2F1F1F1F1F1F1F1EEECECECECE7E7E6E6E4E4E1E1E1DF
-DFDEDCD9D9D7D4D3D1CFCFCFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABA9A9A6A6A6A39E
-9C9A949289817C6C61576771798187899294999A9C9C9EA3A4A4A6A6A6A9A9A9ABABAEAEAEABA9A6
-A6A4A49E9C9492897F746C5C848587898E8F929494999A9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E
-9E9C9C9A9494928F8C89877F7C7471665C4F4F4F4F4F4F54575D61666A6C6C72747676797C7C7F81
-81818587878989898989898989898989898989898989898989898989898987878989898987878787
-8989898989898989898989898C8C8E8E8E8E8C8C8E8E8F8E8E8E8E8E8F8F92929292929292929294
-94949496999A9A9C9C9C9C9E9E9E9E9E9E9EA19E9E9E9E9C9C9A9A9A9A9994949494949494949494
-9494949494949494949292928F8987857F7F7F818487878989898989898989898989898989898989
-89898989898989878787858585848484848485858585848184858587898989898C8F92929494999A
-9A9C9C9C9C9E9E9E9EA1A3A4A3A39E9E9C9C9C9A9A9494928F898781747C89929C9EA1A4A4A6A6A4
-A49E9E9C9C9A9A949494929292929292929292929292949494949494949494949494949494949494
-94949494949292929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989
-898989898989898989898989898989898987878585858585858585858585858585858584817F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C767676767676747474747474747271
-6C6C6C6C6A6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949492929292929292929292928F8E8E8E8E8E8E8E8E8C89898989878785847F767C7F
-7F848789898E92929494999A9C9C9E9EA3A4A6A6A9AEAEB1B6B9BBBEC1C6C6C8CCCFD1D4D7D9D9DC
-DFE1E1E4E6E7E7E9ECECECECEEEEF2F1F1F1F1F1F1F1F1EEEEECECECECECE7E7E6E6E4E4E1E1DFDF
-DFDCDCD9D9D7D4D3D1CFCFCFCFCFCFCCCCC9C8C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A6A6A6A49E
-9C9A969289857F746A5D546A727F84878E94949A9C9C9EA1A4A4A6A6A6A9A9A9ABAEAEAEAEAEABA9
-A6A6A4A49C99928E877C7267578184878C8E929294999A9C9C9C9E9C9C9C9C9E9E9E9E9E9E9E9E9E
-9E9C9C9A999492928E8987817C76746A5F574F4F4F4F4F4F575C5F61676A6E72747476797C7C7F81
-81848587878789898989898989898989898989898989898989898989898787878787878787878787
-87878989898989898989898989898C8E8E8E8C898C8C8E8E8E8E8E8E8E8E8F8F9292929292929294
-949494999A9A9A9C9C9C9C9E9E9EA3A3A3A3A3A19E9E9C9C9C9A9A9A9A9994949494949494949494
-949494949494949492928F8E8989877F7F7F81848787898989898989898989898989898989898989
-898989898987878785858585858585858585858585858181858587878989898C8E8F929294949A9A
-9A9A9C9C9C9E9E9E9E9EA3A3A19E9E9C9C9C9A9A9994928F8C89857C76878F999E9EA3A4A6A6A6A4
-A49E9E9C9C9A9A999494929292929292929292929292929494949494949494949494949494949494
-9494949494929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-898989898989898989898989898989898987878585858585858585858585858585858584817F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C797676767676747474747474747272
-6E6C6C6C6C6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949494929292929292929292928F8F8E8E8E8E8E8E8E8E8C89898989898785847F76767C7F
-818787898E8F92929494999A9C9C9E9EA4A4A6A9ABAEB1B3B7B9BBC0C1C6C6C9CCCFD3D4D9D9D9DC
-DFE1E1E4E6E7E7E7ECECECECECEEF1F1F1F1F1EEEEEEEEEEEEECECECECE9E7E7E6E6E4E1E1E1DFDF
-DFDCDCD9D9D7D4D3D1CFCFCFCFCFCFCCCCC9C8C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A6A6A6A49E
-9E9C99948F87817C6C61574F6C747F87899294999A9C9EA1A4A4A6A6A6A9A9ABABAEAEAEAEAEAEAB
-A9A6A6A49E9C94928981766C614F7F85898E929294999A9C9C9C9C9E9C9C9C9E9E9E9E9E9E9E9E9E
-9E9C9C9C9A9494928F8987847F79746C615C4F4F4F4F4F4F54575F61666A6C72747476797C7C7F81
-84858787878789898989898989898989898989898989898989898989898787878787878787878787
-878787878989898989898989898989898C8C898989898C8E8E8E8E8E8E8E8E8F8F92929292929292
-949499999A9A9C9C9C9C9E9E9EA1A4A4A4A4A3A19E9E9C9C9A9A9A9A9A9694949494949494949494
-949494949494949492928F8C89877F7C7F7F84878787898989898989898989898989898989898989
-898989898987878585858585858585858585858585848485858787898989898E8F92929494999A9A
-9A9A9C9C9E9E9E9E9E9E9E9E9E9E9C9C9A9A9A999492928E89877F767F89929C9EA1A4A4A6A6A6A4
-A49E9E9C9C9A9A999494949292929292929292929292929294949494949494949494949494949494
-9494949492929292929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-89898989898989898989898989898989898787858585858585858585858585858585858584817F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7976767676747474747474747472
-726C6C6C6C6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949494929292929292929292928F8E8E8E8E8E8E8E8E8989898989898787847F7F767C7F7F
-8487898C8E92929494949A9A9C9C9EA1A4A4A6A9ABAEB1B3B9B9BBC0C1C6C6CCCFCFD3D4D9D9D9DC
-DFE1E1E6E6E7E7E7ECECECECECEEF1F1EEEEEEEEEEEEEEEEEEECECECECE7E7E7E6E6E4E1E1E1DFDF
-DFDCD9D9D9D4D4D3D1CFCFCFCFCFCFCCCCCCC8C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A6A6A6A4A4
-9E9C9A949289847F746A5F55666C7C84878E94949A9A9C9EA4A4A6A6A6A9A9ABABAEAEAEAEAEAEAE
-A9A9A6A4A39C9A928E877F746A5C7F8187898F9294949A9A9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C9E
-9E9C9C9C9A9694928F8C89857F7C74726A5F574F4F4F4F4F4F555C5F616A6C717474767C7C7F7F81
-84878787878789898989898989898989898989898989898989898989898987878585878787858585
-8587878787898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8F8F9292929292
-949496999A9A9C9C9C9C9E9E9EA3A4A3A3A1A19E9E9E9C9C9A9A9A9A999494949494949494949494
-9494949494949492928F8C8987817C7F7F8185878789898989898989898989898989898989898989
-8989898987878585858585858585858585878785858585858787898989898E8F9292929494999A9A
-9A9A9C9C9E9E9E9E9E9E9E9E9E9E9C9A9A99999494928E8987817479878F969E9EA3A4A6A6A6A4A4
-A49E9E9C9C9C9A999494949492929292929292929292929294949494929494949494949494949494
-949494949292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-8989898989898989898989898989898989878785858585858585858585858585858585858481817F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7B76767676767474747474747474
-72716C6C6C6CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949492929292929292929292928E8E8E8E8E8E8E8C898989898989878785817F76767C7F81
-8787898E8F92929494999A9C9C9E9EA3A4A6A6A9AEAEB1B6B9B9BEC1C1C6C8CCCFD1D3D4D9D9DCDC
-DFE1E1E6E6E7E7E7ECECECECECEEEEEEEEEEEEEEEEEEECECECECECECECE7E7E7E6E4E4E1E1E1DFDF
-DEDCD9D9D9D4D4D3D1CFCFCFCFCFCFCCCCCCC8C8C6C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A4A4
-9E9C9A96948E877F7B6E61595467747F87899294999A9C9EA3A4A4A6A6A9A9ABAEAEAEAEAEB1AEAE
-AEA9A6A6A49E9C94928985797266577F84878C929294999A9C9C9C9C9E9C9E9E9E9E9E9E9E9C9C9E
-9E9C9C9C9A999492928E8987817C76726C615C514F4F4F4F4F54575F61676A717476797C7C7F7F81
-85878787878989898989898989898989898989898989898989898989898987878787858585858787
-878585878789898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8F8F92929292
-949494999A9A9C9C9C9E9E9EA1A3A39E9E9E9E9E9E9C9C9C9A9A9999949494949494949494949494
-9494949494949492928E8987817C7C7F818587878989898989898989898787878789898989898989
-89898987878785858585858585858587878785858585878787898989898C8F9292929294949A9A9A
-9A9C9C9C9E9E9C9C9C9C9C9E9E9C9C9A99999494928F8989847C76818C929C9EA1A4A4A6A6A6A4A4
-A49E9E9C9C9C9A999494949492929292929292929292929292949492929494949494949494949494
-949494929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989
-8989898989898989898989898989898989878785858585858585858585858585858585858584817F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C79767676767674747474747474
-72726E6C6C6CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494929292929292929292928F8E8E8E8E8E8E8C898989898987878585847F7F767C7F7F84
-87898C8F9292949494999A9C9C9E9EA3A4A6A9ABAEB1B1B6B9BBBEC1C4C6C8CCCFD1D4D4D9D9DCDE
-DFE1E1E6E6E6E7E7ECECECECECEEEEEEEEEEECECECECECECECECECECECE7E7E6E6E4E4E1E1E1DFDF
-DCDCD9D9D9D4D4D3D1CFCFCFCFCFCFCFCCCCC8C8C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABA9A9A9A6A6A4A4
-A19E9C99949289847F746A5F575F6C7981878C9294999C9C9EA4A4A6A6A9A9ABAEAEAEAEB1B1B1AE
-AEABA9A6A4A19C9A948E897F746C5F4F7F85898F9294949A9A9C9C9C9C9E9E9E9E9E9E9E9C9C9C9C
-9E9E9C9C9A9A9494928F8987817F79746E665F55514F4F4F4F5155595F666A6C72767C7C7F7F7F81
-85878787898989898989898989898989898989898989898989898989898989878787878787878787
-8787878787878989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8F8F9292
-94949499999A9C9C9C9E9E9EA3A4A19E9E9E9E9E9E9C9C9A9A999694949494949494949494949494
-94949494949292928E8987817F7C7F84878787878989898989898787878787878787898989898989
-898989878785858585858585858587878787858585878787898989898C8E929292929494999A9A9A
-9A9C9C9E9E9C9C9C9C9C9C9C9C9C9A99949494928F8C89877F747C8792999E9EA3A4A6A6A6A4A4A4
-A49E9E9E9C9C9A999494949494929292929292929292929292949492929294949494949494949494
-94949292929292929292929292929292929292929292929292929292929292928E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989
-89898989898989898989898989898989898787878585858585858585858585858585858585848181
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C797676767674747474747474
-7472716C6C6CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949492929292929292929292928E8E8E8E8E8E8C89898989898987858585817F76767C7F8187
-89898E8F9292949494999A9C9C9E9EA4A6A6A9AEAEB1B3B7B9BBBEC1C6C6C8CCCFD1D4D9D9D9DCDF
-DFE1E1E4E6E6E7E7E9ECECECECEEEEECECECECECECECECECECECECECECE7E7E6E6E4E1E1E1DFDFDF
-DCDCD9D9D9D4D4D3D1CFCFCFCFCFCFCCCCCCC9C8C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABA9A9A9A6A6A4A4
-A39E9C9A94928C877F7C71665C5564727F84898E94969A9C9EA4A4A6A6A9A9ABAEAEAEAEB1B1B1B1
-AEAEA9A6A4A39E9C949289877C726A5C7C7F8789929494949A9C9C9C9C9C9E9E9E9E9E9E9C9C9C9C
-9C9E9C9C9A9A999492928C89847F7C74726A6159544F4F4F4F4F55575D616A6C7274797C7F7F8181
-85878789898989898989898989898989898989898989898989898989898989898987878787878787
-878787878787898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8F8F92
-9294949499999A9C9C9E9EA1A3A39E9E9E9E9E9E9C9C9C9A99949494949494949494949494949494
-949494949292928F8987847F7C818587878789898989898989878787878585878789898989898989
-8989878787878585858585858587878987858585878787878989898C8E8F929292929494999A9A9A
-9A9C9C9C9C9C9C9C9C9C9C9C9C9A9994949492928E89877F7474848E949C9E9EA4A4A6A6A6A4A4A4
-A4A19E9E9C9C9A9A9694949494929292929292929292929292929292929292949494929494949494
-94949292929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989
-89898989898989898989898989898989898987878585858585858585858585858585858585858481
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7F7F7C7C7C7C7C7C7C7C797676767676747474747474
-747472716C6CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494949292929292929292928F8F8E8E8E8E8E8C89898989898987878585817F7C767C7F7F8487
-898C8F9292949494949A9A9C9C9EA1A4A6A9ABAEAEB1B3B9B9BBC0C1C6C6C9CCCFD3D4D9D9D9DCDF
-DFE1E1E4E6E6E7E7E9ECECECECECECECECECECECECECECECECECECECE9E7E7E6E6E4E1E1E1DFDFDF
-DCDCD9D9D9D4D4D3D1CFCFCFCFCFCFCCCCCCC8C8C6C6C6C6C4C1C1C1C1C1C1C1C0C0BBBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABA9A9A9A6A6A4A4
-A39E9C9A94949289847F746A6157516A747F87899294999C9C9EA4A6A6A9A9ABAEAEAEAEB1B1B1B1
-AEAEABA9A6A49E9C9A948F8981767164577F81898F929494949A9C9C9C9C9C9E9E9E9E9C9C9C9C9C
-9C9C9C9C9A9A999492928E89877F7C76726C665F57544F4F4F4F5455595F676A7274797C7F818181
-8787898989898989898989898989898989898989898989898989898C8C8989898989898989898989
-8989878787898989898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8F
-9292949494969A9A9C9C9E9EA4A19E9E9E9C9C9C9C9C9A9A99949494949494949494949494949494
-9494949292928F8C89847F7C7F878787898989898989898987878585858587878989898989898989
-8989878787878585858585858787898787858587878787898989898E8E929292929294949A9A9A9A
-9C9C9C9C9C9C9C9A9A9A9A9A9A9994949492928E8987817C767F8992999C9E9EA4A4A6A6A4A4A4A4
-A3A19E9E9C9C9A9A9994949494949292929292929292929292929292929292949492929294949494
-94929292929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989
-89898989898989898989898989898989898987878585858585858585858585858585858585858584
-817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7976767676747474747474
-747472726E6CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949292929292929292928F8E8E8E8E8E8E8E89898989898989878585817F7F76767C7F818789
-898C8F9294949494999A9C9C9E9EA1A4A6A9ABAEAEB1B3B9B9BBC1C1C6C8CCCFCFD3D4D9D9D9DCDF
-DFE1E1E4E6E6E7E7E7ECECECECECECECECECECECECECECECECECECECE7E7E7E6E4E4E1E1E1DFDFDF
-DCD9D9D9D9D4D4D3D1CFCFCFCFCFCFCCCCCCC8C8C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABA9A9A9A9A6A6A6A4
-A39E9E9C9994928C877F7C71675D555F6C7981878992949A9C9EA4A6A6A6A9ABAEAEAEAEB1B1B1B1
-B1AEAEA9A6A4A39E9C949289877C746A5F4F7F878992929294999A9C9C9C9C9C9E9E9E9C9C9C9C9C
-9C9C9C9C9C9A999494928F8987817C76746C6A6159554F4F4F4F4F55575D616A6C74767C7F7F8184
-87878989898989898989898C8C8C898989898989898C8C8C8E8E8E8E8E8E8C898989898989898989
-8989898789898989898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E
-8F9294949494999A9A9C9C9E9E9E9E9C9C9C9C9C9C9C9A9994949494949494949494949494949494
-94949492928F8C89877F7C7F85878989898989898989898787878585858787878989898989898989
-89898987878585858585878787898787878787878989898989898E8E8F92929292949499999A9A9A
-9C9C9C9C9C9C9A9A9A9999999494949492928E8987847C7676858E949A9E9E9EA4A6A4A4A4A4A4A4
-A39E9E9E9C9C9A9A9994949494949492929292929292929292929292929292929492929294949494
-94929292929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989
-89898989898989898989898989898989898987878585858585858585858585858585858585858584
-817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C79767676767474747474
-74747472716CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94929292929292929292928F8E8E8E8E8E8E8E8C898989898989878785817F7F74767C7F7F848789
-898E929294949494999A9C9C9E9EA3A4A6A9AEAEAEB1B6B9BBBEC1C1C6C8CCCFD1D3D4D9D9DCDCDF
-DFE1E1E4E6E6E7E7E7ECECECECECECECECECECECECECECECECECECECE7E7E6E6E4E4E1E1E1DFDFDE
-DCD9D9D9D9D4D4D3D1CFCFCFCFCFCFCCCCC9C8C6C6C6C6C6C4C1C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABA9A9A9A6A6A6A6A4
-A49E9E9C9A94929289847F746C61595461727C81878F94999C9CA1A6A6A6A9ABAEAEAEB1B1B1B1B1
-B1AEAEABA6A6A4A19C9A948F8981766C66577C81878C929292949A9A9C9C9C9C9E9E9C9C9C9C9C9C
-9C9C9C9C9C9A99949492928C87847F7B74726A665F57554F4F4F4F54555C5F666C72747C7F7F8184
-878787898989898989898C8E8E8E8E8C8C8C8C8E8E8E8E8F8F8F928F8F8E8E8E8C8989898C8C8E8C
-898989898989898989898989898989898E8C8989898C8E8C898989898989898E8E8E8E8E8E8E8E8E
-8E92929494949494999A9A9C9C9C9C9C9C9C9C9C9C9A9A9994949494949494949494949494949494
-949492928F8E89877F7C7F8487898989898989898989898787858585878787898989898989898989
-898989878785858585878789898987878787878989898989898E8E8E8F9292929294949699999A9A
-9C9C9C9C9A9A9A999996949494949292928E8987857F74747F878F949C9E9E9EA4A4A4A4A4A4A4A3
-A19E9E9E9C9C9C9A9994949494949492929292929292929292929292929292929292929292949494
-92929292929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989
-89898989898989898989898989898989898987878585858585858585858585858585858585858584
-817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C79767676767674747474
-747474747271FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-929292929292929292928F8E8E8E8E8E8E8E8E898989898989878784817F7F7F76767C7F81878989
-898E929294949494999A9C9C9E9EA3A6A6ABAEAEB1B1B6B9BBBEC1C4C6C8CCCFD1D3D4D9D9DCDEDF
-DFE1E1E4E6E6E7E7E7ECECECECECECECECECECECECECECECECECECECE7E7E6E6E4E4E1E1DFDFDFDC
-DCD9D9D9D9D4D4D3D1D1CFCFCFCFCFCCCCC9C8C6C6C6C6C6C4C1C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A9A9A6A6A6A6A4
-A4A19E9C9A9494928C877F7C72675F574F6A747F848992949A9C9EA4A6A6A9ABAEAEAEB1B1B1B1B1
-B1B1AEABA9A6A4A49E9C999289857C726A5F557F84898C929294949A9C9C9C9C9C9E9C9C9C9C9C9A
-9C9C9C9C9C9A99949494928E89877F7C76726C6A615C55514F4F4F5155575F616A6C74767C7F8181
-8487878989898989898C8E8E8E8E8E8E8E8F8F8F8F8F8F8F92929292928F8F8E8E8E8C898C8E8E8E
-8C8C89898989898989898989898989898C8E8C898C8E8E8E8C8989898989898C8E8E8E8E8E8E8E8E
-8E8F9292949494949494999A9A9A9A9A9A9C9C9A9A9A9A9694949494949494949494949494949494
-9492928F8E8987817C7F848789898989898989898989878785878787878789898989898989898989
-898987878785858787878989898987878787898989898989898E8E8E929292929294949499999A9A
-9A9C9C9A9A9A999994949494949292928F8987857F76767C8489929A9E9E9EA1A4A4A4A4A4A4A4A3
-9E9E9E9E9C9C9C9A9994949494949494929292929292929292929292929292929292929292949492
-92929292929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989
-89898989898989898989898989898989898987878785858585858585858585858585858585858584
-817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C797676767674747474
-747474747272FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949492
-929292929292929292928E8E8E8E8E8E8E8E8C8989898989878785817F7F7F71767C7F7F84878989
-8C8F9292949494949A9A9C9E9E9EA4A6A9ABAEAEB1B3B7B9BBC0C1C6C6C9CCCFD1D3D4D9D9DCDFDF
-DFE1E1E4E4E6E6E7E7ECECECECECECECECECECECECECECECECECECE9E7E7E6E6E4E1E1E1DFDFDFDC
-DCD9D9D9D9D4D4D3D3D1CFCFCFCFCCCCCCC8C8C6C6C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBBBB
-BBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A9A9A6A6A6A6A4
-A4A19E9E9C9994929289847F746C615D555F6C767F878E94999A9EA3A6A6A9A9ABAEAEB1B1B1B1B1
-B1B1AEAEA9A6A6A4A19C9A948E877F746C6659547F85898E8F9294969A9C9C9C9C9C9C9C9C9C9C9A
-9C9C9C9C9C9A9A969494928F8987817F7974716A665F57554F4F4F4F55575C5F666A7274797F7F7F
-8184878789898989898C8E8E8E8E8E8E8F8F929292929292929292929292928F8E8E8E8C8E8E8E8E
-8E8E8C898989898989898989898989898C8E8E8E8E8E8E8E8E8C8C898989898C8E8E8E8E8E8E8E8E
-8E8E8F929292929294949494949994999A9A9A9A9A99999494949494949494949494949494949494
-94928F8E8987847C7F818789898C8C89898989898987878787878787898989898989898989898989
-8987878787878787878989898989898987898989898989898C8E8E8F92929292949494949499999A
-9A9A9A9A999994949494949292928F8E8989877F7976747F8589929A9C9E9EA3A4A4A3A3A3A3A3A1
-9E9E9E9E9E9C9C9A9994949494949494949292929292929292929292929292929292929292929492
-92929292929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989
-89898989898989898989898989898989898989878785858585858585858585858585858585858585
-817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7976767676747474
-747474747472FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949492
-9292929292929292928F8E8E8E8E8E8E8E89898989898987878584817F7F7C76767C7F8187898989
-8E8F9294949494999A9C9C9E9EA1A4A6A9ABAEAEB1B3B9B9BBC0C1C6C6CCCFCFD3D4D4D9D9DCDFDF
-E1E1E1E4E4E6E6E7E7E9ECECECECECECECECECECECECECECECECECE7E7E7E6E6E4E1E1E1DFDFDFDC
-D9D9D9D9D9D4D4D3D3D1CFCFCFCFCCCCCCC8C8C6C6C6C6C6C4C1C1C1C1C1C1C1C0BBBBBBBBBBBBBB
-BBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A4
-A4A19E9E9C9A9494928C877F7C72675F575161717C818992949A9C9EA4A6A9A9ABAEAEB1B1B1B1B1
-B1B1AEAEABA9A6A6A49E9C949289817C726A5F577B7F87898E8F9294999A9C9C9C9C9C9C9C9C9A9A
-9A9C9C9C9C9A9A99949492928987847F7C76726C6A615D57514F4F4F5455595F61676C72767C7F7F
-7F8184878789898989898E8E8E8E8E8F8F92929292929292929292929292928F8E8E8E8E8E8E8E8E
-8E8C8989898989898989898989898989898E8E8C8C8E8E8E8E8E8E8C89898C8C8E8E8E8E8E8E8E8E
-8E8E8F92929292929292949494949494999A9A999996949494949494949494949494949494949494
-928F8C8989857F7F818789898C8E8C8C898989898987878787898989898989898989898989898989
-8989878787878789898989898989898989898989898989898E8E8F9292929292949494949496999A
-9A9A9A999694949494949292928F8C898787817C79767C7F878C929A9C9C9E9EA3A1A19E9E9E9E9E
-9E9E9E9E9C9C9C9A9A94949494949494949292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292928E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989
-89898989898989898989898989898989898989878785858585858585858585858585858585858585
-84817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7976767676767474
-747474747474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949292
-9292929292929292928E8E8E8E8E8E8C89898989898987878585817F7F7C74767C7F7F8587898989
-8E929294949494999A9C9C9EA1A3A4A6A9AEAEAEB1B6B9B9BEC1C1C6C8CCCFCFD3D4D4D9D9DCDFDF
-E1E1E1E4E4E6E6E7E7E7ECECECECECECECECECECECECECECECECECE7E7E6E6E4E4E1E1E1DFDFDEDC
-D9D9D9D9D7D4D4D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A4
-A4A39E9E9C9A9694929289847C746C665F574F67747F878C94999C9EA3A6A9A9ABAEAEB1B1B1B1B1
-B1B1B1AEAEABA9A6A4A19C9A9289877F746C665C547C8187898E929294999A9C9C9C9C9C9C9A9A9A
-9A9A9C9C9A9A9A99949492928E8985817C76746E6A665F59554F4F4F4F55575F61676A7274767C7F
-7F7F81858787878989898C8E8E8E8E8F9292929292929292929292929292928F8E8E8E8E8E8E8E8E
-8C898989898989898989898989898989898C8C8C898C8E8E8E8E8E8E8C898C8E8E8E8E8E8E8E8E8E
-8E8E8F9292928F8F8F92929494949494999999969494949494949494949494949494949494949492
-8F8C8989877F7F818587898E8E8E8E8C8989898989898989898989898C8C8E8E8C89898989898989
-89898987878789898989898989898989898989898989898C8E8F9292929292949494949494949999
-9A99999494949494929292928E89898787817C7976767C7F878C94949A9C9C9E9E9E9E9E9E9E9E9E
-9E9E9E9C9C9C9C9A9A99949494949494949492929294929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989
-89898989898989898989898989898989898989878785858585858585858585858585858585858585
-84817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C79767676767674
-747474747474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949292
-92929292929292928F8E8E8E8E8E8C89898989898987878585847F7F7C7C76797C7F81878989898C
-8F9292949494999A9A9C9E9EA3A4A4A6ABAEAEB1B1B6B9BBBEC1C4C6C8CCCFD1D3D4D4D9D9DCDFDF
-E1E1E1E1E4E6E6E7E7E7ECECECECECECECECECECECECECECECECE9E7E7E6E4E4E1E1E1DFDFDFDCDC
-D9D9D9D9D4D4D4D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C1C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B9B9B9B9B7B6B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A4
-A4A39E9E9C9C999494928C877F79726A615C545F6A7C81898F949A9C9EA4A6A9ABAEAEAEB1B1B3B1
-B1B1B1AEAEABA9A9A6A49E9A948F877F79726A6157747F8187898E929294999A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A99949492928F8987817F7C74726C6A615F57544F4F4F54575F61666A6C7474797C
-7F7F7F818587878789898C8E8E8E8E8F92929292929292929292929292928F8F8E8E8E8E8E8E8E8C
-89898989898989898989898989898989898C8C898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E
-8E8E8E8F92928F8E8E8F929292949494949494949494999494949494949494949494949494949292
-8E898987817F818487898E8E8E8E89898989898989898989898C8C8E8E8E8E8E8C8C898989898989
-89898989898989898989898989898989898989898989898E8F929292929292949494949494949499
-99969494949492929292928E89878787817C7C7674797C81878E9294999C9C9C9E9E9E9E9E9E9E9E
-9E9E9E9C9C9C9C9A9A99949494949494949492929494949292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292928F8E8E8F8F8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989
-89898989898989898989898989898989898989878785858585858585858585858585858585858585
-84817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C797676767674
-747474747474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494929292
-9292929292928F8E8E8E8E8E8E8E8989898989898987858585817F7C7C74767C7F7F85878989898E
-8F9294949496999A9C9C9EA3A4A4A6A9ABAEAEB1B3B7B9BBBEC1C6C6C8CCCFD1D3D4D4D9D9DCDFDF
-DFE1E1E1E4E6E6E7E7E7ECECECECECECECECECECECECE9E9E9E7E7E7E6E6E4E1E1E1E1DFDFDFDCDC
-D9D9D9D9D4D4D4D3D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B7B9B9B7B6B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A4
-A4A39E9E9C9C9A9494928F89817C746C675F575461727F878992999C9EA3A6A9ABAEAEAEB1B1B3B3
-B1B1B1AEAEAEABA9A6A49E9C949289847C746C675D54767F8187898E9292949A9A9A9A9A9A9A9A99
-999A9A9A9A9A9999949494928F8987847F7C76726E6A67615D57544F4F51555C61666A6C7274767C
-7C7F7F81848587878989898C8E8E8E8E8F929292929292928F929292928F8F8E8E8E8E8E8E8E8C89
-8989898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F
-8F8E8E8F9292928F8F9292929292949494949494999999999494949494949494949494949492928F
-8E8987847F818487898E8E8E8C898989898989898989898C8E8E8E8E8E8E8E8E8E8C898989898989
-898989898989898989898989898989898989898989898C8E8F929292929292949494949494949499
-9494949494929292928F8F89898787817C7C7C7476767C81878C9292949A9C9C9C9E9C9C9C9C9C9C
-9E9E9C9C9C9C9C9C9A99949494949494949494929494949292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292928F8E8F8F8F8F8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989
-89898989898989898989898989898989898989878787858585858585858585858585858585858585
-8481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C797676767676
-747474747474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494929292
-92929292928F8E8E8E8E8E8E8E8C89898989898987878585847F7C7C7C76797C7F81878789898C8F
-9292949494999A9A9C9EA1A4A4A4A6A9ABAEAEB1B3B9B9BBC0C1C6C6C9CCCFD1D3D4D4D9D9DCDFDF
-DFE1E1E1E4E4E6E6E7E7ECECECECECECECECE9E9E7E7E7E7E7E7E7E7E6E4E4E1E1E1E1DFDFDFDCD9
-D9D9D9D9D4D4D4D3D1D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B7B7B7B6B6B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A6
-A4A39E9E9C9C9A9994949289857F79726A615F5751677981878F949A9C9EA4A6ABAEAEAEB1B1B1B3
-B3B1B1B1AEAEAEABA9A6A49E9A928C877F76726A61576C767F8187898F929496999999999A9A9A99
-99999A9A9A9A999994949492928C8787817F7974726C6A665F5755544F4F55575F616A6C7174767C
-7C7F7F7F818487878789898C8E8E8E8E8F8F8F929292928F8F8F8F928F8F8E8E8E8E8E8E8E8C8C89
-898989898989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E8E8E8F8F9292
-8F8F8F8F929292929292929292949494969999999A9A9A999494949494949494949494949292928E
-8C89857F7F8587898C8E8E8C89898989898989898989898E8E8E8E8E8E8C8C898989898989898989
-898989898C8E8C8C898989898989898989898989898C8E8F92929292929294949494949494949494
-94949492929292928F8E89898785857F7C7C767474797F8187898E9294969A9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9A99949494949494949494949494949492929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292929292929292928F8F8F928F8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989
-89898989898989898989898989898989898989898787858585858585858585858585858585858585
-8584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7976767676
-767474747474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9492929292
-929292928F8E8E8E8E8E8E8E8E8989898989898987858584817F7C7C74767C7F7F85878989898E92
-92929494999A9A9C9C9EA3A4A4A6A6A9ABAEB1B1B3B9B9BBC1C1C6C6CCCFCFD3D3D4D4D9D9DCDFDF
-DFE1E1E1E4E4E6E6E7E7E9ECECECE9E9E7E7E7E7E7E7E7E7E7E7E7E6E6E4E1E1E1DFDFDFDFDEDCD9
-D9D9D9D7D4D4D4D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C0C0BBBBBBBBBBBB
-BBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B6B7B7B6B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A6
-A4A49E9E9E9C9C9A9494928E87817C746C67615C555F717F858992969A9CA3A6ABAEAEAEB1B1B1B1
-B3B1B1B1AEAEAEAEABA6A49E9C948F87817C746C665D5571797F8187898F929494949696999A9999
-9699999A9A99999494949492928E8987847F7C76726C6A67615F5755544F51555961676A6C727476
-7C7C7F7F81848787878989898E8E8E8E8E8E8F8F8F928F8F8E8E8E8F8F8E8E8E8E8E8E8E8C8C8989
-8989898989898989898787898989898787898989898989898989898C8E8E8E8E8E8E8E8E8F8F9292
-92928F92929292929494949494949494999A9A9A9A9A999494949494949494949494949292928F8E
-89877F7F858789898E8E8C89898989898989898989898C8E8E8E8E8E8E8989898989898989898989
-8989898C8E8E8E8C8C89898989898989898989898C8E8F9292929292929294949494949494949494
-9494929292928F8E8E8989878585817F7C797472747C7F818787898F9294999A9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9A9A99949494949494949494949494949492929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292929292929292928F8F8F928F8F
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989
-89898989898989898989898989898989898989898787858585858585858585858585858585858585
-858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C79767676
-767474747474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9492929292
-929292928E8E8E8E8E8E8E8E8C89898989898787858585817F7C7C7676797C7F81858789898C8F92
-92929496999A9C9C9E9EA4A4A4A6A6A9AEAEB1B3B6B9BBBEC1C1C6C8CCCFD1D3D4D4D4D9D9DCDFDF
-DFE1E1E1E4E4E6E6E7E7E7ECE9E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E4E4E1E1DFDFDFDFDFDCDCD9
-D9D9D9D4D4D4D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0BBBBBBBBBBBB
-BBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B6B6B6B6B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B3B3
-B3B3B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABA9A6A6A6A6A6A6
-A4A4A19E9E9C9C9A9994949289847F76726A6661595566767F878C949A9C9EA4A9AEAEAEB1B1B1B1
-B1B3B1B1B1AEAEAEABA9A6A39C969289857F76716A5F5766727B7F84878C92949494949496999999
-9494999A9999969494949492928E8987847F7C7674716C6A665F595755514F55575F646A6C727476
-7C7C7F7F81818587878989898C8E8E8E8E8E8E8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989
-898989898989898987878787878987878787898989898989898989898C8E8E8E8E8E8E8F8F929292
-929292929292929494949494949494999A9A9A9A9A9A9994949494949494949494929292928F8E89
-87817C848787898C8E8989898989898989898989898C8E8E8E8E8E8E8C8989898989898989898989
-898C8E8E8E8E8E8E8C8C8989898989898989898C8E8F929292929292929294949494949294949494
-929292928F8F8E8C8989878585847F7F7C767274767C7F818787898C929294999A9A9C9C9C9C9C9C
-9C9C9C9C9C9C9C9A9A99949494949494949494949494949492929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292928F9292928F
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989
-89898989898989898989898989898989898989898787858585858585858585858585858585858585
-85858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C767676
-767674747474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-9292928F8E8E8E8E8E8E8E8E89898989898787858585817F7F7C7676767C7F7F858787898C8E9292
-929494999A9A9C9C9EA3A4A4A6A6A9ABAEB1B1B3B7B9BBBEC1C4C6C8CCCFD1D3D4D4D4D9D9DCDFDF
-DFE1E1E1E1E4E6E6E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E4E1E1E1DFDFDFDFDFDCDCD9
-D9D9D9D4D4D4D3D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B6B6B6B6B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B3
-B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABA9A6A6A6A6A6A6
-A4A4A19E9E9C9C9A9A9494928C87817C746E6A645F57546C7C81878F949A9CA4A6ABAEAEB1B1B1B1
-B1B1B3B1B1B1AEAEAEA9A6A49E9A948E877F79726C665D5567727C7F87898E929494949494969994
-949496999999949494949492928F898787817F7C74726C6A67615F5755554F4F555961676A6E7274
-797C7F7F81818487878789898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-89898989898989878787878787878787878787878989898989898989898C8C8E8E8E8E8F92929292
-929292929292949494949494949496999A9A9A9A9A9A96949494949494949494949292928F8E8987
-847C81878789898E898989898989878989898989898C8E8E8E8E8E8C89898989898989898989898C
-8E8E8E8E8E8E8E8E8E8C8C898989898989898C8E8F92929292929292929292949494929292949492
-9292928F8E8E89898987858585817F7C74747476797C7F818787898C8E929494999A9A9C9C9C9C9A
-9C9C9C9C9C9C9A9A9A99969494949494949494949494949492929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292929292929292928F
-8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989
-89898989898989898989898989898989898989898787858585858585858585858585858585858585
-85858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C797676
-767676747474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-9292928E8E8E8E8E8E8E8E8C898989898787858585817F7F7C767676797C7F84858789898E8F9292
-929494999A9C9C9C9EA4A4A4A6A6A9AEAEB1B1B6B9B9BBC0C1C6C6C9CCCFD1D3D4D4D7D9D9DCDEDF
-DFDFE1E1E1E4E6E6E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E4E1E1E1DFDFDFDFDFDFDCDCD9
-D9D9D9D4D4D4D3D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B6B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1
-B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABA9A6A6A6A6A6A6
-A4A4A19E9E9C9C9C9A9994928F89847F79726C67615F574F747F848992999C9EA6A9AEAEB1B1B1B1
-B1B1B3B1B1B1B1AEAEA9A9A49E9C949289847C746E6A5F57516A727C8187898F9292949494949694
-949494999996949494949494928F898987847F7C76746C6C6A665F5C5755554F51575F616A6C7274
-767C7F7F8484858787878989898E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8C8E8E8E8C8989898989
-898989898989878787878787878787878787878787898989898789898989898C8E8E8E8F92929292
-9292929292929494949499999999999A9A9A9A9A9A999494949494949494949492928F8F8E898985
-7F7F878789898E89898989898787878787898989898C8C8E8E8C8C898989898989898989898C8E8E
-8E8E8E8E8E8E8E8E8E8E8E8989898989898C8E8F9292929292929292929292929492929292929292
-928F8F8E8C89898987878585847F7F767C7F7F7C7C7C7F81878989898E8F929494999A9A9C9C9C9A
-9A9C9C9C9C9A9A9A9A99999494949494949494949494949492929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989
-89898989898989898989898989898989898989898787878585858585858585858585858585858585
-8585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7976
-767676747474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92928F8E8E8E8E8E8E8E8E898989898787858585817F7F7C797676767C7F7F858587898C8F929292
-9294949A9A9C9C9EA1A4A4A6A6A9A9AEB1B1B3B6B9B9BBC0C1C6C6CCCFCFD1D3D4D4D9D9D9DCDCDF
-DFDFE1E1E1E4E4E6E6E7E7E7E7E7E7E7E7E7E7E7E7E7E7E6E6E6E4E4E1E1DFDFDFDFDFDFDFDCD9D9
-D9D9D9D4D4D4D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1
-B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6
-A4A4A39E9E9C9C9C9A9A9494928987817C74716A66615C556A797F878E949A9EA4A6ABAEB1B1B1B1
-B1B1B1B3B1B1B1AEAEABA9A6A39C96928C877F76726C645F555F6A747F84878C9292929494949494
-949494949994949494949494928F8C898785817F7C74726C6A67615F5C5755544F55595F676C7274
-767C7C7F8485878787878789898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898C8C898989898987
-89898989878787878787858585878787858587878787898987878787898989898C8E8E8E8F929292
-929292929294949494999A9A9A9A999A9A9A9A9A9A969494949494949494949492928F8E8989877F
-7F848789898E8E8989898987878787878789898989898C8C898989898989898989898989898E8E8E
-8E8E8E8E8E8E8E8E8E8E8989898989898C8E8E8F9292929292929292929292929292929292929292
-8F8E8E898989898787858584817F727F8487817F7F7F7F84878989898E8F929294949A9A9C9C9A9A
-9A9A9C9C9C9A9A9A9999969494949494949494949494949494929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989
-89898989898989898989898989898989898989898987878585858585858585858585858585858585
-8585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C79
-767676767474FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92928E8E8E8E8E8E8E8E8C8989898987878585817F7F7F7C766C767C7C7F84858789898C8F929292
-9494999A9C9C9C9EA1A4A4A6A6A9A9AEB1B1B6B7B9B9BEC1C1C6C8CCCFCFD1D3D4D4D9D9D9DCDCDF
-DFDFE1E1E1E4E4E6E6E7E7E7E7E7E7E7E7E7E6E6E6E6E6E6E6E6E4E1E1E1DFDFDFDFDFDFDCDCD9D9
-D9D9D7D4D4D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6
-A4A4A39E9E9C9C9C9C9A9994928E89857F79746C6A645F59546C7C818992999CA3A6A9AEAEB1B1B1
-B1B1B1B1B3B1B1B1AEABA9A6A49E9A948F89817C746C6A615954616C767F87898E92929294949494
-94929494949494949494949492928E898787817F7C76726C6C6A665F5D5957554F4F575D616A7274
-76797C7F8187878787878989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898787
-8787898787878787878585858585858584848485878787878787878787898989898C8C8E8F929292
-929292929494949499999A9A9A9A9A9A9A9A9A9A99949494949494949494949492928E8C8987817F
-818789898E8E8C89898987878587878787898989898989898989898989898989898989898C8E8E8E
-8E8E8E8E8E8E8E8E8E8E8989898989898E8E8E929292929292929292929292929292929292928F8F
-8E8C898989878787858585817F7F7F878C87878481818185878989898C8E92929494999A9A9C9A9A
-9A9A9C9C9A9A9A9A9999949494949494949494949494949494929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989
-89898989898989898989898989898989898989898987878585858585858585858585858585858585
-8585858585817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C79
-767676767674FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-928F8E8E8E8E8E8E8E8C8989898987878585847F7F7F7C767676767C7C7F85858789898E92929292
-9494999A9C9C9E9EA3A4A4A6A6A9ABAEB1B3B6B7B9BBBEC1C4C6C8CCCFCFD3D4D4D4D9D9D9DCDCDF
-DFDFE1E1E1E4E4E6E6E7E7E7E7E7E7E6E6E6E6E6E6E6E6E6E6E4E4E1E1E1DFDFDFDFDFDFDCD9D9D9
-D9D9D4D4D4D3D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0C0BEBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6
-A4A4A39E9E9C9C9C9C9A9A94928F8987817C76726C67615F574F747C878E949C9EA6A6ABAEB1B1B1
-B1B1B1B1B1B3B1B1AEAEA9A6A69E9C949289857C74726C665F575166727C8187898F929292949494
-94929294949494949494949492928F898987847F7C7974716C6A67615F5D5757554F51575F676C74
-76797C7F818787878789898989898C8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989878787
-87878787878787858484858585858584848181848587878787878787878789898989898C8F929292
-92929294949494999A9A9A9C9C9C9C9A9A9A9A9A999494949494949494949492928F8E8989847F7F
-8789898C8E8E8989898787858585878789898989898989898989898989898989898989898E8E8E8E
-8E8E8E8E8E8E8E8E8E8989898989898E8E8E8F92929292929292929292929292928F8F92928F8E8E
-89898989878785858585847F7F818E94928C898787878787878989898C8E8F92929499999A9A9A9A
-999A9A9C9A9A9A999996949494949494949494949494949494929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989
-89898989898989898989898989898989898989898987878585858585858585858585858585858585
-858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C
-797676767676FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-928E8E8E8E8E8E8E89898989898987878585817F7F7C7B7674767C7C7F8185878989898F92929292
-9494999A9C9C9E9EA4A4A6A6A6A9ABAEB1B3B6B9B9BBBEC1C6C6C8CCCFCFD3D4D4D4D9D9D9D9DCDF
-DFDFE1E1E1E1E4E6E6E7E7E7E6E6E6E6E6E6E6E6E6E6E6E6E6E4E4E1E1DFDFDFDCDCDCDCDCD9D9D9
-D9D4D4D4D4D3D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0C0BBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABA9A9A6A6A6A6A6
-A6A4A39E9E9E9C9C9C9C9A9492928F89877F79746E6A67615D556A797F878F9A9EA4A6A9AEAEB1B1
-B1B1B1B1B1B3B1B1AEAEABA9A6A39C99928E877F76746C6A615C55596A747F84878C8F9292949494
-92929292949494949494949492928F8C898785817F7C76726C6C6A66615F5C5757544F555D616A72
-76797C7F8187878789898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898787
-85878787878785848481848485858484818181818484858787878787878787878989898C8E8F9292
-929292949494969A9C9C9C9C9C9C9C9A9A9A9A99949494949494949494949292928E8C89877F7F84
-8789898E8E8C89898787858585858787898989898989898989898989898989898989898C8E8E8E8E
-8E8E8E8E8E8E8E8E8E89898989898C8E8E8E929292929292929292928F9292928F8E8F8F8F8E8C89
-89898787878585858585817F7F89999A94928C8989878787878989898C8E8F92929494999A9A9A9A
-999A9A9A9A9A9A999994949494949494949494949494949494929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989
-89898989898989898989898989898989898989898987878785858585858585858585858585858585
-858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C
-7C7976767676FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-8F8E8E8E8E8E8C89898989898987878585847F7F7C7C767476767C7C7F84878789898C8F92929294
-94949A9A9C9C9EA1A4A4A6A6A9A9AEB1B1B3B6B9B9BBC0C1C6C6C8CCCFCFD3D4D4D7D9D9D9D9DCDE
-DFDFDFE1E1E1E4E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E6E4E1E1E1DFDFDFDCDCDCDCD9D9D9D9
-D7D4D4D4D4D3D1CFCFCFCFCCCCC9C8C8C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABA9A9A6A6A6A6A6
-A6A4A49E9E9E9C9C9C9C9A9994928F8E89847C76726C6A665F5955717C8189949CA3A6A9ABAEAEB1
-B1B1B1B1B1B1B1B1AEAEABA9A6A49E9A949289817C74726A645F57515F6C767F87898C8F92929292
-9292929294949494949494949292928E898987817F7C7674716C6A6A615F5F595757544F575F676C
-74797C7F81878789898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898787
-87858587878585848181818184848181817F7F7F8181848587858484858787878789898C8E8F9292
-929294949494999A9C9C9C9C9C9C9C9C9A9A9A999494949494949494949292928F8E8987817F8187
-89898C8E8E89898787858585858787898989898787878989898989898989898989898C8E8E8E8E8E
-8E8E8E8E8E8E8E8E8989898989898E8E8E8F9292929292929292928F8F8F8F8F8E8E8E8E8E898989
-898787858585858585847F7C89949C9A9A94928E8C8989878789898C8C8E8F9292949496999A9A99
-99999A9A9A9A99999694949494949494949494949494949494929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989
-89898989898989898989898989898989898989898989878787858585858585858585858585858585
-858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C
-7C7C79767676FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292928F8F
-8E8E8E8E8E8E89898989898989878585847F7F7C7C767676767C7C7F8185878989898E9292929294
-94999A9C9C9E9EA1A4A4A6A6A9A9AEB1B3B6B7B9B9BEC1C1C6C6C9CCCFCFD3D4D4D9D9D9D9D9DCDC
-DFDFDFE1E1E1E4E4E6E6E6E6E6E6E6E6E6E6E6E6E4E4E4E4E4E4E1E1E1DFDFDFDCDCDCD9D9D9D9D9
-D4D4D4D4D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1
-B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A9A9A6A6A6A6A6
-A6A4A4A19E9E9E9C9C9C9C9A9492928F89877F7C74726C67615F5754747F87929C9EA4A6A9AEAEAE
-B1B1B1B1B1B1B1B1B1AEABA9A6A49E9C94928C877F76746C67615C554F616C798187898E92929292
-928F8F9292949494949494949492928F8C8987847F7F7C74726C6C6A67615F5D575755544F57616A
-72767C7F81878989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C898989898989898787
-878787858585858581817F81848481817F7F7F7F7F8181848484848184858787878789898E8F9292
-9294949494949A9C9C9C9C9C9C9C9C9C9A9A999494949494949494949292928F8E8987847F818787
-89898E8E8C89878785858585878789898987878787878989898989898989898989898E8E8E8E8E8E
-8E8E8E8E8E8E8E8E89898989898C8E8E8F9292929292928F92928F8E8E8F8E8E8E8E8E8C89898989
-8787858585858585848174878F9A9C9C9A9994928E8989898989898C8E8E8F929292949499999A99
-9999999A9A9A99999494949494949494949494949494949494929292929492929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-89898989898989898989898989898989898989898989878787858585858585858585858585858585
-858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C
-7C7C79767676FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292928E8E
-8E8E8E8E8E8C898989898989878785847F7F7C7C7C767476767C7C7F8187878989898E9292929494
-94999A9C9C9E9EA3A4A4A6A6A9ABAEB1B3B6B7B9BBBEC1C1C6C8C9CCCFCFD3D4D4D9D9D9D9D9DCDC
-DFDFDFE1E1E1E4E4E6E6E6E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E1E1E1DFDFDCDCDCDCD9D9D9D9D4
-D4D4D3D3D3D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0C0BEBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1
-B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABA9A9A9A6A6A6A6A6
-A6A4A4A19E9E9E9C9C9C9C9A969492928F89847C76746C6A67615D556A767F89949EA4A6A9ABAEAE
-B1B1B1B1B1B1B1B1B1AEAEA9A9A6A39C99928E877F7974726A615F57545767727C8487898E8F9292
-8F8F8E8F92929292929494949492928F8E898787817F7C7674716C6A6A615F5F5D57575554515964
-6C74797F7F85878789898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C898989898989
-878787878787858584818181818484817F7F7F7F7F7F7F818184818181848487878789898C8E8F92
-9294949494999A9C9C9C9C9E9E9C9C9C9A9A9994949494949494929292928F8E8C89858181858789
-898C8E8E89898785858585858787898987878787878787898989898989898989898C8E8E8E8E8E8E
-8E8E8E8E8E8E8E8989898989898E8E8F9292929292928F8F8F8F8E8E8E8E8E8E8E8E8C8989898987
-8785858585858585816E848C949E9E9C9A9A94948F89898989898C8E8E8E8E8F9292949494999999
-9494999A9A9999969494949494949494949494949494949494949292949492929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989
-89898989898989898989898989898989898989898989898787878585858585858585858585858585
-858585858585817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C
-7C7C7C797676FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF92928E8E8E
-8E8E8E8E8E898989898989898785847F7F7F7C7C767476767C7C7F7F84878989898C8F9292949494
-999A9A9C9C9E9EA4A4A6A6A6A9ABAEB1B3B6B9B9BBBEC1C4C6C8CCCCCFCFD3D4D4D7D9D9D9D9DCDC
-DFDFDFE1E1E1E4E4E6E6E6E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E1E1DFDFDFDCDCD9D9D9D9D9D7D4
-D4D4D3D3D3D3D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0C0BBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAE
-B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABA9A9A9A6A6A6A6A6
-A6A4A4A39E9E9E9E9C9C9C9A99949292928C877F7C74726C6A665F5955717C84929C9EA4A6A9ABAE
-AEB1B1B1B1B1B1B1B1AEAEABA9A6A49E9A948F89817C76726C67615C554F596A747C8787898C8F8F
-8F8E8C8E8F929292929294949492928F8E898987847F7C7974726C6C6A67615F5F5C59575554555D
-6A72767C7F818487878989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8E8E8C8C89898989
-89898787878787878484848484848481817F7F7F7F7F7F7F818181817F81818485878789898E8E8F
-9292949494999A9C9C9C9C9C9C9C9C9C9A9994949494949494929292928F8E8C8987848184878789
-898E8E8C898787858585858787898989878785858787878789898989898C8C8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E89898989898C8E8F9292929292928F8E8F8F8E8E8E8E8E8E8E8C89898989898987
-85858585858585847F7F89949C9E9E9C9C9A9994928E8C8989898E8E8E8E8E8F9292949494949996
-949496999A9999949494949494949494949494949494949494949492949494929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989
-89898989898989898989898989898989898989898989898987878785858585858585858585858585
-85858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C
-7C7C7C7C7976FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF928E8E8E8E
-8E8E8E8E8C8989898989898787847F7F7F7C7C76767476767C7C7F8185878989898E8F9292949496
-999A9C9C9C9EA1A4A4A6A6A9A9AEAEB1B3B6B9B9BBC0C1C6C6C8CCCCCFCFD3D4D4D4D9D9D9D9D9DC
-DFDFDFE1E1E1E1E4E6E6E4E4E4E4E4E4E4E4E4E4E4E4E4E4E4E1E1E1DFDFDFDCDCD9D9D9D9D9D4D4
-D4D3D3D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAE
-AEB1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A9A9A6A6A6A6A6A6
-A6A4A4A3A19E9E9E9C9C9C9A9A949292928F89817C76746C6A67615F5751747F89949EA4A6A9A9AE
-AEAEB1B1B1B1B1B1B1B1AEABA9A6A49E9C949289877F7974716A615F57554F5F6A747F878789898E
-8E8C8C8C8E92929292929294949292928E8C8987847F7F7C7674716C6A6A645F5F5F5C5957555557
-5F6C74767C7F818485878789898989898C8E8E8E8E8E8F8F8F8E8E8F8F92928F8F8F8E8E8E8E8E8E
-8C8989898989898787878787878785848481817F7F7F7F7F7F7F7F7F7F7F81818485878789898E8E
-8F92929496999A9C9C9C9C9C9C9C9C9A9A99949494949492929292928F8E89898785818487878989
-8E8E8E89898785858585858789898987878585858587878989898989898E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E89898989898C8E8F9292929292928F8E8E8E8E8E8E8E8C8C8E8C8989898989898787
-85858585858584817C89929AA1A39E9E9C9A9994928F8E8C8C8C8E8E8E8E8E8F9292929494949694
-94949499999994949494949494949494949494949494949494949494949494929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989
-89898989898989898989898989898989898989898989898987878785858585858585858585858585
-8585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C
-7C7C7C7C7C79FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8E8E8E8E
-8E8E8E8E898989898987878584817F7F7F7C76767476767C7C7F7F85878989898E8F929294949499
-9A9A9C9C9E9EA1A4A4A6A6A9ABAEB1B1B3B7B9B9BBC0C1C6C6C8CCCCCFCFD3D4D4D4D9D9D9D9D9DC
-DEDFDFDFE1E1E1E4E4E4E4E4E4E4E4E4E4E4E4E1E1E1E1E1E1E1E1E1DFDFDFDCD9D9D9D9D9D4D4D4
-D3D3D3D3D3D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C0C0C0C0C1C0BEBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAE
-AEAEB1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABA9A9A9A6A6A6A6A6A6
-A6A4A4A4A39E9E9E9E9C9C9C9A999492929289877F7C74726C6A67615D556A7685929CA1A4A6A9AB
-ABAEAEB1B1B1B1B1B1B1AEAEA9A6A49E9C99928E877F7C76726C67615D575155616C767F87878989
-8C8C89898C8E8F9292929294929292928F8C898787817F7C7974726C6C6A6761615F5F5C5C575555
-57616C72767C7F7F81858787878989898C8E8E8E8E8F8F92928F8F8F92929292928F8F8F8E8F8F8F
-8F8E8C898C8C8989878787878787878785848181817F8181817F7F7F7F7F7F81818485878789898C
-8E92929294999A9C9C9C9C9C9C9C9C9A9994949494949292929292928E8C8987878484878789898E
-8E8E8C898787858585858787898987878785858587878989898989898C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8C898989898C8E8F9292929292928F8E8E8E8E8E8E8E8C89898C898989898989878785
-8585858585858176878E949C9E9E9E9E9C9C999494928F8E8E8E8E8E8E8E8E8F9292929494949494
-94949494999994949494949494949494949494949494949494949494949494949292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989
-89898989898989898989898989898989898989898989898989878785858585858585858585858585
-8585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C
-7C7C7C7C7C7BFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8C8989898987878585817F7F7F7C7676747476767C7F7F81858789898C8E9292929494999A
-9A9C9C9C9E9EA3A4A4A6A6A9AEAEB1B3B6B9B9BBBEC1C1C6C8C9CCCCCFCFD3D4D4D4D9D9D9D9D9DC
-DCDFDFDFE1E1E1E4E4E4E4E4E4E4E4E1E1E1E1E1E1E1E1E1E1E1E1E1DFDFDEDCD9D9D9D9D7D4D4D3
-D3D1D1D1D1D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C0C0C0C0C0C0BEBBBBBBBBBBBBBB
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABA9A9A9A6A6A6A6A6A6
-A6A4A4A4A3A19E9E9E9C9C9C9A99949492928F87817C76746C6A6A645F5955747F89949EA4A6A6A9
-A9AEAEAEB1B1B1B1B1AEAEAEABA6A4A19C9A948F89817C79746E6A665F595551576772797F878789
-89898989898C8F8F92929292929292928F8E898987847F7C7B7674726C6C6A6661615F5D5D595757
-575D666C7276797C7F81858787878789898C8E8E8E8E8F929292929292929292929292928F8F9292
-92928F8E8E8E8E8C8989898989878787878784848481818481817F7F7F7F7F7F7F81818487878989
-8C8E8F929294999A9A9A9C9C9C9A9A9A96949494929292929292928F8E8989878585878789898E8E
-8E8C898987848484848787898787878585858587878789898989898C8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E898989898C8E8F9292929292928F8E8E8E8E8E8E8E8989898989898989898787878585
-85858585858474848992949C9E9E9E9E9E9C9A9494928F8F8E8E8E8E8E8E8E8F9292929294949494
-94949494969494949494949494949494949494949494949494949494949494949492929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89
-89898989898989898989898989898989898989898989898989878787858585858585858585858585
-858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C
-7C7C7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E898989898787858584817F7F7C7976747476767C7C7F7F85878789898E8F92929494999A9A
-9C9C9C9C9E9EA4A4A6A6A9ABAEB1B1B3B6B9B9BBBEC1C4C6C8C9CCCCCFCFD3D4D4D4D7D9D9D9D9DC
-DCDFDFDFE1E1E1E4E4E4E4E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFDFDFDCDCD9D9D9D9D4D4D4D3
-D3D1D1D1D1D1CFCFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C0C0C0C0C0BEBBBBBBBBBBBBBBBB
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABA9A9A6A6A6A6A6A6A6
-A6A6A4A4A4A39E9E9E9C9C9C9A99949494929289857F7C74726C6A67615F575176818E9AA1A4A6A6
-A6A9AEAEB1B1B1B1B1AEAEAEABA9A6A39E9A949289877F7C76726C67615F5755545F6A747C7F8787
-89898989898C8E8E8F929292929292928F8E89898785817F7C7674726E6C6A676161615F5D5D5957
-57575F676C7274767C7F818587878787898C8E8E8E8E8F9292929292929292929292929292929292
-9292928F8F8F8E8E8E8989898989898787878787878585858484817F7F7F7F7F7F7F818184858787
-89898E8F9292949494999A9A9A9A999694949292929292929292928E8C89878785878789898E8E8E
-8C89898785818181848787878785858585858787878989898989898E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8C8989898E8E8F9292929292928F8E8E8E8E8E8E8E898989898989878787878785858585
-8585858585747F878C92999C9C9E9C9C9C9C9A94949292928F8E8E8E8E8E8E8E9292929292949494
-94949494949494949494949494949494949494949494949494949494949494949492929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C
-89898989898989898989898989898989898989898989898989898787858585858585858585858585
-85858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C
-7C7C7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8C8989898987878585817F7F7F7C7674747676797C7F7F84858789898C8F9292929494999A9A
-9C9C9C9E9EA1A4A4A6A6A9AEAEB1B1B3B7B9BBBBC0C1C6C6C8CCCCCFCFCFD3D4D4D4D4D9D9D9D9DC
-DCDFDFDFE1E1E1E4E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFDFDCDCD9D9D9D9D9D4D4D4D3
-D1D1D1D1D1CFCFCFCFCCCCC9C8C6C6C6C6C6C6C6C6C6C1C1C1C1C0BEBEBEC0BEBBBBBBBBBBBBBBBB
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABA9A9A6A6A6A6A6A6A6
-A6A6A4A4A4A3A19E9E9E9C9C9A9994949492928E87817C76746C6C6A67615D576C7C87929CA4A6A6
-A6A6ABAEAEB1B1B1B1AEAEAEABA9A6A49E9C96928C87817C76746C6A66615C575457616C747C8187
-8789898989898C8E8F8F9292929292928F8E8C898787817F7C797674726C6C6A666161615F5F5D5C
-5C5D5D61676C7274767C7F818485878787898C8C8E8E8E8F8F929292929292929292929292929292
-92929292928F8E8E8E8E8C8989898989878787878787878787858481817F7F7F7F7F7F8181848587
-8789898C8E8F92929294949494949494929292929292929292928F8E89898785878789898C8E8E8C
-8989878581817F848787878785858585878787878989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8C89898E8E8F9292929292928F8E8E8E8E8E8E8E89898989898987878787878585858585
-85858585817C84898F949A9C9C9C9C9C9C9C9A94949292928F8F8E8E8E8E8E8E8F92929292949494
-94949494949494949494949494949494949494949494949494949494949494949494929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-89898989898989898989898989898989898989898989898989898787858585858585858585858585
-85858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C
-7C7C7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8C8989898987878585847F7F7F7C7676747476767C7C7F8185858789898E929292929494999A9C
-9C9C9E9E9EA1A4A4A6A6ABAEAEB1B3B6B9B9BBBEC0C1C6C6C8CCCCCFCFCFD3D3D4D4D4D9D9D9D9D9
-DCDEDFDFE1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFDFDFDCD9D9D9D9D9D9D4D4D4D3
-D1CFCFCFCFCFCFCFCCCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C0C0BBBEBEBEBEBBBBBBBBBBBBBBB9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1AEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABA9A6A6A6A6A6A6A6
-A6A6A4A4A4A4A39E9E9E9C9C9A9994949494928F89857F7C74726C6C6A665F5955747F89949EA4A4
-A6A6A9ABAEAEB1B1AEAEAEAEAEA9A6A49E9C9A948E87847F7B74726C6A615F575555576471767F84
-878789898989898C8E8F9292929292928F8E8C898987847F7C7C767472716C6A67666161615F5F5F
-5F5F5F5F666A6C7274767C7F8184848587898989898C8E8E8E8F8F92929292929292929292929292
-8F8F8F92928F8E8E8E8C8C8C8C89898989878787878787878787858481817F7F81817F7F7F818485
-85878789898C8E8F929292949494929292929292929292928F8F8E8C898787858789898C8E8E8E89
-898787817F7F818587878585858587878787898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8C8E8E8E9292929292928F8E8E8E8E8E8E8E8989898989878787878785858585858585
-85858481767F84898E94999A9A9C9C9C9C9C9A9994949292928F8E8E8E8E8E8E8F92929292929494
-94949494949494949494949494949494949494949494949494949494949494949494929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8C898989898989898989898989898989898989898989898989898787858585858585858585858585
-8585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C
-7C7C7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8C898989898987858585817F7F7C7976747476767C7C7F7F84858789898E8F9292929294949A9C9C
-9C9E9E9E9EA3A4A4A6A9AEAEB1B1B3B7B9BBBBBEC1C1C6C6C8CCCCCFCFCFD3D3D4D4D4D9D9D9D9D9
-DCDCDFDFDFE1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFDFDFDCDCD9D9D9D9D9D4D4D4D3D3
-D1CFCFCFCFCFCFCCCCCCCCC8C8C6C6C6C6C6C6C6C6C4C1C1C1C0BEBBBBBBBBBBBBBBBBBBBBBBBBB9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B9B9B9B7B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABA9A6A6A6A6A6A6A6
-A6A6A4A4A4A4A3A19E9E9C9C9A9A9694949492928C87817C76746C6C6A67615F575179858F9AA3A4
-A4A4A6A9AEAEAEB1AEAEAEAEAEABA6A49E9C9A948F89877F7C76746C6A67615D5755555F6A72797F
-85878787898989898E8E8F929292928F8F8E8C89898785817F7C797674726C6C6A6764616161615F
-5F5F5F6161676A6C7274767C7F8181848787898989898E8E8E8E8E8F8F929292929292929292928F
-8F8E8F8F928F8E8E8C8C89898C8C898989898787878987878787878584818181818181817F818485
-85858787878989898C8E8F9292929292929292929292928F8E8E8E898987858789898C8E8E8E8C89
-8787847F7F7F8485858585858787878989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8F929292928F8F8E8E8E8E8E8E8C898989898987878585858585858585858585
-85817F747C7F85898E9294999A9A9C9C9C9A9A999494929292928F8E8E8E8E8E8F92929292929294
-94949494949494949494949494949494949494949494949494949494949494949494949292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8C8989898989898989898989898989898989898989898989898787858585858585858585858585
-8585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C
-7C7C7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E89
-898989898987878585847F7F7C7C7674747676767C7C7F81858587898C8E929292929494999A9C9C
-9C9E9E9E9EA4A4A6A6A9AEAEB1B1B3B9B9BBBBC0C1C1C6C6C8CCCCCFCFD1D3D3D4D4D4D9D9D9D9D9
-DCDCDFDFDFE1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1E1DFDFDFDFDFDCDCD9D9D9D9D9D9D4D4D4D3D3
-D1CFCFCFCFCFCCCCCCCCCCC8C8C6C6C6C6C4C4C4C6C1C1C1C1C0BEBBBBBBBBBBBBBBBBBBBBBBBBB9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B7B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B3B3B3B3B1B1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABA9A9A6A6A6A6A6A6
-A6A6A4A4A4A4A4A19E9E9C9C9A9A9994949494928E89857F7C74726C6C6A66615D574F7C87929CA1
-A3A4A6A6ABAEAEB1AEAEAEAEABABA9A6A39E9A94928987817C7974726C6A665F5D575557616C747C
-7F878787878989898C8E8F8F9292928F8F8E8C89898787817F7C79767474716C6A6A676666616161
-6161616164676A6C7274767B7C7F81848587878989898C8E8E8E8E8E8E8F8F8F9292929292928F8F
-8E8E8E8E8F8F8E8C8C898989898C8C89898989898787878789878787858484818484848181818184
-858587858787878989898E8F8F928F8F9292929292928F8E8E8E8C8987878789898C8E8E8E8E8989
-87847F7F7F818585858585878787898989898989898989898E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8F929292928F8E8E8E8E8E8E8C89898989898787858585858585858585858585
-817F72747C7F84898E92929494999A9A9A9A9A999494929292928F8F8E8E8E8F8F92929292929294
-94949494949494949494949494949494949494949494949494949494949494949494949292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8989898989898989898989898989898989898989898989898787878585858585858585858585
-8585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C
-7C7C7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8989
-8989898987878585847F7F7C7C7676747476767C7C7F7F85858789898E8E929292929494999A9C9C
-9E9E9E9EA1A4A4A6A6A9AEB1B1B1B6B9BBBBBEC0C1C1C6C6C8CCCFCFCFD1D3D3D4D4D4D7D9D9D9D9
-DCDCDFDFDFE1E1E1E1E1E1E1E1E1E1E1E1DFDFDFDFDFDFDFDFDFDFDCD9D9D9D9D9D9D9D4D4D4D3D1
-D1CFCFCFCFCFCCCCCCCCC9C8C6C6C6C6C4C1C4C4C4C1C1C1C1C0BEBBBBBBBBBBBBBBBBBBBBBBBBB9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B7B7B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B3B3B1B1B1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABA9A9A6A6A6A6A6A6
-A6A6A4A4A4A4A4A39E9E9C9C9A9A9996949494928F8987817C76746C6C6A67645F5C55747F89949C
-9EA1A4A6A9AEAEAEAEAEAEAEABABA9A6A49E9C99928E89847F7C76726E6A67615F5C57555C667276
-7C81858787878989898C8E8F8F8F8F8F8F8E8E89898987847F7F7C797674726C6C6A6A6766666461
-6161616166676A6C727474767C7F7F818487878789898C8E8E8E8E8E8E8E8E8F8F8F9292928F8F8E
-8E8C8C8C8E8E8C8C8989898989898989898989878787878787898787858585848485858484818484
-85878787878585878789898C8E8F8E8F9292929292928E8E8E8E8989878787898C8E8E8E8E8E8989
-877F7C7F818485858585878789898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8F929292928F8E8E8E8E8E8E8C8989878789878785858585858585858585858584
-816A6E74797F8187898E92949494999A9A9A9994949492929292928F8E8E8F8F8F92929292929292
-94949494949494949494949494949494949494949494949494949494949494949494949492929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8C89898989898989898989898989898989898989898989898987878585858585858585858585
-8585858585858585858585817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C
-7C7C7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8C8989
-89898787878585847F7F7C7C7C7674747676767C7C7F81858787898C8E8F9292929294949A9A9C9C
-9E9E9E9EA3A4A4A6A6ABAEB1B1B3B6B9BBBBC0C0C1C1C6C6C9CCCFCFCFD1D1D3D4D4D4D4D9D9D9D9
-DCDCDFDFDFDFE1E1E1E1E1E1E1DFDFDFDFDFDFDFDFDFDFDFDFDFDCDCD9D9D9D9D4D4D4D4D4D4D3D1
-CFCFCFCFCFCCCCCCCCCCC9C8C6C6C6C6C4C1C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBBBBBBBBBBBB9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B6B7B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B3B1B1B1B1AEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABA9A9A6A6A6A6A6A6
-A6A6A4A4A4A4A4A39E9E9C9C9C9A9A9994949492928E89857F7C74726C6C6A67615F575176818994
-9C9EA3A6A9A9AEAEAEAEAEAEABA9A9A6A49E9C99949289877F7C7974726C6A66615F5C57575F6A74
-797F81848587878989898C8E8E8E8F8F8E8E8E8989898787817F7C79767674726C6C6A6767676766
-6666646166676A6C727474767C7C7F81848587878989898E8E8E8E8E8E8E8E8E8E8F8F8F8F8F8E8E
-8C8989898C8E8C898989898989898989898987878787878787878787878585858585858585848485
-878787878787878787878989898C8E8F92929292928F8E8E8E8C8987878789898E8E8E8E8E8C8987
-817F7C7F848585858587878989898989898989898C8C8C8E8E8E8E8E8F8F8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8F92929292928F8E8E8E8E8E8C898987878787878485858585858585858584856767
-676A6C72767C7F87898C8F929294949999999694949492929292928F8F8E8F8F9292929292929292
-94949494949494949494949494949494949494949494949494949494949494949494949492929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292928F8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8C898989898989898989898989898989898989898989898987878785858585858585858585
-858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C
-7C7C7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E898989
-898787858585847F7F7F7C7C7674747676767C7C7F7F85858789898E8E8F9292929494969A9C9C9E
-9E9E9E9EA4A4A6A6A9AEAEB1B1B3B7B9BBBBC0C1C1C1C6C6C9CCCFCFCFCFD1D3D3D4D4D4D9D9D9D9
-D9DCDEDFDFDFDFE1E1E1DFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDEDCD9D9D9D9D4D4D4D4D4D4D3D3D1
-CFCFCFCFCCCCCCC9C9C9C8C8C6C6C6C6C4C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBBBBBBBBBB9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1AEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABA9A9A6A6A6A6A6A6
-A6A6A4A4A4A4A4A39E9E9C9C9C9A9A9999949492928F8C87817F79746E6C6A6A66615D57517C848C
-949C9EA4A6A9ABAEAEAEAEABABA9A9A6A49E9C9A94928C87817C7C7674716C6A61615F595759616C
-747B7F81848587898989898C8C8C8E8E8E8E8E8C89898787847F7C7C797674726C6C6A6A67676767
-6767676767676A6C71747476797C7F7F818587878789898C8E8E8E8E8E8E8E8E8E8E8E8F8F8E8E8C
-89898989898989898989898787898989898787878787878587878787878585858585858585858587
-8787878787878787878989898C8E8F92929292928F8E8E8E8E8989878789898E8E8E8E8E8C898985
-7F7C7F81848485858587878989898989898C8C8E8E8E8E8E8E8E8E8F92928F8E8E8E8E8F8E8E8E8E
-8E8E8E8E8E8F9292929292928E8E8E8E8E8C89898787878785818484848585858585856A6A6A6A6A
-6A6A6C72747C7F8487898E8F929494949494949494949292929292928F8F8F8F9292929292929292
-92949494949494949494949494949494949494949494949494949494949494949494949494929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292928F8F8E8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8C8989898989898989898989898989898989898989898989878787858585858585858585
-858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7C7C7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8C898989
-8987878585847F7F7F7C7C797674747676797C7F7F84858789898E8E8E929292949494999A9C9C9E
-9E9E9EA3A4A6A6A6A9AEAEB1B1B3B9B9BBBEC0C1C1C1C6C6C9CCCFCFCFCFD1D3D3D4D4D4D9D9D9D9
-D9DCDCDCDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDCD9D9D9D9D7D4D4D4D4D4D4D3D3D1
-CFCFCFCCCCCCC9C8C8C8C8C8C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBBBBBBBBBB9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3B3B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B3B3B3B1B1B1B1B1B1B1B1B1B1AEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABA9A9A6A6A6A6A6A6
-A6A6A4A4A4A4A4A49E9E9C9C9C9A9A9A9994949492928E89877F7C76726C6C6A67665F59556A7C85
-8C949EA4A6A6A9ABAEAEAEABABA9A9A6A4A19C9A99948F89857F7C7674726C6A6761615F5C575D67
-72747C7F818187878989898989898C8C8E8E8E8C89898787847F7F7C7C767674726C6C6A67676767
-6767676767676A6C6C7274767C7C7F7F818587878789898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89
-89898989898989898989878787878989878787878787858585878787878585858585858585858787
-8787878989898987898989898E8F8F92929292928F8E8E8E8C89898989898E8E8E8E8E8E8989877F
-7C7F7F8181848585878789898989898E8E8E8F8E8E8E8E8E8E8E8F9292928F8F8F8F8F8F8F8E8E8E
-8E8E8E8F8F9292929292928F8E8E8E8E8C898987878787858181818184858585858474767C7F7972
-6C6C6C7274797F818789898E92929494949494949494949292929292928F8F929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292928F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8C8989898989898989898989898989898989898989898989878787878585858585858585
-858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7C7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C89898989
-8787858584817F7F7C7C7C7674747676767C7C7F81858587898C8E8E8F929292949499999A9C9C9E
-9E9E9EA4A4A6A6A6A9AEB1B1B1B6B9B9BBBEC0C1C1C4C6C6C9CCCFCFCFCFD1D3D3D4D4D4D9D9D9D9
-D9DCDCDCDCDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDCDCD9D9D9D9D4D4D4D4D4D4D4D3D1D1
-CFCFCFCCCCC9C8C8C8C8C8C6C6C6C6C4C1C1C1C1C1C1C1C0C0BEBBBBBBBBBBBBBBBBBBBBBBB9B9B9
-B9B9B9B9B9B9B9B9B9B9B7B7B9B9B7B6B3B3B3B3B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B3B3B1B1B1B1B1B1B1B1B1AEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A6A6A6A6A6A6
-A6A4A4A4A4A4A4A4A19E9E9C9C9C9A9A9999949492928F8C87817F79746E6C6A6A67615F57546C7C
-878E999EA4A6A9A9ABAEAEABABA9A9A6A6A39E9C9A949289877F7C7C7674726C6A6761615F59595F
-6A72767C7F81848787878989898989898C8E8E8C8989878785817F7C7C79767472716C6A6A6A6A6A
-6A6A6A6767676A6C6C7274767C7C7F7F81878787878989898C8E8E8E8E8E8E8E8E8E8E8E8E8C8989
-89898987898989898987878787878787878787878785858585858787858585858585858585878787
-878789898989898989898C8E8E8F92929292928F8E8E8E8E89898989898C8E8E8E8E8E898987817C
-7C7F7F7F818587878789898989898C8E8F8F8F8E8E8E8E8E8E8F8F9292929292929292928F8E8E8E
-8E8E8F92929292929292928E8E8E8E8C89898787858584817F7F7F8485858585847F848789857C74
-7271717274767C818587898E92929294949494949494929292929292928F92929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292928F8F92928F8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8C89898989898989898989898989898989898989898989898787878585858585858585
-85858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7C7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898989
-87878585817F7F7F7C7C7674747476767C7C7F7F84858789898C8E8E8F9292949494999A9A9C9C9E
-9E9EA3A4A6A6A6A9ABAEB1B1B1B6B9B9BBBEC0C1C1C4C6C6C9CCCCCFCFCFD1D1D3D4D4D4D7D9D9D9
-D9DCDCDCDCDCDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDFDEDCD9D9D9D9D9D4D4D4D4D4D4D3D1D1CF
-CFCFCFCCCCC9C8C8C8C8C8C6C6C6C6C4C1C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBBBBBBBBBBBB9B9B9
-B9B9B9B9B9B9B9B9B9B7B6B7B7B7B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B3B1B1B1B1B1B1B1B1B1AEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A6A6A6A6A6A6
-A6A4A4A4A4A4A4A4A19E9E9C9C9C9A9A9A9994949492928E89877F7C76726C6C6A6A67615D554F72
-7F87929CA4A6A6A9A9ABABABA9A9A9A6A6A49E9C9A94928E87817F7C7674726C6A6766615F5F595D
-616C74767C7F81848787878789898989898C8E8E8989878787847F7C7C7C797674726C6C6A6A6A6A
-6A6A6A6A6A6A6A6C6C727476797C7F7F84878787898989898C8E8E8E8E8E8E8E8E8E8E8E8C898989
-89898787878789898787878787878787878787878584858585858585858585858585858587878787
-87898989898989898C8E8F8F8F9292929292928F8E8E8E8C898989898C8E8E8E8E8E898987877F7C
-7F7F7F81858787878989898989898E8F9292928F8E8E8F8F8F8F929292929292929292928F8F8E8E
-8F8F92929292929292928F8E8E8E8C89898787858584817F7F7F818585858481878C929492877F79
-7474727476797C7F848789898F929292949494949492929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949492
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292928F8F92928F8F8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8C898989898989898989898989898989898989898989898987878785858585858585
-8585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7C7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898987
-878585847F7F7F7C7C797674747676767C7C7F8185878789898E8E8F9292949494999A9A9C9C9E9E
-9E9EA4A4A6A6A6A9AEAEB1B1B3B6B9B9BBBEC1C1C1C6C6C6C9CCCCCFCFCFCFD1D3D3D4D4D4D9D9D9
-D9D9D9D9DCDCDEDFDFDFDFDFDFDFDFDFDFDFDEDEDCDCDCDCD9D9D9D9D9D7D4D4D4D4D4D3D3D1CFCF
-CFCFCCCCCCC8C8C6C6C6C8C6C6C6C6C4C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBBBBBBBBBB9B9B9
-B9B9B9B9B9B9B9B9B9B7B6B6B6B7B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A6A6A6A6A6A6
-A4A4A4A4A4A4A4A4A19E9E9C9C9C9C9A9A9999949492928F8C87817F7974726C6C6A6A615F595561
-767F89949EA4A6A6A9A9A9ABA9A9A9A6A6A49E9C9C99948F89877F7C7C7674726C6A6766615F5D57
-5F676C74767C7F818587878787878989898C8E8E898989878784817F7C7C79767474716C6A6A6A6A
-6A6A6A6A6A6A6A6C6C727274767C7F7F848787898989898C8C8E8E8E8E8E8E8E8E8E8E8C8C898989
-89878787878787878787878785848484848585858484848485858584858585858585858787878787
-89898989898C8E8E8F8F9292929292929292928F8F8E8E898989898C8E8E8E8E8E8C8989877F7C7C
-7F7F81858787898989898989898C8F929292928F8F8F9292929292929292929292929292928F8F8F
-929292929292929292928F8E8E8C898987878585847F7F7F7F8184848484818C929A9E9E9489877C
-76747474767C7C7F818787898E8F9292929294949492929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949492
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292928F8E8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8C898989898989898989898989898989898989898989898989878787858585858585
-858585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7C7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898987
-858585817F7F7F7C7C7674747676767C7C7F7F81858789898C8E8E9292929494999A9A9A9C9C9E9E
-9EA1A4A6A6A6A9A9AEAEB1B1B3B6B9B9BBBEC1C1C1C6C6C6C9CCCCCFCFCFCFD1D3D3D4D4D4D9D9D9
-D9D9D9D9D9DCDCDFDFDFDFDFDFDEDEDCDCDCDCDCDCDCDCDCD9D9D9D9D9D4D4D4D4D4D3D3D1CFCFCF
-CFCFCCCCCCC8C8C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBB9B9B9B9BBB9B9B9
-B9B9B9B9B9B9B9B9B9B7B6B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6
-A4A4A4A4A4A4A4A4A39E9E9C9C9C9C9C9A9A9994949492928E89877F7C7672716C6C6A67615F5754
-6679818E9AA4A4A6A6A9A9A9A9A9A9A6A4A4A39E9C9A94928C87817F7C7674726E6A6A6766615F5D
-5D616A7174797C7F818587878787878989898C8E8C8989878784817F7C7C7C797674726E6C6A6A6A
-6A6A6A6A6A6A6A6C6C717274767C7F81848787898989898C8E8E8E8E8E8E8E8E8E8E8E8C89898989
-89898787878787878787878584848181818181848481818184858484848485858585878787878789
-898989898C8E8F8F9292929292929292929292928F8E8C8989898C8E8E8E8E8E8E898987847C7C7F
-7F81858787898989898989898C8E8F92929292929292929292929292929292929292929292928F92
-9292929292929292928F8E8E8C898987878585847F7F7F7F7F818181817F9292969CA49E998E8781
-7C797676797C7C7F7F8487898C8F8F92929294949292929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949494
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292928F8F8F8F928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989878787878585858585
-858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898787
-8585847F7F7F7C7C767674747676767C7C7F7F84878989898C8E8F9292949496999A9A9A9C9C9E9E
-9EA4A4A6A6A6A9ABAEB1B1B1B3B6B9B9BBBEC1C1C4C6C6C6CCCCCCCFCFCFCFD1D3D3D4D4D4D9D9D9
-D9D9D9D9D9D9DCDCDFDFDEDCDCDCDCDCDCDCDCDCDCDCDCD9D9D9D9D9D9D4D4D4D3D3D3D1CFCFCFCF
-CFCFCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B6B6B3B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B3B1B1B1B1B1B1B1B1B1AEB1B1B1B1AEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEACABABABABABABABABABABABABA9A9A9A9A6A6A6A6A6
-A4A4A4A4A4A4A4A4A39E9E9E9C9C9C9C9A9A9999949492928F8C87817C797472716C6C6A645F5D55
-556C7C87929CA4A4A6A6A6A6A9A9A6A6A4A4A39E9C9A94928F89847F7C7C7674726C6A6A6764615F
-5D5F616C7274797F7F818485878787898989898C8C8989878785817F7F7C7C79767674726C6C6A6A
-6A6A6A6A6A6A6A6C6E72727474797C7F8487878789898C8E8E8E8E8E8E8E8E8E8E8E8E8E89898989
-8989878787858587878785848481817F7F7F818181817F8181848481818184858585858787878989
-8989898C8E8F8F929292929292929294929292928F8E8989898C8E8E8E8E8E8E8C8987857F7C7C7F
-818787898989898989898C8E8E8F9292929292929292929292929292929292929292929292929292
-9292929292929292928F8E8C898989878585847F7F7F7F7F7F7F7F817F8994949CA3A6A19A928987
-7C7C7C7B7C7C7F7F7F818789898E8F92929292929292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292928F8F92928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8F8E8E8E8E8E8E8E8F8F8F928F8E8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8C89898989898989898989898989898989898989898989898787878585858585
-85858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7CFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898785
-8584817F7F7C7C797674747676767C7C7F7F8185878989898E8F9292929494999A9A9A9C9C9C9E9E
-A1A4A6A6A6A9A9AEAEB1B1B1B3B6B9B9BBC0C1C1C4C6C6C8C9CCCCCFCFCFCFD1D3D3D4D4D4D7D9D9
-D9D9D9D9D9D9DCDCDCDCDCDCDCDCDCDCDCDCDCDCDCDCD9D9D9D9D9D9D9D4D4D4D3D3D3D1CFCFCFCF
-CFCFCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B7B6B3B3B3B3B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEB1B1B1AEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6
-A4A4A4A4A4A4A4A4A39E9E9E9E9C9C9C9C9A9A9994949492928E89847F7C7474726E6C6A67615F59
-555C747F89949EA4A6A6A6A6A6A9A6A6A4A4A39E9E9C9994928987817F7C7674726E6C6A6A676161
-5F5F61676E72767C7F818184848587878989898C8C898987878584817F7C7C7C79767472726C6C6C
-6C6C6C6C6C6C6C6C6E72727274767C7F818587878989898E8E8E8E8E8E8F8F8E8E8E8E8E8C898989
-89898987878787858585858584817F7F7F7F7F7F817F7F7F7F8181817F8181848585858787898989
-89898C8E8E8F929292929494949494949492928F8E8C89898C8E8E8E8E8E8E8E898787817C7C7F81
-8587898989898989898C8E8E8E8F9292929292929292929292929292929292929292929292929292
-92929292929292928F8E8C898989878785847F7F7F7F7F7F7F7F7F7F849C9C9C9EA6A6A39C948987
-817F7C7C7C7C7F7F81818587898C8E8F929292929292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8F8F8F8E8E8E8E8E8F8F8F9292928F8E8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898989898989898987878785858585
-8585858585858585858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989878585
-85817F7F7F7C7C767674767676797C7C7F7F84878989898C8E929292929494999A9A9A9C9C9E9E9E
-A4A4A6A6A9A9ABAEAEB1B1B3B6B7B9B9BBC0C1C1C6C6C6C8C9CCCCCCCFCFCFD1D1D3D4D4D4D4D9D9
-D9D9D9D9D9D9D9DCDCDCDCDCDCDCDCDCDCD9D9D9D9D9D9D9D9D9D4D4D4D4D4D3D3D3D1CFCFCFCFCF
-CFCCCCCCC8C8C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEB1AEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6
-A6A4A4A4A4A4A4A4A39E9E9E9E9C9C9C9C9A9A9999949492928E8987817C767472726E6C6A64615F
-57516176818E99A1A4A6A6A6A6A6A6A6A6A4A49E9E9C9A94928E87847F7C7C7674726C6C6A6A6761
-615F61666A7174767C7F7F8181848487878989898C898987878784817F7F7C7C7C76767472726C6C
-6C6C6C6C6C6C6C6C7172727274767C7F7F8587878989898C8E8E8E8E8F8F8F8F8F8E8E8E8E8C8989
-89898989878787878785858584817F7F7F7F7F7F7F7F7F7F7F7F817F7F7F7F818484858787878989
-898C8E8E8F929292929494949494949492928F8E8E8C898C8E8E8E8E8E8E8E8C8987847F7C7C7F84
-8787898989898989898C8E8E8F929292929292929292929292929292929292929292929292929292
-929292929292928F8E8C898989898785847F7F7F7F7F7F7F7F7F7F819AA4A4A4A4A9A6A49E948E89
-87817F7C7F7F7F7F8181848789898E8F8F9292929292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8F8F8F8F8E8E8E8E8F8F8F929292928F8F8F8F928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898989898989898989878787858585
-858585858585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8987858585
-847F7F7F7C7C767674767676767C7C7F7F8185878989898E8F9292929294969A9A9A9A9C9C9E9EA3
-A4A6A6A6A9A9AEAEAEB1B1B3B6B7B9B9BBC0C1C1C6C6C6C8C8CCCCCCCFCFCFCFD1D3D3D4D4D4D9D9
-D9D9D9D9D9D9D9DCDCDCDCDCD9D9D9D9D9D9D9D9D9D9D9D9D9D4D4D4D4D4D4D3D3D1CFCFCFCFCFCF
-CFCCCCCCC8C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B1B1B1B3B3B1B1B1B1B1B1B1B1B1AEB1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A9A6A6A6A6A6A6
-A6A4A4A4A4A4A4A4A49E9E9E9E9E9C9C9C9A9A9A99969494928F8C87847F7C767472726C6A676161
-5C574F6A7C87929AA4A4A4A4A4A6A6A6A6A4A4A19E9C9A94928F8987817F7C7674726E6C6C6A6767
-61616161676C7274767C7F7F7F8181848789898989898989878784817F7F7F7C7C7976747472726C
-6C6C6C6C6C6C6C6C7172727474767C7F7F8487878789898C8E8E8E8F8F929292928F8F8F8E8E8C8C
-898989898989878787878785858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181848587878989
-898E8E8F8F9292929294949494949492928F8E8E8E8E8C8E8E8E8E8E8E8E8E8987847F7C7C7F8185
-878989878789898989898C8E8E8F9292929292929292929292929292929292929292929292929292
-92929292928F8F8E8E898989898787847F7F7F7F7F7F7F7F7F7C879AA6A4A6A6A6ABA6A49E9A9289
-8784817F7F7F7F7F8184848787898E8E8F9292929292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8F8E8E8E8E8E8E8E
-8F8F8F928F8F8E8E8E8F8F9292929292928F8F8F928F8E8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989878787878585
-85858585858585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8785858584
-7F7F7F7C7C7C7676767676767C7C7C7F7F84878789898C8E929292929494999A9A9A9A9C9C9E9EA4
-A4A6A6A6A9ABAEAEB1B1B1B3B6B9B9BBBBC0C1C4C6C6C6C8C8CCCCCCCFCFCFCFD1D3D3D4D4D4D7D9
-D9D9D9D9D9D9D9DCDCD9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D7D4D4D4D4D4D4D3D3D1CFCFCFCFCFCF
-CFCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B1B1B1B1B3B1B1B1B1B1B1B1B1B1AEAEB1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6
-A6A4A4A4A4A4A4A4A4A19E9E9E9E9C9C9C9A9A9A9A999494928F8C89877F7C79747472716C6A6761
-5F595457727F89929CA4A4A3A3A4A4A6A6A4A4A19E9E9C9994928C87847F7C7C7674726E6C6C6A6A
-67646161666A6C7274797C7F7F7F81818587898989898989878784817F7F7F7C7C7C797674747272
-6E6C6C6C6C6C6C6C7172747474767C7F7F818587878989898E8E8E8F929292929292929292928F8E
-8E8E8E8E8C898989898989878787878784817F7F7F817F7C7C7F7F7F7F7F7F7F7F81818487878989
-898C8F8F9292929294949494949492928F8E8E8E8E8E8E8E8E8E8E8E8E8E8C89857F7C7C7F7F8487
-878987878789898989898E8E8E8F8F92929292929292929292929292929292929292929292929292
-92929292928E8E8E8C8989898787847F7F7F7F7F7F7F7F7F7C8794A3A6A4A6ABAEAEA6A49E9C928E
-898784817F8181818184848587898E8E8F8F92929292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292928F8F8E8E8E8E8E8F8F8F8E8E8E8E8E8E
-8F8F9292928F8E8E8F8F8F929292929292928F9292928F8E8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989898989898989898787878585
-85858585858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF858585847F
-7F7F7C7C7C767676767676767C7C7F7F8185878989898E8F929292929494999A9A9A9C9C9E9EA1A4
-A4A6A6A9A9ABAEAEB1B1B1B3B6B9B9BBBBC0C1C4C6C6C6C8C8C9CCCCCFCFCFCFD1D3D3D4D4D4D4D7
-D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D4D4D4D4D4D4D3D3D1CFCFCFCFCCCCCC
-CCCCCCC9C8C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEB1AEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6
-A6A4A4A4A4A4A4A4A3A19E9E9E9E9E9C9C9A9A9A9A99949492928E8987847F7C767472726C6A6766
-615F574F5C747F89949CA19E9EA1A4A4A6A4A4A19E9E9C9A94928F8987817F7C797472726E6C6A6A
-6A67666461676A6C72747C7C7F7F7F7F818787878989898987878584817F7F7F7C7C797676747472
-726E6E6E6E6E71717172747476767C7F7F818587878989898E8E8F92929292929292929292929292
-8F8F8F8F8F8E8C8989898989878787878785818181817F7F7C7C7F7F7F7C7C7F7F7F7F8184878789
-898C8E8F92929294949494949292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8C8987817F7C7C7F818787
-8987878789898989898C8E8E8E8F9292929292929292929292929292929292929292929292929292
-929292928F8E8E8E8989898787847F7F7F7F7F7F7F7F7C7C84929CA9A9A6A6ABAEAEA6A49E9C9492
-89878784818184848184858787898E8E8E8F92929292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949492929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292928F8E8E8E8E8E8F8F8F8F8E8E8E8E8F
-8F8F929292928F8F8F8F9292929292929292929292928F8F8F8F928F8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989898989898989898989898987878785
-8585858585858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585847F7F
-7F7C7C7C767674767676767C7C7C7F7F85858789898E8E8F9292929294949A9A9A9A9C9C9E9EA3A4
-A4A6A6A9A9AEAEAEB1B1B3B6B7B9B9BBBBC0C1C4C6C6C6C6C8C9CCCCCCCFCFCFD1D1D3D4D4D4D4D4
-D7D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D4D4D4D4D4D4D4D3D1CFCFCFCFCCCCCCCC
-CCCCCCC8C8C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6
-A6A4A4A4A4A4A4A4A3A19E9E9E9E9E9C9C9A9A9A9A9A949494928F8989877F7C79747472716C6A67
-665F5C554F6179848C949C9E9E9EA1A4A4A4A4A39E9E9C9C9994928987847F7C7C767472726C6C6A
-6A6A6A6766666A6C7174767C7C7F7F7F7F848787878789898787858481817F7F7C7C7C7976747474
-72727171717171727272747476767C7F7F818587878789898E8F8F92929292949292929294949292
-9292929292928F8E8E8E8E8C89898989898787848484847F7F7C7F7F7F7C7C7C7F7F7F7F81858789
-89898E8F929292949494949292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8C8987817F7C7C7F7F848787
-87858787898989898C8E8E8E8E8F9292929292929292929292929292929292929292929292929292
-929292928E8E8E8C89898787847F7F7C7C7F7F7F7F7C7C7C929CA6AEA9A6A9ABAEAEA9A49E9C9992
-8E878787848585858585878787898C8E8E8E8F929292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292928F8E8E8E8F8F8F928F8E8E8E8F8F
-8F92929292928F8F8F92929292929292929292929292928F8F8F928F8F8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898989898989898989878787
-858585858585858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8584817F7F
-7C7C7C76767676767676797C7C7F7F84858789898C8E8E929292929494999A9A9A9C9C9C9E9EA3A4
-A6A6A6A9ABAEAEAEB1B1B3B6B7B9B9BBBBC0C1C4C6C6C6C6C8C8CCCCCCCFCFCFCFD1D3D3D4D4D4D4
-D4D7D7D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D7D4D4D4D4D4D4D3D1D1CFCFCFCFCCCCCCCC
-CCCCC9C8C6C6C6C6C4C4C4C4C4C1C1C1C1C1C1C1C0C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1B3B3B1B1B1B1B1B1B1B1B1AEB1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6
-A6A4A4A4A4A4A4A3A39E9E9E9E9E9E9C9C9A9A9A9A9A969494928F8C8987847F7C767472726E6A6A
-67615F5951516A7C878F949C9C9C9E9EA4A4A4A39E9E9C9C9A94928E8987817F7C79747472726C6C
-6C6C6A6A6766676A6C7274767B7C7C7F7F818587878787898787858584817F7F7F7C7C7979767674
-747272727272727272727474767C7C7F7F818787878789898E8F9292929294949494929494949494
-929292929292928F8F8F8F8E8E8989898989878787878784817F7F7F7F7F7C7C7F7F7F7F7F818487
-89898C8E8E8E8F92929292928F928E8E8E8E8E8E8E8E8E8E8E8E8E8C8989847F7C7C7F7F81878787
-85878789898989898C8E8E8E8F929292929292929292929292929292929292929292929292929292
-9292928F8E8E8C89898787847F7F7C7C7F7F7F7C7C7C7C899AA4AEB1AEA6A9AEAEAEA9A49E9C9994
-8F898987878787878787878787898C8E8E8E8F929292929292929292929292929292929292929292
-92929292949494949494949494949494949494949494949494949494949494949494949494949494
-94949494929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292928F8F8E8F8F8F92928F8F8E8E8F8F
-929292929292928F8F9292929292929292929292929292928F9292928F8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989898787
-87858585858585858585858585858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF85817F7F7F
-7C7C79767676767676767C7C7C7F8185858789898E8E8F929292949494999A9A9C9C9C9C9E9EA4A4
-A6A6A9A9ABAEAEB1B1B1B3B6B9B9B9BBBBC0C1C4C6C6C6C6C8C8CCCCCCCFCFCFCFD1D3D3D3D3D4D4
-D4D4D4D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D7D4D4D4D4D4D4D4D4D3D3D1CFCFCFCFCFCCCCCCCC
-CCCCC9C8C6C6C6C6C4C1C1C4C4C1C1C1C0C0C0C1C0C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1B1B3B1B1B1B1B1B1B1B1B1AEAEB1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6
-A6A4A4A4A4A4A4A3A19E9E9E9E9E9E9C9C9C9A9A9A9A99949492928E8989877F7C79747472716C6A
-6A66615D575157727C878F949C9C9C9E9EA3A4A39E9E9C9C9A94928F8987817F7C7C76747472726C
-6C6C6C6C6A67666A6A6C7274767C7C7C7F7F818587878787878787858481817F7F7C7C7C7C797676
-747472727272727272727476767C7C7F7F848787878989898E929292929294949494949494949494
-949494949292929292928F8F8E8E8C8989898989878787878581817F7F7F7F7C7F7F7F7F7F7F8184
-8789898C8C898C8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989877F7C7C7C7F7F84878785
-8587878989898989898C8E8F8F929292929292929292929292929292929292929494949292929292
-9292928F8E8C89898787847F7C7C7C7F7F7F7C7B7979819AA4AEB7B1AEA9A9AEAEAEA9A6A19C9A94
-928C898987878787878787878789898E8E8E8F929292929292929292929292929292929292929292
-92929292949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292928F8E8F8F929292928F8E8F8F8F
-92929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989898989898989898787
-8787858585858585858585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF847F7F7F7C
-7C79767676767676767C7C7C7F7F84858789898C8E8E8F929294949494999A9C9C9C9C9E9EA1A4A4
-A6A6A9A9ABAEAEB1B1B1B3B6B9B9B9BBBBC0C1C4C6C6C6C6C8C8C9CCCCCFCFCFCFD1D3D3D3D3D3D4
-D4D4D4D7D9D9D9D9D9D9D9D9D9D9D9D9D9D9D4D4D4D4D4D4D3D3D3D3D3D1CFCFCFCFCFCFCCCCCCCC
-CCCCC9C8C6C6C6C6C4C1C1C1C1C1C1C1C0C0C0C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9
-B9B9B7B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6
-A6A6A4A4A4A4A4A39E9E9E9E9E9E9E9C9C9C9A9A9A9A99949492928E8C8987847F7C767472726E6C
-6A67615F5C554F5F747F898F949A9C9C9E9EA3A39E9E9C9C9C9994928C8985817F7C797474747272
-6C6E6E6C6C6A67676A6A6C7274767C7C7F7F7F8184858787878787858584817F7F7F7C7C7C7C7976
-767474727272727272727476767C7C7F7F848787898989898E929292929494949494949494949494
-9494949494949292929292928F8F8E8C8C8989898987878787858481817F7F7F7F7F7F7F7F7F7F7F
-81878789898989898989898989898C8E8E8E8E8E8E8E8E8E8E8C898987817F7C7C7F7F8185858585
-878789898989898989898C8E8F8F9292929292929292929292929292929494949494949292929292
-92928F8E8989898787847F7C7C7C7C7C7C7C7976767692A4ABB4B9B1AEABA9AEAEABA9A6A39C9A94
-928E898989898989878787878989898E8E8E8E929292929292929292929292929292929292929292
-92929292949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292928F8F8F8F92929292928F8F8F92
-92929292929292929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989898989898989898989898987
-878785858585858585858585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF817F7F7F7C
-7C76767676767676767C7C7F7F8185878789898E8E8E929292949494969A9C9C9C9C9E9E9EA3A4A4
-A6A6A9ABAEAEAEB1B1B3B6B7B9B9BBBBBBC0C1C1C6C6C6C6C6C8C9CCCCCCCFCFCFD1D1D3D3D3D3D3
-D4D4D4D4D9D9D9D9D9D9D9D9D9D9D9D9D9D4D4D4D4D4D4D3D3D3D3D3D1CFCFCFCFCFCFCCCCCCC9C9
-C9C9C8C8C6C6C6C6C1C1C1C1C1C1C1C1C0C0C0C0C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9
-B9B7B7B7B7B9B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6
-A6A6A4A4A4A4A4A19E9E9E9E9E9E9E9C9C9C9A9A9A9A99949492928F8E8989877F7C79747472716C
-6C6A66615F57555566747F878E949A9C9C9E9EA3A19E9E9C9C9A94928E8987847F7F7C7674747472
-727171716C6C6A6A6A6A6C717474767C7C7F7F818184848587878785858584817F7F7F7C7C7C7C79
-767674747472727474747476797C7C7F81848787898989898E929292949494949494949494949494
-949494949494949292929292928F8E8E8E8C8989898987878787858481817F7F7F7F7F7F7F7F7F7F
-7F81848787878787878787898989898C8E8E8E8E8E8E8E8E8C898987847F7C7C7F7F7F8484858585
-878989898989898989898C8E8E8F9292929292929292929292929494949494949494949492929292
-92928F8989898787847F7C7C7C7C7C7C7C767676768EA1A9B4BCB9B1B1AEA9ABABABA9A6A39C9A99
-94928E8C89898989898787898989898E8E8E8E8F9292929292929292929292929292929292929292
-92929292949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949492929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292928F8F9292929292928F8F9292
-9292929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898989898989898989
-87878785858585858585858585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F7C7C
-76767676767676767C7C7C7F7F8585878989898E8E8F929294949494999A9C9C9C9E9E9E9EA3A4A6
-A6A6A9ABAEAEAEB1B1B3B6B7B9B9BBBBBBC0C1C1C4C6C6C6C6C8C9CCCCCCCFCFCFCFD1D3D1D1D1D3
-D3D4D4D4D4D9D7D4D4D4D9D9D9D9D9D9D4D4D4D4D4D3D3D3D3D3D3D3D1CFCFCFCFCFCFCCCCCCC8C8
-C8C8C8C6C6C6C6C4C1C1C1C1C1C1C1C0C0BEBEBEC0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9
-B9B7B6B6B7B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B3
-B3B1B1B1B1B1B1B1B1B1AEAEB1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABA9A9A9A9A6A6A6A6A6A6A6A6A6
-A6A6A4A4A4A4A4A19E9E9E9E9E9E9E9E9C9C9A9A9A9A9994949492928F8C8987847F7C767472726E
-6C6A6A615F5F5755576A767F878F949A9C9C9E9EA19E9E9C9C9A94928E898785817F7C7976747474
-72727272716C6C6A6A6A6A6C717474797C7C7F7F7F7F818485878785858584817F7F7F7C7F7C7C7C
-797676747474747474747476797C7C7F818487878989898C8E929292949494949494949494949494
-949494949494949492929292928F8E8E8E8E8C898989898987878787848481817F7F7F7F7F7F7F7F
-7F7F7F7F81848587878787898989898E8E8E8E8E8E8E8E8C898987877F7C7C7C7F7F818184858587
-87898989898989898989898C8E8F9292929292929494949494949494949494949494949494929292
-928F8989898787847F7C7C7C7C79797976767676899CABAEB7C1BCB1B1AEA9ABABABA9A6A49E9C99
-94928F8E8C8989898989898989898C8E8E8E8E8F9292929292929292929292929292929292929292
-92929292949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949492929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292929292928F8E8E8E8F8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989
-8987878785858585858585858585858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7C7C7C
-76767676767676797C7C7F7F8485878989898C8E8F92929294949494999A9C9C9E9E9E9EA1A4A4A6
-A6A9A9ABAEAEB1B1B1B3B6B9B9B9BBBBBEC0C1C1C4C6C6C6C6C8C8CCCCCCCFCFCFCFD1D1D1D1D1D3
-D3D4D4D4D4D4D4D4D4D4D4D9D7D7D4D4D4D4D3D3D3D3D3D1D1D1D1D1CFCFCFCFCFCFCFCCCCC9C8C8
-C8C8C8C6C6C6C6C4C1C1C1C1C1C1C1C0BEBEBEBEBEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9
-B9B6B6B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1
-B3B1B1B1B1B1B1B1B1AEAEAEAEB1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6
-A6A4A4A4A4A4A4A19E9E9E9E9E9E9E9E9C9C9A9A9A9A9994949492928F8E8989877F7C7976747271
-6C6C6A67615F5D57555C6A7C818992999A9C9C9C9E9E9E9C9C9A96928F8C8987847F7F7C76767474
-7472727272716C6C6A6A6A6A6C727476797C7C7F7F7F7F8184848585858584817F7F7F7F7F7F7C7C
-7C7B76767474747474747476797C7C7F818487878989898C8E8F9292949494949494949494949494
-94949494949494949292929292928E8E8E8E8C89898989898987878787858481817F7F7F7F7F7F7F
-7F7F7F7F7F8181848787878789898C8E8E8E8E8E8E8E8E89898787817C7C7C7F7F7F818185858787
-878789898989898989898E8F8F929292949494949494949494949494949494949494949492929292
-8F8C89878787817F7C7C7C7976767676767676879AA9B4B7BEC6BEB3B1AEABA9A9ABA6A6A49E9C9A
-9694928F8E8C89898989898989898C8E8E8E8E8F9292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494929292949292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292929292928F8F8E8E8F8F8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989898989898989
-8989878785858585858585858585858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7C7C76
-767676767676767C7C7C7F818585878989898E8F92929294949494969A9A9C9C9E9E9E9EA3A4A4A6
-A6A9A9ABAEAEB1B1B3B3B6B9B9B9BBBBBEC0C1C1C4C6C6C6C6C8C8C9CCCCCFCFCFCFD1D1D1CFD1D3
-D3D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D1D1D1D1D1D1D1D1CFCFCFCCCCCCCCCCCCCCC8C8C8
-C8C8C8C6C6C6C6C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBB9B9B9BBB9B9B9B9B9B9B9B9B9B9B9B9
-B7B6B3B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1
-B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6
-A6A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9494949292928F8C8987847F7C76747272
-6E6C6A6A64615F5C57555F717C818992999A9A9C9C9E9E9C9C9A9994928E898785817F7C79767674
-747472727272726C6C6A6A6A6A6C7274767C7C7C7C7C7F7F81818485858484817F7F7F7F7F7F7F7F
-7C7C79767674747474747476797C7C7F8185878789898C8E8F8F9292929494949494949494949494
-949492929294949492929292928F8F8E8E8E8E898989898989898787878785848481817F7F7F8181
-7F7F7F7F818184848787878989898E8E8E8E8E8E8E8E8C898787817C7C7C7F7F7F7F7F8485858787
-87878989898989898C8E929292929292949494949494949494949494949494949494949492929292
-8E89878785817F7C7C7C76767674767674746694A4B4BCBEC4C6BEB3B1AEABA9A9A9A6A6A49E9C9A
-999492928F8E8C8989898989898C8E8E8E8E8E8F9292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494929292949492929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292928F8E8F8F8F8F8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898989898989
-898987878585858585858585858585858585858585858585858584817F7F7F817F7F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7C7C7976
-7676767676767C7C7C7F7F8585878989898C8E8F92929294949494999A9C9C9E9E9E9E9EA3A4A4A6
-A6A9ABAEAEAEB1B1B3B6B7B9B9BBBBBBC0C1C1C1C1C6C6C6C6C6C8C9CCCCCCCFCFCFCFCFCFCFD1D1
-D3D3D3D3D4D4D4D3D3D4D4D4D4D4D4D4D4D3D1D1D1D1D1D1D1D1CFCFCFCFCCCCCCCCCCCCC9C8C6C6
-C6C8C6C6C6C6C4C1C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9
-B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1
-B1B1B1B1AEB1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6
-A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9694949492928F8E898987817C79767472
-716C6C6A6761615F5C575761727C848992949A9A9C9C9E9C9C9A9994928E898787847F7F7C7B7976
-74747472727272726E6C6A6A6A6A6E72747679797C7C7C7C7F81818484848481817F7F7F7F7F7F7F
-7C7C7C797674747474747476797C7F7F81878789898C8E8F92929292929494949494949494949494
-9494929292929492929292928F8F8E8E8E8E8E8C898989898989898987878787858481817F818181
-81817F818184858787878989898C8E8E8E8E8E8E8E8E898987857F7C7C7C7F7F7F7F818484858587
-878989898989898E8F9292929292929494949494949494949494949494949494949494929292928E
-89878785817F7C7C7B76767474767674747692A1B1C1C4C6CCCBBEB6B1AEABA9A9A9A6A6A4A19C9C
-9A949292928E8E8C898989898C8E8E8E8E8E8E8F9292929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949294949492929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292928F8F8F928F8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898989898989
-89898787878585858585858585858585858585858585858585858584817F8181817F7F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7676
-7676767676797C7C7F7F818585878989898E8F9292929294949494999A9C9C9E9E9E9E9EA4A4A6A6
-A6A9ABAEAEB1B1B1B3B6B7B9B9BBBBBBC0C1C1C1C1C4C6C6C6C6C8C9CCCCCCCFCFCFCFCFCFCFCFD1
-D3D3D3D3D3D3D3D3D3D3D4D4D4D4D4D4D3D3D1CFCFCFCFCFCFCFCFCFCFCCCCCCCCCCCCC9C8C6C6C6
-C6C6C6C6C6C4C4C1C1C1C0C0C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B9B9B9
-B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B3B3B3B1B1B1B1B1
-B1B1B1B1AEAEB1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6
-A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9C9A9A9A9A999494949292928F8C8987847F7C767472
-726E6C6A6A66615F5F59555967747F878C9494999A9C9C9C9C9A9994928F89898785817F7C7C7C79
-767674747474747272716C6C6A6A6C72727474767679797C7C7F7F8181848181817F7F7F7F7F7F7F
-7F7C7C797676747474767676797C7F7F81878989898E8F9292929292929494949494949494949494
-94929292929292929292928F8F8E8E8C898C8E8C8989898989898989898787878785848481818484
-8484818184858787878989898C8E8E8E8E8E8E8E8E8C8987877F7C7C7C7F7F7F7F81818181848587
-87898989898C8E8F92929292929294949494949494949494949494949494949494949492928F8F89
-898787817F7C7C79767674747474747476899CACBCC8CCCFD1CCC1B7B1AEAEA9A9A9A6A4A4A39E9C
-9A999492928F8F8E8C8C898C8E8E8E8F8E8E8E8E9292929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292928F8F9292928F8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989
-898989878785858585858585858585858585858585858585858585858481818184817F7F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C767676
-76767676797C7C7C7F7F8485878789898C8E9292929294949494999A9A9C9C9E9E9E9EA1A4A4A6A6
-A9A9ABAEAEB1B1B1B3B6B9B9B9BBBBBEC0C1C1C1C1C4C6C6C6C6C8C8CCCCCCCCCFCFCFCFCFCFCFD1
-D3D3D3D3D3D3D1D1D3D3D4D4D4D4D4D3D3D1CFCFCFCFCFCFCFCFCFCFCCCCCCCCCCCCCCC8C8C6C6C6
-C6C6C6C6C6C1C1C1C1C1C0C0C0C0C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B7B7B7B7
-B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B3B1B1B1B1B1
-B1B1B1AEAEAEAEB1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6
-A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9C9A9A9A9A99949494949292928E898987817F7B7674
-72726C6C6A6766615F5D57575D6A767F878E9494999A9C9C9C9A9994928F8C898987847F7F7C7C7C
-79767674747474747272716C6C6C6C6C72727474747676767C7C7F7F81818181817F7F7F7F7F7F7F
-7F7C7C7C7976747676767676797C7F7F818789898C8E8F9292949492929494949494949494949494
-929292929292929292928F8F8E8E8C8989898C8E8989898989898989898987878787878584848485
-8787858485878787878989898E8E8E8E8E8E8E8E8C898987817C7C7C7F7F7F7F7F81818181848787
-878989898C8F8F92929294949494949494949494949494949494949494949494949492928F8E8989
-878784817C7C79767674747474747476879AA9B9C8D1D4D4D4CCC4B9B1AEAEA9A9A9A6A4A4A39E9C
-9A999494928F8F8F8E8C8C8C8E8E8E8F8F8E8E8E8F92929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292928F8F
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989898989
-89898987878585858585858585858585858585858585858585858585858481848484817F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C79767676
-767676767C7C7C7F7F818585878989898E8F9292929294949499999A9C9C9E9E9E9E9EA3A4A4A6A6
-A9A9AEAEAEB1B1B3B3B7B9B9B9BBBBBEC0C0C1C1C1C4C6C6C6C6C8C8C9CCCCCCCCCFCFCFCFCFCFD1
-D3D1D1D1D1D1D1D1D1D3D3D3D3D3D3D3D1CFCFCFCFCFCFCFCFCFCFCFCCCCCCCCCCCCC8C8C6C6C6C6
-C6C6C6C6C1C1C1C1C1C1C0C0C0C0C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B6B7
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1
-B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A4
-A4A4A4A4A4A4A4A49E9E9E9E9E9E9E9E9C9C9C9A9A9A9A99949494949292928F898987847F7C7674
-7272716C6C6A6766615F5D57575F6C767F878F9494999A9C9C9A999492928E89898787817F7F7C7C
-7C79767674747474727272716C6C6C6C7171727274747476767C7C7F7F7F81817F7F7F7F7F7F7F7F
-7F7F7C7C7C76767676767676797C7C7F8187898C8E8E8F9294949494949494949494929294949492
-929292928F8F9292928F8F8E8E8C89898989898C8989898989898989898989898787878787858587
-87878787878787878989898C8E8E8E8E8E8E8E8C898987817F7C7C7F7F7F7F7F7F7F7F7F81858787
-8787898E8F929292929494949494949494949494949494949494949494949494949492928F8C8989
-8787817C7C797674747474747476767F94A6B7C4D4D4D4D4D3CCC4B9B1B1AEA9A9A6A6A4A4A39E9C
-9C9A94949292928F8F8E8E8E8E8E8F8F8F8E8E8E8F92929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292929292929292928F
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898989
-89898987878585858585858585858585858585858585858585858585858584848584817F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C76767676
-7676767C7C7C7F7F7F8485878789898E8E8F92929292949494999A9A9C9C9E9E9E9E9EA3A4A6A6A6
-A9ABAEAEAEB1B1B3B6B7B9B9BBBBBBBBC0C0C1C1C1C1C6C6C6C6C6C8C9CCCCCCCCCCCFCFCFCFCFD1
-D1D1D1D1D1CFCFCFCFD1D3D3D3D1D1D1D1CFCFCFCFCFCFCFCFCFCFCCCCC9C9C9C9C9C8C6C6C6C6C6
-C6C6C6C4C1C1C1C1C1C0C0BEBEBEC0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B6B6B6B6B6
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1AEB1
-B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEABAEAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A4
-A4A4A4A4A4A4A4A4A19E9E9E9E9E9E9E9E9C9C9A9A9A9A99949494949492928F8C898987817F7C76
-7472726C6C6A6A6761615F5D575C6172798189929494999A9A9A999492928F8989898784817F7F7C
-7C7C79767674747474727272726C6C6C6C6E6E717272747474767C7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7C7C79767676767676767C7C7F818789898E8F8F9294949494949494949492929292929492
-9292928F8F8F8F92928F8E8E8C898989898989898989898989898989898989898989878787878787
-87878787878787898989898C8E8E8E8E8E8C89898987847F7C7C7C7F7F7F7F7F7F7F7F8184878787
-87898E92929292929294949494949494949494949494949494949494949494949492928F8C898987
-87847F7C797474727274747676767C92A4AEBCCCD4D3D3D3D1CCC4B9B1B1AEA9A9A6A6A4A4A39E9E
-9C9A9994949292928F8F8E8E8E8F8F8F928F8E8E8F92929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989
-89898987878785858585858585858585858585858585858585858585858585858584817F7F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7676767676
-7679797C7C7C7F7F8185858789898C8E8E92929292949494999A9A9A9C9C9E9E9E9EA1A4A4A6A6A6
-A9ABAEAEB1B1B1B3B6B7B9B9BBBBBBBBBEC0C1C1C1C1C4C6C6C6C6C8C9CCCCCCCCCCCCCFCFCFCFCF
-D1D1CFCFCFCFCFCFCFCFD1D1D1D1CFCFCFCFCFCFCFCFCFCFCFCFCCCCCCC8C8C8C8C8C6C6C6C6C6C6
-C6C6C4C1C1C1C1C1C1C0BEBEBEBEBEBBBBBBB9BBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B6B6
-B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B3B3B3B3B1B1B1B1B1B1B1B1B1AEAE
-B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEACABABAEAEAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A4A4A19E9E9E9E9E9E9E9E9C9C9A9A9A9A9994949494949292928E898987847F7C79
-747472716C6C6A676661615F5C575D67747C818992949499999A969492928F8C89898787817F7F7F
-7C7C7C79767674747474727272726E6E6E6C6C6C717274747474767C7C7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7C7C7C79767679767676797C7F818787898C8F929294949494949494949492929292929292
-9292928F8E8E8E8F8F8F8E8E89898989898989898989898989898989898989898989898987878787
-8789898987878989898989898C8E8C8C8989898987857F7C7C7C7F7F7F7F7F7F7F7F7F8485858787
-898E9292929292929494949494949494949494949494949494949494949494949292928E89898787
-847F7C79747272727474767679748E9EAEB4C1CCD4D1D1D1CFCCC1B9B3B1AEA9A9A6A6A6A4A39E9E
-9C9A999494929292928F8F8E8E8F8F92928F8E8E8F92929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949492929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989
-8989898987878785858585858585858585858585858585858585858585858585858584817F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7976767676
-79767C7C7C7F7F7F8485858789898E8E8F929292949494999A9A9A9C9C9C9E9E9EA1A3A4A4A6A6A9
-A9ABAEAEB1B1B1B3B6B9B9B9B9BBBBBBBEC0C1C1C1C1C4C6C6C6C6C8C8CCC9C9C9CCCCCCCFCFCFCF
-CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCCCCCCC8C8C8C8C8C8C6C6C6C6C6C6
-C6C4C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B3B3B1B1B1B1B1B1B1B1AEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEABABABABAEABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9A9A9A9A9A96949494949492928E89898987817F7C
-767472726C6C6A6A676661615F5C595F6A747C858C929494949696949292928E8989898785817F7F
-7F7C7C7C7C797676747474747472727171716C6C6C727274747474767C7C7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7C7C7C797979767676797C7F7F848789898E929292929494949494949292929292929292
-929292928F8E8E8E8E8E8E8E8C898989898989898989898787898989898989898989898989898787
-8989898989898989898989898C89898989898787877F7C7C7C7F7F7F7F7F7F7F7F7F818585878789
-8E8F92929494949494949494949494949494949494949494949494949492929292928E8989878784
-7F7C7974726C74747476797C7C899CACB7B7C4D1D4CFCFCFCFCCC1B9B3B1AEABA9A6A6A6A4A49E9E
-9C9C9A969492929292928F8F8F8F8F9292928F8E8F92929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989
-8989898987878787858585858585858585858585858585858585858585858585858584817F7F7F7F
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7676767679
-7C7C7C7C7F7F7F8185858789898C8E8E8F9292949494949A9A9A9A9C9C9E9E9EA1A3A4A4A4A6A6A9
-A9AEAEAEB1B1B3B3B7B9B9B9B9BBBBBBBEC0C0C1C1C1C4C6C6C6C6C8C8C9C8C8C8C9CCCCCCCFCFCF
-CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCCCCC9C8C8C8C8C8C6C6C6C6C6C6C6
-C6C1C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B7B7B9B9B9B6B6B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEABABABABABABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9A9A9A9A9A99949494949492928F8C898987857F7C
-79767472716C6C6A6A6761615F5F5C5C5F6C747F878F9292949494949492928F8C8989878784817F
-7F7F7F7C7C7C7976767474747474727272726E6C6C6E727274747474767C7C7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7C7C79797C797676797C7C7F818787898C8F9292929292949494929292929294929292
-929292928F8F8F8E8E8E8E8E8C898989898989898989878787878989898989898989898989898989
-89898989898989898989898C8C898989878787847F7C7C7C7C7F7F7F7F7F7F7F7F8184858787898E
-8F92929294949494949494949494949494949494949494949494949494929292928E89898787847F
-7C79746E6E747474767C7C7F819AA9B9BCBCC6D4D3CFCFCFCFC8C1B9B3B1AEABA9A6A6A6A4A4A19E
-9C9C9A99949492929292928F8F8F929292928F8E8F92929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989
-8989898989878787878585858585858585858585858585858585858585858585858584817F7F8181
-7F7F7F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7676767B7C
-797C7C7C7F7F7F8485878789898E8E8F929292949494999A9A9A9A9C9C9E9EA1A3A4A4A4A6A6A6A9
-ABAEAEAEB1B1B3B6B7B9B9B9B9BBBBBBBBBEC0C1C1C1C1C6C6C6C6C6C8C8C8C8C8C9CCCCCCCCCFCF
-CFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCFCCCCCCCCCCCCCCCCCCCCC9C8C6C6C6C6C6C6C6C6C4C4C4C4
-C4C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B7B7B7B7B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1AEB1B1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEABABABABABABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9C9A9A9A9A99949494949492928F8E89898987817F
-7C767472726E6C6A6A676661615F5F5C5F616E767F898F92929294949492928F8C89898987858181
-7F7F7F7F7C7C7C7976747474747472727272726C6C6C71727274747476797C7C7C7F7F7F7F7F7F7F
-7F7F7F7F7F7C7C7C7C7C7C7976767C7C7F7F848789898E8F92929292929294929292929494949492
-9292929292928F8F8F8E8E8E8E898989898989898989878787878787898989898989898989898989
-89898C8C8C8C8C8C8C8C8C8C898989878785847F7C7C7C7C7F7F7F7F7F7F7F7F8184878787898C8E
-8F9292949494949494949494949999999999999994949494949494949292928F8E89898787847F7C
-79746C727474767C7C7F7F7C94A7B4C4C4BECCD9D3CFCCCCCCC8C1B9B3B1AEABA9A6A6A6A4A4A19E
-9E9C9C9A9494929292929292928F92929292928F8F92929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949292929492929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898989898989
-89898989898987878787858585858585858585858585858585858585858585858585858481818181
-81817F7F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7679797C7C
-7C7C7C7F7F7F8185858789898C8E8E8F929294949494999A9A9A9A9C9C9E9EA3A4A4A4A4A6A6A9A9
-ABAEAEB1B1B1B3B6B9B9B9B9B9BBBBBBBBBEC0C1C1C1C1C4C6C6C6C6C8C8C8C6C8C8CCCCCCCCCCCF
-CFCFCFCFCFCFCFCFCFCFCFCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC8C6C6C6C6C6C6C6C6C4C4C4C4C4
-C4C1C1C1C0C0C0C0C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B6B7B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEB1B1AEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEABABABABABABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9C9A9A9A9A99949494949492928F8E89898989857F
-7C79767472716C6C6A6A676666615F5F5F5F6A727C84898F929292949492928F8E8C898989878484
-81817F7F7F7C7C7B7676747474747472727272716C6C6C71727272727476797C7C7F7F7F7F7F7F7F
-7F7F7F7F7F7F7C7C7C7C7C7C79797C7C7F7F81858789898E8F929292929292929292949494949494
-949292929292929292928F8E8E8C898989898989898987878787878787878989898989898C8C8989
-89898C8E8E8E8E8E8E8E8E898989878784817F7C7C7C7C7F7F7F7F7F7F7F7F818485878789898E8F
-9292929494949494949494949499999A9A9A9A9A999494949494949492928F8E89898787817F7C79
-746C7274767B7C7F7F7F7692A1B1C1D1CCC4CCD9D1CCCCCCC9C6BEB9B3B1AEABA9A6A6A6A4A4A19E
-9E9C9C9A9994949292929292929292929292928F8F8F929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949292929494929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989
-89898989898989878787878585858585858585858585858585858585858585858585858584818184
-8481817F7F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF797C797C7C
-7C7C7C7F7F818585878989898E8E8F92929294949494999A9A9A9C9C9E9EA1A4A4A4A4A4A6A6A9A9
-ABAEAEB1B1B1B3B6B9B9B9B9B9B9BBBBBBBEC0C0C1C1C1C4C6C6C6C6C8C6C6C6C8C8C9CCCCCCCCCC
-CFCFCFCFCFCFCFCCCCCCCCCCCCCCCCCCCCCCCCCCCCC9C9C9C9C8C8C6C6C6C6C6C6C6C4C1C1C1C1C1
-C1C1C1C1C0C0C0C0C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B6B6B6B6B6B6B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEABABABABABABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9994949494949292928E8C8989898784
-7F7C767472726E6C6A6A67666666615F5F5F616C747F85898E8F92929292928F8E8C898989878785
-8481817F7F7F7C7C797676747474747472727472716C6C6C71727272727476797C7C7F7F7F7F7F7F
-7F7F7F7F7F7F7F7C7C7C7C7C7C797C7C7F7F7F81878989898E8F9292929292929292949494949494
-9494949292929292929292928F8E8C8C8989898989898987878585878787878989898989898C8E8C
-8C8C8E8E8E8E8E8E8E8E8C8989878785817F7C7C7C7C7F7F7F7F7F7F7F7F818585878789898C8E8F
-929294949494949494949494999A9A9A9A9A9A9A999494949494949292928E8C898987817F7C7972
-6C7476797C7C7F7F81728F9CACBECED7D1CCD1D4D1CCC9C8C8C6BEB9B3B1AEABA9A9A6A6A4A4A19E
-9E9C9C9A9994949494929292929292929292928F8F92929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949492949494929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989
-89898989898989898787878785858585858585858585858585858585858585858585858585848484
-858481817F7FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7C7F7F7F848587878989898E8F92929294949494969A9A9A9A9C9C9E9EA3A4A4A4A4A6A6A6A9AB
-AEAEAEB1B1B3B6B7B9B9B9B9B9B9BBBBBBBBC0C0C1C1C1C4C6C6C6C6C6C6C6C6C6C8C9C9C9C9CCCC
-CCCFCFCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC8C8C8C8C8C6C6C6C6C6C6C6C4C1C1C1C1C1C1
-C1C1C1C0C0BEBEBEC0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B6B6B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEABABABABABABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9994949494949292928F8E8C89898987
-817F7C767472726C6C6A6A6767676461615F616771767F87898E8F92929292928E8E8C8989898787
-858481817F7F7C7C7C797674767674747474747272716C6C6C6C727272747476797C7F7F7F7F7F81
-817F7F7F7F7F7F7C7C7C7C7C7C797C7C7F7F7F81858789898C8E8F92929292929294949494949494
-94949494949292929294949292928F8E8C89898989898987878787858787878789898989898C8E8E
-8E8E8E8E8E8E8E8E8E8C8989878787847F7C7C7C7C7F7F7F7F7F7F7F7F81858585878989898E8F92
-929294949494949494949494999A9A9A9A9A9A999694949494949492928E89898987847F7C797274
-74797C7C7C7F81846C899AA6B9C8D9DFD9D4D4D4CFCCC8C6C6C6BEB9B3B1AEAEA9A9A6A6A4A4A39E
-9E9E9C9C9A9694949494929292929292929292928F92929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292928F8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989898989
-89898989898989898987878785858585858585858585858585858585858585858585858585858485
-85858481817FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7C7F7F818585878989898C8E9292929294949494999A9A9A9A9C9C9E9EA3A4A4A4A4A6A6A6A9AB
-AEAEAEB1B1B3B6B7B9B9B9B9B9BBBBBBBBBBBEC0C1C1C1C1C6C6C6C6C6C6C6C6C6C8C9C9C8C8C9CC
-CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC8C8C6C6C6C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1
-C1C1C1C0BEBEBEBEBEBBBBBBB9B9B9BBB9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAB
-AEAEAEAEABABABABABABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9994949494949492928F8E8C89898987
-847F7C79747472716C6C6A6767676661616161616A727C7F87898E8F929292928F8E8C8989898787
-878584817F7F7F7C7C797676767676747474747472726E6C6C6C6C727272747476797C7F7F7F7F81
-81817F7F7F7F7F7F7C7C7C7F7C7C7C7C7F7F7F8184878989898E8F92929292929294949494949494
-949494949494949294949494949292928F8E8C898989898987878787878787878989898989898E8E
-8E8E8E8E8E8E8E8E8C8989878785847F7C7C7C7C7F7F7F7F7F7F7F7F7F848585878789898F8F9292
-92949494949494949494949496999A999999999994949494949492928E89898987847F7C766C7476
-797C7C7C7F8185858797A4B1C4D7E6E4DFD9D9D4CFC9C6C6C6C6BEB9B3B1AEAEA9A9A9A6A4A4A39E
-9E9E9C9C9A9994949494949292929292929292929292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292928F8F8E8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989898989
-89898989898989898989878787858585858585858585858585858585858585858585858585858585
-858585848481FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7F7F81858587878989898E8F9292929294949494999A9A9A9C9C9C9EA1A4A4A4A4A4A6A6A9A9AB
-AEAEB1B1B1B3B6B9B9B9B9B9B9BBBBBBBBBBBEC0C1C1C1C1C4C6C6C6C6C6C6C6C6C8C8C8C8C8C8C9
-CCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCCC9C9C9C9C8C6C6C6C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1
-C1C1C1C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B7B7B9B9B9B6B6B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B1B1B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEB1B1AEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABAB
-ABAEAEAEABABABABABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9A99949494949492928F8F8E8C898989
-87817F7C767472726E6C6A6A6767676661616161676C747C7F87898C8E8F92928F8E8E8C89898987
-87878584817F7F7F7C7C797676767676747474747472726C6C6C6C6C7172727474767C7C7F7F7F81
-8181817F7F7F7F7F7F7C7F7F7C7C7C7F7F7F818184878789898C8F92929292929294949494949494
-94949494949494949494949494949292928E8E8C8C89898989898787878787878989898989898C8E
-8E8E8E8E8E8E8E8E8987878584817F7C7C7C7C7F7F7F7F7F7F7F7F7F818585878789898F92929292
-9294949494949494949494949499999999969494949494949492928E89898787847F7C7672747676
-7C7C7C7F8185858792A1AEBED1DFE9E6E1DCD9D4CFC8C6C6C4C1BBB9B6B1AEAEA9A9A9A6A6A4A39E
-9E9E9E9C9A9A94949494949494929292929292929292929292929292929292929292929292929292
-92929294949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949492929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292928F8F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-89898989898989898989898787878585858585858585858585858585858585858585858585858585
-858585858584FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7C7F7F848585878989898E8E9292929294949494969A9A9A9A9C9C9E9EA1A4A4A4A4A4A6A6A9A9AB
-AEAEB1B1B1B3B6B9B9B9B9B9B9BBBBBBBBBBBEC0C0C1C1C1C4C6C6C6C6C6C6C6C6C8C8C8C8C6C8C8
-C9CCCCCCCCCCCCCCCCCCC9C9C9C9C9C9C8C8C8C8C6C6C6C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1
-C1C1C0C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B7B7B7B7B7B6B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEB1AEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABAB
-ABABAEABABABABABABABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9994949494949292928F8E8C898989
-87857F7C79767472716C6C6A6A6A6A6761616161666771747C8187898C8E8F928F8E8E8E89898989
-87878784817F7F7F7C7C7C797676767674747474747472716C6C6A6C6C7172747474797C7F7F7F7F
-8184817F7F7F7F7F7F7F7F7F7F7C7C7F7F81818184878789898C8E8F929292929292949494949494
-94949494949494949494949494949494928F8F8E8E8C898989898987878787878789898989898989
-8C8E8E8E8E8E8E8989878481817F7F7F7C7C7F7F7F7F7F7F7F7F7F7F8485858789898F9292929292
-92929494949494949494949494949494949494949494949492928E89898787847F7C767476767C7C
-7C7F7F818485818F9CABB9C8D4DFE7E4DFD9D9D3CFC8C6C1C1C1BBB9B6B1B1AEA9A9A9A6A6A4A3A1
-9E9E9E9C9C9A99949494949494949292929292929292929292929292929292929292929292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949492929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292928F8F92928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989
-89898989898989898989898987878585858585858585858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7C
-7F7F848585878789898C8E8F9292929294949494999A9A9A9A9C9C9E9EA3A4A4A4A4A6A6A6A9ABAE
-AEAEB1B1B3B6B7B9B9B9B9B9B9BBBBBBBBBBBBC0C0C1C1C1C4C6C6C6C6C6C6C6C6C6C8C6C6C6C6C8
-C8C9CCCCCCCCC9C9C9C9C9C8C8C8C8C8C8C8C8C6C6C6C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C1
-C1C1C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEB1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABAB
-ABABABABABABABABABABABABABABABA9ABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9999949494949292928F8F8E8C8989
-8987847F7C767472726E6C6A6A6A6A676664616164676A72767C8189898C8E928F8E8E8E8C898989
-8787878584817F7F7F7C7C7B767979767674747674747272716C6C6A6C6C71727474767C7F7F7F7F
-818484817F7F7F7F7F7F7F7F7F7F7F7F7F8181848587878989898E8F929292929292949494949494
-9494949494949494949494949494949492928F8F8E8E8E8C89898989898787878787878989898989
-89898989898C8C898785817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8185858789898F929292929292
-9292949494949494949494949494949494949494949492928F8E89898787847F7C6A74767C7C7C7F
-7F818184857F8C9AA6B7C1C9D4E1E6E1DFD9D4D1CCC6C4C1C1C1BBB9B6B1B1AEABA9A9A6A6A4A4A1
-9E9E9E9C9C9A99999494949494949292929492929292929292929292929292929292949292929292
-92929494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292928F929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989
-89898989898989898989898987878585858585858585858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7F
-7F818585858789898C8E8E8F9292929294949494999A9A9A9C9C9C9E9EA4A4A4A4A4A6A6A6A9ABAE
-AEB1B1B1B3B6B7B9B9B9B9B9BBBBBBBBBBBBBBBEC0C1C1C1C1C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6
-C8C8C9C9C9C9C8C8C8C8C8C8C8C8C8C8C8C8C6C6C6C6C4C4C4C4C4C4C4C4C1C1C1C0C0C0C0C0C0C0
-C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B6B6B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEB1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABAB
-ABABABABABABABABABABABABABABABA9A9ABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4
-A4A4A4A4A4A4A49E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9996949494929292928F8E8E8989
-898987817F7C767472726C6C6A6A6A6A676666666666676C72767F8489898C8F8F8E8E8E8E8C8989
-898787878481817F7F7F7C7C797979797676767676747472726E6C6A6A6C6C71727476797C7F7F7F
-81848481817F7F7F7F7F7F7F7F7F7F7F7F8184848587878989898C8F929292929292949494949494
-94949494949494949494949494949494949292928F8E8E8E8C898989898989878787878787878787
-878787898989878785817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8185858789898E92929292929292
-92929294949494949494949494949494949494929292928F8E89878785817F7974767C7C7C7F7F81
-818484847F8994A4B1BEC6CCD9E1E4DFDCD9D4CFCCC6C4C1C0BEBBB9B6B1B1AEABA9A9A9A6A4A4A3
-9E9E9E9E9C9C9A999994949494949492949494929292929292929292929292929294949292929292
-92949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989
-89898989898989898989898987878585858585858585858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7C7F
-7F858585858789898E8E8E9292929294949494949A9A9A9A9C9C9E9EA1A4A4A4A4A4A6A6A9A9ABAE
-AEB1B1B1B3B6B7B9B9B9B9B9BBBBBBBBBBBBBBBEC0C1C1C1C1C4C6C6C6C6C6C6C6C6C6C6C6C6C6C6
-C6C8C8C8C8C8C8C8C8C8C8C8C6C6C6C6C6C6C6C6C6C4C4C4C4C1C1C1C1C1C1C1C0C0C0C0C0C0C0C0
-C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B6B3B3B3B3B3B3B3B3B3B3B1B1
-B1B3B3B3B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEB1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABAB
-ABABABABABABABABABABABABABABA9A9A9A9ABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4
-A4A4A4A4A4A4A4A19E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9994949494929292928F8E8C89
-898987847F7C79747472716C6C6A6A6A6A676666666667676C74797F8789898E8E8F8E8E8E8C8989
-898987878784817F7F7F7C7C7C7C7C7C797676767676747472716C6C6A6C6C6C727474767C7C7F7F
-8181848481817F7F7F7F7F7F8181817F818485858587878789898C8E8F9292929292929494949494
-94949494949494949494949494949494929292928F8E8E8E8E8C8989898989878787878787878785
-858587878787858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8185858787898E8F92929292929292
-929292929292929292929292929292929292929292928F8C89878784817F7974797C7C7F7F7F8184
-8481817F8994A1ABB7C4CCCFD9E4E1DFD9D4D3CFC9C6C1C1C0BBBBB9B6B1B1AEABA9A9A9A6A4A4A3
-A19E9E9E9C9C9A999999969494949492949494929292929292929292929292929294949492929292
-92949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989
-89898989898989898989898987878785858585858585858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7C7F7F
-818585858789898C8E8E8F9292929294949494999A9A9A9A9C9C9E9EA3A4A4A4A4A4A6A6A9A9AEAE
-AEB1B1B1B3B6B6B7B9B9B9B9BBBBBBBBBBBBBBBEC0C0C1C1C1C4C6C4C4C4C6C6C6C6C6C6C6C6C6C6
-C6C6C8C8C8C8C8C6C6C6C6C6C6C6C6C6C6C6C6C6C6C1C1C1C1C1C1C1C1C1C1C1C0BEBEBEBEBEBEBE
-C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1
-B1B1B1B1B3B3B3B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEB1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABAB
-ABABABABABABABABABABABABABABA9A9A9A9A9ABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4
-A4A4A4A4A4A4A4A19E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9999949494949292928F8F8E8C
-89898987817F7C767472726E6C6A6A6A6A67676767676767676C747C7F87898C8E8E8E8E8E8E8C89
-89898787878584817F7F7F7C7C7C7C7C7C797676767674747472716C6C6A6C6C6C7274767C7C7F7F
-7F81818484817F7F7F7F7F818181848484858585858587878989898E8F9292929292929494949494
-94949494949494949494949494949492929292928F8E8E8E8E8C8989898989898787858484818181
-81818184848181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7F8184858787898C8E92929292928F8F8F
-8F92929292929292929292929292929292929292928F8C898787817F7F79767C7C7F7F7F7F7F8181
-817F7F8C99A1ABB4BECCCFCFD9E6E1DCD9D4D1CFC8C4C1C1C0BBBBB9B6B3B1AEABABA9A9A6A6A4A4
-A39E9E9E9E9C9A9A9A99999994949494949494949292929292929292929292929494949492929292
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949492929294929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989
-89898989898989898989898989878785858585858585858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7F7F7F
-848585878789898E8E8E8F9292929294949494999A9A9A9C9C9C9E9EA3A4A4A4A4A6A6A6A9ABAEAE
-AEB1B1B1B3B3B6B7B9B9B9B9BBBBBBBBBBBBBBBBC0C0C1C1C1C1C4C4C1C1C6C6C6C6C6C6C6C6C6C6
-C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C4C1C1C1C1C1C1C1C1C1C1C0BEBEBEBEBEBEBEBE
-BEBBBBBBB9B9B9B9B9B9B9B9B9B7B7B7B7B7B9B9B9B9B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1
-B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABAB
-ABABABABABABABABABABABABABABA9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4
-A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9994949494929292928F8E8C
-89898987857F7C79767472716C6C6A6A6A6A676767676767676A71747C848989898C8E8E8E8E8E8C
-8989898787878481817F7F7F7C7C7C7C7C797676767676747472726E6C6A6A6A6C6E7274767C7C7F
-7F7F81848584817F7F7F81818184848485858585858587878989898C8F9292929292929494949494
-94949494949494949494949494949292929292928F8E8E8E8E8E89898989898987878784817F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7F7F8485858789898E8F92928F8F8F8E8E8E
-8F929292929292929292929292929292928F8F8F8F8C898787817F7F76767C7F7F7F7F7F7F7F817F
-7F7C8999A1ABB4B9C6D3D4D1DCE4DFD9D4D3CFCCC6C1C1C1C0BBBBB9B7B3B1AEAEABA9A9A6A6A4A4
-A3A19E9E9E9C9C9A9A9A999994949494949494949292929492929292929292929494949494929292
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949492929494929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989
-89898989898989898989898989878787858585858585858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7C7F7F81
-8585878789898C8E8E8F9292929294949494949A9A9A9C9C9C9E9EA1A4A4A4A4A4A6A6A9A9ABAEAE
-B1B1B1B1B3B3B6B7B9B9B9B9BBBBB9B9BBBBBBBBBEC0C1C1C1C1C1C1C1C1C4C6C6C6C6C6C6C6C6C6
-C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C4C4C4C4C1C1C1C1C1C1C1C1C1C1C0BEBBBBBBBBBBBBBBBB
-BBBBBBB9B9B9B9B9B9B9B9B9B9B7B6B6B6B7B7B7B7B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1
-B1B1B1B1B1B1B1B1B1B1AEAEB1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABAB
-ABABABABABABABABABABABABABA9A9A9A6A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9996949494949292928F8F8E
-8C89898987847F7C76747272716C6A6A6A6A67676767676767676C72767F87898989898E8E8E8E8C
-898989898787878481817F7F7C7C7C7C7C7C797676767676747472726C6C6A6A6A6C7274767C7C7C
-7F7F7F818484817F7F8181818484858585858585858587878789898C8E8F8F929292929494949494
-9494949494949494949494949494929292929292928F8E8E8E8E8C89898989898787878584817F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7F7F8485858789898C8E8F8F8F8E8E8E8C8C8E
-8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8E8E8E89898787817F7C76767C7F7F7F7F7F7F7F7F7F7C
-7C8999A1ABB4BCC1CED9D9D4DFE1DFD9D4D1CFCCC6C1C1C1BEBBBBB9B7B3B1AEAEABABA9A6A6A4A4
-A3A19E9E9E9C9C9A9A9A9A9999949494949494949492929494929292929292949494949494929294
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494929494949292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989
-89898989898989898989898989898787878585858585858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7C7F7F7F84
-8585878989898C8E8E8F9292929294949494999A9A9C9C9C9C9E9EA3A4A4A4A4A4A6A6A9A9ABAEAE
-AEB1B1B1B1B3B6B6B9B9B9B9BBB9B9B9B9BBBBBBBEC0C0C0C1C1C1C1C1C1C4C6C6C6C6C6C6C6C4C4
-C6C6C6C6C6C6C6C6C6C6C4C4C4C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C0C0BBBBBBBBBBBBBBBBBB
-BBBBB9B9B9B9B9B9B9B9B9B9B9B6B6B6B6B6B6B6B6B6B6B3B3B3B3B3B3B1B1B3B3B3B3B3B3B1B1B1
-B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABAEAEAEABABABABAB
-ABABABABABABABABABABABABABA9A9A9A6A6A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9994949494929292928F8E
-8E8C89898987817F7C767472726C6C6A6A6A6A6767676A676767676C747C7F87898989898E8E8E8E
-8C8989898787878584817F7F7F7C7C7C7C7C7C797676767674747472716C6C6A6A6A6C7274767C7C
-7C7F7F7F818484817F818184848585858585858585858587878989898E8E8F8F9292929294949494
-9494949494949494949494949492929292929292928F8E8E8E8E8C8989898989878787878481817F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818585878789898E8E8F8E8E8C898989898C
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8C8989898785817F7C76767C7F7F7F7F7F7F7F7F7C7C7F
-8999A4ABB4C1C4C9D7DFDCD9DFE1DCD9D3CFCFCCC6C1C1C1BEBBBBB9B7B3B1AEAEABABA9A9A6A6A4
-A4A39E9E9E9E9C9C9A9A9A9A99949494949494949492949494929292929294949494949494949294
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949492929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989
-89898989898989898989898989898987878785858585858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F8185
-8587898989898E8E8E9292929292949494999A9A9C9C9C9C9E9E9EA3A4A4A4A4A6A6A6A9ABAEAEAE
-AEB1B1B1B1B3B3B6B7B9B9B9B9B9B9B9B9BBBBBBBEC0C0C0C0C1C1C1C1C1C4C6C6C6C6C4C4C4C4C1
-C4C6C6C6C6C4C4C4C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C0BBBBBBBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B6B6B6B6B6B6B6B3B3B3B3B3B1B1B1B1B1B1B3B3B3B1B1B1
-B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABAEAEABABABABAB
-ABABABABABABABABABABABABA9A9A9A6A6A6A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A999494949494929292928F
-8E8C89898987857F7C79767472716C6C6A6A6A6A67676A6A6767676A71747C81898989898C8E8E8E
-8E898989898787878584817F7F7F7C7C7C7C7C7B7676767676747472726E6C6C6C6C6C727476797C
-7C7F7F7F818181817F7F8184858585858585858585858587878989898C8C8E8E8F92929294949494
-949494949494949494949494929292929292929292928F8E8E8C898989898987878787858584817F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8485858789898C8E8E8E8C8989898989898C
-8E8E8E8E8E8E8E8C89898989898989898989878787857F7C7C76767C7F7F7F7F7F7F7F7C7C6E7F89
-94A3ACB4C1C8CED7DCE1DFDFE1DFD9D4D1CFCCC8C6C1C1C0BEBBBBB9B9B3B1AEAEAEABABA9A6A6A4
-A4A3A19E9E9E9C9C9C9C9A9A99969494949494949492949494949292929294949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949492929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989
-89898989898989898989898989898989878787858585858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F7F8485
-87878989898C8E8E8F92929292949494999A9A9A9C9C9C9E9E9E9EA4A4A4A4A4A6A6A6A9ABAEAEAE
-AEB1B1B1B1B3B3B6B7B9B9B9B9B9B9B9B9BBBBBBBBBEBEBEC0C0C1C1C1C1C1C4C4C4C4C4C1C1C1C1
-C1C4C4C4C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C0C0C0BEBBBBBBBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B6B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1
-AEB1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEACAEAEAEAEAEABABABABAEABABABABAB
-ABABABABABABABABABABABABA9A9A9A6A6A6A6A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9A9A9A999494949494949292928F
-8F8E8C89898987817F7C767472726E6C6A6A6A6A67676A6A6A6767676A72767F87878989898E8E8E
-8E8C898989898787878481817F7F7C7C7C7C7C7C797676767676747472726C6C6C6C6C6C72747679
-7C7C7F7F7F8181817F7F81848585858585858585858585878787898989898C8E8E8F929294949494
-9492949494949494949494949292929292929292928F8F8E8C898989898989878787858585848181
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818585878789898E8E8C898989898989898989
-8C8E8E8E8E8E8E89898989898989898787878584847F7C7976767C7C7F7F7F7F7F7C7C79747F8994
-A3AEB7C1C9D1D7DEE4E6E1E1E1DFD9D4CFCCC9C6C1C1C1C0BBBBBBB9B9B3B1B1AEAEABABA9A6A6A6
-A4A4A19E9E9E9C9C9C9C9A9A9A999494949494949494949494949292929494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989
-89898989898989898989898989898989898787878585858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F7F818585
-87898989898E8E8E8F929292949494999A9A9A9C9C9C9E9E9E9EA1A4A4A4A4A4A6A6A9A9ABAEAEAE
-AEAEB1B1B1B3B3B6B7B9B9B9B9B9B9B9B9BBBBBBBBBEBBBBBEC0C0C1C1C1C1C1C4C1C1C1C1C1C1C1
-C1C1C1C1C1C1C1C1C1C1C1C1C1C1C1C0C0C0C0C0C0C0C0C0C0C0C0C0BEBBBBBBBBBBBBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1
-AEAEAEB1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABAEAEAEAEAEAEAEABABAEAEAEABABABABABABABABABABAB
-ABABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9A9A9A9994949494949492929292
-8F8E8E8C8C898987817F7C767472726C6C6A6A6A6A67676A6A676767676C747C7F87878789898E8E
-8E8C898989898787878584817F7F7F7C7C7C7C7C7C797676767674747472716C6C6C6C6C72747676
-7C7C7C7F7F7F817F7F7F8184858585858585858585858585878787898989898C8E8F929292949494
-92929292949494949494949292929292929292928F8F8E8C8C898989898989878787858585858481
-817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818485858787898C8E8C89898989878787898989
-898C8E8E8E8E8C898989898989878787858481817F7C7674767C7C7F7F7F7F7C7C7C76798189929E
-AEB7C1CCD4D9E1E6ECE7E6E4E1DCD9D3CFCCC8C6C1C1C1C0BBBBBBB9B9B3B1B1AEAEAEABA9A9A6A6
-A4A4A39E9E9E9E9C9C9C9C9A9A999694949494949494949494949492929494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-89898989898989898989898989898989898987878787858585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F81858587
-898989898E8E8E8E929292949494949A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A9A9AEAEAEAE
-AEAEB1B1B1B3B3B6B6B7B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBC0C0C0C1C1C1C1C1C1C1C1C1C1C1
-C1C1C1C1C1C1C1C1C1C1C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0C0BEBBBBBBBBBBBBBBBBBBBBBBBB
-B9B9B9B9B7B7B7B7B7B7B9B9B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1AE
-AEAEAEAEAEAEB1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABAEAEAEAEAEAEABABABAEAEABABABABABABABABABABAB
-ABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4
-A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9A9A9A9994949494949494929292
-928F8E8E8E8C8987847F7C79747472716C6C6A6A6A6767676A6A6767676A72747C81878787898C8E
-8E8C89898989898787858584817F7F7F7C7C7C7C7C7B7676767676747472726E6C6C6C6C6C727476
-797C7C7C7F7F7F7F7F7F81818585858585858585858585858787878789898989898E929292929292
-92929292929294949494929292928F8F9292928F8F8E8E8C89898989898989898787878585858584
-81817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818585878789898E8C8989898787878787878989
-898C8C8989898989898787878787878584817F7F7C7674767C7C7F7F7F7C7C7C76727C84899299A6
-B6C1C8D3D9DCE1E6E7E6E4E1DFD9D4CFCCC8C6C6C1C1C0C0BBBBBBB9B7B3B1B1AEAEAEABABA9A6A6
-A4A4A3A19E9E9E9C9C9C9C9A9A999994949494949494949494949492949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989
-89898989898989898989898989898989898989878787878585858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF7F85858587
-8989898C8E8E8E8F929294949494999A9A9A9A9C9C9E9E9E9E9EA4A4A4A4A4A6A6A6A9ABAEAEAEAE
-AEAEB1B1B3B3B3B3B6B7B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBEC0C0C0C1C1C1C1C1C1C1C1C1C1
-C1C1C1C1C1C0C0C0C0C0C0C0C0C0C0C0C0C0BEBEBEBEBEBEBEBEBEBBBBBBB9B9B9B9B9B9B9B9B9B9
-B9B9B9B7B6B6B6B6B7B7B7B7B6B3B3B3B3B3B3B1B1B1B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1AE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEACAEAEAEAEABABABABABABAEAEAEAEABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4
-A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9A9A9A9994949494949494949292
-928F8F8F8F8E898987817F7C767472726E6C6A6A6A6767676A6A6767676A6C74767F81878789898E
-8E8E8989898989878785858481817F7F7F7C7C7C7C7C797676767676747472726C6E6E6E6E727476
-76797C7C7C7F7F7F7F7F7F818485858585858585858585858587878787898989898C8F9292929292
-92929292929292929292929292928F8F8F8F928F8E8E8C8989898989898989878787878585858585
-8481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818487878989898C89898987878785878787898989
-898989898989898987878787878585847F7F7C767474767C7C7F7F7F7C7C7674747F878992949EB1
-BEC6CCD4DCDCE1E6E7E6E1E1DFD9D4CFCCC8C6C4C1C0C0C0BBBBBBB9B7B3B1B1AEAEAEABABA9A9A6
-A6A4A4A39E9E9E9E9C9C9C9C9A9A9994949494969494949494949492949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949492929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989
-89898989898989898989898989898989898989898787878785858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8485858789
-89898C8E8E8E8F92929294949494999A9A9A9C9C9C9E9E9E9EA1A4A4A4A4A4A6A6A9A9ABAEAEAEAE
-AEB1B1B1B3B3B3B3B6B7B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBEC0BEC0C0C1C1C1C1C1C1C1C1C1
-C1C0C0C0C0C0C0C0C0C0C0BEBEBEBEBEBEBEBEBEBEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9
-B9B9B9B7B6B6B6B6B6B6B6B6B6B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1AEB1B1B1B1B1B1B1B1AE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEABABABAEAEABABABABABABABABAEAEABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4
-A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A96949494949494949292
-92928F8F8F8F8C898987817F7C767472716C6C6A6A676767676A6A6A6A6A6C72747C7F8187878989
-8E8E8989898989878787858584817F7F7F7C7C7C7C7C7C7976767676747474727271717171727476
-7676797C7C7C7F7F7F7F7F81848585858585858585858585858585878787878989898C8F8F8F8F8F
-8F8F8F929292929292928F8F928F8E8E8E8E8F8E8E8C898989898989898989878787858585858585
-858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F81848787898989898989898787858585878789898989
-8989898989898987878785848481817F7C7C767474767C7C7C7F7C7C79746E7681898F92949CA9B9
-C6C6CFD9DCDCE1E4E6E4E1DFDCD9D3CFCCC6C6C1C1C0C0BEBBBBBBB9B7B3B1B1AEAEAEAEABA9A9A6
-A6A4A4A3A19E9E9E9C9C9C9C9A9A9999949499999494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949492929292
-92929292929292929492929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89
-89898989898989898989898989898989898989898987878787858585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585878989
-89898E8E8E8F92929294949494949A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A9A9ABAEAEAEAE
-AEB1B1B1B3B3B3B3B6B6B9B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBEBEBBBEC0C0C1C1C1C1C1C1C0C0
-C0C0C0C0C0C0BEBEBEBEBEBEBEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9
-B9B9B9B6B3B3B3B3B6B6B6B6B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEB1B1B1B1AEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEABABABABAEABABABABABABABABABAEABABABABABABABABABABABABABABABABAB
-ABABABABABA9ABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4
-A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A99949494949494949492
-92928F8F92928E8C8987847F7C79747472716C6C6A6A6767676A6A6A6A6A6C7174767C7F84878789
-8C8E8C8989898989878785858584817F7F7F7C7C7C7C7C7976767676767674747272727272727274
-767676797C7C7F7F7F7F7F818485858585858585858585858585858587878787878989898E8E8E8C
-8E8E8F8F8F8F8F8F8F8E8E8F8F8F8E8C8C8C8E8E8C89898989898989898987878785858585858585
-8584817F7F7F7F7C7C7C7C7C7C7F7F7F7F8184858789898989898987878785858587878989898989
-8989898989898987878784817F7F7F7C7C76746E767C7C7C7C7C797672727C858E9292999CA4B1BF
-CCCCD4DCDFDCE1E4E4E1DFDFD9D4D1CCC8C6C6C1C0C0BEBBBBBBB9B9B7B3B1B1B1AEAEAEABABA9A6
-A6A6A4A4A19E9E9E9E9C9C9C9A9A9A99999499999694949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494929292
-94929292929292949494929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292928F8E8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C
-89898989898989898989898989898989898989898989878787878585858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8585878989
-898C8E8E8F9292929294949494999A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A6A6A6A9ABAEAEAEAEAE
-AEB1B1B3B3B3B3B3B3B6B7B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBBBBBBBEC0C0C1C1C0C0C0C0C0
-C0C0BEBEBEBEBEBEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9
-B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEB1AEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABABA9A9A9ABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4
-A4A4A4A4A3A39E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A99949494949494949492
-9292929292928F8E898987817F7C767472726C6C6A6A676767676A6A6A6A6C6C7274767C7F848787
-898C8C8989898989878785858484817F7F7F7F7C7C7C7C7C79767676767676747472727272727474
-767676767B7C7C7F7F7F7F7F81848585858585858585858585858585858587878787898989898989
-8C8C8E8E8E8E8E8C8C8C8C8E8E8E8C898989898C8989898989898989898987878785858585858585
-84817F7F7F7F7C7C7C7C7C7C7F7F7F7F818485878789898989898787858585858787878989898989
-89898989898987878784817F7F7F7C7C767272767C7C7C7C7C76726C747F87929494999CA1ABBCC6
-CFCFD9DFDFDCDFE4E1E1DFDCD9D4CFC9C8C6C1C1C0C0BEBBBBBBB9B9B7B3B3B1B1AEAEAEAEABA9A9
-A6A6A4A4A39E9E9E9E9C9C9C9C9A9A99999999999994949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494929294
-94949292929292949494929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292928F8F8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8C898989898989898989898989898989898989898989898987878785858585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8587898989
-898E8E8E929292929494949494999A9A9A9A9C9C9E9E9E9EA1A4A4A4A4A4A6A6A9A9ABAEAEAEAEAE
-AEB1B1B3B3B1B1B3B3B6B7B9B9B9B9B9B9B9B9BBBBB9B9BBBBBBBBBBBBBBBBBEBEC0C0C0C0C0C0BE
-BEBEBEBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9
-B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEABABAEAEAEABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABABA9A9A9A9ABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4
-A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A99949494949494949494
-929292929292928F8C898987817C7B767472716C6C6A6A676767676A6A6A6A6C7174767C7F818587
-89898C8989898989878785848484817F7F7F7F7C7C7C7C7C7C797676797976767474747272727474
-76767676797C7C7F7F7F7F7F81848585858585858585858585858585858585878787878789898989
-8989898C89898989898989898C8C8C89898989898989898789898989898989878787858585858584
-817F7F7F7F7F7C7C7C7C7C7C7F7F7F81858585878989898989878785858585858787898989898989
-898989898987878784817F7F7F7C76747272767C7C7C7C76746C727C81899294999A9CA3A6B4C1D1
-D4D4D9E1DFDCDFE1E1DFDCD9D7D3CFC8C6C6C1C0C0C0BBBBBBBBB9B9B7B3B3B1B1AEAEAEAEABABA9
-A6A6A4A4A3A19E9E9E9C9C9C9C9A9A9A9A99999A9994949494999494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949292929294949494949292929492929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292928F8F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8C8989898989898989898989898989898989898989898989878787878585858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8587898989
-8C8E8E8F9292929294949494949A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A9A9ABAEAEAEAEAE
-B1B1B1B3B1B1B1B1B3B6B6B9B9B9B9B9B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBEBEC0C0BEBEBEBE
-BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B7B9B9B9B9B9B9
-B9B9B6B3B3B1B1B1B1B1B1B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEABABABABAEABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABA9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4
-A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A99949494949494949494
-94929292929292928E898987847F7C79747472716C6C6A676767676A6A6A6A6C6C7274767C7F8187
-87898C8C89898989878787848481817F7F7F7F7F7C7C7C7C7C79797979797C797676747474747474
-76767676797C7C7F7F7F7F7F81848585858585858585858585858585858585858587878787878789
-89898989898989898989898989898989898989898989878787878787878787878787858484848181
-7F7F7F7F7C7C7C7C7C7C7C7F7F7F8184858587878989898787878485858585878789898989898989
-898989898787878581817F7C7976747174767C7C7C7C746C71767F878C92999C9C9EA4A6AEBCC9D9
-D9D9DFE4E1DEDFE1DFDFDCD9D4D1CCC8C6C6C1C0C0BEBBBBBBBBB9B9B7B6B3B1B1AEAEAEAEABABA9
-A6A6A4A4A4A39E9E9E9E9C9C9C9C9A9A9A9A999A9999949496999494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949492929294949494949492949494929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292928F8F8F92928F8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8C89898989898989898989898989898989898989898989898787878785858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8789898989
-8E8E8E8F9292929294949494999A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A6A6A6A9A9ABABAEAEAEAE
-B1B1B1B1B1B1B1B1B3B3B6B7B9B9B9B7B9B9B9B9B9B9B9B9BBBBBBBBBBBBBBBBBBBEBEBEBBBBBBBB
-BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB9B9B9B7B7B7B7B7B7B7B7B7B7B7B7
-B7B7B6B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEB1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABA9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A6A6A6A6A6A4A4A4A4A4A4A4
-A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A99949494949494949494
-94929292929292928F8E898987817F7C767472726E6C6A6A676767676A6A6A6A6C7174767C7F7F84
-8787898C8C89898989878784818181817F7F7F7F7C7C7C7C7C7C79797C7C7C7C7976767474747474
-74767676767C7C7C7F7F7F7F7F818585858585858585858585858585858585858585858787878787
-878989898989898787878989898989898987878789898787878787878787878787858481817F7F7F
-7F7F7C7C7C7C7C7C7C7C7F7F7F7F8485858787898989878785848484848587878989898989898989
-8989898787878584817F7C7974746E74797C7C7C76726C747C7F878E929A9C9EA1A4A6AEB7C4D1DF
-DFDFE1E4E1DFDFDFDFDCD9D9D3CFCCC6C6C4C1C0C0BEBBBBBBBBB9B9B7B6B3B1B1AEAEAEAEAEABA9
-A9A6A4A4A4A3A19E9E9E9C9C9C9C9A9A9A9A9A9A9A99949499999694949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949496949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949492929494949494949492949494949292929492929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292928F9292928F8F8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8C898989898989898989898989898989898989898989898987878787858585858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8789898989
-8E8E8E929292929494949494999A9A9A9A9C9C9E9E9E9E9EA4A4A4A4A4A6A6A6A9ABABABAEAEAEAE
-B1B1B1B1B1B1B1B1B3B3B6B7B9B7B7B6B9B9B9B9B9B9B9B9BBBBBBBBBBBBB9BBBBBBBBBBBBBBBBBB
-BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B6B6B6B6B6B6B6B6B6B6B6
-B6B6B6B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEB1AEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABAEAE
-AEABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABA9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A6A6A6A6A4A4A4A4A4A4A4
-A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A969494949494949494
-9494929292929292928F8C8989857F7C79767472716C6C6A6A676767676A6A6A6A6C7274767C7F81
-858789898C8C8989898787848181817F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C79767674747474
-7476767676797C7C7F7F7F7F7F818485858585858585858585858585858585858585858585878787
-87878787898987878787878787898989878787878787878785858585858787878784817F7F7F7F7C
-7C7C7C7C7C7C7C7C7C7F7F7F7F818587878787878787878581818181848789898C8C8C8C89898989
-89898987878584817F7C7974746C74797C7979746C74797F848992949A9EA4A4A6ABAEB4BECCD9E4
-E4E1E6E6E1DFDFDFDCD9D9D4D1CFC8C6C6C1C1C0C0BEBBBBBBBBB9B9B7B6B3B1B1AEAEAEAEAEABAB
-A9A6A6A4A4A4A19E9E9E9E9C9C9C9C9C9A9A9A9A9A99969699999994949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949499949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949292929494929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8C8989898989898989898989898989898989898989898989878787878785858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF898989898C
-8E8E8F9292929294949494949A9A9A9A9C9C9E9E9E9E9EA1A4A4A4A4A4A6A6A9A9ABABABAEAEAEAE
-B1B1B1B1B1B1B1B1B3B3B6B7B7B6B6B6B7B9B9B9B9B9B9B9B9BBBBB9B9B9B9B9BBBBBBBBBBBBBBBB
-BBBBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B6B6B6B6B6B6B6B6B6B6B6
-B6B6B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEACAEAEAEAEAEAEAEAEAEABABABAB
-AEABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABA9A9A9A6A6A6A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A6A6A4A4A4A4A4A4A4A4
-A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A999494949494949494
-949494929292929292928E898987847F7C76747472716C6C6A676767676A6A6A6A6C7274767C7C7F
-84878989898C8C898987878581817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7976767474
-7476767676797C7C7F7F7F7F7F818485858585858585858585858585858585858585858585858585
-878787878787878787878787878787878787878787878785848181848484848484817F7F7F7C7C7C
-7C7C7C7C7C7C7C7C7F7F7F7F8185878789878787878784817F7F7F848789898E8E8E8E8E8C898989
-898987878784817F7C7974726C74767676767472797F81878992999C9EA6A6A6A9AEB6BCC8D7E4E7
-E7E7E7E6E1DFDFDCD9D9D9D3CFCCC6C6C4C1C0BEC0BEBBBBBBB9B9B9B7B6B3B1B1B1AEAEAEAEAEAB
-A9A6A6A4A4A4A39E9E9E9E9C9C9C9C9C9C9C9A9A9A9A9999999A9996949494949494949494949494
-94949494949494949494949494949494949494949494969494949494949699969494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949492949494929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8C89898989898989898989898989898989898989898989898987878787858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8989898C8E
-8E8E8F9292929494949494999A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A9A9ABABABABAEAEAE
-B1B1B1B1B1B1B1B1B1B3B6B6B6B6B6B6B7B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9BBBBBBBBBBBBBB
-BBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABAEAEAEAEAEAEABABABABAB
-ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABA9A9A9A6A6A6A6A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A6A4A4A4A4A4A4A4A4
-A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A999494949494949494
-949494929292929292928F8C898987817F7C76747272716C6A6A676767676A6A6A6A6C7274767C7F
-81878789898C8C898987878584817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C79767676
-7676767676767C7C7C7F7F7F7F7F8185858585858585858585858585858585858585858585858585
-85858787878787878585858787878787878785848485858481817F7F7F7F7F7F7F7F7F7F7C7C7C7C
-7C7C7C7C7C7C7C7C7F7F818485878789878787878584817F7F7F848789898C8E8E8E8E8E8C898989
-89878787847F7F7C7674726C74767676746C767C7F858789929A9EA4A6A9ABACAEB6BCC4D1DFECEC
-ECECECE6E4E1DFD9D9D9D4D1CFCCC6C6C1C1BEBEBEBEBBBBBBB9B9B9B7B6B3B1B1B1AEAEAEAEAEAB
-A9A6A6A4A4A4A3A19E9E9E9C9C9C9C9C9C9C9C9A9A9A9999999A9999949494949494949494949494
-94949494949494949494949494949494949494949496999494949494949999999494949496949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292928F8E8E8E8F8F8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8C898989898989898989898989898989898989898989898989878787858585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89898C8E8E
-8E8F929292949494949494999A9A9A9A9C9C9E9E9E9E9EA4A4A4A4A4A6A6A6A9ABABABABABAEAEAE
-AEB1B1B1AEB1B1B1B1B3B3B6B6B3B3B6B7B9B9B9B7B7B9B9B9B9B9B9B9B9B9B9B9B9BBBBBBBBBBBB
-BBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3B3
-B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABAEAEAEAEABABABABAB
-ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA9A9ABAB
-ABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494
-94949494929292929292928E898987857F7C79767472726C6C6A67676767676A6A6A6C717476797F
-7F84878989898C898987878784817F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7F7C7C7C7C7976
-767676767979797C7C7F7F7F7F7F8184858585858585858585858585858585858585858585858585
-858585858587878585858585858485878784848181818181817F7F7F7F7F7F7F7F7F7C7C7C7C7C7C
-7C7C7C7C7C7F7F7F7F8185858587878787858585817F7F7C7F818789898C8E8E8E8E8E8E8E898989
-878787847F7C7C76746E727476767674747C7F8487898C929AA3A4A6ABAEAEB1B6BCC4CCD9E4EEEC
-ECECE7E6E1DFDCD9D9D4D4CFCCC8C6C4C1C1BBBBBEBBBBBBBBB9B9B9B7B6B3B1B1B1AEAEAEAEAEAB
-A9A9A6A4A4A4A4A39E9E9E9E9C9C9C9C9C9C9C9C9A9A9A99999A9A99949494949494949494949494
-94949494949494949494949494999694949494949499999694949494969999999994949499949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949492929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292928F8E8F8F8F8F8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8C898989898989898989898989898989898989898989898989898787878585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF89898E8E8E
-8F929292949494949494949A9A9A9A9C9C9C9E9E9E9EA1A4A4A4A4A4A6A6A9A9ABABABABABAEAEAE
-AEB1AEAEAEAEB1B1B1B3B3B3B3B3B3B6B6B9B7B7B6B7B9B9B9B9B9B9B9B9B9B9B9B9B9BBBBBBB9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B1B1B1B1B1B1B1B1B1B1B1B1B1
-B1B1B1B1B1B1AEAEAEAEAEAEAEB1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABAEAEAEAEAEAEABABABABABABABABAEAEABABABABAB
-ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA9A9A9AB
-ABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494
-94949494949292929292928F89898987847F7C79767474726C6C6A676767676A6A6A6A6C7274767C
-7F818787898989898989878784817F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7C7C7C79
-7676797979797C7C7C7F7F7F7F7F8184858585858585858585858585858585858585858585858585
-85858585858585858585858584818184848481817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7F7F7F7F8185858587878787858584817F7F7C7F81878989898E8E8E8E8E8E8E8C898989
-878785817F7C76726C727476767472797F8487898C8F92999EA6A9ACAEB1B1B6B9C1C6D3DEE7EEEC
-ECECE7E4E1DFD9D9D9D4D3CFCCC6C6C1C1C0BBBBBBBBBBBBBBB9B9B9B9B6B3B1B1B1AEAEAEAEAEAB
-A9A9A6A6A4A4A4A3A19E9E9E9C9C9C9C9C9C9C9C9C9A9A999A9A9A99999494949494949494969494
-9494949494949494949494949499999494949494999999999494949499999A9A9994949699999494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949492929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292929292929292928F8F8F928F8F
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8C898989898989898989898989898989898989898989898989898987878585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF898E8E8E8E
-92929294949494949494999A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A9A9ABABABABABABAEAE
-AEAEAEAEAEAEB1B1B1B1B3B3B3B3B3B3B6B7B6B6B6B7B9B9B9B9B9B9B9B9B9B7B9B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B1B1B1B1B1B1B1B1B1B1B1B1B1
-B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABACAEAEAEABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABABABABABABABABABA9A9ABABABABABABABABA9A9ABABABA9A9A9A9A9
-ABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494
-94949494949292929292928F8C89898987817F7C79767474716C6A67676767676A6A6A6A6C727479
-7F7F848789898989898987878584817F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7C7C7C
-7C7979797C7C7C7C7C7C7F7F7F7F7F81848585858585858585858585858585858585858585858585
-85858585858584818484848481817F8181817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7F7F7F7F8184858585878787878584817F7C7C7F7F848789898C8E8E8E8E8E8E8C89898987
-87847F7F7C74716C747476766E767F8487898E8F9292949EA6A9AEB1B1B6B9B9C1C6CFD4DFE9EEEC
-ECECE7E4E1DFD9D9D4D4D3CFC9C6C4C1C1C0BBBBBBBBBBBBBBB9B9B9B9B6B3B1B1B1AEAEAEAEAEAE
-A9A9A6A6A4A4A4A4A19E9E9E9E9C9C9C9C9C9C9C9C9A9A999A9A9A9A999494949494949494999494
-949494949494949494949494999999999494949499999A999994949699999A9A9999949999999494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292929292929292928F8F9292928F
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E898989898989898989898989898989898989898989898989898987878585858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8C8E8E8E8F
-929292949494949494999A9A9A9A9A9C9C9E9E9E9E9EA4A4A4A4A4A6A6A6A9A9ABABABABABABAEAE
-AEAEAEAEAEAEB1B1B1B1B3B3B1B1B3B3B6B6B6B6B6B6B9B9B9B9B9B9B7B7B7B6B7B9B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B7B7B7B7B7B7B7B7B6B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEABAEAEAEAEAEAEAEAEABABABABABABABABAEABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABABABABABABABABABA9A9A9A9ABABABABABABA9A9A9ABABA9A9A9A9A9
-A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9694949494949494
-94949494949492929292928F8E89898987857F7F7C797674726C6C67676767676767676A6C717476
-7C7F81878789898989898787878481817F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7C
-7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F81818485858585858585858585858585858585858585858585
-858585858584818181818181817F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7F7F7F7F81848585858787878785817F7F7C7C7C7F818789898C8E8E8E8E8E8E8E8989898785
-817F7C7674716C74747676767F8487898F92929294999CA4A9AEB1B6B7B9BBBEC6CCD1D9E1ECEEEC
-ECECE6E1DFDCD9D9D4D3D1CFC8C6C1C1C0BBBBBBBBBBBBBBBBB9B9B9B9B6B3B1B1B1AEAEAEAEAEAE
-A9A9A6A6A4A4A4A4A39E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A999994949494949499999694
-94949494949494949494949499999A999494949999999A9A99949499999A9A9A9A99999999999994
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989898987878785858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8F92
-9292929494949494999A9A9A9A9A9C9C9C9E9E9E9EA1A4A4A4A4A4A6A6A6A9A9ABABABABABABAEAE
-AEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B3B6B6B3B3B3B6B7B9B9B9B7B7B7B6B6B6B6B7B9B9B9B9B9B9
-B9B9B9B9B9B9B9B9B7B7B7B7B7B7B7B7B6B6B6B6B6B6B6B6B6B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEABABABABABAEAEAEAEABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABABABA9A9ABABABA9A9A9A9A9A9ABABABABA9A9A9A9A9ABA9A9A6A9A9
-A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3
-A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494
-9494949494949492929292928F8C89898987847F7F7C797674726C6A676767676767676A6A6C7274
-797F81858787898989898987878784817F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F
-7F7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F818184848585858585858585858585858585858585858484
-858585848481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C7F7F7F7F7F818585858787878784817F7F7C7C7C7F81878989898E8E8E8E8E8E8E8C8989878581
-7F7C76746E72747676727F8487898E92929294949A9CA3A9AEB1B7B9BBBEC0C4C9CFD4D9E4ECEEEC
-ECECE6E1DFDCD9D4D4D3CFCCC8C6C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B6B3B1B1B1AEAEAEAEAEAE
-ABA9A6A6A6A4A4A4A3A19E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9994949494949499999994
-94949494949494949494949999999A9999949499999A9A9A99999999999A9A9A9A9999999A9A9996
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989898989878787858585
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8F9292
-92929494949494999A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A6A9A9A9ABABABABABABAE
-AEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B3B3B3B3B3B3B6B7B7B7B7B6B6B6B6B6B3B3B6B7B9B9B9B9B9
-B9B9B9B7B7B7B7B7B7B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B6B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABAEAEAEAEAE
-AEAEAEAEAEAEABABABABABABABAEAEABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABABABA9A9A9ABABA9A9A9A9A9A9A9ABABABA9A9A9A9A9A9A9A9A6A6A9
-A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3
-A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494
-9494949494949492929292928F8E8C89898987817F7F7C797674726C6A676766666666676A6A6C72
-767C7F84878787898989898787878584817F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F8181817F7F
-7F7F7F7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F81818485858585858585858585858585858585848481
-8484848481817F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7F7F7F7F7F8184858585858785817F7F7C7C7C7C7F81858789898C8E8E8E8E8E8E8C898987857F7C
-7974746C72747676768187898C8F92949494949A9C9EA6AEB3B7B9BEC0C1C4C8CFD4D9DCE6F2ECEC
-ECE7E6E1DFD9D9D4D3D1CFCCC6C6C1C1BEBBBBBBBBBBBBBBB9B9B9B9B9B6B3B3B1B1AEAEAEAEAEAE
-ABA9A6A6A6A4A4A4A4A39E9E9E9E9C9C9C9E9E9C9C9C9A9A9A9A9A9A9A9996949494949999999994
-949494999494949494949499999A9A9A99949999999A9A9A9A9999999A9A9A9A9A9A99999A9A9A99
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949492929294929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8C89898989898989898989898989898989898989898989898989878787878785
-858585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8F9292
-929294949494999A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A6A6A6A6A9A9A9ABABABABABABAE
-AEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B3B3B3B1B1B3B6B7B6B6B6B6B6B3B3B3B3B3B3B6B7B9B9B9B7
-B7B7B7B7B6B6B6B6B6B6B6B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1
-B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABAEAE
-AEAEAEAEAEABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABABA9A9A9A9A9A9A9A9A6A6A9A9A9A9A9ABA9A9A6A9A9A9A9A9A6A6A6
-A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A1
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494
-9494949494949492929292928F8E8E8E8C898787847F7F7C7674726E6A67676666666666676A6C72
-74767C8185878789898989898787878481817F7F7F7C7C7C7C7C7C7C7C7C7C7C7F7F818181818181
-7F7F7F7F7F7C7F7F7F7F7F7F7F7F7F7F7F7F7F81848585858585858585858585858585858584817F
-81818181817F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F
-7F7F7F7F8184858585858584817F7F7C7C7C7C7F81858789898C8E8E8E8E8E8E8E898987847F7C76
-74746C747476767C8489898F92949499999A9A9C9EA6AEB3B9BBBEC1C1C6C6CCD3D9DCDFE7F1ECEC
-ECE7E4DFDCD9D7D4D3CFCFCCC6C4C1C1BEBBBBBBBBBBBBBBB9B9B9B9B9B7B3B3B1B1AEAEAEAEAEAE
-ABA9A6A6A6A6A4A4A4A3A19E9E9E9C9C9C9E9E9C9C9C9C9A9A9A9A9A9A9A999494949499999A9999
-949496999494949494949999999A9A9A999999999A9A9A9A9A9999999A9A9A9A9A9A999A9A9A9A99
-96949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949492929494949292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989898987878787
-878585858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E929292
-929494949494999A9A9A9A9A9A9C9C9C9E9E9E9EA1A4A4A4A4A4A6A6A6A6A6A9A9ABABABABABABAE
-AEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B1B3B3B6B6B6B6B3B3B3B3B3B3B1B3B3B6B6B7B7B7
-B6B6B6B6B6B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1AEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABAB
-ABAEAEAEAEABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA9AB
-ABABABABABABABABA9A9ABABABA9A9A9A9A9A9A9A9A6A6A6A9A9A9A9A9A9A9A6A6A9A9A9A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A1
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494
-9494949494949492929292928F8F8F8E8E89898787817F7C7C7674726C6A67676161616167676A6C
-72747C7F8487878789898989898787878481817F7F7C7C7C7C7C7C7C7C7C7C7C7C7F7F8181848484
-8181817F7F7F7F7F7F7F7F7F81817F7F7F7F7F81818585858585858585858585858585858584817F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C797676797C7C7C7C7C7F7F
-7F7F7F81848585858584817F7F7F7C7C7C7C7F8487878989898E8E8E8E8C8C89898987847F7C7974
-7471747476767F87898E929494999A9C9C9C9EA1A4A9B1B9BBC0C1C6C6C8CCD1D7DCE1E4ECF1ECEC
-ECE7E4DFDCD9D4D3D1CFCFCCC6C4C1C0BEBBBBBBBBBBBBBBB9B9B9B9B9B7B6B3B1B1AEAEAEAEAEAE
-ABA9A6A6A6A6A4A4A4A4A19E9E9E9E9C9C9E9E9C9C9C9C9A9A9A9A9A9A9A999694949699999A9A99
-9494999999949494949499999A9A9A9A9A9999999A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A
-99949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494929494949492929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989898989898989898989878787
-878785858585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8F929292
-9294949494949A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A9A9ABABABABABABAE
-AEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B3B3B6B3B3B3B3B3B3B1B1B1B1B1B3B3B6B6B6B6
-B6B6B6B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABACAEAEAEAEAEAEAEAEAEAEABABABABABABABAB
-ABABABABAEABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA9A9
-A9ABABABABABABABA9A9A9A9ABA9A9A6A9A9A9A9A6A6A6A6A6A9A9A9A9A9A9A6A6A6A9A9A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494
-949494949494949292929292928F8F8F8F8E89898785817F7C797674726C6A676661616164676A6C
-7274767C7F85878787898989898787878584817F7F7F7C7C7C7C7C7C7C7C7C7C7C7F7F8184848485
-85848481817F7F7F7F7F81818181817F7F8181818484858585858585858585858585858585858481
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C79797C7C7C7C7C7C7F7F7F
-7F7F81848585848481817F7F7F7C7C7C7C7F8487878789898C8E8E8E8C8989898787817F7C797472
-72747676727F87898F9294999A9C9C9C9C9EA4A6A9B1B9BBC0C1C6C8CCCCCFD4D9E1E4E7ECF1ECEC
-ECE6E1DFD9D9D4D3CFCFCCC9C6C1C1C0BBBBBBBBBBBBBBBBB9B9B9B9B9B7B6B3B1B1AEAEAEAEAEAE
-ABA9A9A6A6A6A4A4A4A4A3A19E9E9E9C9E9E9E9E9C9C9C9C9A9A9A9A9A9A9999949499999A9A9A99
-9996999999949494949999999A9A9A9A9A99999A9A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A
-99969494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949492929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898989898989898989898987
-878787878585FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8F929292
-9294949494999A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A6A6A6A6A6A6A9A9ABABABABABABAB
-AEAEAEAEAEAEAEAEB1B1AEAEAEB1B1B1B1B1B1B1B1B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B3B6B6B3
-B3B3B3B3B3B3B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABAEAEAEAEAEABABABABABABABABAB
-ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA9A9
-A9A9A9ABABABABA9A9A9A9A9A9A9A9A6A6A6A9A9A6A6A6A6A6A6A6A9A9A9A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494
-94949494949494929292929292928F8F928F8C89878784817F7C797474716C6A666161616166676A
-6E7274797F8185878787898989898787878584817F7F7F7C7C7C7C7C7C7C7C7C7C7F7F8184848587
-878785848481817F7F81818184848481818181848485858585858585858585858585858585858481
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F
-7F8184848481817F7F7F7F7F7C7C7C7C7F8487878789898C8E8E8E8C8989898787847F7C79767274
-747676747F878E9294999C9C9C9E9E9E9EA4A6A9AEB6BBC0C1C6C6CCCFCFD4D9DFE4E7ECF1F1ECEC
-ECE6E1DFD9D9D4D1CFCFCCC8C6C1C1C0BBBBBBBBBBBBBBBBB9B9B9B9B9B7B6B3B1B1B1AEAEAEAEAE
-ABA9A9A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A99949699999A9A9A9A
-99999999999994949499999A9A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A999494949499949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292928F8F8E8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989898989
-898787878787FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F92929292
-9494949494999A9A9A9A9A9A9C9C9C9E9E9E9EA1A4A4A4A4A4A6A6A6A6A6A6A9ABABABABABABABAB
-AEAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B3B3B3
-B3B3B3B3B3B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABAEABABABABABABABABAB
-ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA9ABABABABA9A9A9
-A9A9A9A9ABABABA9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A999994949494949494
-94949494949494949292929292928F9292928E89898787817F7F7C7674726E6A676461616161666A
-6C7274767C7F8184858789898989898787878481817F7F7C7C7C7C7C7C797C7C7C7F7F8184858787
-87878787878584818181818484858584818184858585858585858585858585858585858585858584
-817F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F
-7F8181817F7F7F7F7F7F7F7C7C7C7F7F818587878989898E8E8E8E8989898787857F7C7976727474
-76767C81898E9294999C9E9E9EA1A4A4A4A6A9AEB1B9BEC1C6C8CCCFD3D4D9DFE4E7ECEEF2F1ECEC
-E7E6E1DCD9D4D3CFCFCCCCC8C6C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B7B6B3B1B1B1AEAEAEAEAE
-ABA9A9A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A999999999A9A9A9A9A
-9999999A9A9994949999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A999994949699949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292928F8F8E8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989898989898989898989
-898989878787FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F92929292
-94949494949A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A9A9ABABABABABABABAB
-AEAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B3B3
-B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA9A9A9ABABA9A9A6
-A9A9A9A9A9A9A9A9A9A6A6A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A99999994949494949494
-9494949494949494929292929292929292928F8C89898785817F7C7C7674726C6A67616161616167
-6A6C7274767C7F81848587898989898787878584817F7F7F7C7C7C7C79797C7C7C7F7F7F81858787
-87878787878785848184848485858585848485858585858585858585858585858585858585858584
-81817F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7C7C7C7F7F8185878989898C8C8E8E8E8C8989878787817C7C7674747676
-767C85898F9294999C9E9EA3A4A4A4A6A6A9AEB1B7BEC1C6C8CCCFD3D4D9DFE1E7ECECF2F2EEECEC
-E7E4DFDCD9D4D3CFCCCCC8C6C6C1C1BEBBBBBBBBBBBBBBB9B9B9B9B9B9B7B6B3B1B1B1AEAEAEAEAE
-ABA9A9A6A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9999999A9A9A9A9A
-9A99999A9A99999499999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9994949999999494949496949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292928F8F8F8F928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989898989
-898989898787FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-94949494999A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A9A9ABABABABABABABAB
-ABAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1AEB1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEB1B1B1B1B1
-B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEABABABABABABABABABAB
-ABABABABABABAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABABABABABABABABABABABA9A9ABABABABABABABABA9A9A9A9A9A9A9A6
-A6A6A9A9A9A9A9A9A9A6A6A6A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A99999494949494949494
-949494949494949492929292929292929292928E8989898784817F7C7C7674726C6A666161616166
-676C717274797C7F81848787898989898787878584817F7F7C7C7C7C7979797C7C7C7F7F81848787
-87878789878787858484858785858585858585858585858585858585858585858585858585858585
-84817F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7C7C7C7C7C7F81858789898C8E8E8E8E8E8C8989898787817F7B767474767674
-7F878E929294999C9EA4A4A4A4A6A6A6A9AEB1B6B9C0C6C8CCCFD3D4D9DCE1E6ECECEEF2F2ECECE9
-E7E1DFD9D9D4D1CFCCC9C8C6C4C1C1BEBBBBBBBBBBBBBBB9B9B9B9B9B9B7B6B3B1B1B1AEAEAEAEAE
-ABA9A9A6A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C9C9A9A9A9A9A9A9A99999A9A9A9A9A9A
-9A999A9A9A9A999699999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9999969999999694949499949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949492929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292928F8F9292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929294
-94949494999A9A9A9A9A9A9C9C9C9E9E9E9EA1A4A4A4A4A4A6A6A6A6A6A6A9ABABABABABABABABAB
-ABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEB1B1B1B1B1
-B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABABABABAB
-ABABABABABABABABABABABABABABAEAEAEABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABABABABABABA9A9A9A9ABABABABABABABABABABA9A9A9A9ABABABABABA9A9A9A9A9A9A9A9A6
-A6A6A6A6A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A99969494949494949494
-949494949494949492929292929292929292928E898989878784817F7F7B7474716C6A6661616161
-666A6C7274767C7C7F818487898989898987878784817F7F7C7C7C7C7C76767C7C7C7F7F81848787
-87878989898787878785878787878585858787858585858585858585858585858585858585858585
-8481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7C7C7C7C7C7C7C7F81878789898E8E8E8E8E8E8E8989898787847F7974747476767681
-898F9294949A9C9EA4A6A6A6A6A6A9A9AEB1B3B9BEC1C6CCCFD1D4D9DCE1E4E7ECECEEF2EEECECE7
-E6E1DFD9D4D3CFCFCCC8C6C6C4C1C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B6B3B1B1B1AEAEAEAEAE
-AEA9A9A9A6A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9C9A9A999A9A9A9A9A9A
-9A9A9A9A9A9A9999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9999999A9A9994949699969494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929294
-949494969A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A9A9ABABABABABABABABAB
-ABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEB1B1B1B1B1
-B1B1B1B1B1B1B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABAB
-ABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABABA9A9ABABAB
-ABABABABABABABABA9A9A9A9A9A9ABABABABABABABABA9A9A9A9A9A9ABABABA9A9A6A9A9A9A9A6A6
-A6A6A6A6A6A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A969494949494949494
-949494949494949492929292929292929292928F8C898989878785817F7C797472716A6764616161
-61676A6C7274767C7C7F8185878989898987878784817F7F7C7C7C7C7C7976797C7C7F7F81848587
-87898989898987878787878787878785878787878785858585858585858585858585858585858585
-8584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7C7C7C7C7C7C7C7C7F81878789898C8E8E8E8E8E8E8C89898787857F7674747676767C8489
-929294999A9C9EA4A6A6A6A6A9A9ABAEB1B1B7BCC1C6CCCFD1D4D9DCDFE1E6E7ECECEEF2EEECE9E7
-E4E1DCD9D4D3CFCCCCC8C6C6C1C1C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B6B3B1B1B1AEAEAEAEAE
-AEA9A9A9A6A6A6A6A6A4A4A4A4A19E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9C9A9A999A9A9A9A9A9A
-9A9A9A9A9A9A9A99999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9999999A9A9996949999999494949496949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929494
-949494999A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A9A9ABABABABABABABABAB
-ABABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1
-B1B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABAB
-ABABABABABABABABABABABABABABA9ABABABABABABABABABABABABABABABABABABABABA9A9A9A9A9
-ABABABABABABABABA9A9A9A9A9A9A9A9A9ABABABABA9A9A9A9A9A9A9A9A9A9A9A9A6A6A6A9A9A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494
-949494949494949492929292929292929292928F8E89898989878787847F7C7674726C6A67616161
-6164676A6C7274767C7F7F81878789898989878785817F7F7C7C7C7C7C7976797C7C7F7F7F818587
-87898989898989878787878787878787878787878787878585858585858585858585858585858585
-858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7C7C7C7C7C7C7C7C7F81878789898C8E8E8E8E8E8E8C89898987857F7674747674747C878992
-94949A9C9C9EA4A6A9A9A9A9ABAEAEB1B1B7B9BEC4C9CFD1D4D9D9DFE1E1E6ECECECEEF2ECECE7E6
-E1DFD9D9D4D1CFCCC9C6C6C6C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B6B3B1B1B1AEAEAEAEAE
-AEABA9A9A9A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9C9C9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A999A9A9A9A99969999999994949499949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8989898989898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292949494
-949494999A9A9A9A9A9A9C9C9C9E9E9E9EA1A4A4A4A4A4A6A6A6A6A6A6A9A9A9ABABABABABABABAB
-ABABAEAEAEAEABAEAEAEAEAEAEAEAEAEAEAEAEB1B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEB1B1B1B1
-B1AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABAB
-ABABABABABABABABABABABABABA9A9A9A9A9A9A9A9ABABABABABABABABABABABABABA9A9A9A9A9A9
-A9A9A9ABABABABA9A9A9A6A9A9A9A9A9A9A9A9ABABA9A9A6A6A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494
-949494949494949494929292929292929292928F8E8C89898989898787847F7C7674726C6A666161
-6161666A6C717274797C7F7F84878789898787878584817F7F7C7C7C7C7C76797C7C7F7F7F818487
-87898989898989898787878787898787878787898787878787878585858585858585858585858585
-85858481818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7C7C7C7C7C7C7C7C7F8487878989898E8E8E8E8E8E8E89898987847F7974747474798187899294
-999A9C9C9EA3A6A9AEAEAEAEAEB1B1B3B7B9BEC1C6CCCFD3D7D9DCDFE1E4E7ECECECEEF1ECE9E7E4
-E1DFD9D4D3CFCFCCC8C6C6C4C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B6B3B1B1B1AEAEAEAEAE
-AEABA9A9A9A6A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9C9C9A9A9C9C9C9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9999999A9A9994949999999494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949492
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9294949494
-9494969A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A6A9A9A9ABABABABABABABAB
-ABABAEAEABABABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEB1AEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABAB
-ABABABABABABABABABABABABABA9A9A9A9A9A9A9A9A9A9A9A9ABABABABABABABABABA9A9A9A9A9A9
-A9A9A9A9A9A9ABA9A9A6A6A6A6A9A9A9A9A9A9A9A9A9A9A6A6A6A6A6A9A9A9A9A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494
-94949494949494949492929292929292929292928F8E8E8C8C8989898787817F7C7674716C6A6661
-616161666A6C727476797C7F81848789878787878784817F7F7C7C7C7C7C79797C7F7F7F7F818487
-87878989898989898989878789898987878789898989878787878787858585858585858585858585
-8585858484848484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7C7C7C7C7C7C7C7F7F8487878789898C8E8E8E8E8E8E8C898987847F7C747474747C87898E92949A
-9C9C9E9EA3A6A9AEAEAEAEAEB1B1B3B7B9BBC1C6CCCFD3D4D9DCDFE1E4E6E7ECECECEEEEECE7E6E4
-E1DED9D4D3CFCCC9C8C6C6C1C1C1BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B6B3B3B1B1AEAEAEAEAE
-AEABA9A9A9A9A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C9C9C9A9C9C9C9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A99999A9A9999949999999694949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949492
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292928F8F8E8E8E8E8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494999A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A6A6A9A9ABABABA9A9ABABAB
-ABABABABABABABAEAEAEAEAEAEAEABABAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABA9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9ABABABABA9A9A9A6A6A6A9
-A9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A9A9A9A9A9A9A6A6A6A6A6A6A6A6A9A9A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A4A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999494949494949494
-94949494949494949492929292929292929292928F8E8F8E8E8C8C89898787817C7974726E6A6761
-61616161676A6C7274767C7C7F818787878787878784817F7F7C7C7C7C7C7C797C7F7F7F7F818485
-87878989898989898989898989898989898989898989898987878787878787878585858585858585
-858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C
-7C7C7C7C7C7C7F7F8185878789898C8E8E8E8E8C8C89898787817F76747474727F87899294999C9C
-9C9E9EA4A4A6AEB1B1B1B1B1B3B6B9B9BBC0C6C8CFD1D4D9D9DFE1E4E6E6ECECECECEEECECE7E4E1
-DFDCD9D4D1CFCCC8C6C6C6C1C1C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B7B3B3B1B1AEAEAEAEAE
-AEABABA9A9A9A6A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A999A9A9A9A999999999A9994949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292928F8F8E8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494999A9A9A9A9A9A9C9C9C9E9E9E9EA1A4A4A4A4A4A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9ABABAB
-ABABABABABABABABAEAEAEAEABABABABAEAEAEAEAEAEAEAEAEAEAEABABAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEAEAEAEAEAEAEAEABABABABABABABABABABABABABABABABABABABABABABABABABABABAB
-ABABABABABABABABABABABABA9A9A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A6A6A6A6A6
-A6A6A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A4A6A6A6A6A6A4A4A4A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9694949494949494
-94949494949494949492929292929292929292928F8F8F8F8F8E8E8E898987857F7C7674726C6A66
-6161616164676A6E7274767C7F7F8487878787878784817F7F7F7F7C7C7C7C7C7C7F7F7F7F7F8185
-87878989898989898989898989898989898989898989898989898987878787878787878785858585
-85858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C
-7C7C7C7C7C7F7F818487878989898E8E8E8E898989898787817C76747474717C878E92949A9C9C9E
-9EA3A4A6A6ABAEB1B1B1B1B3B6B9B9BBC0C1C6CCCFD3D4D9DCDFE1E6E7E7ECECECECEEECE7E6E4E1
-DFD9D4D4D1CFCCC8C6C6C4C1C1C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B7B6B3B1B1B1AEAEAEAE
-AEABABA9A9A9A6A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999A9A9999949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94929292929292929292929292929292929292929292929292929292929292929292929292929292
-92949292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292928F8F8E8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94999A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9ABAB
-ABABABABABABABABAEAEABABABABABABABAEAEAEAEAEAEAEABABABABABAEAEAEAEAEAEAEAEAEAEAE
-AEAEAEAEAEABABABABABABABABABABABABABA9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9
-A9A9A9A9A9A9A9A9ABABABABA9A9A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A9A9A6A6A6A6A6
-A6A6A6A6A6A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A4A4A6A6A6A4A4A4A4A4A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494
-9494949494949494949292929292929292929292928F8F92928F8F8E8C898787847F7C7674726C6A
-6661616161666A6C717474797C7F818487878787878581817F7F7F7F7F7F7C7C7C7F7F7F7F818184
-87878789898989898989898989898989898989898989898989898989898987878787878787858585
-8585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C
-7C7C7C7C7F7F818487878789898C8E8E8E8C89898787847F7C74747474727C878E92999A9C9E9EA1
-A4A4A6A6A9AEB1B1B3B3B3B6B9BBBBC0C1C6C8CFD3D4D9DCDFE1E4E7E7ECECECECECEEECE7E6E1DF
-DCD9D4D3CFCCC9C6C6C6C1C1C1C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B7B6B3B1B1B1AEAEAEAE
-AEAEABABA9A9A9A6A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A99949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94929292929292929292929292929292929292929292929292929292929292929292929292929292
-94949492929292949292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292928F8F8F92928F8F8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-94999A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9ABAB
-A9A9ABABABABABABABABABABABABABABABAEAEAEAEABABABABABA9A9A9ABAEAEAEAEAEAEAEAEAEAE
-ACABABABABABABABABABA9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9
-A9A9A9A9A9A9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A6A6A6A6A6A6A6A4A6A6A6A6A4
-A4A4A4A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A4A4A4A4A3A19E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494
-949494949494949494949292929292929292929292928F9292928F8F8E89898787817F797472716A
-676461616161666A6C7274767B7C7F81858787878585848181817F7F7F7F7C7C7C7F7F8181818184
-85878789898989898989898989898989898989898989898989898989898989898989898787878585
-858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C
-7C7C7F7F7F818485878789898C8E8E8E8C89898787817F7C74747474747C878F94999C9C9EA1A4A4
-A6A6A6A9ABAEB1B3B6B6B7B9BBBBC0C1C6C6CCD1D4D9D9DFE1E4E6E7ECECECECECECECECE7E4E1DF
-D9D9D4D1CFCCC8C6C6C4C1C1C1C0BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B1B1B1B1AEAEAE
-AEAEABABA9A9A9A6A6A6A6A6A4A4A4A4A19E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949292929292929292929292929292929292929292929292929292929292929292929292929294
-94949494929292949292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292928F929292928F8F8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949A9A9A9A9A9A9A9C9C9C9E9E9E9EA1A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A9A9A6A6A6A9A9A9A9
-A9A9A9ABABABABABABA9A9A9ABABABABABAEAEABABABABA9A9A9A9A9A9ABAEAEAEAEAEAEABABABAB
-ABABABABA9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9
-A9A9A9A9A9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A4A4A6A6A6A6A6A6A6A6A4A6A6A6A6A4A4A4A4A4A6A6A6A6A6A6A4A4A6A6A6A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A1A3A4A4A3A19E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999994949494949494
-9494949494949494949492929292929292929292929292929292928F8E8E898987857F7C7674726C
-6A676161616161676A6C7274767C7F7F81848585858585848181817F7F7F7F7C7C7F7F8181848484
-85878789898989898989898989898989898989898989898989898989898989898989898787878585
-858585858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C
-7F7F7F8181848587878989898E8E8E8E89898987817F7C74747472767F878E94999C9E9EA3A4A6A6
-A6A9A9ABAEB1B6B6B7B7B9BBBBC0C1C6C6CCCFD3D7D9DCDFE1E6E7ECECECECECECECECE7E6E1DFDC
-D9D9D4D1CFCCC8C6C6C1C1C1C1BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B1B1B1B1AEAEAE
-AEAEAEABABA9A9A9A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999694949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949492929292929292929292929292929292929292929292929292929292929292929292929294
-94949494929294949492929292949292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292928F8E8E8E8E8F8F8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C898989898989898989898989
-898989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-999A9A9A9A9A9A9A9C9C9E9E9E9E9EA3A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9
-A9A9A9ABABABABA9A9A9A9A9ABABABABABABABABA9A9A9A9A9A9A9A9A9ABAEAEABABABABABABABA9
-A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A4A4A4A6A6A6A6A6A6A6A4A4A4A6A6A4A4A4A4A4A4A6A6A6A6A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19EA1A3A4A3A19E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999694949494949494
-949494949494949494949292929292929292929292929292929292928F8E8C898787817F79767472
-6C6A6661616161666A6C717274797C7F7F8184858585858481818481817F7F7F7F7F7F8184848485
-87878787898989898989898989898989898989898989898989898989898989898989898987878785
-85858585858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7F
-7F818484858587878789898C8E8E8E8C898987847F7C747474727C81858C92999C9EA3A4A4A6A6A6
-A9ABAEAEB1B3B7B9B9B9B9BBC0C1C6C6C9CFD1D4D9DCDFE1E4E7ECECECECECECECECECE7E4E1DFDC
-D9D4D3CFCFC9C6C6C6C1C1C1C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B1B1B1B1B1AEAE
-AEAEAEABABA9A9A9A6A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949492929292929292929292929292929292929292929292929292929292929292929292929494
-94949494949494949494929294949492929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292928F8E8E8F8F8F8F8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C89898989898989898989
-8989898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-999A9A9A9A9A9A9C9C9C9E9E9E9E9EA3A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A9A9
-A6A9A9ABABA9A9A9A9A9A9A9ABABABABABABA9A9A9A9A9A9A9A9A6A9A9A9ABABABABABA9A9A9A9A9
-A9A9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A4A6A6A6A6A4A4A4A4A4A4A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A6A6A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9EA1A3A19E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999494949494949494
-949494949494949494949292929292929292929292929292929292928F8F8E8C8987847F7C797472
-716A676664616161666A6C727476797C7F7F8184858585858484848481817F7F7F7F7F8484858587
-878787878989898989898989898989898C8989898989898989898989898989898989898987878785
-858585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7F7F
-8184858585878787898989898C8E8C898987847F7C767674767F84878992949C9EA4A4A6A6A6A9A9
-ABAEAEB1B3B6B9B9B9B9BBBEC1C6C6C9CFCFD4D9D9DFE1E4E6E7ECECECECECECECECECE6E4DFDFD9
-D9D4D3CFCCC8C6C6C4C1C1C0C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B1B1B1B1B1AEAE
-AEAEAEAEABA9A9A9A9A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494929292929492929292929292929292929292929292929292929294949292929292949494
-94949494949494949494949294949494929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292929292928F8F8F92928F8F8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989
-89898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949496
-9A9A9A9A9A9A9A9C9C9E9E9E9E9EA1A3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A9A6A6
-A6A9A9A9A9A9A9A9A9A6A9A9A9ABABA9A9A9A9A9A9A9A9A6A6A6A6A6A9A9ABA9A9A9A9A9A9A9A9A9
-A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A6A6A6A6A6A6A6
-A6A6A4A4A6A6A6A4A4A4A4A4A4A4A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A4A4A4A4A4A3A19E9E9E9EA1A19E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494
-94949494949494949494929292929292929292929292929292929292928F8F8C898787817F7C7674
-726C6A676666616161676A6C7274767C7C7F81818485858585848485848181818181818485878787
-8787878789898989898989898989898C8E8C8C898989898989898989898989898989898989878787
-8585858585858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7F7F
-818585858587878989898989898C89898987817C7676747C7F87878992949C9EA4A6A6A6A9A9A9AB
-AEB1B1B3B6B9B9B9BBBEBEC1C4C6C9CCCFD3D7D9DEDFE1E4E6E7ECECECECECECECECE7E6E1DFDED9
-D9D4D1CFCCC8C6C6C1C1C1C0C0BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B1B1B1B1B1B1AE
-AEAEAEAEABABA9A9A9A6A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9C9C9E9C9C9C9C9A9A9A9A
-9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949292949492929292929292929292929292929292929292929294949292929292949494
-94949494949494949494949494949494949292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292928F92929292928F8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989
-898989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949499
-9A9A9A9A9A9A9A9C9C9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A9A9A9A9A9A6A6A6A6A9A9A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A9A9A9A9A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A6A6A6A6A6
-A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494
-9494949494949494949494929292929292929292929292929292929292928F8E898987847F7C7976
-74716C6A6767666161666A6C717274767C7F7F818485858585848585858481818481848587878787
-87878789898989898989898989898C8E8E8E8E8C8C89898989898989898989898989898989898787
-878585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7F7F81
-8485858587878989898989898C8C898987817C7674747F8787898C92949A9EA4A6A6A9A9A9ABABAE
-AEB1B3B6B9B9BBBBBEBEC1C1C6C8CCCFD3D4D9DCDFE1E1E4E7E9ECECECECECECECECE7E4E1DFDCD9
-D4D3CFCFC9C6C6C6C1C1C0C0BEBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B6B6B3B1B1B1B1B1B1AE
-AEAEAEAEAEABA9A9A9A9A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9C9C9E9E9C9C9C9A9A9A9A
-9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949292949494929292929292929292929292929292929292929494949492929294949494
-94949494949494949494949494949494949492929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292929292929292928F
-8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989898989
-8989FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949499
-9A9A9A9A9A9A9C9C9C9E9E9E9E9E9EA1A3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A9A9A9A6A6A6A6A6A6A9A9A9A9A9A9A9A6A6A6A6A6A6A6A6A6A6A9A9A9A9A9A9A9A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A6A6A6A6A6A6A4A4A4A4A4A4A6A6A6
-A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A1A1A3A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999994949494949494949494
-9494949494949494949494929292929292929292929292929292929292928F8E89898785817F7C79
-74726E6A676767646161666A6C727476797C7F7F8184858585858585858584848484858787878787
-878789898989898989898989898C8E8E8E8E8E8E8E8E8C8C89898989898989898989898989898787
-87858585858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7F7F8184
-85858587878789898989898C8C8989877F7C767476818789898F8F949A9CA4A6A9A9A9ABABAEAEAE
-B1B3B6B9B9BBBEBEBEC1C1C6C8CCCFD3D4D9D9DCDFE1E4E6E7ECECECECECECECECE7E6E1DFDCD9D9
-D4D3CFCCC8C6C6C6C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B6B3B3B1B1B1B1B1AE
-AEAEAEAEAEABABA9A9A9A6A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9C9C9C9E9E9C9C9C9C9A9A9C
-9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999694949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949292929292929292929292929292929292949494949494929494949494
-94949494949494949494949494949494949492929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989898989
-89FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF949494999A
-9A9A9A9A9A9A9C9C9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A9A6A6A6A6A6A6A6A6A9A9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A9A9A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A4A6A6A6A6A6A6A6A6A4A4A4A4A4A4A6A6A6A4A4A4A4A4A4A4A4A6
-A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19EA1A3A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C
-9E9E9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999694949494949494949494
-9494949494949494949492929292929292929292929292929292929292928F8E8C898787817F7C7C
-7674726C6A676767616166676A6C7274767C7C7F8181848585858585858585848485878787878787
-8989898989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8C898989898989898989898989878787
-858585858585858585848484817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C797C7C7C7C7F7F7F7F818485
-85858787878989898989898C898987817C79747F87898C8E929294999C9EA4A9A9ABABAEAEAEAEB1
-B1B6B9B9BBBBBEC0C1C1C6C6CCCFD1D4D7D9DCDFE1E1E4E6E7ECECECECECECE9E7E7E4E1DFDCD9D9
-D4D1CFCCC8C6C6C4C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B6B3B3B1B1B1B1B1AE
-AEAEAEAEAEABABA9A9A9A6A6A6A6A6A4A4A4A4A19E9E9E9E9E9E9E9E9E9C9E9E9E9C9C9C9C9A9A9C
-9C9C9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949292929292929292929292929292929294949494949494949494949494
-94949494949494949494949494949494949494929292929492929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92928F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF949494999A
-9A9A9A9A9A9A9C9C9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4
-A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A6A6A6A6A6A4A4A4A4A4A4A4A4A4A6A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9EA1A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C
-9C9E9E9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999494949494949494949494
-9494949494949494949292929292929292929292929292929292929292928F8E8C89898785817F7C
-797472716C6A6767666164676A6C717274767C7F7F81848485858585858585848587878787878789
-89898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E898989898989898989898987878785
-85858585858585848181817F7F7F7F7F7F7F7F7F7F7F7F7C7C797676797C7C7F7F7F818184848585
-858787878989898989898C898987817C79748787898E92929294999C9EA4A6A9ABAEAEAEAEAEB1B1
-B6B7B9B9BBBEC1C1C1C6C6C9CCCFD3D4D9D9DFDFE1E4E6E6E7ECECECECECECE7E7E6E1DFDCD9D9D4
-D3CFCFCCC6C6C6C1C1C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B1B1B1B1AE
-AEAEAEAEAEABABABA9A9A9A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9C9C9C
-9C9C9C9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949492929292929292929292929292929294949494949494949494949494
-94949494949494949494949494949494949494949292949494929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949A9A
-9A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C
-9C9C9E9E9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494
-949494949494949492929292929292929292929292929292929292929292928F8C8989878784817F
-7C7674726E6A6767676464676A6A6C727476797C7F7F818485858585858585858787878787878989
-898989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989898989898787878585
-85858585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7C7B767676797C7C7C7F7F7F81848585858585
-8587878789898989898C8C8987847F7C7C8789898F92929494999C9EA3A6A9AEAEAEAEAEB1B1B1B3
-B7B9B9BBBEC1C1C1C6C6C8CCCFD1D4D9D9DCDFDFE1E4E6E7E7ECECECECECE7E7E7E4E1DFD9D9D9D4
-D3CFCCC8C6C6C6C1C1C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B1B1B1B1B1
-AEAEAEAEAEABABABA9A9A9A6A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C
-9C9C9C9A9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494949994949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494929292929292929292929292929494949494949494949494949494
-94949494949494949494949494949494949494949494949494949292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989FF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494999A9A
-9A9A9A9A9A9C9C9E9E9E9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A3A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C
-9C9C9C9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999996949494949494949494949494
-949494949494949492929292929292929292929292929292929292929292928F8E8989898787817F
-7F797472726C6A6767676666676A6C6C7274767C7C7F7F8184858585858585878787878787898989
-8989898989898989898C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989898989878787858585
-858585858484817F7F7F7F7F7F7F7F7F7F7C7C7C7C7676797C7C7C7C7F7F7F7F8184858585858585
-8587878787898989898C8987847F7C7F898C8E92929494949A9C9C9EA4A6ABAEAEAEB1B1B1B1B3B7
-B9B9BBBEC0C1C4C6C6C8CCCFCFD3D4D9DCDFDFE1E4E6E6E7ECECECECECE9E7E7E6E1DFDCD9D9D4D4
-D1CFCCC8C6C6C6C1C1C0C0BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B6B6B3B3B3B3B3B1B1B1B1
-AEAEAEAEAEABABABABA9A9A6A6A6A6A6A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C
-9C9C9C9A9A9C9C9C9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999494999996949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949292929292929292929292949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949492929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8CFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494999A9A
-9A9A9A9A9A9C9C9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A4A4A4A6A6A6A6
-A6A6A6A6A4A6A6A6A6A6A6A6A6A6A6A6A4A4A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6
-A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A4A4A4A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A4A4A4A4A4A4A4A4A3A4A4A4A4A3A1A1A3A4A4A4A4
-A4A4A4A3A4A4A4A4A3A1A3A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C
-9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999994949494949494949494949494
-949494949494949292929292929292929292929292929292929292929292928F8E89898989878581
-7F7C767472716C6767676766676A6A6C717274797C7F7F8181848585858587878787878789898989
-8989898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898787878787878785858585
-8581818181817F7F7F7F7F7F7F7F7F7C7C7C79767676797C7C7F7F7F7F7F81818485858585858585
-8585878787898989898987817F7C7F89929292929494999A9C9C9EA4A6A9AEAEAEB1B1B1B1B3B6B9
-B9BBBEC0C1C1C6C6C8C9CCCFD1D4D9D9DCDFE1E1E4E6E7E7ECECECECECE7E7E6E6E1DFDCD9D9D4D3
-CFCFCCC6C6C6C4C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B1B1B1B1
-AEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999696999999949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949292929494929292929292949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8EFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94969A9A9A
-9A9A9A9A9C9C9C9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A6A6A6A6A4A4A4A4A4A6A6A6A6
-A6A6A4A4A4A6A6A6A6A6A6A6A6A6A4A4A4A4A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A6
-A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A6A6A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A3A4A4A4A4A4A4A4A4A4A3A4A4A4A4A3A1A1A3A3A4A4A4A4A4A3A1A3A4A4A4A39E9EA1A3A4A4A4
-A4A4A3A1A3A4A4A4A39EA1A3A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C
-9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999694949494949494949494949494
-949494949494929292929292929292929292929292929292929292929292928F8E8C898989898784
-817F797472726C6A6767676767676A6C6C7274767C7C7F7F81818485858587878787878989898989
-89898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898787878787878785858585
-84817F7F7F7F7F7F7F7F7F7F7F7F7C7C767676797C7C7C7C7F7F7F81818484858585858585858585
-85858587878787878787817F7C8189929494949494999A9C9C9EA3A6A9AEAEB1B1B1B1B3B3B6B9B9
-BBBBC0C1C1C6C6C6C9CCCFCFD3D4D9DCDFE1E1E4E6E6E7E7ECECECECE7E7E7E6E4E1DFD9D9D4D4D3
-CFCCC9C6C6C6C4C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1B1B1
-AEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A4A4A4A4A39E9E9E9EA19E9E9E9E9E9E9E9E9E9C9C9C9C
-9C9C9C9C9C9C9C9C9C9A9A9C9C9C9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999A99999494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949492929494949292929294949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949292929294929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8EFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94999A9A9A
-9A9A9A9A9C9C9E9E9E9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A6A6A4A4A4A4A4A4A4A6A6A6A6
-A4A4A4A4A4A6A6A6A6A6A6A4A4A4A4A4A4A4A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A4A4A4A4A4A4A4
-A4A3A3A4A4A4A4A4A4A4A4A1A3A4A4A4A39E9E9EA1A3A4A4A4A4A39EA1A3A3A3A19E9E9EA1A3A3A4
-A4A4A39EA1A3A4A3A19E9E9EA3A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C
-9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999494949494949494949494949494
-949494949494929292929292929292929292929292929292929292929292928F8E8E8C8989898787
-817F7C767472716A6767676767676A6A6C6E7274797C7F7F7F818485858587878787898989898989
-898989898989898C8E8E8E8E8E8E8E8E8E8E8E8C898C8C8C89898989878787878585858585858584
-817F7F7F7F7F7F7F7F7F7F7F7C7C7C7676797C7C7C7F7F7F7F7F8184878787878785858585858585
-8585858787878787817F7F6C81899494949494999A9A9C9C9EA3A4A6ABAEB1B1B1B1B3B3B6B9B9BB
-BBC0C1C1C6C6C6C8CCCFCFD3D4D9D9DFDFE1E4E6E6E7E7E9ECECECE9E7E7E6E6E1DFDCD9D9D4D3D1
-CFCCC8C6C6C4C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1B1B1
-AEAEAEAEAEAEABABABA9A9A6A6A6A6A6A6A6A4A4A4A3A19E9E9EA1A19E9E9E9E9E9E9E9E9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9A9C9C9C9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999A9A999494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949292929494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949492929494949292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8EFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF94999A9A9A
-9A9A9A9A9C9C9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A6A4A4
-A4A4A4A4A4A4A6A6A6A4A4A4A4A4A4A4A4A4A4A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A4A4A4A4A4A4A4A4A4A1A1A3A3A4A4A4A4A4
-A3A1A1A1A3A4A4A4A4A4A3A1A1A3A3A3A19E9E9E9EA1A3A3A4A3A19E9E9EA1A39E9E9E9E9E9EA1A3
-A4A3A19E9EA1A3A39E9E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C
-9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494949494
-94949494949292929292929292929292929292929292929292929292929292928E8E8E8C89898987
-84817F797472726C6A6767676767676A6A6C7274767C7C7F7F7F8185858585878789898989898989
-8989898989898C8E8E8E8E8E8E8C8C8C8E8E8C898989898989898787878785858585858585858481
-7F7F7F7F7F7F7F7F7F7C7C7C7C7976797C7F7F7F7F7F7F7F81848787878787878785858585858585
-848484818181817F7F7C72818C9294999999999A9A9C9C9EA1A4A6A9AEAEB1B1B1B1B3B7B9B9BBBB
-C0C1C1C6C6C6C8CCCCCFD1D4D7D9DCDFE1E1E4E6E6E7E7ECE9E7E7E7E7E6E6E4E1DFDCD9D4D4D3D1
-CFCCC6C6C4C1C1C1C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1B1B1
-AEAEAEAEAEAEABABABABA9A6A6A6A6A6A6A6A4A4A4A4A39E9E9EA3A39E9E9E9E9E9E9E9E9E9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A999994949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949492929494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949492929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8EFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF999A9A9A9A
-9A9A9A9C9C9C9E9E9E9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A6A4A4A4A4A4A4A4A4A4A4A4A4A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A3A3A3A3A4A4A4A4A4A4A4A4A4A4A3A1A3A3A4A4A4A4A4A3A19E9EA1A3A3A4A4A4
-A39E9E9EA1A3A3A4A4A4A19E9E9EA1A39E9E9E9E9E9E9EA1A3A39E9E9E9E9EA19E9E9E9E9E9E9EA1
-A3A39E9E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C
-9A9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999996949494949494949494949494949494
-94949494929292929292929292929292929292929292929292929292929292928F8E8E8C89898987
-87817F7C7674726C6A6A6767676767676A6C6E7274797C7C7F7F8184858585878789898989898989
-89898989898C8E8E8E8E8E8E8C8989898C8C8989898989878787878787858585858585858584817F
-7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7F7F7F7F7F7F81818487878789898987878585858584848181
-81817F7F7C7C7C7C7C74818C92949A9A9A9A9A9C9C9C9E9EA4A6A6A9AEAEB1B1B1B3B6B9B9BBBBBE
-C1C1C4C6C6C8CCCCCFCFD3D4D9D9DFDFE1E4E4E6E6E7E7ECE7E7E7E7E6E6E4E1E1DFD9D9D4D4D3CF
-CFCCC6C6C4C1C1C1C0C0BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1B1B1
-AEAEAEAEAEAEABABABABA9A6A6A6A6A6A6A6A6A4A4A4A3A19EA1A3A3A19E9E9E9E9E9E9E9E9C9C9C
-9C9E9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9C9C9C9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9996949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8EFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF999A9A9A9A
-9A9A9A9C9C9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A3A3A3A3A3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A3A4A4A4
-A4A4A4A4A4A4A4A39EA1A1A3A3A3A4A4A4A4A4A4A3A19E9EA1A3A3A4A4A4A19E9E9E9E9EA1A3A3A3
-A19E9E9E9E9EA1A3A3A3A19E9E9E9E9E9E9E9E9E9E9E9E9EA1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E
-A1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9E9E9E9E9C9C9C9C9C9A
-9A9A9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999994949494949494949494949494949494
-94949494929292929292929292929292929292929292929292929292929292928F8E8E8E8C898987
-87847F7C797474726C6A6767676767676A6A6C7274767C7C7F7F8184858585878789898989898989
-898989898C8E8E8E8E8E8E8C89898989898989898987878785858585858585858484848181817F7F
-7F7F7F7F7F7F7C7C7C7C7C7C7C7C7F7F7F7F7F7F81848587878989898987878785858584817F7F7F
-7F7F7F7C7C7C7C7C79818992949A9C9C9C9C9C9C9C9E9EA4A6A6A9ABAEB1B1B1B3B6B7B9B9BBBEC1
-C1C4C6C6C8CCCCCFCFD1D4D9D9DCDFE1E1E4E4E6E7E7E7ECE7E7E7E7E6E4E1E1DFDCD9D9D4D3D1CF
-CCC9C6C6C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B1B1
-AEAEAEAEAEAEABABABABA9A6A6A6A6A6A6A6A6A4A4A4A4A19EA1A3A4A39E9E9E9E9E9E9E9E9E9C9C
-9C9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9C9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8EFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9C9C9C9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A3A3A3A3A3A1A1A1A1A19E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A3A1A1A1A1A3A3A3A3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39EA1A1A3A3A3
-A4A4A4A4A4A4A3A19E9E9E9EA1A1A3A3A4A4A4A4A39E9E9E9E9EA1A1A3A3A19E9E9E9E9E9E9EA1A3
-9E9E9E9E9E9E9E9EA1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9E9E9E9C9C9C9C9C9A
-9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999494949494949494949494949494949494
-94949492929292929292929292929292929292929292929292929292929292928F8E8E8E8E898989
-8785817F7C7674726C6A6A6767676767676A6C717476797C7F7F8184858585878787898989898989
-8989898C8C8E8E8E8E8E8C89898989898989898987878785858585858585858584817F7F7F7F7F7F
-7F7F7F7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F8184878787878789898987878785858584817F7F7F7F
-7F7C7C7C7C7C7C7C81899294999C9C9C9C9C9C9C9E9EA4A4A6A6A9ABAEB1B1B1B3B6B9B9BBBEC0C1
-C4C6C6C8CCCCCFCFD1D3D4D9D9DCDFE1E1E4E6E6E7E7E9ECE7E7E7E7E4E1E1E1DFDCD9D4D4D3CFCF
-CCC8C6C6C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B1B1
-AEAEAEAEAEAEABABABABA9A6A6A6A6A6A6A6A6A6A4A4A4A3A1A3A3A4A3A19E9E9E9E9E9E9E9E9C9C
-9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9C9C9C9A9A9A9A9C9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999494
-94949694949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949492
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8EFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9C9C9E9E9E9E9E9E9E9E9E9E9EA1A3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3
-A3A3A3A3A1A1A19E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A19E9E9E9E9E9EA1A1A1A1A3A3A3A3A4A4A4A4A4A4A4A4A4A4A19E9E9E9E9EA1
-A1A3A3A3A4A4A39E9E9E9E9E9E9E9EA1A1A3A3A3A19E9E9E9E9E9E9EA1A19E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9E9C9C9C9C9C9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99969494949494949494949494949494949494
-949492929292929292929292929292929292929292929292929292929292928F8F8E8E8E8E898989
-8787817F7C797674716C6A6767676767676A6A6C7274797C7F7F7F81848585858787898989898989
-89898C8C8E8E8E8E8E8C89898989898787878787878787858585858585858484817F7F7F7F7F7F7F
-7F7F7C7C7C7C7C7C7C7F7F7F7F7F8181818487878787878789898989878785858584817F7F7F7F7F
-7F7C7C7C7C727C84898F949A9C9E9C9C9C9C9C9C9EA3A4A6A6A9ABAEAEB1B1B3B6B9B9BBBEC0C1C1
-C6C6C8C9CCCFCFD1D3D4D7D9DCDCDFE1E1E4E6E6E7E7ECECE7E7E7E6E4E1E1DFDFD9D9D4D4D1CFCF
-CCC8C6C4C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B1B1
-AEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A6A6A4A4A4A3A1A3A4A4A4A19E9E9E9E9E9E9E9E9E9C
-9E9E9E9C9C9C9C9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9C9A9A9A9C9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999694
-94969994949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8EFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9C9C9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A3A1A1
-A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9EA1A1A1A3A3A3A3A4A4A4A4A3A19E9E9E9E9E9E
-9E9EA1A1A3A3A19E9E9E9E9E9E9E9E9E9E9EA1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A99999A9A9A9A9A9999949494949494949494949494949494949494
-9494929292929292929292929292929292929292929292929292929292928F8F8E8E8E8E8E8C8989
-8787847F7F7C7674726C6A6A67676767676A6A6C7274767C7C7F7F81848585858787898989898989
-89898C8C8E8E8E8E8C8C898989898787878787878787858585858481818181817F7F7F7F7F7F7F7F
-7F7F7F7C7C7C7C7F7F7F7F81818484858787878989898989898989878785858584817F7F7F81817F
-7F7F7C7C797F87898F949A9C9C9E9C9C9C9C9C9EA1A4A4A6A9A9AEAEB1B1B1B3B7B9B9BBBEC1C1C6
-C6C8C9CCCCCFCFD3D4D4D9D9DCDFDFE1E1E4E6E6E7E7ECE9E7E7E7E6E1E1DFDFDCD9D7D4D3D1CFCC
-CCC6C6C4C1C1C1C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B1B1
-AEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A6A6A4A4A4A4A3A3A4A4A4A3A19E9E9E9E9E9E9E9E9C
-9E9E9E9E9C9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9C9C9C9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9994
-94999999949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94929292929292929292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8EFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9EA1A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A3A3A4A4A4A4A4A4A4A4A4A4A3A3A3A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A3A1A19E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3A3
-A3A3A3A4A4A4A4A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A1A1A3A3A3A19E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A99999A9A9A9A999996949494949494949494949494949494949494
-94929292929292929292929292929292929292929292929292929292928F8F8F8E8E8E8E8E8C8989
-878785817F7C797474716C6A6A6A6A6A6A6A6A6C7174767C7C7F7F81848585858787878989898989
-898989898C8E8E8E8C898989898787878787878787858585858481817F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F818487878787878787898989898989898787878585858181818184848181
-7F7C6C7C8187898F949A9C9C9E9E9E9C9C9E9E9EA4A4A6A6A9ABAEAEB1B1B3B6B9B9BBBEC1C1C6C6
-C6C8CCCCCFCFD3D3D4D4D9DCDCDFE1E1E4E4E6E6E7E7ECE7E7E7E6E4E1E1DFDCD9D9D4D4D3CFCFCC
-CCC6C6C4C1C1C1C0C0BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B1B1
-B1AEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A6A6A6A4A4A4A3A3A4A4A4A4A19E9E9E9E9E9E9E9E9E
-9E9E9E9E9C9C9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9A9A9A9A9C9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999
-99999999969494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949292929292949292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292928F8F8E8E8E8EFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A4A4A3A3A3A4A4A4A4A4A4A4A3A3A4A4A4A4A4A4A4A4
-A4A3A3A1A3A4A4A4A4A4A4A4A3A3A3A19EA1A4A4A4A4A4A4A4A4A4A3A3A3A1A19E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A1A1A1A1A19E9E9E9E9E9E9E9E9E9E9E9E9EA1A1
-A1A1A1A1A1A1A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA19E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9E9E9E9E9C9C9C9E9E9E9C9C9C9C9C9C9C9C9C9C9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A999996999A9A9A999994949494949494949494949494949494949494
-929292929292929292929292929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8989
-878787847F7F7C7674726C6A6A6A6A6A6A6A6C6C717274797C7F7F7F818585858587878989898989
-8989898989898C8C898989898787878785858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F81858787878787878789898989898987878787858585858484848787848481
-7F617F8489898F949A9C9C9C9E9E9E9C9E9E9EA3A4A6A6A9ABAEAEB1B1B3B6B9B9B9BBC0C1C6C6C6
-C8C9CCCFCFD1D3D4D4D9D9DCDFDFE1E1E4E4E6E7E7E7ECE7E7E6E6E4E1DFDFDCD9D9D4D3D1CFCFCC
-C8C6C6C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B3B3B3B3B3B3B3B3B1B1
-B1AEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9C9E9E9E9E9C9C9C9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9C9A9A9A9C9C9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99
-99999A9A999494949494949494949494949494949494949494949494969494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949492929294949492929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292928F8F8EFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9EA1A3A3A19EA3A4A4A4A4A4A3A3A1A3A4A4A4A4A4A4A3A3
-A1A19E9EA1A3A4A4A4A4A3A3A19E9E9E9E9EA3A4A4A4A4A4A3A3A1A19E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9C9E9E9E9E9E9E9E9E9E9E9E9C9C9C9E9E9C9C9C9C9C9E9C9C9C9C9C9A9C9C9C9C9C9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9999969496999A99999494949494949494949494949494949494949494
-929292929292929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8989
-89878785817F7C7974726E6C6A6A6A6A6A6A6C6C717274767C7C7F7F818485858587878989898989
-89898989898989898989898787878785858585858585858481817F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F81848787878989898989898989898787878787878585858585858787878785847F
-7C8587898C9294999A9C9C9C9E9E9E9E9EA1A4A4A4A6A9A9AEAEAEB1B1B3B7B9B9BBBBC1C1C6C6C8
-C9CCCCCFCFD3D4D4D9D9D9DEDFDFE1E1E4E6E6E7E7E9ECE7E7E6E4E1E1DFDCD9D9D4D4D3CFCFCCCC
-C8C6C6C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1B1
-B1AEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E
-9E9E9E9E9E9C9E9E9E9E9C9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9A9A
-9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99
-999A9A9A999994949494949494949494949494949494949494949494999994949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494929494949494929292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9EA1A19E9E9EA1A4A4A4A3A3A19E9EA1A4A4A4A4A3A3A19E
-9E9E9E9E9EA3A4A3A3A1A19E9E9E9E9E9E9EA1A4A3A3A3A1A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9C9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9E9E9E9E
-9C9C9E9E9E9E9E9E9E9E9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9E9E9E9E9E9E9E9C9E9E9E
-9E9E9C9C9E9E9E9E9E9E9E9E9E9C9C9C9C9C9E9C9C9C9C9C9C9C9C9C9C9A9A9A9C9C9C9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9999949494969999969494949494949494949494949494949494949492
-9292929292929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8C89
-89878787847F7C7C7674726C6C6A6A6A6A6A6C6C717274767C7C7F7F818485858587878989898989
-898989898989878787878787878785858585848484848481817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F81818485878789898989898989898989878787858585858585858587878787878784747F
-87898C8E9294999A9C9C9C9E9E9E9E9EA3A4A4A4A6A6A9ABAEAEB1B1B3B6B9B9BBBBC0C1C6C6C6C8
-CCCCCFCFD1D4D4D9D9D9DCDFDFE1E1E1E4E6E6E7E7E7E7E7E6E6E4E1DFDFDCD9D9D4D4D1CFCFCCC9
-C6C6C4C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1B1
-B1AEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9C9A
-9A9A9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-999A9A9A9A9994949494949494949494949494949994949494949499999994949494969494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949292929292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA1A3A3A3A19E9E9E9E9EA3A4A3A3A19E9E9E
-9E9E9E9E9EA1A3A19E9E9E9E9E9E9E9E9E9EA1A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9C9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9C9C9E9E9E9E9E9E9E9E9C9C9C9C9E9E9E9E9E9E
-9C9C9C9C9E9E9E9E9E9E9C9C9C9C9E9E9E9E9E9E9C9C9E9E9E9C9C9C9C9C9E9E9E9E9E9E9C9C9E9E
-9E9C9C9C9C9C9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9C9C9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A999994949494949999949494949494949494949494949494949494949292
-92929292929292929292929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8C89
-8989878785817F7C767472716C6A6A6A6A6A6A6C71727476797C7F7F818485858587878789898989
-8989898987878787878787878785858585848181818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F81818484858787878989898C8C8C8C898989898787858585858585878787878789878785798489
-8F8F929294949A9C9C9C9C9E9E9E9EA4A4A4A6A6A6A9ABAEAEB1B1B3B6B7B9B9BBBBC1C1C6C6C8C9
-CCCCCFCFD3D4D9D9D9DCDFDFDFE1E1E4E4E6E6E6E7E7E7E6E6E4E1E1DFDCD9D9D7D4D3D1CFCCCCC8
-C6C6C4C1C1C1C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1B1
-B1AEAEAEAEAEAEABABABABA9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9A9C9C9C9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9999949494949494949494949494969994949494949499999999949494999994949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949492929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA3A19E9E9E9E9E9E9EA3A3A19E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9E
-9E9E9C9C9C9C9C9C9C9C9C9E9E9E9E9E9C9C9C9C9C9C9C9C9C9E9E9E9E9E9C9C9C9C9C9C9E9E9E9C
-9C9C9C9C9C9C9E9E9E9C9C9C9C9C9C9E9E9E9E9C9C9C9C9C9E9C9C9C9C9C9C9C9E9E9E9C9C9C9C9E
-9E9C9C9C9C9C9C9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A999694949494949494949494949494949494949494949494949494949292
-929292929292929292929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8E8C89
-8989898787817F7C7C7674726C6C6A6A6A6A6A6C6E727474797C7F7F7F8184858585878789898989
-898989878787878585858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-81848585858587878989898C8C8C898989898987878785858587878787878989898787877987898F
-9292949494999A9C9C9E9E9E9E9EA3A4A6A6A6A6A6A9ABAEAEB1B1B3B7B9B9BBBBC0C1C4C6C6C8CC
-CCCFCFD1D3D4D9D9DCDCDFDFE1E1E1E4E4E6E6E6E6E7E6E6E4E4E1E1DFDCD9D9D4D4D3CFCFCCCCC8
-C6C6C4C1C1C1C0C0BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1B1
-B1AEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9A9C9C9C9C9A9A9A9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A999994949494969494949494949999999494949499999A9A99999499999996949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9EA19E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E
-9E9E9C9C9C9C9C9C9C9C9C9C9C9C9E9C9C9C9C9C9C9C9C9C9C9C9C9E9E9C9C9C9C9C9C9C9C9C9E9C
-9C9C9C9C9C9C9C9C9E9C9C9C9C9C9C9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9E9C9C9C9C9C
-9C9C9C9C9C9C9C9C9E9E9E9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A999A9A9A9A9A99999494949494949494949494949494949494949494949494949494929292
-929292929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8C8C89
-8989898987847F7F7C797674726C6C6A6A6A6A6C6C727476767C7C7F7F8184858585878787898989
-8989878787878585858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81
-81858585858787898989898989898989898987878785858587878787898989898987847B87898F92
-94949496999A9C9E9E9E9E9E9EA1A4A4A6A6A6A6A9ABAEAEB1B1B3B6B9B9BBBBC0C1C1C6C6C8CCCC
-CFCFCFD3D4D9D9D9DCDCDFDFE1E1E1E4E6E6E6E6E6E6E6E4E4E1E1DFDFD9D9D9D4D3D1CFCFCCC9C6
-C6C6C4C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B1
-B1AEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9A9C9C9C9C9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9994949499999494949494969999999994949699999A9A9A999699999A99949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949292929292929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9E9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9E9E9C9C9C9C9A9A9A9C9C9C9A9A9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9999999A9A9A9999949494949494949494949494949494949494949494949494949492929292
-9292929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8C8C8989
-898989898787817F7F7C767472716C6A6A6A676A6C727476767C7C7F7F8184858585878787878789
-89878787878585858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81
-8485858587878789898989898989898989878787858585858787898989898989878176898C8F9494
-949499999A9C9C9E9E9E9EA1A1A4A4A6A6A6A6A9A9AEAEB1B1B3B6B7B9B9BBBEC1C1C4C6C8C9CCCC
-CFCFD1D3D4D9D9D9DCDFDFDFE1E1E1E4E6E6E4E4E6E6E4E4E1E1E1DFDCD9D9D4D4D3CFCFCCCCC9C6
-C6C6C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B1
-B1AEAEAEAEAEAEABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A39E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9A9C9C9C9C9A9A9A9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A999994949999999494949499999A9A99949499999A9A9A9A9A99999A9A99999494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9C9C9C9E9C9C9C9A9A9A9A9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9A9A9A9A9C9C9C9C9C9C9C9C9C9C9A9A9A9A9C9C9C9C9C9C9C9C9C9C9A9A9C9C9C9C9C9C
-9C9C9A9A9C9C9C9C9C9C9C9C9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9A9C9C9C9C9C9C9C9C9C9C9A9A9A9A9C9A9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A99999696999A9A9999949494949494949494949494949494949494949494949494949292929292
-92929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8C8C898989
-898989898787847F7F7C7C7674726C6C6A6A676A6C717476797C7C7F7F7F81858585858587878787
-878787878585858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184
-85858587878789898989898989898989878787858585858787898989898787877F76878F92949494
-99999A9A9C9C9E9E9E9EA1A3A4A4A6A6A6A9A9A9ABAEAEB1B1B3B6B9B9BBBEC1C1C4C6C6C8CCCCCF
-CFCFD1D3D4D9D9D9DCDFDFDFE1E1E4E4E6E6E4E4E6E4E4E1E1E1DFDFDCD9D9D4D4D1CFCFCCCCC8C6
-C6C4C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B1
-B1AEAEAEAEAEAEABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9E9E9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A999699999A999694949999999A9A9A999699999A9A9A9A9A99999A9A9A999994
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C
-9C9C9C9C9A9A9A9A9A9A9A9A9C9C9C9C9C9A9A9A9A9A9A9A9A9C9C9C9C9C9C9A9A9A9A9A9C9C9C9C
-9C9A9A9A9A9A9C9C9C9C9C9A9A9A9A9C9C9C9C9C9C9A9A9C9C9C9C9A9A9A9A9C9C9C9C9C9C9A9A9C
-9C9C9C9A9A9A9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A999994949699999994949494949494949494949494949494949494949494949494949292929292
-929292929292929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8C8C89898989
-89898987878785817F7F7C797674726C6A6A67676A6E7274767B7C7C7F7F81848585858585878787
-8787878585858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818485
-858587878789898989898989898989898787878787878787878989878787878174858F9494949699
-999A9A9C9C9E9E9EA1A3A3A4A4A4A6A9A9A9A9ABAEAEB1B1B3B6B9B9B9BBC0C1C4C6C6C8C9CCCFCF
-CFD1D3D4D4D9D9DCDCDFDFDFE1E1E4E4E6E6E4E4E4E4E1E1E1DFDFDCD9D9D7D4D3D1CFCCCCC9C8C6
-C6C4C1C1C1C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B1
-B1AEAEAEAEAEAEABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A39E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9E9E9C9C9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9999999A9A99949499999A9A9A9A9999999A9A9A9A9A9A9A9A9A9A9A9A9996
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949492929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9C9C9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C
-9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9C9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C
-9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9A9A9A9A9A9A9A9C9C
-9A9A9A9A9A9A9A9A9C9C9A9A9A9A9A9A9A9C9C9C9C9A9A9A9A9C9A9A9A9A9A9A9A9C9C9C9C9A9A9A
-9C9C9A9A9A9A9A9A9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-99999494949496999694949494949494949494949494949494949494949494949494929292929292
-9292929292929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8E8C8989898989
-8989878787878784817F7F7C7674726C6C6A6A676A6C727476797C7C7F7F81848485858585858585
-87878585858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81848585
-8585878789898989898989898989898987878787878789898787878787857F74848E94949499999A
-9A9A9C9C9C9EA1A3A3A4A4A4A4A6A6A9A9A9A9AEAEB1B1B1B6B7B9B9BBBEC1C1C6C6C8C8CCCCCFCF
-D1D3D3D4D9D9D9DCDCDFDFE1E1E1E4E4E6E6E4E1E4E1E1E1DFDFDFDCD9D9D4D4D3CFCFCCCCC8C8C6
-C6C4C1C1C1C0C0BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3B1
-B1B1AEAEAEAEAEABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9E9E9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A99999A9A9A999999999A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A9A99
-94949494999494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494929292929292929292929292929292929292929292
-929292929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C
-9C9C9C9C9C9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9C9C9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999999999A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9C9C9A9A9A9A
-9A9A9A9A9A9A9A9A9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99
-99969494949494969494949494949494949494949494949494949494949494949492929292929292
-9292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8C8989898989
-898989878787878581817F7C797674716C6A6A6A6A6C717274767C7C7F7F7F818184858585848184
-848485858585858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8184858585
-85878787898989898989898989898989898789898989898987878785817C74818C949499999A9A9A
-9A9C9C9C9EA1A3A4A4A4A4A4A6A6A9A9A9ABABAEAEB1B1B3B6B9B9BBBBC0C1C6C6C6C8CCCCCFCFCF
-D1D3D4D4D9D9D9DCDFDFDFE1E1E1E4E6E6E4E4E1E1E1E1DFDFDFDCD9D9D9D4D3D1CFCFCCC9C8C6C6
-C6C4C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B3B3B3B3B3B3B3B3B1
-B1B1AEAEAEAEAEABABABABABABA9A9A9A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A39E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9E9E9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A999A9A9A9A9999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99
-99949496999994949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949492929292929292929292929292929292929292
-9292929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C
-9C9C9C9C9C9E9E9E9C9C9C9C9C9C9C9C9C9C9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A999999999999999A9A9A9A9A9A9A9A9A9A9A9A9A9A99949699999999999A
-9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99
-99949494949494949494949494949494949494949494949494949494949494949492929292929292
-92929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989
-898989878787878784817F7C797674726C6A6A6A6A6A6E727476797C7F7F7F7F8181848484818181
-8181818184848484848484817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818485858585
-87878789898989898989898989898989898989898989898787847F7C7674818C9299999A9A9A9A9C
-9C9C9C9E9EA4A4A4A4A4A4A6A6A9A9ABABABAEAEB1B1B3B6B9B9B9BBBEC1C1C6C6C8C9CCCCCFCFD1
-D3D4D4D4D9D9D9DCDFDFDFE1E1E1E4E6E6E4E4E1E1E1DFDFDFDCD9D9D9D4D4D3CFCFCCCCC8C8C6C6
-C6C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1
-B1B1AEAEAEAEAEABABABABABABA9A9A9A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E
-9C9C9C9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-99999499999996949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494929292929292929292929292929292929292
-92929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9E9E9E9E9E9E9E9E9C9C9C9C9C
-9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9996949494949699999999999999999A9A9A9A9A9A99969494949494969999
-9999999A9A9A9A9A9A9A9A9A9999999999999A9A9A9A9A9A9A9A999999999A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999A9A9A9A99999A9A9A9A9999
-94949494949494949494949494949494949494949494949494949494949494949292929292929292
-929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989
-898989878787858584817F7F7C767474716C6A6A6A6A6C727274767C7C7C7F7F7F7F818181817F7F
-7F7F7F7F818181818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81848585858587
-878789898989898989898989898989898989898989878785817F7C747681899294999A9A9A9C9C9C
-9C9C9E9EA3A4A4A4A4A4A6A6A6A9ABABABAEAEB1B1B1B3B7B9B9BBBBC0C1C4C6C6C8CCCCCFCFCFD3
-D3D4D4D9D9D9DCDCDFDFDFE1E1E4E4E6E6E4E1E1E1DFDFDFDCDCD9D9D9D4D4D1CFCFCCC9C8C6C6C6
-C4C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1
-B1B1AEAEAEAEAEACABABABABABABA9A9A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A39E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9C9C9E9E9E9C9C9C9C9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A999699999A99949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949292929292949492929292929292929292
-92929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9E9E9E9E9C9C9C9C9C9C9C9C
-9C9A9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999999999999999999999A9A9A9A
-9A9A9A9A9A9A9A9A9A99949494949494949494949494969999999999999A99949494949494949494
-949699999999999A9A9A9A9A9994949496999999999A9A9A9A9A9994969999999A9A9A9A9A9A9A9A
-99999A9A9A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999999999A9A999996999A9A9A9996
-94949494949494949494949494949494949494949494949494949494949494929292929292929292
-9292929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989
-898989878787858585817F7F7C767474726C6A6A6A6A6C71727474797C7C7C7C7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181858585858787
-87898989898989898989898989898989878787878787847F7C76727981898F94999A9A9A9C9C9C9C
-9C9C9EA1A4A4A4A4A6A6A6A6A9A9ABAEAEAEAEB1B1B3B6B9B9BBBBBBC0C1C6C6C8CCCCCFCFCFD1D3
-D4D4D7D9D9D9DCDCDFDFE1E1E1E1E4E6E4E4E1E1DFDFDFDCDCD9D9D9D7D4D3D1CFCCCCC8C8C6C6C6
-C4C1C1C1C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1
-B1B1AEAEAEAEAEAEABABABABABABA9A9A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A3A19E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9C9E9E9E9E9C9C9C9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A99999A9A9A999494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494929294949494929292929292929292
-929292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9C9C9C9C9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9E9E9C9C9C9C9C9C9C9C9A9A
-9A9A9A9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9999999999999999999999999999999999999999999999999999999999
-99999999999999999994949494949494949494949494949494949496969994949494949494949494
-949494949496999999999A9996949494949494969999999A9A9996949494949999999A9A9A9A9A9A
-999999999A9A9A9A9A9A9999999A9A9A9A9A9A9A999A9A9A9A9A9999999A9A9A9A9A9A9A999A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99969496999A99999496999A999994
-94949494949494949494949494949494949494949494949494949494949492929292929292929292
-92929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-89898989878785858584817F7C79767474716C6A6A6C6C7172747476797B7C7C7C7C7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818184858585858787
-878789898989898989898989898987878787878785817F7C74747C81898F92949A9A9A9C9C9C9C9C
-9E9E9EA3A4A4A6A6A6A6A6A6A9ABAEAEAEAEB1B1B3B6B9B9B9BBBBBEC1C1C6C6C9CCCCCFCFD1D3D4
-D4D4D9D9D9D9DCDEDFDFE1E1E1E1E4E4E4E1E1E1DFDFDFDCD9D9D9D9D4D4D3CFCFCCCCC8C6C6C6C6
-C4C1C1C1C0C0BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B1
-B1B1AEAEAEAEAEAEABABABABABABABA9A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A19E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9C9C9E9E9E9C9C9C9C9E9C9C9C9C9A9A9A9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A999A9A9A9A999994949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949492929292929292
-9292929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9C9C9C9C9E9E9E9C9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A
-9A9A9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A99999999999999999996969494949494949494949494949494949494949494949494949494
-94949494949494969694949494949494949494949494949494949494949494949494949494949494
-949494949494949494969999949494949494949494949699999994949494949494969999999A9A99
-9694949999999A9A9A9999949999999A9A9A9A9A9999999A9A9996949999999A9A9A9A9A99999A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A99999494949699999494949499999494
-94949494949494949494949494949494949494949494949294949494949492929292929292929292
-92929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-89898989878785858584817F7C79767474726C6C6C6C6C71727474747676797C7C7C7C7C7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818485858585858587
-87878789898989898989898989878787858585847F7F7C76767C81898F92949A9A9A9A9C9C9C9E9E
-9E9E9EA3A4A4A6A6A6A6A6A9A9ABAEAEAEB1B1B1B3B7B9B9BBBBBEC0C1C4C6C8CCCCCFCFCFD1D3D4
-D4D4D9D9D9D9DCDFDFDFE1E1E1E1E4E4E1E1E1DFDFDFDCDCD9D9D9D9D4D3D1CFCFCCC9C6C6C6C6C6
-C4C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3
-B1B1AEAEAEAEAEAEABABABABABABABA9A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A3A19E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9E9E9C9C9C9C9C9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9996949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494929292929292
-92929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9C9C9C9C9E9C9C9C9C9E9E9E9E9E9C9C9C9C9C9C9C9C9A9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999A9A9A9A9A9A9A9A9A9A9A9A9A999999
-99999999969494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494929292929294949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949499999999
-94949494949699999999949494949999999A9A999694999999999494949499999A9A9A9999999999
-9A9A9A9A9A9A999A9A9A9A9A99999A9A9A9A99999A9A9A9999949494949494949494949494969494
-94949494949494949494949494949494949494949494929292949494949292929292929292929292
-929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-89898989878785858584817F7F7C76747474726C6C6C6C72727474767676797C7C7C7C7C7C7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181818184848585858585858585
-878787898989898989898989898787858585857F7F7C79797C84898E92949A9A9A9A9A9C9C9E9E9E
-9E9EA1A4A4A6A6A6A6A6A6A9A9ABAEAEAEB1B1B3B6B9B9B9BBBBC0C1C1C6C6C8CCCFCFCFD1D3D3D4
-D4D9D9D9D9DCDCDFDFDFE1E1E1E1E4E4E1E1E1DFDFDEDCD9D9D9D9D4D4D3CFCFCFCCC8C6C6C6C6C6
-C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3
-B1B1AEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A19E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9E9E9E9C9C9C9C9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A99949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949492929292
-92929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9C9C9C9C9C9C9C9C9E9E9E9C9C9C9C9C9C9C9C9A9A9A9A9C9C9C9C9C9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999994999A9A9A9A9A9A9A9A9999999999999694
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949492929292929292929292929294949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949994
-94949494949494969996949494949494999999999494949499949494949494969999999994949499
-999A9A9A9A9A99999A9A9A999999999A9A999996999A9A9999949494949494949494949494949494
-94949494949494949494949494949494949494949494929292929494929292929292929292929292
-9292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C89898989
-89898989878787858585817F7F7C7B76747474726E6C6C7272747476767676797C7C7C7C7C7C7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818485858587878787878585858585
-858787878989898989898989878785858585817F7C7C7C7F84898C9294999A9A9A9A9C9C9C9E9E9E
-9EA1A3A4A4A6A6A6A6A9A9A9A9AEAEAEB1B1B3B6B7B9B9BBBBBEC0C1C1C6C6C8CCCFCFCFD1D3D4D4
-D4D9D9D9D9DCDCDFDFE1E1E1E1E1E4E1E1E1DFDFDFDCDCD9D9D9D9D4D3D1CFCFCFCCC8C6C6C6C6C4
-C1C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3
-B1B1AEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A3A1
-9E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A999494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494929292
-929292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999999969494949496999A9A9A999999999996949494949494
-94949494949494949494949494949494949494949494949494949494949492929292929292929292
-92929292929292949494949494949292929292929292929292929292929292929494949494949494
-94949494949292929494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949699949494949494949494949494949499999694949494
-99999A9A9A999999999A9A9996949999999994949699999994949494949494949494949494949494
-94949494949494949494949494949494949494949492929292929292929292929292929292929292
-92929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8989898989
-8989898989878785858584817F7F7C767474747472716C7272747476767676767C7C7C7C7C7C7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818184858787878787878787878785858585
-858787878989898989898987878785858584817F7F7F7F848789929494999A9A9A9A9C9C9E9E9EA1
-A3A3A4A4A4A6A6A9A9A9A9A9ABAEAEB1B1B1B3B7B9B9BBBBBEC0C1C1C4C6C6C9CCCFCFCFD1D3D4D4
-D4D9D9D9D9DCDEDFDFE1E1E1E1E1E4E1E1DFDFDFDCDCD9D9D9D9D4D4D3D1CFCFCCCCC8C6C6C6C4C4
-C1C1C1C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3
-B1B1AEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A1
-9E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A999994949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949492
-9292929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9C9C9C9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A99999996949494949494949499999999969494949494949494949494
-94949494949494949494949494949494949494949494949494949494949492929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292949494
-94949494929292929292929294949494949494949494929294949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494969494949494
-94949999999994949699999994949496999694949494999494949494949494949494949494949494
-94949494949494949494949494949494949494949292929292929292929292929292929292929292
-929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989898989
-8989898989878785858584817F7F7C7C76747474747272727474747476767676797C7C7C7C7C7C7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818487878787878787878989898987878785858585
-8787878989898989898987878787858584817F7F7F818487898F9294999A9A9A9A9C9C9C9E9EA1A3
-A4A4A4A4A6A6A6A9A9A9A9ABABAEAEB1B1B3B6B9B9BBBBBBC0C1C1C1C6C6C8CCCFCFCFD1D3D3D4D4
-D4D9D9D9D9DCDFDFDFE1E1E1E1E1E1E1E1DFDFDFDCD9D9D9D9D9D4D4D3CFCFCFCCC9C8C6C6C6C4C4
-C1C1C1C0C0BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B3B3B3B3B3B3B3B3
-B1B1B1AEAEAEAEAEAEABABABABABABA9A9A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3
-A19E9EA1A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9999949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94929292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9C9C9A9A9A9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A
-9A9A9A9A9A9A9A9A9A99999996949494949494949494949496949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949292929292929292929292
-929292929292929292929292929292929292929292929292928F8F92929292929292929292929292
-92949492929292929292929292929294949494949494929292929294949494949494949492949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949499999694949494999494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494929292929292929292929292929292929292929292
-929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989898989
-8989898989878785858584817F7F7F7C797674747474747474747676767679797C7C7C7C7C7C7C7C
-7F7F7F7F7F7F7F7F7F81818181818181818484878789898989898989898989898787878585858587
-87878989898989898989898787878784817F7F81848787898E929494999A9A9C9C9C9C9C9E9EA3A4
-A4A4A4A4A6A6A6A9A9ABABABAEAEB1B1B3B6B9B9B9BBBBBEC0C1C1C6C6C6C8CCCFCFCFD1D3D3D4D4
-D9D9D9D9DCDCDFDFDFE1E1E1E1E1E1E1DFDFDFDCDCD9D9D9D9D4D4D3D1CFCFCCCCC9C6C6C6C4C1C1
-C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B3B3B3B3B3B3B3B3
-B1B1B1AEAEAEAEAEAEACABABABABABA9A9A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A19E9EA1A3A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A99969494949496949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949292929292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999A
-9A9A9A9A9A9A99999996949494949494949494949494949494949494949494949492949494949494
-9494949494949494949494949494949494949494949492929292929292929292929292928F8F8F8F
-8F8F8F8F8F8F8F8F8F9292929292929292929292929292928F8F8F8F8F8F8F8F9292929292929292
-92929292929292929292929292929292929294949492929292929292929494949494949492929294
-94949494949492929494949494949494949494949494949494949494949494949494949494949494
-94949494969494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949492929494949494929292929292929292929292929292929292929292
-9292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989
-898989898987878785858584817F7F7C7C79767474747476767676767676797C7C7C7C7C7C7C7C7C
-7F7F7F7F7F7F7F7F8184848484848485858787878989898989898989898989878787858585878787
-878989898989898989898989878785817F7F81848789898E8F9294999A9A9C9C9C9C9C9E9EA1A4A4
-A4A4A4A6A6A6A9A9ABABAEAEAEB1B1B1B3B7B9B9BBBBBEC0C1C1C4C6C6C6C9CCCFCFCFD1D3D4D4D4
-D9D9D9D9DCDCDFDFE1E1E1E1E1E1E1E1DFDFDCDCD9D9D9D9D9D4D4D3CFCFCFCCCCC8C6C6C4C1C1C1
-C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3
-B1B1B1AEAEAEAEAEAEAEABABABABABA9A9A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A3A19EA3A3A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A999494949499949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-949494949292929292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999996949699
-9A9A9A99999996949494949494949494949494949494949494949494949292929292929494949494
-94949494949494949492929292929292929292929292929292929292929292929292928F8E8E8E8E
-8E8E8E8E8E8E8E8E8E8F8F8F8F8F8F8F8F8F92929292928F8F8E8E8E8E8E8E8E8F8F8F8F8F929292
-92929292929292929292929292929292929292929292929292929292929292929494949292929292
-92949494949292929292949494949494929294949494949494949494949494949294949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949292929294949492929292929292929292929292929292929292929292
-92929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989
-898989898989878785858584817F7F7F7C7C79767676767676767676767676797C7C7C7C7C7C7C7F
-7F7F7F7F7F7F7F818485858585858787878787878989898C89898989898989878787878787878787
-8789898989898989898989878785848484848587898C8F92929494999A9C9C9C9C9C9E9E9EA3A4A4
-A6A6A6A6A6A6A9A9ABAEAEAEAEB1B1B3B6B9B9B9BBBBC0C1C1C1C6C6C6C8CCCCCFCFCFD1D3D4D4D4
-D9D9D9D9DCDEDFDFE1E1E1E1E1E1E1DFDFDFDCD9D9D9D9D9D4D4D3D1CFCFCCCCCCC8C6C6C1C1C1C1
-C1C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3
-B1B1B1AEAEAEAEAEAEAEAEABABABABABA9A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A1A1A3A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9E9C9C9C9C9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A999994949999999494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-9494949494949292929292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999999949494949499
-9A999996949494949494949494949494949494949494949494929292929292929292929494949494
-949292929292929292929292929292929292929292929292929292929292929292928F8E8E8E8E8E
-8C8C8C8C8C8C8C8C8C8C8E8E8E8E8E8E8E8E8F8F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F
-8F8F9292929292929292929292928F92929292929292929292929292929292929292929292929292
-92929292929292929292929294949492929292929494949494949294949494929292929494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949292
-94949494929494949494949292929292949292929292929292929292929292929292929292929292
-929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989898989
-89898989898987878585858481817F7F7F7C7C7C7976767679767676767676767C7C7C7C7C7C7F7F
-7F7F7F7F7F7F818485858585858787878789898989898C8E89898989898989898787878789898989
-89898989898989898989878787878787878787898E8F92929494969A9A9C9C9C9E9E9E9E9EA3A4A4
-A6A6A6A6A6A6A9ABAEAEAEAEB1B1B3B6B7B9B9BBBBBEC0C1C1C6C6C6C8C8CCCFCFCFD1D3D3D4D4D4
-D9D9D9D9DCDCDFDFDFE1E1E1E1E1DFDFDFDCDCD9D9D9D9D7D4D4D3CFCFCCCCCCC9C8C6C6C1C1C1C1
-C1C1C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3
-B1B1B1AEAEAEAEAEAEAEAEABABABABABA9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A3A1A3A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999969999999994949494949494949494949494949494949494
-94949494949494949494999994949494969994949494949494949494949494949494949494949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949292FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999969494949494949496
-99949494949494949494949494949494949494949492929292929292929292929292929292929292
-92929292929292929292929292929292928F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8F8E8E8E8E8E
-8C8989898989898989898989898C8C8C8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8C8C8C8E8E8E
-8E8F8F8F8F8F929292929292928F8F8F8F8F929292929292929292928F9292929292929292929292
-92929292929292929292929292929292929292929292949494929292929492929292929294949494
-94949294949494949494949494949494949494949494949494949494949494949494949494929292
-92949492929294949494929292929292929292929292929292929292929292929292929292929292
-9292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989898989
-8989898989898787858585858481817F7F7F7C7C7C7B7979797C7976767679797C7C7C7C7F7F7F7F
-817F7F7F7F818485858587878787878989898989898C8E8E8C898989898989898989898989898989
-8989898989898989898987878787878989898C8E8F9294949496999A9C9C9C9E9E9E9E9EA1A4A4A6
-A6A6A6A6A6A9A9ABAEAEAEB1B1B3B3B6B9B9B9BBBBBEC1C1C4C6C6C6C8CCCCCFCFCFD1D3D3D4D4D9
-D9D9D9D9DCDCDFDFDFE1DFDFDFDFDFDFDEDCD9D9D9D9D9D4D4D4D1CFCFCCCCCCC8C6C6C6C1C1C1C1
-C1C1C0C0BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3
-B1B1B1AEAEAEAEAEAEAEAEAEABABABABA9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A3A3A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999A9A9996949494949494949494949494949494949494
-94949494949494949496999999949494999999949494999996949494969994949494969994949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-94949494949494949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A9A9A9A9999999494949494949494949494
-94949494949494949494949494949494949292929292929292929292929292929292929292929292
-9292929292928F8F8F8F8F8F8F8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C
-8989898989898989898989898989898989898989898C8C8C8C8E8E8E8E8E8E8E8C89898989898C8C
-8C8E8E8E8E8F8F8F8F8F9292928F8E8E8E8E8F8F8F9292929292928F8E8F8F8F9292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929494
-94929292929494949494949494949494949494949494949494949494949494949494949492929292
-92929492929292929492929292929292929292929292929292929292929292929292929292929292
-9292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-898989898989878787858585858484817F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F81
-8184818181848587878787878787898989898C8C8C8E8E8E8E8C8989898989898989898989898989
-8C8C8C8C8C8E8C898989898787898989898E8E8F9294949499999A9A9C9C9C9E9E9E9EA1A3A4A4A6
-A6A6A6A6A9A9A9ABAEAEAEB1B1B3B6B7B9B9B9BBBBC0C1C1C6C6C6C8C9CCCCCFCFCFD1D3D4D4D4D9
-D9D9D9D9DCDCDFDFDFDFDFDFDFDFDFDFDCDCD9D9D9D9D4D4D4D3D1CFCCCCCCC9C8C6C6C4C1C1C1C1
-C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3
-B3B1B1AEAEAEAEAEAEAEAEAEABABABABA9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A3A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A99969494949494949494949494949494949494
-94949994949494949499999A99999499999A99999496999A99969494999999949494999999949494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-949494949494949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999999999A9A9A9A9A99999994949494949494949494949494
-9494949494949494949494949494929292929292929292929292929292929292929292929292928F
-8F8F8F8F8F8F8E8E8E8E8E8E8E8E8E8C8C8C8C8C8C8C8C8C8C8C8C89898989898989898989898989
-898989898989878787898989898989898989898989898989898989898C8C8C8E8C89898989898989
-8989898C8C8C8E8E8E8F8F8F8F8E8E8E8E8E8E8E8E8F8F8F92928F8F8E8E8E8F8F8F929292929292
-928F8F92929292929292929292929292929292929292929292929292929292929292929292929294
-92929292929294949494949492949494949492949494949292929494949492929494949492929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-89898989898989878785858585858484817F7F7F7F7C7C7C7C7C7C7F7C7C7C7C7C7C7F7F7F7F8181
-848585858584878787878789898989898C8E8E8E8E8E8E8E8E8C898989898C8C8C8C8E8E8E8E8E8E
-8E8E8E8E8E8E8C89898989898989898C8E8F8F92949499999A9A9A9A9C9C9E9E9EA1A3A3A4A4A4A6
-A6A9A9A9A9A9ABAEAEAEB1B1B1B3B6B7B9B9B9BBBBC0C1C6C6C6C8C8CCCCCFCFCFCFD1D3D4D4D4D9
-D9D9D9D9D9DCDFDFDFDFDFDFDFDFDFDCDCD9D9D9D9D7D4D4D4D3CFCFCCCCC9C8C8C6C6C4C1C1C1C1
-C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3
-B3B1B1AEAEAEAEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A3A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9C9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A999494949494949494949494949494949494
-949699999494949499999A9A9A999999999A9A999999999A9A999699999A99999499999A99999494
-94949494949494949494949494949494949494949494949494949494949494949494949494949494
-9494949494949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9999969494999A9A9A999996949494949494949494949494949494
-9494949494949494949494929292929292929292929292929292929292929292928F8F8F8F8F8F8E
-8E8E8E8E8E8C8C8C8C8C8C8989898989898989898989898989898989898989898989898989898989
-89898989898787878787878787878787878789898989898989898989898989898989898989898989
-898989898989898C8C8E8E8E8E8E8E8E8E8E8E8C8C8E8E8E8F8F8F8E8E8E8E8E8E8E8F8F8F929292
-8F8F8E8F8F9292929292928F8F92929292929292929292929292928F929292929292929292929292
-92929292929292929494949292929494949292929294949292929294949292929294949292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-8F8F92929292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89898989
-898989898989898787878785858585858481817F7F7F7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F818184
-8585858585878787898989898989898C8E8E8E8E8E8E8E8E8E8E8C8C8E8E8E8E8E8E8F8F8F8F8F8F
-8F8E8E8E8E8E8E8C89898989898C8E8F8F9292929494999A9A9A9C9C9C9C9E9EA3A3A4A4A4A4A6A6
-A6A9A9A9A9A9ABAEAEAEB1B1B1B3B6B9B9B9BBBBBEC1C1C6C6C6C8C9CCCCCFCFCFD1D3D3D4D4D7D9
-D9D9D9D9D9DCDEDFDFDFDFDCDCDCDCDCD9D9D9D9D9D4D4D4D3D1CFCFCCCCC8C8C6C6C6C1C1C1C1C1
-C1C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3
-B3B1B1AEAEAEAEAEAEAEAEAEABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A3A19E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9C9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999994949496999494949494969494949494
-9499999999949496999A9A9A9A9A99999A9A9A9A99999A9A9A9A99999A9A9A9A9999999A9A9A9996
-94949494949994949494949494949494949494949494949494949494949494949494949494949494
-9494949494949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9999969494949499999999949494949494949494949494949494949494
-949494949494949492929292929292929292929292929292929292928F8F8F8F8F8E8E8E8E8E8E8E
-8E8E8E8C898989898989898989898989898989898989898989898989898989898989898989898989
-89898989898787878787878787878787878787878787878787898989898989898989898989898989
-89898989898989898989898C8C8E8E8E8E8E8C8989898C8C8E8E8E8E8E8E8E8E8E8C8E8E8F8F8F92
-8F8E8E8E8E8F8F8F92928F8F8E8F8F9292929292928F8F9292928F8F8F8F92929292929292929292
-92929292929292929294929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292929292929292929292928F
-8F8F8F9292928F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89898989
-89898989898989898787878785858585858481817F7F7F7F7C7F7F7F7F7F7F7F7F7F7F7F81818485
-8585858587878787898989898989898E8E8E8E8E8E8E8E8E8E8E8E8E8F8F8F8F8F8F8F9292929292
-928F8E8E8E8E8E8E8C898C8C8E8F8F929292929494969A9A9C9C9C9C9C9E9E9EA3A4A4A4A4A4A6A6
-A6A9A9A9ABABABAEAEB1B1B1B3B6B7B9B9B9BBBBC0C1C4C6C6C6C8C9CCCCCFCFCFD1D3D3D4D4D9D9
-D9D9D9D9D9DCDCDFDFDFDCDCDCDCDCDCD9D9D9D9D4D4D4D4D3CFCFCCCCC9C8C8C6C6C6C1C1C1C1C1
-C1C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3
-B3B1B1AEAEAEAEAEAEAEAEAEABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A39E9E9EA1A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9C9C9C
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949499999994949496999494949494
-99999A9A99999499999A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A999A9A9A9A9A999A9A9A9A9A99
-96949494999999949494949494949494949494949494949494949494949494949494949494949494
-94949494949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9A9A9A9A9999999494949494949494969494949494949494949494949494949494949494
-9494949494929292929292929292929292929292929292928F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E89898989898989898989898989898787878787878787878787878787878787878787878787
-87878787878787858585858585858585878787878787878787878787878787898989898989898989
-89898989898989898989898989898C8C8C8C898989898989898C8C8E8E8E8E8E8C898C8C8E8E8E8F
-8E8E8C8C8C8E8E8F8F8F8F8E8E8E8E8F8F9292928F8F8F8F8F928F8E8E8E8F8F92929292928F8F92
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292928F8F
-8F8E8F8F928F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989
-8989898989898989898787878785858585858484817F7F7F7F7F7F7F7F7F7F7F7F7F7F8181848585
-85858587878787898989898989898C8E8E8E8E8E8E8E8E8E8E8E8F8F929292929292929292929292
-928F8E8E8E8E8E8E8E8E8E8E8E8F92929292949494999A9C9C9C9C9C9C9E9EA1A4A4A4A4A4A6A6A6
-A9A9ABABABAEAEAEAEB1B1B1B3B6B7B9B9B9BBBBC0C1C6C6C6C6C8CCCCCCCFCFCFD1D3D4D4D4D9D9
-D9D9D9D9D9DCDCDFDFDCDCD9D9D9D9D9D9D9D9D7D4D4D4D3D1CFCFCCC9C8C8C6C6C6C6C1C1C0C0C1
-C1C0C0BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3
-B3B1B1B1AEAEAEAEAEAEAEAEABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A3A19E9EA1A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9C9C9C
-9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999996999A9999949499999994949496
-99999A9A9A9999999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-99999496999A99999494949494949494949494949494949494949494949494949494949494949494
-949494949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9A9A9A9A9A
-9A9A9A9A9A9A99999994949494949494949494949494949494949494949494949492949494949494
-94949292929292929292929292929292929292928F8F8F8F8E8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8C89898989898989898989898989878787878787878787878787878787878787878787878787
-87878787878785858585858585858585858585848485858587878787878787878787878789898989
-898989898989898789898989898989898989898989898989898989898C8C8E8C89898989898C8C8E
-8E8C8989898C8C8E8E8F8E8E8C8C8C8E8E8F8F8F8F8E8E8E8F8F8F8E8E8E8E8F8F8F92928F8F8F8F
-92929292929292929292929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292929292929292929292928F8F
-8E8E8E8F8F8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C898989
-89898989898989898989878787878585858585858481817F7F7F7F817F7F7F7F7F81818484858585
-858587878787898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F92929292929292929292929292
-8F8E8E8E8E8E8E8E8E8E8E8E8F9292929494949494999A9C9C9C9C9E9E9E9EA3A4A4A6A6A6A6A6A6
-A9A9ABAEAEAEAEAEAEB1B1B1B3B6B9B9B9BBBBBEC1C1C6C6C6C8C8CCCCCFCFCFD1D1D3D4D4D4D9D9
-D9D9D9D9D9DCDCDFDFDCD9D9D9D9D9D9D9D9D9D4D4D4D3D3CFCFCCCCC8C8C6C6C6C6C4C1C1C0C0C0
-C1C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3
-B3B1B1B1AEAEAEAEAEAEAEAEABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A39E9EA1A3A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C
-9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999999A9A99999699999999949499
-999A9A9A9A9A99999A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A999999999A9A999996949494949999949494949494949494949494949494949494949494949494
-9494949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9999999A9A
-9A9A9A9A999996949494949494949494949494949494949494949494949494929292929494949492
-92929292929292929292929292929292928F8F8F8E8E8E8C8C8C8989898E8E8E8E8E8E8E8E8C8C8C
-8C898989898989898989898989898987878785858585858484848484848484848484848484848484
-84848484848484858585858585858585858584848181818484848485858787878787878787878787
-8989898989898787878787878989898989898989898989898989898989898989898989898989898C
-8C898989898989898C8E8E8C8989898C8C8E8E8F8E8E8C8C8E8E8E8E8E8E8E8E8E8F8F8F8F8E8E8E
-8F8F92929292928F9292929292929292929292929292929292929292929292929292929292929292
-9292929292929292929292929292929292929292929292929292929292928F9292929292928F8F8E
-8E8E8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989
-898989898989898989898987878787878585858585848481817F81818181817F8181848485858585
-8587878787898989898989898C8E8E8E8E8E8E8E8E8E8E8E8E8F929292929292929292929292928F
-8F8E8E8E8E8E8F8F8F8E8E8F9292929494949494999A9A9C9C9E9E9E9E9E9EA4A4A4A6A6A6A6A6A6
-A9ABAEAEAEAEAEAEB1B1B1B3B3B6B9B9BBBBBBC0C1C4C6C6C6C8C9CCCCCFCFCFD1D3D3D4D4D7D9D9
-D9D9D9D9D9D9DCDFDCDCD9D9D9D9D9D9D9D9D4D4D4D4D3D1CFCFCCC9C8C6C6C6C6C6C1C1C0C0C0C0
-C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3
-B3B1B1B1AEAEAEAEAEAEAEAEAEABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A3A1A1A3A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C
-9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9999999A9A99999699
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A99999A9A9A9A9A99999494949999999694949494949494949494949494949494949494949494
-9494949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9694999A9A
-9A999999949494949494949494949494949494949494949494949494929292929292929494929292
-929292929292929292929292928F8F8F8E8E8E8E8C8C898989898989898C8E8C8C8C898989898989
-89898989898989898989878787878787878785858585848181818181818181818181818181818181
-81818181818181818181818184848484848484817F7F7F8181818181818484848485858787878787
-87878787878787878787878787878787898989898989898987878989898989898989898989898989
-898989898989898989898C8989898989898C8C8E8E8C89898C8C8E8E8E8E8E8E8C8E8E8F8E8E8E8E
-8E8F8F9292928F8F8F8F929292929292929292929292929292929292929292929292929292929292
-92929292929292929292929292929292929292929292929292929292928F8F8F929292928F8F8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E898989
-89898989898989898989898989878787878585858585858481818184848481818184848585858585
-87878787898989898989898C8E8E8E8E8E8E8E8E8E8F8F8F8F92929292929292929292929292928F
-8E8E8E8F8F8F92928F8E8E8F92929494949499999A9A9C9C9C9E9E9E9E9EA1A4A4A6A6A6A6A6A6A9
-A9ABAEAEAEAEAEAEB1B1B1B3B6B7B9B9BBBBC0C1C1C6C6C6C6C8C9CCCCCFCFCFD1D3D4D4D4D7D9D9
-D9D9D9D9D9D9DCDCDCD9D9D9D9D9D9D9D9D9D4D4D4D3D3D1CFCCCCC8C8C6C6C6C6C6C1C1C0C0C0C0
-C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3B3
-B3B1B1B1AEAEAEAEAEAEAEAEAEABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A3A1A3A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C
-9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A999999
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A99999499999A9A9999949494949494949494949494949494949494949494
-94949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494999A99
-99999494949494949494949494949494949494949494949494949292929292929292929292929292
-928F92929292929292928F8F8F8E8E8E8C8C89898989898989898989898989898989898989898989
-89898787878787878787878787878787878585858584817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F8181818181817F7F7F7F7F7F7F7F7F7F8181818181848484858587
-87878787878787878585858787878787878787898989898787878787878989898989898989898989
-898989898989898989898989898989898989898C8C89898989898C8C8E8E8E8C8C8C8C8E8E8E8E8E
-8E8E8E8F8F8F8F8E8E8F8F9292929292928F92929292928F92929292928F92929292929292929292
-9292929292929292929292929292928F8F92929292928F92929292928F8F8E8F8F92928F8F8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989
-89898989898989898989898989898787878785858585858585848484858585848484878787878587
-87878789898989898989898C8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292928F
-8F8F8F9292929292928F8F929292949499999A9A9A9A9C9C9E9E9E9EA1A3A3A4A4A6A6A6A6A6A6A9
-A9ABAEAEAEAEAEAEB1B1B1B3B6B7B9B9BBBEC0C1C1C6C6C6C8C8CCCCCCCFCFCFD1D3D3D4D4D4D9D9
-D9D9D9D9D9D9D9DCD9D9D9D9D9D9D9D9D9D4D4D4D3D3D1CFCFCCC9C8C6C6C6C6C6C4C1C1C0BEBEC0
-C0C0BEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3B3
-B3B1B1B1AEAEAEAEAEAEAEAEAEABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A3A3A4A4A4A4A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C
-9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9999999A9A9A9A99999694949494949494949494949494949494949494
-949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494999996
-94949494949494949494949494949494949494949494949292929292929292929292929292928F8F
-8F8F92929292928F8F8F8E8E8E8C8C89898989898989898989898989898989898989898787878787
-878787878787878787878585858484848484848481817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F818181818184
-84848585878787858585858584858787878787878787878787878787878787878989898989898787
-898989898989898989898989898989898989898989898989898989898C8C8C8C8989898C8E8E8E8E
-8E8E8C8E8E8F8E8E8E8E8E8F8F9292928F8F8F9292928F8F8F9292928F8F8F929292928F8F929292
-928F92929292928F9292929292928F8F8E8F9292928F8F8F9292928F8F8F8E8E8F8F8F8F8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C8989
-89898989898989898989898989898987878787878585858585858485858585858587878787878787
-878789898989898989898C8E8E8E8E8E8E8E8E8F8F92929292929292929292929292929292929292
-92929292929292929292929292949494999A9A9A9C9C9C9C9E9EA1A3A3A4A4A4A6A6A6A6A6A6A6A9
-ABAEAEAEAEB1B1B1B1B1B3B3B6B9B9BBBEC0C1C1C1C6C6C6C8C8CCCCCFCFCFCFD1D3D3D4D4D4D9D9
-D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D4D4D4D4D3D1D1CFCFCCC8C6C6C6C6C6C4C1C1C1C0BEBEBE
-C0C0BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3
-B3B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A3A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C9C
-9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A9A9999949494949494969694949494949494949494
-949494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9496949494
-9494949494949494949494949494949494949494949292929292929292929292929292928F8F8E8E
-8E8F8F928F8F8F8E8E8C8C8989898989898989898989898989898989898987878787878787878787
-87858585848484848481818181818181817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C
-7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7C7C7C7C7F7F7F7F7F7F7F7F7F7F81
-81818184848485858585858484818484858587878787878787878587878787878787898989878787
-8787878989898987878789898989898989898989898989898989898989898C8989898989898C8E8E
-8E8C8C8C8E8E8E8E8E8E8E8E8F8F928F8F8E8E8F8F8F8F8E8E8F8F928F8F8F8F92928F8F8F8F9292
-8F8F8F8F9292928F8F929292928F8F8E8E8E8F8F8F8F8E8F8F92928F8F8E8E8E8E8F8F8F8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8989
-89898989898989898989898989898989898787878785858585858585858585858787878787878787
-8789898989898989898C8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292929292
-929292929292929292929292929494999A9A9C9C9C9C9C9C9E9EA3A4A4A4A4A4A6A6A6A6A6A6A9A9
-ABAEAEAEB1B1B1B1B1B1B3B6B7B9B9BBBEC1C1C1C6C6C6C6C8C9CCCCCFCFCFCFD1D3D3D4D4D4D9D9
-D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D4D4D4D3D3D1CFCFCFCCC8C6C6C6C6C6C1C1C1C1C0BEBBBE
-BEBEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3
-B3B3B1B1AEAEAEAEAEAEAEAEAEABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A3A4A4A4A4A4A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9C
-9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99999694949494999999949494949494949494
-9494FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949494949492929292949494949292929292929292929292929292928F8F8E8E8E8E8E
-8E8E8F8F8E8E8C8C8989898989898989898989898989898989878787878787878787878585848484
-848181818181817F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7C79797979797979797C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F
-7F7F7F81818181848484848481818181818484848587878785848484848587878787878787878787
-87878787878987878787878787898989898787878989898989898989898989898989898989898C8C
-8C8C8989898C8E8E8E8E8E8E8E8E8F8F8F8E8E8E8F8F8F8E8E8E8F8F8F8E8E8E8F8F8F8E8E8F8F8F
-8F8E8E8F8F928F8F8F8F92928F8F8F8E8E8E8E8F8F8E8E8E8F8F8F8F8E8E8E8E8E8E8F8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89
-89898989898989898989898989898989898987878787878585858787878785878787878789898989
-89898989898989898C8E8E8E8E8E8F8F8F8F8F929292929292929292929292929292929292929292
-929292929292929292929494949494999A9C9C9C9C9C9C9E9EA1A4A4A4A4A4A4A6A6A6A6A6A6A9A9
-ABAEAEB1B1B1B1B1B1B1B3B6B7B9B9BBC0C1C1C1C4C6C6C6C8CCCCCCCFCFCFCFCFD1D3D4D4D4D9D9
-D9D9D9D9D9D9D9D9D9D9D9D9D9D9D9D4D4D4D3D3D1CFCFCFCCCCC8C6C6C6C6C4C1C1C1C0C0BEBBBB
-BEBEBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B3B3B3B3B3B3B3B3B3
-B3B3B1B1AEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9E
-9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9999949499999A99999994949494949494
-94FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949494929292929292929492929292929292929292929292928F8F8F8E8E8E8E8E8E8E
-8E8E8E8C8C8989898989898989898989898989898987878787878787878585848484818181818181
-7F7F7F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C
-7976767676767676767676767676797979797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F
-7F7F7F7F7F7F7F7F818181817F7F7F7F7F8181818184848584848181818184848587878787878785
-85878787878787878787878787878789878787878787898989898989898989898989898989898989
-8C89898989898C8C8E8E8E8C8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8F8E8E8E8E8E8F8E8E8E8E8E8F
-8F8E8E8E8F8F8F8E8E8E8F928F8F8E8E8E8E8E8E8E8E8E8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C89
-89898989898989898989898989898989898989898787878787878787878787878787878989898989
-898989898989898C8E8E8E8E8E8F8F92929292929292929292929292929292929292929292929292
-9292929292929292949494949494969A9A9C9C9C9C9C9E9E9EA3A4A4A4A4A4A6A6A6A6A6A6A6A9AB
-AEAEAEB1B1B1B1B1B1B3B3B6B9B9BBBBC0C1C1C1C4C6C6C8C8CCCCCFCFCFCFCFCFD1D3D3D4D4D7D7
-D7D7D7D7D7D9D9D9D9D9D7D9D9D9D4D4D4D4D3D1D1CFCFCFCCC9C8C6C6C6C6C4C1C1C1C0C0BBBBBB
-BBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3B3B3
-B3B3B1B1AEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9E9EA1A39E9E9E9E9EA19E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9E
-9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999999999A9A9A9A9999999494949494
-94FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9494949494949292929292929292929292929292929292929292928F8F8F8E8E8E8E8E8E8E8E8E8E
-8C8C898989898989898989898989898989878787878787878785848484818181817F7F7F7F7F7F7F
-7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7B7979797979767676767676767676767676767676767676
-767676767676767676767474747476767676767676767979797C7C7C7C7C7976767979797C7C7C7C
-7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181818481817F7F8181818184848587878584
-81848485878787878785858787878787878787878787878789898987878789898989898989898989
-89898989898989898C8E8C8C89898C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8F8E8E8E8E8E8F8F8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89
-89898989898989898989898989898989898989898989878787878787878787878787898989898989
-898989898989898C8E8E8E8E8E8F9292929292929292929292929292929292929292929292929292
-9292929292949494949494949499999A9C9C9C9E9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A6A9A9AB
-AEAEAEB1B1B1B1B1B3B3B6B7B9B9BBBBC0C1C1C1C4C6C6C8C9CCCCCFCFCFCFCFCFD1D3D3D4D4D4D4
-D4D4D4D4D4D4D9D9D9D7D4D4D4D4D4D4D4D3D3D1CFCFCFCFCCC9C8C6C6C6C6C1C1C1C1C0BEBBBBBB
-BBBBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1AEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9EA1A3A19E9E9E9EA39E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9E9E
-9E9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999A9A9A9A9A9A9A999996949494
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-949494929292929292929292929292929292929292929292928F8F8E8E8E8E8E8E8E8E8E8E8C8C89
-898989898989898989898989898787878787878785858484818181817F7F7F7F7F7F7F7F7F7C7C7C
-7C7C7C7C7C7C7C7B7979797676767676767676767474747474747474747474747474747474747474
-74747474747474747674747474747474747474747474767676767676797976767676767676767979
-7B7C7C7C7C7C7C7C7F7F7F7F7F7F7C7C7C7F7F7F7F7F7F7F817F7F7F7F7F7F7F7F81818184848481
-81818184848587878584848485858787878787858787878787878787878787878989898989898989
-8989898989898989898C8C898989898C8C8E8E8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E89
-89898989898989898989898989898989898989898989898987878789898989878789898989898989
-89898C8989898C8E8E8E8E8E8F929292929292929292929292929292929292929292929292929292
-92929494949494949494969999999A9A9C9C9C9E9E9E9E9EA1A4A4A4A4A4A4A6A6A6A6A6A9A9A9AB
-AEAEB1B1B1B3B3B3B3B3B6B7B9B9BBBBC0C1C1C1C6C6C6C8C9CCCCCFCFCFCFCFCFD1D3D3D4D4D4D4
-D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D1CFCFCFCFCCCCC8C6C6C6C6C4C1C1C1C1C0BEBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1AEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A39E9EA3A4A39E9E9EA1A3A19E9E9E9EA19E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A999996FF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949494
-9492929292929292929292929292928F8F92929292928F8F8F8E8E8E8E8E8E8E8E8E8C8C89898989
-89898989898989898989878787878787858584848181817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C
-79797976767676767676747474747474747474747472727272727272727272727272727272727272
-72727272727274747474747474747472727272727474747474747474767676767676767674747676
-76767679797C7C7C7C7C7C7C7F7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818181
-7F7F7F81818184848481818181848485878785858585878787878787878787878787898989878787
-89898989898989898989898989898989898C8E8E8E8C898C8E8E8E8C8C8C8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C
-89898989898989898989898989898989898989898989898989898989898989898989898989898989
-898C8E8E8E8E8E8E8E8E8E8F8F929292929292929292929292929292929292929292929292929494
-94949494949494949999999A9A9A9A9A9C9C9E9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A9A9A9A9ABAE
-AEAEB1B1B1B3B3B3B3B3B6B9B9B9BBBBC0C0C1C1C6C6C6C8CCCCCCCFCFCFCFCFCFD1D1D3D4D4D4D4
-D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D1D1CFCFCFCFCCCCC8C6C6C6C6C4C1C1C1C0C0BEBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A1A1A3A4A4A19E9EA1A3A39E9E9EA1A3A19E9E
-9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9C9C9C9C9A9A9A9A9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A99FF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9494949292
-9292929292929292929292928F8F8F8E8F8F92928F8F8E8E8E8E8E8E8E8E8E8E8C89898989898989
-898989898989898787878787878584848181817F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C797676
-7676747474747474747474747474747474747272716E6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C
-6C6C6C6C6C6E6E717171727272727272716E6E717172727272727274747474747474747474747474
-7474767676767679797C7C7C7C7C7C7C79797C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F
-7F7F7F7F7F7F818181817F7F7F818184848585858585858587878787878585878787878787878787
-878789898989898989898989898989898989898C8C8989898C8C8C8C89898C8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8C
-89898989898989898989898989898989898989898989898989898989898989898989898989898989
-8C8E8E8E8E8E8E8E8E8E8E8F92929292929292929292929292929292929292929292929292949494
-94949494949499999A9A9A9A9A9C9C9C9C9C9E9E9E9E9EA1A4A4A4A4A4A4A6A6A6A9A9A9A9A9ABAE
-AEAEB1B1B1B3B3B3B3B6B6B9B9B9BBBBBEC0C1C1C6C6C8C8CCCCCFCFCFCFCFCFCFCFD1D3D4D4D4D4
-D4D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D1CFCFCFCFCCCCCCC8C6C6C6C6C4C1C1C1C0C0BBBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABABA9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A1A3A4A4A3A1A1A3A4A3A19E9EA1A3A39E9E
-9E9EA3A19E9E9E9EA19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9C9C9C9C9C9A9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9492929292
-929292929292929292928F8F8E8E8E8E8E8F8F8F8E8E8E8E8E8E8E8E8E8C89898989898989898989
-8989898987878787878585848481817F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C7C7C7C7976767676
-767474747474747474747474727272727272716C6C6C6C6C6C6C6C6C6C6C6C6C6A6A6A6A6A6A6A6A
-6A6A6A6A6A6A6A6A6A6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6C6E7172727272727474747472727272
-747474747474747676767679797B797976767679797B7C7C7C7C7C7C7F7F7F7C7C7C7C7F7F7F7F7F
-7F7F7F7F7F7F7F7F817F7F7F7F7F7F81818484858585858484858787858585858587878787878787
-87878789898989898989898989898989898989898989898989898C898989898C8C8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8C89898989898989898989898989898989898989898989898989898989898989898989898989898C
-8E8E8E8E8E8E8E8E8E8E8F9292929292929292929292929292929292929292929292929294949494
-949494949494999A9A9A9A9A9C9C9C9C9C9E9E9E9E9E9EA3A4A4A4A4A4A4A6A6A9A9A9A9ABABABAE
-AEB1B1B1B3B3B3B3B3B6B7B9B9B9BBBBBEC0C1C1C6C6C8C9CCCCCFCFCFCFCFCFCFCFD1D3D4D4D4D4
-D4D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D1CFCFCFCFCCCCCCC9C8C6C6C6C6C4C1C1C1C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABABA9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A3A4A4A4A4A3A1A3A4A4A39E9EA3A4A3A19E
-9EA1A3A39E9E9E9EA3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9C9C9C9C9A9A9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292929292928F8F8E8E8E8E8E8E8E8E8E8C8C8E8E8E8E8E8C8C898989898989878789898989
-8787878787878584848181817F7F7F7F7F7F7F7F7C7C7C7C7C7C7C7C7C7C7C797976767676747474
-7474747472727272716E6C6C6C6C6C6A6A6A6A6A6A6A676767676767676666666666666666666767
-676766616161646666676767676A6A6A6A6A6A6A6A6A6A6A6A6A6C6C6C6C6C6E7172727272727171
-717272727274747474747476767676767676767676767679797C7C7C7C7C7C7C7C7C7C7C7C7C7F7F
-7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F8181818484848181818485858585858585878787878785
-8787878787898989898989898989898989898989898989898989898989898989898C8E8E8E8C8C8E
-8E8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8C898989898989898989898989898989898989898989898989898989898989898C898989898C8E
-8E8E8E8E8E8E8E8E8E8F929292929292929292929292929292929292929292929292929294949494
-9494949494999A9A9A9A9A9C9C9C9C9C9C9E9E9E9E9E9EA3A4A4A4A6A6A6A6A6A9A9ABABABABAEAE
-AEB1B1B1B3B3B3B3B3B6B9B9B9BBBBBBBEC0C1C1C6C6C8C8CCCCCCCFCFCFCFCFCFCFD1D3D3D4D4D4
-D4D4D4D4D4D4D4D4D4D4D4D4D4D3D3D1D1CFCFCFCCCCCCC9C8C6C6C6C6C6C1C1C1C1C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3
-B3B3B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABABA9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A4A4A4A4A3A3A4A4A4A4A1A1A3A4A4A39E
-9EA1A3A3A19E9EA1A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-92929292928F8F8F8E8E8E8E8E8E8E8E8E8C8989898C8E8E8C898989898989878787878787878787
-87878785848481817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7C7B7976767676747474747474727272
-71716C6C6C6C6A6A6A6A676766616161FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFF5F5F616161616661616164666767676A6A6A6A6A6C6C6C6C6C6C6C
-6C6C6C6E717272727272747474747474767676767674747676767679797C7C7C7C7979797C7C7C7C
-7C7F7F7F7F7C7C7C7F7F7F7F7F7F7F7F7F7F7F81818181817F818181848585858484848587878585
-858587878787878989898987878989898989898989898989898989898989898989898C8E8C8C8989
-8C8E8E8C898C8E8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8C8C898989898989898989898989898989898989898989898989898989898C8E8E8C8C8C8E8E
-8E8E8E8E8F8E8E8E8F8F929292929292929292929292929292929292929292929292929494949494
-9494949494999A9A9A9A9A9C9C9C9C9E9E9E9E9E9E9EA1A4A4A6A6A6A6A6A6A6A9ABABABABABAEAE
-AEB1B1B1B3B3B3B3B3B6B9B9B9BBBBBBBEC0C1C1C6C6C8C8CCCCCCCFCFCFCFCFCFCFD1D3D3D3D3D3
-D3D3D3D3D3D4D4D4D4D4D4D4D4D3D3D1CFCFCFCFCCCCCCC8C8C6C6C6C6C4C1C1C1C1C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3
-B3B1B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A4A4A4A4A3A1A3A4A4A3A1
-A1A3A4A4A39E9EA1A3A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-9292928F8F8E8E8E8E8E8E8E8E8E8C8C898989898989898989898989878787878785878787878787
-85848481817F7F7F7F7F7F7F7F7F7F7F7C7C7C7C7C79797676767474747474727272716E6C6C6C6A
-6A6A676661FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F5F5F5F6161616667676A6A6A6A6A6A
-6A6A6A6A6C6C6C6C6E7172727272747474747474747474747474767676767979797676767679797C
-7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F817F7F7F7F81818184848481818184858585
-85858585878787878789878787878989898989898989898989898989898989898989898C8C898989
-898C8C8989898C8E8E8C898C8E8E8E8C8C8C8E8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8C89898989898989898989898989898989898989898989898989898C8C8E8E8E8E8E8E8E
-8E8E8E8F8F8F8F8F8F92929292929292929292929292929292929292949494949494949494949494
-94949496999A9A9A9A9A9C9C9C9E9E9E9E9E9E9E9E9EA3A4A4A6A6A6A6A6A6A9A9ABABABABABAEAE
-B1B1B1B3B3B3B3B3B6B7B9B9B9BBBBBBC0C0C1C1C6C6C6C8C9CCCCCFCFCFCFCFCFCFD1D3D3D3D3D3
-D3D3D3D3D3D3D3D3D3D3D3D3D3D3D1CFCFCFCFCCCCCCC9C8C6C6C6C6C6C4C1C1C1C0C0BEBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3B3B3B3B3
-B3B1B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A4A4A4A4A4A3A4A4A4A4A3
-A1A3A4A4A3A1A1A3A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292929292
-8F8F8F8E8E8E8E8E8E8E8E8E8C898989898989898989898989878787878787858585858787858481
-81817F7F7F7F7F7F7F7F7F7F7C7C7C7C7C7976767674747474747272716E6C6C6C6A6A676661FFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F5F5F616161666767
-67676767676A6A6A6A6C6C6C6C717272727274747474747474747474747476767676767676767676
-79797C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81818181817F8181848485
-85858585858587878787878787878787898989898989898989898989898989898989898989898989
-898989898989898C8C8989898C8C8C8C89898C8E8E8C8C8C8E8E8E8E8C8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8C898989898989898989898989898989898989898989898989898C8E8E8E8E8E8E8E8E
-8E8E8E8F929292929292929292929292929292929292929494949494949494949494949494949494
-999999999A9A9A9A9A9A9C9C9E9E9E9E9E9E9EA1A3A3A4A4A4A6A6A6A6A6A6A9A9ABABABABAEAEAE
-B1B1B1B3B3B3B3B3B6B7B9B9B9BBBBBEC0C1C1C1C6C6C6C8C9CCCCCFCFCFCFCFCFCFCFD1D3D3D3D3
-D3D3D3D3D3D3D3D3D3D3D3D3D3D1CFCFCFCFCCCCCCC9C8C8C6C6C6C6C6C4C1C1C1C0C0BBBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B3B3B3B3B3B3B3B3B3B3B3
-B3B1B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A3A4A4A4A4A4
-A3A4A4A4A4A3A1A3A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF9292928F8F
-8E8E8E8E8E8E8E8E8E8C8C898989898989898989898987878787878785858585858585848181817F
-7F7F7F7C7C7C7C7C7C7C7C7C7C79767676747474747272726E6C6C6A6A676666FFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF5F5F5F
-6161646767676767676A6A6A6A6C6C6C6C6E71727272747474747272747474747476767676767676
-767676797B7C7C7C7C7C7C7C7C7C7C7F7F7F7F7C7C7F7F7F7F7F7F7F7F7F7F81817F7F7F7F818184
-84858585858585878787878787878787878989898987878989898989898989898989898989898989
-89898989898989898989898989898C898989898C8C8C89898C8E8E8C8C8C8E8E8E8E8C8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8C89898989898C89898989898C898989898C8C8C8989898C8E8E8E8E8E8E8E8E8E
-8E8E8F92929292929292929292929292929292929292929494949494949494949494949494949494
-999A9A9A9A9A9A9A9A9C9C9E9E9E9E9E9E9EA3A3A4A4A4A4A6A6A6A6A6A6A6A9ABABABABABAEAEAE
-B1B1B1B3B3B3B3B3B6B9B9B9BBBBBBBEC0C1C1C1C6C6C6C8C9CCCCCCCFCFCFCFCFCFCFD1D3D3D3D3
-D3D3D3D3D3D3D3D3D3D3D3D3D1D1CFCFCFCFCCCCCCC8C8C6C6C6C6C6C4C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3
-B3B1B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A3A4A4A4A4A4A3A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9C9C9C9C9C9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8F8F8F8E8E
-8E8E8E8E8E8E8E8C898989898989898989898989878787878785858585858585848181817F7F7F7F
-7C7C7C7C7C7C7C7C7C7B797676747474747272716C6C6A6A6767FFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFF5F5F5F6161666767676767676A6A6A6C6C6C6C6E717272727271727272727474747474767676
-767676767676797C7C7C7B79797C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F7F81
-81848485858585848587878785858787878787898787878789898989898989898989898989898989
-898989898989898989898989898989898989898989898989898C8C8C89898C8E8E8C8C8C8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8C8989898C8E8C8989898C8E8C8C898C8C8E8E8E8C8C8E8E8E8E8E8E8E8E8E8E
-8E8F9292929292929292929292929292929292929294949494949494949494949494949494949499
-9A9A9A9A9A9A9A9C9C9C9E9E9E9E9E9E9EA1A4A4A4A4A4A4A6A6A6A6A6A6A9A9ABABABABABAEAEB1
-B1B1B3B3B3B3B3B6B7B9B9B9BBBBBBBEC0C1C1C1C6C6C6C8C8CCCCCCCFCFCFCFCFCFCFD1D1D1D1D1
-D1D1D1D1D1D1D1D3D3D3D3D3D1CFCFCFCFCCCCCCC8C8C6C6C6C6C6C4C1C1C1C1C1C0BEBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B3B3B3B3B3B3B3B3B3B3B3B3
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEABABABABABABABA9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A3A4A4A4A4A4A39E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9C9C9C9C9E9C9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8E8E8C8C8989898989898989898989878787878785858585858585848181817F7F7F7F7C7C7C
-7C7C7C7C7C7C797676767474747272716C6C6A6A67FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFF5F5F5F61616667676767676A6A6A6C6C6C6C716E6C6C6C6E717272727474747474
-7674747474767676797979767676797C7C7C7C7C7C7C7C7C7C7F7F7F7F7C7C7F7F7F7F7F7F7F7F7F
-7F818184858484848484858585858585878787878787878787878989898989898989898989898989
-898989898989898989898989898989898989898989898989898989898989898C8C8C898C8C8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8C8C8E8E8E8E8C8C8E8E8E8E8C8C8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8F8F9292929292929292929292929292929292929494949494949494949494949494949494949499
-9A9A9A9A9A9A9C9C9C9C9E9E9E9E9E9E9EA3A4A4A4A4A4A6A6A6A6A6A6A6A9A9ABABABABAEAEAEB1
-B1B1B3B3B3B3B3B6B7B9B9B9BBBBBBC0C1C1C1C4C6C6C6C8C8CCCCCCCCCCCCCCCFCFCFD1D1D1D1D1
-D1D1D1D1D1D1D1D1D1D1D1D1CFCFCFCFCCCCCCC9C8C8C6C6C6C6C4C1C1C1C1C1C0C0BEBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B6B6B6B3B3B3B3B3B3B3B3B3B3B3
-B1B1B1B1B1AEAEAEAEAEAEAEAEAEAEABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9C9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF8E8E8E8E8E
-8E8E8C8989898989898989898989898787878785858585858585848481817F7F7F7F7C7C7C7C7C7C
-7C7C7C7976767474747272716C6C6A6A6AFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFF5F5F5F61616667676767676A6A6A6C6C6C6C6C6C6C6C6E717272727474
-7474747474747474767676767676767679797C7C7C7C7C7C7C7C7C7C7C7C7C7C7C7F7F7F7F7F7F7F
-7F7F8181818181818184848585858585858587878787878787878789898989898989898989898989
-8989898989898989898989898989898989898989898989898989898989898989898989898C8C8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E
-8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8E8F
-8F92929292929292929292929292929292929494949494949494949494949494949494949499999A
-9A9A9A9A9A9C9C9C9C9E9E9E9E9E9E9EA1A4A4A4A4A4A4A6A6A6A6A6A6A9A9ABABABABABAEAEAEB1
-B1B1B3B3B3B3B3B6B9B9B9BBBBBBBEC0C1C1C1C4C6C6C6C6C8C9CCCCCCCCCCCCCFCFCFCFCFCFCFD1
-D1D1D1D1D1D1D1D1D1D1D1D1CFCFCFCCCCCCC9C8C8C6C6C6C6C6C1C1C1C1C1C1C0C0BBBBBBBBBBBB
-BBBBBBBBBBBBBBB9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B9B7B6B6B6B3B3B3B3B3B3B3B3B3B3
-B1B1B1B1AEAEAEAEAEAEAEAEAEAEAEABABABABABABA9A9A9A6A6A6A6A6A6A6A6A6A6A6A6A6A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4A4
-A4A4A4A4A4A4A4A4A4A4A4A4A4A3A19E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E
-9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9E9C9C9C9C9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A
-9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9A9AFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-gr
-gs
-0 872 translate
- 1200 29 scale
-1200 29 8
-[1200 0 0 29 0 0] L1i
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
-gr
-
-end
-
-eplot
-%%EndObject
-
-gr
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/glacier1.pdf b/doc/tutorial/images/glacier1.pdf
deleted file mode 100644
index c5a145e..0000000
Binary files a/doc/tutorial/images/glacier1.pdf and /dev/null differ
diff --git a/doc/tutorial/images/glacier2.eps b/doc/tutorial/images/glacier2.eps
deleted file mode 100755
index 36b3b9f..0000000
--- a/doc/tutorial/images/glacier2.eps
+++ /dev/null
@@ -1,39895 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: glacier2.eps
-%%CreationDate: 09/01/2004 09:56:05
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 89 224 546 586
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 89 224 546 586
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 863 305 5477 4347 MR c np
-284 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-gs 899 389 5357 4227 MR c np
-0 sg
-2828 -992 mt 2809 -978 L
-2809 -978 mt 2791 -964 L
-2791 -964 mt 2774 -953 L
-2774 -953 mt 2751 -937 L
-2751 -937 mt 2740 -929 L
-2740 -929 mt 2709 -909 L
-2709 -909 mt 2705 -906 L
-2705 -906 mt 2670 -884 L
-2670 -884 mt 2666 -882 L
-2666 -882 mt 2635 -862 L
-2635 -862 mt 2623 -854 L
-2623 -854 mt 2600 -840 L
-2600 -840 mt 2580 -827 L
-2580 -827 mt 2565 -818 L
-2565 -818 mt 2535 -799 L
-2535 -799 mt 2530 -796 L
-2530 -796 mt 2496 -775 L
-2496 -775 mt 2489 -772 L
-2489 -772 mt 2461 -756 L
-2461 -756 mt 2440 -744 L
-2440 -744 mt 2426 -737 L
-2426 -737 mt 2391 -718 L
-2391 -718 mt 2387 -717 L
-2387 -717 mt 2356 -701 L
-2356 -701 mt 2331 -689 L
-2331 -689 mt 2321 -685 L
-2321 -685 mt 2286 -669 L
-2286 -669 mt 2271 -661 L
-2271 -661 mt 2251 -653 L
-2251 -653 mt 2217 -637 L
-2217 -637 mt 2209 -634 L
-2209 -634 mt 2182 -622 L
-2182 -622 mt 2147 -607 L
-2147 -607 mt 2145 -606 L
-2145 -606 mt 2112 -592 L
-2112 -592 mt 2080 -579 L
-2080 -579 mt 2077 -578 L
-2077 -578 mt 2042 -563 L
-2042 -563 mt 2014 -551 L
-2014 -551 mt 2007 -549 L
-2007 -549 mt 1972 -535 L
-1972 -535 mt 1946 -524 L
-1946 -524 mt 1938 -521 L
-1938 -521 mt 1903 -507 L
-1903 -507 mt 1876 -496 L
-1876 -496 mt 1868 -494 L
-1868 -494 mt 1833 -481 L
-1833 -481 mt 1801 -469 L
-1801 -469 mt 1798 -468 L
-1798 -468 mt 1763 -456 L
-1763 -456 mt 1728 -443 L
-1728 -443 mt 1723 -441 L
-1723 -441 mt 1694 -431 L
-1694 -431 mt 1659 -418 L
-1659 -418 mt 1647 -414 L
-1647 -414 mt 1624 -406 L
-1624 -406 mt 1589 -393 L
-1589 -393 mt 1573 -386 L
-1573 -386 mt 1554 -379 L
-1554 -379 mt 1519 -366 L
-1519 -366 mt 1502 -359 L
-1502 -359 mt 1484 -352 L
-1484 -352 mt 1449 -338 L
-1449 -338 mt 1434 -331 L
-1434 -331 mt 1415 -324 L
-1415 -324 mt 1380 -309 L
-1380 -309 mt 1368 -304 L
-1368 -304 mt 1345 -294 L
-1345 -294 mt 1310 -278 L
-1310 -278 mt 1305 -276 L
-1305 -276 mt 1275 -263 L
-1275 -263 mt 1243 -249 L
-1243 -249 mt 1240 -248 L
-1240 -248 mt 1205 -232 L
-1205 -232 mt 1181 -221 L
-1181 -221 mt 1170 -217 L
-1170 -217 mt 1136 -201 L
-1136 -201 mt 1120 -194 L
-1120 -194 mt 1101 -185 L
-1101 -185 mt 1066 -168 L
-1066 -168 mt 1061 -166 L
-1061 -166 mt 1031 -152 L
-1031 -152 mt 1005 -139 L
-1005 -139 mt 996 -135 L
- 996 -135 mt 961 -117 L
- 961 -117 mt 950 -111 L
- 950 -111 mt 926 -99 L
- 926 -99 mt 899 -84 L
- 899 -84 mt 892 -80 L
- 892 -80 mt 857 -60 L
- 857 -60 mt 850 -56 L
- 850 -56 mt 822 -40 L
- 822 -40 mt 802 -29 L
- 802 -29 mt 787 -20 L
- 787 -20 mt 757 -1 L
- 757 -1 mt 752 1 L
- 752 1 mt 717 22 L
- 717 22 mt 713 25 L
- 713 25 mt 682 45 L
- 682 45 mt 670 53 L
- 670 53 mt 647 68 L
- 647 68 mt 630 80 L
- 630 80 mt 613 92 L
- 613 92 mt 591 108 L
- 591 108 mt 578 118 L
- 578 118 mt 555 135 L
- 555 135 mt 543 145 L
- 543 145 mt 522 163 L
- 522 163 mt 508 175 L
- 508 175 mt 490 190 L
- 490 190 mt 473 206 L
- 473 206 mt 460 218 L
- 460 218 mt 438 239 L
- 438 239 mt 431 245 L
- 431 245 mt 404 273 L
- 404 273 mt 403 274 L
- 403 274 mt 378 300 L
- 378 300 mt 368 310 L
- 368 310 mt 352 328 L
- 352 328 mt 334 348 L
- 334 348 mt 327 355 L
- 327 355 mt 302 383 L
- 302 383 mt 299 386 L
- 299 386 mt 277 411 L
- 277 411 mt 264 425 L
- 264 425 mt 253 438 L
- 253 438 mt 229 465 L
- 229 465 mt 228 466 L
- 228 466 mt 204 493 L
- 204 493 mt 194 505 L
- 194 505 mt 180 521 L
- 180 521 mt 159 545 L
- 159 545 mt 156 548 L
- 156 548 mt 133 576 L
- 133 576 mt 124 586 L
- 124 586 mt 110 603 L
- 110 603 mt 90 628 L
- 90 628 mt 87 631 L
- 87 631 mt 65 658 L
- 65 658 mt 55 671 L
- 55 671 mt 43 686 L
- 43 686 mt 22 713 L
- 22 713 mt 20 716 L
- 20 716 mt 2 741 L
- 2 741 mt -14 764 L
- -14 764 mt -17 768 L
- -17 768 mt -37 796 L
- -37 796 mt -49 813 L
- -49 813 mt -56 823 L
- -56 823 mt -75 851 L
- -75 851 mt -84 864 L
- -84 864 mt -94 878 L
- -94 878 mt -112 906 L
--112 906 mt -119 917 L
--119 917 mt -130 933 L
--130 933 mt -147 961 L
--147 961 mt -154 972 L
--154 972 mt -164 988 L
--164 988 mt -180 1016 L
--180 1016 mt -188 1029 L
--188 1029 mt -197 1043 L
--197 1043 mt -214 1071 L
--214 1071 mt -223 1087 L
--223 1087 mt -230 1098 L
--230 1098 mt -247 1126 L
--247 1126 mt -258 1143 L
--258 1143 mt -265 1153 L
--265 1153 mt -283 1181 L
--283 1181 mt -293 1195 L
--293 1195 mt -303 1208 L
--303 1208 mt -323 1236 L
--323 1236 mt -328 1243 L
--328 1243 mt -344 1263 L
--344 1263 mt -363 1287 L
--363 1287 mt -366 1291 L
--366 1291 mt -390 1318 L
--390 1318 mt -398 1328 L
--398 1328 mt -414 1346 L
--414 1346 mt -433 1365 L
--433 1365 mt -441 1373 L
--441 1373 mt -467 1400 L
--467 1400 mt -469 1401 L
--469 1401 mt -500 1428 L
--500 1428 mt -502 1431 L
--502 1431 mt -535 1456 L
--535 1456 mt -537 1458 L
--537 1458 mt -572 1482 L
--572 1482 mt -574 1484 L
--574 1484 mt -607 1503 L
--607 1503 mt -622 1511 L
--622 1511 mt -642 1521 L
--642 1521 mt -677 1535 L
--677 1535 mt -686 1539 L
--686 1539 mt -711 1547 L
--711 1547 mt -746 1555 L
--746 1555 mt -781 1560 L
--781 1560 mt -816 1563 L
--816 1563 mt -851 1562 L
--851 1562 mt -886 1559 L
-2862 6023 mt 2879 6007 L
-2879 6007 mt 2893 5996 L
-2893 5996 mt 2914 5974 L
-2914 5974 mt 2920 5968 L
-2920 5968 mt 2943 5941 L
-2943 5941 mt 2949 5931 L
-2949 5931 mt 2962 5913 L
-2962 5913 mt 2975 5886 L
-2975 5886 mt 2978 5858 L
-2978 5858 mt 2970 5831 L
-2970 5831 mt 2949 5805 L
-2949 5805 mt 2947 5803 L
-2947 5803 mt 2914 5777 L
-2914 5777 mt 2913 5776 L
-2913 5776 mt 2879 5755 L
-2879 5755 mt 2868 5748 L
-2868 5748 mt 2844 5737 L
-2844 5737 mt 2813 5721 L
-2813 5721 mt 2809 5719 L
-2809 5719 mt 2774 5704 L
-2774 5704 mt 2750 5693 L
-2750 5693 mt 2740 5689 L
-2740 5689 mt 2705 5677 L
-2705 5677 mt 2676 5665 L
-2676 5665 mt 2670 5664 L
-2670 5664 mt 2635 5652 L
-2635 5652 mt 2600 5639 L
-2600 5639 mt 2597 5638 L
-2597 5638 mt 2565 5627 L
-2565 5627 mt 2530 5615 L
-2530 5615 mt 2517 5610 L
-2517 5610 mt 2496 5603 L
-2496 5603 mt 2461 5591 L
-2461 5591 mt 2439 5583 L
-2439 5583 mt 2426 5579 L
-2426 5579 mt 2391 5566 L
-2391 5566 mt 2361 5555 L
-2361 5555 mt 2356 5554 L
-2356 5554 mt 2321 5541 L
-2321 5541 mt 2286 5528 L
-2286 5528 mt 2286 5528 L
-2286 5528 mt 2251 5516 L
-2251 5516 mt 2217 5503 L
-2217 5503 mt 2211 5500 L
-2211 5500 mt 2182 5490 L
-2182 5490 mt 2147 5476 L
-2147 5476 mt 2138 5473 L
-2138 5473 mt 2112 5463 L
-2112 5463 mt 2077 5450 L
-2077 5450 mt 2066 5445 L
-2066 5445 mt 2042 5436 L
-2042 5436 mt 2007 5423 L
-2007 5423 mt 1996 5418 L
-1996 5418 mt 1972 5409 L
-1972 5409 mt 1938 5395 L
-1938 5395 mt 1927 5390 L
-1927 5390 mt 1903 5381 L
-1903 5381 mt 1868 5367 L
-1868 5367 mt 1858 5363 L
-1858 5363 mt 1833 5353 L
-1833 5353 mt 1798 5338 L
-1798 5338 mt 1791 5335 L
-1791 5335 mt 1763 5324 L
-1763 5324 mt 1728 5309 L
-1728 5309 mt 1726 5308 L
-1726 5308 mt 1694 5294 L
-1694 5294 mt 1663 5280 L
-1663 5280 mt 1659 5279 L
-1659 5279 mt 1624 5263 L
-1624 5263 mt 1603 5253 L
-1603 5253 mt 1589 5246 L
-1589 5246 mt 1554 5228 L
-1554 5228 mt 1549 5225 L
-1549 5225 mt 1519 5210 L
-1519 5210 mt 1498 5198 L
-1498 5198 mt 1484 5190 L
-1484 5190 mt 1451 5170 L
-1451 5170 mt 1449 5169 L
-1449 5169 mt 1415 5147 L
-1415 5147 mt 1408 5143 L
-1408 5143 mt 1380 5124 L
-1380 5124 mt 1368 5115 L
-1368 5115 mt 1345 5099 L
-1345 5099 mt 1330 5088 L
-1330 5088 mt 1310 5072 L
-1310 5072 mt 1295 5060 L
-1295 5060 mt 1275 5044 L
-1275 5044 mt 1263 5033 L
-1263 5033 mt 1240 5013 L
-1240 5013 mt 1232 5005 L
-1232 5005 mt 1205 4979 L
-1205 4979 mt 1204 4978 L
-1204 4978 mt 1177 4950 L
-1177 4950 mt 1170 4943 L
-1170 4943 mt 1152 4923 L
-1152 4923 mt 1136 4904 L
-1136 4904 mt 1128 4895 L
-1128 4895 mt 1106 4868 L
-1106 4868 mt 1101 4861 L
-1101 4861 mt 1084 4840 L
-1084 4840 mt 1066 4815 L
-1066 4815 mt 1064 4813 L
-1064 4813 mt 1044 4785 L
-1044 4785 mt 1031 4766 L
-1031 4766 mt 1026 4758 L
-1026 4758 mt 1008 4730 L
-1008 4730 mt 996 4711 L
- 996 4711 mt 991 4703 L
- 991 4703 mt 974 4675 L
- 974 4675 mt 961 4652 L
- 961 4652 mt 958 4648 L
- 958 4648 mt 943 4620 L
- 943 4620 mt 927 4592 L
- 927 4592 mt 926 4591 L
- 926 4591 mt 912 4565 L
- 912 4565 mt 897 4537 L
- 897 4537 mt 892 4528 L
- 892 4528 mt 881 4510 L
- 881 4510 mt 866 4482 L
- 866 4482 mt 857 4464 L
- 857 4464 mt 852 4455 L
- 852 4455 mt 837 4427 L
- 837 4427 mt 823 4400 L
- 823 4400 mt 822 4398 L
- 822 4398 mt 809 4372 L
- 809 4372 mt 795 4345 L
- 795 4345 mt 787 4327 L
- 787 4327 mt 782 4317 L
- 782 4317 mt 769 4290 L
- 769 4290 mt 757 4262 L
- 757 4262 mt 752 4252 L
- 752 4252 mt 744 4235 L
- 744 4235 mt 731 4207 L
- 731 4207 mt 719 4180 L
- 719 4180 mt 717 4176 L
- 717 4176 mt 706 4152 L
- 706 4152 mt 693 4125 L
- 693 4125 mt 682 4103 L
- 682 4103 mt 679 4097 L
- 679 4097 mt 665 4070 L
- 665 4070 mt 650 4042 L
- 650 4042 mt 647 4037 L
- 647 4037 mt 635 4015 L
- 635 4015 mt 618 3987 L
- 618 3987 mt 613 3978 L
- 613 3978 mt 601 3960 L
- 601 3960 mt 582 3932 L
- 582 3932 mt 578 3926 L
- 578 3926 mt 562 3905 L
- 562 3905 mt 543 3880 L
- 543 3880 mt 541 3877 L
- 541 3877 mt 518 3850 L
- 518 3850 mt 508 3838 L
- 508 3838 mt 493 3822 L
- 493 3822 mt 473 3801 L
- 473 3801 mt 467 3795 L
- 467 3795 mt 440 3767 L
- 440 3767 mt 438 3765 L
- 438 3765 mt 411 3740 L
- 411 3740 mt 403 3732 L
- 403 3732 mt 381 3712 L
- 381 3712 mt 368 3701 L
- 368 3701 mt 350 3685 L
- 350 3685 mt 334 3671 L
- 334 3671 mt 317 3657 L
- 317 3657 mt 299 3643 L
- 299 3643 mt 281 3630 L
- 281 3630 mt 264 3617 L
- 264 3617 mt 244 3602 L
- 244 3602 mt 229 3592 L
- 229 3592 mt 204 3575 L
- 204 3575 mt 194 3568 L
- 194 3568 mt 162 3547 L
- 162 3547 mt 159 3545 L
- 159 3545 mt 124 3523 L
- 124 3523 mt 119 3519 L
- 119 3519 mt 90 3501 L
- 90 3501 mt 74 3492 L
- 74 3492 mt 55 3480 L
- 55 3480 mt 29 3464 L
- 29 3464 mt 20 3459 L
- 20 3459 mt -14 3437 L
- -14 3437 mt -15 3437 L
- -15 3437 mt -49 3417 L
- -49 3417 mt -61 3409 L
- -61 3409 mt -84 3396 L
- -84 3396 mt -108 3382 L
--108 3382 mt -119 3375 L
--119 3375 mt -154 3355 L
--154 3355 mt -154 3354 L
--154 3354 mt -188 3335 L
--188 3335 mt -202 3327 L
--202 3327 mt -223 3315 L
--223 3315 mt -251 3299 L
--251 3299 mt -258 3296 L
--258 3296 mt -293 3277 L
--293 3277 mt -302 3272 L
--302 3272 mt -328 3258 L
--328 3258 mt -356 3244 L
--356 3244 mt -363 3241 L
--363 3241 mt -398 3224 L
--398 3224 mt -414 3217 L
--414 3217 mt -433 3209 L
--433 3209 mt -467 3195 L
--467 3195 mt -482 3189 L
--482 3189 mt -502 3182 L
--502 3182 mt -537 3171 L
--537 3171 mt -572 3162 L
--572 3162 mt -574 3162 L
--574 3162 mt -607 3155 L
--607 3155 mt -642 3150 L
--642 3150 mt -677 3147 L
--677 3147 mt -711 3146 L
--711 3146 mt -746 3148 L
--746 3148 mt -781 3152 L
--781 3152 mt -816 3160 L
--816 3160 mt -824 3162 L
--824 3162 mt -851 3170 L
--851 3170 mt -886 3182 L
-4031 6023 mt 4030 6022 L
-4030 6022 mt 3995 6006 L
-3995 6006 mt 3970 5996 L
-3970 5996 mt 3960 5991 L
-3960 5991 mt 3925 5975 L
-3925 5975 mt 3910 5968 L
-3910 5968 mt 3890 5958 L
-3890 5958 mt 3855 5942 L
-3855 5942 mt 3851 5941 L
-3851 5941 mt 3821 5926 L
-3821 5926 mt 3792 5913 L
-3792 5913 mt 3786 5910 L
-3786 5910 mt 3751 5893 L
-3751 5893 mt 3733 5886 L
-3733 5886 mt 3716 5877 L
-3716 5877 mt 3681 5859 L
-3681 5859 mt 3679 5858 L
-3679 5858 mt 3646 5839 L
-3646 5839 mt 3632 5831 L
-3632 5831 mt 3611 5813 L
-3611 5813 mt 3598 5803 L
-3598 5803 mt 3579 5776 L
-3579 5776 mt 3577 5764 L
-3577 5764 mt 3573 5748 L
-3573 5748 mt 3577 5731 L
-3577 5731 mt 3578 5721 L
-3578 5721 mt 3590 5693 L
-3590 5693 mt 3607 5665 L
-3607 5665 mt 3611 5660 L
-3611 5660 mt 3626 5638 L
-3626 5638 mt 3646 5613 L
-3646 5613 mt 3648 5610 L
-3648 5610 mt 3669 5583 L
-3669 5583 mt 3681 5569 L
-3681 5569 mt 3692 5555 L
-3692 5555 mt 3715 5528 L
-3715 5528 mt 3716 5527 L
-3716 5527 mt 3739 5500 L
-3739 5500 mt 3751 5488 L
-3751 5488 mt 3763 5473 L
-3763 5473 mt 3786 5448 L
-3786 5448 mt 3788 5445 L
-3788 5445 mt 3813 5418 L
-3813 5418 mt 3821 5410 L
-3821 5410 mt 3838 5390 L
-3838 5390 mt 3855 5371 L
-3855 5371 mt 3863 5363 L
-3863 5363 mt 3887 5335 L
-3887 5335 mt 3890 5332 L
-3890 5332 mt 3911 5308 L
-3911 5308 mt 3925 5291 L
-3925 5291 mt 3933 5280 L
-3933 5280 mt 3955 5253 L
-3955 5253 mt 3960 5247 L
-3960 5247 mt 3976 5225 L
-3976 5225 mt 3995 5200 L
-3995 5200 mt 3997 5198 L
-3997 5198 mt 4016 5170 L
-4016 5170 mt 4030 5151 L
-4030 5151 mt 4036 5143 L
-4036 5143 mt 4054 5115 L
-4054 5115 mt 4065 5100 L
-4065 5100 mt 4073 5088 L
-4073 5088 mt 4090 5060 L
-4090 5060 mt 4100 5046 L
-4100 5046 mt 4107 5033 L
-4107 5033 mt 4124 5005 L
-4124 5005 mt 4134 4988 L
-4134 4988 mt 4140 4978 L
-4140 4978 mt 4156 4950 L
-4156 4950 mt 4169 4926 L
-4169 4926 mt 4171 4923 L
-4171 4923 mt 4186 4895 L
-4186 4895 mt 4200 4868 L
-4200 4868 mt 4204 4860 L
-4204 4860 mt 4214 4840 L
-4214 4840 mt 4228 4813 L
-4228 4813 mt 4239 4788 L
-4239 4788 mt 4241 4785 L
-4241 4785 mt 4253 4758 L
-4253 4758 mt 4264 4730 L
-4264 4730 mt 4274 4703 L
-4274 4703 mt 4274 4702 L
-4274 4702 mt 4282 4675 L
-4282 4675 mt 4289 4648 L
-4289 4648 mt 4294 4620 L
-4294 4620 mt 4295 4592 L
-4295 4592 mt 4290 4565 L
-4290 4565 mt 4282 4537 L
-4282 4537 mt 4274 4513 L
-4274 4513 mt 4273 4510 L
-4273 4510 mt 4263 4482 L
-4263 4482 mt 4253 4455 L
-4253 4455 mt 4243 4427 L
-4243 4427 mt 4239 4410 L
-4239 4410 mt 4237 4400 L
-4237 4400 mt 4234 4372 L
-4234 4372 mt 4235 4345 L
-4235 4345 mt 4239 4318 L
-4239 4318 mt 4239 4317 L
-4239 4317 mt 4247 4290 L
-4247 4290 mt 4255 4262 L
-4255 4262 mt 4262 4235 L
-4262 4235 mt 4272 4207 L
-4272 4207 mt 4274 4201 L
-4274 4201 mt 4284 4180 L
-4284 4180 mt 4300 4152 L
-4300 4152 mt 4309 4140 L
-4309 4140 mt 4323 4125 L
-4323 4125 mt 4344 4105 L
-4344 4105 mt 4356 4097 L
-4356 4097 mt 4379 4084 L
-4379 4084 mt 4413 4072 L
-4413 4072 mt 4448 4071 L
-4448 4071 mt 4483 4075 L
-4483 4075 mt 4518 4089 L
-4518 4089 mt 4533 4097 L
-4533 4097 mt 4553 4109 L
-4553 4109 mt 4573 4125 L
-4573 4125 mt 4588 4136 L
-4588 4136 mt 4605 4152 L
-4605 4152 mt 4623 4170 L
-4623 4170 mt 4632 4180 L
-4632 4180 mt 4655 4207 L
-4655 4207 mt 4657 4211 L
-4657 4211 mt 4674 4235 L
-4674 4235 mt 4692 4262 L
-4692 4262 mt 4692 4263 L
-4692 4263 mt 4710 4290 L
-4710 4290 mt 4727 4312 L
-4727 4312 mt 4731 4317 L
-4731 4317 mt 4752 4345 L
-4752 4345 mt 4762 4356 L
-4762 4356 mt 4777 4372 L
-4777 4372 mt 4797 4392 L
-4797 4392 mt 4807 4400 L
-4807 4400 mt 4832 4421 L
-4832 4421 mt 4841 4427 L
-4841 4427 mt 4867 4447 L
-4867 4447 mt 4878 4455 L
-4878 4455 mt 4902 4472 L
-4902 4472 mt 4915 4482 L
-4915 4482 mt 4936 4499 L
-4936 4499 mt 4951 4510 L
-4951 4510 mt 4971 4526 L
-4971 4526 mt 4985 4537 L
-4985 4537 mt 5006 4555 L
-5006 4555 mt 5015 4565 L
-5015 4565 mt 5041 4591 L
-5041 4591 mt 5042 4592 L
-5042 4592 mt 5067 4620 L
-5067 4620 mt 5076 4628 L
-5076 4628 mt 5095 4648 L
-5095 4648 mt 5111 4661 L
-5111 4661 mt 5127 4675 L
-5127 4675 mt 5146 4688 L
-5146 4688 mt 5167 4703 L
-5167 4703 mt 5181 4711 L
-5181 4711 mt 5215 4730 L
-5215 4730 mt 5215 4730 L
-5215 4730 mt 5250 4747 L
-5250 4747 mt 5273 4758 L
-5273 4758 mt 5285 4763 L
-5285 4763 mt 5320 4777 L
-5320 4777 mt 5342 4785 L
-5342 4785 mt 5355 4790 L
-5355 4790 mt 5390 4802 L
-5390 4802 mt 5425 4813 L
-5425 4813 mt 5425 4813 L
-5425 4813 mt 5459 4823 L
-5459 4823 mt 5494 4832 L
-5494 4832 mt 5526 4840 L
-5526 4840 mt 5529 4841 L
-5529 4841 mt 5564 4849 L
-5564 4849 mt 5599 4856 L
-5599 4856 mt 5634 4862 L
-5634 4862 mt 5666 4868 L
-5666 4868 mt 5669 4868 L
-5669 4868 mt 5704 4873 L
-5704 4873 mt 5738 4877 L
-5738 4877 mt 5773 4881 L
-5773 4881 mt 5808 4884 L
-5808 4884 mt 5843 4886 L
-5843 4886 mt 5878 4888 L
-5878 4888 mt 5913 4889 L
-5913 4889 mt 5948 4889 L
-5948 4889 mt 5983 4888 L
-5983 4888 mt 6017 4887 L
-6017 4887 mt 6052 4885 L
-6052 4885 mt 6087 4881 L
-6087 4881 mt 6122 4877 L
-6122 4877 mt 6157 4872 L
-6157 4872 mt 6182 4868 L
-6182 4868 mt 6192 4866 L
-6192 4866 mt 6227 4859 L
-6227 4859 mt 6261 4851 L
-6261 4851 mt 6296 4842 L
-6296 4842 mt 6302 4840 L
-6302 4840 mt 6331 4832 L
-6331 4832 mt 6366 4820 L
-6366 4820 mt 6385 4813 L
-6385 4813 mt 6401 4807 L
-6401 4807 mt 6436 4792 L
-6436 4792 mt 6450 4785 L
-6450 4785 mt 6471 4775 L
-6471 4775 mt 6504 4758 L
-6504 4758 mt 6506 4757 L
-6506 4757 mt 6540 4736 L
-6540 4736 mt 6550 4730 L
-6550 4730 mt 6575 4713 L
-6575 4713 mt 6590 4703 L
-6590 4703 mt 6610 4687 L
-6610 4687 mt 6626 4675 L
-6626 4675 mt 6645 4659 L
-6645 4659 mt 6658 4648 L
-6658 4648 mt 6680 4628 L
-6680 4628 mt 6689 4620 L
-6689 4620 mt 6715 4595 L
-6715 4595 mt 6717 4592 L
-6717 4592 mt 6744 4565 L
-6744 4565 mt 6750 4559 L
-6750 4559 mt 6771 4537 L
-6771 4537 mt 6785 4523 L
-6785 4523 mt 6797 4510 L
-6797 4510 mt 6819 4485 L
-6819 4485 mt 6822 4482 L
-6822 4482 mt 6847 4455 L
-6847 4455 mt 6854 4447 L
-6854 4447 mt 6872 4427 L
-6872 4427 mt 6889 4409 L
-6889 4409 mt 6897 4400 L
-6897 4400 mt 6922 4372 L
-6922 4372 mt 6924 4371 L
-6924 4371 mt 6948 4345 L
-6948 4345 mt 6959 4333 L
-6959 4333 mt 6973 4317 L
-6973 4317 mt 6994 4294 L
-6994 4294 mt 6998 4290 L
-6998 4290 mt 7023 4262 L
-7023 4262 mt 7029 4255 L
-7029 4255 mt 7047 4235 L
-7047 4235 mt 7063 4216 L
-7063 4216 mt 7071 4207 L
-7071 4207 mt 7094 4180 L
-7094 4180 mt 7098 4175 L
-7098 4175 mt 7117 4152 L
-7117 4152 mt 7133 4133 L
-7133 4133 mt 7140 4125 L
-7140 4125 mt 7162 4097 L
-7162 4097 mt 7168 4090 L
-7168 4090 mt 7184 4070 L
-7184 4070 mt 7203 4046 L
-7203 4046 mt 7206 4042 L
-7206 4042 mt 7227 4015 L
-7227 4015 mt 7238 4000 L
-7238 4000 mt 7248 3987 L
-7248 3987 mt 7269 3960 L
-7269 3960 mt 7273 3954 L
-7273 3954 mt 7290 3932 L
-7290 3932 mt 7308 3909 L
-7308 3909 mt 7311 3905 L
-7311 3905 mt 7333 3877 L
-7333 3877 mt 7342 3865 L
-7342 3865 mt 7354 3850 L
-7354 3850 mt 7376 3822 L
-7376 3822 mt 7377 3820 L
-7377 3820 mt 7397 3795 L
-7397 3795 mt 7412 3774 L
-7412 3774 mt 7418 3767 L
-7418 3767 mt 7439 3740 L
-7439 3740 mt 7447 3729 L
-7447 3729 mt 7460 3712 L
-7460 3712 mt 7481 3685 L
-7481 3685 mt 7482 3683 L
-7482 3683 mt 7503 3657 L
-7503 3657 mt 7517 3639 L
-7517 3639 mt 7525 3630 L
-7525 3630 mt 7547 3602 L
-7547 3602 mt 7552 3597 L
-7552 3597 mt 7571 3575 L
-7571 3575 mt 7587 3556 L
-7587 3556 mt 7595 3547 L
-7595 3547 mt 7619 3519 L
-7619 3519 mt 7621 3517 L
-7621 3517 mt 7645 3492 L
-7645 3492 mt 7656 3479 L
-7656 3479 mt 7671 3464 L
-7671 3464 mt 7691 3443 L
-7691 3443 mt 7698 3437 L
-7698 3437 mt 7725 3409 L
-7725 3409 mt 7726 3409 L
-7726 3409 mt 7755 3382 L
-7755 3382 mt 7761 3376 L
-7761 3376 mt 7785 3354 L
-7785 3354 mt 7796 3344 L
-7796 3344 mt 7817 3327 L
-7817 3327 mt 7831 3315 L
-7831 3315 mt 7850 3299 L
-7850 3299 mt 7865 3287 L
-7865 3287 mt 7886 3272 L
-7886 3272 mt 7900 3261 L
-7900 3261 mt 7925 3244 L
-7925 3244 mt 7935 3237 L
-7935 3237 mt 7969 3217 L
-7969 3217 mt 7970 3216 L
-7970 3216 mt 8005 3198 L
-4092 -992 mt 4100 -989 L
-4100 -989 mt 4134 -973 L
-4134 -973 mt 4153 -964 L
-4153 -964 mt 4169 -957 L
-4169 -957 mt 4204 -941 L
-4204 -941 mt 4213 -937 L
-4213 -937 mt 4239 -925 L
-4239 -925 mt 4273 -909 L
-4273 -909 mt 4274 -909 L
-4274 -909 mt 4309 -893 L
-4309 -893 mt 4333 -882 L
-4333 -882 mt 4344 -877 L
-4344 -877 mt 4379 -862 L
-4379 -862 mt 4397 -854 L
-4397 -854 mt 4413 -847 L
-4413 -847 mt 4448 -833 L
-4448 -833 mt 4463 -827 L
-4463 -827 mt 4483 -819 L
-4483 -819 mt 4518 -805 L
-4518 -805 mt 4532 -799 L
-4532 -799 mt 4553 -791 L
-4553 -791 mt 4588 -777 L
-4588 -777 mt 4600 -772 L
-4600 -772 mt 4623 -762 L
-4623 -762 mt 4657 -747 L
-4657 -747 mt 4665 -744 L
-4665 -744 mt 4692 -732 L
-4692 -732 mt 4727 -717 L
-4727 -717 mt 4728 -717 L
-4728 -717 mt 4762 -701 L
-4762 -701 mt 4788 -689 L
-4788 -689 mt 4797 -685 L
-4797 -685 mt 4832 -669 L
-4832 -669 mt 4847 -661 L
-4847 -661 mt 4867 -653 L
-4867 -653 mt 4902 -636 L
-4902 -636 mt 4906 -634 L
-4906 -634 mt 4936 -620 L
-4936 -620 mt 4965 -606 L
-4965 -606 mt 4971 -603 L
-4971 -603 mt 5006 -587 L
-5006 -587 mt 5023 -579 L
-5023 -579 mt 5041 -570 L
-5041 -570 mt 5076 -554 L
-5076 -554 mt 5081 -551 L
-5081 -551 mt 5111 -537 L
-5111 -537 mt 5138 -524 L
-5138 -524 mt 5146 -520 L
-5146 -520 mt 5181 -504 L
-5181 -504 mt 5195 -496 L
-5195 -496 mt 5215 -487 L
-5215 -487 mt 5250 -470 L
-5250 -470 mt 5252 -469 L
-5252 -469 mt 5285 -453 L
-5285 -453 mt 5308 -441 L
-5308 -441 mt 5320 -436 L
-5320 -436 mt 5355 -418 L
-5355 -418 mt 5364 -414 L
-5364 -414 mt 5390 -401 L
-5390 -401 mt 5418 -386 L
-5418 -386 mt 5425 -383 L
-5425 -383 mt 5459 -365 L
-5459 -365 mt 5472 -359 L
-5472 -359 mt 5494 -347 L
-5494 -347 mt 5524 -331 L
-5524 -331 mt 5529 -329 L
-5529 -329 mt 5564 -310 L
-5564 -310 mt 5576 -304 L
-5576 -304 mt 5599 -292 L
-5599 -292 mt 5626 -276 L
-5626 -276 mt 5634 -272 L
-5634 -272 mt 5669 -253 L
-5669 -253 mt 5676 -249 L
-5676 -249 mt 5704 -233 L
-5704 -233 mt 5724 -221 L
-5724 -221 mt 5738 -213 L
-5738 -213 mt 5771 -194 L
-5771 -194 mt 5773 -192 L
-5773 -192 mt 5808 -171 L
-5808 -171 mt 5816 -166 L
-5816 -166 mt 5843 -149 L
-5843 -149 mt 5860 -139 L
-5860 -139 mt 5878 -127 L
-5878 -127 mt 5902 -111 L
-5902 -111 mt 5913 -104 L
-5913 -104 mt 5943 -84 L
-5943 -84 mt 5948 -81 L
-5948 -81 mt 5983 -57 L
-5983 -57 mt 5983 -56 L
-5983 -56 mt 6017 -32 L
-6017 -32 mt 6022 -29 L
-6022 -29 mt 6052 -7 L
-6052 -7 mt 6060 -1 L
-6060 -1 mt 6087 19 L
-6087 19 mt 6096 25 L
-6096 25 mt 6122 46 L
-6122 46 mt 6131 53 L
-6131 53 mt 6157 73 L
-6157 73 mt 6166 80 L
-6166 80 mt 6192 101 L
-6192 101 mt 6200 108 L
-6200 108 mt 6227 130 L
-6227 130 mt 6233 135 L
-6233 135 mt 6261 160 L
-6261 160 mt 6265 163 L
-6265 163 mt 6296 190 L
-6296 190 mt 6297 190 L
-6297 190 mt 6328 218 L
-6328 218 mt 6331 221 L
-6331 221 mt 6359 245 L
-6359 245 mt 6366 251 L
-6366 251 mt 6390 273 L
-6390 273 mt 6401 283 L
-6401 283 mt 6421 300 L
-6421 300 mt 6436 314 L
-6436 314 mt 6451 328 L
-6451 328 mt 6471 346 L
-6471 346 mt 6482 355 L
-6482 355 mt 6506 377 L
-6506 377 mt 6512 383 L
-6512 383 mt 6540 408 L
-6540 408 mt 6543 411 L
-6543 411 mt 6574 438 L
-6574 438 mt 6575 439 L
-6575 439 mt 6605 466 L
-6605 466 mt 6610 470 L
-6610 470 mt 6636 493 L
-6636 493 mt 6645 501 L
-6645 501 mt 6667 521 L
-6667 521 mt 6680 532 L
-6680 532 mt 6698 548 L
-6698 548 mt 6715 563 L
-6715 563 mt 6729 576 L
-6729 576 mt 6750 595 L
-6750 595 mt 6759 603 L
-6759 603 mt 6785 626 L
-6785 626 mt 6789 631 L
-6789 631 mt 6819 658 L
-6819 658 mt 6819 658 L
-6819 658 mt 6849 686 L
-6849 686 mt 6854 690 L
-6854 690 mt 6879 713 L
-6879 713 mt 6889 722 L
-6889 722 mt 6909 741 L
-6909 741 mt 6924 754 L
-6924 754 mt 6939 768 L
-6939 768 mt 6959 786 L
-6959 786 mt 6969 796 L
-6969 796 mt 6994 819 L
-6994 819 mt 6999 823 L
-6999 823 mt 7028 851 L
-7028 851 mt 7029 851 L
-7029 851 mt 7057 878 L
-7057 878 mt 7063 884 L
-7063 884 mt 7087 906 L
-7087 906 mt 7098 917 L
-7098 917 mt 7116 933 L
-7116 933 mt 7133 950 L
-7133 950 mt 7145 961 L
-7145 961 mt 7168 983 L
-7168 983 mt 7174 988 L
-7174 988 mt 7203 1016 L
-7203 1016 mt 7203 1016 L
-7203 1016 mt 7233 1043 L
-7233 1043 mt 7238 1048 L
-7238 1048 mt 7263 1071 L
-7263 1071 mt 7273 1080 L
-7273 1080 mt 7293 1098 L
-7293 1098 mt 7308 1111 L
-7308 1111 mt 7324 1126 L
-7324 1126 mt 7342 1142 L
-7342 1142 mt 7357 1153 L
-7357 1153 mt 7377 1171 L
-7377 1171 mt 7390 1181 L
-7390 1181 mt 7412 1199 L
-7412 1199 mt 7424 1208 L
-7424 1208 mt 7447 1227 L
-7447 1227 mt 7459 1236 L
-7459 1236 mt 7482 1254 L
-7482 1254 mt 7494 1263 L
-7494 1263 mt 7517 1281 L
-7517 1281 mt 7530 1291 L
-7530 1291 mt 7552 1307 L
-7552 1307 mt 7567 1318 L
-7567 1318 mt 7587 1334 L
-7587 1334 mt 7604 1346 L
-7604 1346 mt 7621 1359 L
-7621 1359 mt 7643 1373 L
-7643 1373 mt 7656 1383 L
-7656 1383 mt 7683 1401 L
-7683 1401 mt 7691 1406 L
-7691 1406 mt 7726 1428 L
-7726 1428 mt 7726 1428 L
-7726 1428 mt 7761 1449 L
-7761 1449 mt 7773 1456 L
-7773 1456 mt 7796 1469 L
-7796 1469 mt 7823 1484 L
-7823 1484 mt 7831 1487 L
-7831 1487 mt 7865 1504 L
-7865 1504 mt 7881 1511 L
-7881 1511 mt 7900 1520 L
-7900 1520 mt 7935 1533 L
-7935 1533 mt 7954 1539 L
-7954 1539 mt 7970 1544 L
-7970 1544 mt 8005 1552 L
--886 1726 mt -853 1731 L
--853 1731 mt -851 1731 L
--851 1731 mt -816 1734 L
--816 1734 mt -781 1732 L
--781 1732 mt -775 1731 L
--775 1731 mt -746 1727 L
--746 1727 mt -711 1718 L
--711 1718 mt -677 1707 L
--677 1707 mt -670 1704 L
--670 1704 mt -642 1691 L
--642 1691 mt -613 1676 L
--613 1676 mt -607 1673 L
--607 1673 mt -572 1651 L
--572 1651 mt -569 1649 L
--569 1649 mt -537 1625 L
--537 1625 mt -533 1621 L
--533 1621 mt -502 1595 L
--502 1595 mt -501 1594 L
--501 1594 mt -472 1566 L
--472 1566 mt -467 1562 L
--467 1562 mt -445 1539 L
--445 1539 mt -433 1526 L
--433 1526 mt -419 1511 L
--419 1511 mt -398 1487 L
--398 1487 mt -395 1484 L
--395 1484 mt -371 1456 L
--371 1456 mt -363 1446 L
--363 1446 mt -349 1428 L
--349 1428 mt -328 1401 L
--328 1401 mt -328 1401 L
--328 1401 mt -308 1373 L
--308 1373 mt -293 1353 L
--293 1353 mt -288 1346 L
--288 1346 mt -269 1318 L
--269 1318 mt -258 1302 L
--258 1302 mt -251 1291 L
--251 1291 mt -234 1263 L
--234 1263 mt -223 1246 L
--223 1246 mt -217 1236 L
--217 1236 mt -201 1208 L
--201 1208 mt -188 1187 L
--188 1187 mt -185 1181 L
--185 1181 mt -170 1153 L
--170 1153 mt -155 1126 L
--155 1126 mt -154 1122 L
--154 1122 mt -141 1098 L
--141 1098 mt -126 1071 L
--126 1071 mt -119 1058 L
--119 1058 mt -111 1043 L
--111 1043 mt -96 1016 L
- -96 1016 mt -84 994 L
- -84 994 mt -80 988 L
- -80 988 mt -65 961 L
- -65 961 mt -49 934 L
- -49 934 mt -48 933 L
- -48 933 mt -32 906 L
- -32 906 mt -14 878 L
- -14 878 mt -14 878 L
- -14 878 mt 2 851 L
- 2 851 mt 20 824 L
- 20 824 mt 21 823 L
- 21 823 mt 39 796 L
- 39 796 mt 55 774 L
- 55 774 mt 58 768 L
- 58 768 mt 78 741 L
- 78 741 mt 90 725 L
- 90 725 mt 98 713 L
- 98 713 mt 119 686 L
- 119 686 mt 124 679 L
- 124 679 mt 140 658 L
- 140 658 mt 159 634 L
- 159 634 mt 162 631 L
- 162 631 mt 184 603 L
- 184 603 mt 194 591 L
- 194 591 mt 207 576 L
- 207 576 mt 229 549 L
- 229 549 mt 230 548 L
- 230 548 mt 253 521 L
- 253 521 mt 264 508 L
- 264 508 mt 277 493 L
- 277 493 mt 299 468 L
- 299 468 mt 300 466 L
- 300 466 mt 324 438 L
- 324 438 mt 334 428 L
- 334 428 mt 349 411 L
- 349 411 mt 368 388 L
- 368 388 mt 373 383 L
- 373 383 mt 398 355 L
- 398 355 mt 403 350 L
- 403 350 mt 423 328 L
- 423 328 mt 438 312 L
- 438 312 mt 450 300 L
- 450 300 mt 473 277 L
- 473 277 mt 477 273 L
- 477 273 mt 505 245 L
- 505 245 mt 508 243 L
- 508 243 mt 535 218 L
- 535 218 mt 543 211 L
- 543 211 mt 567 190 L
- 567 190 mt 578 182 L
- 578 182 mt 601 163 L
- 601 163 mt 613 154 L
- 613 154 mt 637 135 L
- 637 135 mt 647 128 L
- 647 128 mt 676 108 L
- 676 108 mt 682 104 L
- 682 104 mt 717 80 L
- 717 80 mt 717 80 L
- 717 80 mt 752 58 L
- 752 58 mt 760 53 L
- 760 53 mt 787 36 L
- 787 36 mt 805 25 L
- 805 25 mt 822 15 L
- 822 15 mt 851 -1 L
- 851 -1 mt 857 -4 L
- 857 -4 mt 892 -24 L
- 892 -24 mt 900 -29 L
- 900 -29 mt 926 -43 L
- 926 -43 mt 951 -56 L
- 951 -56 mt 961 -62 L
- 961 -62 mt 996 -80 L
- 996 -80 mt 1004 -84 L
-1004 -84 mt 1031 -97 L
-1031 -97 mt 1061 -111 L
-1061 -111 mt 1066 -114 L
-1066 -114 mt 1101 -130 L
-1101 -130 mt 1120 -139 L
-1120 -139 mt 1136 -146 L
-1136 -146 mt 1170 -161 L
-1170 -161 mt 1182 -166 L
-1182 -166 mt 1205 -176 L
-1205 -176 mt 1240 -191 L
-1240 -191 mt 1246 -194 L
-1246 -194 mt 1275 -206 L
-1275 -206 mt 1310 -221 L
-1310 -221 mt 1311 -221 L
-1311 -221 mt 1345 -236 L
-1345 -236 mt 1377 -249 L
-1377 -249 mt 1380 -250 L
-1380 -250 mt 1415 -264 L
-1415 -264 mt 1447 -276 L
-1447 -276 mt 1449 -277 L
-1449 -277 mt 1484 -291 L
-1484 -291 mt 1519 -304 L
-1519 -304 mt 1519 -304 L
-1519 -304 mt 1554 -317 L
-1554 -317 mt 1589 -329 L
-1589 -329 mt 1596 -331 L
-1596 -331 mt 1624 -341 L
-1624 -341 mt 1659 -353 L
-1659 -353 mt 1676 -359 L
-1676 -359 mt 1694 -365 L
-1694 -365 mt 1728 -376 L
-1728 -376 mt 1759 -386 L
-1759 -386 mt 1763 -388 L
-1763 -388 mt 1798 -399 L
-1798 -399 mt 1833 -411 L
-1833 -411 mt 1843 -414 L
-1843 -414 mt 1868 -422 L
-1868 -422 mt 1903 -434 L
-1903 -434 mt 1925 -441 L
-1925 -441 mt 1938 -446 L
-1938 -446 mt 1972 -458 L
-1972 -458 mt 2002 -469 L
-2002 -469 mt 2007 -471 L
-2007 -471 mt 2042 -484 L
-2042 -484 mt 2077 -496 L
-2077 -496 mt 2077 -497 L
-2077 -497 mt 2112 -510 L
-2112 -510 mt 2147 -522 L
-2147 -522 mt 2151 -524 L
-2151 -524 mt 2182 -536 L
-2182 -536 mt 2217 -548 L
-2217 -548 mt 2225 -551 L
-2225 -551 mt 2251 -561 L
-2251 -561 mt 2286 -574 L
-2286 -574 mt 2300 -579 L
-2300 -579 mt 2321 -587 L
-2321 -587 mt 2356 -600 L
-2356 -600 mt 2374 -606 L
-2374 -606 mt 2391 -613 L
-2391 -613 mt 2426 -626 L
-2426 -626 mt 2445 -634 L
-2445 -634 mt 2461 -640 L
-2461 -640 mt 2496 -655 L
-2496 -655 mt 2512 -661 L
-2512 -661 mt 2530 -669 L
-2530 -669 mt 2565 -685 L
-2565 -685 mt 2576 -689 L
-2576 -689 mt 2600 -700 L
-2600 -700 mt 2635 -716 L
-2635 -716 mt 2637 -717 L
-2637 -717 mt 2670 -732 L
-2670 -732 mt 2698 -744 L
-2698 -744 mt 2705 -747 L
-2705 -747 mt 2740 -762 L
-2740 -762 mt 2762 -772 L
-2762 -772 mt 2774 -777 L
-2774 -777 mt 2809 -792 L
-2809 -792 mt 2829 -799 L
-2829 -799 mt 2844 -806 L
-2844 -806 mt 2879 -819 L
-2879 -819 mt 2898 -827 L
-2898 -827 mt 2914 -833 L
-2914 -833 mt 2949 -847 L
-2949 -847 mt 2968 -854 L
-2968 -854 mt 2984 -860 L
-2984 -860 mt 3019 -873 L
-3019 -873 mt 3042 -882 L
-3042 -882 mt 3053 -886 L
-3053 -886 mt 3088 -898 L
-3088 -898 mt 3123 -909 L
-3123 -909 mt 3123 -909 L
-3123 -909 mt 3158 -920 L
-3158 -920 mt 3193 -929 L
-3193 -929 mt 3227 -937 L
-3227 -937 mt 3228 -937 L
-3228 -937 mt 3263 -944 L
-3263 -944 mt 3298 -950 L
-3298 -950 mt 3332 -955 L
-3332 -955 mt 3367 -958 L
-3367 -958 mt 3402 -960 L
-3402 -960 mt 3437 -962 L
-3437 -962 mt 3472 -961 L
-3472 -961 mt 3507 -961 L
-3507 -961 mt 3542 -959 L
-3542 -959 mt 3577 -956 L
-3577 -956 mt 3611 -953 L
-3611 -953 mt 3646 -950 L
-3646 -950 mt 3681 -946 L
-3681 -946 mt 3716 -941 L
-3716 -941 mt 3744 -937 L
-3744 -937 mt 3751 -936 L
-3751 -936 mt 3786 -930 L
-3786 -930 mt 3821 -924 L
-3821 -924 mt 3855 -917 L
-3855 -917 mt 3890 -910 L
-3890 -910 mt 3895 -909 L
-3895 -909 mt 3925 -902 L
-3925 -902 mt 3960 -894 L
-3960 -894 mt 3995 -885 L
-3995 -885 mt 4007 -882 L
-4007 -882 mt 4030 -876 L
-4030 -876 mt 4065 -866 L
-4065 -866 mt 4100 -855 L
-4100 -855 mt 4102 -854 L
-4102 -854 mt 4134 -844 L
-4134 -844 mt 4169 -833 L
-4169 -833 mt 4188 -827 L
-4188 -827 mt 4204 -822 L
-4204 -822 mt 4239 -810 L
-4239 -810 mt 4271 -799 L
-4271 -799 mt 4274 -798 L
-4274 -798 mt 4309 -787 L
-4309 -787 mt 4344 -776 L
-4344 -776 mt 4356 -772 L
-4356 -772 mt 4379 -764 L
-4379 -764 mt 4413 -753 L
-4413 -753 mt 4441 -744 L
-4441 -744 mt 4448 -742 L
-4448 -742 mt 4483 -731 L
-4483 -731 mt 4518 -719 L
-4518 -719 mt 4526 -717 L
-4526 -717 mt 4553 -708 L
-4553 -708 mt 4588 -695 L
-4588 -695 mt 4605 -689 L
-4605 -689 mt 4623 -683 L
-4623 -683 mt 4657 -670 L
-4657 -670 mt 4680 -661 L
-4680 -661 mt 4692 -657 L
-4692 -657 mt 4727 -643 L
-4727 -643 mt 4750 -634 L
-4750 -634 mt 4762 -629 L
-4762 -629 mt 4797 -615 L
-4797 -615 mt 4817 -606 L
-4817 -606 mt 4832 -600 L
-4832 -600 mt 4867 -586 L
-4867 -586 mt 4882 -579 L
-4882 -579 mt 4902 -571 L
-4902 -571 mt 4936 -556 L
-4936 -556 mt 4946 -551 L
-4946 -551 mt 4971 -540 L
-4971 -540 mt 5006 -525 L
-5006 -525 mt 5008 -524 L
-5008 -524 mt 5041 -509 L
-5041 -509 mt 5069 -496 L
-5069 -496 mt 5076 -494 L
-5076 -494 mt 5111 -478 L
-5111 -478 mt 5130 -469 L
-5130 -469 mt 5146 -462 L
-5146 -462 mt 5181 -446 L
-5181 -446 mt 5191 -441 L
-5191 -441 mt 5215 -430 L
-5215 -430 mt 5250 -414 L
-5250 -414 mt 5251 -414 L
-5251 -414 mt 5285 -398 L
-5285 -398 mt 5309 -386 L
-5309 -386 mt 5320 -381 L
-5320 -381 mt 5355 -364 L
-5355 -364 mt 5366 -359 L
-5366 -359 mt 5390 -348 L
-5390 -348 mt 5422 -331 L
-5422 -331 mt 5425 -330 L
-5425 -330 mt 5459 -313 L
-5459 -313 mt 5477 -304 L
-5477 -304 mt 5494 -295 L
-5494 -295 mt 5529 -277 L
-5529 -277 mt 5530 -276 L
-5530 -276 mt 5564 -259 L
-5564 -259 mt 5583 -249 L
-5583 -249 mt 5599 -240 L
-5599 -240 mt 5633 -221 L
-5633 -221 mt 5634 -221 L
-5634 -221 mt 5669 -202 L
-5669 -202 mt 5683 -194 L
-5683 -194 mt 5704 -182 L
-5704 -182 mt 5730 -166 L
-5730 -166 mt 5738 -162 L
-5738 -162 mt 5773 -141 L
-5773 -141 mt 5776 -139 L
-5776 -139 mt 5808 -119 L
-5808 -119 mt 5821 -111 L
-5821 -111 mt 5843 -97 L
-5843 -97 mt 5863 -84 L
-5863 -84 mt 5878 -74 L
-5878 -74 mt 5904 -56 L
-5904 -56 mt 5913 -50 L
-5913 -50 mt 5944 -29 L
-5944 -29 mt 5948 -26 L
-5948 -26 mt 5983 -1 L
-5983 -1 mt 5983 -1 L
-5983 -1 mt 6017 23 L
-6017 23 mt 6020 25 L
-6020 25 mt 6052 50 L
-6052 50 mt 6056 53 L
-6056 53 mt 6087 77 L
-6087 77 mt 6092 80 L
-6092 80 mt 6122 105 L
-6122 105 mt 6126 108 L
-6126 108 mt 6157 133 L
-6157 133 mt 6159 135 L
-6159 135 mt 6192 162 L
-6192 162 mt 6192 163 L
-6192 163 mt 6224 190 L
-6224 190 mt 6227 192 L
-6227 192 mt 6256 218 L
-6256 218 mt 6261 223 L
-6261 223 mt 6287 245 L
-6287 245 mt 6296 254 L
-6296 254 mt 6318 273 L
-6318 273 mt 6331 285 L
-6331 285 mt 6348 300 L
-6348 300 mt 6366 317 L
-6366 317 mt 6378 328 L
-6378 328 mt 6401 349 L
-6401 349 mt 6409 355 L
-6409 355 mt 6436 381 L
-6436 381 mt 6439 383 L
-6439 383 mt 6469 411 L
-6469 411 mt 6471 412 L
-6471 412 mt 6499 438 L
-6499 438 mt 6506 444 L
-6506 444 mt 6530 466 L
-6530 466 mt 6540 475 L
-6540 475 mt 6560 493 L
-6560 493 mt 6575 506 L
-6575 506 mt 6591 521 L
-6591 521 mt 6610 538 L
-6610 538 mt 6622 548 L
-6622 548 mt 6645 569 L
-6645 569 mt 6652 576 L
-6652 576 mt 6680 601 L
-6680 601 mt 6682 603 L
-6682 603 mt 6712 631 L
-6712 631 mt 6715 633 L
-6715 633 mt 6742 658 L
-6742 658 mt 6750 665 L
-6750 665 mt 6772 686 L
-6772 686 mt 6785 697 L
-6785 697 mt 6802 713 L
-6802 713 mt 6819 729 L
-6819 729 mt 6832 741 L
-6832 741 mt 6854 762 L
-6854 762 mt 6861 768 L
-6861 768 mt 6889 794 L
-6889 794 mt 6891 796 L
-6891 796 mt 6920 823 L
-6920 823 mt 6924 827 L
-6924 827 mt 6949 851 L
-6949 851 mt 6959 860 L
-6959 860 mt 6978 878 L
-6978 878 mt 6994 894 L
-6994 894 mt 7006 906 L
-7006 906 mt 7029 928 L
-7029 928 mt 7034 933 L
-7034 933 mt 7063 961 L
-7063 961 mt 7063 962 L
-7063 962 mt 7091 988 L
-7091 988 mt 7098 996 L
-7098 996 mt 7119 1016 L
-7119 1016 mt 7133 1030 L
-7133 1030 mt 7147 1043 L
-7147 1043 mt 7168 1064 L
-7168 1064 mt 7175 1071 L
-7175 1071 mt 7203 1098 L
-7203 1098 mt 7203 1098 L
-7203 1098 mt 7231 1126 L
-7231 1126 mt 7238 1132 L
-7238 1132 mt 7260 1153 L
-7260 1153 mt 7273 1165 L
-7273 1165 mt 7289 1181 L
-7289 1181 mt 7308 1198 L
-7308 1198 mt 7319 1208 L
-7319 1208 mt 7342 1229 L
-7342 1229 mt 7350 1236 L
-7350 1236 mt 7377 1260 L
-7377 1260 mt 7381 1263 L
-7381 1263 mt 7412 1291 L
-7412 1291 mt 7412 1291 L
-7412 1291 mt 7444 1318 L
-7444 1318 mt 7447 1322 L
-7447 1322 mt 7475 1346 L
-7475 1346 mt 7482 1352 L
-7482 1352 mt 7506 1373 L
-7506 1373 mt 7517 1383 L
-7517 1383 mt 7538 1401 L
-7538 1401 mt 7552 1413 L
-7552 1413 mt 7570 1428 L
-7570 1428 mt 7587 1443 L
-7587 1443 mt 7603 1456 L
-7603 1456 mt 7621 1472 L
-7621 1472 mt 7636 1484 L
-7636 1484 mt 7656 1500 L
-7656 1500 mt 7671 1511 L
-7671 1511 mt 7691 1528 L
-7691 1528 mt 7706 1539 L
-7706 1539 mt 7726 1555 L
-7726 1555 mt 7742 1566 L
-7742 1566 mt 7761 1581 L
-7761 1581 mt 7779 1594 L
-7779 1594 mt 7796 1606 L
-7796 1606 mt 7819 1621 L
-7819 1621 mt 7831 1629 L
-7831 1629 mt 7862 1649 L
-7862 1649 mt 7865 1651 L
-7865 1651 mt 7900 1671 L
-7900 1671 mt 7911 1676 L
-7911 1676 mt 7935 1689 L
-7935 1689 mt 7969 1704 L
-7969 1704 mt 7970 1704 L
-7970 1704 mt 8005 1717 L
--886 2946 mt -874 2942 L
--874 2942 mt -851 2933 L
--851 2933 mt -816 2923 L
--816 2923 mt -781 2918 L
--781 2918 mt -746 2918 L
--746 2918 mt -711 2921 L
--711 2921 mt -677 2929 L
--677 2929 mt -642 2939 L
--642 2939 mt -636 2942 L
--636 2942 mt -607 2953 L
--607 2953 mt -572 2968 L
--572 2968 mt -571 2969 L
--571 2969 mt -537 2986 L
--537 2986 mt -518 2997 L
--518 2997 mt -502 3005 L
--502 3005 mt -470 3024 L
--470 3024 mt -467 3025 L
--467 3025 mt -433 3046 L
--433 3046 mt -424 3052 L
--424 3052 mt -398 3068 L
--398 3068 mt -380 3079 L
--380 3079 mt -363 3090 L
--363 3090 mt -337 3107 L
--337 3107 mt -328 3112 L
--328 3112 mt -294 3134 L
--294 3134 mt -293 3135 L
--293 3135 mt -258 3159 L
--258 3159 mt -254 3162 L
--254 3162 mt -223 3183 L
--223 3183 mt -214 3189 L
--214 3189 mt -188 3206 L
--188 3206 mt -174 3217 L
--174 3217 mt -154 3231 L
--154 3231 mt -134 3244 L
--134 3244 mt -119 3255 L
--119 3255 mt -94 3272 L
- -94 3272 mt -84 3279 L
- -84 3279 mt -54 3299 L
- -54 3299 mt -49 3303 L
- -49 3303 mt -14 3327 L
- -14 3327 mt -14 3327 L
- -14 3327 mt 20 3350 L
- 20 3350 mt 26 3354 L
- 26 3354 mt 55 3374 L
- 55 3374 mt 67 3382 L
- 67 3382 mt 90 3397 L
- 90 3397 mt 108 3409 L
- 108 3409 mt 124 3420 L
- 124 3420 mt 149 3437 L
- 149 3437 mt 159 3443 L
- 159 3443 mt 191 3464 L
- 191 3464 mt 194 3467 L
- 194 3467 mt 229 3490 L
- 229 3490 mt 231 3492 L
- 231 3492 mt 264 3515 L
- 264 3515 mt 270 3519 L
- 270 3519 mt 299 3540 L
- 299 3540 mt 308 3547 L
- 308 3547 mt 334 3566 L
- 334 3566 mt 344 3575 L
- 344 3575 mt 368 3594 L
- 368 3594 mt 379 3602 L
- 379 3602 mt 403 3623 L
- 403 3623 mt 411 3630 L
- 411 3630 mt 438 3653 L
- 438 3653 mt 442 3657 L
- 442 3657 mt 473 3685 L
- 473 3685 mt 473 3685 L
- 473 3685 mt 501 3712 L
- 501 3712 mt 508 3719 L
- 508 3719 mt 529 3740 L
- 529 3740 mt 543 3755 L
- 543 3755 mt 554 3767 L
- 554 3767 mt 578 3793 L
- 578 3793 mt 579 3795 L
- 579 3795 mt 601 3822 L
- 601 3822 mt 613 3836 L
- 613 3836 mt 623 3850 L
- 623 3850 mt 642 3877 L
- 642 3877 mt 647 3885 L
- 647 3885 mt 660 3905 L
- 660 3905 mt 677 3932 L
- 677 3932 mt 682 3941 L
- 682 3941 mt 692 3960 L
- 692 3960 mt 707 3987 L
- 707 3987 mt 717 4007 L
- 717 4007 mt 721 4015 L
- 721 4015 mt 734 4042 L
- 734 4042 mt 746 4070 L
- 746 4070 mt 752 4082 L
- 752 4082 mt 759 4097 L
- 759 4097 mt 770 4125 L
- 770 4125 mt 782 4152 L
- 782 4152 mt 787 4164 L
- 787 4164 mt 793 4180 L
- 793 4180 mt 805 4207 L
- 805 4207 mt 816 4235 L
- 816 4235 mt 822 4249 L
- 822 4249 mt 827 4262 L
- 827 4262 mt 839 4290 L
- 839 4290 mt 851 4317 L
- 851 4317 mt 857 4330 L
- 857 4330 mt 863 4345 L
- 863 4345 mt 876 4372 L
- 876 4372 mt 890 4400 L
- 890 4400 mt 892 4404 L
- 892 4404 mt 903 4427 L
- 903 4427 mt 918 4455 L
- 918 4455 mt 926 4472 L
- 926 4472 mt 932 4482 L
- 932 4482 mt 947 4510 L
- 947 4510 mt 961 4536 L
- 961 4536 mt 962 4537 L
- 962 4537 mt 977 4565 L
- 977 4565 mt 992 4592 L
- 992 4592 mt 996 4599 L
- 996 4599 mt 1008 4620 L
-1008 4620 mt 1024 4648 L
-1024 4648 mt 1031 4660 L
-1031 4660 mt 1040 4675 L
-1040 4675 mt 1057 4703 L
-1057 4703 mt 1066 4716 L
-1066 4716 mt 1075 4730 L
-1075 4730 mt 1093 4758 L
-1093 4758 mt 1101 4768 L
-1101 4768 mt 1113 4785 L
-1113 4785 mt 1133 4813 L
-1133 4813 mt 1136 4816 L
-1136 4816 mt 1155 4840 L
-1155 4840 mt 1170 4859 L
-1170 4859 mt 1177 4868 L
-1177 4868 mt 1202 4895 L
-1202 4895 mt 1205 4899 L
-1205 4899 mt 1227 4923 L
-1227 4923 mt 1240 4936 L
-1240 4936 mt 1254 4950 L
-1254 4950 mt 1275 4970 L
-1275 4970 mt 1283 4978 L
-1283 4978 mt 1310 5001 L
-1310 5001 mt 1315 5005 L
-1315 5005 mt 1345 5030 L
-1345 5030 mt 1348 5033 L
-1348 5033 mt 1380 5056 L
-1380 5056 mt 1385 5060 L
-1385 5060 mt 1415 5081 L
-1415 5081 mt 1424 5088 L
-1424 5088 mt 1449 5104 L
-1449 5104 mt 1467 5115 L
-1467 5115 mt 1484 5126 L
-1484 5126 mt 1512 5143 L
-1512 5143 mt 1519 5147 L
-1519 5147 mt 1554 5166 L
-1554 5166 mt 1563 5170 L
-1563 5170 mt 1589 5184 L
-1589 5184 mt 1618 5198 L
-1618 5198 mt 1624 5201 L
-1624 5201 mt 1659 5217 L
-1659 5217 mt 1678 5225 L
-1678 5225 mt 1694 5232 L
-1694 5232 mt 1728 5247 L
-1728 5247 mt 1743 5253 L
-1743 5253 mt 1763 5261 L
-1763 5261 mt 1798 5275 L
-1798 5275 mt 1812 5280 L
-1812 5280 mt 1833 5289 L
-1833 5289 mt 1868 5302 L
-1868 5302 mt 1884 5308 L
-1884 5308 mt 1903 5315 L
-1903 5315 mt 1938 5328 L
-1938 5328 mt 1959 5335 L
-1959 5335 mt 1972 5340 L
-1972 5340 mt 2007 5352 L
-2007 5352 mt 2038 5363 L
-2038 5363 mt 2042 5364 L
-2042 5364 mt 2077 5376 L
-2077 5376 mt 2112 5387 L
-2112 5387 mt 2122 5390 L
-2122 5390 mt 2147 5399 L
-2147 5399 mt 2182 5409 L
-2182 5409 mt 2212 5418 L
-2212 5418 mt 2217 5419 L
-2217 5419 mt 2251 5430 L
-2251 5430 mt 2286 5439 L
-2286 5439 mt 2309 5445 L
-2309 5445 mt 2321 5449 L
-2321 5449 mt 2356 5458 L
-2356 5458 mt 2391 5467 L
-2391 5467 mt 2414 5473 L
-2414 5473 mt 2426 5476 L
-2426 5476 mt 2461 5485 L
-2461 5485 mt 2496 5493 L
-2496 5493 mt 2530 5500 L
-2530 5500 mt 2530 5501 L
-2530 5501 mt 2565 5508 L
-2565 5508 mt 2600 5515 L
-2600 5515 mt 2635 5522 L
-2635 5522 mt 2670 5527 L
-2670 5527 mt 2674 5528 L
-2674 5528 mt 2705 5533 L
-2705 5533 mt 2740 5537 L
-2740 5537 mt 2774 5541 L
-2774 5541 mt 2809 5544 L
-2809 5544 mt 2844 5547 L
-2844 5547 mt 2879 5549 L
-2879 5549 mt 2914 5551 L
-2914 5551 mt 2949 5552 L
-2949 5552 mt 2984 5553 L
-2984 5553 mt 3019 5553 L
-3019 5553 mt 3053 5552 L
-3053 5552 mt 3088 5550 L
-3088 5550 mt 3123 5548 L
-3123 5548 mt 3158 5545 L
-3158 5545 mt 3193 5540 L
-3193 5540 mt 3228 5535 L
-3228 5535 mt 3261 5528 L
-3261 5528 mt 3263 5528 L
-3263 5528 mt 3298 5519 L
-3298 5519 mt 3332 5509 L
-3332 5509 mt 3359 5500 L
-3359 5500 mt 3367 5498 L
-3367 5498 mt 3402 5484 L
-3402 5484 mt 3429 5473 L
-3429 5473 mt 3437 5469 L
-3437 5469 mt 3472 5453 L
-3472 5453 mt 3486 5445 L
-3486 5445 mt 3507 5435 L
-3507 5435 mt 3536 5418 L
-3536 5418 mt 3542 5415 L
-3542 5415 mt 3577 5394 L
-3577 5394 mt 3582 5390 L
-3582 5390 mt 3611 5371 L
-3611 5371 mt 3623 5363 L
-3623 5363 mt 3646 5347 L
-3646 5347 mt 3663 5335 L
-3663 5335 mt 3681 5322 L
-3681 5322 mt 3700 5308 L
-3700 5308 mt 3716 5296 L
-3716 5296 mt 3736 5280 L
-3736 5280 mt 3751 5269 L
-3751 5269 mt 3770 5253 L
-3770 5253 mt 3786 5239 L
-3786 5239 mt 3801 5225 L
-3801 5225 mt 3821 5207 L
-3821 5207 mt 3830 5198 L
-3830 5198 mt 3855 5172 L
-3855 5172 mt 3857 5170 L
-3857 5170 mt 3883 5143 L
-3883 5143 mt 3890 5134 L
-3890 5134 mt 3907 5115 L
-3907 5115 mt 3925 5093 L
-3925 5093 mt 3930 5088 L
-3930 5088 mt 3951 5060 L
-3951 5060 mt 3960 5049 L
-3960 5049 mt 3972 5033 L
-3972 5033 mt 3992 5005 L
-3992 5005 mt 3995 5002 L
-3995 5002 mt 4011 4978 L
-4011 4978 mt 4030 4950 L
-4030 4950 mt 4030 4950 L
-4030 4950 mt 4047 4923 L
-4047 4923 mt 4064 4895 L
-4064 4895 mt 4065 4894 L
-4065 4894 mt 4080 4868 L
-4080 4868 mt 4096 4840 L
-4096 4840 mt 4100 4833 L
-4100 4833 mt 4111 4813 L
-4111 4813 mt 4126 4785 L
-4126 4785 mt 4134 4768 L
-4134 4768 mt 4140 4758 L
-4140 4758 mt 4154 4730 L
-4154 4730 mt 4167 4703 L
-4167 4703 mt 4169 4697 L
-4169 4697 mt 4180 4675 L
-4180 4675 mt 4191 4648 L
-4191 4648 mt 4202 4620 L
-4202 4620 mt 4204 4611 L
-4204 4611 mt 4208 4592 L
-4208 4592 mt 4206 4565 L
-4206 4565 mt 4204 4555 L
-4204 4555 mt 4200 4537 L
-4200 4537 mt 4191 4510 L
-4191 4510 mt 4179 4482 L
-4179 4482 mt 4169 4461 L
-4169 4461 mt 4166 4455 L
-4166 4455 mt 4153 4427 L
-4153 4427 mt 4144 4400 L
-4144 4400 mt 4140 4372 L
-4140 4372 mt 4138 4345 L
-4138 4345 mt 4143 4317 L
-4143 4317 mt 4150 4290 L
-4150 4290 mt 4155 4262 L
-4155 4262 mt 4158 4235 L
-4158 4235 mt 4158 4207 L
-4158 4207 mt 4157 4180 L
-4157 4180 mt 4156 4152 L
-4156 4152 mt 4157 4125 L
-4157 4125 mt 4161 4097 L
-4161 4097 mt 4167 4070 L
-4167 4070 mt 4169 4047 L
-4169 4047 mt 4170 4042 L
-4170 4042 mt 4172 4015 L
-4172 4015 mt 4171 3987 L
-4171 3987 mt 4172 3960 L
-4172 3960 mt 4171 3932 L
-4171 3932 mt 4176 3905 L
-4176 3905 mt 4183 3877 L
-4183 3877 mt 4193 3850 L
-4193 3850 mt 4204 3822 L
-4204 3822 mt 4204 3821 L
-4204 3821 mt 4216 3795 L
-4216 3795 mt 4228 3767 L
-4228 3767 mt 4239 3747 L
-4239 3747 mt 4245 3740 L
-4245 3740 mt 4274 3716 L
-4274 3716 mt 4279 3712 L
-4279 3712 mt 4309 3697 L
-4309 3697 mt 4333 3685 L
-4333 3685 mt 4344 3680 L
-4344 3680 mt 4379 3667 L
-4379 3667 mt 4408 3657 L
-4408 3657 mt 4413 3655 L
-4413 3655 mt 4448 3647 L
-4448 3647 mt 4483 3647 L
-4483 3647 mt 4518 3656 L
-4518 3656 mt 4519 3657 L
-4519 3657 mt 4553 3676 L
-4553 3676 mt 4562 3685 L
-4562 3685 mt 4588 3710 L
-4588 3710 mt 4590 3712 L
-4590 3712 mt 4604 3740 L
-4604 3740 mt 4618 3767 L
-4618 3767 mt 4623 3776 L
-4623 3776 mt 4632 3795 L
-4632 3795 mt 4645 3822 L
-4645 3822 mt 4656 3850 L
-4656 3850 mt 4657 3853 L
-4657 3853 mt 4668 3877 L
-4668 3877 mt 4684 3905 L
-4684 3905 mt 4692 3917 L
-4692 3917 mt 4703 3932 L
-4703 3932 mt 4722 3960 L
-4722 3960 mt 4727 3967 L
-4727 3967 mt 4742 3987 L
-4742 3987 mt 4762 4011 L
-4762 4011 mt 4765 4015 L
-4765 4015 mt 4788 4042 L
-4788 4042 mt 4797 4053 L
-4797 4053 mt 4810 4070 L
-4810 4070 mt 4832 4095 L
-4832 4095 mt 4833 4097 L
-4833 4097 mt 4854 4125 L
-4854 4125 mt 4867 4143 L
-4867 4143 mt 4872 4152 L
-4872 4152 mt 4885 4180 L
-4885 4180 mt 4899 4207 L
-4899 4207 mt 4902 4212 L
-4902 4212 mt 4916 4235 L
-4916 4235 mt 4936 4258 L
-4936 4258 mt 4941 4262 L
-4941 4262 mt 4970 4290 L
-4970 4290 mt 4971 4291 L
-4971 4291 mt 5000 4317 L
-5000 4317 mt 5006 4324 L
-5006 4324 mt 5026 4345 L
-5026 4345 mt 5041 4363 L
-5041 4363 mt 5048 4372 L
-5048 4372 mt 5071 4400 L
-5071 4400 mt 5076 4405 L
-5076 4405 mt 5096 4427 L
-5096 4427 mt 5111 4441 L
-5111 4441 mt 5125 4455 L
-5125 4455 mt 5146 4481 L
-5146 4481 mt 5146 4482 L
-5146 4482 mt 5154 4510 L
-5154 4510 mt 5156 4537 L
-5156 4537 mt 5162 4565 L
-5162 4565 mt 5174 4592 L
-5174 4592 mt 5181 4602 L
-5181 4602 mt 5193 4620 L
-5193 4620 mt 5215 4640 L
-5215 4640 mt 5226 4648 L
-5226 4648 mt 5250 4664 L
-5250 4664 mt 5270 4675 L
-5270 4675 mt 5285 4683 L
-5285 4683 mt 5320 4701 L
-5320 4701 mt 5324 4703 L
-5324 4703 mt 5355 4717 L
-5355 4717 mt 5386 4730 L
-5386 4730 mt 5390 4732 L
-5390 4732 mt 5425 4745 L
-5425 4745 mt 5459 4758 L
-5459 4758 mt 5459 4758 L
-5459 4758 mt 5494 4770 L
-5494 4770 mt 5529 4780 L
-5529 4780 mt 5545 4785 L
-5545 4785 mt 5564 4790 L
-5564 4790 mt 5599 4799 L
-5599 4799 mt 5634 4808 L
-5634 4808 mt 5658 4813 L
-5658 4813 mt 5669 4815 L
-5669 4815 mt 5704 4821 L
-5704 4821 mt 5738 4827 L
-5738 4827 mt 5773 4832 L
-5773 4832 mt 5808 4836 L
-5808 4836 mt 5843 4840 L
-5843 4840 mt 5850 4840 L
-5850 4840 mt 5878 4842 L
-5878 4842 mt 5913 4844 L
-5913 4844 mt 5948 4845 L
-5948 4845 mt 5983 4845 L
-5983 4845 mt 6017 4844 L
-6017 4844 mt 6052 4843 L
-6052 4843 mt 6082 4840 L
-6082 4840 mt 6087 4840 L
-6087 4840 mt 6122 4836 L
-6122 4836 mt 6157 4831 L
-6157 4831 mt 6192 4825 L
-6192 4825 mt 6227 4818 L
-6227 4818 mt 6248 4813 L
-6248 4813 mt 6261 4809 L
-6261 4809 mt 6296 4800 L
-6296 4800 mt 6331 4789 L
-6331 4789 mt 6341 4785 L
-6341 4785 mt 6366 4776 L
-6366 4776 mt 6401 4762 L
-6401 4762 mt 6410 4758 L
-6410 4758 mt 6436 4745 L
-6436 4745 mt 6465 4730 L
-6465 4730 mt 6471 4727 L
-6471 4727 mt 6506 4706 L
-6506 4706 mt 6511 4703 L
-6511 4703 mt 6540 4682 L
-6540 4682 mt 6551 4675 L
-6551 4675 mt 6575 4656 L
-6575 4656 mt 6586 4648 L
-6586 4648 mt 6610 4627 L
-6610 4627 mt 6618 4620 L
-6618 4620 mt 6645 4595 L
-6645 4595 mt 6648 4592 L
-6648 4592 mt 6675 4565 L
-6675 4565 mt 6680 4560 L
-6680 4560 mt 6702 4537 L
-6702 4537 mt 6715 4523 L
-6715 4523 mt 6727 4510 L
-6727 4510 mt 6750 4484 L
-6750 4484 mt 6751 4482 L
-6751 4482 mt 6776 4455 L
-6776 4455 mt 6785 4445 L
-6785 4445 mt 6800 4427 L
-6800 4427 mt 6819 4404 L
-6819 4404 mt 6823 4400 L
-6823 4400 mt 6847 4372 L
-6847 4372 mt 6854 4363 L
-6854 4363 mt 6870 4345 L
-6870 4345 mt 6889 4322 L
-6889 4322 mt 6894 4317 L
-6894 4317 mt 6917 4290 L
-6917 4290 mt 6924 4282 L
-6924 4282 mt 6940 4262 L
-6940 4262 mt 6959 4240 L
-6959 4240 mt 6963 4235 L
-6963 4235 mt 6986 4207 L
-6986 4207 mt 6994 4198 L
-6994 4198 mt 7008 4180 L
-7008 4180 mt 7029 4154 L
-7029 4154 mt 7030 4152 L
-7030 4152 mt 7052 4125 L
-7052 4125 mt 7063 4110 L
-7063 4110 mt 7073 4097 L
-7073 4097 mt 7094 4070 L
-7094 4070 mt 7098 4064 L
-7098 4064 mt 7114 4042 L
-7114 4042 mt 7133 4016 L
-7133 4016 mt 7134 4015 L
-7134 4015 mt 7154 3987 L
-7154 3987 mt 7168 3967 L
-7168 3967 mt 7173 3960 L
-7173 3960 mt 7192 3932 L
-7192 3932 mt 7203 3917 L
-7203 3917 mt 7212 3905 L
-7212 3905 mt 7231 3877 L
-7231 3877 mt 7238 3868 L
-7238 3868 mt 7251 3850 L
-7251 3850 mt 7271 3822 L
-7271 3822 mt 7273 3820 L
-7273 3820 mt 7291 3795 L
-7291 3795 mt 7308 3771 L
-7308 3771 mt 7310 3767 L
-7310 3767 mt 7329 3740 L
-7329 3740 mt 7342 3720 L
-7342 3720 mt 7348 3712 L
-7348 3712 mt 7367 3685 L
-7367 3685 mt 7377 3669 L
-7377 3669 mt 7386 3657 L
-7386 3657 mt 7404 3630 L
-7404 3630 mt 7412 3618 L
-7412 3618 mt 7423 3602 L
-7423 3602 mt 7442 3575 L
-7442 3575 mt 7447 3567 L
-7447 3567 mt 7462 3547 L
-7462 3547 mt 7482 3519 L
-7482 3519 mt 7482 3519 L
-7482 3519 mt 7502 3492 L
-7502 3492 mt 7517 3472 L
-7517 3472 mt 7523 3464 L
-7523 3464 mt 7544 3437 L
-7544 3437 mt 7552 3427 L
-7552 3427 mt 7565 3409 L
-7565 3409 mt 7587 3382 L
-7587 3382 mt 7587 3382 L
-7587 3382 mt 7609 3354 L
-7609 3354 mt 7621 3338 L
-7621 3338 mt 7631 3327 L
-7631 3327 mt 7653 3299 L
-7653 3299 mt 7656 3295 L
-7656 3295 mt 7676 3272 L
-7676 3272 mt 7691 3253 L
-7691 3253 mt 7699 3244 L
-7699 3244 mt 7722 3217 L
-7722 3217 mt 7726 3213 L
-7726 3213 mt 7747 3189 L
-7747 3189 mt 7761 3173 L
-7761 3173 mt 7771 3162 L
-7771 3162 mt 7796 3135 L
-7796 3135 mt 7797 3134 L
-7797 3134 mt 7824 3107 L
-7824 3107 mt 7831 3100 L
-7831 3100 mt 7852 3079 L
-7852 3079 mt 7865 3067 L
-7865 3067 mt 7883 3052 L
-7883 3052 mt 7900 3037 L
-7900 3037 mt 7916 3024 L
-7916 3024 mt 7935 3009 L
-7935 3009 mt 7954 2997 L
-7954 2997 mt 7970 2985 L
-7970 2985 mt 7997 2969 L
-7997 2969 mt 8005 2964 L
--886 1984 mt -851 1994 L
--851 1994 mt -816 1997 L
--816 1997 mt -781 1993 L
--781 1993 mt -746 1982 L
--746 1982 mt -739 1979 L
--739 1979 mt -711 1966 L
--711 1966 mt -688 1951 L
--688 1951 mt -677 1945 L
--677 1945 mt -648 1924 L
--648 1924 mt -642 1920 L
--642 1920 mt -613 1896 L
--613 1896 mt -607 1892 L
--607 1892 mt -581 1869 L
--581 1869 mt -572 1861 L
--572 1861 mt -551 1841 L
--551 1841 mt -537 1828 L
--537 1828 mt -523 1814 L
--523 1814 mt -502 1794 L
--502 1794 mt -495 1786 L
--495 1786 mt -469 1759 L
--469 1759 mt -467 1756 L
--467 1756 mt -446 1731 L
--446 1731 mt -433 1715 L
--433 1715 mt -423 1704 L
--423 1704 mt -402 1676 L
--402 1676 mt -398 1671 L
--398 1671 mt -382 1649 L
--382 1649 mt -363 1623 L
--363 1623 mt -362 1621 L
--362 1621 mt -343 1594 L
--343 1594 mt -328 1573 L
--328 1573 mt -323 1566 L
--323 1566 mt -305 1539 L
--305 1539 mt -293 1522 L
--293 1522 mt -286 1511 L
--286 1511 mt -268 1484 L
--268 1484 mt -258 1469 L
--258 1469 mt -250 1456 L
--250 1456 mt -233 1428 L
--233 1428 mt -223 1413 L
--223 1413 mt -217 1401 L
--217 1401 mt -200 1373 L
--200 1373 mt -188 1353 L
--188 1353 mt -184 1346 L
--184 1346 mt -169 1318 L
--169 1318 mt -154 1291 L
--154 1291 mt -154 1290 L
--154 1290 mt -140 1263 L
--140 1263 mt -126 1236 L
--126 1236 mt -119 1221 L
--119 1221 mt -112 1208 L
--112 1208 mt -99 1181 L
- -99 1181 mt -86 1153 L
- -86 1153 mt -84 1149 L
- -84 1149 mt -73 1126 L
- -73 1126 mt -60 1098 L
- -60 1098 mt -49 1076 L
- -49 1076 mt -46 1071 L
- -46 1071 mt -33 1043 L
- -33 1043 mt -19 1016 L
- -19 1016 mt -14 1007 L
- -14 1007 mt -4 988 L
- -4 988 mt 10 961 L
- 10 961 mt 20 944 L
- 20 944 mt 26 933 L
- 26 933 mt 42 906 L
- 42 906 mt 55 885 L
- 55 885 mt 58 878 L
- 58 878 mt 75 851 L
- 75 851 mt 90 829 L
- 90 829 mt 93 823 L
- 93 823 mt 111 796 L
- 111 796 mt 124 776 L
- 124 776 mt 130 768 L
- 130 768 mt 149 741 L
- 149 741 mt 159 727 L
- 159 727 mt 169 713 L
- 169 713 mt 189 686 L
- 189 686 mt 194 679 L
- 194 679 mt 210 658 L
- 210 658 mt 229 634 L
- 229 634 mt 231 631 L
- 231 631 mt 253 603 L
- 253 603 mt 264 590 L
- 264 590 mt 275 576 L
- 275 576 mt 298 548 L
- 298 548 mt 299 547 L
- 299 547 mt 321 521 L
- 321 521 mt 334 505 L
- 334 505 mt 344 493 L
- 344 493 mt 368 466 L
- 368 466 mt 368 465 L
- 368 465 mt 391 438 L
- 391 438 mt 403 424 L
- 403 424 mt 415 411 L
- 415 411 mt 438 385 L
- 438 385 mt 440 383 L
- 440 383 mt 465 355 L
- 465 355 mt 473 347 L
- 473 347 mt 491 328 L
- 491 328 mt 508 311 L
- 508 311 mt 518 300 L
- 518 300 mt 543 277 L
- 543 277 mt 547 273 L
- 547 273 mt 577 245 L
- 577 245 mt 578 244 L
- 578 244 mt 608 218 L
- 608 218 mt 613 214 L
- 613 214 mt 642 190 L
- 642 190 mt 647 186 L
- 647 186 mt 679 163 L
- 679 163 mt 682 160 L
- 682 160 mt 717 136 L
- 717 136 mt 717 135 L
- 717 135 mt 752 112 L
- 752 112 mt 759 108 L
- 759 108 mt 787 90 L
- 787 90 mt 802 80 L
- 802 80 mt 822 68 L
- 822 68 mt 847 53 L
- 847 53 mt 857 47 L
- 857 47 mt 892 27 L
- 892 27 mt 895 25 L
- 895 25 mt 926 8 L
- 926 8 mt 944 -1 L
- 944 -1 mt 961 -10 L
- 961 -10 mt 996 -28 L
- 996 -28 mt 997 -29 L
- 997 -29 mt 1031 -46 L
-1031 -46 mt 1053 -56 L
-1053 -56 mt 1066 -63 L
-1066 -63 mt 1101 -79 L
-1101 -79 mt 1112 -84 L
-1112 -84 mt 1136 -95 L
-1136 -95 mt 1170 -110 L
-1170 -110 mt 1174 -111 L
-1174 -111 mt 1205 -125 L
-1205 -125 mt 1239 -139 L
-1239 -139 mt 1240 -139 L
-1240 -139 mt 1275 -154 L
-1275 -154 mt 1306 -166 L
-1306 -166 mt 1310 -168 L
-1310 -168 mt 1345 -182 L
-1345 -182 mt 1376 -194 L
-1376 -194 mt 1380 -195 L
-1380 -195 mt 1415 -209 L
-1415 -209 mt 1448 -221 L
-1448 -221 mt 1449 -222 L
-1449 -222 mt 1484 -235 L
-1484 -235 mt 1519 -247 L
-1519 -247 mt 1525 -249 L
-1525 -249 mt 1554 -259 L
-1554 -259 mt 1589 -271 L
-1589 -271 mt 1606 -276 L
-1606 -276 mt 1624 -282 L
-1624 -282 mt 1659 -293 L
-1659 -293 mt 1692 -304 L
-1692 -304 mt 1694 -304 L
-1694 -304 mt 1728 -315 L
-1728 -315 mt 1763 -326 L
-1763 -326 mt 1782 -331 L
-1782 -331 mt 1798 -336 L
-1798 -336 mt 1833 -347 L
-1833 -347 mt 1868 -358 L
-1868 -358 mt 1872 -359 L
-1872 -359 mt 1903 -368 L
-1903 -368 mt 1938 -379 L
-1938 -379 mt 1961 -386 L
-1961 -386 mt 1972 -390 L
-1972 -390 mt 2007 -401 L
-2007 -401 mt 2042 -413 L
-2042 -413 mt 2046 -414 L
-2046 -414 mt 2077 -424 L
-2077 -424 mt 2112 -436 L
-2112 -436 mt 2130 -441 L
-2130 -441 mt 2147 -447 L
-2147 -447 mt 2182 -459 L
-2182 -459 mt 2214 -469 L
-2214 -469 mt 2217 -470 L
-2217 -470 mt 2251 -481 L
-2251 -481 mt 2286 -492 L
-2286 -492 mt 2300 -496 L
-2300 -496 mt 2321 -503 L
-2321 -503 mt 2356 -514 L
-2356 -514 mt 2388 -524 L
-2388 -524 mt 2391 -525 L
-2391 -525 mt 2426 -536 L
-2426 -536 mt 2461 -547 L
-2461 -547 mt 2475 -551 L
-2475 -551 mt 2496 -558 L
-2496 -558 mt 2530 -570 L
-2530 -570 mt 2557 -579 L
-2557 -579 mt 2565 -582 L
-2565 -582 mt 2600 -595 L
-2600 -595 mt 2634 -606 L
-2634 -606 mt 2635 -607 L
-2635 -607 mt 2670 -620 L
-2670 -620 mt 2705 -632 L
-2705 -632 mt 2709 -634 L
-2709 -634 mt 2740 -645 L
-2740 -645 mt 2774 -658 L
-2774 -658 mt 2785 -661 L
-2785 -661 mt 2809 -670 L
-2809 -670 mt 2844 -682 L
-2844 -682 mt 2864 -689 L
-2864 -689 mt 2879 -694 L
-2879 -694 mt 2914 -706 L
-2914 -706 mt 2949 -716 L
-2949 -716 mt 2949 -717 L
-2949 -717 mt 2984 -727 L
-2984 -727 mt 3019 -738 L
-3019 -738 mt 3042 -744 L
-3042 -744 mt 3053 -747 L
-3053 -747 mt 3088 -757 L
-3088 -757 mt 3123 -766 L
-3123 -766 mt 3149 -772 L
-3149 -772 mt 3158 -774 L
-3158 -774 mt 3193 -782 L
-3193 -782 mt 3228 -789 L
-3228 -789 mt 3263 -795 L
-3263 -795 mt 3289 -799 L
-3289 -799 mt 3298 -801 L
-3298 -801 mt 3332 -805 L
-3332 -805 mt 3367 -810 L
-3367 -810 mt 3402 -813 L
-3402 -813 mt 3437 -816 L
-3437 -816 mt 3472 -817 L
-3472 -817 mt 3507 -818 L
-3507 -818 mt 3542 -819 L
-3542 -819 mt 3577 -818 L
-3577 -818 mt 3611 -817 L
-3611 -817 mt 3646 -815 L
-3646 -815 mt 3681 -813 L
-3681 -813 mt 3716 -811 L
-3716 -811 mt 3751 -807 L
-3751 -807 mt 3786 -804 L
-3786 -804 mt 3821 -799 L
-3821 -799 mt 3824 -799 L
-3824 -799 mt 3855 -795 L
-3855 -795 mt 3890 -790 L
-3890 -790 mt 3925 -785 L
-3925 -785 mt 3960 -779 L
-3960 -779 mt 3995 -772 L
-3995 -772 mt 3999 -772 L
-3999 -772 mt 4030 -765 L
-4030 -765 mt 4065 -758 L
-4065 -758 mt 4100 -750 L
-4100 -750 mt 4124 -744 L
-4124 -744 mt 4134 -742 L
-4134 -742 mt 4169 -733 L
-4169 -733 mt 4204 -725 L
-4204 -725 mt 4236 -717 L
-4236 -717 mt 4239 -716 L
-4239 -716 mt 4274 -707 L
-4274 -707 mt 4309 -698 L
-4309 -698 mt 4344 -690 L
-4344 -690 mt 4346 -689 L
-4346 -689 mt 4379 -681 L
-4379 -681 mt 4413 -672 L
-4413 -672 mt 4448 -663 L
-4448 -663 mt 4452 -661 L
-4452 -661 mt 4483 -653 L
-4483 -653 mt 4518 -643 L
-4518 -643 mt 4549 -634 L
-4549 -634 mt 4553 -633 L
-4553 -633 mt 4588 -623 L
-4588 -623 mt 4623 -612 L
-4623 -612 mt 4638 -606 L
-4638 -606 mt 4657 -600 L
-4657 -600 mt 4692 -589 L
-4692 -589 mt 4720 -579 L
-4720 -579 mt 4727 -576 L
-4727 -576 mt 4762 -564 L
-4762 -564 mt 4796 -551 L
-4796 -551 mt 4797 -551 L
-4797 -551 mt 4832 -538 L
-4832 -538 mt 4867 -524 L
-4867 -524 mt 4867 -524 L
-4867 -524 mt 4902 -510 L
-4902 -510 mt 4936 -496 L
-4936 -496 mt 4936 -496 L
-4936 -496 mt 4971 -482 L
-4971 -482 mt 5002 -469 L
-5002 -469 mt 5006 -467 L
-5006 -467 mt 5041 -453 L
-5041 -453 mt 5068 -441 L
-5068 -441 mt 5076 -438 L
-5076 -438 mt 5111 -423 L
-5111 -423 mt 5132 -414 L
-5132 -414 mt 5146 -408 L
-5146 -408 mt 5181 -393 L
-5181 -393 mt 5196 -386 L
-5196 -386 mt 5215 -378 L
-5215 -378 mt 5250 -362 L
-5250 -362 mt 5258 -359 L
-5258 -359 mt 5285 -347 L
-5285 -347 mt 5318 -331 L
-5318 -331 mt 5320 -331 L
-5320 -331 mt 5355 -314 L
-5355 -314 mt 5377 -304 L
-5377 -304 mt 5390 -298 L
-5390 -298 mt 5425 -281 L
-5425 -281 mt 5434 -276 L
-5434 -276 mt 5459 -264 L
-5459 -264 mt 5489 -249 L
-5489 -249 mt 5494 -246 L
-5494 -246 mt 5529 -228 L
-5529 -228 mt 5543 -221 L
-5543 -221 mt 5564 -210 L
-5564 -210 mt 5595 -194 L
-5595 -194 mt 5599 -192 L
-5599 -192 mt 5634 -173 L
-5634 -173 mt 5645 -166 L
-5645 -166 mt 5669 -153 L
-5669 -153 mt 5694 -139 L
-5694 -139 mt 5704 -133 L
-5704 -133 mt 5738 -112 L
-5738 -112 mt 5740 -111 L
-5740 -111 mt 5773 -91 L
-5773 -91 mt 5785 -84 L
-5785 -84 mt 5808 -69 L
-5808 -69 mt 5827 -56 L
-5827 -56 mt 5843 -46 L
-5843 -46 mt 5869 -29 L
-5869 -29 mt 5878 -22 L
-5878 -22 mt 5908 -1 L
-5908 -1 mt 5913 1 L
-5913 1 mt 5947 25 L
-5947 25 mt 5948 26 L
-5948 26 mt 5983 52 L
-5983 52 mt 5984 53 L
-5984 53 mt 6017 78 L
-6017 78 mt 6020 80 L
-6020 80 mt 6052 105 L
-6052 105 mt 6055 108 L
-6055 108 mt 6087 133 L
-6087 133 mt 6089 135 L
-6089 135 mt 6122 162 L
-6122 162 mt 6123 163 L
-6123 163 mt 6155 190 L
-6155 190 mt 6157 192 L
-6157 192 mt 6187 218 L
-6187 218 mt 6192 222 L
-6192 222 mt 6218 245 L
-6218 245 mt 6227 253 L
-6227 253 mt 6249 273 L
-6249 273 mt 6261 284 L
-6261 284 mt 6280 300 L
-6280 300 mt 6296 316 L
-6296 316 mt 6310 328 L
-6310 328 mt 6331 348 L
-6331 348 mt 6339 355 L
-6339 355 mt 6366 380 L
-6366 380 mt 6369 383 L
-6369 383 mt 6399 411 L
-6399 411 mt 6401 412 L
-6401 412 mt 6429 438 L
-6429 438 mt 6436 444 L
-6436 444 mt 6459 466 L
-6459 466 mt 6471 476 L
-6471 476 mt 6489 493 L
-6489 493 mt 6506 508 L
-6506 508 mt 6519 521 L
-6519 521 mt 6540 540 L
-6540 540 mt 6550 548 L
-6550 548 mt 6575 572 L
-6575 572 mt 6580 576 L
-6580 576 mt 6610 603 L
-6610 603 mt 6610 604 L
-6610 604 mt 6640 631 L
-6640 631 mt 6645 635 L
-6645 635 mt 6670 658 L
-6670 658 mt 6680 668 L
-6680 668 mt 6700 686 L
-6700 686 mt 6715 700 L
-6715 700 mt 6729 713 L
-6729 713 mt 6750 732 L
-6750 732 mt 6759 741 L
-6759 741 mt 6785 765 L
-6785 765 mt 6788 768 L
-6788 768 mt 6817 796 L
-6817 796 mt 6819 798 L
-6819 798 mt 6846 823 L
-6846 823 mt 6854 831 L
-6854 831 mt 6875 851 L
-6875 851 mt 6889 865 L
-6889 865 mt 6903 878 L
-6903 878 mt 6924 899 L
-6924 899 mt 6931 906 L
-6931 906 mt 6959 933 L
-6959 933 mt 6959 933 L
-6959 933 mt 6987 961 L
-6987 961 mt 6994 968 L
-6994 968 mt 7014 988 L
-7014 988 mt 7029 1003 L
-7029 1003 mt 7042 1016 L
-7042 1016 mt 7063 1038 L
-7063 1038 mt 7069 1043 L
-7069 1043 mt 7096 1071 L
-7096 1071 mt 7098 1074 L
-7098 1074 mt 7122 1098 L
-7122 1098 mt 7133 1110 L
-7133 1110 mt 7149 1126 L
-7149 1126 mt 7168 1146 L
-7168 1146 mt 7175 1153 L
-7175 1153 mt 7202 1181 L
-7202 1181 mt 7203 1182 L
-7203 1182 mt 7229 1208 L
-7229 1208 mt 7238 1217 L
-7238 1217 mt 7257 1236 L
-7257 1236 mt 7273 1252 L
-7273 1252 mt 7285 1263 L
-7285 1263 mt 7308 1286 L
-7308 1286 mt 7313 1291 L
-7313 1291 mt 7341 1318 L
-7341 1318 mt 7342 1320 L
-7342 1320 mt 7369 1346 L
-7369 1346 mt 7377 1354 L
-7377 1354 mt 7397 1373 L
-7397 1373 mt 7412 1389 L
-7412 1389 mt 7425 1401 L
-7425 1401 mt 7447 1423 L
-7447 1423 mt 7452 1428 L
-7452 1428 mt 7480 1456 L
-7480 1456 mt 7482 1458 L
-7482 1458 mt 7507 1484 L
-7507 1484 mt 7517 1493 L
-7517 1493 mt 7535 1511 L
-7535 1511 mt 7552 1528 L
-7552 1528 mt 7562 1539 L
-7562 1539 mt 7587 1563 L
-7587 1563 mt 7590 1566 L
-7590 1566 mt 7617 1594 L
-7617 1594 mt 7621 1599 L
-7621 1599 mt 7644 1621 L
-7644 1621 mt 7656 1634 L
-7656 1634 mt 7671 1649 L
-7671 1649 mt 7691 1670 L
-7691 1670 mt 7697 1676 L
-7697 1676 mt 7724 1704 L
-7724 1704 mt 7726 1706 L
-7726 1706 mt 7751 1731 L
-7751 1731 mt 7761 1742 L
-7761 1742 mt 7778 1759 L
-7778 1759 mt 7796 1777 L
-7796 1777 mt 7805 1786 L
-7805 1786 mt 7831 1813 L
-7831 1813 mt 7831 1814 L
-7831 1814 mt 7859 1841 L
-7859 1841 mt 7865 1849 L
-7865 1849 mt 7886 1869 L
-7886 1869 mt 7900 1884 L
-7900 1884 mt 7914 1896 L
-7914 1896 mt 7935 1916 L
-7935 1916 mt 7945 1924 L
-7945 1924 mt 7970 1945 L
-7970 1945 mt 7981 1951 L
-7981 1951 mt 8005 1968 L
--886 2580 mt -851 2567 L
--851 2567 mt -816 2562 L
--816 2562 mt -781 2566 L
--781 2566 mt -746 2577 L
--746 2577 mt -733 2584 L
--733 2584 mt -711 2594 L
--711 2594 mt -685 2612 L
--685 2612 mt -677 2617 L
--677 2617 mt -650 2639 L
--650 2639 mt -642 2645 L
--642 2645 mt -619 2667 L
--619 2667 mt -607 2677 L
--607 2677 mt -590 2694 L
--590 2694 mt -572 2711 L
--572 2711 mt -561 2722 L
--561 2722 mt -537 2745 L
--537 2745 mt -533 2749 L
--533 2749 mt -505 2777 L
--505 2777 mt -502 2779 L
--502 2779 mt -478 2804 L
--478 2804 mt -467 2814 L
--467 2814 mt -450 2832 L
--450 2832 mt -433 2849 L
--433 2849 mt -423 2859 L
--423 2859 mt -398 2884 L
--398 2884 mt -395 2887 L
--395 2887 mt -366 2914 L
--366 2914 mt -363 2917 L
--363 2917 mt -337 2942 L
--337 2942 mt -328 2950 L
--328 2950 mt -307 2969 L
--307 2969 mt -293 2982 L
--293 2982 mt -276 2997 L
--276 2997 mt -258 3012 L
--258 3012 mt -244 3024 L
--244 3024 mt -223 3042 L
--223 3042 mt -212 3052 L
--212 3052 mt -188 3071 L
--188 3071 mt -179 3079 L
--179 3079 mt -154 3100 L
--154 3100 mt -146 3107 L
--146 3107 mt -119 3129 L
--119 3129 mt -113 3134 L
--113 3134 mt -84 3158 L
- -84 3158 mt -79 3162 L
- -79 3162 mt -49 3186 L
- -49 3186 mt -45 3189 L
- -45 3189 mt -14 3214 L
- -14 3214 mt -10 3217 L
- -10 3217 mt 20 3241 L
- 20 3241 mt 24 3244 L
- 24 3244 mt 55 3268 L
- 55 3268 mt 60 3272 L
- 60 3272 mt 90 3294 L
- 90 3294 mt 97 3299 L
- 97 3299 mt 124 3319 L
- 124 3319 mt 135 3327 L
- 135 3327 mt 159 3344 L
- 159 3344 mt 173 3354 L
- 173 3354 mt 194 3369 L
- 194 3369 mt 212 3382 L
- 212 3382 mt 229 3394 L
- 229 3394 mt 251 3409 L
- 251 3409 mt 264 3419 L
- 264 3419 mt 290 3437 L
- 290 3437 mt 299 3443 L
- 299 3443 mt 328 3464 L
- 328 3464 mt 334 3469 L
- 334 3469 mt 364 3492 L
- 364 3492 mt 368 3495 L
- 368 3495 mt 400 3519 L
- 400 3519 mt 403 3522 L
- 403 3522 mt 434 3547 L
- 434 3547 mt 438 3551 L
- 438 3551 mt 466 3575 L
- 466 3575 mt 473 3580 L
- 473 3580 mt 498 3602 L
- 498 3602 mt 508 3611 L
- 508 3611 mt 528 3630 L
- 528 3630 mt 543 3643 L
- 543 3643 mt 558 3657 L
- 558 3657 mt 578 3676 L
- 578 3676 mt 586 3685 L
- 586 3685 mt 613 3712 L
- 613 3712 mt 613 3712 L
- 613 3712 mt 637 3740 L
- 637 3740 mt 647 3751 L
- 647 3751 mt 661 3767 L
- 661 3767 mt 682 3795 L
- 682 3795 mt 682 3795 L
- 682 3795 mt 701 3822 L
- 701 3822 mt 717 3847 L
- 717 3847 mt 719 3850 L
- 719 3850 mt 735 3877 L
- 735 3877 mt 750 3905 L
- 750 3905 mt 752 3908 L
- 752 3908 mt 764 3932 L
- 764 3932 mt 777 3960 L
- 777 3960 mt 787 3983 L
- 787 3983 mt 789 3987 L
- 789 3987 mt 800 4015 L
- 800 4015 mt 812 4042 L
- 812 4042 mt 822 4068 L
- 822 4068 mt 822 4070 L
- 822 4070 mt 833 4097 L
- 833 4097 mt 843 4125 L
- 843 4125 mt 853 4152 L
- 853 4152 mt 857 4162 L
- 857 4162 mt 863 4180 L
- 863 4180 mt 873 4207 L
- 873 4207 mt 883 4235 L
- 883 4235 mt 892 4256 L
- 892 4256 mt 894 4262 L
- 894 4262 mt 905 4290 L
- 905 4290 mt 916 4317 L
- 916 4317 mt 926 4342 L
- 926 4342 mt 928 4345 L
- 928 4345 mt 940 4372 L
- 940 4372 mt 953 4400 L
- 953 4400 mt 961 4418 L
- 961 4418 mt 966 4427 L
- 966 4427 mt 980 4455 L
- 980 4455 mt 994 4482 L
- 994 4482 mt 996 4487 L
- 996 4487 mt 1008 4510 L
-1008 4510 mt 1023 4537 L
-1023 4537 mt 1031 4551 L
-1031 4551 mt 1038 4565 L
-1038 4565 mt 1054 4592 L
-1054 4592 mt 1066 4613 L
-1066 4613 mt 1070 4620 L
-1070 4620 mt 1086 4648 L
-1086 4648 mt 1101 4672 L
-1101 4672 mt 1103 4675 L
-1103 4675 mt 1120 4703 L
-1120 4703 mt 1136 4726 L
-1136 4726 mt 1138 4730 L
-1138 4730 mt 1158 4758 L
-1158 4758 mt 1170 4775 L
-1170 4775 mt 1178 4785 L
-1178 4785 mt 1200 4813 L
-1200 4813 mt 1205 4820 L
-1205 4820 mt 1222 4840 L
-1222 4840 mt 1240 4860 L
-1240 4860 mt 1247 4868 L
-1247 4868 mt 1273 4895 L
-1273 4895 mt 1275 4898 L
-1275 4898 mt 1300 4923 L
-1300 4923 mt 1310 4932 L
-1310 4932 mt 1330 4950 L
-1330 4950 mt 1345 4963 L
-1345 4963 mt 1362 4978 L
-1362 4978 mt 1380 4992 L
-1380 4992 mt 1397 5005 L
-1397 5005 mt 1415 5018 L
-1415 5018 mt 1435 5033 L
-1435 5033 mt 1449 5043 L
-1449 5043 mt 1475 5060 L
-1475 5060 mt 1484 5066 L
-1484 5066 mt 1519 5087 L
-1519 5087 mt 1520 5088 L
-1520 5088 mt 1554 5107 L
-1554 5107 mt 1569 5115 L
-1569 5115 mt 1589 5126 L
-1589 5126 mt 1623 5143 L
-1623 5143 mt 1624 5143 L
-1624 5143 mt 1659 5160 L
-1659 5160 mt 1682 5170 L
-1682 5170 mt 1694 5175 L
-1694 5175 mt 1728 5190 L
-1728 5190 mt 1748 5198 L
-1748 5198 mt 1763 5204 L
-1763 5204 mt 1798 5218 L
-1798 5218 mt 1819 5225 L
-1819 5225 mt 1833 5231 L
-1833 5231 mt 1868 5244 L
-1868 5244 mt 1894 5253 L
-1894 5253 mt 1903 5256 L
-1903 5256 mt 1938 5268 L
-1938 5268 mt 1972 5279 L
-1972 5279 mt 1976 5280 L
-1976 5280 mt 2007 5291 L
-2007 5291 mt 2042 5301 L
-2042 5301 mt 2065 5308 L
-2065 5308 mt 2077 5312 L
-2077 5312 mt 2112 5322 L
-2112 5322 mt 2147 5331 L
-2147 5331 mt 2163 5335 L
-2163 5335 mt 2182 5340 L
-2182 5340 mt 2217 5349 L
-2217 5349 mt 2251 5358 L
-2251 5358 mt 2275 5363 L
-2275 5363 mt 2286 5365 L
-2286 5365 mt 2321 5373 L
-2321 5373 mt 2356 5380 L
-2356 5380 mt 2391 5387 L
-2391 5387 mt 2408 5390 L
-2408 5390 mt 2426 5394 L
-2426 5394 mt 2461 5400 L
-2461 5400 mt 2496 5406 L
-2496 5406 mt 2530 5412 L
-2530 5412 mt 2565 5417 L
-2565 5417 mt 2572 5418 L
-2572 5418 mt 2600 5422 L
-2600 5422 mt 2635 5426 L
-2635 5426 mt 2670 5429 L
-2670 5429 mt 2705 5432 L
-2705 5432 mt 2740 5434 L
-2740 5434 mt 2774 5435 L
-2774 5435 mt 2809 5436 L
-2809 5436 mt 2844 5436 L
-2844 5436 mt 2879 5435 L
-2879 5435 mt 2914 5434 L
-2914 5434 mt 2949 5432 L
-2949 5432 mt 2984 5430 L
-2984 5430 mt 3019 5427 L
-3019 5427 mt 3053 5424 L
-3053 5424 mt 3088 5419 L
-3088 5419 mt 3099 5418 L
-3099 5418 mt 3123 5415 L
-3123 5415 mt 3158 5409 L
-3158 5409 mt 3193 5402 L
-3193 5402 mt 3228 5394 L
-3228 5394 mt 3244 5390 L
-3244 5390 mt 3263 5386 L
-3263 5386 mt 3298 5375 L
-3298 5375 mt 3332 5364 L
-3332 5364 mt 3335 5363 L
-3335 5363 mt 3367 5351 L
-3367 5351 mt 3402 5337 L
-3402 5337 mt 3406 5335 L
-3406 5335 mt 3437 5322 L
-3437 5322 mt 3466 5308 L
-3466 5308 mt 3472 5305 L
-3472 5305 mt 3507 5287 L
-3507 5287 mt 3519 5280 L
-3519 5280 mt 3542 5268 L
-3542 5268 mt 3567 5253 L
-3567 5253 mt 3577 5248 L
-3577 5248 mt 3611 5226 L
-3611 5226 mt 3613 5225 L
-3613 5225 mt 3646 5203 L
-3646 5203 mt 3654 5198 L
-3654 5198 mt 3681 5179 L
-3681 5179 mt 3693 5170 L
-3693 5170 mt 3716 5152 L
-3716 5152 mt 3728 5143 L
-3728 5143 mt 3751 5123 L
-3751 5123 mt 3760 5115 L
-3760 5115 mt 3786 5092 L
-3786 5092 mt 3790 5088 L
-3790 5088 mt 3817 5060 L
-3817 5060 mt 3821 5057 L
-3821 5057 mt 3843 5033 L
-3843 5033 mt 3855 5019 L
-3855 5019 mt 3868 5005 L
-3868 5005 mt 3890 4978 L
-3890 4978 mt 3891 4978 L
-3891 4978 mt 3913 4950 L
-3913 4950 mt 3925 4934 L
-3925 4934 mt 3933 4923 L
-3933 4923 mt 3953 4895 L
-3953 4895 mt 3960 4885 L
-3960 4885 mt 3972 4868 L
-3972 4868 mt 3989 4840 L
-3989 4840 mt 3995 4831 L
-3995 4831 mt 4006 4813 L
-4006 4813 mt 4022 4785 L
-4022 4785 mt 4030 4772 L
-4030 4772 mt 4038 4758 L
-4038 4758 mt 4053 4730 L
-4053 4730 mt 4065 4708 L
-4065 4708 mt 4068 4703 L
-4068 4703 mt 4082 4675 L
-4082 4675 mt 4095 4648 L
-4095 4648 mt 4100 4638 L
-4100 4638 mt 4108 4620 L
-4108 4620 mt 4116 4592 L
-4116 4592 mt 4116 4565 L
-4116 4565 mt 4110 4537 L
-4110 4537 mt 4100 4510 L
-4100 4510 mt 4100 4509 L
-4100 4509 mt 4086 4482 L
-4086 4482 mt 4070 4455 L
-4070 4455 mt 4065 4443 L
-4065 4443 mt 4057 4427 L
-4057 4427 mt 4047 4400 L
-4047 4400 mt 4041 4372 L
-4041 4372 mt 4039 4345 L
-4039 4345 mt 4047 4317 L
-4047 4317 mt 4058 4290 L
-4058 4290 mt 4065 4266 L
-4065 4266 mt 4066 4262 L
-4066 4262 mt 4068 4235 L
-4068 4235 mt 4071 4207 L
-4071 4207 mt 4073 4180 L
-4073 4180 mt 4074 4152 L
-4074 4152 mt 4073 4125 L
-4073 4125 mt 4073 4097 L
-4073 4097 mt 4072 4070 L
-4072 4070 mt 4069 4042 L
-4069 4042 mt 4065 4025 L
-4065 4025 mt 4062 4015 L
-4062 4015 mt 4054 3987 L
-4054 3987 mt 4045 3960 L
-4045 3960 mt 4038 3932 L
-4038 3932 mt 4035 3905 L
-4035 3905 mt 4036 3877 L
-4036 3877 mt 4041 3850 L
-4041 3850 mt 4045 3822 L
-4045 3822 mt 4048 3795 L
-4048 3795 mt 4051 3767 L
-4051 3767 mt 4051 3740 L
-4051 3740 mt 4051 3712 L
-4051 3712 mt 4051 3685 L
-4051 3685 mt 4055 3657 L
-4055 3657 mt 4065 3636 L
-4065 3636 mt 4071 3630 L
-4071 3630 mt 4100 3612 L
-4100 3612 mt 4121 3602 L
-4121 3602 mt 4134 3595 L
-4134 3595 mt 4169 3579 L
-4169 3579 mt 4178 3575 L
-4178 3575 mt 4204 3559 L
-4204 3559 mt 4221 3547 L
-4221 3547 mt 4239 3533 L
-4239 3533 mt 4253 3519 L
-4253 3519 mt 4274 3495 L
-4274 3495 mt 4276 3492 L
-4276 3492 mt 4295 3464 L
-4295 3464 mt 4309 3442 L
-4309 3442 mt 4312 3437 L
-4312 3437 mt 4328 3409 L
-4328 3409 mt 4342 3382 L
-4342 3382 mt 4344 3378 L
-4344 3378 mt 4356 3354 L
-4356 3354 mt 4369 3327 L
-4369 3327 mt 4379 3310 L
-4379 3310 mt 4413 3305 L
-4413 3305 mt 4448 3327 L
-4448 3327 mt 4448 3327 L
-4448 3327 mt 4483 3352 L
-4483 3352 mt 4487 3354 L
-4487 3354 mt 4518 3377 L
-4518 3377 mt 4524 3382 L
-4524 3382 mt 4553 3405 L
-4553 3405 mt 4558 3409 L
-4558 3409 mt 4584 3437 L
-4584 3437 mt 4588 3441 L
-4588 3441 mt 4605 3464 L
-4605 3464 mt 4623 3492 L
-4623 3492 mt 4623 3492 L
-4623 3492 mt 4638 3519 L
-4638 3519 mt 4656 3547 L
-4656 3547 mt 4657 3550 L
-4657 3550 mt 4673 3575 L
-4673 3575 mt 4692 3602 L
-4692 3602 mt 4692 3603 L
-4692 3603 mt 4710 3630 L
-4710 3630 mt 4727 3656 L
-4727 3656 mt 4728 3657 L
-4728 3657 mt 4744 3685 L
-4744 3685 mt 4762 3712 L
-4762 3712 mt 4762 3713 L
-4762 3713 mt 4777 3740 L
-4777 3740 mt 4795 3767 L
-4795 3767 mt 4797 3771 L
-4797 3771 mt 4811 3795 L
-4811 3795 mt 4830 3822 L
-4830 3822 mt 4832 3825 L
-4832 3825 mt 4850 3850 L
-4850 3850 mt 4867 3868 L
-4867 3868 mt 4874 3877 L
-4874 3877 mt 4899 3905 L
-4899 3905 mt 4902 3908 L
-4902 3908 mt 4921 3932 L
-4921 3932 mt 4936 3952 L
-4936 3952 mt 4942 3960 L
-4942 3960 mt 4959 3987 L
-4959 3987 mt 4971 4011 L
-4971 4011 mt 4973 4015 L
-4973 4015 mt 4986 4042 L
-4986 4042 mt 4999 4070 L
-4999 4070 mt 5006 4083 L
-5006 4083 mt 5014 4097 L
-5014 4097 mt 5033 4125 L
-5033 4125 mt 5041 4135 L
-5041 4135 mt 5056 4152 L
-5056 4152 mt 5076 4171 L
-5076 4171 mt 5087 4180 L
-5087 4180 mt 5111 4199 L
-5111 4199 mt 5122 4207 L
-5122 4207 mt 5146 4225 L
-5146 4225 mt 5157 4235 L
-5157 4235 mt 5181 4255 L
-5181 4255 mt 5186 4262 L
-5186 4262 mt 5207 4290 L
-5207 4290 mt 5215 4303 L
-5215 4303 mt 5223 4317 L
-5223 4317 mt 5238 4345 L
-5238 4345 mt 5250 4371 L
-5250 4371 mt 5251 4372 L
-5251 4372 mt 5260 4400 L
-5260 4400 mt 5265 4427 L
-5265 4427 mt 5267 4455 L
-5267 4455 mt 5265 4482 L
-5265 4482 mt 5261 4510 L
-5261 4510 mt 5260 4537 L
-5260 4537 mt 5264 4565 L
-5264 4565 mt 5285 4592 L
-5285 4592 mt 5285 4592 L
-5285 4592 mt 5320 4619 L
-5320 4619 mt 5321 4620 L
-5321 4620 mt 5355 4642 L
-5355 4642 mt 5365 4648 L
-5365 4648 mt 5390 4661 L
-5390 4661 mt 5419 4675 L
-5419 4675 mt 5425 4678 L
-5425 4678 mt 5459 4693 L
-5459 4693 mt 5482 4703 L
-5482 4703 mt 5494 4708 L
-5494 4708 mt 5529 4721 L
-5529 4721 mt 5556 4730 L
-5556 4730 mt 5564 4733 L
-5564 4733 mt 5599 4744 L
-5599 4744 mt 5634 4754 L
-5634 4754 mt 5649 4758 L
-5649 4758 mt 5669 4763 L
-5669 4763 mt 5704 4771 L
-5704 4771 mt 5738 4778 L
-5738 4778 mt 5773 4784 L
-5773 4784 mt 5778 4785 L
-5778 4785 mt 5808 4790 L
-5808 4790 mt 5843 4795 L
-5843 4795 mt 5878 4798 L
-5878 4798 mt 5913 4801 L
-5913 4801 mt 5948 4803 L
-5948 4803 mt 5983 4804 L
-5983 4804 mt 6017 4804 L
-6017 4804 mt 6052 4803 L
-6052 4803 mt 6087 4800 L
-6087 4800 mt 6122 4797 L
-6122 4797 mt 6157 4792 L
-6157 4792 mt 6192 4786 L
-6192 4786 mt 6195 4785 L
-6195 4785 mt 6227 4778 L
-6227 4778 mt 6261 4770 L
-6261 4770 mt 6296 4760 L
-6296 4760 mt 6302 4758 L
-6302 4758 mt 6331 4748 L
-6331 4748 mt 6366 4734 L
-6366 4734 mt 6375 4730 L
-6375 4730 mt 6401 4718 L
-6401 4718 mt 6430 4703 L
-6430 4703 mt 6436 4700 L
-6436 4700 mt 6471 4679 L
-6471 4679 mt 6476 4675 L
-6476 4675 mt 6506 4655 L
-6506 4655 mt 6516 4648 L
-6516 4648 mt 6540 4628 L
-6540 4628 mt 6550 4620 L
-6550 4620 mt 6575 4598 L
-6575 4598 mt 6581 4592 L
-6581 4592 mt 6609 4565 L
-6609 4565 mt 6610 4564 L
-6610 4564 mt 6636 4537 L
-6636 4537 mt 6645 4528 L
-6645 4528 mt 6661 4510 L
-6661 4510 mt 6680 4488 L
-6680 4488 mt 6685 4482 L
-6685 4482 mt 6708 4455 L
-6708 4455 mt 6715 4447 L
-6715 4447 mt 6731 4427 L
-6731 4427 mt 6750 4405 L
-6750 4405 mt 6754 4400 L
-6754 4400 mt 6776 4372 L
-6776 4372 mt 6785 4361 L
-6785 4361 mt 6798 4345 L
-6798 4345 mt 6819 4317 L
-6819 4317 mt 6819 4317 L
-6819 4317 mt 6841 4290 L
-6841 4290 mt 6854 4273 L
-6854 4273 mt 6863 4262 L
-6863 4262 mt 6885 4235 L
-6885 4235 mt 6889 4229 L
-6889 4229 mt 6906 4207 L
-6906 4207 mt 6924 4184 L
-6924 4184 mt 6927 4180 L
-6927 4180 mt 6948 4152 L
-6948 4152 mt 6959 4138 L
-6959 4138 mt 6969 4125 L
-6969 4125 mt 6989 4097 L
-6989 4097 mt 6994 4090 L
-6994 4090 mt 7008 4070 L
-7008 4070 mt 7027 4042 L
-7027 4042 mt 7029 4040 L
-7029 4040 mt 7046 4015 L
-7046 4015 mt 7063 3989 L
-7063 3989 mt 7065 3987 L
-7065 3987 mt 7083 3960 L
-7083 3960 mt 7098 3936 L
-7098 3936 mt 7101 3932 L
-7101 3932 mt 7119 3905 L
-7119 3905 mt 7133 3883 L
-7133 3883 mt 7137 3877 L
-7137 3877 mt 7155 3850 L
-7155 3850 mt 7168 3830 L
-7168 3830 mt 7174 3822 L
-7174 3822 mt 7192 3795 L
-7192 3795 mt 7203 3778 L
-7203 3778 mt 7210 3767 L
-7210 3767 mt 7228 3740 L
-7228 3740 mt 7238 3725 L
-7238 3725 mt 7246 3712 L
-7246 3712 mt 7263 3685 L
-7263 3685 mt 7273 3669 L
-7273 3669 mt 7280 3657 L
-7280 3657 mt 7296 3630 L
-7296 3630 mt 7308 3611 L
-7308 3611 mt 7313 3602 L
-7313 3602 mt 7329 3575 L
-7329 3575 mt 7342 3552 L
-7342 3552 mt 7346 3547 L
-7346 3547 mt 7363 3519 L
-7363 3519 mt 7377 3496 L
-7377 3496 mt 7380 3492 L
-7380 3492 mt 7398 3464 L
-7398 3464 mt 7412 3442 L
-7412 3442 mt 7415 3437 L
-7415 3437 mt 7434 3409 L
-7434 3409 mt 7447 3389 L
-7447 3389 mt 7452 3382 L
-7452 3382 mt 7470 3354 L
-7470 3354 mt 7482 3336 L
-7482 3336 mt 7488 3327 L
-7488 3327 mt 7507 3299 L
-7507 3299 mt 7517 3284 L
-7517 3284 mt 7525 3272 L
-7525 3272 mt 7543 3244 L
-7543 3244 mt 7552 3231 L
-7552 3231 mt 7561 3217 L
-7561 3217 mt 7579 3189 L
-7579 3189 mt 7587 3178 L
-7587 3178 mt 7598 3162 L
-7598 3162 mt 7615 3134 L
-7615 3134 mt 7621 3125 L
-7621 3125 mt 7634 3107 L
-7634 3107 mt 7651 3079 L
-7651 3079 mt 7656 3072 L
-7656 3072 mt 7670 3052 L
-7670 3052 mt 7688 3024 L
-7688 3024 mt 7691 3019 L
-7691 3019 mt 7707 2997 L
-7707 2997 mt 7725 2969 L
-7725 2969 mt 7726 2968 L
-7726 2968 mt 7745 2942 L
-7745 2942 mt 7761 2919 L
-7761 2919 mt 7764 2914 L
-7764 2914 mt 7784 2887 L
-7784 2887 mt 7796 2869 L
-7796 2869 mt 7803 2859 L
-7803 2859 mt 7823 2832 L
-7823 2832 mt 7831 2820 L
-7831 2820 mt 7842 2804 L
-7842 2804 mt 7861 2777 L
-7861 2777 mt 7865 2770 L
-7865 2770 mt 7880 2749 L
-7880 2749 mt 7899 2722 L
-7899 2722 mt 7900 2719 L
-7900 2719 mt 7919 2694 L
-7919 2694 mt 7935 2673 L
-7935 2673 mt 7941 2667 L
-7941 2667 mt 7965 2639 L
-7965 2639 mt 7970 2633 L
-7970 2633 mt 7994 2612 L
-7994 2612 mt 8005 2602 L
-7796 2144 mt 7800 2171 L
-7800 2171 mt 7804 2199 L
-7804 2199 mt 7806 2226 L
-7806 2226 mt 7806 2254 L
-7806 2254 mt 7804 2281 L
-7804 2281 mt 7802 2309 L
-7802 2309 mt 7797 2336 L
-7797 2336 mt 7796 2345 L
-7796 2345 mt 7792 2364 L
-7792 2364 mt 7786 2391 L
-7786 2391 mt 7779 2419 L
-7779 2419 mt 7772 2446 L
-7772 2446 mt 7764 2474 L
-7764 2474 mt 7761 2484 L
-7761 2484 mt 7756 2502 L
-7756 2502 mt 7748 2529 L
-7748 2529 mt 7740 2557 L
-7740 2557 mt 7732 2584 L
-7732 2584 mt 7726 2602 L
-7726 2602 mt 7723 2612 L
-7723 2612 mt 7714 2639 L
-7714 2639 mt 7704 2667 L
-7704 2667 mt 7694 2694 L
-7694 2694 mt 7691 2700 L
-7691 2700 mt 7683 2722 L
-7683 2722 mt 7672 2749 L
-7672 2749 mt 7659 2777 L
-7659 2777 mt 7656 2783 L
-7656 2783 mt 7647 2804 L
-7647 2804 mt 7633 2832 L
-7633 2832 mt 7621 2855 L
-7621 2855 mt 7619 2859 L
-7619 2859 mt 7605 2887 L
-7605 2887 mt 7591 2914 L
-7591 2914 mt 7587 2923 L
-7587 2923 mt 7577 2942 L
-7577 2942 mt 7563 2969 L
-7563 2969 mt 7552 2990 L
-7552 2990 mt 7548 2997 L
-7548 2997 mt 7534 3024 L
-7534 3024 mt 7520 3052 L
-7520 3052 mt 7517 3058 L
-7517 3058 mt 7506 3079 L
-7506 3079 mt 7492 3107 L
-7492 3107 mt 7482 3125 L
-7482 3125 mt 7477 3134 L
-7477 3134 mt 7462 3162 L
-7462 3162 mt 7447 3189 L
-7447 3189 mt 7447 3189 L
-7447 3189 mt 7432 3217 L
-7432 3217 mt 7416 3244 L
-7416 3244 mt 7412 3251 L
-7412 3251 mt 7400 3272 L
-7400 3272 mt 7384 3299 L
-7384 3299 mt 7377 3310 L
-7377 3310 mt 7368 3327 L
-7368 3327 mt 7352 3354 L
-7352 3354 mt 7342 3370 L
-7342 3370 mt 7335 3382 L
-7335 3382 mt 7319 3409 L
-7319 3409 mt 7308 3430 L
-7308 3430 mt 7303 3437 L
-7303 3437 mt 7288 3464 L
-7288 3464 mt 7273 3491 L
-7273 3491 mt 7272 3492 L
-7272 3492 mt 7257 3519 L
-7257 3519 mt 7242 3547 L
-7242 3547 mt 7238 3555 L
-7238 3555 mt 7227 3575 L
-7227 3575 mt 7213 3602 L
-7213 3602 mt 7203 3620 L
-7203 3620 mt 7198 3630 L
-7198 3630 mt 7182 3657 L
-7182 3657 mt 7168 3682 L
-7168 3682 mt 7167 3685 L
-7167 3685 mt 7151 3712 L
-7151 3712 mt 7134 3740 L
-7134 3740 mt 7133 3741 L
-7133 3741 mt 7117 3767 L
-7117 3767 mt 7100 3795 L
-7100 3795 mt 7098 3797 L
-7098 3797 mt 7083 3822 L
-7083 3822 mt 7066 3850 L
-7066 3850 mt 7063 3853 L
-7063 3853 mt 7049 3877 L
-7049 3877 mt 7032 3905 L
-7032 3905 mt 7029 3910 L
-7029 3910 mt 7015 3932 L
-7015 3932 mt 6998 3960 L
-6998 3960 mt 6994 3966 L
-6994 3966 mt 6981 3987 L
-6981 3987 mt 6963 4015 L
-6963 4015 mt 6959 4021 L
-6959 4021 mt 6945 4042 L
-6945 4042 mt 6927 4070 L
-6927 4070 mt 6924 4074 L
-6924 4074 mt 6908 4097 L
-6908 4097 mt 6889 4125 L
-6889 4125 mt 6889 4125 L
-6889 4125 mt 6870 4152 L
-6870 4152 mt 6854 4173 L
-6854 4173 mt 6850 4180 L
-6850 4180 mt 6830 4207 L
-6830 4207 mt 6819 4222 L
-6819 4222 mt 6810 4235 L
-6810 4235 mt 6790 4262 L
-6790 4262 mt 6785 4270 L
-6785 4270 mt 6770 4290 L
-6770 4290 mt 6750 4317 L
-6750 4317 mt 6749 4317 L
-6749 4317 mt 6729 4345 L
-6729 4345 mt 6715 4364 L
-6715 4364 mt 6709 4372 L
-6709 4372 mt 6688 4400 L
-6688 4400 mt 6680 4410 L
-6680 4410 mt 6667 4427 L
-6667 4427 mt 6645 4454 L
-6645 4454 mt 6645 4455 L
-6645 4455 mt 6622 4482 L
-6622 4482 mt 6610 4497 L
-6610 4497 mt 6599 4510 L
-6599 4510 mt 6575 4536 L
-6575 4536 mt 6574 4537 L
-6574 4537 mt 6547 4565 L
-6547 4565 mt 6540 4571 L
-6540 4571 mt 6517 4592 L
-6517 4592 mt 6506 4602 L
-6506 4602 mt 6484 4620 L
-6484 4620 mt 6471 4630 L
-6471 4630 mt 6446 4648 L
-6446 4648 mt 6436 4654 L
-6436 4654 mt 6401 4675 L
-6401 4675 mt 6401 4675 L
-6401 4675 mt 6366 4693 L
-6366 4693 mt 6344 4703 L
-6344 4703 mt 6331 4708 L
-6331 4708 mt 6296 4721 L
-6296 4721 mt 6268 4730 L
-6268 4730 mt 6261 4732 L
-6261 4732 mt 6227 4741 L
-6227 4741 mt 6192 4749 L
-6192 4749 mt 6157 4755 L
-6157 4755 mt 6135 4758 L
-6135 4758 mt 6122 4759 L
-6122 4759 mt 6087 4763 L
-6087 4763 mt 6052 4765 L
-6052 4765 mt 6017 4765 L
-6017 4765 mt 5983 4764 L
-5983 4764 mt 5948 4763 L
-5948 4763 mt 5913 4759 L
-5913 4759 mt 5896 4758 L
-5896 4758 mt 5878 4755 L
-5878 4755 mt 5843 4750 L
-5843 4750 mt 5808 4744 L
-5808 4744 mt 5773 4737 L
-5773 4737 mt 5743 4730 L
-5743 4730 mt 5738 4729 L
-5738 4729 mt 5704 4720 L
-5704 4720 mt 5669 4710 L
-5669 4710 mt 5643 4703 L
-5643 4703 mt 5634 4700 L
-5634 4700 mt 5599 4688 L
-5599 4688 mt 5565 4675 L
-5565 4675 mt 5564 4675 L
-5564 4675 mt 5529 4659 L
-5529 4659 mt 5505 4648 L
-5505 4648 mt 5494 4642 L
-5494 4642 mt 5459 4623 L
-5459 4623 mt 5453 4620 L
-5453 4620 mt 5425 4604 L
-5425 4604 mt 5405 4592 L
-5405 4592 mt 5390 4576 L
-5390 4576 mt 5382 4565 L
-5382 4565 mt 5375 4537 L
-5375 4537 mt 5372 4510 L
-5372 4510 mt 5371 4482 L
-5371 4482 mt 5369 4455 L
-5369 4455 mt 5366 4427 L
-5366 4427 mt 5360 4400 L
-5360 4400 mt 5355 4382 L
-5355 4382 mt 5352 4372 L
-5352 4372 mt 5344 4345 L
-5344 4345 mt 5334 4317 L
-5334 4317 mt 5325 4290 L
-5325 4290 mt 5320 4276 L
-5320 4276 mt 5315 4262 L
-5315 4262 mt 5306 4235 L
-5306 4235 mt 5296 4207 L
-5296 4207 mt 5285 4186 L
-5285 4186 mt 5282 4180 L
-5282 4180 mt 5265 4152 L
-5265 4152 mt 5250 4133 L
-5250 4133 mt 5243 4125 L
-5243 4125 mt 5215 4101 L
-5215 4101 mt 5211 4097 L
-5211 4097 mt 5181 4077 L
-5181 4077 mt 5170 4070 L
-5170 4070 mt 5146 4054 L
-5146 4054 mt 5132 4042 L
-5132 4042 mt 5111 4023 L
-5111 4023 mt 5104 4015 L
-5104 4015 mt 5082 3987 L
-5082 3987 mt 5076 3979 L
-5076 3979 mt 5063 3960 L
-5063 3960 mt 5043 3932 L
-5043 3932 mt 5041 3930 L
-5041 3930 mt 5019 3905 L
-5019 3905 mt 5006 3892 L
-5006 3892 mt 4992 3877 L
-4992 3877 mt 4971 3856 L
-4971 3856 mt 4966 3850 L
-4966 3850 mt 4942 3822 L
-4942 3822 mt 4936 3816 L
-4936 3816 mt 4920 3795 L
-4920 3795 mt 4902 3769 L
-4902 3769 mt 4900 3767 L
-4900 3767 mt 4881 3740 L
-4881 3740 mt 4867 3717 L
-4867 3717 mt 4864 3712 L
-4864 3712 mt 4847 3685 L
-4847 3685 mt 4832 3660 L
-4832 3660 mt 4830 3657 L
-4830 3657 mt 4811 3630 L
-4811 3630 mt 4797 3609 L
-4797 3609 mt 4792 3602 L
-4792 3602 mt 4772 3575 L
-4772 3575 mt 4762 3559 L
-4762 3559 mt 4754 3547 L
-4754 3547 mt 4738 3519 L
-4738 3519 mt 4727 3500 L
-4727 3500 mt 4722 3492 L
-4722 3492 mt 4707 3464 L
-4707 3464 mt 4692 3438 L
-4692 3438 mt 4692 3437 L
-4692 3437 mt 4673 3409 L
-4673 3409 mt 4657 3389 L
-4657 3389 mt 4651 3382 L
-4651 3382 mt 4625 3354 L
-4625 3354 mt 4623 3352 L
-4623 3352 mt 4596 3327 L
-4596 3327 mt 4588 3319 L
-4588 3319 mt 4567 3299 L
-4567 3299 mt 4553 3285 L
-4553 3285 mt 4539 3272 L
-4539 3272 mt 4518 3250 L
-4518 3250 mt 4513 3244 L
-4513 3244 mt 4485 3217 L
-4485 3217 mt 4483 3215 L
-4483 3215 mt 4455 3189 L
-4455 3189 mt 4448 3183 L
-4448 3183 mt 4422 3162 L
-4422 3162 mt 4413 3155 L
-4413 3155 mt 4387 3134 L
-4387 3134 mt 4379 3128 L
-4379 3128 mt 4347 3107 L
-4347 3107 mt 4344 3104 L
-4344 3104 mt 4309 3085 L
-4309 3085 mt 4294 3079 L
-4294 3079 mt 4274 3074 L
-4274 3074 mt 4239 3079 L
-4239 3079 mt 4238 3079 L
-4238 3079 mt 4204 3104 L
-4204 3104 mt 4202 3107 L
-4202 3107 mt 4190 3134 L
-4190 3134 mt 4184 3162 L
-4184 3162 mt 4180 3189 L
-4180 3189 mt 4172 3217 L
-4172 3217 mt 4169 3225 L
-4169 3225 mt 4162 3244 L
-4162 3244 mt 4151 3272 L
-4151 3272 mt 4137 3299 L
-4137 3299 mt 4134 3305 L
-4134 3305 mt 4123 3327 L
-4123 3327 mt 4106 3354 L
-4106 3354 mt 4100 3364 L
-4100 3364 mt 4084 3382 L
-4084 3382 mt 4065 3402 L
-4065 3402 mt 4056 3409 L
-4056 3409 mt 4030 3428 L
-4030 3428 mt 4016 3437 L
-4016 3437 mt 3995 3449 L
-3995 3449 mt 3970 3464 L
-3970 3464 mt 3960 3471 L
-3960 3471 mt 3938 3492 L
-3938 3492 mt 3925 3508 L
-3925 3508 mt 3920 3519 L
-3920 3519 mt 3918 3547 L
-3918 3547 mt 3922 3575 L
-3922 3575 mt 3925 3587 L
-3925 3587 mt 3929 3602 L
-3929 3602 mt 3935 3630 L
-3935 3630 mt 3942 3657 L
-3942 3657 mt 3949 3685 L
-3949 3685 mt 3955 3712 L
-3955 3712 mt 3959 3740 L
-3959 3740 mt 3960 3756 L
-3960 3756 mt 3961 3767 L
-3961 3767 mt 3960 3783 L
-3960 3783 mt 3960 3795 L
-3960 3795 mt 3956 3822 L
-3956 3822 mt 3953 3850 L
-3953 3850 mt 3949 3877 L
-3949 3877 mt 3947 3905 L
-3947 3905 mt 3949 3932 L
-3949 3932 mt 3954 3960 L
-3954 3960 mt 3960 3986 L
-3960 3986 mt 3960 3987 L
-3960 3987 mt 3969 4015 L
-3969 4015 mt 3975 4042 L
-3975 4042 mt 3980 4070 L
-3980 4070 mt 3983 4097 L
-3983 4097 mt 3984 4125 L
-3984 4125 mt 3984 4152 L
-3984 4152 mt 3982 4180 L
-3982 4180 mt 3979 4207 L
-3979 4207 mt 3973 4235 L
-3973 4235 mt 3964 4262 L
-3964 4262 mt 3960 4274 L
-3960 4274 mt 3954 4290 L
-3954 4290 mt 3944 4317 L
-3944 4317 mt 3942 4345 L
-3942 4345 mt 3950 4372 L
-3950 4372 mt 3959 4400 L
-3959 4400 mt 3960 4403 L
-3960 4403 mt 3968 4427 L
-3968 4427 mt 3979 4455 L
-3979 4455 mt 3990 4482 L
-3990 4482 mt 3995 4495 L
-3995 4495 mt 4001 4510 L
-4001 4510 mt 4011 4537 L
-4011 4537 mt 4017 4565 L
-4017 4565 mt 4018 4592 L
-4018 4592 mt 4013 4620 L
-4013 4620 mt 4002 4648 L
-4002 4648 mt 3995 4663 L
-3995 4663 mt 3989 4675 L
-3989 4675 mt 3975 4703 L
-3975 4703 mt 3960 4730 L
-3960 4730 mt 3960 4730 L
-3960 4730 mt 3944 4758 L
-3944 4758 mt 3927 4785 L
-3927 4785 mt 3925 4787 L
-3925 4787 mt 3909 4813 L
-3909 4813 mt 3890 4839 L
-3890 4839 mt 3890 4840 L
-3890 4840 mt 3870 4868 L
-3870 4868 mt 3855 4886 L
-3855 4886 mt 3848 4895 L
-3848 4895 mt 3825 4923 L
-3825 4923 mt 3821 4928 L
-3821 4928 mt 3800 4950 L
-3800 4950 mt 3786 4966 L
-3786 4966 mt 3774 4978 L
-3774 4978 mt 3751 5000 L
-3751 5000 mt 3746 5005 L
-3746 5005 mt 3716 5032 L
-3716 5032 mt 3715 5033 L
-3715 5033 mt 3682 5060 L
-3682 5060 mt 3681 5061 L
-3681 5061 mt 3646 5087 L
-3646 5087 mt 3645 5088 L
-3645 5088 mt 3611 5111 L
-3611 5111 mt 3605 5115 L
-3605 5115 mt 3577 5134 L
-3577 5134 mt 3561 5143 L
-3561 5143 mt 3542 5154 L
-3542 5154 mt 3512 5170 L
-3512 5170 mt 3507 5173 L
-3507 5173 mt 3472 5191 L
-3472 5191 mt 3458 5198 L
-3458 5198 mt 3437 5208 L
-3437 5208 mt 3402 5224 L
-3402 5224 mt 3399 5225 L
-3399 5225 mt 3367 5239 L
-3367 5239 mt 3332 5253 L
-3332 5253 mt 3332 5253 L
-3332 5253 mt 3298 5265 L
-3298 5265 mt 3263 5277 L
-3263 5277 mt 3252 5280 L
-3252 5280 mt 3228 5288 L
-3228 5288 mt 3193 5297 L
-3193 5297 mt 3158 5306 L
-3158 5306 mt 3149 5308 L
-3149 5308 mt 3123 5314 L
-3123 5314 mt 3088 5320 L
-3088 5320 mt 3053 5326 L
-3053 5326 mt 3019 5331 L
-3019 5331 mt 2986 5335 L
-2986 5335 mt 2984 5336 L
-2984 5336 mt 2949 5340 L
-2949 5340 mt 2914 5343 L
-2914 5343 mt 2879 5346 L
-2879 5346 mt 2844 5348 L
-2844 5348 mt 2809 5349 L
-2809 5349 mt 2774 5350 L
-2774 5350 mt 2740 5350 L
-2740 5350 mt 2705 5349 L
-2705 5349 mt 2670 5348 L
-2670 5348 mt 2635 5346 L
-2635 5346 mt 2600 5344 L
-2600 5344 mt 2565 5341 L
-2565 5341 mt 2530 5337 L
-2530 5337 mt 2515 5335 L
-2515 5335 mt 2496 5333 L
-2496 5333 mt 2461 5329 L
-2461 5329 mt 2426 5324 L
-2426 5324 mt 2391 5319 L
-2391 5319 mt 2356 5313 L
-2356 5313 mt 2324 5308 L
-2324 5308 mt 2321 5307 L
-2321 5307 mt 2286 5301 L
-2286 5301 mt 2251 5295 L
-2251 5295 mt 2217 5287 L
-2217 5287 mt 2185 5280 L
-2185 5280 mt 2182 5280 L
-2182 5280 mt 2147 5272 L
-2147 5272 mt 2112 5263 L
-2112 5263 mt 2077 5254 L
-2077 5254 mt 2073 5253 L
-2073 5253 mt 2042 5245 L
-2042 5245 mt 2007 5235 L
-2007 5235 mt 1976 5225 L
-1976 5225 mt 1972 5224 L
-1972 5224 mt 1938 5213 L
-1938 5213 mt 1903 5202 L
-1903 5202 mt 1891 5198 L
-1891 5198 mt 1868 5190 L
-1868 5190 mt 1833 5177 L
-1833 5177 mt 1814 5170 L
-1814 5170 mt 1798 5165 L
-1798 5165 mt 1763 5151 L
-1763 5151 mt 1743 5143 L
-1743 5143 mt 1728 5137 L
-1728 5137 mt 1694 5122 L
-1694 5122 mt 1678 5115 L
-1678 5115 mt 1659 5106 L
-1659 5106 mt 1624 5090 L
-1624 5090 mt 1620 5088 L
-1620 5088 mt 1589 5072 L
-1589 5072 mt 1569 5060 L
-1569 5060 mt 1554 5052 L
-1554 5052 mt 1522 5033 L
-1522 5033 mt 1519 5031 L
-1519 5031 mt 1484 5008 L
-1484 5008 mt 1479 5005 L
-1479 5005 mt 1449 4984 L
-1449 4984 mt 1441 4978 L
-1441 4978 mt 1415 4958 L
-1415 4958 mt 1405 4950 L
-1405 4950 mt 1380 4929 L
-1380 4929 mt 1372 4923 L
-1372 4923 mt 1345 4898 L
-1345 4898 mt 1342 4895 L
-1342 4895 mt 1314 4868 L
-1314 4868 mt 1310 4863 L
-1310 4863 mt 1288 4840 L
-1288 4840 mt 1275 4826 L
-1275 4826 mt 1264 4813 L
-1264 4813 mt 1241 4785 L
-1241 4785 mt 1240 4784 L
-1240 4784 mt 1220 4758 L
-1220 4758 mt 1205 4738 L
-1205 4738 mt 1200 4730 L
-1200 4730 mt 1180 4703 L
-1180 4703 mt 1170 4687 L
-1170 4687 mt 1162 4675 L
-1162 4675 mt 1145 4648 L
-1145 4648 mt 1136 4632 L
-1136 4632 mt 1128 4620 L
-1128 4620 mt 1112 4592 L
-1112 4592 mt 1101 4572 L
-1101 4572 mt 1097 4565 L
-1097 4565 mt 1082 4537 L
-1082 4537 mt 1067 4510 L
-1067 4510 mt 1066 4508 L
-1066 4508 mt 1053 4482 L
-1053 4482 mt 1039 4455 L
-1039 4455 mt 1031 4439 L
-1031 4439 mt 1025 4427 L
-1025 4427 mt 1012 4400 L
-1012 4400 mt 1000 4372 L
-1000 4372 mt 996 4363 L
- 996 4363 mt 988 4345 L
- 988 4345 mt 977 4317 L
- 977 4317 mt 967 4290 L
- 967 4290 mt 961 4275 L
- 961 4275 mt 957 4262 L
- 957 4262 mt 947 4235 L
- 947 4235 mt 938 4207 L
- 938 4207 mt 929 4180 L
- 929 4180 mt 926 4171 L
- 926 4171 mt 920 4152 L
- 920 4152 mt 911 4125 L
- 911 4125 mt 903 4097 L
- 903 4097 mt 894 4070 L
- 894 4070 mt 892 4063 L
- 892 4063 mt 885 4042 L
- 885 4042 mt 875 4015 L
- 875 4015 mt 865 3987 L
- 865 3987 mt 857 3963 L
- 857 3963 mt 855 3960 L
- 855 3960 mt 845 3932 L
- 845 3932 mt 833 3905 L
- 833 3905 mt 822 3878 L
- 822 3878 mt 821 3877 L
- 821 3877 mt 808 3850 L
- 808 3850 mt 794 3822 L
- 794 3822 mt 787 3810 L
- 787 3810 mt 777 3795 L
- 777 3795 mt 759 3767 L
- 759 3767 mt 752 3757 L
- 752 3757 mt 740 3740 L
- 740 3740 mt 718 3712 L
- 718 3712 mt 717 3712 L
- 717 3712 mt 693 3685 L
- 693 3685 mt 682 3673 L
- 682 3673 mt 667 3657 L
- 667 3657 mt 647 3637 L
- 647 3637 mt 639 3630 L
- 639 3630 mt 613 3604 L
- 613 3604 mt 610 3602 L
- 610 3602 mt 579 3575 L
- 579 3575 mt 578 3573 L
- 578 3573 mt 548 3547 L
- 548 3547 mt 543 3543 L
- 543 3543 mt 516 3519 L
- 516 3519 mt 508 3513 L
- 508 3513 mt 483 3492 L
- 483 3492 mt 473 3484 L
- 473 3484 mt 449 3464 L
- 449 3464 mt 438 3456 L
- 438 3456 mt 413 3437 L
- 413 3437 mt 403 3429 L
- 403 3429 mt 377 3409 L
- 377 3409 mt 368 3403 L
- 368 3403 mt 340 3382 L
- 340 3382 mt 334 3377 L
- 334 3377 mt 303 3354 L
- 303 3354 mt 299 3352 L
- 299 3352 mt 265 3327 L
- 265 3327 mt 264 3326 L
- 264 3326 mt 229 3300 L
- 229 3300 mt 229 3299 L
- 229 3299 mt 194 3273 L
- 194 3273 mt 193 3272 L
- 193 3272 mt 159 3246 L
- 159 3246 mt 157 3244 L
- 157 3244 mt 124 3218 L
- 124 3218 mt 123 3217 L
- 123 3217 mt 90 3189 L
- 90 3189 mt 90 3189 L
- 90 3189 mt 58 3162 L
- 58 3162 mt 55 3159 L
- 55 3159 mt 27 3134 L
- 27 3134 mt 20 3128 L
- 20 3128 mt -3 3107 L
- -3 3107 mt -14 3096 L
- -14 3096 mt -32 3079 L
- -32 3079 mt -49 3063 L
- -49 3063 mt -61 3052 L
- -61 3052 mt -84 3030 L
- -84 3030 mt -90 3024 L
- -90 3024 mt -117 2997 L
--117 2997 mt -119 2995 L
--119 2995 mt -144 2969 L
--144 2969 mt -154 2960 L
--154 2960 mt -171 2942 L
--171 2942 mt -188 2923 L
--188 2923 mt -196 2914 L
--196 2914 mt -221 2887 L
--221 2887 mt -223 2884 L
--223 2884 mt -244 2859 L
--244 2859 mt -258 2842 L
--258 2842 mt -267 2832 L
--267 2832 mt -288 2804 L
--288 2804 mt -293 2797 L
--293 2797 mt -308 2777 L
--308 2777 mt -328 2749 L
--328 2749 mt -328 2749 L
--328 2749 mt -347 2722 L
--347 2722 mt -363 2697 L
--363 2697 mt -365 2694 L
--365 2694 mt -383 2667 L
--383 2667 mt -398 2641 L
--398 2641 mt -399 2639 L
--399 2639 mt -415 2612 L
--415 2612 mt -429 2584 L
--429 2584 mt -433 2577 L
--433 2577 mt -444 2557 L
--444 2557 mt -457 2529 L
--457 2529 mt -467 2505 L
--467 2505 mt -469 2502 L
--469 2502 mt -481 2474 L
--481 2474 mt -492 2446 L
--492 2446 mt -500 2419 L
--500 2419 mt -502 2412 L
--502 2412 mt -508 2391 L
--508 2391 mt -514 2364 L
--514 2364 mt -519 2336 L
--519 2336 mt -521 2309 L
--521 2309 mt -522 2281 L
--522 2281 mt -521 2254 L
--521 2254 mt -518 2226 L
--518 2226 mt -514 2199 L
--514 2199 mt -509 2171 L
--509 2171 mt -502 2147 L
--502 2147 mt -501 2144 L
--501 2144 mt -494 2116 L
--494 2116 mt -484 2089 L
--484 2089 mt -473 2061 L
--473 2061 mt -467 2050 L
--467 2050 mt -461 2034 L
--461 2034 mt -448 2006 L
--448 2006 mt -434 1979 L
--434 1979 mt -433 1976 L
--433 1976 mt -420 1951 L
--420 1951 mt -405 1924 L
--405 1924 mt -398 1911 L
--398 1911 mt -390 1896 L
--390 1896 mt -374 1869 L
--374 1869 mt -363 1849 L
--363 1849 mt -359 1841 L
--359 1841 mt -343 1814 L
--343 1814 mt -328 1786 L
--328 1786 mt -328 1786 L
--328 1786 mt -313 1759 L
--313 1759 mt -298 1731 L
--298 1731 mt -293 1722 L
--293 1722 mt -283 1704 L
--283 1704 mt -268 1676 L
--268 1676 mt -258 1658 L
--258 1658 mt -253 1649 L
--253 1649 mt -239 1621 L
--239 1621 mt -223 1594 L
--223 1594 mt -223 1594 L
--223 1594 mt -208 1566 L
--208 1566 mt -193 1539 L
--193 1539 mt -188 1530 L
--188 1530 mt -179 1511 L
--179 1511 mt -164 1484 L
--164 1484 mt -154 1464 L
--154 1464 mt -149 1456 L
--149 1456 mt -135 1428 L
--135 1428 mt -121 1401 L
--121 1401 mt -119 1396 L
--119 1396 mt -108 1373 L
--108 1373 mt -95 1346 L
- -95 1346 mt -84 1323 L
- -84 1323 mt -82 1318 L
- -82 1318 mt -69 1291 L
- -69 1291 mt -57 1263 L
- -57 1263 mt -49 1246 L
- -49 1246 mt -45 1236 L
- -45 1236 mt -33 1208 L
- -33 1208 mt -21 1181 L
- -21 1181 mt -14 1165 L
- -14 1165 mt -9 1153 L
- -9 1153 mt 1 1126 L
- 1 1126 mt 13 1098 L
- 13 1098 mt 20 1084 L
- 20 1084 mt 26 1071 L
- 26 1071 mt 39 1043 L
- 39 1043 mt 52 1016 L
- 52 1016 mt 55 1011 L
- 55 1011 mt 66 988 L
- 66 988 mt 81 961 L
- 81 961 mt 90 945 L
- 90 945 mt 96 933 L
- 96 933 mt 111 906 L
- 111 906 mt 124 883 L
- 124 883 mt 127 878 L
- 127 878 mt 144 851 L
- 144 851 mt 159 826 L
- 159 826 mt 161 823 L
- 161 823 mt 179 796 L
- 179 796 mt 194 772 L
- 194 772 mt 197 768 L
- 197 768 mt 216 741 L
- 216 741 mt 229 722 L
- 229 722 mt 235 713 L
- 235 713 mt 255 686 L
- 255 686 mt 264 673 L
- 264 673 mt 275 658 L
- 275 658 mt 296 631 L
- 296 631 mt 299 627 L
- 299 627 mt 317 603 L
- 317 603 mt 334 583 L
- 334 583 mt 339 576 L
- 339 576 mt 361 548 L
- 361 548 mt 368 540 L
- 368 540 mt 384 521 L
- 384 521 mt 403 498 L
- 403 498 mt 407 493 L
- 407 493 mt 431 466 L
- 431 466 mt 438 457 L
- 438 457 mt 454 438 L
- 454 438 mt 473 417 L
- 473 417 mt 478 411 L
- 478 411 mt 503 383 L
- 503 383 mt 508 378 L
- 508 378 mt 529 355 L
- 529 355 mt 543 341 L
- 543 341 mt 556 328 L
- 556 328 mt 578 306 L
- 578 306 mt 584 300 L
- 584 300 mt 613 274 L
- 613 274 mt 614 273 L
- 614 273 mt 645 245 L
- 645 245 mt 647 244 L
- 647 244 mt 679 218 L
- 679 218 mt 682 215 L
- 682 215 mt 715 190 L
- 715 190 mt 717 189 L
- 717 189 mt 752 164 L
- 752 164 mt 754 163 L
- 754 163 mt 787 141 L
- 787 141 mt 795 135 L
- 795 135 mt 822 118 L
- 822 118 mt 839 108 L
- 839 108 mt 857 97 L
- 857 97 mt 885 80 L
- 885 80 mt 892 76 L
- 892 76 mt 926 56 L
- 926 56 mt 933 53 L
- 933 53 mt 961 37 L
- 961 37 mt 984 25 L
- 984 25 mt 996 19 L
- 996 19 mt 1031 1 L
-1031 1 mt 1038 -1 L
-1038 -1 mt 1066 -15 L
-1066 -15 mt 1096 -29 L
-1096 -29 mt 1101 -31 L
-1101 -31 mt 1136 -47 L
-1136 -47 mt 1158 -56 L
-1158 -56 mt 1170 -62 L
-1170 -62 mt 1205 -76 L
-1205 -76 mt 1223 -84 L
-1223 -84 mt 1240 -91 L
-1240 -91 mt 1275 -105 L
-1275 -105 mt 1292 -111 L
-1292 -111 mt 1310 -118 L
-1310 -118 mt 1345 -132 L
-1345 -132 mt 1364 -139 L
-1364 -139 mt 1380 -145 L
-1380 -145 mt 1415 -158 L
-1415 -158 mt 1439 -166 L
-1439 -166 mt 1449 -170 L
-1449 -170 mt 1484 -182 L
-1484 -182 mt 1519 -194 L
-1519 -194 mt 1519 -194 L
-1519 -194 mt 1554 -205 L
-1554 -205 mt 1589 -216 L
-1589 -216 mt 1605 -221 L
-1605 -221 mt 1624 -227 L
-1624 -227 mt 1659 -238 L
-1659 -238 mt 1694 -248 L
-1694 -248 mt 1696 -249 L
-1696 -249 mt 1728 -258 L
-1728 -258 mt 1763 -268 L
-1763 -268 mt 1791 -276 L
-1791 -276 mt 1798 -278 L
-1798 -278 mt 1833 -288 L
-1833 -288 mt 1868 -298 L
-1868 -298 mt 1889 -304 L
-1889 -304 mt 1903 -308 L
-1903 -308 mt 1938 -318 L
-1938 -318 mt 1972 -328 L
-1972 -328 mt 1986 -331 L
-1986 -331 mt 2007 -338 L
-2007 -338 mt 2042 -348 L
-2042 -348 mt 2077 -358 L
-2077 -358 mt 2081 -359 L
-2081 -359 mt 2112 -368 L
-2112 -368 mt 2147 -378 L
-2147 -378 mt 2175 -386 L
-2175 -386 mt 2182 -389 L
-2182 -389 mt 2217 -399 L
-2217 -399 mt 2251 -409 L
-2251 -409 mt 2270 -414 L
-2270 -414 mt 2286 -419 L
-2286 -419 mt 2321 -428 L
-2321 -428 mt 2356 -438 L
-2356 -438 mt 2370 -441 L
-2370 -441 mt 2391 -447 L
-2391 -447 mt 2426 -457 L
-2426 -457 mt 2461 -466 L
-2461 -466 mt 2470 -469 L
-2470 -469 mt 2496 -476 L
-2496 -476 mt 2530 -486 L
-2530 -486 mt 2565 -496 L
-2565 -496 mt 2565 -496 L
-2565 -496 mt 2600 -507 L
-2600 -507 mt 2635 -518 L
-2635 -518 mt 2656 -524 L
-2656 -524 mt 2670 -528 L
-2670 -528 mt 2705 -539 L
-2705 -539 mt 2740 -550 L
-2740 -550 mt 2744 -551 L
-2744 -551 mt 2774 -561 L
-2774 -561 mt 2809 -572 L
-2809 -572 mt 2832 -579 L
-2832 -579 mt 2844 -583 L
-2844 -583 mt 2879 -593 L
-2879 -593 mt 2914 -603 L
-2914 -603 mt 2926 -606 L
-2926 -606 mt 2949 -613 L
-2949 -613 mt 2984 -622 L
-2984 -622 mt 3019 -631 L
-3019 -631 mt 3031 -634 L
-3031 -634 mt 3053 -639 L
-3053 -639 mt 3088 -648 L
-3088 -648 mt 3123 -655 L
-3123 -655 mt 3154 -661 L
-3154 -661 mt 3158 -662 L
-3158 -662 mt 3193 -669 L
-3193 -669 mt 3228 -675 L
-3228 -675 mt 3263 -681 L
-3263 -681 mt 3298 -686 L
-3298 -686 mt 3316 -689 L
-3316 -689 mt 3332 -691 L
-3332 -691 mt 3367 -696 L
-3367 -696 mt 3402 -700 L
-3402 -700 mt 3437 -703 L
-3437 -703 mt 3472 -706 L
-3472 -706 mt 3507 -708 L
-3507 -708 mt 3542 -710 L
-3542 -710 mt 3577 -711 L
-3577 -711 mt 3611 -711 L
-3611 -711 mt 3646 -710 L
-3646 -710 mt 3681 -709 L
-3681 -709 mt 3716 -708 L
-3716 -708 mt 3751 -706 L
-3751 -706 mt 3786 -703 L
-3786 -703 mt 3821 -700 L
-3821 -700 mt 3855 -697 L
-3855 -697 mt 3890 -693 L
-3890 -693 mt 3922 -689 L
-3922 -689 mt 3925 -689 L
-3925 -689 mt 3960 -684 L
-3960 -684 mt 3995 -679 L
-3995 -679 mt 4030 -674 L
-4030 -674 mt 4065 -668 L
-4065 -668 mt 4099 -661 L
-4099 -661 mt 4100 -661 L
-4100 -661 mt 4134 -655 L
-4134 -655 mt 4169 -649 L
-4169 -649 mt 4204 -642 L
-4204 -642 mt 4239 -635 L
-4239 -635 mt 4244 -634 L
-4244 -634 mt 4274 -628 L
-4274 -628 mt 4309 -621 L
-4309 -621 mt 4344 -614 L
-4344 -614 mt 4379 -607 L
-4379 -607 mt 4381 -606 L
-4381 -606 mt 4413 -600 L
-4413 -600 mt 4448 -592 L
-4448 -592 mt 4483 -583 L
-4483 -583 mt 4500 -579 L
-4500 -579 mt 4518 -575 L
-4518 -575 mt 4553 -566 L
-4553 -566 mt 4588 -556 L
-4588 -556 mt 4605 -551 L
-4605 -551 mt 4623 -547 L
-4623 -547 mt 4657 -537 L
-4657 -537 mt 4692 -526 L
-4692 -526 mt 4699 -524 L
-4699 -524 mt 4727 -515 L
-4727 -515 mt 4762 -504 L
-4762 -504 mt 4784 -496 L
-4784 -496 mt 4797 -492 L
-4797 -492 mt 4832 -480 L
-4832 -480 mt 4862 -469 L
-4862 -469 mt 4867 -467 L
-4867 -467 mt 4902 -454 L
-4902 -454 mt 4936 -441 L
-4936 -441 mt 4936 -441 L
-4936 -441 mt 4971 -428 L
-4971 -428 mt 5006 -414 L
-5006 -414 mt 5007 -414 L
-5007 -414 mt 5041 -400 L
-5041 -400 mt 5076 -386 L
-5076 -386 mt 5076 -386 L
-5076 -386 mt 5111 -372 L
-5111 -372 mt 5144 -359 L
-5144 -359 mt 5146 -358 L
-5146 -358 mt 5181 -344 L
-5181 -344 mt 5209 -331 L
-5209 -331 mt 5215 -329 L
-5215 -329 mt 5250 -314 L
-5250 -314 mt 5273 -304 L
-5273 -304 mt 5285 -299 L
-5285 -299 mt 5320 -283 L
-5320 -283 mt 5335 -276 L
-5335 -276 mt 5355 -267 L
-5355 -267 mt 5390 -251 L
-5390 -251 mt 5394 -249 L
-5394 -249 mt 5425 -234 L
-5425 -234 mt 5451 -221 L
-5451 -221 mt 5459 -217 L
-5459 -217 mt 5494 -200 L
-5494 -200 mt 5507 -194 L
-5507 -194 mt 5529 -182 L
-5529 -182 mt 5560 -166 L
-5560 -166 mt 5564 -164 L
-5564 -164 mt 5599 -145 L
-5599 -145 mt 5611 -139 L
-5611 -139 mt 5634 -126 L
-5634 -126 mt 5660 -111 L
-5660 -111 mt 5669 -107 L
-5669 -107 mt 5704 -86 L
-5704 -86 mt 5707 -84 L
-5707 -84 mt 5738 -65 L
-5738 -65 mt 5752 -56 L
-5752 -56 mt 5773 -43 L
-5773 -43 mt 5795 -29 L
-5795 -29 mt 5808 -20 L
-5808 -20 mt 5836 -1 L
-5836 -1 mt 5843 3 L
-5843 3 mt 5876 25 L
-5876 25 mt 5878 27 L
-5878 27 mt 5913 52 L
-5913 52 mt 5914 53 L
-5914 53 mt 5948 78 L
-5948 78 mt 5951 80 L
-5951 80 mt 5983 104 L
-5983 104 mt 5987 108 L
-5987 108 mt 6017 132 L
-6017 132 mt 6022 135 L
-6022 135 mt 6052 160 L
-6052 160 mt 6056 163 L
-6056 163 mt 6087 189 L
-6087 189 mt 6089 190 L
-6089 190 mt 6121 218 L
-6121 218 mt 6122 219 L
-6122 219 mt 6152 245 L
-6152 245 mt 6157 249 L
-6157 249 mt 6183 273 L
-6183 273 mt 6192 280 L
-6192 280 mt 6214 300 L
-6214 300 mt 6227 312 L
-6227 312 mt 6244 328 L
-6244 328 mt 6261 344 L
-6261 344 mt 6274 355 L
-6274 355 mt 6296 377 L
-6296 377 mt 6303 383 L
-6303 383 mt 6331 409 L
-6331 409 mt 6333 411 L
-6333 411 mt 6362 438 L
-6362 438 mt 6366 442 L
-6366 442 mt 6392 466 L
-6392 466 mt 6401 474 L
-6401 474 mt 6422 493 L
-6422 493 mt 6436 506 L
-6436 506 mt 6451 521 L
-6451 521 mt 6471 539 L
-6471 539 mt 6481 548 L
-6481 548 mt 6506 571 L
-6506 571 mt 6511 576 L
-6511 576 mt 6540 603 L
-6540 603 mt 6541 603 L
-6541 603 mt 6571 631 L
-6571 631 mt 6575 635 L
-6575 635 mt 6601 658 L
-6601 658 mt 6610 667 L
-6610 667 mt 6630 686 L
-6630 686 mt 6645 700 L
-6645 700 mt 6660 713 L
-6660 713 mt 6680 732 L
-6680 732 mt 6689 741 L
-6689 741 mt 6715 765 L
-6715 765 mt 6718 768 L
-6718 768 mt 6747 796 L
-6747 796 mt 6750 798 L
-6750 798 mt 6776 823 L
-6776 823 mt 6785 831 L
-6785 831 mt 6805 851 L
-6805 851 mt 6819 865 L
-6819 865 mt 6833 878 L
-6833 878 mt 6854 900 L
-6854 900 mt 6860 906 L
-6860 906 mt 6888 933 L
-6888 933 mt 6889 935 L
-6889 935 mt 6915 961 L
-6915 961 mt 6924 970 L
-6924 970 mt 6942 988 L
-6942 988 mt 6959 1005 L
-6959 1005 mt 6969 1016 L
-6969 1016 mt 6994 1041 L
-6994 1041 mt 6996 1043 L
-6996 1043 mt 7022 1071 L
-7022 1071 mt 7029 1078 L
-7029 1078 mt 7048 1098 L
-7048 1098 mt 7063 1115 L
-7063 1115 mt 7073 1126 L
-7073 1126 mt 7098 1153 L
-7098 1153 mt 7099 1153 L
-7099 1153 mt 7124 1181 L
-7124 1181 mt 7133 1191 L
-7133 1191 mt 7150 1208 L
-7150 1208 mt 7168 1229 L
-7168 1229 mt 7175 1236 L
-7175 1236 mt 7201 1263 L
-7201 1263 mt 7203 1266 L
-7203 1266 mt 7226 1291 L
-7226 1291 mt 7238 1303 L
-7238 1303 mt 7252 1318 L
-7252 1318 mt 7273 1341 L
-7273 1341 mt 7278 1346 L
-7278 1346 mt 7303 1373 L
-7303 1373 mt 7308 1378 L
-7308 1378 mt 7329 1401 L
-7329 1401 mt 7342 1416 L
-7342 1416 mt 7354 1428 L
-7354 1428 mt 7377 1455 L
-7377 1455 mt 7378 1456 L
-7378 1456 mt 7403 1484 L
-7403 1484 mt 7412 1495 L
-7412 1495 mt 7427 1511 L
-7427 1511 mt 7447 1535 L
-7447 1535 mt 7450 1539 L
-7450 1539 mt 7474 1566 L
-7474 1566 mt 7482 1576 L
-7482 1576 mt 7496 1594 L
-7496 1594 mt 7517 1619 L
-7517 1619 mt 7519 1621 L
-7519 1621 mt 7541 1649 L
-7541 1649 mt 7552 1663 L
-7552 1663 mt 7562 1676 L
-7562 1676 mt 7582 1704 L
-7582 1704 mt 7587 1709 L
-7587 1709 mt 7603 1731 L
-7603 1731 mt 7621 1758 L
-7621 1758 mt 7622 1759 L
-7622 1759 mt 7641 1786 L
-7641 1786 mt 7656 1810 L
-7656 1810 mt 7659 1814 L
-7659 1814 mt 7676 1841 L
-7676 1841 mt 7691 1868 L
-7691 1868 mt 7692 1869 L
-7692 1869 mt 7707 1896 L
-7707 1896 mt 7721 1924 L
-7721 1924 mt 7726 1935 L
-7726 1935 mt 7734 1951 L
-7734 1951 mt 7746 1979 L
-7746 1979 mt 7756 2006 L
-7756 2006 mt 7761 2019 L
-7761 2019 mt 7766 2034 L
-7766 2034 mt 7776 2061 L
-7776 2061 mt 7784 2089 L
-7784 2089 mt 7790 2116 L
-7790 2116 mt 7796 2144 L
-7796 2144 mt 7796 2144 L
-7621 2069 mt 7625 2089 L
-7625 2089 mt 7628 2116 L
-7628 2116 mt 7630 2144 L
-7630 2144 mt 7631 2171 L
-7631 2171 mt 7631 2199 L
-7631 2199 mt 7631 2226 L
-7631 2226 mt 7629 2254 L
-7629 2254 mt 7627 2281 L
-7627 2281 mt 7625 2309 L
-7625 2309 mt 7621 2336 L
-7621 2336 mt 7621 2336 L
-7621 2336 mt 7618 2364 L
-7618 2364 mt 7614 2391 L
-7614 2391 mt 7610 2419 L
-7610 2419 mt 7605 2446 L
-7605 2446 mt 7600 2474 L
-7600 2474 mt 7595 2502 L
-7595 2502 mt 7589 2529 L
-7589 2529 mt 7587 2540 L
-7587 2540 mt 7583 2557 L
-7583 2557 mt 7577 2584 L
-7577 2584 mt 7570 2612 L
-7570 2612 mt 7562 2639 L
-7562 2639 mt 7554 2667 L
-7554 2667 mt 7552 2674 L
-7552 2674 mt 7545 2694 L
-7545 2694 mt 7536 2722 L
-7536 2722 mt 7526 2749 L
-7526 2749 mt 7517 2773 L
-7517 2773 mt 7516 2777 L
-7516 2777 mt 7505 2804 L
-7505 2804 mt 7493 2832 L
-7493 2832 mt 7482 2859 L
-7482 2859 mt 7482 2859 L
-7482 2859 mt 7470 2887 L
-7470 2887 mt 7458 2914 L
-7458 2914 mt 7447 2939 L
-7447 2939 mt 7446 2942 L
-7446 2942 mt 7434 2969 L
-7434 2969 mt 7422 2997 L
-7422 2997 mt 7412 3018 L
-7412 3018 mt 7410 3024 L
-7410 3024 mt 7397 3052 L
-7397 3052 mt 7385 3079 L
-7385 3079 mt 7377 3095 L
-7377 3095 mt 7372 3107 L
-7372 3107 mt 7359 3134 L
-7359 3134 mt 7346 3162 L
-7346 3162 mt 7342 3168 L
-7342 3168 mt 7332 3189 L
-7332 3189 mt 7319 3217 L
-7319 3217 mt 7308 3238 L
-7308 3238 mt 7304 3244 L
-7304 3244 mt 7290 3272 L
-7290 3272 mt 7276 3299 L
-7276 3299 mt 7273 3305 L
-7273 3305 mt 7261 3327 L
-7261 3327 mt 7246 3354 L
-7246 3354 mt 7238 3370 L
-7238 3370 mt 7232 3382 L
-7232 3382 mt 7217 3409 L
-7217 3409 mt 7203 3436 L
-7203 3436 mt 7202 3437 L
-7202 3437 mt 7188 3464 L
-7188 3464 mt 7174 3492 L
-7174 3492 mt 7168 3505 L
-7168 3505 mt 7161 3519 L
-7161 3519 mt 7147 3547 L
-7147 3547 mt 7133 3575 L
-7133 3575 mt 7133 3575 L
-7133 3575 mt 7120 3602 L
-7120 3602 mt 7106 3630 L
-7106 3630 mt 7098 3643 L
-7098 3643 mt 7091 3657 L
-7091 3657 mt 7076 3685 L
-7076 3685 mt 7063 3707 L
-7063 3707 mt 7061 3712 L
-7061 3712 mt 7045 3740 L
-7045 3740 mt 7029 3767 L
-7029 3767 mt 7029 3768 L
-7029 3768 mt 7014 3795 L
-7014 3795 mt 6998 3822 L
-6998 3822 mt 6994 3829 L
-6994 3829 mt 6982 3850 L
-6982 3850 mt 6966 3877 L
-6966 3877 mt 6959 3889 L
-6959 3889 mt 6950 3905 L
-6950 3905 mt 6934 3932 L
-6934 3932 mt 6924 3949 L
-6924 3949 mt 6917 3960 L
-6917 3960 mt 6901 3987 L
-6901 3987 mt 6889 4006 L
-6889 4006 mt 6884 4015 L
-6884 4015 mt 6867 4042 L
-6867 4042 mt 6854 4061 L
-6854 4061 mt 6849 4070 L
-6849 4070 mt 6831 4097 L
-6831 4097 mt 6819 4115 L
-6819 4115 mt 6813 4125 L
-6813 4125 mt 6795 4152 L
-6795 4152 mt 6785 4167 L
-6785 4167 mt 6776 4180 L
-6776 4180 mt 6758 4207 L
-6758 4207 mt 6750 4219 L
-6750 4219 mt 6739 4235 L
-6739 4235 mt 6720 4262 L
-6720 4262 mt 6715 4270 L
-6715 4270 mt 6702 4290 L
-6702 4290 mt 6683 4317 L
-6683 4317 mt 6680 4321 L
-6680 4321 mt 6664 4345 L
-6664 4345 mt 6645 4372 L
-6645 4372 mt 6645 4372 L
-6645 4372 mt 6625 4400 L
-6625 4400 mt 6610 4420 L
-6610 4420 mt 6605 4427 L
-6605 4427 mt 6584 4455 L
-6584 4455 mt 6575 4466 L
-6575 4466 mt 6563 4482 L
-6563 4482 mt 6540 4508 L
-6540 4508 mt 6539 4510 L
-6539 4510 mt 6514 4537 L
-6514 4537 mt 6506 4546 L
-6506 4546 mt 6486 4565 L
-6486 4565 mt 6471 4578 L
-6471 4578 mt 6455 4592 L
-6455 4592 mt 6436 4607 L
-6436 4607 mt 6418 4620 L
-6418 4620 mt 6401 4632 L
-6401 4632 mt 6375 4648 L
-6375 4648 mt 6366 4652 L
-6366 4652 mt 6331 4670 L
-6331 4670 mt 6319 4675 L
-6319 4675 mt 6296 4684 L
-6296 4684 mt 6261 4696 L
-6261 4696 mt 6238 4703 L
-6238 4703 mt 6227 4706 L
-6227 4706 mt 6192 4714 L
-6192 4714 mt 6157 4720 L
-6157 4720 mt 6122 4724 L
-6122 4724 mt 6087 4727 L
-6087 4727 mt 6052 4728 L
-6052 4728 mt 6017 4728 L
-6017 4728 mt 5983 4726 L
-5983 4726 mt 5948 4723 L
-5948 4723 mt 5913 4718 L
-5913 4718 mt 5878 4712 L
-5878 4712 mt 5843 4706 L
-5843 4706 mt 5829 4703 L
-5829 4703 mt 5808 4698 L
-5808 4698 mt 5773 4689 L
-5773 4689 mt 5738 4679 L
-5738 4679 mt 5726 4675 L
-5726 4675 mt 5704 4668 L
-5704 4668 mt 5669 4656 L
-5669 4656 mt 5645 4648 L
-5645 4648 mt 5634 4643 L
-5634 4643 mt 5599 4630 L
-5599 4630 mt 5577 4620 L
-5577 4620 mt 5564 4612 L
-5564 4612 mt 5538 4592 L
-5538 4592 mt 5529 4583 L
-5529 4583 mt 5512 4565 L
-5512 4565 mt 5498 4537 L
-5498 4537 mt 5494 4524 L
-5494 4524 mt 5490 4510 L
-5490 4510 mt 5488 4482 L
-5488 4482 mt 5487 4455 L
-5487 4455 mt 5485 4427 L
-5485 4427 mt 5480 4400 L
-5480 4400 mt 5471 4372 L
-5471 4372 mt 5460 4345 L
-5460 4345 mt 5459 4344 L
-5459 4344 mt 5448 4317 L
-5448 4317 mt 5437 4290 L
-5437 4290 mt 5429 4262 L
-5429 4262 mt 5425 4247 L
-5425 4247 mt 5421 4235 L
-5421 4235 mt 5415 4207 L
-5415 4207 mt 5409 4180 L
-5409 4180 mt 5403 4152 L
-5403 4152 mt 5398 4125 L
-5398 4125 mt 5392 4097 L
-5392 4097 mt 5390 4089 L
-5390 4089 mt 5384 4070 L
-5384 4070 mt 5375 4042 L
-5375 4042 mt 5364 4015 L
-5364 4015 mt 5355 3994 L
-5355 3994 mt 5351 3987 L
-5351 3987 mt 5331 3960 L
-5331 3960 mt 5320 3947 L
-5320 3947 mt 5302 3932 L
-5302 3932 mt 5285 3921 L
-5285 3921 mt 5251 3905 L
-5251 3905 mt 5250 3904 L
-5250 3904 mt 5215 3892 L
-5215 3892 mt 5181 3879 L
-5181 3879 mt 5177 3877 L
-5177 3877 mt 5146 3865 L
-5146 3865 mt 5116 3850 L
-5116 3850 mt 5111 3848 L
-5111 3848 mt 5076 3828 L
-5076 3828 mt 5068 3822 L
-5068 3822 mt 5041 3803 L
-5041 3803 mt 5031 3795 L
-5031 3795 mt 5006 3772 L
-5006 3772 mt 5002 3767 L
-5002 3767 mt 4978 3740 L
-4978 3740 mt 4971 3731 L
-4971 3731 mt 4957 3712 L
-4957 3712 mt 4936 3685 L
-4936 3685 mt 4936 3685 L
-4936 3685 mt 4917 3657 L
-4917 3657 mt 4902 3637 L
-4902 3637 mt 4897 3630 L
-4897 3630 mt 4877 3602 L
-4877 3602 mt 4867 3589 L
-4867 3589 mt 4856 3575 L
-4856 3575 mt 4836 3547 L
-4836 3547 mt 4832 3541 L
-4832 3541 mt 4817 3519 L
-4817 3519 mt 4800 3492 L
-4800 3492 mt 4797 3487 L
-4797 3487 mt 4783 3464 L
-4783 3464 mt 4768 3437 L
-4768 3437 mt 4762 3427 L
-4762 3427 mt 4752 3409 L
-4752 3409 mt 4733 3382 L
-4733 3382 mt 4727 3374 L
-4727 3374 mt 4711 3354 L
-4711 3354 mt 4692 3335 L
-4692 3335 mt 4684 3327 L
-4684 3327 mt 4657 3301 L
-4657 3301 mt 4655 3299 L
-4655 3299 mt 4627 3272 L
-4627 3272 mt 4623 3267 L
-4623 3267 mt 4602 3244 L
-4602 3244 mt 4588 3228 L
-4588 3228 mt 4578 3217 L
-4578 3217 mt 4559 3189 L
-4559 3189 mt 4553 3181 L
-4553 3181 mt 4538 3162 L
-4538 3162 mt 4518 3138 L
-4518 3138 mt 4514 3134 L
-4514 3134 mt 4484 3107 L
-4484 3107 mt 4483 3106 L
-4483 3106 mt 4449 3079 L
-4449 3079 mt 4448 3079 L
-4448 3079 mt 4413 3054 L
-4413 3054 mt 4410 3052 L
-4410 3052 mt 4379 3029 L
-4379 3029 mt 4371 3024 L
-4371 3024 mt 4344 3005 L
-4344 3005 mt 4330 2997 L
-4330 2997 mt 4309 2983 L
-4309 2983 mt 4287 2969 L
-4287 2969 mt 4274 2961 L
-4274 2961 mt 4239 2943 L
-4239 2943 mt 4237 2942 L
-4237 2942 mt 4204 2930 L
-4204 2930 mt 4169 2925 L
-4169 2925 mt 4134 2936 L
-4134 2936 mt 4124 2942 L
-4124 2942 mt 4100 2963 L
-4100 2963 mt 4093 2969 L
-4093 2969 mt 4073 2997 L
-4073 2997 mt 4065 3009 L
-4065 3009 mt 4054 3024 L
-4054 3024 mt 4034 3052 L
-4034 3052 mt 4030 3057 L
-4030 3057 mt 4011 3079 L
-4011 3079 mt 3995 3102 L
-3995 3102 mt 3991 3107 L
-3991 3107 mt 3973 3134 L
-3973 3134 mt 3960 3153 L
-3960 3153 mt 3953 3162 L
-3953 3162 mt 3933 3189 L
-3933 3189 mt 3925 3199 L
-3925 3199 mt 3908 3217 L
-3908 3217 mt 3890 3233 L
-3890 3233 mt 3876 3244 L
-3876 3244 mt 3855 3258 L
-3855 3258 mt 3831 3272 L
-3831 3272 mt 3821 3278 L
-3821 3278 mt 3786 3296 L
-3786 3296 mt 3780 3299 L
-3780 3299 mt 3751 3317 L
-3751 3317 mt 3738 3327 L
-3738 3327 mt 3716 3351 L
-3716 3351 mt 3713 3354 L
-3713 3354 mt 3705 3382 L
-3705 3382 mt 3703 3409 L
-3703 3409 mt 3707 3437 L
-3707 3437 mt 3715 3464 L
-3715 3464 mt 3716 3466 L
-3716 3466 mt 3734 3492 L
-3734 3492 mt 3751 3511 L
-3751 3511 mt 3760 3519 L
-3760 3519 mt 3785 3547 L
-3785 3547 mt 3786 3548 L
-3786 3548 mt 3807 3575 L
-3807 3575 mt 3821 3597 L
-3821 3597 mt 3824 3602 L
-3824 3602 mt 3839 3630 L
-3839 3630 mt 3852 3657 L
-3852 3657 mt 3855 3666 L
-3855 3666 mt 3863 3685 L
-3863 3685 mt 3873 3712 L
-3873 3712 mt 3880 3740 L
-3880 3740 mt 3884 3767 L
-3884 3767 mt 3884 3795 L
-3884 3795 mt 3881 3822 L
-3881 3822 mt 3875 3850 L
-3875 3850 mt 3867 3877 L
-3867 3877 mt 3858 3905 L
-3858 3905 mt 3855 3922 L
-3855 3922 mt 3854 3932 L
-3854 3932 mt 3851 3960 L
-3851 3960 mt 3853 3987 L
-3853 3987 mt 3855 3995 L
-3855 3995 mt 3862 4015 L
-3862 4015 mt 3874 4042 L
-3874 4042 mt 3884 4070 L
-3884 4070 mt 3890 4097 L
-3890 4097 mt 3890 4099 L
-3890 4099 mt 3895 4125 L
-3895 4125 mt 3897 4152 L
-3897 4152 mt 3898 4180 L
-3898 4180 mt 3896 4207 L
-3896 4207 mt 3891 4235 L
-3891 4235 mt 3890 4238 L
-3890 4238 mt 3882 4262 L
-3882 4262 mt 3867 4290 L
-3867 4290 mt 3855 4311 L
-3855 4311 mt 3851 4317 L
-3851 4317 mt 3846 4345 L
-3846 4345 mt 3855 4366 L
-3855 4366 mt 3858 4372 L
-3858 4372 mt 3873 4400 L
-3873 4400 mt 3885 4427 L
-3885 4427 mt 3890 4442 L
-3890 4442 mt 3895 4455 L
-3895 4455 mt 3905 4482 L
-3905 4482 mt 3914 4510 L
-3914 4510 mt 3922 4537 L
-3922 4537 mt 3925 4553 L
-3925 4553 mt 3928 4565 L
-3928 4565 mt 3931 4592 L
-3931 4592 mt 3926 4620 L
-3926 4620 mt 3925 4623 L
-3925 4623 mt 3916 4648 L
-3916 4648 mt 3903 4675 L
-3903 4675 mt 3890 4699 L
-3890 4699 mt 3888 4703 L
-3888 4703 mt 3873 4730 L
-3873 4730 mt 3855 4757 L
-3855 4757 mt 3855 4758 L
-3855 4758 mt 3836 4785 L
-3836 4785 mt 3821 4807 L
-3821 4807 mt 3816 4813 L
-3816 4813 mt 3795 4840 L
-3795 4840 mt 3786 4851 L
-3786 4851 mt 3771 4868 L
-3771 4868 mt 3751 4890 L
-3751 4890 mt 3746 4895 L
-3746 4895 mt 3718 4923 L
-3718 4923 mt 3716 4925 L
-3716 4925 mt 3688 4950 L
-3688 4950 mt 3681 4956 L
-3681 4956 mt 3656 4978 L
-3656 4978 mt 3646 4985 L
-3646 4985 mt 3620 5005 L
-3620 5005 mt 3611 5012 L
-3611 5012 mt 3581 5033 L
-3581 5033 mt 3577 5035 L
-3577 5035 mt 3542 5057 L
-3542 5057 mt 3537 5060 L
-3537 5060 mt 3507 5078 L
-3507 5078 mt 3488 5088 L
-3488 5088 mt 3472 5096 L
-3472 5096 mt 3437 5114 L
-3437 5114 mt 3433 5115 L
-3433 5115 mt 3402 5130 L
-3402 5130 mt 3373 5143 L
-3373 5143 mt 3367 5145 L
-3367 5145 mt 3332 5160 L
-3332 5160 mt 3306 5170 L
-3306 5170 mt 3298 5173 L
-3298 5173 mt 3263 5186 L
-3263 5186 mt 3229 5198 L
-3229 5198 mt 3228 5198 L
-3228 5198 mt 3193 5209 L
-3193 5209 mt 3158 5219 L
-3158 5219 mt 3134 5225 L
-3134 5225 mt 3123 5228 L
-3123 5228 mt 3088 5236 L
-3088 5236 mt 3053 5244 L
-3053 5244 mt 3019 5250 L
-3019 5250 mt 3001 5253 L
-3001 5253 mt 2984 5256 L
-2984 5256 mt 2949 5261 L
-2949 5261 mt 2914 5265 L
-2914 5265 mt 2879 5269 L
-2879 5269 mt 2844 5272 L
-2844 5272 mt 2809 5275 L
-2809 5275 mt 2774 5276 L
-2774 5276 mt 2740 5278 L
-2740 5278 mt 2705 5278 L
-2705 5278 mt 2670 5278 L
-2670 5278 mt 2635 5277 L
-2635 5277 mt 2600 5276 L
-2600 5276 mt 2565 5274 L
-2565 5274 mt 2530 5272 L
-2530 5272 mt 2496 5269 L
-2496 5269 mt 2461 5266 L
-2461 5266 mt 2426 5262 L
-2426 5262 mt 2391 5258 L
-2391 5258 mt 2356 5254 L
-2356 5254 mt 2349 5253 L
-2349 5253 mt 2321 5249 L
-2321 5249 mt 2286 5244 L
-2286 5244 mt 2251 5238 L
-2251 5238 mt 2217 5232 L
-2217 5232 mt 2184 5225 L
-2184 5225 mt 2182 5225 L
-2182 5225 mt 2147 5218 L
-2147 5218 mt 2112 5210 L
-2112 5210 mt 2077 5202 L
-2077 5202 mt 2063 5198 L
-2063 5198 mt 2042 5193 L
-2042 5193 mt 2007 5183 L
-2007 5183 mt 1972 5173 L
-1972 5173 mt 1963 5170 L
-1963 5170 mt 1938 5163 L
-1938 5163 mt 1903 5152 L
-1903 5152 mt 1876 5143 L
-1876 5143 mt 1868 5140 L
-1868 5140 mt 1833 5128 L
-1833 5128 mt 1798 5115 L
-1798 5115 mt 1798 5115 L
-1798 5115 mt 1763 5102 L
-1763 5102 mt 1729 5088 L
-1729 5088 mt 1728 5088 L
-1728 5088 mt 1694 5072 L
-1694 5072 mt 1667 5060 L
-1667 5060 mt 1659 5056 L
-1659 5056 mt 1624 5039 L
-1624 5039 mt 1613 5033 L
-1613 5033 mt 1589 5020 L
-1589 5020 mt 1564 5005 L
-1564 5005 mt 1554 4999 L
-1554 4999 mt 1520 4978 L
-1520 4978 mt 1519 4977 L
-1519 4977 mt 1484 4953 L
-1484 4953 mt 1480 4950 L
-1480 4950 mt 1449 4927 L
-1449 4927 mt 1444 4923 L
-1444 4923 mt 1415 4899 L
-1415 4899 mt 1411 4895 L
-1411 4895 mt 1380 4868 L
-1380 4868 mt 1380 4867 L
-1380 4867 mt 1352 4840 L
-1352 4840 mt 1345 4833 L
-1345 4833 mt 1326 4813 L
-1326 4813 mt 1310 4795 L
-1310 4795 mt 1302 4785 L
-1302 4785 mt 1279 4758 L
-1279 4758 mt 1275 4752 L
-1275 4752 mt 1258 4730 L
-1258 4730 mt 1240 4705 L
-1240 4705 mt 1238 4703 L
-1238 4703 mt 1220 4675 L
-1220 4675 mt 1205 4653 L
-1205 4653 mt 1202 4648 L
-1202 4648 mt 1185 4620 L
-1185 4620 mt 1170 4596 L
-1170 4596 mt 1169 4592 L
-1169 4592 mt 1153 4565 L
-1153 4565 mt 1138 4537 L
-1138 4537 mt 1136 4534 L
-1136 4534 mt 1123 4510 L
-1123 4510 mt 1109 4482 L
-1109 4482 mt 1101 4467 L
-1101 4467 mt 1095 4455 L
-1095 4455 mt 1082 4427 L
-1082 4427 mt 1069 4400 L
-1069 4400 mt 1066 4392 L
-1066 4392 mt 1057 4372 L
-1057 4372 mt 1046 4345 L
-1046 4345 mt 1035 4317 L
-1035 4317 mt 1031 4305 L
-1031 4305 mt 1026 4290 L
-1026 4290 mt 1016 4262 L
-1016 4262 mt 1008 4235 L
-1008 4235 mt 999 4207 L
- 999 4207 mt 996 4196 L
- 996 4196 mt 992 4180 L
- 992 4180 mt 984 4152 L
- 984 4152 mt 976 4125 L
- 976 4125 mt 969 4097 L
- 969 4097 mt 961 4070 L
- 961 4070 mt 961 4069 L
- 961 4069 mt 954 4042 L
- 954 4042 mt 946 4015 L
- 946 4015 mt 938 3987 L
- 938 3987 mt 930 3960 L
- 930 3960 mt 926 3948 L
- 926 3948 mt 921 3932 L
- 921 3932 mt 912 3905 L
- 912 3905 mt 903 3877 L
- 903 3877 mt 892 3850 L
- 892 3850 mt 892 3848 L
- 892 3848 mt 880 3822 L
- 880 3822 mt 867 3795 L
- 867 3795 mt 857 3775 L
- 857 3775 mt 852 3767 L
- 852 3767 mt 835 3740 L
- 835 3740 mt 822 3720 L
- 822 3720 mt 816 3712 L
- 816 3712 mt 795 3685 L
- 795 3685 mt 787 3675 L
- 787 3675 mt 772 3657 L
- 772 3657 mt 752 3636 L
- 752 3636 mt 746 3630 L
- 746 3630 mt 718 3602 L
- 718 3602 mt 717 3601 L
- 717 3601 mt 689 3575 L
- 689 3575 mt 682 3569 L
- 682 3569 mt 658 3547 L
- 658 3547 mt 647 3538 L
- 647 3538 mt 626 3519 L
- 626 3519 mt 613 3508 L
- 613 3508 mt 593 3492 L
- 593 3492 mt 578 3479 L
- 578 3479 mt 560 3464 L
- 560 3464 mt 543 3451 L
- 543 3451 mt 526 3437 L
- 526 3437 mt 508 3423 L
- 508 3423 mt 491 3409 L
- 491 3409 mt 473 3395 L
- 473 3395 mt 456 3382 L
- 456 3382 mt 438 3369 L
- 438 3369 mt 420 3354 L
- 420 3354 mt 403 3342 L
- 403 3342 mt 383 3327 L
- 383 3327 mt 368 3316 L
- 368 3316 mt 347 3299 L
- 347 3299 mt 334 3289 L
- 334 3289 mt 311 3272 L
- 311 3272 mt 299 3262 L
- 299 3262 mt 276 3244 L
- 276 3244 mt 264 3234 L
- 264 3234 mt 242 3217 L
- 242 3217 mt 229 3206 L
- 229 3206 mt 209 3189 L
- 209 3189 mt 194 3177 L
- 194 3177 mt 177 3162 L
- 177 3162 mt 159 3146 L
- 159 3146 mt 147 3134 L
- 147 3134 mt 124 3113 L
- 124 3113 mt 117 3107 L
- 117 3107 mt 90 3080 L
- 90 3080 mt 89 3079 L
- 89 3079 mt 61 3052 L
- 61 3052 mt 55 3045 L
- 55 3045 mt 34 3024 L
- 34 3024 mt 20 3009 L
- 20 3009 mt 8 2997 L
- 8 2997 mt -14 2971 L
- -14 2971 mt -16 2969 L
- -16 2969 mt -40 2942 L
- -40 2942 mt -49 2931 L
- -49 2931 mt -64 2914 L
- -64 2914 mt -84 2891 L
- -84 2891 mt -87 2887 L
- -87 2887 mt -109 2859 L
--109 2859 mt -119 2847 L
--119 2847 mt -130 2832 L
--130 2832 mt -150 2804 L
--150 2804 mt -154 2799 L
--154 2799 mt -170 2777 L
--170 2777 mt -187 2749 L
--187 2749 mt -188 2747 L
--188 2747 mt -204 2722 L
--204 2722 mt -220 2694 L
--220 2694 mt -223 2688 L
--223 2688 mt -235 2667 L
--235 2667 mt -249 2639 L
--249 2639 mt -258 2619 L
--258 2619 mt -262 2612 L
--262 2612 mt -274 2584 L
--274 2584 mt -285 2557 L
--285 2557 mt -293 2535 L
--293 2535 mt -295 2529 L
--295 2529 mt -305 2502 L
--305 2502 mt -314 2474 L
--314 2474 mt -321 2446 L
--321 2446 mt -328 2419 L
--328 2419 mt -328 2419 L
--328 2419 mt -333 2391 L
--333 2391 mt -338 2364 L
--338 2364 mt -341 2336 L
--341 2336 mt -343 2309 L
--343 2309 mt -344 2281 L
--344 2281 mt -344 2254 L
--344 2254 mt -342 2226 L
--342 2226 mt -339 2199 L
--339 2199 mt -336 2171 L
--336 2171 mt -331 2144 L
--331 2144 mt -328 2130 L
--328 2130 mt -325 2116 L
--325 2116 mt -318 2089 L
--318 2089 mt -311 2061 L
--311 2061 mt -302 2034 L
--302 2034 mt -293 2007 L
--293 2007 mt -293 2006 L
--293 2006 mt -283 1979 L
--283 1979 mt -273 1951 L
--273 1951 mt -262 1924 L
--262 1924 mt -258 1914 L
--258 1914 mt -251 1896 L
--251 1896 mt -240 1869 L
--240 1869 mt -229 1841 L
--229 1841 mt -223 1828 L
--223 1828 mt -217 1814 L
--217 1814 mt -206 1786 L
--206 1786 mt -194 1759 L
--194 1759 mt -188 1745 L
--188 1745 mt -183 1731 L
--183 1731 mt -171 1704 L
--171 1704 mt -160 1676 L
--160 1676 mt -154 1663 L
--154 1663 mt -147 1649 L
--147 1649 mt -135 1621 L
--135 1621 mt -123 1594 L
--123 1594 mt -119 1585 L
--119 1585 mt -110 1566 L
--110 1566 mt -98 1539 L
- -98 1539 mt -85 1511 L
- -85 1511 mt -84 1508 L
- -84 1508 mt -73 1484 L
- -73 1484 mt -61 1456 L
- -61 1456 mt -49 1428 L
- -49 1428 mt -49 1428 L
- -49 1428 mt -37 1401 L
- -37 1401 mt -26 1373 L
- -26 1373 mt -14 1346 L
- -14 1346 mt -14 1346 L
- -14 1346 mt -3 1318 L
- -3 1318 mt 7 1291 L
- 7 1291 mt 18 1263 L
- 18 1263 mt 20 1258 L
- 20 1258 mt 28 1236 L
- 28 1236 mt 39 1208 L
- 39 1208 mt 50 1181 L
- 50 1181 mt 55 1168 L
- 55 1168 mt 60 1153 L
- 60 1153 mt 71 1126 L
- 71 1126 mt 83 1098 L
- 83 1098 mt 90 1082 L
- 90 1082 mt 94 1071 L
- 94 1071 mt 106 1043 L
- 106 1043 mt 119 1016 L
- 119 1016 mt 124 1006 L
- 124 1006 mt 133 988 L
- 133 988 mt 147 961 L
- 147 961 mt 159 937 L
- 159 937 mt 161 933 L
- 161 933 mt 176 906 L
- 176 906 mt 192 878 L
- 192 878 mt 194 875 L
- 194 875 mt 208 851 L
- 208 851 mt 225 823 L
- 225 823 mt 229 817 L
- 229 817 mt 242 796 L
- 242 796 mt 260 768 L
- 260 768 mt 264 762 L
- 264 762 mt 278 741 L
- 278 741 mt 297 713 L
- 297 713 mt 299 710 L
- 299 710 mt 316 686 L
- 316 686 mt 334 662 L
- 334 662 mt 336 658 L
- 336 658 mt 357 631 L
- 357 631 mt 368 615 L
- 368 615 mt 378 603 L
- 378 603 mt 399 576 L
- 399 576 mt 403 571 L
- 403 571 mt 422 548 L
- 422 548 mt 438 528 L
- 438 528 mt 444 521 L
- 444 521 mt 467 493 L
- 467 493 mt 473 486 L
- 473 486 mt 490 466 L
- 490 466 mt 508 445 L
- 508 445 mt 514 438 L
- 514 438 mt 538 411 L
- 538 411 mt 543 406 L
- 543 406 mt 564 383 L
- 564 383 mt 578 368 L
- 578 368 mt 590 355 L
- 590 355 mt 613 333 L
- 613 333 mt 618 328 L
- 618 328 mt 647 300 L
- 647 300 mt 647 300 L
- 647 300 mt 679 273 L
- 679 273 mt 682 270 L
- 682 270 mt 712 245 L
- 712 245 mt 717 241 L
- 717 241 mt 748 218 L
- 748 218 mt 752 215 L
- 752 215 mt 787 190 L
- 787 190 mt 787 190 L
- 787 190 mt 822 167 L
- 822 167 mt 828 163 L
- 828 163 mt 857 145 L
- 857 145 mt 872 135 L
- 872 135 mt 892 123 L
- 892 123 mt 918 108 L
- 918 108 mt 926 103 L
- 926 103 mt 961 83 L
- 961 83 mt 967 80 L
- 967 80 mt 996 65 L
- 996 65 mt 1019 53 L
-1019 53 mt 1031 47 L
-1031 47 mt 1066 30 L
-1066 30 mt 1075 25 L
-1075 25 mt 1101 13 L
-1101 13 mt 1135 -1 L
-1135 -1 mt 1136 -1 L
-1136 -1 mt 1170 -16 L
-1170 -16 mt 1200 -29 L
-1200 -29 mt 1205 -31 L
-1205 -31 mt 1240 -45 L
-1240 -45 mt 1269 -56 L
-1269 -56 mt 1275 -59 L
-1275 -59 mt 1310 -72 L
-1310 -72 mt 1342 -84 L
-1342 -84 mt 1345 -85 L
-1345 -85 mt 1380 -98 L
-1380 -98 mt 1415 -110 L
-1415 -110 mt 1419 -111 L
-1419 -111 mt 1449 -122 L
-1449 -122 mt 1484 -133 L
-1484 -133 mt 1502 -139 L
-1502 -139 mt 1519 -144 L
-1519 -144 mt 1554 -155 L
-1554 -155 mt 1589 -166 L
-1589 -166 mt 1591 -166 L
-1591 -166 mt 1624 -176 L
-1624 -176 mt 1659 -186 L
-1659 -186 mt 1687 -194 L
-1687 -194 mt 1694 -196 L
-1694 -196 mt 1728 -205 L
-1728 -205 mt 1763 -215 L
-1763 -215 mt 1789 -221 L
-1789 -221 mt 1798 -224 L
-1798 -224 mt 1833 -233 L
-1833 -233 mt 1868 -242 L
-1868 -242 mt 1894 -249 L
-1894 -249 mt 1903 -251 L
-1903 -251 mt 1938 -260 L
-1938 -260 mt 1972 -269 L
-1972 -269 mt 2000 -276 L
-2000 -276 mt 2007 -278 L
-2007 -278 mt 2042 -287 L
-2042 -287 mt 2077 -296 L
-2077 -296 mt 2106 -304 L
-2106 -304 mt 2112 -306 L
-2112 -306 mt 2147 -315 L
-2147 -315 mt 2182 -324 L
-2182 -324 mt 2211 -331 L
-2211 -331 mt 2217 -333 L
-2217 -333 mt 2251 -342 L
-2251 -342 mt 2286 -351 L
-2286 -351 mt 2317 -359 L
-2317 -359 mt 2321 -360 L
-2321 -360 mt 2356 -369 L
-2356 -369 mt 2391 -377 L
-2391 -377 mt 2426 -386 L
-2426 -386 mt 2427 -386 L
-2427 -386 mt 2461 -395 L
-2461 -395 mt 2496 -404 L
-2496 -404 mt 2530 -413 L
-2530 -413 mt 2536 -414 L
-2536 -414 mt 2565 -422 L
-2565 -422 mt 2600 -431 L
-2600 -431 mt 2635 -440 L
-2635 -440 mt 2640 -441 L
-2640 -441 mt 2670 -449 L
-2670 -449 mt 2705 -459 L
-2705 -459 mt 2740 -468 L
-2740 -468 mt 2743 -469 L
-2743 -469 mt 2774 -478 L
-2774 -478 mt 2809 -487 L
-2809 -487 mt 2844 -496 L
-2844 -496 mt 2845 -496 L
-2845 -496 mt 2879 -505 L
-2879 -505 mt 2914 -514 L
-2914 -514 mt 2949 -523 L
-2949 -523 mt 2953 -524 L
-2953 -524 mt 2984 -531 L
-2984 -531 mt 3019 -539 L
-3019 -539 mt 3053 -547 L
-3053 -547 mt 3074 -551 L
-3074 -551 mt 3088 -555 L
-3088 -555 mt 3123 -562 L
-3123 -562 mt 3158 -568 L
-3158 -568 mt 3193 -575 L
-3193 -575 mt 3217 -579 L
-3217 -579 mt 3228 -581 L
-3228 -581 mt 3263 -586 L
-3263 -586 mt 3298 -591 L
-3298 -591 mt 3332 -596 L
-3332 -596 mt 3367 -600 L
-3367 -600 mt 3402 -604 L
-3402 -604 mt 3423 -606 L
-3423 -606 mt 3437 -608 L
-3437 -608 mt 3472 -611 L
-3472 -611 mt 3507 -614 L
-3507 -614 mt 3542 -616 L
-3542 -616 mt 3577 -617 L
-3577 -617 mt 3611 -619 L
-3611 -619 mt 3646 -619 L
-3646 -619 mt 3681 -619 L
-3681 -619 mt 3716 -618 L
-3716 -618 mt 3751 -617 L
-3751 -617 mt 3786 -616 L
-3786 -616 mt 3821 -614 L
-3821 -614 mt 3855 -611 L
-3855 -611 mt 3890 -608 L
-3890 -608 mt 3910 -606 L
-3910 -606 mt 3925 -605 L
-3925 -605 mt 3960 -602 L
-3960 -602 mt 3995 -598 L
-3995 -598 mt 4030 -593 L
-4030 -593 mt 4065 -589 L
-4065 -589 mt 4100 -584 L
-4100 -584 mt 4134 -579 L
-4134 -579 mt 4137 -579 L
-4137 -579 mt 4169 -574 L
-4169 -574 mt 4204 -569 L
-4204 -569 mt 4239 -564 L
-4239 -564 mt 4274 -558 L
-4274 -558 mt 4309 -552 L
-4309 -552 mt 4314 -551 L
-4314 -551 mt 4344 -547 L
-4344 -547 mt 4379 -540 L
-4379 -540 mt 4413 -534 L
-4413 -534 mt 4448 -527 L
-4448 -527 mt 4462 -524 L
-4462 -524 mt 4483 -520 L
-4483 -520 mt 4518 -512 L
-4518 -512 mt 4553 -504 L
-4553 -504 mt 4584 -496 L
-4584 -496 mt 4588 -496 L
-4588 -496 mt 4623 -487 L
-4623 -487 mt 4657 -478 L
-4657 -478 mt 4690 -469 L
-4690 -469 mt 4692 -468 L
-4692 -468 mt 4727 -458 L
-4727 -458 mt 4762 -448 L
-4762 -448 mt 4783 -441 L
-4783 -441 mt 4797 -437 L
-4797 -437 mt 4832 -426 L
-4832 -426 mt 4867 -414 L
-4867 -414 mt 4868 -414 L
-4868 -414 mt 4902 -402 L
-4902 -402 mt 4936 -390 L
-4936 -390 mt 4946 -386 L
-4946 -386 mt 4971 -377 L
-4971 -377 mt 5006 -364 L
-5006 -364 mt 5021 -359 L
-5021 -359 mt 5041 -351 L
-5041 -351 mt 5076 -338 L
-5076 -338 mt 5093 -331 L
-5093 -331 mt 5111 -325 L
-5111 -325 mt 5146 -311 L
-5146 -311 mt 5164 -304 L
-5164 -304 mt 5181 -297 L
-5181 -297 mt 5215 -283 L
-5215 -283 mt 5231 -276 L
-5231 -276 mt 5250 -269 L
-5250 -269 mt 5285 -254 L
-5285 -254 mt 5296 -249 L
-5296 -249 mt 5320 -238 L
-5320 -238 mt 5355 -223 L
-5355 -223 mt 5358 -221 L
-5358 -221 mt 5390 -207 L
-5390 -207 mt 5417 -194 L
-5417 -194 mt 5425 -190 L
-5425 -190 mt 5459 -174 L
-5459 -174 mt 5474 -166 L
-5474 -166 mt 5494 -156 L
-5494 -156 mt 5528 -139 L
-5528 -139 mt 5529 -138 L
-5529 -138 mt 5564 -120 L
-5564 -120 mt 5581 -111 L
-5581 -111 mt 5599 -101 L
-5599 -101 mt 5630 -84 L
-5630 -84 mt 5634 -82 L
-5634 -82 mt 5669 -62 L
-5669 -62 mt 5678 -56 L
-5678 -56 mt 5704 -41 L
-5704 -41 mt 5723 -29 L
-5723 -29 mt 5738 -19 L
-5738 -19 mt 5765 -1 L
-5765 -1 mt 5773 3 L
-5773 3 mt 5806 25 L
-5806 25 mt 5808 27 L
-5808 27 mt 5843 51 L
-5843 51 mt 5846 53 L
-5846 53 mt 5878 76 L
-5878 76 mt 5884 80 L
-5884 80 mt 5913 102 L
-5913 102 mt 5921 108 L
-5921 108 mt 5948 129 L
-5948 129 mt 5956 135 L
-5956 135 mt 5983 156 L
-5983 156 mt 5991 163 L
-5991 163 mt 6017 185 L
-6017 185 mt 6025 190 L
-6025 190 mt 6052 214 L
-6052 214 mt 6057 218 L
-6057 218 mt 6087 244 L
-6087 244 mt 6089 245 L
-6089 245 mt 6120 273 L
-6120 273 mt 6122 275 L
-6122 275 mt 6151 300 L
-6151 300 mt 6157 306 L
-6157 306 mt 6181 328 L
-6181 328 mt 6192 338 L
-6192 338 mt 6211 355 L
-6211 355 mt 6227 370 L
-6227 370 mt 6240 383 L
-6240 383 mt 6261 403 L
-6261 403 mt 6269 411 L
-6269 411 mt 6296 436 L
-6296 436 mt 6299 438 L
-6299 438 mt 6328 466 L
-6328 466 mt 6331 469 L
-6331 469 mt 6357 493 L
-6357 493 mt 6366 501 L
-6366 501 mt 6387 521 L
-6387 521 mt 6401 534 L
-6401 534 mt 6416 548 L
-6416 548 mt 6436 566 L
-6436 566 mt 6446 576 L
-6446 576 mt 6471 599 L
-6471 599 mt 6475 603 L
-6475 603 mt 6505 631 L
-6505 631 mt 6506 631 L
-6506 631 mt 6534 658 L
-6534 658 mt 6540 664 L
-6540 664 mt 6564 686 L
-6564 686 mt 6575 696 L
-6575 696 mt 6593 713 L
-6593 713 mt 6610 729 L
-6610 729 mt 6623 741 L
-6623 741 mt 6645 762 L
-6645 762 mt 6652 768 L
-6652 768 mt 6680 795 L
-6680 795 mt 6681 796 L
-6681 796 mt 6709 823 L
-6709 823 mt 6715 829 L
-6715 829 mt 6738 851 L
-6738 851 mt 6750 863 L
-6750 863 mt 6766 878 L
-6766 878 mt 6785 897 L
-6785 897 mt 6793 906 L
-6793 906 mt 6819 932 L
-6819 932 mt 6820 933 L
-6820 933 mt 6847 961 L
-6847 961 mt 6854 968 L
-6854 968 mt 6874 988 L
-6874 988 mt 6889 1004 L
-6889 1004 mt 6901 1016 L
-6901 1016 mt 6924 1040 L
-6924 1040 mt 6927 1043 L
-6927 1043 mt 6953 1071 L
-6953 1071 mt 6959 1078 L
-6959 1078 mt 6978 1098 L
-6978 1098 mt 6994 1116 L
-6994 1116 mt 7003 1126 L
-7003 1126 mt 7027 1153 L
-7027 1153 mt 7029 1155 L
-7029 1155 mt 7052 1181 L
-7052 1181 mt 7063 1194 L
-7063 1194 mt 7077 1208 L
-7077 1208 mt 7098 1233 L
-7098 1233 mt 7101 1236 L
-7101 1236 mt 7125 1263 L
-7125 1263 mt 7133 1273 L
-7133 1273 mt 7149 1291 L
-7149 1291 mt 7168 1314 L
-7168 1314 mt 7172 1318 L
-7172 1318 mt 7196 1346 L
-7196 1346 mt 7203 1354 L
-7203 1354 mt 7220 1373 L
-7220 1373 mt 7238 1394 L
-7238 1394 mt 7244 1401 L
-7244 1401 mt 7267 1428 L
-7267 1428 mt 7273 1436 L
-7273 1436 mt 7289 1456 L
-7289 1456 mt 7308 1479 L
-7308 1479 mt 7311 1484 L
-7311 1484 mt 7333 1511 L
-7333 1511 mt 7342 1523 L
-7342 1523 mt 7355 1539 L
-7355 1539 mt 7376 1566 L
-7376 1566 mt 7377 1568 L
-7377 1568 mt 7396 1594 L
-7396 1594 mt 7412 1616 L
-7412 1616 mt 7416 1621 L
-7416 1621 mt 7435 1649 L
-7435 1649 mt 7447 1667 L
-7447 1667 mt 7453 1676 L
-7453 1676 mt 7471 1704 L
-7471 1704 mt 7482 1722 L
-7482 1722 mt 7488 1731 L
-7488 1731 mt 7504 1759 L
-7504 1759 mt 7517 1781 L
-7517 1781 mt 7520 1786 L
-7520 1786 mt 7534 1814 L
-7534 1814 mt 7548 1841 L
-7548 1841 mt 7552 1849 L
-7552 1849 mt 7561 1869 L
-7561 1869 mt 7573 1896 L
-7573 1896 mt 7583 1924 L
-7583 1924 mt 7587 1934 L
-7587 1934 mt 7593 1951 L
-7593 1951 mt 7601 1979 L
-7601 1979 mt 7609 2006 L
-7609 2006 mt 7615 2034 L
-7615 2034 mt 7620 2061 L
-7620 2061 mt 7621 2069 L
-7482 1954 mt 7488 1979 L
-7488 1979 mt 7494 2006 L
-7494 2006 mt 7499 2034 L
-7499 2034 mt 7503 2061 L
-7503 2061 mt 7506 2089 L
-7506 2089 mt 7508 2116 L
-7508 2116 mt 7509 2144 L
-7509 2144 mt 7509 2171 L
-7509 2171 mt 7509 2199 L
-7509 2199 mt 7507 2226 L
-7507 2226 mt 7505 2254 L
-7505 2254 mt 7503 2281 L
-7503 2281 mt 7500 2309 L
-7500 2309 mt 7497 2336 L
-7497 2336 mt 7494 2364 L
-7494 2364 mt 7490 2391 L
-7490 2391 mt 7486 2419 L
-7486 2419 mt 7482 2446 L
-7482 2446 mt 7482 2447 L
-7482 2447 mt 7478 2474 L
-7478 2474 mt 7473 2502 L
-7473 2502 mt 7468 2529 L
-7468 2529 mt 7462 2557 L
-7462 2557 mt 7456 2584 L
-7456 2584 mt 7449 2612 L
-7449 2612 mt 7447 2620 L
-7447 2620 mt 7442 2639 L
-7442 2639 mt 7434 2667 L
-7434 2667 mt 7426 2694 L
-7426 2694 mt 7417 2722 L
-7417 2722 mt 7412 2735 L
-7412 2735 mt 7407 2749 L
-7407 2749 mt 7398 2777 L
-7398 2777 mt 7388 2804 L
-7388 2804 mt 7377 2832 L
-7377 2832 mt 7377 2832 L
-7377 2832 mt 7367 2859 L
-7367 2859 mt 7356 2887 L
-7356 2887 mt 7346 2914 L
-7346 2914 mt 7342 2922 L
-7342 2922 mt 7335 2942 L
-7335 2942 mt 7324 2969 L
-7324 2969 mt 7312 2997 L
-7312 2997 mt 7308 3008 L
-7308 3008 mt 7301 3024 L
-7301 3024 mt 7289 3052 L
-7289 3052 mt 7278 3079 L
-7278 3079 mt 7273 3091 L
-7273 3091 mt 7266 3107 L
-7266 3107 mt 7254 3134 L
-7254 3134 mt 7241 3162 L
-7241 3162 mt 7238 3170 L
-7238 3170 mt 7229 3189 L
-7229 3189 mt 7216 3217 L
-7216 3217 mt 7203 3244 L
-7203 3244 mt 7203 3245 L
-7203 3245 mt 7190 3272 L
-7190 3272 mt 7177 3299 L
-7177 3299 mt 7168 3318 L
-7168 3318 mt 7164 3327 L
-7164 3327 mt 7150 3354 L
-7150 3354 mt 7136 3382 L
-7136 3382 mt 7133 3389 L
-7133 3389 mt 7123 3409 L
-7123 3409 mt 7110 3437 L
-7110 3437 mt 7098 3461 L
-7098 3461 mt 7097 3464 L
-7097 3464 mt 7084 3492 L
-7084 3492 mt 7071 3519 L
-7071 3519 mt 7063 3536 L
-7063 3536 mt 7058 3547 L
-7058 3547 mt 7045 3575 L
-7045 3575 mt 7032 3602 L
-7032 3602 mt 7029 3609 L
-7029 3609 mt 7019 3630 L
-7019 3630 mt 7005 3657 L
-7005 3657 mt 6994 3678 L
-6994 3678 mt 6990 3685 L
-6990 3685 mt 6976 3712 L
-6976 3712 mt 6961 3740 L
-6961 3740 mt 6959 3744 L
-6959 3744 mt 6947 3767 L
-6947 3767 mt 6932 3795 L
-6932 3795 mt 6924 3809 L
-6924 3809 mt 6917 3822 L
-6917 3822 mt 6902 3850 L
-6902 3850 mt 6889 3874 L
-6889 3874 mt 6887 3877 L
-6887 3877 mt 6872 3905 L
-6872 3905 mt 6856 3932 L
-6856 3932 mt 6854 3936 L
-6854 3936 mt 6841 3960 L
-6841 3960 mt 6824 3987 L
-6824 3987 mt 6819 3996 L
-6819 3996 mt 6808 4015 L
-6808 4015 mt 6791 4042 L
-6791 4042 mt 6785 4053 L
-6785 4053 mt 6775 4070 L
-6775 4070 mt 6758 4097 L
-6758 4097 mt 6750 4110 L
-6750 4110 mt 6741 4125 L
-6741 4125 mt 6723 4152 L
-6723 4152 mt 6715 4166 L
-6715 4166 mt 6706 4180 L
-6706 4180 mt 6688 4207 L
-6688 4207 mt 6680 4221 L
-6680 4221 mt 6671 4235 L
-6671 4235 mt 6654 4262 L
-6654 4262 mt 6645 4276 L
-6645 4276 mt 6636 4290 L
-6636 4290 mt 6619 4317 L
-6619 4317 mt 6610 4331 L
-6610 4331 mt 6601 4345 L
-6601 4345 mt 6584 4372 L
-6584 4372 mt 6575 4385 L
-6575 4385 mt 6565 4400 L
-6565 4400 mt 6546 4427 L
-6546 4427 mt 6540 4436 L
-6540 4436 mt 6527 4455 L
-6527 4455 mt 6506 4482 L
-6506 4482 mt 6505 4482 L
-6505 4482 mt 6482 4510 L
-6482 4510 mt 6471 4522 L
-6471 4522 mt 6457 4537 L
-6457 4537 mt 6436 4557 L
-6436 4557 mt 6428 4565 L
-6428 4565 mt 6401 4587 L
-6401 4587 mt 6394 4592 L
-6394 4592 mt 6366 4612 L
-6366 4612 mt 6353 4620 L
-6353 4620 mt 6331 4632 L
-6331 4632 mt 6299 4648 L
-6299 4648 mt 6296 4649 L
-6296 4649 mt 6261 4662 L
-6261 4662 mt 6227 4672 L
-6227 4672 mt 6213 4675 L
-6213 4675 mt 6192 4680 L
-6192 4680 mt 6157 4686 L
-6157 4686 mt 6122 4690 L
-6122 4690 mt 6087 4692 L
-6087 4692 mt 6052 4692 L
-6052 4692 mt 6017 4691 L
-6017 4691 mt 5983 4688 L
-5983 4688 mt 5948 4683 L
-5948 4683 mt 5913 4677 L
-5913 4677 mt 5905 4675 L
-5905 4675 mt 5878 4669 L
-5878 4669 mt 5843 4659 L
-5843 4659 mt 5808 4649 L
-5808 4649 mt 5805 4648 L
-5805 4648 mt 5773 4637 L
-5773 4637 mt 5738 4625 L
-5738 4625 mt 5726 4620 L
-5726 4620 mt 5704 4610 L
-5704 4610 mt 5671 4592 L
-5671 4592 mt 5669 4591 L
-5669 4591 mt 5634 4565 L
-5634 4565 mt 5633 4565 L
-5633 4565 mt 5612 4537 L
-5612 4537 mt 5605 4510 L
-5605 4510 mt 5603 4482 L
-5603 4482 mt 5603 4455 L
-5603 4455 mt 5601 4427 L
-5601 4427 mt 5599 4416 L
-5599 4416 mt 5596 4400 L
-5596 4400 mt 5587 4372 L
-5587 4372 mt 5575 4345 L
-5575 4345 mt 5564 4322 L
-5564 4322 mt 5562 4317 L
-5562 4317 mt 5550 4290 L
-5550 4290 mt 5541 4262 L
-5541 4262 mt 5533 4235 L
-5533 4235 mt 5529 4216 L
-5529 4216 mt 5527 4207 L
-5527 4207 mt 5523 4180 L
-5523 4180 mt 5518 4152 L
-5518 4152 mt 5514 4125 L
-5514 4125 mt 5510 4097 L
-5510 4097 mt 5506 4070 L
-5506 4070 mt 5500 4042 L
-5500 4042 mt 5494 4019 L
-5494 4019 mt 5493 4015 L
-5493 4015 mt 5484 3987 L
-5484 3987 mt 5474 3960 L
-5474 3960 mt 5461 3932 L
-5461 3932 mt 5459 3930 L
-5459 3930 mt 5444 3905 L
-5444 3905 mt 5425 3879 L
-5425 3879 mt 5423 3877 L
-5423 3877 mt 5395 3850 L
-5395 3850 mt 5390 3844 L
-5390 3844 mt 5360 3822 L
-5360 3822 mt 5355 3818 L
-5355 3818 mt 5320 3798 L
-5320 3798 mt 5314 3795 L
-5314 3795 mt 5285 3781 L
-5285 3781 mt 5254 3767 L
-5254 3767 mt 5250 3765 L
-5250 3765 mt 5215 3750 L
-5215 3750 mt 5189 3740 L
-5189 3740 mt 5181 3736 L
-5181 3736 mt 5146 3721 L
-5146 3721 mt 5128 3712 L
-5128 3712 mt 5111 3703 L
-5111 3703 mt 5084 3685 L
-5084 3685 mt 5076 3679 L
-5076 3679 mt 5049 3657 L
-5049 3657 mt 5041 3651 L
-5041 3651 mt 5017 3630 L
-5017 3630 mt 5006 3621 L
-5006 3621 mt 4988 3602 L
-4988 3602 mt 4971 3585 L
-4971 3585 mt 4962 3575 L
-4962 3575 mt 4937 3547 L
-4937 3547 mt 4936 3547 L
-4936 3547 mt 4913 3519 L
-4913 3519 mt 4902 3505 L
-4902 3505 mt 4891 3492 L
-4891 3492 mt 4871 3464 L
-4871 3464 mt 4867 3459 L
-4867 3459 mt 4851 3437 L
-4851 3437 mt 4832 3410 L
-4832 3410 mt 4831 3409 L
-4831 3409 mt 4812 3382 L
-4812 3382 mt 4797 3362 L
-4797 3362 mt 4792 3354 L
-4792 3354 mt 4770 3327 L
-4770 3327 mt 4762 3318 L
-4762 3318 mt 4745 3299 L
-4745 3299 mt 4727 3281 L
-4727 3281 mt 4719 3272 L
-4719 3272 mt 4692 3246 L
-4692 3246 mt 4691 3244 L
-4691 3244 mt 4665 3217 L
-4665 3217 mt 4657 3209 L
-4657 3209 mt 4642 3189 L
-4642 3189 mt 4625 3162 L
-4625 3162 mt 4623 3158 L
-4623 3158 mt 4608 3134 L
-4608 3134 mt 4588 3107 L
-4588 3107 mt 4588 3107 L
-4588 3107 mt 4561 3079 L
-4561 3079 mt 4553 3072 L
-4553 3072 mt 4527 3052 L
-4527 3052 mt 4518 3045 L
-4518 3045 mt 4488 3024 L
-4488 3024 mt 4483 3021 L
-4483 3021 mt 4448 2998 L
-4448 2998 mt 4447 2997 L
-4447 2997 mt 4413 2973 L
-4413 2973 mt 4409 2969 L
-4409 2969 mt 4379 2946 L
-4379 2946 mt 4373 2942 L
-4373 2942 mt 4344 2920 L
-4344 2920 mt 4336 2914 L
-4336 2914 mt 4309 2896 L
-4309 2896 mt 4293 2887 L
-4293 2887 mt 4274 2875 L
-4274 2875 mt 4246 2859 L
-4246 2859 mt 4239 2855 L
-4239 2855 mt 4204 2836 L
-4204 2836 mt 4194 2832 L
-4194 2832 mt 4169 2820 L
-4169 2820 mt 4134 2806 L
-4134 2806 mt 4127 2804 L
-4127 2804 mt 4100 2796 L
-4100 2796 mt 4065 2792 L
-4065 2792 mt 4030 2801 L
-4030 2801 mt 4025 2804 L
-4025 2804 mt 3995 2829 L
-3995 2829 mt 3993 2832 L
-3993 2832 mt 3966 2859 L
-3966 2859 mt 3960 2865 L
-3960 2865 mt 3937 2887 L
-3937 2887 mt 3925 2897 L
-3925 2897 mt 3904 2914 L
-3904 2914 mt 3890 2925 L
-3890 2925 mt 3867 2942 L
-3867 2942 mt 3855 2950 L
-3855 2950 mt 3826 2969 L
-3826 2969 mt 3821 2973 L
-3821 2973 mt 3786 2994 L
-3786 2994 mt 3781 2997 L
-3781 2997 mt 3751 3015 L
-3751 3015 mt 3733 3024 L
-3733 3024 mt 3716 3034 L
-3716 3034 mt 3682 3052 L
-3682 3052 mt 3681 3053 L
-3681 3053 mt 3646 3072 L
-3646 3072 mt 3632 3079 L
-3632 3079 mt 3611 3091 L
-3611 3091 mt 3581 3107 L
-3581 3107 mt 3577 3109 L
-3577 3109 mt 3542 3129 L
-3542 3129 mt 3531 3134 L
-3531 3134 mt 3507 3151 L
-3507 3151 mt 3490 3162 L
-3490 3162 mt 3472 3186 L
-3472 3186 mt 3469 3189 L
-3469 3189 mt 3467 3217 L
-3467 3217 mt 3472 3226 L
-3472 3226 mt 3479 3244 L
-3479 3244 mt 3495 3272 L
-3495 3272 mt 3507 3294 L
-3507 3294 mt 3509 3299 L
-3509 3299 mt 3524 3327 L
-3524 3327 mt 3540 3354 L
-3540 3354 mt 3542 3357 L
-3542 3357 mt 3556 3382 L
-3556 3382 mt 3576 3409 L
-3576 3409 mt 3577 3410 L
-3577 3410 mt 3597 3437 L
-3597 3437 mt 3611 3455 L
-3611 3455 mt 3619 3464 L
-3619 3464 mt 3642 3492 L
-3642 3492 mt 3646 3497 L
-3646 3497 mt 3666 3519 L
-3666 3519 mt 3681 3536 L
-3681 3536 mt 3692 3547 L
-3692 3547 mt 3716 3573 L
-3716 3573 mt 3717 3575 L
-3717 3575 mt 3741 3602 L
-3741 3602 mt 3751 3615 L
-3751 3615 mt 3761 3630 L
-3761 3630 mt 3777 3657 L
-3777 3657 mt 3786 3675 L
-3786 3675 mt 3790 3685 L
-3790 3685 mt 3800 3712 L
-3800 3712 mt 3807 3740 L
-3807 3740 mt 3810 3767 L
-3810 3767 mt 3810 3795 L
-3810 3795 mt 3804 3822 L
-3804 3822 mt 3793 3850 L
-3793 3850 mt 3786 3864 L
-3786 3864 mt 3779 3877 L
-3779 3877 mt 3766 3905 L
-3766 3905 mt 3757 3932 L
-3757 3932 mt 3751 3955 L
-3751 3955 mt 3749 3960 L
-3749 3960 mt 3747 3987 L
-3747 3987 mt 3751 3995 L
-3751 3995 mt 3760 4015 L
-3760 4015 mt 3779 4042 L
-3779 4042 mt 3786 4053 L
-3786 4053 mt 3796 4070 L
-3796 4070 mt 3809 4097 L
-3809 4097 mt 3818 4125 L
-3818 4125 mt 3821 4140 L
-3821 4140 mt 3823 4152 L
-3823 4152 mt 3826 4180 L
-3826 4180 mt 3826 4207 L
-3826 4207 mt 3821 4235 L
-3821 4235 mt 3821 4236 L
-3821 4236 mt 3807 4262 L
-3807 4262 mt 3786 4286 L
-3786 4286 mt 3782 4290 L
-3782 4290 mt 3754 4317 L
-3754 4317 mt 3751 4328 L
-3751 4328 mt 3743 4345 L
-3743 4345 mt 3751 4359 L
-3751 4359 mt 3757 4372 L
-3757 4372 mt 3782 4400 L
-3782 4400 mt 3786 4405 L
-3786 4405 mt 3802 4427 L
-3802 4427 mt 3816 4455 L
-3816 4455 mt 3821 4466 L
-3821 4466 mt 3828 4482 L
-3828 4482 mt 3837 4510 L
-3837 4510 mt 3844 4537 L
-3844 4537 mt 3848 4565 L
-3848 4565 mt 3851 4592 L
-3851 4592 mt 3846 4620 L
-3846 4620 mt 3836 4648 L
-3836 4648 mt 3823 4675 L
-3823 4675 mt 3821 4679 L
-3821 4679 mt 3808 4703 L
-3808 4703 mt 3790 4730 L
-3790 4730 mt 3786 4737 L
-3786 4737 mt 3771 4758 L
-3771 4758 mt 3751 4784 L
-3751 4784 mt 3750 4785 L
-3750 4785 mt 3727 4813 L
-3727 4813 mt 3716 4825 L
-3716 4825 mt 3701 4840 L
-3701 4840 mt 3681 4860 L
-3681 4860 mt 3673 4868 L
-3673 4868 mt 3646 4892 L
-3646 4892 mt 3643 4895 L
-3643 4895 mt 3611 4921 L
-3611 4921 mt 3609 4923 L
-3609 4923 mt 3577 4947 L
-3577 4947 mt 3572 4950 L
-3572 4950 mt 3542 4971 L
-3542 4971 mt 3531 4978 L
-3531 4978 mt 3507 4993 L
-3507 4993 mt 3485 5005 L
-3485 5005 mt 3472 5012 L
-3472 5012 mt 3437 5031 L
-3437 5031 mt 3433 5033 L
-3433 5033 mt 3402 5048 L
-3402 5048 mt 3375 5060 L
-3375 5060 mt 3367 5064 L
-3367 5064 mt 3332 5079 L
-3332 5079 mt 3311 5088 L
-3311 5088 mt 3298 5093 L
-3298 5093 mt 3263 5107 L
-3263 5107 mt 3239 5115 L
-3239 5115 mt 3228 5119 L
-3228 5119 mt 3193 5131 L
-3193 5131 mt 3158 5142 L
-3158 5142 mt 3157 5143 L
-3157 5143 mt 3123 5153 L
-3123 5153 mt 3088 5162 L
-3088 5162 mt 3053 5170 L
-3053 5170 mt 3053 5170 L
-3053 5170 mt 3019 5178 L
-3019 5178 mt 2984 5184 L
-2984 5184 mt 2949 5190 L
-2949 5190 mt 2914 5196 L
-2914 5196 mt 2898 5198 L
-2898 5198 mt 2879 5200 L
-2879 5200 mt 2844 5204 L
-2844 5204 mt 2809 5208 L
-2809 5208 mt 2774 5210 L
-2774 5210 mt 2740 5213 L
-2740 5213 mt 2705 5214 L
-2705 5214 mt 2670 5215 L
-2670 5215 mt 2635 5215 L
-2635 5215 mt 2600 5215 L
-2600 5215 mt 2565 5214 L
-2565 5214 mt 2530 5213 L
-2530 5213 mt 2496 5211 L
-2496 5211 mt 2461 5209 L
-2461 5209 mt 2426 5207 L
-2426 5207 mt 2391 5203 L
-2391 5203 mt 2356 5200 L
-2356 5200 mt 2339 5198 L
-2339 5198 mt 2321 5196 L
-2321 5196 mt 2286 5191 L
-2286 5191 mt 2251 5186 L
-2251 5186 mt 2217 5181 L
-2217 5181 mt 2182 5175 L
-2182 5175 mt 2159 5170 L
-2159 5170 mt 2147 5168 L
-2147 5168 mt 2112 5161 L
-2112 5161 mt 2077 5153 L
-2077 5153 mt 2042 5144 L
-2042 5144 mt 2036 5143 L
-2036 5143 mt 2007 5135 L
-2007 5135 mt 1972 5126 L
-1972 5126 mt 1938 5116 L
-1938 5116 mt 1937 5115 L
-1937 5115 mt 1903 5105 L
-1903 5105 mt 1868 5094 L
-1868 5094 mt 1851 5088 L
-1851 5088 mt 1833 5082 L
-1833 5082 mt 1798 5069 L
-1798 5069 mt 1776 5060 L
-1776 5060 mt 1763 5055 L
-1763 5055 mt 1728 5041 L
-1728 5041 mt 1710 5033 L
-1710 5033 mt 1694 5025 L
-1694 5025 mt 1659 5008 L
-1659 5008 mt 1653 5005 L
-1653 5005 mt 1624 4990 L
-1624 4990 mt 1602 4978 L
-1602 4978 mt 1589 4970 L
-1589 4970 mt 1557 4950 L
-1557 4950 mt 1554 4948 L
-1554 4948 mt 1519 4925 L
-1519 4925 mt 1516 4923 L
-1516 4923 mt 1484 4899 L
-1484 4899 mt 1479 4895 L
-1479 4895 mt 1449 4871 L
-1449 4871 mt 1445 4868 L
-1445 4868 mt 1415 4840 L
-1415 4840 mt 1415 4840 L
-1415 4840 mt 1387 4813 L
-1387 4813 mt 1380 4805 L
-1380 4805 mt 1361 4785 L
-1361 4785 mt 1345 4767 L
-1345 4767 mt 1337 4758 L
-1337 4758 mt 1315 4730 L
-1315 4730 mt 1310 4724 L
-1310 4724 mt 1294 4703 L
-1294 4703 mt 1275 4676 L
-1275 4676 mt 1275 4675 L
-1275 4675 mt 1256 4648 L
-1256 4648 mt 1240 4622 L
-1240 4622 mt 1239 4620 L
-1239 4620 mt 1222 4592 L
-1222 4592 mt 1207 4565 L
-1207 4565 mt 1205 4563 L
-1205 4563 mt 1191 4537 L
-1191 4537 mt 1176 4510 L
-1176 4510 mt 1170 4498 L
-1170 4498 mt 1162 4482 L
-1162 4482 mt 1149 4455 L
-1149 4455 mt 1136 4427 L
-1136 4427 mt 1136 4427 L
-1136 4427 mt 1123 4400 L
-1123 4400 mt 1112 4372 L
-1112 4372 mt 1101 4345 L
-1101 4345 mt 1101 4344 L
-1101 4344 mt 1091 4317 L
-1091 4317 mt 1082 4290 L
-1082 4290 mt 1073 4262 L
-1073 4262 mt 1066 4237 L
-1066 4237 mt 1065 4235 L
-1065 4235 mt 1058 4207 L
-1058 4207 mt 1051 4180 L
-1051 4180 mt 1044 4152 L
-1044 4152 mt 1038 4125 L
-1038 4125 mt 1032 4097 L
-1032 4097 mt 1031 4093 L
-1031 4093 mt 1026 4070 L
-1026 4070 mt 1020 4042 L
-1020 4042 mt 1014 4015 L
-1014 4015 mt 1007 3987 L
-1007 3987 mt 1001 3960 L
-1001 3960 mt 996 3938 L
- 996 3938 mt 995 3932 L
- 995 3932 mt 988 3905 L
- 988 3905 mt 980 3877 L
- 980 3877 mt 972 3850 L
- 972 3850 mt 962 3822 L
- 962 3822 mt 961 3819 L
- 961 3819 mt 952 3795 L
- 952 3795 mt 940 3767 L
- 940 3767 mt 926 3741 L
- 926 3741 mt 926 3740 L
- 926 3740 mt 910 3712 L
- 910 3712 mt 892 3685 L
- 892 3685 mt 892 3684 L
- 892 3684 mt 871 3657 L
- 871 3657 mt 857 3639 L
- 857 3639 mt 848 3630 L
- 848 3630 mt 823 3602 L
- 823 3602 mt 822 3601 L
- 822 3601 mt 795 3575 L
- 795 3575 mt 787 3567 L
- 787 3567 mt 765 3547 L
- 765 3547 mt 752 3536 L
- 752 3536 mt 733 3519 L
- 733 3519 mt 717 3506 L
- 717 3506 mt 701 3492 L
- 701 3492 mt 682 3477 L
- 682 3477 mt 667 3464 L
- 667 3464 mt 647 3449 L
- 647 3449 mt 633 3437 L
- 633 3437 mt 613 3421 L
- 613 3421 mt 598 3409 L
- 598 3409 mt 578 3393 L
- 578 3393 mt 563 3382 L
- 563 3382 mt 543 3366 L
- 543 3366 mt 528 3354 L
- 528 3354 mt 508 3339 L
- 508 3339 mt 492 3327 L
- 492 3327 mt 473 3312 L
- 473 3312 mt 456 3299 L
- 456 3299 mt 438 3285 L
- 438 3285 mt 421 3272 L
- 421 3272 mt 403 3258 L
- 403 3258 mt 386 3244 L
- 386 3244 mt 368 3231 L
- 368 3231 mt 351 3217 L
- 351 3217 mt 334 3203 L
- 334 3203 mt 318 3189 L
- 318 3189 mt 299 3173 L
- 299 3173 mt 285 3162 L
- 285 3162 mt 264 3143 L
- 264 3143 mt 254 3134 L
- 254 3134 mt 229 3111 L
- 229 3111 mt 225 3107 L
- 225 3107 mt 196 3079 L
- 196 3079 mt 194 3077 L
- 194 3077 mt 169 3052 L
- 169 3052 mt 159 3042 L
- 159 3042 mt 142 3024 L
- 142 3024 mt 124 3005 L
- 124 3005 mt 117 2997 L
- 117 2997 mt 93 2969 L
- 93 2969 mt 90 2965 L
- 90 2965 mt 69 2942 L
- 69 2942 mt 55 2924 L
- 55 2924 mt 46 2914 L
- 46 2914 mt 24 2887 L
- 24 2887 mt 20 2881 L
- 20 2881 mt 3 2859 L
- 3 2859 mt -14 2835 L
- -14 2835 mt -17 2832 L
- -17 2832 mt -36 2804 L
- -36 2804 mt -49 2785 L
- -49 2785 mt -55 2777 L
- -55 2777 mt -72 2749 L
- -72 2749 mt -84 2729 L
- -84 2729 mt -88 2722 L
- -88 2722 mt -103 2694 L
--103 2694 mt -117 2667 L
--117 2667 mt -119 2664 L
--119 2664 mt -131 2639 L
--131 2639 mt -143 2612 L
--143 2612 mt -154 2584 L
--154 2584 mt -154 2584 L
--154 2584 mt -164 2557 L
--164 2557 mt -173 2529 L
--173 2529 mt -182 2502 L
--182 2502 mt -188 2476 L
--188 2476 mt -189 2474 L
--189 2474 mt -196 2446 L
--196 2446 mt -201 2419 L
--201 2419 mt -206 2391 L
--206 2391 mt -209 2364 L
--209 2364 mt -212 2336 L
--212 2336 mt -214 2309 L
--214 2309 mt -215 2281 L
--215 2281 mt -215 2254 L
--215 2254 mt -214 2226 L
--214 2226 mt -212 2199 L
--212 2199 mt -209 2171 L
--209 2171 mt -205 2144 L
--205 2144 mt -201 2116 L
--201 2116 mt -196 2089 L
--196 2089 mt -190 2061 L
--190 2061 mt -188 2057 L
--188 2057 mt -183 2034 L
--183 2034 mt -176 2006 L
--176 2006 mt -168 1979 L
--168 1979 mt -160 1951 L
--160 1951 mt -154 1932 L
--154 1932 mt -151 1924 L
--151 1924 mt -142 1896 L
--142 1896 mt -133 1869 L
--133 1869 mt -123 1841 L
--123 1841 mt -119 1829 L
--119 1829 mt -114 1814 L
--114 1814 mt -104 1786 L
--104 1786 mt -94 1759 L
- -94 1759 mt -84 1731 L
- -84 1731 mt -84 1730 L
- -84 1730 mt -74 1704 L
- -74 1704 mt -64 1676 L
- -64 1676 mt -54 1649 L
- -54 1649 mt -49 1636 L
- -49 1636 mt -43 1621 L
- -43 1621 mt -33 1594 L
- -33 1594 mt -22 1566 L
- -22 1566 mt -14 1545 L
- -14 1545 mt -12 1539 L
- -12 1539 mt -1 1511 L
- -1 1511 mt 8 1484 L
- 8 1484 mt 18 1456 L
- 18 1456 mt 20 1453 L
- 20 1453 mt 29 1428 L
- 29 1428 mt 39 1401 L
- 39 1401 mt 49 1373 L
- 49 1373 mt 55 1357 L
- 55 1357 mt 59 1346 L
- 59 1346 mt 68 1318 L
- 68 1318 mt 78 1291 L
- 78 1291 mt 88 1263 L
- 88 1263 mt 90 1258 L
- 90 1258 mt 97 1236 L
- 97 1236 mt 107 1208 L
- 107 1208 mt 117 1181 L
- 117 1181 mt 124 1160 L
- 124 1160 mt 127 1153 L
- 127 1153 mt 137 1126 L
- 137 1126 mt 148 1098 L
- 148 1098 mt 159 1071 L
- 159 1071 mt 159 1070 L
- 159 1070 mt 171 1043 L
- 171 1043 mt 183 1016 L
- 183 1016 mt 194 992 L
- 194 992 mt 196 988 L
- 196 988 mt 209 961 L
- 209 961 mt 223 933 L
- 223 933 mt 229 923 L
- 229 923 mt 238 906 L
- 238 906 mt 253 878 L
- 253 878 mt 264 860 L
- 264 860 mt 269 851 L
- 269 851 mt 285 823 L
- 285 823 mt 299 801 L
- 299 801 mt 302 796 L
- 302 796 mt 319 768 L
- 319 768 mt 334 746 L
- 334 746 mt 337 741 L
- 337 741 mt 355 713 L
- 355 713 mt 368 694 L
- 368 694 mt 374 686 L
- 374 686 mt 394 658 L
- 394 658 mt 403 646 L
- 403 646 mt 414 631 L
- 414 631 mt 435 603 L
- 435 603 mt 438 599 L
- 438 599 mt 456 576 L
- 456 576 mt 473 555 L
- 473 555 mt 478 548 L
- 478 548 mt 501 521 L
- 501 521 mt 508 512 L
- 508 512 mt 523 493 L
- 523 493 mt 543 470 L
- 543 470 mt 547 466 L
- 547 466 mt 571 438 L
- 571 438 mt 578 430 L
- 578 430 mt 596 411 L
- 596 411 mt 613 392 L
- 613 392 mt 622 383 L
- 622 383 mt 647 357 L
- 647 357 mt 649 355 L
- 649 355 mt 678 328 L
- 678 328 mt 682 324 L
- 682 324 mt 709 300 L
- 709 300 mt 717 293 L
- 717 293 mt 742 273 L
- 742 273 mt 752 265 L
- 752 265 mt 778 245 L
- 778 245 mt 787 239 L
- 787 239 mt 816 218 L
- 816 218 mt 822 214 L
- 822 214 mt 857 191 L
- 857 191 mt 857 190 L
- 857 190 mt 892 168 L
- 892 168 mt 901 163 L
- 901 163 mt 926 147 L
- 926 147 mt 947 135 L
- 947 135 mt 961 127 L
- 961 127 mt 996 108 L
- 996 108 mt 997 108 L
- 997 108 mt 1031 90 L
-1031 90 mt 1051 80 L
-1051 80 mt 1066 73 L
-1066 73 mt 1101 56 L
-1101 56 mt 1108 53 L
-1108 53 mt 1136 40 L
-1136 40 mt 1170 26 L
-1170 26 mt 1171 25 L
-1171 25 mt 1205 11 L
-1205 11 mt 1239 -1 L
-1239 -1 mt 1240 -2 L
-1240 -2 mt 1275 -15 L
-1275 -15 mt 1310 -28 L
-1310 -28 mt 1312 -29 L
-1312 -29 mt 1345 -41 L
-1345 -41 mt 1380 -53 L
-1380 -53 mt 1390 -56 L
-1390 -56 mt 1415 -65 L
-1415 -65 mt 1449 -76 L
-1449 -76 mt 1475 -84 L
-1475 -84 mt 1484 -87 L
-1484 -87 mt 1519 -97 L
-1519 -97 mt 1554 -108 L
-1554 -108 mt 1567 -111 L
-1567 -111 mt 1589 -118 L
-1589 -118 mt 1624 -127 L
-1624 -127 mt 1659 -137 L
-1659 -137 mt 1667 -139 L
-1667 -139 mt 1694 -146 L
-1694 -146 mt 1728 -155 L
-1728 -155 mt 1763 -164 L
-1763 -164 mt 1774 -166 L
-1774 -166 mt 1798 -172 L
-1798 -172 mt 1833 -181 L
-1833 -181 mt 1868 -190 L
-1868 -190 mt 1886 -194 L
-1886 -194 mt 1903 -198 L
-1903 -198 mt 1938 -206 L
-1938 -206 mt 1972 -215 L
-1972 -215 mt 2001 -221 L
-2001 -221 mt 2007 -223 L
-2007 -223 mt 2042 -231 L
-2042 -231 mt 2077 -239 L
-2077 -239 mt 2112 -247 L
-2112 -247 mt 2119 -249 L
-2119 -249 mt 2147 -255 L
-2147 -255 mt 2182 -263 L
-2182 -263 mt 2217 -272 L
-2217 -272 mt 2236 -276 L
-2236 -276 mt 2251 -280 L
-2251 -280 mt 2286 -288 L
-2286 -288 mt 2321 -297 L
-2321 -297 mt 2352 -304 L
-2352 -304 mt 2356 -305 L
-2356 -305 mt 2391 -313 L
-2391 -313 mt 2426 -321 L
-2426 -321 mt 2461 -329 L
-2461 -329 mt 2470 -331 L
-2470 -331 mt 2496 -337 L
-2496 -337 mt 2530 -345 L
-2530 -345 mt 2565 -353 L
-2565 -353 mt 2589 -359 L
-2589 -359 mt 2600 -362 L
-2600 -362 mt 2635 -370 L
-2635 -370 mt 2670 -378 L
-2670 -378 mt 2705 -386 L
-2705 -386 mt 2706 -386 L
-2706 -386 mt 2740 -394 L
-2740 -394 mt 2774 -402 L
-2774 -402 mt 2809 -410 L
-2809 -410 mt 2825 -414 L
-2825 -414 mt 2844 -418 L
-2844 -418 mt 2879 -427 L
-2879 -427 mt 2914 -435 L
-2914 -435 mt 2945 -441 L
-2945 -441 mt 2949 -442 L
-2949 -442 mt 2984 -450 L
-2984 -450 mt 3019 -457 L
-3019 -457 mt 3053 -465 L
-3053 -465 mt 3075 -469 L
-3075 -469 mt 3088 -472 L
-3088 -472 mt 3123 -478 L
-3123 -478 mt 3158 -485 L
-3158 -485 mt 3193 -491 L
-3193 -491 mt 3228 -496 L
-3228 -496 mt 3229 -496 L
-3229 -496 mt 3263 -502 L
-3263 -502 mt 3298 -507 L
-3298 -507 mt 3332 -511 L
-3332 -511 mt 3367 -515 L
-3367 -515 mt 3402 -519 L
-3402 -519 mt 3437 -523 L
-3437 -523 mt 3449 -524 L
-3449 -524 mt 3472 -526 L
-3472 -526 mt 3507 -529 L
-3507 -529 mt 3542 -532 L
-3542 -532 mt 3577 -534 L
-3577 -534 mt 3611 -535 L
-3611 -535 mt 3646 -537 L
-3646 -537 mt 3681 -537 L
-3681 -537 mt 3716 -538 L
-3716 -538 mt 3751 -537 L
-3751 -537 mt 3786 -537 L
-3786 -537 mt 3821 -535 L
-3821 -535 mt 3855 -534 L
-3855 -534 mt 3890 -532 L
-3890 -532 mt 3925 -530 L
-3925 -530 mt 3960 -527 L
-3960 -527 mt 3995 -524 L
-3995 -524 mt 3998 -524 L
-3998 -524 mt 4030 -521 L
-4030 -521 mt 4065 -518 L
-4065 -518 mt 4100 -515 L
-4100 -515 mt 4134 -511 L
-4134 -511 mt 4169 -507 L
-4169 -507 mt 4204 -503 L
-4204 -503 mt 4239 -499 L
-4239 -499 mt 4257 -496 L
-4257 -496 mt 4274 -494 L
-4274 -494 mt 4309 -489 L
-4309 -489 mt 4344 -484 L
-4344 -484 mt 4379 -479 L
-4379 -479 mt 4413 -473 L
-4413 -473 mt 4438 -469 L
-4438 -469 mt 4448 -467 L
-4448 -467 mt 4483 -461 L
-4483 -461 mt 4518 -454 L
-4518 -454 mt 4553 -447 L
-4553 -447 mt 4578 -441 L
-4578 -441 mt 4588 -439 L
-4588 -439 mt 4623 -432 L
-4623 -432 mt 4657 -423 L
-4657 -423 mt 4692 -415 L
-4692 -415 mt 4695 -414 L
-4695 -414 mt 4727 -406 L
-4727 -406 mt 4762 -396 L
-4762 -396 mt 4795 -386 L
-4795 -386 mt 4797 -386 L
-4797 -386 mt 4832 -376 L
-4832 -376 mt 4867 -365 L
-4867 -365 mt 4885 -359 L
-4885 -359 mt 4902 -354 L
-4902 -354 mt 4936 -342 L
-4936 -342 mt 4967 -331 L
-4967 -331 mt 4971 -330 L
-4971 -330 mt 5006 -318 L
-5006 -318 mt 5041 -306 L
-5041 -306 mt 5046 -304 L
-5046 -304 mt 5076 -293 L
-5076 -293 mt 5111 -280 L
-5111 -280 mt 5120 -276 L
-5120 -276 mt 5146 -267 L
-5146 -267 mt 5181 -253 L
-5181 -253 mt 5192 -249 L
-5192 -249 mt 5215 -240 L
-5215 -240 mt 5250 -226 L
-5250 -226 mt 5261 -221 L
-5261 -221 mt 5285 -211 L
-5285 -211 mt 5320 -196 L
-5320 -196 mt 5325 -194 L
-5325 -194 mt 5355 -181 L
-5355 -181 mt 5387 -166 L
-5387 -166 mt 5390 -165 L
-5390 -165 mt 5425 -149 L
-5425 -149 mt 5445 -139 L
-5445 -139 mt 5459 -132 L
-5459 -132 mt 5494 -114 L
-5494 -114 mt 5500 -111 L
-5500 -111 mt 5529 -97 L
-5529 -97 mt 5553 -84 L
-5553 -84 mt 5564 -78 L
-5564 -78 mt 5599 -59 L
-5599 -59 mt 5603 -56 L
-5603 -56 mt 5634 -39 L
-5634 -39 mt 5651 -29 L
-5651 -29 mt 5669 -18 L
-5669 -18 mt 5696 -1 L
-5696 -1 mt 5704 3 L
-5704 3 mt 5738 25 L
-5738 25 mt 5738 25 L
-5738 25 mt 5773 49 L
-5773 49 mt 5779 53 L
-5779 53 mt 5808 73 L
-5808 73 mt 5819 80 L
-5819 80 mt 5843 98 L
-5843 98 mt 5856 108 L
-5856 108 mt 5878 124 L
-5878 124 mt 5893 135 L
-5893 135 mt 5913 151 L
-5913 151 mt 5928 163 L
-5928 163 mt 5948 179 L
-5948 179 mt 5962 190 L
-5962 190 mt 5983 207 L
-5983 207 mt 5995 218 L
-5995 218 mt 6017 237 L
-6017 237 mt 6028 245 L
-6028 245 mt 6052 267 L
-6052 267 mt 6059 273 L
-6059 273 mt 6087 298 L
-6087 298 mt 6090 300 L
-6090 300 mt 6120 328 L
-6120 328 mt 6122 330 L
-6122 330 mt 6150 355 L
-6150 355 mt 6157 362 L
-6157 362 mt 6179 383 L
-6179 383 mt 6192 395 L
-6192 395 mt 6209 411 L
-6209 411 mt 6227 428 L
-6227 428 mt 6238 438 L
-6238 438 mt 6261 460 L
-6261 460 mt 6267 466 L
-6267 466 mt 6296 493 L
-6296 493 mt 6296 493 L
-6296 493 mt 6325 521 L
-6325 521 mt 6331 526 L
-6331 526 mt 6354 548 L
-6354 548 mt 6366 559 L
-6366 559 mt 6384 576 L
-6384 576 mt 6401 592 L
-6401 592 mt 6413 603 L
-6413 603 mt 6436 625 L
-6436 625 mt 6442 631 L
-6442 631 mt 6471 658 L
-6471 658 mt 6471 658 L
-6471 658 mt 6500 686 L
-6500 686 mt 6506 691 L
-6506 691 mt 6530 713 L
-6530 713 mt 6540 723 L
-6540 723 mt 6559 741 L
-6559 741 mt 6575 757 L
-6575 757 mt 6588 768 L
-6588 768 mt 6610 790 L
-6610 790 mt 6616 796 L
-6616 796 mt 6645 823 L
-6645 823 mt 6645 823 L
-6645 823 mt 6673 851 L
-6673 851 mt 6680 857 L
-6680 857 mt 6701 878 L
-6701 878 mt 6715 892 L
-6715 892 mt 6729 906 L
-6729 906 mt 6750 927 L
-6750 927 mt 6756 933 L
-6756 933 mt 6783 961 L
-6783 961 mt 6785 963 L
-6785 963 mt 6809 988 L
-6809 988 mt 6819 999 L
-6819 999 mt 6835 1016 L
-6835 1016 mt 6854 1036 L
-6854 1036 mt 6861 1043 L
-6861 1043 mt 6887 1071 L
-6887 1071 mt 6889 1073 L
-6889 1073 mt 6912 1098 L
-6912 1098 mt 6924 1112 L
-6924 1112 mt 6937 1126 L
-6937 1126 mt 6959 1151 L
-6959 1151 mt 6961 1153 L
-6961 1153 mt 6985 1181 L
-6985 1181 mt 6994 1191 L
-6994 1191 mt 7008 1208 L
-7008 1208 mt 7029 1232 L
-7029 1232 mt 7032 1236 L
-7032 1236 mt 7055 1263 L
-7055 1263 mt 7063 1274 L
-7063 1274 mt 7078 1291 L
-7078 1291 mt 7098 1316 L
-7098 1316 mt 7100 1318 L
-7100 1318 mt 7123 1346 L
-7123 1346 mt 7133 1359 L
-7133 1359 mt 7145 1373 L
-7145 1373 mt 7167 1401 L
-7167 1401 mt 7168 1402 L
-7168 1402 mt 7189 1428 L
-7189 1428 mt 7203 1447 L
-7203 1447 mt 7210 1456 L
-7210 1456 mt 7231 1484 L
-7231 1484 mt 7238 1494 L
-7238 1494 mt 7251 1511 L
-7251 1511 mt 7271 1539 L
-7271 1539 mt 7273 1541 L
-7273 1541 mt 7290 1566 L
-7290 1566 mt 7308 1592 L
-7308 1592 mt 7309 1594 L
-7309 1594 mt 7327 1621 L
-7327 1621 mt 7342 1646 L
-7342 1646 mt 7344 1649 L
-7344 1649 mt 7361 1676 L
-7361 1676 mt 7376 1704 L
-7376 1704 mt 7377 1706 L
-7377 1706 mt 7391 1731 L
-7391 1731 mt 7405 1759 L
-7405 1759 mt 7412 1773 L
-7412 1773 mt 7419 1786 L
-7419 1786 mt 7432 1814 L
-7432 1814 mt 7443 1841 L
-7443 1841 mt 7447 1851 L
-7447 1851 mt 7454 1869 L
-7454 1869 mt 7464 1896 L
-7464 1896 mt 7473 1924 L
-7473 1924 mt 7481 1951 L
-7481 1951 mt 7482 1954 L
-7377 1916 mt 7380 1924 L
-7380 1924 mt 7387 1951 L
-7387 1951 mt 7393 1979 L
-7393 1979 mt 7398 2006 L
-7398 2006 mt 7402 2034 L
-7402 2034 mt 7405 2061 L
-7405 2061 mt 7407 2089 L
-7407 2089 mt 7408 2116 L
-7408 2116 mt 7409 2144 L
-7409 2144 mt 7408 2171 L
-7408 2171 mt 7407 2199 L
-7407 2199 mt 7406 2226 L
-7406 2226 mt 7403 2254 L
-7403 2254 mt 7401 2281 L
-7401 2281 mt 7398 2309 L
-7398 2309 mt 7395 2336 L
-7395 2336 mt 7391 2364 L
-7391 2364 mt 7388 2391 L
-7388 2391 mt 7384 2419 L
-7384 2419 mt 7380 2446 L
-7380 2446 mt 7377 2460 L
-7377 2460 mt 7375 2474 L
-7375 2474 mt 7370 2502 L
-7370 2502 mt 7365 2529 L
-7365 2529 mt 7359 2557 L
-7359 2557 mt 7353 2584 L
-7353 2584 mt 7346 2612 L
-7346 2612 mt 7342 2625 L
-7342 2625 mt 7339 2639 L
-7339 2639 mt 7331 2667 L
-7331 2667 mt 7323 2694 L
-7323 2694 mt 7314 2722 L
-7314 2722 mt 7308 2740 L
-7308 2740 mt 7305 2749 L
-7305 2749 mt 7295 2777 L
-7295 2777 mt 7286 2804 L
-7286 2804 mt 7276 2832 L
-7276 2832 mt 7273 2841 L
-7273 2841 mt 7266 2859 L
-7266 2859 mt 7257 2887 L
-7257 2887 mt 7246 2914 L
-7246 2914 mt 7238 2936 L
-7238 2936 mt 7236 2942 L
-7236 2942 mt 7225 2969 L
-7225 2969 mt 7214 2997 L
-7214 2997 mt 7203 3024 L
-7203 3024 mt 7203 3025 L
-7203 3025 mt 7192 3052 L
-7192 3052 mt 7181 3079 L
-7181 3079 mt 7169 3107 L
-7169 3107 mt 7168 3110 L
-7168 3110 mt 7158 3134 L
-7158 3134 mt 7146 3162 L
-7146 3162 mt 7134 3189 L
-7134 3189 mt 7133 3192 L
-7133 3192 mt 7122 3217 L
-7122 3217 mt 7110 3244 L
-7110 3244 mt 7098 3271 L
-7098 3271 mt 7098 3272 L
-7098 3272 mt 7086 3299 L
-7086 3299 mt 7073 3327 L
-7073 3327 mt 7063 3348 L
-7063 3348 mt 7061 3354 L
-7061 3354 mt 7048 3382 L
-7048 3382 mt 7036 3409 L
-7036 3409 mt 7029 3425 L
-7029 3425 mt 7023 3437 L
-7023 3437 mt 7011 3464 L
-7011 3464 mt 6999 3492 L
-6999 3492 mt 6994 3504 L
-6994 3504 mt 6987 3519 L
-6987 3519 mt 6974 3547 L
-6974 3547 mt 6962 3575 L
-6962 3575 mt 6959 3581 L
-6959 3581 mt 6949 3602 L
-6949 3602 mt 6936 3630 L
-6936 3630 mt 6924 3654 L
-6924 3654 mt 6923 3657 L
-6923 3657 mt 6909 3685 L
-6909 3685 mt 6896 3712 L
-6896 3712 mt 6889 3725 L
-6889 3725 mt 6882 3740 L
-6882 3740 mt 6868 3767 L
-6868 3767 mt 6854 3795 L
-6854 3795 mt 6854 3795 L
-6854 3795 mt 6840 3822 L
-6840 3822 mt 6826 3850 L
-6826 3850 mt 6819 3862 L
-6819 3862 mt 6812 3877 L
-6812 3877 mt 6797 3905 L
-6797 3905 mt 6785 3927 L
-6785 3927 mt 6782 3932 L
-6782 3932 mt 6766 3960 L
-6766 3960 mt 6751 3987 L
-6751 3987 mt 6750 3989 L
-6750 3989 mt 6735 4015 L
-6735 4015 mt 6719 4042 L
-6719 4042 mt 6715 4050 L
-6715 4050 mt 6703 4070 L
-6703 4070 mt 6687 4097 L
-6687 4097 mt 6680 4109 L
-6680 4109 mt 6671 4125 L
-6671 4125 mt 6654 4152 L
-6654 4152 mt 6645 4167 L
-6645 4167 mt 6638 4180 L
-6638 4180 mt 6621 4207 L
-6621 4207 mt 6610 4226 L
-6610 4226 mt 6605 4235 L
-6605 4235 mt 6589 4262 L
-6589 4262 mt 6575 4286 L
-6575 4286 mt 6573 4290 L
-6573 4290 mt 6557 4317 L
-6557 4317 mt 6541 4345 L
-6541 4345 mt 6540 4346 L
-6540 4346 mt 6525 4372 L
-6525 4372 mt 6508 4400 L
-6508 4400 mt 6506 4403 L
-6506 4403 mt 6490 4427 L
-6490 4427 mt 6471 4455 L
-6471 4455 mt 6471 4456 L
-6471 4456 mt 6451 4482 L
-6451 4482 mt 6436 4500 L
-6436 4500 mt 6428 4510 L
-6428 4510 mt 6402 4537 L
-6402 4537 mt 6401 4538 L
-6401 4538 mt 6371 4565 L
-6371 4565 mt 6366 4569 L
-6366 4569 mt 6333 4592 L
-6333 4592 mt 6331 4594 L
-6331 4594 mt 6296 4614 L
-6296 4614 mt 6282 4620 L
-6282 4620 mt 6261 4629 L
-6261 4629 mt 6227 4640 L
-6227 4640 mt 6192 4648 L
-6192 4648 mt 6192 4648 L
-6192 4648 mt 6157 4653 L
-6157 4653 mt 6122 4657 L
-6122 4657 mt 6087 4658 L
-6087 4658 mt 6052 4658 L
-6052 4658 mt 6017 4655 L
-6017 4655 mt 5983 4650 L
-5983 4650 mt 5972 4648 L
-5972 4648 mt 5948 4642 L
-5948 4642 mt 5913 4632 L
-5913 4632 mt 5878 4622 L
-5878 4622 mt 5872 4620 L
-5872 4620 mt 5843 4606 L
-5843 4606 mt 5816 4592 L
-5816 4592 mt 5808 4587 L
-5808 4587 mt 5774 4565 L
-5774 4565 mt 5773 4565 L
-5773 4565 mt 5746 4537 L
-5746 4537 mt 5738 4521 L
-5738 4521 mt 5734 4510 L
-5734 4510 mt 5730 4482 L
-5730 4482 mt 5729 4455 L
-5729 4455 mt 5727 4427 L
-5727 4427 mt 5720 4400 L
-5720 4400 mt 5708 4372 L
-5708 4372 mt 5704 4364 L
-5704 4364 mt 5693 4345 L
-5693 4345 mt 5676 4317 L
-5676 4317 mt 5669 4305 L
-5669 4305 mt 5660 4290 L
-5660 4290 mt 5647 4262 L
-5647 4262 mt 5636 4235 L
-5636 4235 mt 5634 4228 L
-5634 4228 mt 5628 4207 L
-5628 4207 mt 5622 4180 L
-5622 4180 mt 5618 4152 L
-5618 4152 mt 5615 4125 L
-5615 4125 mt 5613 4097 L
-5613 4097 mt 5609 4070 L
-5609 4070 mt 5604 4042 L
-5604 4042 mt 5599 4025 L
-5599 4025 mt 5596 4015 L
-5596 4015 mt 5587 3987 L
-5587 3987 mt 5576 3960 L
-5576 3960 mt 5564 3935 L
-5564 3935 mt 5563 3932 L
-5563 3932 mt 5548 3905 L
-5548 3905 mt 5530 3877 L
-5530 3877 mt 5529 3876 L
-5529 3876 mt 5510 3850 L
-5510 3850 mt 5494 3831 L
-5494 3831 mt 5486 3822 L
-5486 3822 mt 5459 3795 L
-5459 3795 mt 5459 3795 L
-5459 3795 mt 5428 3767 L
-5428 3767 mt 5425 3764 L
-5425 3764 mt 5393 3740 L
-5393 3740 mt 5390 3737 L
-5390 3737 mt 5357 3712 L
-5357 3712 mt 5355 3710 L
-5355 3710 mt 5322 3685 L
-5322 3685 mt 5320 3683 L
-5320 3683 mt 5287 3657 L
-5287 3657 mt 5285 3656 L
-5285 3656 mt 5250 3631 L
-5250 3631 mt 5248 3630 L
-5248 3630 mt 5215 3607 L
-5215 3607 mt 5207 3602 L
-5207 3602 mt 5181 3585 L
-5181 3585 mt 5163 3575 L
-5163 3575 mt 5146 3563 L
-5146 3563 mt 5121 3547 L
-5121 3547 mt 5111 3540 L
-5111 3540 mt 5082 3519 L
-5082 3519 mt 5076 3514 L
-5076 3514 mt 5049 3492 L
-5049 3492 mt 5041 3485 L
-5041 3485 mt 5021 3464 L
-5021 3464 mt 5006 3450 L
-5006 3450 mt 4993 3437 L
-4993 3437 mt 4971 3416 L
-4971 3416 mt 4965 3409 L
-4965 3409 mt 4936 3384 L
-4936 3384 mt 4934 3382 L
-4934 3382 mt 4905 3354 L
-4905 3354 mt 4902 3351 L
-4902 3351 mt 4878 3327 L
-4878 3327 mt 4867 3315 L
-4867 3315 mt 4852 3299 L
-4852 3299 mt 4832 3278 L
-4832 3278 mt 4826 3272 L
-4826 3272 mt 4798 3244 L
-4798 3244 mt 4797 3243 L
-4797 3243 mt 4770 3217 L
-4770 3217 mt 4762 3210 L
-4762 3210 mt 4742 3189 L
-4742 3189 mt 4727 3173 L
-4727 3173 mt 4718 3162 L
-4718 3162 mt 4701 3134 L
-4701 3134 mt 4692 3120 L
-4692 3120 mt 4686 3107 L
-4686 3107 mt 4669 3079 L
-4669 3079 mt 4657 3065 L
-4657 3065 mt 4646 3052 L
-4646 3052 mt 4623 3030 L
-4623 3030 mt 4615 3024 L
-4615 3024 mt 4588 3004 L
-4588 3004 mt 4577 2997 L
-4577 2997 mt 4553 2981 L
-4553 2981 mt 4534 2969 L
-4534 2969 mt 4518 2959 L
-4518 2959 mt 4492 2942 L
-4492 2942 mt 4483 2936 L
-4483 2936 mt 4453 2914 L
-4453 2914 mt 4448 2911 L
-4448 2911 mt 4416 2887 L
-4416 2887 mt 4413 2885 L
-4413 2885 mt 4379 2860 L
-4379 2860 mt 4378 2859 L
-4378 2859 mt 4344 2836 L
-4344 2836 mt 4336 2832 L
-4336 2832 mt 4309 2815 L
-4309 2815 mt 4291 2804 L
-4291 2804 mt 4274 2793 L
-4274 2793 mt 4246 2777 L
-4246 2777 mt 4239 2772 L
-4239 2772 mt 4204 2750 L
-4204 2750 mt 4202 2749 L
-4202 2749 mt 4169 2727 L
-4169 2727 mt 4161 2722 L
-4161 2722 mt 4134 2703 L
-4134 2703 mt 4119 2694 L
-4119 2694 mt 4100 2681 L
-4100 2681 mt 4071 2667 L
-4071 2667 mt 4065 2663 L
-4065 2663 mt 4030 2650 L
-4030 2650 mt 3995 2644 L
-3995 2644 mt 3960 2645 L
-3960 2645 mt 3925 2658 L
-3925 2658 mt 3911 2667 L
-3911 2667 mt 3890 2680 L
-3890 2680 mt 3873 2694 L
-3873 2694 mt 3855 2708 L
-3855 2708 mt 3838 2722 L
-3838 2722 mt 3821 2735 L
-3821 2735 mt 3799 2749 L
-3799 2749 mt 3786 2759 L
-3786 2759 mt 3755 2777 L
-3755 2777 mt 3751 2779 L
-3751 2779 mt 3716 2797 L
-3716 2797 mt 3700 2804 L
-3700 2804 mt 3681 2813 L
-3681 2813 mt 3646 2827 L
-3646 2827 mt 3632 2832 L
-3632 2832 mt 3611 2839 L
-3611 2839 mt 3577 2851 L
-3577 2851 mt 3550 2859 L
-3550 2859 mt 3542 2862 L
-3542 2862 mt 3507 2874 L
-3507 2874 mt 3472 2885 L
-3472 2885 mt 3468 2887 L
-3468 2887 mt 3437 2898 L
-3437 2898 mt 3402 2912 L
-3402 2912 mt 3396 2914 L
-3396 2914 mt 3367 2926 L
-3367 2926 mt 3332 2940 L
-3332 2940 mt 3328 2942 L
-3328 2942 mt 3298 2955 L
-3298 2955 mt 3267 2969 L
-3267 2969 mt 3263 2972 L
-3263 2972 mt 3228 2989 L
-3228 2989 mt 3211 2997 L
-3211 2997 mt 3193 3008 L
-3193 3008 mt 3167 3024 L
-3167 3024 mt 3158 3033 L
-3158 3033 mt 3143 3052 L
-3143 3052 mt 3132 3079 L
-3132 3079 mt 3144 3107 L
-3144 3107 mt 3158 3122 L
-3158 3122 mt 3169 3134 L
-3169 3134 mt 3193 3155 L
-3193 3155 mt 3200 3162 L
-3200 3162 mt 3228 3184 L
-3228 3184 mt 3233 3189 L
-3233 3189 mt 3263 3212 L
-3263 3212 mt 3268 3217 L
-3268 3217 mt 3298 3240 L
-3298 3240 mt 3303 3244 L
-3303 3244 mt 3332 3266 L
-3332 3266 mt 3340 3272 L
-3340 3272 mt 3367 3292 L
-3367 3292 mt 3378 3299 L
-3378 3299 mt 3402 3318 L
-3402 3318 mt 3412 3327 L
-3412 3327 mt 3437 3349 L
-3437 3349 mt 3442 3354 L
-3442 3354 mt 3468 3382 L
-3468 3382 mt 3472 3386 L
-3472 3386 mt 3494 3409 L
-3494 3409 mt 3507 3424 L
-3507 3424 mt 3519 3437 L
-3519 3437 mt 3542 3462 L
-3542 3462 mt 3544 3464 L
-3544 3464 mt 3569 3492 L
-3569 3492 mt 3577 3501 L
-3577 3501 mt 3593 3519 L
-3593 3519 mt 3611 3542 L
-3611 3542 mt 3616 3547 L
-3616 3547 mt 3640 3575 L
-3640 3575 mt 3646 3582 L
-3646 3582 mt 3665 3602 L
-3665 3602 mt 3681 3621 L
-3681 3621 mt 3689 3630 L
-3689 3630 mt 3709 3657 L
-3709 3657 mt 3716 3670 L
-3716 3670 mt 3724 3685 L
-3724 3685 mt 3733 3712 L
-3733 3712 mt 3738 3740 L
-3738 3740 mt 3737 3767 L
-3737 3767 mt 3730 3795 L
-3730 3795 mt 3717 3822 L
-3717 3822 mt 3716 3824 L
-3716 3824 mt 3697 3850 L
-3697 3850 mt 3681 3872 L
-3681 3872 mt 3677 3877 L
-3677 3877 mt 3657 3905 L
-3657 3905 mt 3646 3922 L
-3646 3922 mt 3640 3932 L
-3640 3932 mt 3629 3960 L
-3629 3960 mt 3635 3987 L
-3635 3987 mt 3646 3999 L
-3646 3999 mt 3661 4015 L
-3661 4015 mt 3681 4031 L
-3681 4031 mt 3694 4042 L
-3694 4042 mt 3716 4064 L
-3716 4064 mt 3721 4070 L
-3721 4070 mt 3740 4097 L
-3740 4097 mt 3751 4122 L
-3751 4122 mt 3752 4125 L
-3752 4125 mt 3760 4152 L
-3760 4152 mt 3765 4180 L
-3765 4180 mt 3763 4207 L
-3763 4207 mt 3754 4235 L
-3754 4235 mt 3751 4238 L
-3751 4238 mt 3730 4262 L
-3730 4262 mt 3716 4273 L
-3716 4273 mt 3690 4290 L
-3690 4290 mt 3681 4296 L
-3681 4296 mt 3650 4317 L
-3650 4317 mt 3646 4326 L
-3646 4326 mt 3636 4345 L
-3636 4345 mt 3646 4359 L
-3646 4359 mt 3654 4372 L
-3654 4372 mt 3681 4392 L
-3681 4392 mt 3691 4400 L
-3691 4400 mt 3716 4422 L
-3716 4422 mt 3722 4427 L
-3722 4427 mt 3743 4455 L
-3743 4455 mt 3751 4471 L
-3751 4471 mt 3757 4482 L
-3757 4482 mt 3767 4510 L
-3767 4510 mt 3774 4537 L
-3774 4537 mt 3777 4565 L
-3777 4565 mt 3779 4592 L
-3779 4592 mt 3775 4620 L
-3775 4620 mt 3764 4648 L
-3764 4648 mt 3751 4673 L
-3751 4673 mt 3750 4675 L
-3750 4675 mt 3732 4703 L
-3732 4703 mt 3716 4725 L
-3716 4725 mt 3713 4730 L
-3713 4730 mt 3690 4758 L
-3690 4758 mt 3681 4768 L
-3681 4768 mt 3666 4785 L
-3666 4785 mt 3646 4805 L
-3646 4805 mt 3638 4813 L
-3638 4813 mt 3611 4837 L
-3611 4837 mt 3608 4840 L
-3608 4840 mt 3577 4865 L
-3577 4865 mt 3574 4868 L
-3574 4868 mt 3542 4891 L
-3542 4891 mt 3536 4895 L
-3536 4895 mt 3507 4915 L
-3507 4915 mt 3494 4923 L
-3494 4923 mt 3472 4936 L
-3472 4936 mt 3447 4950 L
-3447 4950 mt 3437 4956 L
-3437 4956 mt 3402 4974 L
-3402 4974 mt 3394 4978 L
-3394 4978 mt 3367 4991 L
-3367 4991 mt 3335 5005 L
-3335 5005 mt 3332 5006 L
-3332 5006 mt 3298 5021 L
-3298 5021 mt 3269 5033 L
-3269 5033 mt 3263 5035 L
-3263 5035 mt 3228 5048 L
-3228 5048 mt 3195 5060 L
-3195 5060 mt 3193 5061 L
-3193 5061 mt 3158 5073 L
-3158 5073 mt 3123 5084 L
-3123 5084 mt 3109 5088 L
-3109 5088 mt 3088 5094 L
-3088 5094 mt 3053 5103 L
-3053 5103 mt 3019 5111 L
-3019 5111 mt 3001 5115 L
-3001 5115 mt 2984 5119 L
-2984 5119 mt 2949 5126 L
-2949 5126 mt 2914 5132 L
-2914 5132 mt 2879 5137 L
-2879 5137 mt 2844 5142 L
-2844 5142 mt 2837 5143 L
-2837 5143 mt 2809 5146 L
-2809 5146 mt 2774 5150 L
-2774 5150 mt 2740 5153 L
-2740 5153 mt 2705 5155 L
-2705 5155 mt 2670 5157 L
-2670 5157 mt 2635 5158 L
-2635 5158 mt 2600 5159 L
-2600 5159 mt 2565 5159 L
-2565 5159 mt 2530 5159 L
-2530 5159 mt 2496 5158 L
-2496 5158 mt 2461 5157 L
-2461 5157 mt 2426 5155 L
-2426 5155 mt 2391 5153 L
-2391 5153 mt 2356 5150 L
-2356 5150 mt 2321 5147 L
-2321 5147 mt 2287 5143 L
-2287 5143 mt 2286 5143 L
-2286 5143 mt 2251 5138 L
-2251 5138 mt 2217 5133 L
-2217 5133 mt 2182 5128 L
-2182 5128 mt 2147 5122 L
-2147 5122 mt 2114 5115 L
-2114 5115 mt 2112 5115 L
-2112 5115 mt 2077 5107 L
-2077 5107 mt 2042 5099 L
-2042 5099 mt 2007 5091 L
-2007 5091 mt 1996 5088 L
-1996 5088 mt 1972 5081 L
-1972 5081 mt 1938 5072 L
-1938 5072 mt 1903 5061 L
-1903 5061 mt 1901 5060 L
-1901 5060 mt 1868 5050 L
-1868 5050 mt 1833 5038 L
-1833 5038 mt 1819 5033 L
-1819 5033 mt 1798 5025 L
-1798 5025 mt 1763 5011 L
-1763 5011 mt 1749 5005 L
-1749 5005 mt 1728 4997 L
-1728 4997 mt 1694 4980 L
-1694 4980 mt 1688 4978 L
-1688 4978 mt 1659 4963 L
-1659 4963 mt 1636 4950 L
-1636 4950 mt 1624 4943 L
-1624 4943 mt 1589 4923 L
-1589 4923 mt 1589 4922 L
-1589 4922 mt 1554 4899 L
-1554 4899 mt 1548 4895 L
-1548 4895 mt 1519 4874 L
-1519 4874 mt 1511 4868 L
-1511 4868 mt 1484 4846 L
-1484 4846 mt 1477 4840 L
-1477 4840 mt 1449 4816 L
-1449 4816 mt 1446 4813 L
-1446 4813 mt 1418 4785 L
-1418 4785 mt 1415 4781 L
-1415 4781 mt 1393 4758 L
-1393 4758 mt 1380 4742 L
-1380 4742 mt 1369 4730 L
-1369 4730 mt 1348 4703 L
-1348 4703 mt 1345 4698 L
-1345 4698 mt 1328 4675 L
-1328 4675 mt 1310 4649 L
-1310 4649 mt 1309 4648 L
-1309 4648 mt 1291 4620 L
-1291 4620 mt 1275 4594 L
-1275 4594 mt 1274 4592 L
-1274 4592 mt 1258 4565 L
-1258 4565 mt 1243 4537 L
-1243 4537 mt 1240 4532 L
-1240 4532 mt 1228 4510 L
-1228 4510 mt 1214 4482 L
-1214 4482 mt 1205 4465 L
-1205 4465 mt 1200 4455 L
-1200 4455 mt 1188 4427 L
-1188 4427 mt 1176 4400 L
-1176 4400 mt 1170 4387 L
-1170 4387 mt 1164 4372 L
-1164 4372 mt 1154 4345 L
-1154 4345 mt 1144 4317 L
-1144 4317 mt 1136 4290 L
-1136 4290 mt 1136 4290 L
-1136 4290 mt 1127 4262 L
-1127 4262 mt 1120 4235 L
-1120 4235 mt 1114 4207 L
-1114 4207 mt 1108 4180 L
-1108 4180 mt 1102 4152 L
-1102 4152 mt 1101 4145 L
-1101 4145 mt 1097 4125 L
-1097 4125 mt 1092 4097 L
-1092 4097 mt 1087 4070 L
-1087 4070 mt 1083 4042 L
-1083 4042 mt 1078 4015 L
-1078 4015 mt 1074 3987 L
-1074 3987 mt 1069 3960 L
-1069 3960 mt 1066 3939 L
-1066 3939 mt 1065 3932 L
-1065 3932 mt 1060 3905 L
-1060 3905 mt 1055 3877 L
-1055 3877 mt 1048 3850 L
-1048 3850 mt 1041 3822 L
-1041 3822 mt 1033 3795 L
-1033 3795 mt 1031 3788 L
-1031 3788 mt 1024 3767 L
-1024 3767 mt 1012 3740 L
-1012 3740 mt 999 3712 L
- 999 3712 mt 996 3706 L
- 996 3706 mt 984 3685 L
- 984 3685 mt 967 3657 L
- 967 3657 mt 961 3650 L
- 961 3650 mt 947 3630 L
- 947 3630 mt 926 3605 L
- 926 3605 mt 924 3602 L
- 924 3602 mt 899 3575 L
- 899 3575 mt 892 3568 L
- 892 3568 mt 870 3547 L
- 870 3547 mt 857 3535 L
- 857 3535 mt 840 3519 L
- 840 3519 mt 822 3504 L
- 822 3504 mt 807 3492 L
- 807 3492 mt 787 3476 L
- 787 3476 mt 773 3464 L
- 773 3464 mt 752 3448 L
- 752 3448 mt 738 3437 L
- 738 3437 mt 717 3421 L
- 717 3421 mt 703 3409 L
- 703 3409 mt 682 3394 L
- 682 3394 mt 667 3382 L
- 667 3382 mt 647 3367 L
- 647 3367 mt 631 3354 L
- 631 3354 mt 613 3341 L
- 613 3341 mt 595 3327 L
- 595 3327 mt 578 3314 L
- 578 3314 mt 559 3299 L
- 559 3299 mt 543 3287 L
- 543 3287 mt 523 3272 L
- 523 3272 mt 508 3260 L
- 508 3260 mt 488 3244 L
- 488 3244 mt 473 3233 L
- 473 3233 mt 453 3217 L
- 453 3217 mt 438 3205 L
- 438 3205 mt 418 3189 L
- 418 3189 mt 403 3177 L
- 403 3177 mt 385 3162 L
- 385 3162 mt 368 3147 L
- 368 3147 mt 353 3134 L
- 353 3134 mt 334 3116 L
- 334 3116 mt 323 3107 L
- 323 3107 mt 299 3084 L
- 299 3084 mt 294 3079 L
- 294 3079 mt 266 3052 L
- 266 3052 mt 264 3050 L
- 264 3050 mt 239 3024 L
- 239 3024 mt 229 3013 L
- 229 3013 mt 214 2997 L
- 214 2997 mt 194 2975 L
- 194 2975 mt 189 2969 L
- 189 2969 mt 166 2942 L
- 166 2942 mt 159 2934 L
- 159 2934 mt 143 2914 L
- 143 2914 mt 124 2890 L
- 124 2890 mt 122 2887 L
- 122 2887 mt 101 2859 L
- 101 2859 mt 90 2843 L
- 90 2843 mt 81 2832 L
- 81 2832 mt 62 2804 L
- 62 2804 mt 55 2793 L
- 55 2793 mt 44 2777 L
- 44 2777 mt 27 2749 L
- 27 2749 mt 20 2737 L
- 20 2737 mt 11 2722 L
- 11 2722 mt -3 2694 L
- -3 2694 mt -14 2672 L
- -14 2672 mt -17 2667 L
- -17 2667 mt -30 2639 L
- -30 2639 mt -42 2612 L
- -42 2612 mt -49 2593 L
- -49 2593 mt -53 2584 L
- -53 2584 mt -62 2557 L
- -62 2557 mt -71 2529 L
- -71 2529 mt -79 2502 L
- -79 2502 mt -84 2480 L
- -84 2480 mt -85 2474 L
- -85 2474 mt -91 2446 L
- -91 2446 mt -96 2419 L
- -96 2419 mt -100 2391 L
--100 2391 mt -104 2364 L
--104 2364 mt -106 2336 L
--106 2336 mt -107 2309 L
--107 2309 mt -108 2281 L
--108 2281 mt -108 2254 L
--108 2254 mt -107 2226 L
--107 2226 mt -106 2199 L
--106 2199 mt -104 2171 L
--104 2171 mt -101 2144 L
--101 2144 mt -97 2116 L
- -97 2116 mt -93 2089 L
- -93 2089 mt -88 2061 L
- -88 2061 mt -84 2038 L
- -84 2038 mt -83 2034 L
- -83 2034 mt -77 2006 L
- -77 2006 mt -71 1979 L
- -71 1979 mt -64 1951 L
- -64 1951 mt -56 1924 L
- -56 1924 mt -49 1900 L
- -49 1900 mt -48 1896 L
- -48 1896 mt -40 1869 L
- -40 1869 mt -31 1841 L
- -31 1841 mt -22 1814 L
- -22 1814 mt -14 1789 L
- -14 1789 mt -13 1786 L
- -13 1786 mt -4 1759 L
- -4 1759 mt 3 1731 L
- 3 1731 mt 12 1704 L
- 12 1704 mt 20 1682 L
- 20 1682 mt 22 1676 L
- 22 1676 mt 31 1649 L
- 31 1649 mt 40 1621 L
- 40 1621 mt 49 1594 L
- 49 1594 mt 55 1576 L
- 55 1576 mt 58 1566 L
- 58 1566 mt 67 1539 L
- 67 1539 mt 75 1511 L
- 75 1511 mt 84 1484 L
- 84 1484 mt 90 1467 L
- 90 1467 mt 93 1456 L
- 93 1456 mt 102 1428 L
- 102 1428 mt 110 1401 L
- 110 1401 mt 119 1373 L
- 119 1373 mt 124 1356 L
- 124 1356 mt 127 1346 L
- 127 1346 mt 136 1318 L
- 136 1318 mt 144 1291 L
- 144 1291 mt 153 1263 L
- 153 1263 mt 159 1244 L
- 159 1244 mt 162 1236 L
- 162 1236 mt 171 1208 L
- 171 1208 mt 180 1181 L
- 180 1181 mt 189 1153 L
- 189 1153 mt 194 1140 L
- 194 1140 mt 199 1126 L
- 199 1126 mt 209 1098 L
- 209 1098 mt 220 1071 L
- 220 1071 mt 229 1049 L
- 229 1049 mt 231 1043 L
- 231 1043 mt 243 1016 L
- 243 1016 mt 256 988 L
- 256 988 mt 264 971 L
- 264 971 mt 269 961 L
- 269 961 mt 282 933 L
- 282 933 mt 297 906 L
- 297 906 mt 299 902 L
- 299 902 mt 311 878 L
- 311 878 mt 326 851 L
- 326 851 mt 334 838 L
- 334 838 mt 342 823 L
- 342 823 mt 358 796 L
- 358 796 mt 368 779 L
- 368 779 mt 375 768 L
- 375 768 mt 393 741 L
- 393 741 mt 403 724 L
- 403 724 mt 411 713 L
- 411 713 mt 429 686 L
- 429 686 mt 438 673 L
- 438 673 mt 449 658 L
- 449 658 mt 469 631 L
- 469 631 mt 473 625 L
- 473 625 mt 489 603 L
- 489 603 mt 508 579 L
- 508 579 mt 511 576 L
- 511 576 mt 532 548 L
- 532 548 mt 543 535 L
- 543 535 mt 555 521 L
- 555 521 mt 577 493 L
- 577 493 mt 578 493 L
- 578 493 mt 601 466 L
- 601 466 mt 613 452 L
- 613 452 mt 625 438 L
- 625 438 mt 647 414 L
- 647 414 mt 651 411 L
- 651 411 mt 678 383 L
- 678 383 mt 682 378 L
- 682 378 mt 706 355 L
- 706 355 mt 717 345 L
- 717 345 mt 736 328 L
- 736 328 mt 752 315 L
- 752 315 mt 769 300 L
- 769 300 mt 787 286 L
- 787 286 mt 804 273 L
- 804 273 mt 822 260 L
- 822 260 mt 842 245 L
- 842 245 mt 857 235 L
- 857 235 mt 883 218 L
- 883 218 mt 892 212 L
- 892 212 mt 926 190 L
- 926 190 mt 926 190 L
- 926 190 mt 961 170 L
- 961 170 mt 973 163 L
- 973 163 mt 996 150 L
- 996 150 mt 1023 135 L
-1023 135 mt 1031 131 L
-1031 131 mt 1066 114 L
-1066 114 mt 1078 108 L
-1078 108 mt 1101 97 L
-1101 97 mt 1136 81 L
-1136 81 mt 1138 80 L
-1138 80 mt 1170 66 L
-1170 66 mt 1203 53 L
-1203 53 mt 1205 52 L
-1205 52 mt 1240 38 L
-1240 38 mt 1275 25 L
-1275 25 mt 1275 25 L
-1275 25 mt 1310 12 L
-1310 12 mt 1345 0 L
-1345 0 mt 1353 -1 L
-1353 -1 mt 1380 -10 L
-1380 -10 mt 1415 -21 L
-1415 -21 mt 1438 -29 L
-1438 -29 mt 1449 -32 L
-1449 -32 mt 1484 -43 L
-1484 -43 mt 1519 -53 L
-1519 -53 mt 1532 -56 L
-1532 -56 mt 1554 -63 L
-1554 -63 mt 1589 -72 L
-1589 -72 mt 1624 -81 L
-1624 -81 mt 1634 -84 L
-1634 -84 mt 1659 -90 L
-1659 -90 mt 1694 -99 L
-1694 -99 mt 1728 -107 L
-1728 -107 mt 1746 -111 L
-1746 -111 mt 1763 -115 L
-1763 -115 mt 1798 -124 L
-1798 -124 mt 1833 -132 L
-1833 -132 mt 1865 -139 L
-1865 -139 mt 1868 -139 L
-1868 -139 mt 1903 -147 L
-1903 -147 mt 1938 -155 L
-1938 -155 mt 1972 -163 L
-1972 -163 mt 1990 -166 L
-1990 -166 mt 2007 -170 L
-2007 -170 mt 2042 -178 L
-2042 -178 mt 2077 -185 L
-2077 -185 mt 2112 -192 L
-2112 -192 mt 2120 -194 L
-2120 -194 mt 2147 -199 L
-2147 -199 mt 2182 -207 L
-2182 -207 mt 2217 -214 L
-2217 -214 mt 2249 -221 L
-2249 -221 mt 2251 -222 L
-2251 -222 mt 2286 -230 L
-2286 -230 mt 2321 -237 L
-2321 -237 mt 2356 -245 L
-2356 -245 mt 2374 -249 L
-2374 -249 mt 2391 -253 L
-2391 -253 mt 2426 -260 L
-2426 -260 mt 2461 -268 L
-2461 -268 mt 2496 -275 L
-2496 -275 mt 2502 -276 L
-2502 -276 mt 2530 -282 L
-2530 -282 mt 2565 -290 L
-2565 -290 mt 2600 -297 L
-2600 -297 mt 2634 -304 L
-2634 -304 mt 2635 -304 L
-2635 -304 mt 2670 -311 L
-2670 -311 mt 2705 -319 L
-2705 -319 mt 2740 -326 L
-2740 -326 mt 2767 -331 L
-2767 -331 mt 2774 -333 L
-2774 -333 mt 2809 -340 L
-2809 -340 mt 2844 -347 L
-2844 -347 mt 2879 -354 L
-2879 -354 mt 2903 -359 L
-2903 -359 mt 2914 -361 L
-2914 -361 mt 2949 -368 L
-2949 -368 mt 2984 -375 L
-2984 -375 mt 3019 -382 L
-3019 -382 mt 3042 -386 L
-3042 -386 mt 3053 -389 L
-3053 -389 mt 3088 -395 L
-3088 -395 mt 3123 -401 L
-3123 -401 mt 3158 -407 L
-3158 -407 mt 3193 -413 L
-3193 -413 mt 3198 -414 L
-3198 -414 mt 3228 -419 L
-3228 -419 mt 3263 -424 L
-3263 -424 mt 3298 -429 L
-3298 -429 mt 3332 -433 L
-3332 -433 mt 3367 -437 L
-3367 -437 mt 3402 -441 L
-3402 -441 mt 3405 -441 L
-3405 -441 mt 3437 -445 L
-3437 -445 mt 3472 -448 L
-3472 -448 mt 3507 -451 L
-3507 -451 mt 3542 -454 L
-3542 -454 mt 3577 -457 L
-3577 -457 mt 3611 -459 L
-3611 -459 mt 3646 -461 L
-3646 -461 mt 3681 -462 L
-3681 -462 mt 3716 -463 L
-3716 -463 mt 3751 -464 L
-3751 -464 mt 3786 -464 L
-3786 -464 mt 3821 -463 L
-3821 -463 mt 3855 -462 L
-3855 -462 mt 3890 -461 L
-3890 -461 mt 3925 -460 L
-3925 -460 mt 3960 -459 L
-3960 -459 mt 3995 -457 L
-3995 -457 mt 4030 -455 L
-4030 -455 mt 4065 -453 L
-4065 -453 mt 4100 -450 L
-4100 -450 mt 4134 -448 L
-4134 -448 mt 4169 -445 L
-4169 -445 mt 4204 -442 L
-4204 -442 mt 4209 -441 L
-4209 -441 mt 4239 -438 L
-4239 -438 mt 4274 -435 L
-4274 -435 mt 4309 -431 L
-4309 -431 mt 4344 -426 L
-4344 -426 mt 4379 -422 L
-4379 -422 mt 4413 -417 L
-4413 -417 mt 4432 -414 L
-4432 -414 mt 4448 -411 L
-4448 -411 mt 4483 -406 L
-4483 -406 mt 4518 -400 L
-4518 -400 mt 4553 -394 L
-4553 -394 mt 4588 -387 L
-4588 -387 mt 4590 -386 L
-4590 -386 mt 4623 -380 L
-4623 -380 mt 4657 -372 L
-4657 -372 mt 4692 -364 L
-4692 -364 mt 4714 -359 L
-4714 -359 mt 4727 -356 L
-4727 -356 mt 4762 -347 L
-4762 -347 mt 4797 -338 L
-4797 -338 mt 4820 -331 L
-4820 -331 mt 4832 -328 L
-4832 -328 mt 4867 -318 L
-4867 -318 mt 4902 -308 L
-4902 -308 mt 4913 -304 L
-4913 -304 mt 4936 -297 L
-4936 -297 mt 4971 -286 L
-4971 -286 mt 4999 -276 L
-4999 -276 mt 5006 -274 L
-5006 -274 mt 5041 -262 L
-5041 -262 mt 5076 -250 L
-5076 -250 mt 5080 -249 L
-5080 -249 mt 5111 -238 L
-5111 -238 mt 5146 -225 L
-5146 -225 mt 5156 -221 L
-5156 -221 mt 5181 -212 L
-5181 -212 mt 5215 -199 L
-5215 -199 mt 5228 -194 L
-5228 -194 mt 5250 -185 L
-5250 -185 mt 5285 -171 L
-5285 -171 mt 5296 -166 L
-5296 -166 mt 5320 -156 L
-5320 -156 mt 5355 -141 L
-5355 -141 mt 5359 -139 L
-5359 -139 mt 5390 -125 L
-5390 -125 mt 5419 -111 L
-5419 -111 mt 5425 -109 L
-5425 -109 mt 5459 -92 L
-5459 -92 mt 5476 -84 L
-5476 -84 mt 5494 -74 L
-5494 -74 mt 5529 -56 L
-5529 -56 mt 5529 -56 L
-5529 -56 mt 5564 -37 L
-5564 -37 mt 5579 -29 L
-5579 -29 mt 5599 -17 L
-5599 -17 mt 5627 -1 L
-5627 -1 mt 5634 2 L
-5634 2 mt 5669 24 L
-5669 24 mt 5671 25 L
-5671 25 mt 5704 46 L
-5704 46 mt 5714 53 L
-5714 53 mt 5738 69 L
-5738 69 mt 5755 80 L
-5755 80 mt 5773 93 L
-5773 93 mt 5794 108 L
-5794 108 mt 5808 118 L
-5808 118 mt 5831 135 L
-5831 135 mt 5843 144 L
-5843 144 mt 5867 163 L
-5867 163 mt 5878 171 L
-5878 171 mt 5902 190 L
-5902 190 mt 5913 199 L
-5913 199 mt 5936 218 L
-5936 218 mt 5948 228 L
-5948 228 mt 5968 245 L
-5968 245 mt 5983 258 L
-5983 258 mt 6000 273 L
-6000 273 mt 6017 288 L
-6017 288 mt 6031 300 L
-6031 300 mt 6052 319 L
-6052 319 mt 6062 328 L
-6062 328 mt 6087 351 L
-6087 351 mt 6092 355 L
-6092 355 mt 6121 383 L
-6121 383 mt 6122 384 L
-6122 384 mt 6150 411 L
-6150 411 mt 6157 417 L
-6157 417 mt 6179 438 L
-6179 438 mt 6192 450 L
-6192 450 mt 6208 466 L
-6208 466 mt 6227 483 L
-6227 483 mt 6237 493 L
-6237 493 mt 6261 516 L
-6261 516 mt 6266 521 L
-6266 521 mt 6295 548 L
-6295 548 mt 6296 549 L
-6296 549 mt 6324 576 L
-6324 576 mt 6331 583 L
-6331 583 mt 6353 603 L
-6353 603 mt 6366 616 L
-6366 616 mt 6382 631 L
-6382 631 mt 6401 649 L
-6401 649 mt 6410 658 L
-6410 658 mt 6436 682 L
-6436 682 mt 6439 686 L
-6439 686 mt 6468 713 L
-6468 713 mt 6471 715 L
-6471 715 mt 6497 741 L
-6497 741 mt 6506 749 L
-6506 749 mt 6526 768 L
-6526 768 mt 6540 782 L
-6540 782 mt 6554 796 L
-6554 796 mt 6575 816 L
-6575 816 mt 6583 823 L
-6583 823 mt 6610 850 L
-6610 850 mt 6611 851 L
-6611 851 mt 6639 878 L
-6639 878 mt 6645 884 L
-6645 884 mt 6667 906 L
-6667 906 mt 6680 919 L
-6680 919 mt 6694 933 L
-6694 933 mt 6715 955 L
-6715 955 mt 6721 961 L
-6721 961 mt 6747 988 L
-6747 988 mt 6750 991 L
-6750 991 mt 6773 1016 L
-6773 1016 mt 6785 1028 L
-6785 1028 mt 6799 1043 L
-6799 1043 mt 6819 1066 L
-6819 1066 mt 6824 1071 L
-6824 1071 mt 6849 1098 L
-6849 1098 mt 6854 1104 L
-6854 1104 mt 6873 1126 L
-6873 1126 mt 6889 1144 L
-6889 1144 mt 6897 1153 L
-6897 1153 mt 6921 1181 L
-6921 1181 mt 6924 1185 L
-6924 1185 mt 6944 1208 L
-6944 1208 mt 6959 1226 L
-6959 1226 mt 6967 1236 L
-6967 1236 mt 6990 1263 L
-6990 1263 mt 6994 1269 L
-6994 1269 mt 7012 1291 L
-7012 1291 mt 7029 1313 L
-7029 1313 mt 7033 1318 L
-7033 1318 mt 7055 1346 L
-7055 1346 mt 7063 1357 L
-7063 1357 mt 7076 1373 L
-7076 1373 mt 7097 1401 L
-7097 1401 mt 7098 1403 L
-7098 1403 mt 7117 1428 L
-7117 1428 mt 7133 1451 L
-7133 1451 mt 7137 1456 L
-7137 1456 mt 7157 1484 L
-7157 1484 mt 7168 1500 L
-7168 1500 mt 7176 1511 L
-7176 1511 mt 7195 1539 L
-7195 1539 mt 7203 1552 L
-7203 1552 mt 7213 1566 L
-7213 1566 mt 7230 1594 L
-7230 1594 mt 7238 1607 L
-7238 1607 mt 7247 1621 L
-7247 1621 mt 7263 1649 L
-7263 1649 mt 7273 1667 L
-7273 1667 mt 7278 1676 L
-7278 1676 mt 7293 1704 L
-7293 1704 mt 7306 1731 L
-7306 1731 mt 7308 1734 L
-7308 1734 mt 7319 1759 L
-7319 1759 mt 7331 1786 L
-7331 1786 mt 7342 1814 L
-7342 1814 mt 7342 1814 L
-7342 1814 mt 7353 1841 L
-7353 1841 mt 7363 1869 L
-7363 1869 mt 7372 1896 L
-7372 1896 mt 7377 1916 L
-7308 1976 mt 7308 1979 L
-7308 1979 mt 7312 2006 L
-7312 2006 mt 7316 2034 L
-7316 2034 mt 7318 2061 L
-7318 2061 mt 7320 2089 L
-7320 2089 mt 7321 2116 L
-7321 2116 mt 7321 2144 L
-7321 2144 mt 7320 2171 L
-7320 2171 mt 7319 2199 L
-7319 2199 mt 7317 2226 L
-7317 2226 mt 7315 2254 L
-7315 2254 mt 7312 2281 L
-7312 2281 mt 7309 2309 L
-7309 2309 mt 7308 2320 L
-7308 2320 mt 7306 2336 L
-7306 2336 mt 7302 2364 L
-7302 2364 mt 7298 2391 L
-7298 2391 mt 7294 2419 L
-7294 2419 mt 7289 2446 L
-7289 2446 mt 7284 2474 L
-7284 2474 mt 7278 2502 L
-7278 2502 mt 7273 2529 L
-7273 2529 mt 7273 2529 L
-7273 2529 mt 7266 2557 L
-7266 2557 mt 7260 2584 L
-7260 2584 mt 7253 2612 L
-7253 2612 mt 7245 2639 L
-7245 2639 mt 7238 2666 L
-7238 2666 mt 7238 2667 L
-7238 2667 mt 7229 2694 L
-7229 2694 mt 7221 2722 L
-7221 2722 mt 7212 2749 L
-7212 2749 mt 7203 2776 L
-7203 2776 mt 7203 2777 L
-7203 2777 mt 7194 2804 L
-7194 2804 mt 7184 2832 L
-7184 2832 mt 7175 2859 L
-7175 2859 mt 7168 2878 L
-7168 2878 mt 7165 2887 L
-7165 2887 mt 7155 2914 L
-7155 2914 mt 7145 2942 L
-7145 2942 mt 7134 2969 L
-7134 2969 mt 7133 2972 L
-7133 2972 mt 7124 2997 L
-7124 2997 mt 7113 3024 L
-7113 3024 mt 7102 3052 L
-7102 3052 mt 7098 3061 L
-7098 3061 mt 7091 3079 L
-7091 3079 mt 7080 3107 L
-7080 3107 mt 7069 3134 L
-7069 3134 mt 7063 3147 L
-7063 3147 mt 7057 3162 L
-7057 3162 mt 7046 3189 L
-7046 3189 mt 7034 3217 L
-7034 3217 mt 7029 3230 L
-7029 3230 mt 7023 3244 L
-7023 3244 mt 7011 3272 L
-7011 3272 mt 6999 3299 L
-6999 3299 mt 6994 3312 L
-6994 3312 mt 6988 3327 L
-6988 3327 mt 6976 3354 L
-6976 3354 mt 6964 3382 L
-6964 3382 mt 6959 3395 L
-6959 3395 mt 6953 3409 L
-6953 3409 mt 6941 3437 L
-6941 3437 mt 6930 3464 L
-6930 3464 mt 6924 3477 L
-6924 3477 mt 6918 3492 L
-6918 3492 mt 6906 3519 L
-6906 3519 mt 6894 3547 L
-6894 3547 mt 6889 3559 L
-6889 3559 mt 6882 3575 L
-6882 3575 mt 6870 3602 L
-6870 3602 mt 6857 3630 L
-6857 3630 mt 6854 3636 L
-6854 3636 mt 6845 3657 L
-6845 3657 mt 6832 3685 L
-6832 3685 mt 6819 3711 L
-6819 3711 mt 6819 3712 L
-6819 3712 mt 6806 3740 L
-6806 3740 mt 6793 3767 L
-6793 3767 mt 6785 3785 L
-6785 3785 mt 6780 3795 L
-6780 3795 mt 6766 3822 L
-6766 3822 mt 6753 3850 L
-6753 3850 mt 6750 3855 L
-6750 3855 mt 6739 3877 L
-6739 3877 mt 6724 3905 L
-6724 3905 mt 6715 3922 L
-6715 3922 mt 6710 3932 L
-6710 3932 mt 6695 3960 L
-6695 3960 mt 6680 3987 L
-6680 3987 mt 6680 3987 L
-6680 3987 mt 6664 4015 L
-6664 4015 mt 6649 4042 L
-6649 4042 mt 6645 4049 L
-6645 4049 mt 6634 4070 L
-6634 4070 mt 6618 4097 L
-6618 4097 mt 6610 4111 L
-6610 4111 mt 6602 4125 L
-6602 4125 mt 6586 4152 L
-6586 4152 mt 6575 4172 L
-6575 4172 mt 6571 4180 L
-6571 4180 mt 6556 4207 L
-6556 4207 mt 6541 4235 L
-6541 4235 mt 6540 4235 L
-6540 4235 mt 6526 4262 L
-6526 4262 mt 6511 4290 L
-6511 4290 mt 6506 4301 L
-6506 4301 mt 6497 4317 L
-6497 4317 mt 6482 4345 L
-6482 4345 mt 6471 4366 L
-6471 4366 mt 6467 4372 L
-6467 4372 mt 6452 4400 L
-6452 4400 mt 6436 4427 L
-6436 4427 mt 6436 4428 L
-6436 4428 mt 6418 4455 L
-6418 4455 mt 6401 4479 L
-6401 4479 mt 6399 4482 L
-6399 4482 mt 6376 4510 L
-6376 4510 mt 6366 4520 L
-6366 4520 mt 6349 4537 L
-6349 4537 mt 6331 4553 L
-6331 4553 mt 6316 4565 L
-6316 4565 mt 6296 4578 L
-6296 4578 mt 6270 4592 L
-6270 4592 mt 6261 4597 L
-6261 4597 mt 6227 4609 L
-6227 4609 mt 6192 4617 L
-6192 4617 mt 6170 4620 L
-6170 4620 mt 6157 4622 L
-6157 4622 mt 6122 4624 L
-6122 4624 mt 6087 4624 L
-6087 4624 mt 6052 4623 L
-6052 4623 mt 6022 4620 L
-6022 4620 mt 6017 4619 L
-6017 4619 mt 5983 4608 L
-5983 4608 mt 5948 4593 L
-5948 4593 mt 5947 4592 L
-5947 4592 mt 5913 4572 L
-5913 4572 mt 5901 4565 L
-5901 4565 mt 5880 4537 L
-5880 4537 mt 5878 4528 L
-5878 4528 mt 5873 4510 L
-5873 4510 mt 5870 4482 L
-5870 4482 mt 5872 4455 L
-5872 4455 mt 5874 4427 L
-5874 4427 mt 5873 4400 L
-5873 4400 mt 5865 4372 L
-5865 4372 mt 5849 4345 L
-5849 4345 mt 5843 4337 L
-5843 4337 mt 5828 4317 L
-5828 4317 mt 5808 4293 L
-5808 4293 mt 5805 4290 L
-5805 4290 mt 5787 4262 L
-5787 4262 mt 5773 4235 L
-5773 4235 mt 5773 4235 L
-5773 4235 mt 5762 4207 L
-5762 4207 mt 5753 4180 L
-5753 4180 mt 5746 4152 L
-5746 4152 mt 5740 4125 L
-5740 4125 mt 5738 4119 L
-5738 4119 mt 5733 4097 L
-5733 4097 mt 5724 4070 L
-5724 4070 mt 5715 4042 L
-5715 4042 mt 5704 4015 L
-5704 4015 mt 5703 4015 L
-5703 4015 mt 5690 3987 L
-5690 3987 mt 5675 3960 L
-5675 3960 mt 5669 3948 L
-5669 3948 mt 5660 3932 L
-5660 3932 mt 5644 3905 L
-5644 3905 mt 5634 3888 L
-5634 3888 mt 5627 3877 L
-5627 3877 mt 5608 3850 L
-5608 3850 mt 5599 3838 L
-5599 3838 mt 5586 3822 L
-5586 3822 mt 5564 3797 L
-5564 3797 mt 5562 3795 L
-5562 3795 mt 5536 3767 L
-5536 3767 mt 5529 3760 L
-5529 3760 mt 5507 3740 L
-5507 3740 mt 5494 3727 L
-5494 3727 mt 5477 3712 L
-5477 3712 mt 5459 3697 L
-5459 3697 mt 5445 3685 L
-5445 3685 mt 5425 3667 L
-5425 3667 mt 5414 3657 L
-5414 3657 mt 5390 3635 L
-5390 3635 mt 5384 3630 L
-5384 3630 mt 5356 3602 L
-5356 3602 mt 5355 3600 L
-5355 3600 mt 5329 3575 L
-5329 3575 mt 5320 3565 L
-5320 3565 mt 5301 3547 L
-5301 3547 mt 5285 3531 L
-5285 3531 mt 5272 3519 L
-5272 3519 mt 5250 3499 L
-5250 3499 mt 5242 3492 L
-5242 3492 mt 5215 3467 L
-5215 3467 mt 5212 3464 L
-5212 3464 mt 5182 3437 L
-5182 3437 mt 5181 3435 L
-5181 3435 mt 5154 3409 L
-5154 3409 mt 5146 3401 L
-5146 3401 mt 5127 3382 L
-5127 3382 mt 5111 3365 L
-5111 3365 mt 5100 3354 L
-5100 3354 mt 5076 3330 L
-5076 3330 mt 5072 3327 L
-5072 3327 mt 5043 3299 L
-5043 3299 mt 5041 3298 L
-5041 3298 mt 5013 3272 L
-5013 3272 mt 5006 3265 L
-5006 3265 mt 4984 3244 L
-4984 3244 mt 4971 3232 L
-4971 3232 mt 4956 3217 L
-4956 3217 mt 4936 3199 L
-4936 3199 mt 4926 3189 L
-4926 3189 mt 4902 3168 L
-4902 3168 mt 4894 3162 L
-4894 3162 mt 4867 3142 L
-4867 3142 mt 4857 3134 L
-4857 3134 mt 4832 3116 L
-4832 3116 mt 4823 3107 L
-4823 3107 mt 4797 3079 L
-4797 3079 mt 4797 3079 L
-4797 3079 mt 4777 3052 L
-4777 3052 mt 4762 3034 L
-4762 3034 mt 4754 3024 L
-4754 3024 mt 4727 2998 L
-4727 2998 mt 4726 2997 L
-4726 2997 mt 4692 2969 L
-4692 2969 mt 4692 2969 L
-4692 2969 mt 4657 2946 L
-4657 2946 mt 4650 2942 L
-4650 2942 mt 4623 2925 L
-4623 2925 mt 4604 2914 L
-4604 2914 mt 4588 2903 L
-4588 2903 mt 4562 2887 L
-4562 2887 mt 4553 2881 L
-4553 2881 mt 4523 2859 L
-4523 2859 mt 4518 2856 L
-4518 2856 mt 4483 2832 L
-4483 2832 mt 4483 2832 L
-4483 2832 mt 4448 2811 L
-4448 2811 mt 4436 2804 L
-4436 2804 mt 4413 2792 L
-4413 2792 mt 4383 2777 L
-4383 2777 mt 4379 2774 L
-4379 2774 mt 4344 2755 L
-4344 2755 mt 4335 2749 L
-4335 2749 mt 4309 2731 L
-4309 2731 mt 4294 2722 L
-4294 2722 mt 4274 2708 L
-4274 2708 mt 4252 2694 L
-4252 2694 mt 4239 2685 L
-4239 2685 mt 4213 2667 L
-4213 2667 mt 4204 2660 L
-4204 2660 mt 4180 2639 L
-4180 2639 mt 4169 2630 L
-4169 2630 mt 4147 2612 L
-4147 2612 mt 4134 2601 L
-4134 2601 mt 4113 2584 L
-4113 2584 mt 4100 2574 L
-4100 2574 mt 4075 2557 L
-4075 2557 mt 4065 2550 L
-4065 2550 mt 4031 2529 L
-4031 2529 mt 4030 2529 L
-4030 2529 mt 3995 2512 L
-3995 2512 mt 3971 2502 L
-3971 2502 mt 3960 2497 L
-3960 2497 mt 3925 2487 L
-3925 2487 mt 3890 2480 L
-3890 2480 mt 3855 2480 L
-3855 2480 mt 3821 2489 L
-3821 2489 mt 3790 2502 L
-3790 2502 mt 3786 2504 L
-3786 2504 mt 3751 2527 L
-3751 2527 mt 3748 2529 L
-3748 2529 mt 3716 2553 L
-3716 2553 mt 3711 2557 L
-3711 2557 mt 3681 2579 L
-3681 2579 mt 3673 2584 L
-3673 2584 mt 3646 2602 L
-3646 2602 mt 3628 2612 L
-3628 2612 mt 3611 2621 L
-3611 2621 mt 3577 2636 L
-3577 2636 mt 3569 2639 L
-3569 2639 mt 3542 2650 L
-3542 2650 mt 3507 2662 L
-3507 2662 mt 3490 2667 L
-3490 2667 mt 3472 2672 L
-3472 2672 mt 3437 2683 L
-3437 2683 mt 3404 2694 L
-3404 2694 mt 3402 2695 L
-3402 2695 mt 3367 2707 L
-3367 2707 mt 3332 2719 L
-3332 2719 mt 3325 2722 L
-3325 2722 mt 3298 2732 L
-3298 2732 mt 3263 2745 L
-3263 2745 mt 3252 2749 L
-3252 2749 mt 3228 2759 L
-3228 2759 mt 3193 2772 L
-3193 2772 mt 3181 2777 L
-3181 2777 mt 3158 2786 L
-3158 2786 mt 3123 2799 L
-3123 2799 mt 3112 2804 L
-3112 2804 mt 3088 2814 L
-3088 2814 mt 3053 2831 L
-3053 2831 mt 3052 2832 L
-3052 2832 mt 3019 2853 L
-3019 2853 mt 3010 2859 L
-3010 2859 mt 2984 2883 L
-2984 2883 mt 2981 2887 L
-2981 2887 mt 2964 2914 L
-2964 2914 mt 2955 2942 L
-2955 2942 mt 2949 2969 L
-2949 2969 mt 2950 2997 L
-2950 2997 mt 2955 3024 L
-2955 3024 mt 2967 3052 L
-2967 3052 mt 2984 3079 L
-2984 3079 mt 2984 3079 L
-2984 3079 mt 3006 3107 L
-3006 3107 mt 3019 3118 L
-3019 3118 mt 3035 3134 L
-3035 3134 mt 3053 3148 L
-3053 3148 mt 3070 3162 L
-3070 3162 mt 3088 3176 L
-3088 3176 mt 3107 3189 L
-3107 3189 mt 3123 3201 L
-3123 3201 mt 3145 3217 L
-3145 3217 mt 3158 3225 L
-3158 3225 mt 3186 3244 L
-3186 3244 mt 3193 3249 L
-3193 3249 mt 3228 3271 L
-3228 3271 mt 3229 3272 L
-3229 3272 mt 3263 3293 L
-3263 3293 mt 3273 3299 L
-3273 3299 mt 3298 3315 L
-3298 3315 mt 3315 3327 L
-3315 3327 mt 3332 3338 L
-3332 3338 mt 3355 3354 L
-3355 3354 mt 3367 3364 L
-3367 3364 mt 3390 3382 L
-3390 3382 mt 3402 3392 L
-3402 3392 mt 3422 3409 L
-3422 3409 mt 3437 3423 L
-3437 3423 mt 3452 3437 L
-3452 3437 mt 3472 3457 L
-3472 3457 mt 3479 3464 L
-3479 3464 mt 3506 3492 L
-3506 3492 mt 3507 3493 L
-3507 3493 mt 3530 3519 L
-3530 3519 mt 3542 3533 L
-3542 3533 mt 3553 3547 L
-3553 3547 mt 3575 3575 L
-3575 3575 mt 3577 3577 L
-3577 3577 mt 3597 3602 L
-3597 3602 mt 3611 3618 L
-3611 3618 mt 3621 3630 L
-3621 3630 mt 3644 3657 L
-3644 3657 mt 3646 3660 L
-3646 3660 mt 3660 3685 L
-3660 3685 mt 3668 3712 L
-3668 3712 mt 3666 3740 L
-3666 3740 mt 3658 3767 L
-3658 3767 mt 3646 3786 L
-3646 3786 mt 3640 3795 L
-3640 3795 mt 3614 3822 L
-3614 3822 mt 3611 3825 L
-3611 3825 mt 3590 3850 L
-3590 3850 mt 3577 3865 L
-3577 3865 mt 3566 3877 L
-3566 3877 mt 3544 3905 L
-3544 3905 mt 3542 3908 L
-3542 3908 mt 3528 3932 L
-3528 3932 mt 3520 3960 L
-3520 3960 mt 3526 3987 L
-3526 3987 mt 3542 4004 L
-3542 4004 mt 3552 4015 L
-3552 4015 mt 3577 4030 L
-3577 4030 mt 3597 4042 L
-3597 4042 mt 3611 4050 L
-3611 4050 mt 3644 4070 L
-3644 4070 mt 3646 4071 L
-3646 4071 mt 3675 4097 L
-3675 4097 mt 3681 4105 L
-3681 4105 mt 3694 4125 L
-3694 4125 mt 3704 4152 L
-3704 4152 mt 3707 4180 L
-3707 4180 mt 3702 4207 L
-3702 4207 mt 3685 4235 L
-3685 4235 mt 3681 4238 L
-3681 4238 mt 3646 4262 L
-3646 4262 mt 3645 4262 L
-3645 4262 mt 3611 4278 L
-3611 4278 mt 3588 4290 L
-3588 4290 mt 3577 4298 L
-3577 4298 mt 3554 4317 L
-3554 4317 mt 3546 4345 L
-3546 4345 mt 3558 4372 L
-3558 4372 mt 3577 4389 L
-3577 4389 mt 3591 4400 L
-3591 4400 mt 3611 4413 L
-3611 4413 mt 3634 4427 L
-3634 4427 mt 3646 4437 L
-3646 4437 mt 3666 4455 L
-3666 4455 mt 3681 4475 L
-3681 4475 mt 3686 4482 L
-3686 4482 mt 3699 4510 L
-3699 4510 mt 3708 4537 L
-3708 4537 mt 3714 4565 L
-3714 4565 mt 3716 4584 L
-3716 4584 mt 3717 4592 L
-3717 4592 mt 3716 4596 L
-3716 4596 mt 3710 4620 L
-3710 4620 mt 3696 4648 L
-3696 4648 mt 3681 4672 L
-3681 4672 mt 3679 4675 L
-3679 4675 mt 3659 4703 L
-3659 4703 mt 3646 4718 L
-3646 4718 mt 3636 4730 L
-3636 4730 mt 3611 4756 L
-3611 4756 mt 3610 4758 L
-3610 4758 mt 3581 4785 L
-3581 4785 mt 3577 4789 L
-3577 4789 mt 3547 4813 L
-3547 4813 mt 3542 4817 L
-3542 4817 mt 3510 4840 L
-3510 4840 mt 3507 4842 L
-3507 4842 mt 3472 4865 L
-3472 4865 mt 3468 4868 L
-3468 4868 mt 3437 4886 L
-3437 4886 mt 3421 4895 L
-3421 4895 mt 3402 4905 L
-3402 4905 mt 3368 4923 L
-3368 4923 mt 3367 4923 L
-3367 4923 mt 3332 4940 L
-3332 4940 mt 3309 4950 L
-3309 4950 mt 3298 4955 L
-3298 4955 mt 3263 4970 L
-3263 4970 mt 3242 4978 L
-3242 4978 mt 3228 4983 L
-3228 4983 mt 3193 4996 L
-3193 4996 mt 3167 5005 L
-3167 5005 mt 3158 5008 L
-3158 5008 mt 3123 5020 L
-3123 5020 mt 3088 5030 L
-3088 5030 mt 3079 5033 L
-3079 5033 mt 3053 5040 L
-3053 5040 mt 3019 5049 L
-3019 5049 mt 2984 5057 L
-2984 5057 mt 2971 5060 L
-2971 5060 mt 2949 5065 L
-2949 5065 mt 2914 5072 L
-2914 5072 mt 2879 5078 L
-2879 5078 mt 2844 5084 L
-2844 5084 mt 2816 5088 L
-2816 5088 mt 2809 5089 L
-2809 5089 mt 2774 5093 L
-2774 5093 mt 2740 5097 L
-2740 5097 mt 2705 5100 L
-2705 5100 mt 2670 5103 L
-2670 5103 mt 2635 5105 L
-2635 5105 mt 2600 5107 L
-2600 5107 mt 2565 5108 L
-2565 5108 mt 2530 5108 L
-2530 5108 mt 2496 5108 L
-2496 5108 mt 2461 5108 L
-2461 5108 mt 2426 5107 L
-2426 5107 mt 2391 5105 L
-2391 5105 mt 2356 5103 L
-2356 5103 mt 2321 5100 L
-2321 5100 mt 2286 5097 L
-2286 5097 mt 2251 5093 L
-2251 5093 mt 2217 5089 L
-2217 5089 mt 2209 5088 L
-2209 5088 mt 2182 5084 L
-2182 5084 mt 2147 5078 L
-2147 5078 mt 2112 5072 L
-2112 5072 mt 2077 5065 L
-2077 5065 mt 2057 5060 L
-2057 5060 mt 2042 5057 L
-2042 5057 mt 2007 5049 L
-2007 5049 mt 1972 5040 L
-1972 5040 mt 1948 5033 L
-1948 5033 mt 1938 5030 L
-1938 5030 mt 1903 5020 L
-1903 5020 mt 1868 5008 L
-1868 5008 mt 1859 5005 L
-1859 5005 mt 1833 4997 L
-1833 4997 mt 1798 4984 L
-1798 4984 mt 1783 4978 L
-1783 4978 mt 1763 4970 L
-1763 4970 mt 1728 4954 L
-1728 4954 mt 1720 4950 L
-1720 4950 mt 1694 4937 L
-1694 4937 mt 1666 4923 L
-1666 4923 mt 1659 4919 L
-1659 4919 mt 1624 4899 L
-1624 4899 mt 1618 4895 L
-1618 4895 mt 1589 4876 L
-1589 4876 mt 1576 4868 L
-1576 4868 mt 1554 4852 L
-1554 4852 mt 1539 4840 L
-1539 4840 mt 1519 4824 L
-1519 4824 mt 1505 4813 L
-1505 4813 mt 1484 4794 L
-1484 4794 mt 1475 4785 L
-1475 4785 mt 1449 4759 L
-1449 4759 mt 1448 4758 L
-1448 4758 mt 1423 4730 L
-1423 4730 mt 1415 4720 L
-1415 4720 mt 1400 4703 L
-1400 4703 mt 1380 4676 L
-1380 4676 mt 1379 4675 L
-1379 4675 mt 1359 4648 L
-1359 4648 mt 1345 4625 L
-1345 4625 mt 1342 4620 L
-1342 4620 mt 1324 4592 L
-1324 4592 mt 1310 4568 L
-1310 4568 mt 1308 4565 L
-1308 4565 mt 1293 4537 L
-1293 4537 mt 1278 4510 L
-1278 4510 mt 1275 4504 L
-1275 4504 mt 1264 4482 L
-1264 4482 mt 1250 4455 L
-1250 4455 mt 1240 4433 L
-1240 4433 mt 1238 4427 L
-1238 4427 mt 1226 4400 L
-1226 4400 mt 1215 4372 L
-1215 4372 mt 1205 4346 L
-1205 4346 mt 1205 4345 L
-1205 4345 mt 1195 4317 L
-1195 4317 mt 1187 4290 L
-1187 4290 mt 1180 4262 L
-1180 4262 mt 1173 4235 L
-1173 4235 mt 1170 4224 L
-1170 4224 mt 1167 4207 L
-1167 4207 mt 1162 4180 L
-1162 4180 mt 1157 4152 L
-1157 4152 mt 1153 4125 L
-1153 4125 mt 1149 4097 L
-1149 4097 mt 1146 4070 L
-1146 4070 mt 1143 4042 L
-1143 4042 mt 1140 4015 L
-1140 4015 mt 1137 3987 L
-1137 3987 mt 1136 3969 L
-1136 3969 mt 1135 3960 L
-1135 3960 mt 1132 3932 L
-1132 3932 mt 1130 3905 L
-1130 3905 mt 1126 3877 L
-1126 3877 mt 1123 3850 L
-1123 3850 mt 1118 3822 L
-1118 3822 mt 1112 3795 L
-1112 3795 mt 1105 3767 L
-1105 3767 mt 1101 3752 L
-1101 3752 mt 1097 3740 L
-1097 3740 mt 1086 3712 L
-1086 3712 mt 1074 3685 L
-1074 3685 mt 1066 3670 L
-1066 3670 mt 1059 3657 L
-1059 3657 mt 1042 3630 L
-1042 3630 mt 1031 3614 L
-1031 3614 mt 1022 3602 L
-1022 3602 mt 999 3575 L
- 999 3575 mt 996 3571 L
- 996 3571 mt 973 3547 L
- 973 3547 mt 961 3536 L
- 961 3536 mt 944 3519 L
- 944 3519 mt 926 3504 L
- 926 3504 mt 913 3492 L
- 913 3492 mt 892 3475 L
- 892 3475 mt 879 3464 L
- 879 3464 mt 857 3447 L
- 857 3447 mt 844 3437 L
- 844 3437 mt 822 3420 L
- 822 3420 mt 807 3409 L
- 807 3409 mt 787 3394 L
- 787 3394 mt 770 3382 L
- 770 3382 mt 752 3369 L
- 752 3369 mt 733 3354 L
- 733 3354 mt 717 3343 L
- 717 3343 mt 695 3327 L
- 695 3327 mt 682 3318 L
- 682 3318 mt 658 3299 L
- 658 3299 mt 647 3292 L
- 647 3292 mt 621 3272 L
- 621 3272 mt 613 3266 L
- 613 3266 mt 584 3244 L
- 584 3244 mt 578 3239 L
- 578 3239 mt 549 3217 L
- 549 3217 mt 543 3212 L
- 543 3212 mt 513 3189 L
- 513 3189 mt 508 3185 L
- 508 3185 mt 479 3162 L
- 479 3162 mt 473 3157 L
- 473 3157 mt 446 3134 L
- 446 3134 mt 438 3127 L
- 438 3127 mt 415 3107 L
- 415 3107 mt 403 3097 L
- 403 3097 mt 384 3079 L
- 384 3079 mt 368 3064 L
- 368 3064 mt 355 3052 L
- 355 3052 mt 334 3030 L
- 334 3030 mt 328 3024 L
- 328 3024 mt 302 2997 L
- 302 2997 mt 299 2994 L
- 299 2994 mt 277 2969 L
- 277 2969 mt 264 2954 L
- 264 2954 mt 253 2942 L
- 253 2942 mt 230 2914 L
- 230 2914 mt 229 2912 L
- 229 2912 mt 209 2887 L
- 209 2887 mt 194 2867 L
- 194 2867 mt 189 2859 L
- 189 2859 mt 169 2832 L
- 169 2832 mt 159 2817 L
- 159 2817 mt 150 2804 L
- 150 2804 mt 132 2777 L
- 132 2777 mt 124 2764 L
- 124 2764 mt 115 2749 L
- 115 2749 mt 100 2722 L
- 100 2722 mt 90 2703 L
- 90 2703 mt 85 2694 L
- 85 2694 mt 71 2667 L
- 71 2667 mt 58 2639 L
- 58 2639 mt 55 2631 L
- 55 2631 mt 46 2612 L
- 46 2612 mt 36 2584 L
- 36 2584 mt 26 2557 L
- 26 2557 mt 20 2535 L
- 20 2535 mt 18 2529 L
- 18 2529 mt 10 2502 L
- 10 2502 mt 4 2474 L
- 4 2474 mt 0 2446 L
- 0 2446 mt -5 2419 L
- -5 2419 mt -9 2391 L
- -9 2391 mt -11 2364 L
- -11 2364 mt -13 2336 L
- -13 2336 mt -14 2320 L
- -14 2320 mt -15 2309 L
- -15 2309 mt -15 2281 L
- -15 2281 mt -15 2254 L
- -15 2254 mt -15 2226 L
- -15 2226 mt -14 2207 L
- -14 2207 mt -14 2199 L
- -14 2199 mt -12 2171 L
- -12 2171 mt -10 2144 L
- -10 2144 mt -7 2116 L
- -7 2116 mt -3 2089 L
- -3 2089 mt 0 2061 L
- 0 2061 mt 4 2034 L
- 4 2034 mt 10 2006 L
- 10 2006 mt 15 1979 L
- 15 1979 mt 20 1961 L
- 20 1961 mt 22 1951 L
- 22 1951 mt 29 1924 L
- 29 1924 mt 36 1896 L
- 36 1896 mt 44 1869 L
- 44 1869 mt 52 1841 L
- 52 1841 mt 55 1833 L
- 55 1833 mt 60 1814 L
- 60 1814 mt 68 1786 L
- 68 1786 mt 76 1759 L
- 76 1759 mt 85 1731 L
- 85 1731 mt 90 1715 L
- 90 1715 mt 93 1704 L
- 93 1704 mt 101 1676 L
- 101 1676 mt 109 1649 L
- 109 1649 mt 117 1621 L
- 117 1621 mt 124 1597 L
- 124 1597 mt 125 1594 L
- 125 1594 mt 133 1566 L
- 133 1566 mt 141 1539 L
- 141 1539 mt 148 1511 L
- 148 1511 mt 156 1484 L
- 156 1484 mt 159 1470 L
- 159 1470 mt 163 1456 L
- 163 1456 mt 170 1428 L
- 170 1428 mt 178 1401 L
- 178 1401 mt 185 1373 L
- 185 1373 mt 193 1346 L
- 193 1346 mt 194 1341 L
- 194 1341 mt 200 1318 L
- 200 1318 mt 208 1291 L
- 208 1291 mt 216 1263 L
- 216 1263 mt 224 1236 L
- 224 1236 mt 229 1218 L
- 229 1218 mt 232 1208 L
- 232 1208 mt 240 1181 L
- 240 1181 mt 249 1153 L
- 249 1153 mt 258 1126 L
- 258 1126 mt 264 1111 L
- 264 1111 mt 268 1098 L
- 268 1098 mt 279 1071 L
- 279 1071 mt 289 1043 L
- 289 1043 mt 299 1021 L
- 299 1021 mt 301 1016 L
- 301 1016 mt 313 988 L
- 313 988 mt 325 961 L
- 325 961 mt 334 944 L
- 334 944 mt 338 933 L
- 338 933 mt 352 906 L
- 352 906 mt 366 878 L
- 366 878 mt 368 874 L
- 368 874 mt 381 851 L
- 381 851 mt 396 823 L
- 396 823 mt 403 811 L
- 403 811 mt 412 796 L
- 412 796 mt 428 768 L
- 428 768 mt 438 753 L
- 438 753 mt 446 741 L
- 446 741 mt 463 713 L
- 463 713 mt 473 699 L
- 473 699 mt 482 686 L
- 482 686 mt 501 658 L
- 501 658 mt 508 649 L
- 508 649 mt 521 631 L
- 521 631 mt 541 603 L
- 541 603 mt 543 601 L
- 543 601 mt 562 576 L
- 562 576 mt 578 556 L
- 578 556 mt 584 548 L
- 584 548 mt 606 521 L
- 606 521 mt 613 513 L
- 613 513 mt 629 493 L
- 629 493 mt 647 472 L
- 647 472 mt 653 466 L
- 653 466 mt 678 438 L
- 678 438 mt 682 433 L
- 682 433 mt 704 411 L
- 704 411 mt 717 398 L
- 717 398 mt 732 383 L
- 732 383 mt 752 364 L
- 752 364 mt 762 355 L
- 762 355 mt 787 334 L
- 787 334 mt 794 328 L
- 794 328 mt 822 305 L
- 822 305 mt 828 300 L
- 828 300 mt 857 279 L
- 857 279 mt 865 273 L
- 865 273 mt 892 255 L
- 892 255 mt 905 245 L
- 905 245 mt 926 232 L
- 926 232 mt 949 218 L
- 949 218 mt 961 210 L
- 961 210 mt 996 190 L
- 996 190 mt 996 190 L
- 996 190 mt 1031 171 L
-1031 171 mt 1046 163 L
-1046 163 mt 1066 153 L
-1066 153 mt 1101 136 L
-1101 136 mt 1102 135 L
-1102 135 mt 1136 120 L
-1136 120 mt 1164 108 L
-1164 108 mt 1170 105 L
-1170 105 mt 1205 91 L
-1205 91 mt 1233 80 L
-1233 80 mt 1240 77 L
-1240 77 mt 1275 64 L
-1275 64 mt 1309 53 L
-1309 53 mt 1310 52 L
-1310 52 mt 1345 41 L
-1345 41 mt 1380 29 L
-1380 29 mt 1393 25 L
-1393 25 mt 1415 19 L
-1415 19 mt 1449 8 L
-1449 8 mt 1484 -1 L
-1484 -1 mt 1487 -1 L
-1487 -1 mt 1519 -10 L
-1519 -10 mt 1554 -19 L
-1554 -19 mt 1589 -28 L
-1589 -28 mt 1591 -29 L
-1591 -29 mt 1624 -37 L
-1624 -37 mt 1659 -45 L
-1659 -45 mt 1694 -53 L
-1694 -53 mt 1706 -56 L
-1706 -56 mt 1728 -61 L
-1728 -61 mt 1763 -69 L
-1763 -69 mt 1798 -77 L
-1798 -77 mt 1831 -84 L
-1831 -84 mt 1833 -84 L
-1833 -84 mt 1868 -92 L
-1868 -92 mt 1903 -99 L
-1903 -99 mt 1938 -106 L
-1938 -106 mt 1964 -111 L
-1964 -111 mt 1972 -113 L
-1972 -113 mt 2007 -120 L
-2007 -120 mt 2042 -127 L
-2042 -127 mt 2077 -133 L
-2077 -133 mt 2105 -139 L
-2105 -139 mt 2112 -140 L
-2112 -140 mt 2147 -147 L
-2147 -147 mt 2182 -153 L
-2182 -153 mt 2217 -160 L
-2217 -160 mt 2250 -166 L
-2250 -166 mt 2251 -167 L
-2251 -167 mt 2286 -174 L
-2286 -174 mt 2321 -181 L
-2321 -181 mt 2356 -188 L
-2356 -188 mt 2386 -194 L
-2386 -194 mt 2391 -195 L
-2391 -195 mt 2426 -202 L
-2426 -202 mt 2461 -209 L
-2461 -209 mt 2496 -216 L
-2496 -216 mt 2526 -221 L
-2526 -221 mt 2530 -222 L
-2530 -222 mt 2565 -229 L
-2565 -229 mt 2600 -235 L
-2600 -235 mt 2635 -242 L
-2635 -242 mt 2670 -248 L
-2670 -248 mt 2672 -249 L
-2672 -249 mt 2705 -255 L
-2705 -255 mt 2740 -261 L
-2740 -261 mt 2774 -268 L
-2774 -268 mt 2809 -274 L
-2809 -274 mt 2822 -276 L
-2822 -276 mt 2844 -280 L
-2844 -280 mt 2879 -287 L
-2879 -287 mt 2914 -293 L
-2914 -293 mt 2949 -299 L
-2949 -299 mt 2976 -304 L
-2976 -304 mt 2984 -305 L
-2984 -305 mt 3019 -311 L
-3019 -311 mt 3053 -318 L
-3053 -318 mt 3088 -324 L
-3088 -324 mt 3123 -329 L
-3123 -329 mt 3135 -331 L
-3135 -331 mt 3158 -335 L
-3158 -335 mt 3193 -341 L
-3193 -341 mt 3228 -346 L
-3228 -346 mt 3263 -351 L
-3263 -351 mt 3298 -356 L
-3298 -356 mt 3321 -359 L
-3321 -359 mt 3332 -360 L
-3332 -360 mt 3367 -365 L
-3367 -365 mt 3402 -369 L
-3402 -369 mt 3437 -373 L
-3437 -373 mt 3472 -376 L
-3472 -376 mt 3507 -379 L
-3507 -379 mt 3542 -383 L
-3542 -383 mt 3577 -385 L
-3577 -385 mt 3590 -386 L
-3590 -386 mt 3611 -388 L
-3611 -388 mt 3646 -390 L
-3646 -390 mt 3681 -392 L
-3681 -392 mt 3716 -393 L
-3716 -393 mt 3751 -394 L
-3751 -394 mt 3786 -395 L
-3786 -395 mt 3821 -396 L
-3821 -396 mt 3855 -396 L
-3855 -396 mt 3890 -396 L
-3890 -396 mt 3925 -395 L
-3925 -395 mt 3960 -395 L
-3960 -395 mt 3995 -394 L
-3995 -394 mt 4030 -393 L
-4030 -393 mt 4065 -392 L
-4065 -392 mt 4100 -390 L
-4100 -390 mt 4134 -388 L
-4134 -388 mt 4169 -386 L
-4169 -386 mt 4170 -386 L
-4170 -386 mt 4204 -384 L
-4204 -384 mt 4239 -382 L
-4239 -382 mt 4274 -379 L
-4274 -379 mt 4309 -375 L
-4309 -375 mt 4344 -372 L
-4344 -372 mt 4379 -368 L
-4379 -368 mt 4413 -364 L
-4413 -364 mt 4448 -359 L
-4448 -359 mt 4449 -359 L
-4449 -359 mt 4483 -354 L
-4483 -354 mt 4518 -349 L
-4518 -349 mt 4553 -343 L
-4553 -343 mt 4588 -337 L
-4588 -337 mt 4619 -331 L
-4619 -331 mt 4623 -331 L
-4623 -331 mt 4657 -324 L
-4657 -324 mt 4692 -317 L
-4692 -317 mt 4727 -309 L
-4727 -309 mt 4748 -304 L
-4748 -304 mt 4762 -301 L
-4762 -301 mt 4797 -292 L
-4797 -292 mt 4832 -283 L
-4832 -283 mt 4858 -276 L
-4858 -276 mt 4867 -274 L
-4867 -274 mt 4902 -264 L
-4902 -264 mt 4936 -254 L
-4936 -254 mt 4953 -249 L
-4953 -249 mt 4971 -243 L
-4971 -243 mt 5006 -233 L
-5006 -233 mt 5040 -221 L
-5040 -221 mt 5041 -221 L
-5041 -221 mt 5076 -210 L
-5076 -210 mt 5111 -198 L
-5111 -198 mt 5122 -194 L
-5122 -194 mt 5146 -185 L
-5146 -185 mt 5181 -173 L
-5181 -173 mt 5198 -166 L
-5198 -166 mt 5215 -160 L
-5215 -160 mt 5250 -146 L
-5250 -146 mt 5269 -139 L
-5269 -139 mt 5285 -132 L
-5285 -132 mt 5320 -118 L
-5320 -118 mt 5335 -111 L
-5335 -111 mt 5355 -103 L
-5355 -103 mt 5390 -87 L
-5390 -87 mt 5396 -84 L
-5396 -84 mt 5425 -70 L
-5425 -70 mt 5454 -56 L
-5454 -56 mt 5459 -53 L
-5459 -53 mt 5494 -36 L
-5494 -36 mt 5507 -29 L
-5507 -29 mt 5529 -17 L
-5529 -17 mt 5558 -1 L
-5558 -1 mt 5564 1 L
-5564 1 mt 5599 22 L
-5599 22 mt 5605 25 L
-5605 25 mt 5634 43 L
-5634 43 mt 5649 53 L
-5649 53 mt 5669 65 L
-5669 65 mt 5692 80 L
-5692 80 mt 5704 88 L
-5704 88 mt 5732 108 L
-5732 108 mt 5738 112 L
-5738 112 mt 5771 135 L
-5771 135 mt 5773 137 L
-5773 137 mt 5808 163 L
-5808 163 mt 5808 163 L
-5808 163 mt 5843 190 L
-5843 190 mt 5843 190 L
-5843 190 mt 5877 218 L
-5877 218 mt 5878 218 L
-5878 218 mt 5911 245 L
-5911 245 mt 5913 247 L
-5913 247 mt 5943 273 L
-5943 273 mt 5948 277 L
-5948 277 mt 5975 300 L
-5975 300 mt 5983 308 L
-5983 308 mt 6005 328 L
-6005 328 mt 6017 339 L
-6017 339 mt 6035 355 L
-6035 355 mt 6052 371 L
-6052 371 mt 6065 383 L
-6065 383 mt 6087 404 L
-6087 404 mt 6094 411 L
-6094 411 mt 6122 437 L
-6122 437 mt 6123 438 L
-6123 438 mt 6151 466 L
-6151 466 mt 6157 471 L
-6157 471 mt 6180 493 L
-6180 493 mt 6192 504 L
-6192 504 mt 6209 521 L
-6209 521 mt 6227 537 L
-6227 537 mt 6238 548 L
-6238 548 mt 6261 571 L
-6261 571 mt 6267 576 L
-6267 576 mt 6295 603 L
-6295 603 mt 6296 604 L
-6296 604 mt 6324 631 L
-6324 631 mt 6331 638 L
-6331 638 mt 6352 658 L
-6352 658 mt 6366 671 L
-6366 671 mt 6381 686 L
-6381 686 mt 6401 705 L
-6401 705 mt 6409 713 L
-6409 713 mt 6436 739 L
-6436 739 mt 6438 741 L
-6438 741 mt 6466 768 L
-6466 768 mt 6471 772 L
-6471 772 mt 6495 796 L
-6495 796 mt 6506 806 L
-6506 806 mt 6523 823 L
-6523 823 mt 6540 840 L
-6540 840 mt 6551 851 L
-6551 851 mt 6575 875 L
-6575 875 mt 6579 878 L
-6579 878 mt 6607 906 L
-6607 906 mt 6610 909 L
-6610 909 mt 6634 933 L
-6634 933 mt 6645 945 L
-6645 945 mt 6661 961 L
-6661 961 mt 6680 981 L
-6680 981 mt 6687 988 L
-6687 988 mt 6713 1016 L
-6713 1016 mt 6715 1018 L
-6715 1018 mt 6738 1043 L
-6738 1043 mt 6750 1056 L
-6750 1056 mt 6764 1071 L
-6764 1071 mt 6785 1094 L
-6785 1094 mt 6788 1098 L
-6788 1098 mt 6813 1126 L
-6813 1126 mt 6819 1134 L
-6819 1134 mt 6837 1153 L
-6837 1153 mt 6854 1174 L
-6854 1174 mt 6860 1181 L
-6860 1181 mt 6883 1208 L
-6883 1208 mt 6889 1216 L
-6889 1216 mt 6906 1236 L
-6906 1236 mt 6924 1259 L
-6924 1259 mt 6928 1263 L
-6928 1263 mt 6949 1291 L
-6949 1291 mt 6959 1303 L
-6959 1303 mt 6971 1318 L
-6971 1318 mt 6991 1346 L
-6991 1346 mt 6994 1349 L
-6994 1349 mt 7012 1373 L
-7012 1373 mt 7029 1397 L
-7029 1397 mt 7032 1401 L
-7032 1401 mt 7051 1428 L
-7051 1428 mt 7063 1446 L
-7063 1446 mt 7070 1456 L
-7070 1456 mt 7089 1484 L
-7089 1484 mt 7098 1498 L
-7098 1498 mt 7107 1511 L
-7107 1511 mt 7125 1539 L
-7125 1539 mt 7133 1553 L
-7133 1553 mt 7142 1566 L
-7142 1566 mt 7158 1594 L
-7158 1594 mt 7168 1612 L
-7168 1612 mt 7174 1621 L
-7174 1621 mt 7189 1649 L
-7189 1649 mt 7203 1676 L
-7203 1676 mt 7203 1676 L
-7203 1676 mt 7217 1704 L
-7217 1704 mt 7230 1731 L
-7230 1731 mt 7238 1750 L
-7238 1750 mt 7242 1759 L
-7242 1759 mt 7253 1786 L
-7253 1786 mt 7263 1814 L
-7263 1814 mt 7273 1841 L
-7273 1841 mt 7273 1842 L
-7273 1842 mt 7281 1869 L
-7281 1869 mt 7290 1896 L
-7290 1896 mt 7297 1924 L
-7297 1924 mt 7303 1951 L
-7303 1951 mt 7308 1976 L
-7238 2031 mt 7238 2034 L
-7238 2034 mt 7240 2061 L
-7240 2061 mt 7241 2089 L
-7241 2089 mt 7242 2116 L
-7242 2116 mt 7242 2144 L
-7242 2144 mt 7241 2171 L
-7241 2171 mt 7240 2199 L
-7240 2199 mt 7238 2223 L
-7238 2223 mt 7238 2226 L
-7238 2226 mt 7235 2254 L
-7235 2254 mt 7232 2281 L
-7232 2281 mt 7229 2309 L
-7229 2309 mt 7225 2336 L
-7225 2336 mt 7221 2364 L
-7221 2364 mt 7217 2391 L
-7217 2391 mt 7212 2419 L
-7212 2419 mt 7206 2446 L
-7206 2446 mt 7203 2464 L
-7203 2464 mt 7201 2474 L
-7201 2474 mt 7195 2502 L
-7195 2502 mt 7189 2529 L
-7189 2529 mt 7182 2557 L
-7182 2557 mt 7175 2584 L
-7175 2584 mt 7168 2608 L
-7168 2608 mt 7167 2612 L
-7167 2612 mt 7159 2639 L
-7159 2639 mt 7151 2667 L
-7151 2667 mt 7143 2694 L
-7143 2694 mt 7134 2722 L
-7134 2722 mt 7133 2725 L
-7133 2725 mt 7126 2749 L
-7126 2749 mt 7117 2777 L
-7117 2777 mt 7108 2804 L
-7108 2804 mt 7098 2832 L
-7098 2832 mt 7098 2832 L
-7098 2832 mt 7089 2859 L
-7089 2859 mt 7079 2887 L
-7079 2887 mt 7070 2914 L
-7070 2914 mt 7063 2931 L
-7063 2931 mt 7059 2942 L
-7059 2942 mt 7049 2969 L
-7049 2969 mt 7039 2997 L
-7039 2997 mt 7029 3023 L
-7029 3023 mt 7028 3024 L
-7028 3024 mt 7018 3052 L
-7018 3052 mt 7007 3079 L
-7007 3079 mt 6996 3107 L
-6996 3107 mt 6994 3112 L
-6994 3112 mt 6985 3134 L
-6985 3134 mt 6974 3162 L
-6974 3162 mt 6962 3189 L
-6962 3189 mt 6959 3198 L
-6959 3198 mt 6951 3217 L
-6951 3217 mt 6940 3244 L
-6940 3244 mt 6929 3272 L
-6929 3272 mt 6924 3283 L
-6924 3283 mt 6918 3299 L
-6918 3299 mt 6907 3327 L
-6907 3327 mt 6896 3354 L
-6896 3354 mt 6889 3370 L
-6889 3370 mt 6885 3382 L
-6885 3382 mt 6874 3409 L
-6874 3409 mt 6863 3437 L
-6863 3437 mt 6854 3458 L
-6854 3458 mt 6852 3464 L
-6852 3464 mt 6841 3492 L
-6841 3492 mt 6829 3519 L
-6829 3519 mt 6819 3543 L
-6819 3543 mt 6818 3547 L
-6818 3547 mt 6806 3575 L
-6806 3575 mt 6794 3602 L
-6794 3602 mt 6785 3624 L
-6785 3624 mt 6782 3630 L
-6782 3630 mt 6770 3657 L
-6770 3657 mt 6758 3685 L
-6758 3685 mt 6750 3702 L
-6750 3702 mt 6745 3712 L
-6745 3712 mt 6733 3740 L
-6733 3740 mt 6720 3767 L
-6720 3767 mt 6715 3778 L
-6715 3778 mt 6707 3795 L
-6707 3795 mt 6694 3822 L
-6694 3822 mt 6681 3850 L
-6681 3850 mt 6680 3851 L
-6680 3851 mt 6667 3877 L
-6667 3877 mt 6653 3905 L
-6653 3905 mt 6645 3920 L
-6645 3920 mt 6639 3932 L
-6639 3932 mt 6625 3960 L
-6625 3960 mt 6610 3987 L
-6610 3987 mt 6610 3987 L
-6610 3987 mt 6595 4015 L
-6595 4015 mt 6580 4042 L
-6580 4042 mt 6575 4050 L
-6575 4050 mt 6565 4070 L
-6565 4070 mt 6549 4097 L
-6549 4097 mt 6540 4113 L
-6540 4113 mt 6534 4125 L
-6534 4125 mt 6519 4152 L
-6519 4152 mt 6506 4177 L
-6506 4177 mt 6504 4180 L
-6504 4180 mt 6490 4207 L
-6490 4207 mt 6477 4235 L
-6477 4235 mt 6471 4247 L
-6471 4247 mt 6463 4262 L
-6463 4262 mt 6450 4290 L
-6450 4290 mt 6437 4317 L
-6437 4317 mt 6436 4320 L
-6436 4320 mt 6424 4345 L
-6424 4345 mt 6411 4372 L
-6411 4372 mt 6401 4393 L
-6401 4393 mt 6398 4400 L
-6398 4400 mt 6383 4427 L
-6383 4427 mt 6367 4455 L
-6367 4455 mt 6366 4457 L
-6366 4457 mt 6349 4482 L
-6349 4482 mt 6331 4504 L
-6331 4504 mt 6327 4510 L
-6327 4510 mt 6299 4537 L
-6299 4537 mt 6296 4540 L
-6296 4540 mt 6261 4565 L
-6261 4565 mt 6261 4565 L
-6261 4565 mt 6227 4580 L
-6227 4580 mt 6192 4587 L
-6192 4587 mt 6157 4591 L
-6157 4591 mt 6122 4591 L
-6122 4591 mt 6087 4588 L
-6087 4588 mt 6052 4581 L
-6052 4581 mt 6017 4570 L
-6017 4570 mt 6011 4565 L
-6011 4565 mt 5991 4537 L
-5991 4537 mt 5983 4510 L
-5983 4510 mt 5983 4508 L
-5983 4508 mt 5981 4482 L
-5981 4482 mt 5983 4469 L
-5983 4469 mt 5984 4455 L
-5984 4455 mt 5989 4427 L
-5989 4427 mt 5993 4400 L
-5993 4400 mt 5993 4372 L
-5993 4372 mt 5986 4345 L
-5986 4345 mt 5983 4337 L
-5983 4337 mt 5973 4317 L
-5973 4317 mt 5957 4290 L
-5957 4290 mt 5948 4272 L
-5948 4272 mt 5942 4262 L
-5942 4262 mt 5928 4235 L
-5928 4235 mt 5916 4207 L
-5916 4207 mt 5913 4199 L
-5913 4199 mt 5904 4180 L
-5904 4180 mt 5893 4152 L
-5893 4152 mt 5883 4125 L
-5883 4125 mt 5878 4110 L
-5878 4110 mt 5873 4097 L
-5873 4097 mt 5859 4070 L
-5859 4070 mt 5843 4042 L
-5843 4042 mt 5843 4042 L
-5843 4042 mt 5829 4015 L
-5829 4015 mt 5812 3987 L
-5812 3987 mt 5808 3982 L
-5808 3982 mt 5791 3960 L
-5791 3960 mt 5773 3936 L
-5773 3936 mt 5771 3932 L
-5771 3932 mt 5751 3905 L
-5751 3905 mt 5738 3888 L
-5738 3888 mt 5731 3877 L
-5731 3877 mt 5710 3850 L
-5710 3850 mt 5704 3842 L
-5704 3842 mt 5688 3822 L
-5688 3822 mt 5669 3801 L
-5669 3801 mt 5663 3795 L
-5663 3795 mt 5636 3767 L
-5636 3767 mt 5634 3766 L
-5634 3766 mt 5607 3740 L
-5607 3740 mt 5599 3732 L
-5599 3732 mt 5577 3712 L
-5577 3712 mt 5564 3700 L
-5564 3700 mt 5547 3685 L
-5547 3685 mt 5529 3670 L
-5529 3670 mt 5515 3657 L
-5515 3657 mt 5494 3639 L
-5494 3639 mt 5483 3630 L
-5483 3630 mt 5459 3607 L
-5459 3607 mt 5454 3602 L
-5454 3602 mt 5427 3575 L
-5427 3575 mt 5425 3572 L
-5425 3572 mt 5402 3547 L
-5402 3547 mt 5390 3533 L
-5390 3533 mt 5377 3519 L
-5377 3519 mt 5355 3494 L
-5355 3494 mt 5353 3492 L
-5353 3492 mt 5328 3464 L
-5328 3464 mt 5320 3454 L
-5320 3454 mt 5304 3437 L
-5304 3437 mt 5285 3414 L
-5285 3414 mt 5281 3409 L
-5281 3409 mt 5258 3382 L
-5258 3382 mt 5250 3372 L
-5250 3372 mt 5236 3354 L
-5236 3354 mt 5217 3327 L
-5217 3327 mt 5215 3325 L
-5215 3325 mt 5196 3299 L
-5196 3299 mt 5181 3278 L
-5181 3278 mt 5175 3272 L
-5175 3272 mt 5153 3244 L
-5153 3244 mt 5146 3235 L
-5146 3235 mt 5130 3217 L
-5130 3217 mt 5111 3196 L
-5111 3196 mt 5104 3189 L
-5104 3189 mt 5076 3162 L
-5076 3162 mt 5076 3161 L
-5076 3161 mt 5047 3134 L
-5047 3134 mt 5041 3129 L
-5041 3129 mt 5015 3107 L
-5015 3107 mt 5006 3100 L
-5006 3100 mt 4977 3079 L
-4977 3079 mt 4971 3076 L
-4971 3076 mt 4936 3056 L
-4936 3056 mt 4929 3052 L
-4929 3052 mt 4902 3037 L
-4902 3037 mt 4884 3024 L
-4884 3024 mt 4867 3012 L
-4867 3012 mt 4849 2997 L
-4849 2997 mt 4832 2982 L
-4832 2982 mt 4818 2969 L
-4818 2969 mt 4797 2952 L
-4797 2952 mt 4784 2942 L
-4784 2942 mt 4762 2923 L
-4762 2923 mt 4751 2914 L
-4751 2914 mt 4727 2894 L
-4727 2894 mt 4718 2887 L
-4718 2887 mt 4692 2863 L
-4692 2863 mt 4687 2859 L
-4687 2859 mt 4658 2832 L
-4658 2832 mt 4657 2831 L
-4657 2831 mt 4627 2804 L
-4627 2804 mt 4623 2801 L
-4623 2801 mt 4590 2777 L
-4590 2777 mt 4588 2775 L
-4588 2775 mt 4553 2751 L
-4553 2751 mt 4549 2749 L
-4549 2749 mt 4518 2731 L
-4518 2731 mt 4499 2722 L
-4499 2722 mt 4483 2714 L
-4483 2714 mt 4448 2698 L
-4448 2698 mt 4439 2694 L
-4439 2694 mt 4413 2683 L
-4413 2683 mt 4379 2668 L
-4379 2668 mt 4377 2667 L
-4377 2667 mt 4344 2651 L
-4344 2651 mt 4322 2639 L
-4322 2639 mt 4309 2631 L
-4309 2631 mt 4279 2612 L
-4279 2612 mt 4274 2608 L
-4274 2608 mt 4245 2584 L
-4245 2584 mt 4239 2579 L
-4239 2579 mt 4212 2557 L
-4212 2557 mt 4204 2551 L
-4204 2551 mt 4177 2529 L
-4177 2529 mt 4169 2523 L
-4169 2523 mt 4138 2502 L
-4138 2502 mt 4134 2499 L
-4134 2499 mt 4100 2478 L
-4100 2478 mt 4091 2474 L
-4091 2474 mt 4065 2461 L
-4065 2461 mt 4031 2446 L
-4031 2446 mt 4030 2446 L
-4030 2446 mt 3995 2432 L
-3995 2432 mt 3961 2419 L
-3961 2419 mt 3960 2419 L
-3960 2419 mt 3925 2406 L
-3925 2406 mt 3890 2393 L
-3890 2393 mt 3886 2391 L
-3886 2391 mt 3855 2380 L
-3855 2380 mt 3821 2366 L
-3821 2366 mt 3814 2364 L
-3814 2364 mt 3786 2352 L
-3786 2352 mt 3752 2336 L
-3752 2336 mt 3751 2336 L
-3751 2336 mt 3716 2333 L
-3716 2333 mt 3696 2336 L
-3696 2336 mt 3681 2342 L
-3681 2342 mt 3649 2364 L
-3649 2364 mt 3646 2366 L
-3646 2366 mt 3617 2391 L
-3617 2391 mt 3611 2397 L
-3611 2397 mt 3582 2419 L
-3582 2419 mt 3577 2423 L
-3577 2423 mt 3542 2445 L
-3542 2445 mt 3538 2446 L
-3538 2446 mt 3507 2457 L
-3507 2457 mt 3472 2469 L
-3472 2469 mt 3455 2474 L
-3455 2474 mt 3437 2479 L
-3437 2479 mt 3402 2489 L
-3402 2489 mt 3367 2500 L
-3367 2500 mt 3362 2502 L
-3362 2502 mt 3332 2511 L
-3332 2511 mt 3298 2523 L
-3298 2523 mt 3280 2529 L
-3280 2529 mt 3263 2535 L
-3263 2535 mt 3228 2548 L
-3228 2548 mt 3205 2557 L
-3205 2557 mt 3193 2561 L
-3193 2561 mt 3158 2575 L
-3158 2575 mt 3135 2584 L
-3135 2584 mt 3123 2589 L
-3123 2589 mt 3088 2602 L
-3088 2602 mt 3065 2612 L
-3065 2612 mt 3053 2616 L
-3053 2616 mt 3019 2630 L
-3019 2630 mt 2997 2639 L
-2997 2639 mt 2984 2644 L
-2984 2644 mt 2949 2661 L
-2949 2661 mt 2939 2667 L
-2939 2667 mt 2914 2680 L
-2914 2680 mt 2892 2694 L
-2892 2694 mt 2879 2703 L
-2879 2703 mt 2857 2722 L
-2857 2722 mt 2844 2734 L
-2844 2734 mt 2832 2749 L
-2832 2749 mt 2816 2777 L
-2816 2777 mt 2809 2796 L
-2809 2796 mt 2807 2804 L
-2807 2804 mt 2804 2832 L
-2804 2832 mt 2805 2859 L
-2805 2859 mt 2809 2887 L
-2809 2887 mt 2809 2889 L
-2809 2889 mt 2815 2914 L
-2815 2914 mt 2823 2942 L
-2823 2942 mt 2830 2969 L
-2830 2969 mt 2836 2997 L
-2836 2997 mt 2843 3024 L
-2843 3024 mt 2844 3029 L
-2844 3029 mt 2852 3052 L
-2852 3052 mt 2869 3079 L
-2869 3079 mt 2879 3090 L
-2879 3090 mt 2897 3107 L
-2897 3107 mt 2914 3119 L
-2914 3119 mt 2934 3134 L
-2934 3134 mt 2949 3143 L
-2949 3143 mt 2975 3162 L
-2975 3162 mt 2984 3167 L
-2984 3167 mt 3017 3189 L
-3017 3189 mt 3019 3190 L
-3019 3190 mt 3053 3213 L
-3053 3213 mt 3059 3217 L
-3059 3217 mt 3088 3238 L
-3088 3238 mt 3097 3244 L
-3097 3244 mt 3123 3265 L
-3123 3265 mt 3133 3272 L
-3133 3272 mt 3158 3290 L
-3158 3290 mt 3172 3299 L
-3172 3299 mt 3193 3314 L
-3193 3314 mt 3213 3327 L
-3213 3327 mt 3228 3336 L
-3228 3336 mt 3258 3354 L
-3258 3354 mt 3263 3357 L
-3263 3357 mt 3298 3378 L
-3298 3378 mt 3303 3382 L
-3303 3382 mt 3332 3402 L
-3332 3402 mt 3342 3409 L
-3342 3409 mt 3367 3428 L
-3367 3428 mt 3379 3437 L
-3379 3437 mt 3402 3457 L
-3402 3457 mt 3410 3464 L
-3410 3464 mt 3436 3492 L
-3436 3492 mt 3437 3494 L
-3437 3494 mt 3459 3519 L
-3459 3519 mt 3472 3536 L
-3472 3536 mt 3481 3547 L
-3481 3547 mt 3501 3575 L
-3501 3575 mt 3507 3581 L
-3507 3581 mt 3519 3602 L
-3519 3602 mt 3542 3629 L
-3542 3629 mt 3542 3630 L
-3542 3630 mt 3562 3657 L
-3562 3657 mt 3577 3679 L
-3577 3679 mt 3580 3685 L
-3580 3685 mt 3584 3712 L
-3584 3712 mt 3577 3740 L
-3577 3740 mt 3577 3740 L
-3577 3740 mt 3555 3767 L
-3555 3767 mt 3542 3781 L
-3542 3781 mt 3527 3795 L
-3527 3795 mt 3507 3816 L
-3507 3816 mt 3502 3822 L
-3502 3822 mt 3481 3850 L
-3481 3850 mt 3472 3862 L
-3472 3862 mt 3463 3877 L
-3463 3877 mt 3449 3905 L
-3449 3905 mt 3438 3932 L
-3438 3932 mt 3437 3934 L
-3437 3934 mt 3427 3960 L
-3427 3960 mt 3428 3987 L
-3428 3987 mt 3437 4002 L
-3437 4002 mt 3446 4015 L
-3446 4015 mt 3472 4035 L
-3472 4035 mt 3484 4042 L
-3484 4042 mt 3507 4053 L
-3507 4053 mt 3542 4070 L
-3542 4070 mt 3542 4070 L
-3542 4070 mt 3577 4087 L
-3577 4087 mt 3594 4097 L
-3594 4097 mt 3611 4112 L
-3611 4112 mt 3625 4125 L
-3625 4125 mt 3640 4152 L
-3640 4152 mt 3641 4180 L
-3641 4180 mt 3627 4207 L
-3627 4207 mt 3611 4220 L
-3611 4220 mt 3593 4235 L
-3593 4235 mt 3577 4244 L
-3577 4244 mt 3542 4261 L
-3542 4261 mt 3539 4262 L
-3539 4262 mt 3507 4285 L
-3507 4285 mt 3501 4290 L
-3501 4290 mt 3479 4317 L
-3479 4317 mt 3472 4341 L
-3472 4341 mt 3471 4345 L
-3471 4345 mt 3472 4350 L
-3472 4350 mt 3477 4372 L
-3477 4372 mt 3501 4400 L
-3501 4400 mt 3507 4404 L
-3507 4404 mt 3536 4427 L
-3536 4427 mt 3542 4432 L
-3542 4432 mt 3577 4455 L
-3577 4455 mt 3577 4455 L
-3577 4455 mt 3608 4482 L
-3608 4482 mt 3611 4487 L
-3611 4487 mt 3626 4510 L
-3626 4510 mt 3639 4537 L
-3639 4537 mt 3646 4563 L
-3646 4563 mt 3647 4565 L
-3647 4565 mt 3651 4592 L
-3651 4592 mt 3646 4610 L
-3646 4610 mt 3644 4620 L
-3644 4620 mt 3629 4648 L
-3629 4648 mt 3611 4673 L
-3611 4673 mt 3610 4675 L
-3610 4675 mt 3586 4703 L
-3586 4703 mt 3577 4713 L
-3577 4713 mt 3559 4730 L
-3559 4730 mt 3542 4746 L
-3542 4746 mt 3527 4758 L
-3527 4758 mt 3507 4774 L
-3507 4774 mt 3491 4785 L
-3491 4785 mt 3472 4798 L
-3472 4798 mt 3449 4813 L
-3449 4813 mt 3437 4820 L
-3437 4820 mt 3403 4840 L
-3403 4840 mt 3402 4841 L
-3402 4841 mt 3367 4859 L
-3367 4859 mt 3351 4868 L
-3351 4868 mt 3332 4877 L
-3332 4877 mt 3298 4893 L
-3298 4893 mt 3293 4895 L
-3293 4895 mt 3263 4908 L
-3263 4908 mt 3228 4922 L
-3228 4922 mt 3226 4923 L
-3226 4923 mt 3193 4935 L
-3193 4935 mt 3158 4947 L
-3158 4947 mt 3150 4950 L
-3150 4950 mt 3123 4959 L
-3123 4959 mt 3088 4970 L
-3088 4970 mt 3063 4978 L
-3063 4978 mt 3053 4981 L
-3053 4981 mt 3019 4990 L
-3019 4990 mt 2984 4999 L
-2984 4999 mt 2959 5005 L
-2959 5005 mt 2949 5008 L
-2949 5008 mt 2914 5015 L
-2914 5015 mt 2879 5022 L
-2879 5022 mt 2844 5029 L
-2844 5029 mt 2819 5033 L
-2819 5033 mt 2809 5034 L
-2809 5034 mt 2774 5040 L
-2774 5040 mt 2740 5044 L
-2740 5044 mt 2705 5048 L
-2705 5048 mt 2670 5052 L
-2670 5052 mt 2635 5055 L
-2635 5055 mt 2600 5057 L
-2600 5057 mt 2565 5059 L
-2565 5059 mt 2535 5060 L
-2535 5060 mt 2530 5060 L
-2530 5060 mt 2496 5061 L
-2496 5061 mt 2461 5061 L
-2461 5061 mt 2426 5061 L
-2426 5061 mt 2397 5060 L
-2397 5060 mt 2391 5060 L
-2391 5060 mt 2356 5059 L
-2356 5059 mt 2321 5057 L
-2321 5057 mt 2286 5054 L
-2286 5054 mt 2251 5051 L
-2251 5051 mt 2217 5047 L
-2217 5047 mt 2182 5042 L
-2182 5042 mt 2147 5037 L
-2147 5037 mt 2123 5033 L
-2123 5033 mt 2112 5031 L
-2112 5031 mt 2077 5024 L
-2077 5024 mt 2042 5017 L
-2042 5017 mt 2007 5009 L
-2007 5009 mt 1994 5005 L
-1994 5005 mt 1972 5000 L
-1972 5000 mt 1938 4990 L
-1938 4990 mt 1903 4980 L
-1903 4980 mt 1895 4978 L
-1895 4978 mt 1868 4969 L
-1868 4969 mt 1833 4957 L
-1833 4957 mt 1814 4950 L
-1814 4950 mt 1798 4944 L
-1798 4944 mt 1763 4930 L
-1763 4930 mt 1748 4923 L
-1748 4923 mt 1728 4914 L
-1728 4914 mt 1694 4896 L
-1694 4896 mt 1692 4895 L
-1692 4895 mt 1659 4877 L
-1659 4877 mt 1644 4868 L
-1644 4868 mt 1624 4855 L
-1624 4855 mt 1602 4840 L
-1602 4840 mt 1589 4831 L
-1589 4831 mt 1564 4813 L
-1564 4813 mt 1554 4804 L
-1554 4804 mt 1531 4785 L
-1531 4785 mt 1519 4774 L
-1519 4774 mt 1501 4758 L
-1501 4758 mt 1484 4740 L
-1484 4740 mt 1475 4730 L
-1475 4730 mt 1451 4703 L
-1451 4703 mt 1449 4701 L
-1449 4701 mt 1429 4675 L
-1429 4675 mt 1415 4656 L
-1415 4656 mt 1408 4648 L
-1408 4648 mt 1390 4620 L
-1390 4620 mt 1380 4604 L
-1380 4604 mt 1373 4592 L
-1373 4592 mt 1356 4565 L
-1356 4565 mt 1345 4545 L
-1345 4545 mt 1341 4537 L
-1341 4537 mt 1326 4510 L
-1326 4510 mt 1312 4482 L
-1312 4482 mt 1310 4478 L
-1310 4478 mt 1299 4455 L
-1299 4455 mt 1286 4427 L
-1286 4427 mt 1275 4401 L
-1275 4401 mt 1275 4400 L
-1275 4400 mt 1264 4372 L
-1264 4372 mt 1254 4345 L
-1254 4345 mt 1245 4317 L
-1245 4317 mt 1240 4301 L
-1240 4301 mt 1237 4290 L
-1237 4290 mt 1230 4262 L
-1230 4262 mt 1223 4235 L
-1223 4235 mt 1218 4207 L
-1218 4207 mt 1213 4180 L
-1213 4180 mt 1209 4152 L
-1209 4152 mt 1206 4125 L
-1206 4125 mt 1205 4114 L
-1205 4114 mt 1204 4097 L
-1204 4097 mt 1202 4070 L
-1202 4070 mt 1200 4042 L
-1200 4042 mt 1199 4015 L
-1199 4015 mt 1199 3987 L
-1199 3987 mt 1198 3960 L
-1198 3960 mt 1198 3932 L
-1198 3932 mt 1197 3905 L
-1197 3905 mt 1196 3877 L
-1196 3877 mt 1195 3850 L
-1195 3850 mt 1193 3822 L
-1193 3822 mt 1190 3795 L
-1190 3795 mt 1186 3767 L
-1186 3767 mt 1180 3740 L
-1180 3740 mt 1173 3712 L
-1173 3712 mt 1170 3706 L
-1170 3706 mt 1163 3685 L
-1163 3685 mt 1151 3657 L
-1151 3657 mt 1136 3630 L
-1136 3630 mt 1136 3629 L
-1136 3629 mt 1119 3602 L
-1119 3602 mt 1101 3578 L
-1101 3578 mt 1098 3575 L
-1098 3575 mt 1075 3547 L
-1075 3547 mt 1066 3538 L
-1066 3538 mt 1048 3519 L
-1048 3519 mt 1031 3504 L
-1031 3504 mt 1018 3492 L
-1018 3492 mt 996 3474 L
- 996 3474 mt 984 3464 L
- 984 3464 mt 961 3447 L
- 961 3447 mt 949 3437 L
- 949 3437 mt 926 3420 L
- 926 3420 mt 912 3409 L
- 912 3409 mt 892 3395 L
- 892 3395 mt 874 3382 L
- 874 3382 mt 857 3370 L
- 857 3370 mt 835 3354 L
- 835 3354 mt 822 3346 L
- 822 3346 mt 795 3327 L
- 795 3327 mt 787 3321 L
- 787 3321 mt 756 3299 L
- 756 3299 mt 752 3297 L
- 752 3297 mt 717 3272 L
- 717 3272 mt 717 3272 L
- 717 3272 mt 682 3247 L
- 682 3247 mt 678 3244 L
- 678 3244 mt 647 3222 L
- 647 3222 mt 641 3217 L
- 641 3217 mt 613 3196 L
- 613 3196 mt 604 3189 L
- 604 3189 mt 578 3169 L
- 578 3169 mt 569 3162 L
- 569 3162 mt 543 3141 L
- 543 3141 mt 534 3134 L
- 534 3134 mt 508 3113 L
- 508 3113 mt 501 3107 L
- 501 3107 mt 473 3083 L
- 473 3083 mt 469 3079 L
- 469 3079 mt 439 3052 L
- 439 3052 mt 438 3051 L
- 438 3051 mt 410 3024 L
- 410 3024 mt 403 3017 L
- 403 3017 mt 383 2997 L
- 383 2997 mt 368 2981 L
- 368 2981 mt 357 2969 L
- 357 2969 mt 334 2942 L
- 334 2942 mt 333 2942 L
- 333 2942 mt 310 2914 L
- 310 2914 mt 299 2900 L
- 299 2900 mt 288 2887 L
- 288 2887 mt 268 2859 L
- 268 2859 mt 264 2854 L
- 264 2854 mt 248 2832 L
- 248 2832 mt 230 2804 L
- 230 2804 mt 229 2803 L
- 229 2803 mt 212 2777 L
- 212 2777 mt 196 2749 L
- 196 2749 mt 194 2746 L
- 194 2746 mt 180 2722 L
- 180 2722 mt 165 2694 L
- 165 2694 mt 159 2682 L
- 159 2682 mt 151 2667 L
- 151 2667 mt 139 2639 L
- 139 2639 mt 127 2612 L
- 127 2612 mt 124 2604 L
- 124 2604 mt 117 2584 L
- 117 2584 mt 107 2557 L
- 107 2557 mt 99 2529 L
- 99 2529 mt 92 2502 L
- 92 2502 mt 90 2490 L
- 90 2490 mt 86 2474 L
- 86 2474 mt 81 2446 L
- 81 2446 mt 76 2419 L
- 76 2419 mt 73 2391 L
- 73 2391 mt 70 2364 L
- 70 2364 mt 68 2336 L
- 68 2336 mt 67 2309 L
- 67 2309 mt 66 2281 L
- 66 2281 mt 66 2254 L
- 66 2254 mt 67 2226 L
- 67 2226 mt 68 2199 L
- 68 2199 mt 69 2171 L
- 69 2171 mt 71 2144 L
- 71 2144 mt 74 2116 L
- 74 2116 mt 77 2089 L
- 77 2089 mt 81 2061 L
- 81 2061 mt 86 2034 L
- 86 2034 mt 90 2013 L
- 90 2013 mt 91 2006 L
- 91 2006 mt 96 1979 L
- 96 1979 mt 102 1951 L
- 102 1951 mt 109 1924 L
- 109 1924 mt 116 1896 L
- 116 1896 mt 123 1869 L
- 123 1869 mt 124 1864 L
- 124 1864 mt 130 1841 L
- 130 1841 mt 138 1814 L
- 138 1814 mt 145 1786 L
- 145 1786 mt 153 1759 L
- 153 1759 mt 159 1736 L
- 159 1736 mt 161 1731 L
- 161 1731 mt 168 1704 L
- 168 1704 mt 176 1676 L
- 176 1676 mt 183 1649 L
- 183 1649 mt 190 1621 L
- 190 1621 mt 194 1606 L
- 194 1606 mt 197 1594 L
- 197 1594 mt 204 1566 L
- 204 1566 mt 210 1539 L
- 210 1539 mt 217 1511 L
- 217 1511 mt 223 1484 L
- 223 1484 mt 229 1459 L
- 229 1459 mt 230 1456 L
- 230 1456 mt 236 1428 L
- 236 1428 mt 242 1401 L
- 242 1401 mt 249 1373 L
- 249 1373 mt 255 1346 L
- 255 1346 mt 262 1318 L
- 262 1318 mt 264 1311 L
- 264 1311 mt 269 1291 L
- 269 1291 mt 276 1263 L
- 276 1263 mt 283 1236 L
- 283 1236 mt 291 1208 L
- 291 1208 mt 299 1181 L
- 299 1181 mt 299 1180 L
- 299 1180 mt 307 1153 L
- 307 1153 mt 316 1126 L
- 316 1126 mt 325 1098 L
- 325 1098 mt 334 1074 L
- 334 1074 mt 335 1071 L
- 335 1071 mt 345 1043 L
- 345 1043 mt 356 1016 L
- 356 1016 mt 367 988 L
- 367 988 mt 368 986 L
- 368 986 mt 379 961 L
- 379 961 mt 392 933 L
- 392 933 mt 403 909 L
- 403 909 mt 405 906 L
- 405 906 mt 419 878 L
- 419 878 mt 433 851 L
- 433 851 mt 438 841 L
- 438 841 mt 448 823 L
- 448 823 mt 463 796 L
- 463 796 mt 473 779 L
- 473 779 mt 479 768 L
- 479 768 mt 496 741 L
- 496 741 mt 508 722 L
- 508 722 mt 514 713 L
- 514 713 mt 532 686 L
- 532 686 mt 543 670 L
- 543 670 mt 551 658 L
- 551 658 mt 570 631 L
- 570 631 mt 578 621 L
- 578 621 mt 591 603 L
- 591 603 mt 612 576 L
- 612 576 mt 613 575 L
- 613 575 mt 633 548 L
- 633 548 mt 647 531 L
- 647 531 mt 656 521 L
- 656 521 mt 679 493 L
- 679 493 mt 682 489 L
- 682 489 mt 703 466 L
- 703 466 mt 717 451 L
- 717 451 mt 729 438 L
- 729 438 mt 752 415 L
- 752 415 mt 756 411 L
- 756 411 mt 785 383 L
- 785 383 mt 787 381 L
- 787 381 mt 816 355 L
- 816 355 mt 822 351 L
- 822 351 mt 850 328 L
- 850 328 mt 857 322 L
- 857 322 mt 886 300 L
- 886 300 mt 892 296 L
- 892 296 mt 925 273 L
- 925 273 mt 926 272 L
- 926 272 mt 961 250 L
- 961 250 mt 968 245 L
- 968 245 mt 996 229 L
- 996 229 mt 1015 218 L
-1015 218 mt 1031 209 L
-1031 209 mt 1066 191 L
-1066 191 mt 1066 190 L
-1066 190 mt 1101 173 L
-1101 173 mt 1123 163 L
-1123 163 mt 1136 157 L
-1136 157 mt 1170 142 L
-1170 142 mt 1187 135 L
-1187 135 mt 1205 128 L
-1205 128 mt 1240 115 L
-1240 115 mt 1260 108 L
-1260 108 mt 1275 102 L
-1275 102 mt 1310 90 L
-1310 90 mt 1341 80 L
-1341 80 mt 1345 79 L
-1345 79 mt 1380 68 L
-1380 68 mt 1415 58 L
-1415 58 mt 1434 53 L
-1434 53 mt 1449 48 L
-1449 48 mt 1484 39 L
-1484 39 mt 1519 30 L
-1519 30 mt 1538 25 L
-1538 25 mt 1554 21 L
-1554 21 mt 1589 13 L
-1589 13 mt 1624 5 L
-1624 5 mt 1654 -1 L
-1654 -1 mt 1659 -2 L
-1659 -2 mt 1694 -10 L
-1694 -10 mt 1728 -17 L
-1728 -17 mt 1763 -25 L
-1763 -25 mt 1783 -29 L
-1783 -29 mt 1798 -32 L
-1798 -32 mt 1833 -39 L
-1833 -39 mt 1868 -46 L
-1868 -46 mt 1903 -52 L
-1903 -52 mt 1924 -56 L
-1924 -56 mt 1938 -59 L
-1938 -59 mt 1972 -65 L
-1972 -65 mt 2007 -72 L
-2007 -72 mt 2042 -78 L
-2042 -78 mt 2075 -84 L
-2075 -84 mt 2077 -84 L
-2077 -84 mt 2112 -90 L
-2112 -90 mt 2147 -96 L
-2147 -96 mt 2182 -102 L
-2182 -102 mt 2217 -108 L
-2217 -108 mt 2237 -111 L
-2237 -111 mt 2251 -114 L
-2251 -114 mt 2286 -120 L
-2286 -120 mt 2321 -126 L
-2321 -126 mt 2356 -133 L
-2356 -133 mt 2389 -139 L
-2389 -139 mt 2391 -139 L
-2391 -139 mt 2426 -146 L
-2426 -146 mt 2461 -152 L
-2461 -152 mt 2496 -158 L
-2496 -158 mt 2530 -164 L
-2530 -164 mt 2542 -166 L
-2542 -166 mt 2565 -170 L
-2565 -170 mt 2600 -176 L
-2600 -176 mt 2635 -182 L
-2635 -182 mt 2670 -188 L
-2670 -188 mt 2702 -194 L
-2702 -194 mt 2705 -194 L
-2705 -194 mt 2740 -200 L
-2740 -200 mt 2774 -206 L
-2774 -206 mt 2809 -212 L
-2809 -212 mt 2844 -217 L
-2844 -217 mt 2869 -221 L
-2869 -221 mt 2879 -223 L
-2879 -223 mt 2914 -229 L
-2914 -229 mt 2949 -234 L
-2949 -234 mt 2984 -240 L
-2984 -240 mt 3019 -245 L
-3019 -245 mt 3041 -249 L
-3041 -249 mt 3053 -251 L
-3053 -251 mt 3088 -256 L
-3088 -256 mt 3123 -262 L
-3123 -262 mt 3158 -267 L
-3158 -267 mt 3193 -272 L
-3193 -272 mt 3220 -276 L
-3220 -276 mt 3228 -277 L
-3228 -277 mt 3263 -283 L
-3263 -283 mt 3298 -287 L
-3298 -287 mt 3332 -292 L
-3332 -292 mt 3367 -296 L
-3367 -296 mt 3402 -301 L
-3402 -301 mt 3432 -304 L
-3432 -304 mt 3437 -304 L
-3437 -304 mt 3472 -308 L
-3472 -308 mt 3507 -312 L
-3507 -312 mt 3542 -315 L
-3542 -315 mt 3577 -318 L
-3577 -318 mt 3611 -321 L
-3611 -321 mt 3646 -323 L
-3646 -323 mt 3681 -325 L
-3681 -325 mt 3716 -327 L
-3716 -327 mt 3751 -329 L
-3751 -329 mt 3786 -330 L
-3786 -330 mt 3818 -331 L
-3818 -331 mt 3821 -331 L
-3821 -331 mt 3855 -332 L
-3855 -332 mt 3890 -333 L
-3890 -333 mt 3925 -334 L
-3925 -334 mt 3960 -334 L
-3960 -334 mt 3995 -334 L
-3995 -334 mt 4030 -334 L
-4030 -334 mt 4065 -334 L
-4065 -334 mt 4100 -333 L
-4100 -333 mt 4134 -332 L
-4134 -332 mt 4154 -331 L
-4154 -331 mt 4169 -331 L
-4169 -331 mt 4204 -329 L
-4204 -329 mt 4239 -327 L
-4239 -327 mt 4274 -325 L
-4274 -325 mt 4309 -323 L
-4309 -323 mt 4344 -320 L
-4344 -320 mt 4379 -317 L
-4379 -317 mt 4413 -313 L
-4413 -313 mt 4448 -309 L
-4448 -309 mt 4483 -305 L
-4483 -305 mt 4493 -304 L
-4493 -304 mt 4518 -301 L
-4518 -301 mt 4553 -296 L
-4553 -296 mt 4588 -290 L
-4588 -290 mt 4623 -284 L
-4623 -284 mt 4657 -278 L
-4657 -278 mt 4666 -276 L
-4666 -276 mt 4692 -271 L
-4692 -271 mt 4727 -264 L
-4727 -264 mt 4762 -257 L
-4762 -257 mt 4797 -249 L
-4797 -249 mt 4797 -249 L
-4797 -249 mt 4832 -241 L
-4832 -241 mt 4867 -232 L
-4867 -232 mt 4902 -223 L
-4902 -223 mt 4907 -221 L
-4907 -221 mt 4936 -213 L
-4936 -213 mt 4971 -203 L
-4971 -203 mt 5003 -194 L
-5003 -194 mt 5006 -193 L
-5006 -193 mt 5041 -182 L
-5041 -182 mt 5076 -171 L
-5076 -171 mt 5090 -166 L
-5090 -166 mt 5111 -159 L
-5111 -159 mt 5146 -148 L
-5146 -148 mt 5170 -139 L
-5170 -139 mt 5181 -135 L
-5181 -135 mt 5215 -123 L
-5215 -123 mt 5245 -111 L
-5245 -111 mt 5250 -109 L
-5250 -109 mt 5285 -95 L
-5285 -95 mt 5313 -84 L
-5313 -84 mt 5320 -81 L
-5320 -81 mt 5355 -66 L
-5355 -66 mt 5376 -56 L
-5376 -56 mt 5390 -50 L
-5390 -50 mt 5425 -34 L
-5425 -34 mt 5434 -29 L
-5434 -29 mt 5459 -16 L
-5459 -16 mt 5488 -1 L
-5488 -1 mt 5494 1 L
-5494 1 mt 5529 20 L
-5529 20 mt 5539 25 L
-5539 25 mt 5564 40 L
-5564 40 mt 5586 53 L
-5586 53 mt 5599 61 L
-5599 61 mt 5630 80 L
-5630 80 mt 5634 83 L
-5634 83 mt 5669 106 L
-5669 106 mt 5672 108 L
-5672 108 mt 5704 130 L
-5704 130 mt 5711 135 L
-5711 135 mt 5738 155 L
-5738 155 mt 5749 163 L
-5749 163 mt 5773 181 L
-5773 181 mt 5786 190 L
-5786 190 mt 5808 208 L
-5808 208 mt 5821 218 L
-5821 218 mt 5843 236 L
-5843 236 mt 5855 245 L
-5855 245 mt 5878 265 L
-5878 265 mt 5888 273 L
-5888 273 mt 5913 295 L
-5913 295 mt 5919 300 L
-5919 300 mt 5948 325 L
-5948 325 mt 5951 328 L
-5951 328 mt 5981 355 L
-5981 355 mt 5983 357 L
-5983 357 mt 6010 383 L
-6010 383 mt 6017 390 L
-6017 390 mt 6040 411 L
-6040 411 mt 6052 423 L
-6052 423 mt 6068 438 L
-6068 438 mt 6087 456 L
-6087 456 mt 6097 466 L
-6097 466 mt 6122 490 L
-6122 490 mt 6126 493 L
-6126 493 mt 6154 521 L
-6154 521 mt 6157 523 L
-6157 523 mt 6183 548 L
-6183 548 mt 6192 557 L
-6192 557 mt 6211 576 L
-6211 576 mt 6227 590 L
-6227 590 mt 6240 603 L
-6240 603 mt 6261 624 L
-6261 624 mt 6268 631 L
-6268 631 mt 6296 658 L
-6296 658 mt 6296 658 L
-6296 658 mt 6325 686 L
-6325 686 mt 6331 692 L
-6331 692 mt 6353 713 L
-6353 713 mt 6366 726 L
-6366 726 mt 6381 741 L
-6381 741 mt 6401 761 L
-6401 761 mt 6409 768 L
-6409 768 mt 6436 795 L
-6436 795 mt 6437 796 L
-6437 796 mt 6465 823 L
-6465 823 mt 6471 829 L
-6471 829 mt 6493 851 L
-6493 851 mt 6506 863 L
-6506 863 mt 6521 878 L
-6521 878 mt 6540 898 L
-6540 898 mt 6548 906 L
-6548 906 mt 6575 933 L
-6575 933 mt 6575 933 L
-6575 933 mt 6602 961 L
-6602 961 mt 6610 969 L
-6610 969 mt 6629 988 L
-6629 988 mt 6645 1006 L
-6645 1006 mt 6655 1016 L
-6655 1016 mt 6680 1043 L
-6680 1043 mt 6680 1043 L
-6680 1043 mt 6705 1071 L
-6705 1071 mt 6715 1081 L
-6715 1081 mt 6730 1098 L
-6730 1098 mt 6750 1121 L
-6750 1121 mt 6754 1126 L
-6754 1126 mt 6778 1153 L
-6778 1153 mt 6785 1161 L
-6785 1161 mt 6801 1181 L
-6801 1181 mt 6819 1203 L
-6819 1203 mt 6824 1208 L
-6824 1208 mt 6847 1236 L
-6847 1236 mt 6854 1245 L
-6854 1245 mt 6869 1263 L
-6869 1263 mt 6889 1290 L
-6889 1290 mt 6890 1291 L
-6890 1291 mt 6911 1318 L
-6911 1318 mt 6924 1336 L
-6924 1336 mt 6931 1346 L
-6931 1346 mt 6951 1373 L
-6951 1373 mt 6959 1384 L
-6959 1384 mt 6971 1401 L
-6971 1401 mt 6990 1428 L
-6990 1428 mt 6994 1435 L
-6994 1435 mt 7008 1456 L
-7008 1456 mt 7026 1484 L
-7026 1484 mt 7029 1488 L
-7029 1488 mt 7043 1511 L
-7043 1511 mt 7060 1539 L
-7060 1539 mt 7063 1545 L
-7063 1545 mt 7076 1566 L
-7076 1566 mt 7091 1594 L
-7091 1594 mt 7098 1607 L
-7098 1607 mt 7106 1621 L
-7106 1621 mt 7121 1649 L
-7121 1649 mt 7133 1674 L
-7133 1674 mt 7134 1676 L
-7134 1676 mt 7147 1704 L
-7147 1704 mt 7159 1731 L
-7159 1731 mt 7168 1753 L
-7168 1753 mt 7170 1759 L
-7170 1759 mt 7181 1786 L
-7181 1786 mt 7191 1814 L
-7191 1814 mt 7200 1841 L
-7200 1841 mt 7203 1853 L
-7203 1853 mt 7208 1869 L
-7208 1869 mt 7215 1896 L
-7215 1896 mt 7221 1924 L
-7221 1924 mt 7227 1951 L
-7227 1951 mt 7232 1979 L
-7232 1979 mt 7235 2006 L
-7235 2006 mt 7238 2031 L
-7168 2056 mt 7168 2061 L
-7168 2061 mt 7169 2089 L
-7169 2089 mt 7170 2116 L
-7170 2116 mt 7169 2144 L
-7169 2144 mt 7168 2171 L
-7168 2171 mt 7168 2178 L
-7168 2178 mt 7167 2199 L
-7167 2199 mt 7165 2226 L
-7165 2226 mt 7162 2254 L
-7162 2254 mt 7159 2281 L
-7159 2281 mt 7155 2309 L
-7155 2309 mt 7151 2336 L
-7151 2336 mt 7147 2364 L
-7147 2364 mt 7142 2391 L
-7142 2391 mt 7136 2419 L
-7136 2419 mt 7133 2432 L
-7133 2432 mt 7130 2446 L
-7130 2446 mt 7124 2474 L
-7124 2474 mt 7118 2502 L
-7118 2502 mt 7111 2529 L
-7111 2529 mt 7103 2557 L
-7103 2557 mt 7098 2573 L
-7098 2573 mt 7095 2584 L
-7095 2584 mt 7087 2612 L
-7087 2612 mt 7079 2639 L
-7079 2639 mt 7071 2667 L
-7071 2667 mt 7063 2689 L
-7063 2689 mt 7062 2694 L
-7062 2694 mt 7053 2722 L
-7053 2722 mt 7044 2749 L
-7044 2749 mt 7035 2777 L
-7035 2777 mt 7029 2796 L
-7029 2796 mt 7026 2804 L
-7026 2804 mt 7017 2832 L
-7017 2832 mt 7007 2859 L
-7007 2859 mt 6997 2887 L
-6997 2887 mt 6994 2897 L
-6994 2897 mt 6988 2914 L
-6988 2914 mt 6978 2942 L
-6978 2942 mt 6968 2969 L
-6968 2969 mt 6959 2993 L
-6959 2993 mt 6957 2997 L
-6957 2997 mt 6947 3024 L
-6947 3024 mt 6937 3052 L
-6937 3052 mt 6926 3079 L
-6926 3079 mt 6924 3084 L
-6924 3084 mt 6915 3107 L
-6915 3107 mt 6904 3134 L
-6904 3134 mt 6893 3162 L
-6893 3162 mt 6889 3173 L
-6889 3173 mt 6882 3189 L
-6882 3189 mt 6872 3217 L
-6872 3217 mt 6861 3244 L
-6861 3244 mt 6854 3261 L
-6854 3261 mt 6850 3272 L
-6850 3272 mt 6840 3299 L
-6840 3299 mt 6829 3327 L
-6829 3327 mt 6819 3352 L
-6819 3352 mt 6819 3354 L
-6819 3354 mt 6808 3382 L
-6808 3382 mt 6798 3409 L
-6798 3409 mt 6788 3437 L
-6788 3437 mt 6785 3445 L
-6785 3445 mt 6777 3464 L
-6777 3464 mt 6766 3492 L
-6766 3492 mt 6755 3519 L
-6755 3519 mt 6750 3534 L
-6750 3534 mt 6744 3547 L
-6744 3547 mt 6733 3575 L
-6733 3575 mt 6721 3602 L
-6721 3602 mt 6715 3617 L
-6715 3617 mt 6709 3630 L
-6709 3630 mt 6697 3657 L
-6697 3657 mt 6685 3685 L
-6685 3685 mt 6680 3697 L
-6680 3697 mt 6673 3712 L
-6673 3712 mt 6661 3740 L
-6661 3740 mt 6649 3767 L
-6649 3767 mt 6645 3775 L
-6645 3775 mt 6636 3795 L
-6636 3795 mt 6623 3822 L
-6623 3822 mt 6610 3849 L
-6610 3849 mt 6610 3850 L
-6610 3850 mt 6597 3877 L
-6597 3877 mt 6583 3905 L
-6583 3905 mt 6575 3920 L
-6575 3920 mt 6569 3932 L
-6569 3932 mt 6555 3960 L
-6555 3960 mt 6540 3986 L
-6540 3986 mt 6540 3987 L
-6540 3987 mt 6525 4015 L
-6525 4015 mt 6510 4042 L
-6510 4042 mt 6506 4050 L
-6506 4050 mt 6495 4070 L
-6495 4070 mt 6479 4097 L
-6479 4097 mt 6471 4114 L
-6471 4114 mt 6465 4125 L
-6465 4125 mt 6451 4152 L
-6451 4152 mt 6437 4180 L
-6437 4180 mt 6436 4182 L
-6436 4182 mt 6424 4207 L
-6424 4207 mt 6411 4235 L
-6411 4235 mt 6401 4257 L
-6401 4257 mt 6399 4262 L
-6399 4262 mt 6386 4290 L
-6386 4290 mt 6375 4317 L
-6375 4317 mt 6366 4339 L
-6366 4339 mt 6364 4345 L
-6364 4345 mt 6353 4372 L
-6353 4372 mt 6343 4400 L
-6343 4400 mt 6332 4427 L
-6332 4427 mt 6331 4428 L
-6331 4428 mt 6318 4455 L
-6318 4455 mt 6301 4482 L
-6301 4482 mt 6296 4488 L
-6296 4488 mt 6278 4510 L
-6278 4510 mt 6261 4526 L
-6261 4526 mt 6249 4537 L
-6249 4537 mt 6227 4551 L
-6227 4551 mt 6192 4558 L
-6192 4558 mt 6157 4557 L
-6157 4557 mt 6122 4554 L
-6122 4554 mt 6087 4538 L
-6087 4538 mt 6086 4537 L
-6086 4537 mt 6068 4510 L
-6068 4510 mt 6064 4482 L
-6064 4482 mt 6065 4455 L
-6065 4455 mt 6068 4427 L
-6068 4427 mt 6071 4400 L
-6071 4400 mt 6070 4372 L
-6070 4372 mt 6066 4345 L
-6066 4345 mt 6060 4317 L
-6060 4317 mt 6052 4290 L
-6052 4290 mt 6052 4289 L
-6052 4289 mt 6045 4262 L
-6045 4262 mt 6038 4235 L
-6038 4235 mt 6032 4207 L
-6032 4207 mt 6026 4180 L
-6026 4180 mt 6019 4152 L
-6019 4152 mt 6017 4144 L
-6017 4144 mt 6012 4125 L
-6012 4125 mt 6003 4097 L
-6003 4097 mt 5992 4070 L
-5992 4070 mt 5983 4050 L
-5983 4050 mt 5978 4042 L
-5978 4042 mt 5961 4015 L
-5961 4015 mt 5948 3994 L
-5948 3994 mt 5943 3987 L
-5943 3987 mt 5922 3960 L
-5922 3960 mt 5913 3948 L
-5913 3948 mt 5900 3932 L
-5900 3932 mt 5879 3905 L
-5879 3905 mt 5878 3904 L
-5878 3904 mt 5858 3877 L
-5858 3877 mt 5843 3859 L
-5843 3859 mt 5835 3850 L
-5835 3850 mt 5810 3822 L
-5810 3822 mt 5808 3821 L
-5808 3821 mt 5780 3795 L
-5780 3795 mt 5773 3789 L
-5773 3789 mt 5747 3767 L
-5747 3767 mt 5738 3761 L
-5738 3761 mt 5712 3740 L
-5712 3740 mt 5704 3733 L
-5704 3733 mt 5677 3712 L
-5677 3712 mt 5669 3706 L
-5669 3706 mt 5641 3685 L
-5641 3685 mt 5634 3679 L
-5634 3679 mt 5606 3657 L
-5606 3657 mt 5599 3651 L
-5599 3651 mt 5573 3630 L
-5573 3630 mt 5564 3622 L
-5564 3622 mt 5541 3602 L
-5541 3602 mt 5529 3590 L
-5529 3590 mt 5513 3575 L
-5513 3575 mt 5494 3555 L
-5494 3555 mt 5487 3547 L
-5487 3547 mt 5463 3519 L
-5463 3519 mt 5459 3516 L
-5459 3516 mt 5439 3492 L
-5439 3492 mt 5425 3474 L
-5425 3474 mt 5417 3464 L
-5417 3464 mt 5396 3437 L
-5396 3437 mt 5390 3428 L
-5390 3428 mt 5377 3409 L
-5377 3409 mt 5358 3382 L
-5358 3382 mt 5355 3378 L
-5355 3378 mt 5338 3354 L
-5338 3354 mt 5320 3328 L
-5320 3328 mt 5319 3327 L
-5319 3327 mt 5302 3299 L
-5302 3299 mt 5286 3272 L
-5286 3272 mt 5285 3269 L
-5285 3269 mt 5270 3244 L
-5270 3244 mt 5251 3217 L
-5251 3217 mt 5250 3215 L
-5250 3215 mt 5230 3189 L
-5230 3189 mt 5215 3173 L
-5215 3173 mt 5205 3162 L
-5205 3162 mt 5181 3138 L
-5181 3138 mt 5177 3134 L
-5177 3134 mt 5148 3107 L
-5148 3107 mt 5146 3105 L
-5146 3105 mt 5116 3079 L
-5116 3079 mt 5111 3075 L
-5111 3075 mt 5079 3052 L
-5079 3052 mt 5076 3050 L
-5076 3050 mt 5041 3029 L
-5041 3029 mt 5032 3024 L
-5032 3024 mt 5006 3012 L
-5006 3012 mt 4976 2997 L
-4976 2997 mt 4971 2995 L
-4971 2995 mt 4936 2976 L
-4936 2976 mt 4925 2969 L
-4925 2969 mt 4902 2955 L
-4902 2955 mt 4882 2942 L
-4882 2942 mt 4867 2931 L
-4867 2931 mt 4845 2914 L
-4845 2914 mt 4832 2903 L
-4832 2903 mt 4813 2887 L
-4813 2887 mt 4797 2871 L
-4797 2871 mt 4785 2859 L
-4785 2859 mt 4762 2835 L
-4762 2835 mt 4759 2832 L
-4759 2832 mt 4733 2804 L
-4733 2804 mt 4727 2798 L
-4727 2798 mt 4705 2777 L
-4705 2777 mt 4692 2764 L
-4692 2764 mt 4675 2749 L
-4675 2749 mt 4657 2733 L
-4657 2733 mt 4645 2722 L
-4645 2722 mt 4623 2701 L
-4623 2701 mt 4615 2694 L
-4615 2694 mt 4588 2669 L
-4588 2669 mt 4584 2667 L
-4584 2667 mt 4553 2643 L
-4553 2643 mt 4546 2639 L
-4546 2639 mt 4518 2623 L
-4518 2623 mt 4495 2612 L
-4495 2612 mt 4483 2605 L
-4483 2605 mt 4448 2589 L
-4448 2589 mt 4438 2584 L
-4438 2584 mt 4413 2572 L
-4413 2572 mt 4387 2557 L
-4387 2557 mt 4379 2552 L
-4379 2552 mt 4344 2530 L
-4344 2530 mt 4343 2529 L
-4343 2529 mt 4309 2507 L
-4309 2507 mt 4301 2502 L
-4301 2502 mt 4274 2484 L
-4274 2484 mt 4258 2474 L
-4258 2474 mt 4239 2463 L
-4239 2463 mt 4210 2446 L
-4210 2446 mt 4204 2443 L
-4204 2443 mt 4169 2427 L
-4169 2427 mt 4151 2419 L
-4151 2419 mt 4134 2413 L
-4134 2413 mt 4100 2400 L
-4100 2400 mt 4078 2391 L
-4078 2391 mt 4065 2386 L
-4065 2386 mt 4030 2372 L
-4030 2372 mt 4011 2364 L
-4011 2364 mt 3995 2357 L
-3995 2357 mt 3960 2339 L
-3960 2339 mt 3955 2336 L
-3955 2336 mt 3925 2320 L
-3925 2320 mt 3904 2309 L
-3904 2309 mt 3890 2300 L
-3890 2300 mt 3856 2281 L
-3856 2281 mt 3855 2281 L
-3855 2281 mt 3821 2262 L
-3821 2262 mt 3804 2254 L
-3804 2254 mt 3786 2245 L
-3786 2245 mt 3751 2229 L
-3751 2229 mt 3744 2226 L
-3744 2226 mt 3716 2214 L
-3716 2214 mt 3681 2203 L
-3681 2203 mt 3659 2199 L
-3659 2199 mt 3646 2196 L
-3646 2196 mt 3611 2195 L
-3611 2195 mt 3588 2199 L
-3588 2199 mt 3577 2201 L
-3577 2201 mt 3542 2214 L
-3542 2214 mt 3515 2226 L
-3515 2226 mt 3507 2230 L
-3507 2230 mt 3472 2245 L
-3472 2245 mt 3449 2254 L
-3449 2254 mt 3437 2258 L
-3437 2258 mt 3402 2270 L
-3402 2270 mt 3367 2279 L
-3367 2279 mt 3354 2281 L
-3354 2281 mt 3332 2286 L
-3332 2286 mt 3298 2293 L
-3298 2293 mt 3263 2298 L
-3263 2298 mt 3228 2304 L
-3228 2304 mt 3201 2309 L
-3201 2309 mt 3193 2310 L
-3193 2310 mt 3158 2318 L
-3158 2318 mt 3123 2328 L
-3123 2328 mt 3099 2336 L
-3099 2336 mt 3088 2340 L
-3088 2340 mt 3053 2354 L
-3053 2354 mt 3032 2364 L
-3032 2364 mt 3019 2370 L
-3019 2370 mt 2984 2387 L
-2984 2387 mt 2976 2391 L
-2976 2391 mt 2949 2406 L
-2949 2406 mt 2925 2419 L
-2925 2419 mt 2914 2425 L
-2914 2425 mt 2879 2446 L
-2879 2446 mt 2879 2446 L
-2879 2446 mt 2844 2469 L
-2844 2469 mt 2838 2474 L
-2838 2474 mt 2809 2495 L
-2809 2495 mt 2802 2502 L
-2802 2502 mt 2774 2523 L
-2774 2523 mt 2768 2529 L
-2768 2529 mt 2740 2555 L
-2740 2555 mt 2738 2557 L
-2738 2557 mt 2712 2584 L
-2712 2584 mt 2705 2592 L
-2705 2592 mt 2688 2612 L
-2688 2612 mt 2670 2636 L
-2670 2636 mt 2668 2639 L
-2668 2639 mt 2654 2667 L
-2654 2667 mt 2648 2694 L
-2648 2694 mt 2647 2722 L
-2647 2722 mt 2652 2749 L
-2652 2749 mt 2660 2777 L
-2660 2777 mt 2670 2803 L
-2670 2803 mt 2670 2804 L
-2670 2804 mt 2682 2832 L
-2682 2832 mt 2693 2859 L
-2693 2859 mt 2705 2886 L
-2705 2886 mt 2705 2887 L
-2705 2887 mt 2717 2914 L
-2717 2914 mt 2728 2942 L
-2728 2942 mt 2738 2969 L
-2738 2969 mt 2740 2973 L
-2740 2973 mt 2748 2997 L
-2748 2997 mt 2755 3024 L
-2755 3024 mt 2762 3052 L
-2762 3052 mt 2771 3079 L
-2771 3079 mt 2774 3085 L
-2774 3085 mt 2790 3107 L
-2790 3107 mt 2809 3122 L
-2809 3122 mt 2827 3134 L
-2827 3134 mt 2844 3143 L
-2844 3143 mt 2879 3162 L
-2879 3162 mt 2879 3162 L
-2879 3162 mt 2914 3181 L
-2914 3181 mt 2929 3189 L
-2929 3189 mt 2949 3201 L
-2949 3201 mt 2976 3217 L
-2976 3217 mt 2984 3222 L
-2984 3222 mt 3019 3244 L
-3019 3244 mt 3019 3244 L
-3019 3244 mt 3053 3271 L
-3053 3271 mt 3055 3272 L
-3055 3272 mt 3087 3299 L
-3087 3299 mt 3088 3300 L
-3088 3300 mt 3118 3327 L
-3118 3327 mt 3123 3333 L
-3123 3333 mt 3147 3354 L
-3147 3354 mt 3158 3365 L
-3158 3365 mt 3177 3382 L
-3177 3382 mt 3193 3398 L
-3193 3398 mt 3208 3409 L
-3208 3409 mt 3228 3428 L
-3228 3428 mt 3240 3437 L
-3240 3437 mt 3263 3458 L
-3263 3458 mt 3271 3464 L
-3271 3464 mt 3298 3488 L
-3298 3488 mt 3303 3492 L
-3303 3492 mt 3328 3519 L
-3328 3519 mt 3332 3527 L
-3332 3527 mt 3343 3547 L
-3343 3547 mt 3347 3575 L
-3347 3575 mt 3344 3602 L
-3344 3602 mt 3339 3630 L
-3339 3630 mt 3332 3648 L
-3332 3648 mt 3329 3657 L
-3329 3657 mt 3322 3685 L
-3322 3685 mt 3318 3712 L
-3318 3712 mt 3323 3740 L
-3323 3740 mt 3328 3767 L
-3328 3767 mt 3332 3780 L
-3332 3780 mt 3336 3795 L
-3336 3795 mt 3340 3822 L
-3340 3822 mt 3345 3850 L
-3345 3850 mt 3348 3877 L
-3348 3877 mt 3349 3905 L
-3349 3905 mt 3343 3932 L
-3343 3932 mt 3334 3960 L
-3334 3960 mt 3332 3975 L
-3332 3975 mt 3331 3987 L
-3331 3987 mt 3332 3991 L
-3332 3991 mt 3344 4015 L
-3344 4015 mt 3367 4038 L
-3367 4038 mt 3373 4042 L
-3373 4042 mt 3402 4061 L
-3402 4061 mt 3418 4070 L
-3418 4070 mt 3437 4080 L
-3437 4080 mt 3472 4096 L
-3472 4096 mt 3475 4097 L
-3475 4097 mt 3507 4116 L
-3507 4116 mt 3523 4125 L
-3523 4125 mt 3542 4147 L
-3542 4147 mt 3546 4152 L
-3546 4152 mt 3544 4180 L
-3544 4180 mt 3542 4183 L
-3542 4183 mt 3517 4207 L
-3517 4207 mt 3507 4213 L
-3507 4213 mt 3476 4235 L
-3476 4235 mt 3472 4238 L
-3472 4238 mt 3443 4262 L
-3443 4262 mt 3437 4269 L
-3437 4269 mt 3417 4290 L
-3417 4290 mt 3402 4312 L
-3402 4312 mt 3399 4317 L
-3399 4317 mt 3390 4345 L
-3390 4345 mt 3393 4372 L
-3393 4372 mt 3402 4387 L
-3402 4387 mt 3411 4400 L
-3411 4400 mt 3437 4424 L
-3437 4424 mt 3441 4427 L
-3441 4427 mt 3472 4449 L
-3472 4449 mt 3480 4455 L
-3480 4455 mt 3507 4473 L
-3507 4473 mt 3519 4482 L
-3519 4482 mt 3542 4502 L
-3542 4502 mt 3550 4510 L
-3550 4510 mt 3570 4537 L
-3570 4537 mt 3577 4551 L
-3577 4551 mt 3582 4565 L
-3582 4565 mt 3587 4592 L
-3587 4592 mt 3580 4620 L
-3580 4620 mt 3577 4627 L
-3577 4627 mt 3563 4648 L
-3563 4648 mt 3542 4673 L
-3542 4673 mt 3540 4675 L
-3540 4675 mt 3511 4703 L
-3511 4703 mt 3507 4707 L
-3507 4707 mt 3477 4730 L
-3477 4730 mt 3472 4734 L
-3472 4734 mt 3437 4758 L
-3437 4758 mt 3437 4758 L
-3437 4758 mt 3402 4779 L
-3402 4779 mt 3391 4785 L
-3391 4785 mt 3367 4798 L
-3367 4798 mt 3340 4813 L
-3340 4813 mt 3332 4816 L
-3332 4816 mt 3298 4833 L
-3298 4833 mt 3282 4840 L
-3282 4840 mt 3263 4849 L
-3263 4849 mt 3228 4863 L
-3228 4863 mt 3217 4868 L
-3217 4868 mt 3193 4877 L
-3193 4877 mt 3158 4890 L
-3158 4890 mt 3142 4895 L
-3142 4895 mt 3123 4902 L
-3123 4902 mt 3088 4913 L
-3088 4913 mt 3057 4923 L
-3057 4923 mt 3053 4924 L
-3053 4924 mt 3019 4934 L
-3019 4934 mt 2984 4943 L
-2984 4943 mt 2957 4950 L
-2957 4950 mt 2949 4952 L
-2949 4952 mt 2914 4961 L
-2914 4961 mt 2879 4968 L
-2879 4968 mt 2844 4976 L
-2844 4976 mt 2833 4978 L
-2833 4978 mt 2809 4982 L
-2809 4982 mt 2774 4988 L
-2774 4988 mt 2740 4994 L
-2740 4994 mt 2705 4999 L
-2705 4999 mt 2670 5003 L
-2670 5003 mt 2648 5005 L
-2648 5005 mt 2635 5007 L
-2635 5007 mt 2600 5010 L
-2600 5010 mt 2565 5012 L
-2565 5012 mt 2530 5014 L
-2530 5014 mt 2496 5016 L
-2496 5016 mt 2461 5017 L
-2461 5017 mt 2426 5017 L
-2426 5017 mt 2391 5017 L
-2391 5017 mt 2356 5016 L
-2356 5016 mt 2321 5015 L
-2321 5015 mt 2286 5013 L
-2286 5013 mt 2251 5010 L
-2251 5010 mt 2217 5007 L
-2217 5007 mt 2206 5005 L
-2206 5005 mt 2182 5002 L
-2182 5002 mt 2147 4998 L
-2147 4998 mt 2112 4992 L
-2112 4992 mt 2077 4986 L
-2077 4986 mt 2042 4979 L
-2042 4979 mt 2038 4978 L
-2038 4978 mt 2007 4971 L
-2007 4971 mt 1972 4962 L
-1972 4962 mt 1938 4953 L
-1938 4953 mt 1928 4950 L
-1928 4950 mt 1903 4943 L
-1903 4943 mt 1868 4932 L
-1868 4932 mt 1842 4923 L
-1842 4923 mt 1833 4919 L
-1833 4919 mt 1798 4906 L
-1798 4906 mt 1772 4895 L
-1772 4895 mt 1763 4891 L
-1763 4891 mt 1728 4875 L
-1728 4875 mt 1715 4868 L
-1715 4868 mt 1694 4856 L
-1694 4856 mt 1666 4840 L
-1666 4840 mt 1659 4836 L
-1659 4836 mt 1624 4813 L
-1624 4813 mt 1624 4813 L
-1624 4813 mt 1589 4787 L
-1589 4787 mt 1587 4785 L
-1587 4785 mt 1554 4758 L
-1554 4758 mt 1554 4757 L
-1554 4757 mt 1525 4730 L
-1525 4730 mt 1519 4723 L
-1519 4723 mt 1500 4703 L
-1500 4703 mt 1484 4684 L
-1484 4684 mt 1477 4675 L
-1477 4675 mt 1456 4648 L
-1456 4648 mt 1449 4638 L
-1449 4638 mt 1437 4620 L
-1437 4620 mt 1419 4592 L
-1419 4592 mt 1415 4585 L
-1415 4585 mt 1403 4565 L
-1403 4565 mt 1387 4537 L
-1387 4537 mt 1380 4523 L
-1380 4523 mt 1373 4510 L
-1373 4510 mt 1359 4482 L
-1359 4482 mt 1346 4455 L
-1346 4455 mt 1345 4453 L
-1345 4453 mt 1334 4427 L
-1334 4427 mt 1322 4400 L
-1322 4400 mt 1312 4372 L
-1312 4372 mt 1310 4368 L
-1310 4368 mt 1302 4345 L
-1302 4345 mt 1293 4317 L
-1293 4317 mt 1285 4290 L
-1285 4290 mt 1278 4262 L
-1278 4262 mt 1275 4249 L
-1275 4249 mt 1272 4235 L
-1272 4235 mt 1267 4207 L
-1267 4207 mt 1263 4180 L
-1263 4180 mt 1260 4152 L
-1260 4152 mt 1258 4125 L
-1258 4125 mt 1256 4097 L
-1256 4097 mt 1256 4070 L
-1256 4070 mt 1256 4042 L
-1256 4042 mt 1257 4015 L
-1257 4015 mt 1258 3987 L
-1258 3987 mt 1260 3960 L
-1260 3960 mt 1262 3932 L
-1262 3932 mt 1264 3905 L
-1264 3905 mt 1266 3877 L
-1266 3877 mt 1267 3850 L
-1267 3850 mt 1268 3822 L
-1268 3822 mt 1268 3795 L
-1268 3795 mt 1267 3767 L
-1267 3767 mt 1264 3740 L
-1264 3740 mt 1259 3712 L
-1259 3712 mt 1253 3685 L
-1253 3685 mt 1243 3657 L
-1243 3657 mt 1240 3650 L
-1240 3650 mt 1232 3630 L
-1232 3630 mt 1217 3602 L
-1217 3602 mt 1205 3585 L
-1205 3585 mt 1199 3575 L
-1199 3575 mt 1177 3547 L
-1177 3547 mt 1170 3539 L
-1170 3539 mt 1152 3519 L
-1152 3519 mt 1136 3503 L
-1136 3503 mt 1124 3492 L
-1124 3492 mt 1101 3472 L
-1101 3472 mt 1092 3464 L
-1092 3464 mt 1066 3445 L
-1066 3445 mt 1056 3437 L
-1056 3437 mt 1031 3419 L
-1031 3419 mt 1018 3409 L
-1018 3409 mt 996 3394 L
- 996 3394 mt 978 3382 L
- 978 3382 mt 961 3371 L
- 961 3371 mt 937 3354 L
- 937 3354 mt 926 3347 L
- 926 3347 mt 896 3327 L
- 896 3327 mt 892 3324 L
- 892 3324 mt 857 3301 L
- 857 3301 mt 855 3299 L
- 855 3299 mt 822 3278 L
- 822 3278 mt 813 3272 L
- 813 3272 mt 787 3254 L
- 787 3254 mt 772 3244 L
- 772 3244 mt 752 3231 L
- 752 3231 mt 732 3217 L
- 732 3217 mt 717 3207 L
- 717 3207 mt 693 3189 L
- 693 3189 mt 682 3182 L
- 682 3182 mt 655 3162 L
- 655 3162 mt 647 3156 L
- 647 3156 mt 619 3134 L
- 619 3134 mt 613 3129 L
- 613 3129 mt 584 3107 L
- 584 3107 mt 578 3102 L
- 578 3102 mt 551 3079 L
- 551 3079 mt 543 3073 L
- 543 3073 mt 519 3052 L
- 519 3052 mt 508 3042 L
- 508 3042 mt 488 3024 L
- 488 3024 mt 473 3010 L
- 473 3010 mt 460 2997 L
- 460 2997 mt 438 2975 L
- 438 2975 mt 433 2969 L
- 433 2969 mt 408 2942 L
- 408 2942 mt 403 2937 L
- 403 2937 mt 384 2914 L
- 384 2914 mt 368 2895 L
- 368 2895 mt 362 2887 L
- 362 2887 mt 341 2859 L
- 341 2859 mt 334 2849 L
- 334 2849 mt 321 2832 L
- 321 2832 mt 303 2804 L
- 303 2804 mt 299 2798 L
- 299 2798 mt 285 2777 L
- 285 2777 mt 269 2749 L
- 269 2749 mt 264 2740 L
- 264 2740 mt 253 2722 L
- 253 2722 mt 239 2694 L
- 239 2694 mt 229 2674 L
- 229 2674 mt 225 2667 L
- 225 2667 mt 213 2639 L
- 213 2639 mt 201 2612 L
- 201 2612 mt 194 2592 L
- 194 2592 mt 191 2584 L
- 191 2584 mt 182 2557 L
- 182 2557 mt 174 2529 L
- 174 2529 mt 167 2502 L
- 167 2502 mt 161 2474 L
- 161 2474 mt 159 2464 L
- 159 2464 mt 156 2446 L
- 156 2446 mt 152 2419 L
- 152 2419 mt 149 2391 L
- 149 2391 mt 146 2364 L
- 146 2364 mt 144 2336 L
- 144 2336 mt 143 2309 L
- 143 2309 mt 142 2281 L
- 142 2281 mt 142 2254 L
- 142 2254 mt 142 2226 L
- 142 2226 mt 143 2199 L
- 143 2199 mt 145 2171 L
- 145 2171 mt 147 2144 L
- 147 2144 mt 150 2116 L
- 150 2116 mt 154 2089 L
- 154 2089 mt 158 2061 L
- 158 2061 mt 159 2051 L
- 159 2051 mt 162 2034 L
- 162 2034 mt 167 2006 L
- 167 2006 mt 173 1979 L
- 173 1979 mt 178 1951 L
- 178 1951 mt 185 1924 L
- 185 1924 mt 191 1896 L
- 191 1896 mt 194 1884 L
- 194 1884 mt 198 1869 L
- 198 1869 mt 204 1841 L
- 204 1841 mt 211 1814 L
- 211 1814 mt 218 1786 L
- 218 1786 mt 225 1759 L
- 225 1759 mt 229 1744 L
- 229 1744 mt 232 1731 L
- 232 1731 mt 239 1704 L
- 239 1704 mt 246 1676 L
- 246 1676 mt 253 1649 L
- 253 1649 mt 259 1621 L
- 259 1621 mt 264 1599 L
- 264 1599 mt 265 1594 L
- 265 1594 mt 271 1566 L
- 271 1566 mt 277 1539 L
- 277 1539 mt 282 1511 L
- 282 1511 mt 288 1484 L
- 288 1484 mt 293 1456 L
- 293 1456 mt 299 1429 L
- 299 1429 mt 299 1428 L
- 299 1428 mt 304 1401 L
- 304 1401 mt 310 1373 L
- 310 1373 mt 316 1346 L
- 316 1346 mt 322 1318 L
- 322 1318 mt 328 1291 L
- 328 1291 mt 334 1265 L
- 334 1265 mt 334 1263 L
- 334 1263 mt 341 1236 L
- 341 1236 mt 347 1208 L
- 347 1208 mt 355 1181 L
- 355 1181 mt 363 1153 L
- 363 1153 mt 368 1134 L
- 368 1134 mt 371 1126 L
- 371 1126 mt 379 1098 L
- 379 1098 mt 389 1071 L
- 389 1071 mt 398 1043 L
- 398 1043 mt 403 1030 L
- 403 1030 mt 409 1016 L
- 409 1016 mt 420 988 L
- 420 988 mt 431 961 L
- 431 961 mt 438 945 L
- 438 945 mt 443 933 L
- 443 933 mt 456 906 L
- 456 906 mt 469 878 L
- 469 878 mt 473 870 L
- 473 870 mt 483 851 L
- 483 851 mt 497 823 L
- 497 823 mt 508 804 L
- 508 804 mt 512 796 L
- 512 796 mt 528 768 L
- 528 768 mt 543 744 L
- 543 744 mt 545 741 L
- 545 741 mt 562 713 L
- 562 713 mt 578 689 L
- 578 689 mt 580 686 L
- 580 686 mt 598 658 L
- 598 658 mt 613 638 L
- 613 638 mt 618 631 L
- 618 631 mt 638 603 L
- 638 603 mt 647 591 L
- 647 591 mt 659 576 L
- 659 576 mt 681 548 L
- 681 548 mt 682 547 L
- 682 547 mt 704 521 L
- 704 521 mt 717 505 L
- 717 505 mt 727 493 L
- 727 493 mt 752 466 L
- 752 466 mt 752 466 L
- 752 466 mt 779 438 L
- 779 438 mt 787 430 L
- 787 430 mt 807 411 L
- 807 411 mt 822 397 L
- 822 397 mt 837 383 L
- 837 383 mt 857 366 L
- 857 366 mt 869 355 L
- 869 355 mt 892 338 L
- 892 338 mt 905 328 L
- 905 328 mt 926 312 L
- 926 312 mt 943 300 L
- 943 300 mt 961 288 L
- 961 288 mt 986 273 L
- 986 273 mt 996 266 L
- 996 266 mt 1031 246 L
-1031 246 mt 1032 245 L
-1032 245 mt 1066 227 L
-1066 227 mt 1084 218 L
-1084 218 mt 1101 209 L
-1101 209 mt 1136 193 L
-1136 193 mt 1141 190 L
-1141 190 mt 1170 178 L
-1170 178 mt 1205 164 L
-1205 164 mt 1207 163 L
-1207 163 mt 1240 150 L
-1240 150 mt 1275 138 L
-1275 138 mt 1284 135 L
-1284 135 mt 1310 127 L
-1310 127 mt 1345 116 L
-1345 116 mt 1373 108 L
-1373 108 mt 1380 106 L
-1380 106 mt 1415 96 L
-1415 96 mt 1449 87 L
-1449 87 mt 1476 80 L
-1476 80 mt 1484 78 L
-1484 78 mt 1519 70 L
-1519 70 mt 1554 61 L
-1554 61 mt 1589 54 L
-1589 54 mt 1592 53 L
-1592 53 mt 1624 46 L
-1624 46 mt 1659 38 L
-1659 38 mt 1694 31 L
-1694 31 mt 1722 25 L
-1722 25 mt 1728 24 L
-1728 24 mt 1763 17 L
-1763 17 mt 1798 10 L
-1798 10 mt 1833 4 L
-1833 4 mt 1868 -1 L
-1868 -1 mt 1868 -1 L
-1868 -1 mt 1903 -7 L
-1903 -7 mt 1938 -14 L
-1938 -14 mt 1972 -19 L
-1972 -19 mt 2007 -25 L
-2007 -25 mt 2029 -29 L
-2029 -29 mt 2042 -31 L
-2042 -31 mt 2077 -36 L
-2077 -36 mt 2112 -42 L
-2112 -42 mt 2147 -47 L
-2147 -47 mt 2182 -52 L
-2182 -52 mt 2208 -56 L
-2208 -56 mt 2217 -57 L
-2217 -57 mt 2251 -63 L
-2251 -63 mt 2286 -68 L
-2286 -68 mt 2321 -74 L
-2321 -74 mt 2356 -79 L
-2356 -79 mt 2382 -84 L
-2382 -84 mt 2391 -85 L
-2391 -85 mt 2426 -91 L
-2426 -91 mt 2461 -97 L
-2461 -97 mt 2496 -103 L
-2496 -103 mt 2530 -109 L
-2530 -109 mt 2547 -111 L
-2547 -111 mt 2565 -114 L
-2565 -114 mt 2600 -120 L
-2600 -120 mt 2635 -125 L
-2635 -125 mt 2670 -131 L
-2670 -131 mt 2705 -136 L
-2705 -136 mt 2722 -139 L
-2722 -139 mt 2740 -141 L
-2740 -141 mt 2774 -147 L
-2774 -147 mt 2809 -152 L
-2809 -152 mt 2844 -157 L
-2844 -157 mt 2879 -162 L
-2879 -162 mt 2906 -166 L
-2906 -166 mt 2914 -167 L
-2914 -167 mt 2949 -172 L
-2949 -172 mt 2984 -178 L
-2984 -178 mt 3019 -183 L
-3019 -183 mt 3053 -188 L
-3053 -188 mt 3088 -193 L
-3088 -193 mt 3096 -194 L
-3096 -194 mt 3123 -198 L
-3123 -198 mt 3158 -203 L
-3158 -203 mt 3193 -208 L
-3193 -208 mt 3228 -213 L
-3228 -213 mt 3263 -217 L
-3263 -217 mt 3292 -221 L
-3292 -221 mt 3298 -222 L
-3298 -222 mt 3332 -227 L
-3332 -227 mt 3367 -231 L
-3367 -231 mt 3402 -235 L
-3402 -235 mt 3437 -239 L
-3437 -239 mt 3472 -243 L
-3472 -243 mt 3507 -247 L
-3507 -247 mt 3527 -249 L
-3527 -249 mt 3542 -250 L
-3542 -250 mt 3577 -253 L
-3577 -253 mt 3611 -256 L
-3611 -256 mt 3646 -259 L
-3646 -259 mt 3681 -262 L
-3681 -262 mt 3716 -264 L
-3716 -264 mt 3751 -266 L
-3751 -266 mt 3786 -268 L
-3786 -268 mt 3821 -270 L
-3821 -270 mt 3855 -272 L
-3855 -272 mt 3890 -274 L
-3890 -274 mt 3925 -275 L
-3925 -275 mt 3960 -276 L
-3960 -276 mt 3971 -276 L
-3971 -276 mt 3995 -277 L
-3995 -277 mt 4030 -278 L
-4030 -278 mt 4065 -278 L
-4065 -278 mt 4100 -278 L
-4100 -278 mt 4134 -278 L
-4134 -278 mt 4169 -277 L
-4169 -277 mt 4204 -277 L
-4204 -277 mt 4217 -276 L
-4217 -276 mt 4239 -276 L
-4239 -276 mt 4274 -274 L
-4274 -274 mt 4309 -272 L
-4309 -272 mt 4344 -270 L
-4344 -270 mt 4379 -268 L
-4379 -268 mt 4413 -265 L
-4413 -265 mt 4448 -262 L
-4448 -262 mt 4483 -258 L
-4483 -258 mt 4518 -254 L
-4518 -254 mt 4553 -250 L
-4553 -250 mt 4562 -249 L
-4562 -249 mt 4588 -245 L
-4588 -245 mt 4623 -240 L
-4623 -240 mt 4657 -235 L
-4657 -235 mt 4692 -228 L
-4692 -228 mt 4727 -222 L
-4727 -222 mt 4730 -221 L
-4730 -221 mt 4762 -215 L
-4762 -215 mt 4797 -208 L
-4797 -208 mt 4832 -200 L
-4832 -200 mt 4860 -194 L
-4860 -194 mt 4867 -192 L
-4867 -192 mt 4902 -184 L
-4902 -184 mt 4936 -175 L
-4936 -175 mt 4967 -166 L
-4967 -166 mt 4971 -165 L
-4971 -165 mt 5006 -155 L
-5006 -155 mt 5041 -145 L
-5041 -145 mt 5061 -139 L
-5061 -139 mt 5076 -134 L
-5076 -134 mt 5111 -123 L
-5111 -123 mt 5146 -111 L
-5146 -111 mt 5146 -111 L
-5146 -111 mt 5181 -100 L
-5181 -100 mt 5215 -87 L
-5215 -87 mt 5224 -84 L
-5224 -84 mt 5250 -74 L
-5250 -74 mt 5285 -60 L
-5285 -60 mt 5294 -56 L
-5294 -56 mt 5320 -46 L
-5320 -46 mt 5355 -31 L
-5355 -31 mt 5359 -29 L
-5359 -29 mt 5390 -15 L
-5390 -15 mt 5417 -1 L
-5417 -1 mt 5425 1 L
-5425 1 mt 5459 19 L
-5459 19 mt 5472 25 L
-5472 25 mt 5494 37 L
-5494 37 mt 5522 53 L
-5522 53 mt 5529 57 L
-5529 57 mt 5564 78 L
-5564 78 mt 5568 80 L
-5568 80 mt 5599 99 L
-5599 99 mt 5612 108 L
-5612 108 mt 5634 122 L
-5634 122 mt 5653 135 L
-5653 135 mt 5669 146 L
-5669 146 mt 5692 163 L
-5692 163 mt 5704 171 L
-5704 171 mt 5730 190 L
-5730 190 mt 5738 197 L
-5738 197 mt 5765 218 L
-5765 218 mt 5773 224 L
-5773 224 mt 5800 245 L
-5800 245 mt 5808 252 L
-5808 252 mt 5833 273 L
-5833 273 mt 5843 281 L
-5843 281 mt 5866 300 L
-5866 300 mt 5878 311 L
-5878 311 mt 5897 328 L
-5897 328 mt 5913 342 L
-5913 342 mt 5928 355 L
-5928 355 mt 5948 374 L
-5948 374 mt 5958 383 L
-5958 383 mt 5983 406 L
-5983 406 mt 5987 411 L
-5987 411 mt 6016 438 L
-6016 438 mt 6017 439 L
-6017 439 mt 6045 466 L
-6045 466 mt 6052 473 L
-6052 473 mt 6073 493 L
-6073 493 mt 6087 507 L
-6087 507 mt 6101 521 L
-6101 521 mt 6122 541 L
-6122 541 mt 6130 548 L
-6130 548 mt 6157 575 L
-6157 575 mt 6158 576 L
-6158 576 mt 6186 603 L
-6186 603 mt 6192 609 L
-6192 609 mt 6214 631 L
-6214 631 mt 6227 643 L
-6227 643 mt 6242 658 L
-6242 658 mt 6261 677 L
-6261 677 mt 6270 686 L
-6270 686 mt 6296 712 L
-6296 712 mt 6298 713 L
-6298 713 mt 6326 741 L
-6326 741 mt 6331 746 L
-6331 746 mt 6353 768 L
-6353 768 mt 6366 781 L
-6366 781 mt 6381 796 L
-6381 796 mt 6401 816 L
-6401 816 mt 6409 823 L
-6409 823 mt 6436 850 L
-6436 850 mt 6436 851 L
-6436 851 mt 6464 878 L
-6464 878 mt 6471 885 L
-6471 885 mt 6491 906 L
-6491 906 mt 6506 920 L
-6506 920 mt 6518 933 L
-6518 933 mt 6540 956 L
-6540 956 mt 6545 961 L
-6545 961 mt 6572 988 L
-6572 988 mt 6575 992 L
-6575 992 mt 6598 1016 L
-6598 1016 mt 6610 1029 L
-6610 1029 mt 6623 1043 L
-6623 1043 mt 6645 1067 L
-6645 1067 mt 6649 1071 L
-6649 1071 mt 6673 1098 L
-6673 1098 mt 6680 1106 L
-6680 1106 mt 6698 1126 L
-6698 1126 mt 6715 1146 L
-6715 1146 mt 6722 1153 L
-6722 1153 mt 6745 1181 L
-6745 1181 mt 6750 1187 L
-6750 1187 mt 6768 1208 L
-6768 1208 mt 6785 1229 L
-6785 1229 mt 6790 1236 L
-6790 1236 mt 6812 1263 L
-6812 1263 mt 6819 1273 L
-6819 1273 mt 6833 1291 L
-6833 1291 mt 6854 1318 L
-6854 1318 mt 6854 1319 L
-6854 1319 mt 6874 1346 L
-6874 1346 mt 6889 1367 L
-6889 1367 mt 6894 1373 L
-6894 1373 mt 6913 1401 L
-6913 1401 mt 6924 1417 L
-6924 1417 mt 6932 1428 L
-6932 1428 mt 6949 1456 L
-6949 1456 mt 6959 1471 L
-6959 1471 mt 6967 1484 L
-6967 1484 mt 6983 1511 L
-6983 1511 mt 6994 1529 L
-6994 1529 mt 6999 1539 L
-6999 1539 mt 7015 1566 L
-7015 1566 mt 7029 1592 L
-7029 1592 mt 7029 1594 L
-7029 1594 mt 7044 1621 L
-7044 1621 mt 7057 1649 L
-7057 1649 mt 7063 1662 L
-7063 1662 mt 7070 1676 L
-7070 1676 mt 7082 1704 L
-7082 1704 mt 7094 1731 L
-7094 1731 mt 7098 1743 L
-7098 1743 mt 7105 1759 L
-7105 1759 mt 7115 1786 L
-7115 1786 mt 7124 1814 L
-7124 1814 mt 7132 1841 L
-7132 1841 mt 7133 1845 L
-7133 1845 mt 7140 1869 L
-7140 1869 mt 7146 1896 L
-7146 1896 mt 7152 1924 L
-7152 1924 mt 7157 1951 L
-7157 1951 mt 7161 1979 L
-7161 1979 mt 7164 2006 L
-7164 2006 mt 7167 2034 L
-7167 2034 mt 7168 2056 L
-7098 2005 mt 7098 2006 L
-7098 2006 mt 7101 2034 L
-7101 2034 mt 7102 2061 L
-7102 2061 mt 7103 2089 L
-7103 2089 mt 7103 2116 L
-7103 2116 mt 7102 2144 L
-7102 2144 mt 7101 2171 L
-7101 2171 mt 7099 2199 L
-7099 2199 mt 7098 2210 L
-7098 2210 mt 7097 2226 L
-7097 2226 mt 7094 2254 L
-7094 2254 mt 7091 2281 L
-7091 2281 mt 7087 2309 L
-7087 2309 mt 7082 2336 L
-7082 2336 mt 7077 2364 L
-7077 2364 mt 7071 2391 L
-7071 2391 mt 7065 2419 L
-7065 2419 mt 7063 2426 L
-7063 2426 mt 7059 2446 L
-7059 2446 mt 7052 2474 L
-7052 2474 mt 7045 2502 L
-7045 2502 mt 7037 2529 L
-7037 2529 mt 7029 2557 L
-7029 2557 mt 7029 2558 L
-7029 2558 mt 7021 2584 L
-7021 2584 mt 7012 2612 L
-7012 2612 mt 7003 2639 L
-7003 2639 mt 6994 2667 L
-6994 2667 mt 6994 2668 L
-6994 2668 mt 6985 2694 L
-6985 2694 mt 6976 2722 L
-6976 2722 mt 6967 2749 L
-6967 2749 mt 6959 2771 L
-6959 2771 mt 6957 2777 L
-6957 2777 mt 6947 2804 L
-6947 2804 mt 6937 2832 L
-6937 2832 mt 6928 2859 L
-6928 2859 mt 6924 2869 L
-6924 2869 mt 6918 2887 L
-6918 2887 mt 6908 2914 L
-6908 2914 mt 6898 2942 L
-6898 2942 mt 6889 2966 L
-6889 2966 mt 6888 2969 L
-6888 2969 mt 6878 2997 L
-6878 2997 mt 6868 3024 L
-6868 3024 mt 6857 3052 L
-6857 3052 mt 6854 3060 L
-6854 3060 mt 6847 3079 L
-6847 3079 mt 6836 3107 L
-6836 3107 mt 6826 3134 L
-6826 3134 mt 6819 3151 L
-6819 3151 mt 6815 3162 L
-6815 3162 mt 6805 3189 L
-6805 3189 mt 6794 3217 L
-6794 3217 mt 6785 3243 L
-6785 3243 mt 6784 3244 L
-6784 3244 mt 6774 3272 L
-6774 3272 mt 6764 3299 L
-6764 3299 mt 6755 3327 L
-6755 3327 mt 6750 3341 L
-6750 3341 mt 6745 3354 L
-6745 3354 mt 6735 3382 L
-6735 3382 mt 6726 3409 L
-6726 3409 mt 6716 3437 L
-6716 3437 mt 6715 3439 L
-6715 3439 mt 6706 3464 L
-6706 3464 mt 6695 3492 L
-6695 3492 mt 6684 3519 L
-6684 3519 mt 6680 3531 L
-6680 3531 mt 6674 3547 L
-6674 3547 mt 6662 3575 L
-6662 3575 mt 6651 3602 L
-6651 3602 mt 6645 3615 L
-6645 3615 mt 6639 3630 L
-6639 3630 mt 6627 3657 L
-6627 3657 mt 6615 3685 L
-6615 3685 mt 6610 3695 L
-6610 3695 mt 6603 3712 L
-6603 3712 mt 6590 3740 L
-6590 3740 mt 6578 3767 L
-6578 3767 mt 6575 3772 L
-6575 3772 mt 6565 3795 L
-6565 3795 mt 6552 3822 L
-6552 3822 mt 6540 3846 L
-6540 3846 mt 6539 3850 L
-6539 3850 mt 6525 3877 L
-6525 3877 mt 6511 3905 L
-6511 3905 mt 6506 3916 L
-6506 3916 mt 6498 3932 L
-6498 3932 mt 6483 3960 L
-6483 3960 mt 6471 3983 L
-6471 3983 mt 6468 3987 L
-6468 3987 mt 6453 4015 L
-6453 4015 mt 6437 4042 L
-6437 4042 mt 6436 4044 L
-6436 4044 mt 6421 4070 L
-6421 4070 mt 6406 4097 L
-6406 4097 mt 6401 4106 L
-6401 4106 mt 6391 4125 L
-6391 4125 mt 6378 4152 L
-6378 4152 mt 6366 4179 L
-6366 4179 mt 6366 4180 L
-6366 4180 mt 6354 4207 L
-6354 4207 mt 6341 4235 L
-6341 4235 mt 6331 4255 L
-6331 4255 mt 6327 4262 L
-6327 4262 mt 6313 4290 L
-6313 4290 mt 6303 4317 L
-6303 4317 mt 6296 4342 L
-6296 4342 mt 6295 4345 L
-6295 4345 mt 6290 4372 L
-6290 4372 mt 6286 4400 L
-6286 4400 mt 6280 4427 L
-6280 4427 mt 6270 4455 L
-6270 4455 mt 6261 4468 L
-6261 4468 mt 6250 4482 L
-6250 4482 mt 6227 4505 L
-6227 4505 mt 6216 4510 L
-6216 4510 mt 6192 4519 L
-6192 4519 mt 6162 4510 L
-6162 4510 mt 6157 4507 L
-6157 4507 mt 6136 4482 L
-6136 4482 mt 6129 4455 L
-6129 4455 mt 6130 4427 L
-6130 4427 mt 6132 4400 L
-6132 4400 mt 6132 4372 L
-6132 4372 mt 6131 4345 L
-6131 4345 mt 6129 4317 L
-6129 4317 mt 6125 4290 L
-6125 4290 mt 6122 4276 L
-6122 4276 mt 6119 4262 L
-6119 4262 mt 6113 4235 L
-6113 4235 mt 6107 4207 L
-6107 4207 mt 6102 4180 L
-6102 4180 mt 6096 4152 L
-6096 4152 mt 6090 4125 L
-6090 4125 mt 6087 4112 L
-6087 4112 mt 6084 4097 L
-6084 4097 mt 6076 4070 L
-6076 4070 mt 6067 4042 L
-6067 4042 mt 6056 4015 L
-6056 4015 mt 6052 4006 L
-6052 4006 mt 6043 3987 L
-6043 3987 mt 6029 3960 L
-6029 3960 mt 6017 3938 L
-6017 3938 mt 6013 3932 L
-6013 3932 mt 5995 3905 L
-5995 3905 mt 5983 3885 L
-5983 3885 mt 5977 3877 L
-5977 3877 mt 5958 3850 L
-5958 3850 mt 5948 3835 L
-5948 3835 mt 5938 3822 L
-5938 3822 mt 5914 3795 L
-5914 3795 mt 5913 3793 L
-5913 3793 mt 5883 3767 L
-5883 3767 mt 5878 3763 L
-5878 3763 mt 5845 3740 L
-5845 3740 mt 5843 3738 L
-5843 3738 mt 5808 3717 L
-5808 3717 mt 5800 3712 L
-5800 3712 mt 5773 3698 L
-5773 3698 mt 5750 3685 L
-5750 3685 mt 5738 3678 L
-5738 3678 mt 5704 3658 L
-5704 3658 mt 5703 3657 L
-5703 3657 mt 5669 3635 L
-5669 3635 mt 5660 3630 L
-5660 3630 mt 5634 3610 L
-5634 3610 mt 5624 3602 L
-5624 3602 mt 5599 3581 L
-5599 3581 mt 5592 3575 L
-5592 3575 mt 5565 3547 L
-5565 3547 mt 5564 3547 L
-5564 3547 mt 5540 3519 L
-5540 3519 mt 5529 3506 L
-5529 3506 mt 5517 3492 L
-5517 3492 mt 5495 3464 L
-5495 3464 mt 5494 3463 L
-5494 3463 mt 5475 3437 L
-5475 3437 mt 5459 3413 L
-5459 3413 mt 5457 3409 L
-5457 3409 mt 5439 3382 L
-5439 3382 mt 5425 3357 L
-5425 3357 mt 5423 3354 L
-5423 3354 mt 5407 3327 L
-5407 3327 mt 5393 3299 L
-5393 3299 mt 5390 3292 L
-5390 3292 mt 5380 3272 L
-5380 3272 mt 5367 3244 L
-5367 3244 mt 5355 3218 L
-5355 3218 mt 5355 3217 L
-5355 3217 mt 5338 3189 L
-5338 3189 mt 5320 3168 L
-5320 3168 mt 5315 3162 L
-5315 3162 mt 5287 3134 L
-5287 3134 mt 5285 3133 L
-5285 3133 mt 5256 3107 L
-5256 3107 mt 5250 3102 L
-5250 3102 mt 5225 3079 L
-5225 3079 mt 5215 3071 L
-5215 3071 mt 5194 3052 L
-5194 3052 mt 5181 3039 L
-5181 3039 mt 5161 3024 L
-5161 3024 mt 5146 3014 L
-5146 3014 mt 5114 2997 L
-5114 2997 mt 5111 2996 L
-5111 2996 mt 5076 2981 L
-5076 2981 mt 5047 2969 L
-5047 2969 mt 5041 2967 L
-5041 2967 mt 5006 2951 L
-5006 2951 mt 4988 2942 L
-4988 2942 mt 4971 2933 L
-4971 2933 mt 4937 2914 L
-4937 2914 mt 4936 2914 L
-4936 2914 mt 4902 2892 L
-4902 2892 mt 4895 2887 L
-4895 2887 mt 4867 2864 L
-4867 2864 mt 4862 2859 L
-4862 2859 mt 4835 2832 L
-4835 2832 mt 4832 2828 L
-4832 2828 mt 4810 2804 L
-4810 2804 mt 4797 2789 L
-4797 2789 mt 4786 2777 L
-4786 2777 mt 4762 2750 L
-4762 2750 mt 4761 2749 L
-4761 2749 mt 4734 2722 L
-4734 2722 mt 4727 2713 L
-4727 2713 mt 4709 2694 L
-4709 2694 mt 4692 2674 L
-4692 2674 mt 4685 2667 L
-4685 2667 mt 4663 2639 L
-4663 2639 mt 4657 2630 L
-4657 2630 mt 4643 2612 L
-4643 2612 mt 4625 2584 L
-4625 2584 mt 4623 2580 L
-4623 2580 mt 4605 2557 L
-4605 2557 mt 4588 2529 L
-4588 2529 mt 4588 2529 L
-4588 2529 mt 4561 2502 L
-4561 2502 mt 4553 2496 L
-4553 2496 mt 4518 2475 L
-4518 2475 mt 4515 2474 L
-4515 2474 mt 4483 2463 L
-4483 2463 mt 4448 2452 L
-4448 2452 mt 4432 2446 L
-4432 2446 mt 4413 2440 L
-4413 2440 mt 4379 2427 L
-4379 2427 mt 4361 2419 L
-4361 2419 mt 4344 2412 L
-4344 2412 mt 4309 2395 L
-4309 2395 mt 4301 2391 L
-4301 2391 mt 4274 2380 L
-4274 2380 mt 4239 2366 L
-4239 2366 mt 4232 2364 L
-4232 2364 mt 4204 2354 L
-4204 2354 mt 4169 2344 L
-4169 2344 mt 4145 2336 L
-4145 2336 mt 4134 2333 L
-4134 2333 mt 4100 2322 L
-4100 2322 mt 4065 2310 L
-4065 2310 mt 4062 2309 L
-4062 2309 mt 4030 2294 L
-4030 2294 mt 4007 2281 L
-4007 2281 mt 3995 2274 L
-3995 2274 mt 3969 2254 L
-3969 2254 mt 3960 2247 L
-3960 2247 mt 3935 2226 L
-3935 2226 mt 3925 2219 L
-3925 2219 mt 3898 2199 L
-3898 2199 mt 3890 2193 L
-3890 2193 mt 3855 2174 L
-3855 2174 mt 3849 2171 L
-3849 2171 mt 3821 2155 L
-3821 2155 mt 3802 2144 L
-3802 2144 mt 3786 2134 L
-3786 2134 mt 3756 2116 L
-3756 2116 mt 3751 2113 L
-3751 2113 mt 3716 2091 L
-3716 2091 mt 3712 2089 L
-3712 2089 mt 3681 2072 L
-3681 2072 mt 3654 2061 L
-3654 2061 mt 3646 2058 L
-3646 2058 mt 3611 2046 L
-3611 2046 mt 3577 2038 L
-3577 2038 mt 3543 2034 L
-3543 2034 mt 3542 2034 L
-3542 2034 mt 3537 2034 L
-3537 2034 mt 3507 2035 L
-3507 2035 mt 3472 2041 L
-3472 2041 mt 3437 2050 L
-3437 2050 mt 3403 2061 L
-3403 2061 mt 3402 2062 L
-3402 2062 mt 3367 2073 L
-3367 2073 mt 3332 2083 L
-3332 2083 mt 3311 2089 L
-3311 2089 mt 3298 2092 L
-3298 2092 mt 3263 2101 L
-3263 2101 mt 3228 2107 L
-3228 2107 mt 3193 2113 L
-3193 2113 mt 3173 2116 L
-3173 2116 mt 3158 2119 L
-3158 2119 mt 3123 2125 L
-3123 2125 mt 3088 2132 L
-3088 2132 mt 3053 2140 L
-3053 2140 mt 3039 2144 L
-3039 2144 mt 3019 2149 L
-3019 2149 mt 2984 2160 L
-2984 2160 mt 2950 2171 L
-2950 2171 mt 2949 2172 L
-2949 2172 mt 2914 2185 L
-2914 2185 mt 2882 2199 L
-2882 2199 mt 2879 2200 L
-2879 2200 mt 2844 2216 L
-2844 2216 mt 2825 2226 L
-2825 2226 mt 2809 2234 L
-2809 2234 mt 2774 2253 L
-2774 2253 mt 2773 2254 L
-2773 2254 mt 2740 2274 L
-2740 2274 mt 2728 2281 L
-2728 2281 mt 2705 2296 L
-2705 2296 mt 2686 2309 L
-2686 2309 mt 2670 2321 L
-2670 2321 mt 2649 2336 L
-2649 2336 mt 2635 2348 L
-2635 2348 mt 2617 2364 L
-2617 2364 mt 2600 2380 L
-2600 2380 mt 2589 2391 L
-2589 2391 mt 2565 2418 L
-2565 2418 mt 2565 2419 L
-2565 2419 mt 2545 2446 L
-2545 2446 mt 2530 2471 L
-2530 2471 mt 2529 2474 L
-2529 2474 mt 2517 2502 L
-2517 2502 mt 2508 2529 L
-2508 2529 mt 2504 2557 L
-2504 2557 mt 2503 2584 L
-2503 2584 mt 2505 2612 L
-2505 2612 mt 2509 2639 L
-2509 2639 mt 2515 2667 L
-2515 2667 mt 2523 2694 L
-2523 2694 mt 2530 2715 L
-2530 2715 mt 2533 2722 L
-2533 2722 mt 2547 2749 L
-2547 2749 mt 2563 2777 L
-2563 2777 mt 2565 2779 L
-2565 2779 mt 2582 2804 L
-2582 2804 mt 2600 2832 L
-2600 2832 mt 2600 2832 L
-2600 2832 mt 2616 2859 L
-2616 2859 mt 2630 2887 L
-2630 2887 mt 2635 2897 L
-2635 2897 mt 2644 2914 L
-2644 2914 mt 2655 2942 L
-2655 2942 mt 2664 2969 L
-2664 2969 mt 2670 2991 L
-2670 2991 mt 2672 2997 L
-2672 2997 mt 2680 3024 L
-2680 3024 mt 2684 3052 L
-2684 3052 mt 2684 3079 L
-2684 3079 mt 2689 3107 L
-2689 3107 mt 2705 3129 L
-2705 3129 mt 2709 3134 L
-2709 3134 mt 2740 3153 L
-2740 3153 mt 2756 3162 L
-2756 3162 mt 2774 3169 L
-2774 3169 mt 2809 3183 L
-2809 3183 mt 2825 3189 L
-2825 3189 mt 2844 3198 L
-2844 3198 mt 2879 3214 L
-2879 3214 mt 2884 3217 L
-2884 3217 mt 2914 3234 L
-2914 3234 mt 2932 3244 L
-2932 3244 mt 2949 3256 L
-2949 3256 mt 2971 3272 L
-2971 3272 mt 2984 3283 L
-2984 3283 mt 3004 3299 L
-3004 3299 mt 3019 3314 L
-3019 3314 mt 3031 3327 L
-3031 3327 mt 3053 3354 L
-3053 3354 mt 3054 3354 L
-3054 3354 mt 3072 3382 L
-3072 3382 mt 3086 3409 L
-3086 3409 mt 3088 3415 L
-3088 3415 mt 3098 3437 L
-3098 3437 mt 3106 3464 L
-3106 3464 mt 3112 3492 L
-3112 3492 mt 3116 3519 L
-3116 3519 mt 3116 3547 L
-3116 3547 mt 3115 3575 L
-3115 3575 mt 3112 3602 L
-3112 3602 mt 3109 3630 L
-3109 3630 mt 3105 3657 L
-3105 3657 mt 3099 3685 L
-3099 3685 mt 3094 3712 L
-3094 3712 mt 3092 3740 L
-3092 3740 mt 3100 3767 L
-3100 3767 mt 3119 3795 L
-3119 3795 mt 3123 3798 L
-3123 3798 mt 3148 3822 L
-3148 3822 mt 3158 3831 L
-3158 3831 mt 3178 3850 L
-3178 3850 mt 3193 3866 L
-3193 3866 mt 3202 3877 L
-3202 3877 mt 3219 3905 L
-3219 3905 mt 3228 3932 L
-3228 3932 mt 3228 3932 L
-3228 3932 mt 3231 3960 L
-3231 3960 mt 3235 3987 L
-3235 3987 mt 3247 4015 L
-3247 4015 mt 3263 4037 L
-3263 4037 mt 3267 4042 L
-3267 4042 mt 3295 4070 L
-3295 4070 mt 3298 4072 L
-3298 4072 mt 3328 4097 L
-3328 4097 mt 3332 4103 L
-3332 4103 mt 3357 4125 L
-3357 4125 mt 3367 4139 L
-3367 4139 mt 3380 4152 L
-3380 4152 mt 3384 4180 L
-3384 4180 mt 3369 4207 L
-3369 4207 mt 3367 4209 L
-3367 4209 mt 3347 4235 L
-3347 4235 mt 3332 4255 L
-3332 4255 mt 3328 4262 L
-3328 4262 mt 3312 4290 L
-3312 4290 mt 3302 4317 L
-3302 4317 mt 3299 4345 L
-3299 4345 mt 3303 4372 L
-3303 4372 mt 3313 4400 L
-3313 4400 mt 3332 4423 L
-3332 4423 mt 3336 4427 L
-3336 4427 mt 3367 4451 L
-3367 4451 mt 3373 4455 L
-3373 4455 mt 3402 4471 L
-3402 4471 mt 3421 4482 L
-3421 4482 mt 3437 4491 L
-3437 4491 mt 3467 4510 L
-3467 4510 mt 3472 4513 L
-3472 4513 mt 3499 4537 L
-3499 4537 mt 3507 4547 L
-3507 4547 mt 3518 4565 L
-3518 4565 mt 3525 4592 L
-3525 4592 mt 3518 4620 L
-3518 4620 mt 3507 4634 L
-3507 4634 mt 3495 4648 L
-3495 4648 mt 3472 4669 L
-3472 4669 mt 3465 4675 L
-3465 4675 mt 3437 4696 L
-3437 4696 mt 3427 4703 L
-3427 4703 mt 3402 4719 L
-3402 4719 mt 3383 4730 L
-3383 4730 mt 3367 4739 L
-3367 4739 mt 3332 4757 L
-3332 4757 mt 3331 4758 L
-3331 4758 mt 3298 4774 L
-3298 4774 mt 3274 4785 L
-3274 4785 mt 3263 4790 L
-3263 4790 mt 3228 4806 L
-3228 4806 mt 3211 4813 L
-3211 4813 mt 3193 4820 L
-3193 4820 mt 3158 4833 L
-3158 4833 mt 3139 4840 L
-3139 4840 mt 3123 4846 L
-3123 4846 mt 3088 4857 L
-3088 4857 mt 3056 4868 L
-3056 4868 mt 3053 4869 L
-3053 4869 mt 3019 4879 L
-3019 4879 mt 2984 4889 L
-2984 4889 mt 2962 4895 L
-2962 4895 mt 2949 4899 L
-2949 4899 mt 2914 4908 L
-2914 4908 mt 2879 4916 L
-2879 4916 mt 2850 4923 L
-2850 4923 mt 2844 4924 L
-2844 4924 mt 2809 4931 L
-2809 4931 mt 2774 4938 L
-2774 4938 mt 2740 4944 L
-2740 4944 mt 2705 4950 L
-2705 4950 mt 2704 4950 L
-2704 4950 mt 2670 4955 L
-2670 4955 mt 2635 4960 L
-2635 4960 mt 2600 4963 L
-2600 4963 mt 2565 4967 L
-2565 4967 mt 2530 4970 L
-2530 4970 mt 2496 4972 L
-2496 4972 mt 2461 4974 L
-2461 4974 mt 2426 4975 L
-2426 4975 mt 2391 4975 L
-2391 4975 mt 2356 4975 L
-2356 4975 mt 2321 4974 L
-2321 4974 mt 2286 4973 L
-2286 4973 mt 2251 4971 L
-2251 4971 mt 2217 4968 L
-2217 4968 mt 2182 4964 L
-2182 4964 mt 2147 4960 L
-2147 4960 mt 2112 4955 L
-2112 4955 mt 2085 4950 L
-2085 4950 mt 2077 4949 L
-2077 4949 mt 2042 4942 L
-2042 4942 mt 2007 4935 L
-2007 4935 mt 1972 4926 L
-1972 4926 mt 1959 4923 L
-1959 4923 mt 1938 4917 L
-1938 4917 mt 1903 4907 L
-1903 4907 mt 1868 4896 L
-1868 4896 mt 1866 4895 L
-1866 4895 mt 1833 4883 L
-1833 4883 mt 1798 4870 L
-1798 4870 mt 1794 4868 L
-1794 4868 mt 1763 4854 L
-1763 4854 mt 1735 4840 L
-1735 4840 mt 1728 4837 L
-1728 4837 mt 1694 4818 L
-1694 4818 mt 1685 4813 L
-1685 4813 mt 1659 4796 L
-1659 4796 mt 1643 4785 L
-1643 4785 mt 1624 4771 L
-1624 4771 mt 1607 4758 L
-1607 4758 mt 1589 4742 L
-1589 4742 mt 1575 4730 L
-1575 4730 mt 1554 4709 L
-1554 4709 mt 1548 4703 L
-1548 4703 mt 1523 4675 L
-1523 4675 mt 1519 4670 L
-1519 4670 mt 1502 4648 L
-1502 4648 mt 1484 4623 L
-1484 4623 mt 1482 4620 L
-1482 4620 mt 1464 4592 L
-1464 4592 mt 1449 4568 L
-1449 4568 mt 1448 4565 L
-1448 4565 mt 1432 4537 L
-1432 4537 mt 1418 4510 L
-1418 4510 mt 1415 4503 L
-1415 4503 mt 1404 4482 L
-1404 4482 mt 1392 4455 L
-1392 4455 mt 1380 4427 L
-1380 4427 mt 1380 4427 L
-1380 4427 mt 1369 4400 L
-1369 4400 mt 1358 4372 L
-1358 4372 mt 1349 4345 L
-1349 4345 mt 1345 4333 L
-1345 4333 mt 1340 4317 L
-1340 4317 mt 1332 4290 L
-1332 4290 mt 1325 4262 L
-1325 4262 mt 1319 4235 L
-1319 4235 mt 1314 4207 L
-1314 4207 mt 1311 4180 L
-1311 4180 mt 1310 4171 L
-1310 4171 mt 1308 4152 L
-1308 4152 mt 1307 4125 L
-1307 4125 mt 1307 4097 L
-1307 4097 mt 1308 4070 L
-1308 4070 mt 1310 4042 L
-1310 4042 mt 1310 4039 L
-1310 4039 mt 1312 4015 L
-1312 4015 mt 1316 3987 L
-1316 3987 mt 1320 3960 L
-1320 3960 mt 1325 3932 L
-1325 3932 mt 1330 3905 L
-1330 3905 mt 1335 3877 L
-1335 3877 mt 1339 3850 L
-1339 3850 mt 1344 3822 L
-1344 3822 mt 1345 3812 L
-1345 3812 mt 1347 3795 L
-1347 3795 mt 1349 3767 L
-1349 3767 mt 1349 3740 L
-1349 3740 mt 1348 3712 L
-1348 3712 mt 1345 3689 L
-1345 3689 mt 1344 3685 L
-1344 3685 mt 1338 3657 L
-1338 3657 mt 1329 3630 L
-1329 3630 mt 1317 3602 L
-1317 3602 mt 1310 3589 L
-1310 3589 mt 1302 3575 L
-1302 3575 mt 1283 3547 L
-1283 3547 mt 1275 3537 L
-1275 3537 mt 1260 3519 L
-1260 3519 mt 1240 3499 L
-1240 3499 mt 1234 3492 L
-1234 3492 mt 1205 3467 L
-1205 3467 mt 1203 3464 L
-1203 3464 mt 1170 3439 L
-1170 3439 mt 1168 3437 L
-1168 3437 mt 1136 3414 L
-1136 3414 mt 1129 3409 L
-1129 3409 mt 1101 3391 L
-1101 3391 mt 1087 3382 L
-1087 3382 mt 1066 3369 L
-1066 3369 mt 1044 3354 L
-1044 3354 mt 1031 3347 L
-1031 3347 mt 999 3327 L
- 999 3327 mt 996 3325 L
- 996 3325 mt 961 3303 L
- 961 3303 mt 955 3299 L
- 955 3299 mt 926 3282 L
- 926 3282 mt 911 3272 L
- 911 3272 mt 892 3260 L
- 892 3260 mt 867 3244 L
- 867 3244 mt 857 3238 L
- 857 3238 mt 824 3217 L
- 824 3217 mt 822 3215 L
- 822 3215 mt 787 3193 L
- 787 3193 mt 782 3189 L
- 782 3189 mt 752 3169 L
- 752 3169 mt 741 3162 L
- 741 3162 mt 717 3145 L
- 717 3145 mt 702 3134 L
- 702 3134 mt 682 3120 L
- 682 3120 mt 665 3107 L
- 665 3107 mt 647 3094 L
- 647 3094 mt 629 3079 L
- 629 3079 mt 613 3066 L
- 613 3066 mt 595 3052 L
- 595 3052 mt 578 3037 L
- 578 3037 mt 563 3024 L
- 563 3024 mt 543 3006 L
- 543 3006 mt 533 2997 L
- 533 2997 mt 508 2972 L
- 508 2972 mt 505 2969 L
- 505 2969 mt 478 2942 L
- 478 2942 mt 473 2936 L
- 473 2936 mt 453 2914 L
- 453 2914 mt 438 2896 L
- 438 2896 mt 430 2887 L
- 430 2887 mt 409 2859 L
- 409 2859 mt 403 2851 L
- 403 2851 mt 389 2832 L
- 389 2832 mt 370 2804 L
- 370 2804 mt 368 2801 L
- 368 2801 mt 353 2777 L
- 353 2777 mt 337 2749 L
- 337 2749 mt 334 2744 L
- 334 2744 mt 321 2722 L
- 321 2722 mt 307 2694 L
- 307 2694 mt 299 2677 L
- 299 2677 mt 293 2667 L
- 293 2667 mt 281 2639 L
- 281 2639 mt 270 2612 L
- 270 2612 mt 264 2595 L
- 264 2595 mt 260 2584 L
- 260 2584 mt 251 2557 L
- 251 2557 mt 243 2529 L
- 243 2529 mt 236 2502 L
- 236 2502 mt 231 2474 L
- 231 2474 mt 229 2464 L
- 229 2464 mt 226 2446 L
- 226 2446 mt 222 2419 L
- 222 2419 mt 219 2391 L
- 219 2391 mt 216 2364 L
- 216 2364 mt 214 2336 L
- 214 2336 mt 213 2309 L
- 213 2309 mt 213 2281 L
- 213 2281 mt 213 2254 L
- 213 2254 mt 213 2226 L
- 213 2226 mt 215 2199 L
- 215 2199 mt 217 2171 L
- 217 2171 mt 219 2144 L
- 219 2144 mt 222 2116 L
- 222 2116 mt 226 2089 L
- 226 2089 mt 229 2071 L
- 229 2071 mt 230 2061 L
- 230 2061 mt 235 2034 L
- 235 2034 mt 240 2006 L
- 240 2006 mt 246 1979 L
- 246 1979 mt 251 1951 L
- 251 1951 mt 257 1924 L
- 257 1924 mt 263 1896 L
- 263 1896 mt 264 1894 L
- 264 1894 mt 270 1869 L
- 270 1869 mt 276 1841 L
- 276 1841 mt 282 1814 L
- 282 1814 mt 288 1786 L
- 288 1786 mt 295 1759 L
- 295 1759 mt 299 1742 L
- 299 1742 mt 301 1731 L
- 301 1731 mt 307 1704 L
- 307 1704 mt 313 1676 L
- 313 1676 mt 319 1649 L
- 319 1649 mt 325 1621 L
- 325 1621 mt 330 1594 L
- 330 1594 mt 334 1575 L
- 334 1575 mt 335 1566 L
- 335 1566 mt 340 1539 L
- 340 1539 mt 345 1511 L
- 345 1511 mt 350 1484 L
- 350 1484 mt 355 1456 L
- 355 1456 mt 360 1428 L
- 360 1428 mt 365 1401 L
- 365 1401 mt 368 1380 L
- 368 1380 mt 370 1373 L
- 370 1373 mt 375 1346 L
- 375 1346 mt 380 1318 L
- 380 1318 mt 385 1291 L
- 385 1291 mt 391 1263 L
- 391 1263 mt 396 1236 L
- 396 1236 mt 403 1208 L
- 403 1208 mt 403 1206 L
- 403 1206 mt 409 1181 L
- 409 1181 mt 417 1153 L
- 417 1153 mt 424 1126 L
- 424 1126 mt 432 1098 L
- 432 1098 mt 438 1080 L
- 438 1080 mt 441 1071 L
- 441 1071 mt 450 1043 L
- 450 1043 mt 460 1016 L
- 460 1016 mt 470 988 L
- 470 988 mt 473 981 L
- 473 981 mt 481 961 L
- 481 961 mt 492 933 L
- 492 933 mt 505 906 L
- 505 906 mt 508 899 L
- 508 899 mt 517 878 L
- 517 878 mt 531 851 L
- 531 851 mt 543 827 L
- 543 827 mt 545 823 L
- 545 823 mt 559 796 L
- 559 796 mt 575 768 L
- 575 768 mt 578 763 L
- 578 763 mt 591 741 L
- 591 741 mt 608 713 L
- 608 713 mt 613 706 L
- 613 706 mt 626 686 L
- 626 686 mt 644 658 L
- 644 658 mt 647 654 L
- 647 654 mt 664 631 L
- 664 631 mt 682 606 L
- 682 606 mt 684 603 L
- 684 603 mt 705 576 L
- 705 576 mt 717 561 L
- 717 561 mt 727 548 L
- 727 548 mt 750 521 L
- 750 521 mt 752 519 L
- 752 519 mt 774 493 L
- 774 493 mt 787 479 L
- 787 479 mt 800 466 L
- 800 466 mt 822 443 L
- 822 443 mt 827 438 L
- 827 438 mt 856 411 L
- 856 411 mt 857 410 L
- 857 410 mt 888 383 L
- 888 383 mt 892 380 L
- 892 380 mt 922 355 L
- 922 355 mt 926 352 L
- 926 352 mt 959 328 L
- 959 328 mt 961 327 L
- 961 327 mt 996 303 L
- 996 303 mt 1001 300 L
-1001 300 mt 1031 282 L
-1031 282 mt 1047 273 L
-1047 273 mt 1066 262 L
-1066 262 mt 1098 245 L
-1098 245 mt 1101 244 L
-1101 244 mt 1136 227 L
-1136 227 mt 1157 218 L
-1157 218 mt 1170 212 L
-1170 212 mt 1205 198 L
-1205 198 mt 1225 190 L
-1225 190 mt 1240 185 L
-1240 185 mt 1275 173 L
-1275 173 mt 1307 163 L
-1307 163 mt 1310 162 L
-1310 162 mt 1345 151 L
-1345 151 mt 1380 142 L
-1380 142 mt 1405 135 L
-1405 135 mt 1415 133 L
-1415 133 mt 1449 124 L
-1449 124 mt 1484 116 L
-1484 116 mt 1519 108 L
-1519 108 mt 1521 108 L
-1521 108 mt 1554 100 L
-1554 100 mt 1589 93 L
-1589 93 mt 1624 86 L
-1624 86 mt 1650 80 L
-1650 80 mt 1659 79 L
-1659 79 mt 1694 72 L
-1694 72 mt 1728 65 L
-1728 65 mt 1763 59 L
-1763 59 mt 1796 53 L
-1796 53 mt 1798 52 L
-1798 52 mt 1833 46 L
-1833 46 mt 1868 40 L
-1868 40 mt 1903 35 L
-1903 35 mt 1938 29 L
-1938 29 mt 1964 25 L
-1964 25 mt 1972 24 L
-1972 24 mt 2007 19 L
-2007 19 mt 2042 14 L
-2042 14 mt 2077 9 L
-2077 9 mt 2112 4 L
-2112 4 mt 2147 0 L
-2147 0 mt 2161 -1 L
-2161 -1 mt 2182 -4 L
-2182 -4 mt 2217 -9 L
-2217 -9 mt 2251 -13 L
-2251 -13 mt 2286 -18 L
-2286 -18 mt 2321 -23 L
-2321 -23 mt 2356 -28 L
-2356 -28 mt 2362 -29 L
-2362 -29 mt 2391 -33 L
-2391 -33 mt 2426 -38 L
-2426 -38 mt 2461 -44 L
-2461 -44 mt 2496 -49 L
-2496 -49 mt 2530 -55 L
-2530 -55 mt 2542 -56 L
-2542 -56 mt 2565 -60 L
-2565 -60 mt 2600 -65 L
-2600 -65 mt 2635 -70 L
-2635 -70 mt 2670 -75 L
-2670 -75 mt 2705 -80 L
-2705 -80 mt 2733 -84 L
-2733 -84 mt 2740 -85 L
-2740 -85 mt 2774 -90 L
-2774 -90 mt 2809 -94 L
-2809 -94 mt 2844 -99 L
-2844 -99 mt 2879 -104 L
-2879 -104 mt 2914 -109 L
-2914 -109 mt 2934 -111 L
-2934 -111 mt 2949 -113 L
-2949 -113 mt 2984 -118 L
-2984 -118 mt 3019 -122 L
-3019 -122 mt 3053 -127 L
-3053 -127 mt 3088 -132 L
-3088 -132 mt 3123 -136 L
-3123 -136 mt 3143 -139 L
-3143 -139 mt 3158 -141 L
-3158 -141 mt 3193 -145 L
-3193 -145 mt 3228 -150 L
-3228 -150 mt 3263 -155 L
-3263 -155 mt 3298 -159 L
-3298 -159 mt 3332 -164 L
-3332 -164 mt 3352 -166 L
-3352 -166 mt 3367 -168 L
-3367 -168 mt 3402 -172 L
-3402 -172 mt 3437 -176 L
-3437 -176 mt 3472 -180 L
-3472 -180 mt 3507 -184 L
-3507 -184 mt 3542 -188 L
-3542 -188 mt 3577 -191 L
-3577 -191 mt 3605 -194 L
-3605 -194 mt 3611 -194 L
-3611 -194 mt 3646 -197 L
-3646 -197 mt 3681 -201 L
-3681 -201 mt 3716 -203 L
-3716 -203 mt 3751 -206 L
-3751 -206 mt 3786 -209 L
-3786 -209 mt 3821 -212 L
-3821 -212 mt 3855 -214 L
-3855 -214 mt 3890 -216 L
-3890 -216 mt 3925 -218 L
-3925 -218 mt 3960 -220 L
-3960 -220 mt 3984 -221 L
-3984 -221 mt 3995 -222 L
-3995 -222 mt 4030 -223 L
-4030 -223 mt 4065 -224 L
-4065 -224 mt 4100 -225 L
-4100 -225 mt 4134 -226 L
-4134 -226 mt 4169 -226 L
-4169 -226 mt 4204 -226 L
-4204 -226 mt 4239 -226 L
-4239 -226 mt 4274 -225 L
-4274 -225 mt 4309 -224 L
-4309 -224 mt 4344 -223 L
-4344 -223 mt 4375 -221 L
-4375 -221 mt 4379 -221 L
-4379 -221 mt 4413 -219 L
-4413 -219 mt 4448 -217 L
-4448 -217 mt 4483 -214 L
-4483 -214 mt 4518 -210 L
-4518 -210 mt 4553 -207 L
-4553 -207 mt 4588 -202 L
-4588 -202 mt 4623 -198 L
-4623 -198 mt 4649 -194 L
-4649 -194 mt 4657 -193 L
-4657 -193 mt 4692 -187 L
-4692 -187 mt 4727 -182 L
-4727 -182 mt 4762 -175 L
-4762 -175 mt 4797 -169 L
-4797 -169 mt 4809 -166 L
-4809 -166 mt 4832 -162 L
-4832 -162 mt 4867 -154 L
-4867 -154 mt 4902 -146 L
-4902 -146 mt 4932 -139 L
-4932 -139 mt 4936 -138 L
-4936 -138 mt 4971 -129 L
-4971 -129 mt 5006 -119 L
-5006 -119 mt 5034 -111 L
-5034 -111 mt 5041 -109 L
-5041 -109 mt 5076 -99 L
-5076 -99 mt 5111 -88 L
-5111 -88 mt 5124 -84 L
-5124 -84 mt 5146 -77 L
-5146 -77 mt 5181 -65 L
-5181 -65 mt 5206 -56 L
-5206 -56 mt 5215 -53 L
-5215 -53 mt 5250 -40 L
-5250 -40 mt 5279 -29 L
-5279 -29 mt 5285 -26 L
-5285 -26 mt 5320 -12 L
-5320 -12 mt 5344 -1 L
-5344 -1 mt 5355 3 L
-5355 3 mt 5390 19 L
-5390 19 mt 5403 25 L
-5403 25 mt 5425 36 L
-5425 36 mt 5457 53 L
-5457 53 mt 5459 54 L
-5459 54 mt 5494 73 L
-5494 73 mt 5507 80 L
-5507 80 mt 5529 93 L
-5529 93 mt 5553 108 L
-5553 108 mt 5564 115 L
-5564 115 mt 5596 135 L
-5596 135 mt 5599 137 L
-5599 137 mt 5634 161 L
-5634 161 mt 5636 163 L
-5636 163 mt 5669 186 L
-5669 186 mt 5675 190 L
-5675 190 mt 5704 212 L
-5704 212 mt 5712 218 L
-5712 218 mt 5738 239 L
-5738 239 mt 5747 245 L
-5747 245 mt 5773 267 L
-5773 267 mt 5781 273 L
-5781 273 mt 5808 296 L
-5808 296 mt 5814 300 L
-5814 300 mt 5843 326 L
-5843 326 mt 5845 328 L
-5845 328 mt 5876 355 L
-5876 355 mt 5878 357 L
-5878 357 mt 5907 383 L
-5907 383 mt 5913 389 L
-5913 389 mt 5936 411 L
-5936 411 mt 5948 422 L
-5948 422 mt 5965 438 L
-5965 438 mt 5983 455 L
-5983 455 mt 5994 466 L
-5994 466 mt 6017 489 L
-6017 489 mt 6022 493 L
-6022 493 mt 6050 521 L
-6050 521 mt 6052 523 L
-6052 523 mt 6078 548 L
-6078 548 mt 6087 557 L
-6087 557 mt 6106 576 L
-6106 576 mt 6122 591 L
-6122 591 mt 6134 603 L
-6134 603 mt 6157 626 L
-6157 626 mt 6162 631 L
-6162 631 mt 6190 658 L
-6190 658 mt 6192 660 L
-6192 660 mt 6217 686 L
-6217 686 mt 6227 695 L
-6227 695 mt 6245 713 L
-6245 713 mt 6261 730 L
-6261 730 mt 6272 741 L
-6272 741 mt 6296 765 L
-6296 765 mt 6300 768 L
-6300 768 mt 6327 796 L
-6327 796 mt 6331 800 L
-6331 800 mt 6354 823 L
-6354 823 mt 6366 835 L
-6366 835 mt 6381 851 L
-6381 851 mt 6401 870 L
-6401 870 mt 6409 878 L
-6409 878 mt 6436 906 L
-6436 906 mt 6436 906 L
-6436 906 mt 6463 933 L
-6463 933 mt 6471 941 L
-6471 941 mt 6490 961 L
-6490 961 mt 6506 977 L
-6506 977 mt 6516 988 L
-6516 988 mt 6540 1014 L
-6540 1014 mt 6542 1016 L
-6542 1016 mt 6568 1043 L
-6568 1043 mt 6575 1051 L
-6575 1051 mt 6594 1071 L
-6594 1071 mt 6610 1089 L
-6610 1089 mt 6618 1098 L
-6618 1098 mt 6643 1126 L
-6643 1126 mt 6645 1129 L
-6645 1129 mt 6667 1153 L
-6667 1153 mt 6680 1169 L
-6680 1169 mt 6690 1181 L
-6690 1181 mt 6713 1208 L
-6713 1208 mt 6715 1211 L
-6715 1211 mt 6735 1236 L
-6735 1236 mt 6750 1254 L
-6750 1254 mt 6757 1263 L
-6757 1263 mt 6778 1291 L
-6778 1291 mt 6785 1299 L
-6785 1299 mt 6799 1318 L
-6799 1318 mt 6819 1346 L
-6819 1346 mt 6819 1346 L
-6819 1346 mt 6839 1373 L
-6839 1373 mt 6854 1396 L
-6854 1396 mt 6858 1401 L
-6858 1401 mt 6876 1428 L
-6876 1428 mt 6889 1449 L
-6889 1449 mt 6894 1456 L
-6894 1456 mt 6911 1484 L
-6911 1484 mt 6924 1506 L
-6924 1506 mt 6927 1511 L
-6927 1511 mt 6943 1539 L
-6943 1539 mt 6957 1566 L
-6957 1566 mt 6959 1569 L
-6959 1569 mt 6972 1594 L
-6972 1594 mt 6985 1621 L
-6985 1621 mt 6994 1640 L
-6994 1640 mt 6998 1649 L
-6998 1649 mt 7010 1676 L
-7010 1676 mt 7022 1704 L
-7022 1704 mt 7029 1720 L
-7029 1720 mt 7033 1731 L
-7033 1731 mt 7043 1759 L
-7043 1759 mt 7053 1786 L
-7053 1786 mt 7061 1814 L
-7061 1814 mt 7063 1821 L
-7063 1821 mt 7069 1841 L
-7069 1841 mt 7076 1869 L
-7076 1869 mt 7082 1896 L
-7082 1896 mt 7088 1924 L
-7088 1924 mt 7092 1951 L
-7092 1951 mt 7096 1979 L
-7096 1979 mt 7098 2005 L
-7029 1934 mt 7031 1951 L
-7031 1951 mt 7034 1979 L
-7034 1979 mt 7037 2006 L
-7037 2006 mt 7039 2034 L
-7039 2034 mt 7040 2061 L
-7040 2061 mt 7040 2089 L
-7040 2089 mt 7040 2116 L
-7040 2116 mt 7039 2144 L
-7039 2144 mt 7038 2171 L
-7038 2171 mt 7036 2199 L
-7036 2199 mt 7033 2226 L
-7033 2226 mt 7030 2254 L
-7030 2254 mt 7029 2260 L
-7029 2260 mt 7026 2281 L
-7026 2281 mt 7021 2309 L
-7021 2309 mt 7016 2336 L
-7016 2336 mt 7011 2364 L
-7011 2364 mt 7004 2391 L
-7004 2391 mt 6998 2419 L
-6998 2419 mt 6994 2435 L
-6994 2435 mt 6991 2446 L
-6991 2446 mt 6983 2474 L
-6983 2474 mt 6975 2502 L
-6975 2502 mt 6967 2529 L
-6967 2529 mt 6959 2555 L
-6959 2555 mt 6958 2557 L
-6958 2557 mt 6950 2584 L
-6950 2584 mt 6940 2612 L
-6940 2612 mt 6931 2639 L
-6931 2639 mt 6924 2659 L
-6924 2659 mt 6921 2667 L
-6921 2667 mt 6912 2694 L
-6912 2694 mt 6902 2722 L
-6902 2722 mt 6891 2749 L
-6891 2749 mt 6889 2755 L
-6889 2755 mt 6881 2777 L
-6881 2777 mt 6871 2804 L
-6871 2804 mt 6860 2832 L
-6860 2832 mt 6854 2847 L
-6854 2847 mt 6850 2859 L
-6850 2859 mt 6839 2887 L
-6839 2887 mt 6829 2914 L
-6829 2914 mt 6819 2940 L
-6819 2940 mt 6819 2942 L
-6819 2942 mt 6809 2969 L
-6809 2969 mt 6799 2997 L
-6799 2997 mt 6789 3024 L
-6789 3024 mt 6785 3035 L
-6785 3035 mt 6778 3052 L
-6778 3052 mt 6768 3079 L
-6768 3079 mt 6758 3107 L
-6758 3107 mt 6750 3129 L
-6750 3129 mt 6748 3134 L
-6748 3134 mt 6738 3162 L
-6738 3162 mt 6728 3189 L
-6728 3189 mt 6718 3217 L
-6718 3217 mt 6715 3228 L
-6715 3228 mt 6709 3244 L
-6709 3244 mt 6700 3272 L
-6700 3272 mt 6691 3299 L
-6691 3299 mt 6682 3327 L
-6682 3327 mt 6680 3335 L
-6680 3335 mt 6674 3354 L
-6674 3354 mt 6665 3382 L
-6665 3382 mt 6656 3409 L
-6656 3409 mt 6646 3437 L
-6646 3437 mt 6645 3440 L
-6645 3440 mt 6637 3464 L
-6637 3464 mt 6627 3492 L
-6627 3492 mt 6616 3519 L
-6616 3519 mt 6610 3534 L
-6610 3534 mt 6605 3547 L
-6605 3547 mt 6594 3575 L
-6594 3575 mt 6582 3602 L
-6582 3602 mt 6575 3618 L
-6575 3618 mt 6570 3630 L
-6570 3630 mt 6558 3657 L
-6558 3657 mt 6545 3685 L
-6545 3685 mt 6540 3695 L
-6540 3695 mt 6532 3712 L
-6532 3712 mt 6519 3740 L
-6519 3740 mt 6506 3767 L
-6506 3767 mt 6506 3768 L
-6506 3768 mt 6492 3795 L
-6492 3795 mt 6479 3822 L
-6479 3822 mt 6471 3838 L
-6471 3838 mt 6465 3850 L
-6465 3850 mt 6451 3877 L
-6451 3877 mt 6437 3905 L
-6437 3905 mt 6436 3908 L
-6436 3908 mt 6423 3932 L
-6423 3932 mt 6408 3960 L
-6408 3960 mt 6401 3972 L
-6401 3972 mt 6392 3987 L
-6392 3987 mt 6374 4015 L
-6374 4015 mt 6366 4026 L
-6366 4026 mt 6354 4042 L
-6354 4042 mt 6335 4070 L
-6335 4070 mt 6331 4076 L
-6331 4076 mt 6316 4097 L
-6316 4097 mt 6303 4125 L
-6303 4125 mt 6296 4144 L
-6296 4144 mt 6293 4152 L
-6293 4152 mt 6284 4180 L
-6284 4180 mt 6274 4207 L
-6274 4207 mt 6261 4224 L
-6261 4224 mt 6241 4235 L
-6241 4235 mt 6227 4242 L
-6227 4242 mt 6210 4235 L
-6210 4235 mt 6192 4224 L
-6192 4224 mt 6182 4207 L
-6182 4207 mt 6169 4180 L
-6169 4180 mt 6160 4152 L
-6160 4152 mt 6157 4137 L
-6157 4137 mt 6155 4125 L
-6155 4125 mt 6151 4097 L
-6151 4097 mt 6147 4070 L
-6147 4070 mt 6137 4042 L
-6137 4042 mt 6124 4015 L
-6124 4015 mt 6122 4010 L
-6122 4010 mt 6112 3987 L
-6112 3987 mt 6100 3960 L
-6100 3960 mt 6087 3932 L
-6087 3932 mt 6087 3932 L
-6087 3932 mt 6073 3905 L
-6073 3905 mt 6060 3877 L
-6060 3877 mt 6052 3859 L
-6052 3859 mt 6048 3850 L
-6048 3850 mt 6036 3822 L
-6036 3822 mt 6022 3795 L
-6022 3795 mt 6017 3787 L
-6017 3787 mt 6002 3767 L
-6002 3767 mt 5983 3746 L
-5983 3746 mt 5976 3740 L
-5976 3740 mt 5948 3717 L
-5948 3717 mt 5940 3712 L
-5940 3712 mt 5913 3696 L
-5913 3696 mt 5891 3685 L
-5891 3685 mt 5878 3679 L
-5878 3679 mt 5843 3664 L
-5843 3664 mt 5827 3657 L
-5827 3657 mt 5808 3649 L
-5808 3649 mt 5773 3633 L
-5773 3633 mt 5766 3630 L
-5766 3630 mt 5738 3616 L
-5738 3616 mt 5714 3602 L
-5714 3602 mt 5704 3596 L
-5704 3596 mt 5672 3575 L
-5672 3575 mt 5669 3572 L
-5669 3572 mt 5638 3547 L
-5638 3547 mt 5634 3543 L
-5634 3543 mt 5611 3519 L
-5611 3519 mt 5599 3506 L
-5599 3506 mt 5587 3492 L
-5587 3492 mt 5567 3464 L
-5567 3464 mt 5564 3460 L
-5564 3460 mt 5547 3437 L
-5547 3437 mt 5530 3409 L
-5530 3409 mt 5529 3408 L
-5529 3408 mt 5514 3382 L
-5514 3382 mt 5500 3354 L
-5500 3354 mt 5494 3340 L
-5494 3340 mt 5488 3327 L
-5488 3327 mt 5478 3299 L
-5478 3299 mt 5469 3272 L
-5469 3272 mt 5460 3244 L
-5460 3244 mt 5459 3243 L
-5459 3243 mt 5448 3217 L
-5448 3217 mt 5434 3189 L
-5434 3189 mt 5425 3174 L
-5425 3174 mt 5417 3162 L
-5417 3162 mt 5393 3134 L
-5393 3134 mt 5390 3131 L
-5390 3131 mt 5361 3107 L
-5361 3107 mt 5355 3102 L
-5355 3102 mt 5325 3079 L
-5325 3079 mt 5320 3076 L
-5320 3076 mt 5292 3052 L
-5292 3052 mt 5285 3046 L
-5285 3046 mt 5263 3024 L
-5263 3024 mt 5250 3012 L
-5250 3012 mt 5233 2997 L
-5233 2997 mt 5215 2983 L
-5215 2983 mt 5194 2969 L
-5194 2969 mt 5181 2962 L
-5181 2962 mt 5146 2949 L
-5146 2949 mt 5120 2942 L
-5120 2942 mt 5111 2939 L
-5111 2939 mt 5076 2928 L
-5076 2928 mt 5044 2914 L
-5044 2914 mt 5041 2913 L
-5041 2913 mt 5006 2894 L
-5006 2894 mt 4991 2887 L
-4991 2887 mt 4971 2876 L
-4971 2876 mt 4942 2859 L
-4942 2859 mt 4936 2856 L
-4936 2856 mt 4906 2832 L
-4906 2832 mt 4902 2827 L
-4902 2827 mt 4879 2804 L
-4879 2804 mt 4867 2790 L
-4867 2790 mt 4855 2777 L
-4855 2777 mt 4832 2749 L
-4832 2749 mt 4832 2748 L
-4832 2748 mt 4810 2722 L
-4810 2722 mt 4797 2706 L
-4797 2706 mt 4787 2694 L
-4787 2694 mt 4766 2667 L
-4766 2667 mt 4762 2660 L
-4762 2660 mt 4749 2639 L
-4749 2639 mt 4733 2612 L
-4733 2612 mt 4727 2600 L
-4727 2600 mt 4719 2584 L
-4719 2584 mt 4707 2557 L
-4707 2557 mt 4697 2529 L
-4697 2529 mt 4692 2514 L
-4692 2514 mt 4688 2502 L
-4688 2502 mt 4680 2474 L
-4680 2474 mt 4668 2446 L
-4668 2446 mt 4657 2433 L
-4657 2433 mt 4639 2419 L
-4639 2419 mt 4623 2409 L
-4623 2409 mt 4588 2393 L
-4588 2393 mt 4583 2391 L
-4583 2391 mt 4553 2376 L
-4553 2376 mt 4525 2364 L
-4525 2364 mt 4518 2360 L
-4518 2360 mt 4483 2345 L
-4483 2345 mt 4460 2336 L
-4460 2336 mt 4448 2332 L
-4448 2332 mt 4413 2321 L
-4413 2321 mt 4379 2311 L
-4379 2311 mt 4370 2309 L
-4370 2309 mt 4344 2302 L
-4344 2302 mt 4309 2293 L
-4309 2293 mt 4274 2285 L
-4274 2285 mt 4259 2281 L
-4259 2281 mt 4239 2275 L
-4239 2275 mt 4204 2265 L
-4204 2265 mt 4169 2255 L
-4169 2255 mt 4166 2254 L
-4166 2254 mt 4134 2243 L
-4134 2243 mt 4100 2229 L
-4100 2229 mt 4095 2226 L
-4095 2226 mt 4065 2209 L
-4065 2209 mt 4051 2199 L
-4051 2199 mt 4030 2182 L
-4030 2182 mt 4018 2171 L
-4018 2171 mt 3995 2150 L
-3995 2150 mt 3988 2144 L
-3988 2144 mt 3962 2116 L
-3962 2116 mt 3960 2113 L
-3960 2113 mt 3940 2089 L
-3940 2089 mt 3925 2067 L
-3925 2067 mt 3921 2061 L
-3921 2061 mt 3900 2034 L
-3900 2034 mt 3890 2022 L
-3890 2022 mt 3874 2006 L
-3874 2006 mt 3855 1993 L
-3855 1993 mt 3823 1979 L
-3823 1979 mt 3821 1978 L
-3821 1978 mt 3786 1969 L
-3786 1969 mt 3751 1962 L
-3751 1962 mt 3716 1954 L
-3716 1954 mt 3711 1951 L
-3711 1951 mt 3681 1938 L
-3681 1938 mt 3660 1924 L
-3660 1924 mt 3646 1914 L
-3646 1914 mt 3621 1896 L
-3621 1896 mt 3611 1889 L
-3611 1889 mt 3580 1869 L
-3580 1869 mt 3577 1866 L
-3577 1866 mt 3542 1847 L
-3542 1847 mt 3524 1841 L
-3524 1841 mt 3507 1834 L
-3507 1834 mt 3472 1828 L
-3472 1828 mt 3437 1827 L
-3437 1827 mt 3402 1831 L
-3402 1831 mt 3367 1838 L
-3367 1838 mt 3355 1841 L
-3355 1841 mt 3332 1847 L
-3332 1847 mt 3298 1856 L
-3298 1856 mt 3263 1863 L
-3263 1863 mt 3231 1869 L
-3231 1869 mt 3228 1869 L
-3228 1869 mt 3193 1873 L
-3193 1873 mt 3158 1876 L
-3158 1876 mt 3123 1877 L
-3123 1877 mt 3088 1876 L
-3088 1876 mt 3053 1875 L
-3053 1875 mt 3019 1874 L
-3019 1874 mt 2984 1873 L
-2984 1873 mt 2949 1873 L
-2949 1873 mt 2914 1874 L
-2914 1874 mt 2879 1878 L
-2879 1878 mt 2844 1883 L
-2844 1883 mt 2809 1891 L
-2809 1891 mt 2792 1896 L
-2792 1896 mt 2774 1902 L
-2774 1902 mt 2740 1915 L
-2740 1915 mt 2720 1924 L
-2720 1924 mt 2705 1931 L
-2705 1931 mt 2670 1948 L
-2670 1948 mt 2664 1951 L
-2664 1951 mt 2635 1967 L
-2635 1967 mt 2615 1979 L
-2615 1979 mt 2600 1987 L
-2600 1987 mt 2566 2006 L
-2566 2006 mt 2565 2006 L
-2565 2006 mt 2530 2026 L
-2530 2026 mt 2515 2034 L
-2515 2034 mt 2496 2045 L
-2496 2045 mt 2468 2061 L
-2468 2061 mt 2461 2067 L
-2461 2067 mt 2431 2089 L
-2431 2089 mt 2426 2094 L
-2426 2094 mt 2403 2116 L
-2403 2116 mt 2391 2132 L
-2391 2132 mt 2383 2144 L
-2383 2144 mt 2367 2171 L
-2367 2171 mt 2356 2193 L
-2356 2193 mt 2354 2199 L
-2354 2199 mt 2342 2226 L
-2342 2226 mt 2331 2254 L
-2331 2254 mt 2321 2281 L
-2321 2281 mt 2321 2281 L
-2321 2281 mt 2316 2309 L
-2316 2309 mt 2316 2336 L
-2316 2336 mt 2320 2364 L
-2320 2364 mt 2321 2366 L
-2321 2366 mt 2328 2391 L
-2328 2391 mt 2336 2419 L
-2336 2419 mt 2343 2446 L
-2343 2446 mt 2350 2474 L
-2350 2474 mt 2356 2502 L
-2356 2502 mt 2356 2503 L
-2356 2503 mt 2363 2529 L
-2363 2529 mt 2372 2557 L
-2372 2557 mt 2383 2584 L
-2383 2584 mt 2391 2602 L
-2391 2602 mt 2395 2612 L
-2395 2612 mt 2408 2639 L
-2408 2639 mt 2422 2667 L
-2422 2667 mt 2426 2675 L
-2426 2675 mt 2435 2694 L
-2435 2694 mt 2450 2722 L
-2450 2722 mt 2461 2740 L
-2461 2740 mt 2466 2749 L
-2466 2749 mt 2486 2777 L
-2486 2777 mt 2496 2789 L
-2496 2789 mt 2508 2804 L
-2508 2804 mt 2530 2831 L
-2530 2831 mt 2531 2832 L
-2531 2832 mt 2551 2859 L
-2551 2859 mt 2565 2881 L
-2565 2881 mt 2569 2887 L
-2569 2887 mt 2583 2914 L
-2583 2914 mt 2594 2942 L
-2594 2942 mt 2600 2969 L
-2600 2969 mt 2600 2969 L
-2600 2969 mt 2604 2997 L
-2604 2997 mt 2606 3024 L
-2606 3024 mt 2606 3052 L
-2606 3052 mt 2600 3079 L
-2600 3079 mt 2600 3080 L
-2600 3080 mt 2593 3107 L
-2593 3107 mt 2595 3134 L
-2595 3134 mt 2600 3143 L
-2600 3143 mt 2618 3162 L
-2618 3162 mt 2635 3172 L
-2635 3172 mt 2670 3187 L
-2670 3187 mt 2675 3189 L
-2675 3189 mt 2705 3200 L
-2705 3200 mt 2740 3212 L
-2740 3212 mt 2752 3217 L
-2752 3217 mt 2774 3227 L
-2774 3227 mt 2809 3244 L
-2809 3244 mt 2810 3244 L
-2810 3244 mt 2844 3267 L
-2844 3267 mt 2852 3272 L
-2852 3272 mt 2879 3295 L
-2879 3295 mt 2884 3299 L
-2884 3299 mt 2911 3327 L
-2911 3327 mt 2914 3331 L
-2914 3331 mt 2933 3354 L
-2933 3354 mt 2949 3379 L
-2949 3379 mt 2951 3382 L
-2951 3382 mt 2963 3409 L
-2963 3409 mt 2972 3437 L
-2972 3437 mt 2979 3464 L
-2979 3464 mt 2984 3486 L
-2984 3486 mt 2985 3492 L
-2985 3492 mt 2992 3519 L
-2992 3519 mt 2999 3547 L
-2999 3547 mt 3006 3575 L
-3006 3575 mt 3014 3602 L
-3014 3602 mt 3018 3630 L
-3018 3630 mt 3017 3657 L
-3017 3657 mt 3010 3685 L
-3010 3685 mt 3000 3712 L
-3000 3712 mt 2990 3740 L
-2990 3740 mt 2985 3767 L
-2985 3767 mt 2987 3795 L
-2987 3795 mt 2999 3822 L
-2999 3822 mt 3019 3846 L
-3019 3846 mt 3021 3850 L
-3021 3850 mt 3053 3877 L
-3053 3877 mt 3054 3877 L
-3054 3877 mt 3084 3905 L
-3084 3905 mt 3088 3910 L
-3088 3910 mt 3103 3932 L
-3103 3932 mt 3112 3960 L
-3112 3960 mt 3114 3987 L
-3114 3987 mt 3116 4015 L
-3116 4015 mt 3116 4042 L
-3116 4042 mt 3116 4070 L
-3116 4070 mt 3113 4097 L
-3113 4097 mt 3109 4125 L
-3109 4125 mt 3100 4152 L
-3100 4152 mt 3088 4180 L
-3088 4180 mt 3088 4180 L
-3088 4180 mt 3081 4207 L
-3081 4207 mt 3074 4235 L
-3074 4235 mt 3076 4262 L
-3076 4262 mt 3080 4290 L
-3080 4290 mt 3088 4311 L
-3088 4311 mt 3090 4317 L
-3090 4317 mt 3103 4345 L
-3103 4345 mt 3122 4372 L
-3122 4372 mt 3123 4374 L
-3123 4374 mt 3148 4400 L
-3148 4400 mt 3158 4407 L
-3158 4407 mt 3183 4427 L
-3183 4427 mt 3193 4433 L
-3193 4433 mt 3228 4455 L
-3228 4455 mt 3228 4455 L
-3228 4455 mt 3263 4472 L
-3263 4472 mt 3283 4482 L
-3283 4482 mt 3298 4488 L
-3298 4488 mt 3332 4503 L
-3332 4503 mt 3348 4510 L
-3348 4510 mt 3367 4518 L
-3367 4518 mt 3402 4535 L
-3402 4535 mt 3406 4537 L
-3406 4537 mt 3437 4562 L
-3437 4562 mt 3440 4565 L
-3440 4565 mt 3456 4592 L
-3456 4592 mt 3448 4620 L
-3448 4620 mt 3437 4630 L
-3437 4630 mt 3415 4648 L
-3415 4648 mt 3402 4657 L
-3402 4657 mt 3374 4675 L
-3374 4675 mt 3367 4679 L
-3367 4679 mt 3332 4697 L
-3332 4697 mt 3321 4703 L
-3321 4703 mt 3298 4714 L
-3298 4714 mt 3265 4730 L
-3265 4730 mt 3263 4731 L
-3263 4731 mt 3228 4747 L
-3228 4747 mt 3203 4758 L
-3203 4758 mt 3193 4762 L
-3193 4762 mt 3158 4776 L
-3158 4776 mt 3135 4785 L
-3135 4785 mt 3123 4790 L
-3123 4790 mt 3088 4802 L
-3088 4802 mt 3058 4813 L
-3058 4813 mt 3053 4814 L
-3053 4814 mt 3019 4825 L
-3019 4825 mt 2984 4836 L
-2984 4836 mt 2969 4840 L
-2969 4840 mt 2949 4846 L
-2949 4846 mt 2914 4855 L
-2914 4855 mt 2879 4864 L
-2879 4864 mt 2866 4868 L
-2866 4868 mt 2844 4873 L
-2844 4873 mt 2809 4881 L
-2809 4881 mt 2774 4889 L
-2774 4889 mt 2742 4895 L
-2742 4895 mt 2740 4896 L
-2740 4896 mt 2705 4902 L
-2705 4902 mt 2670 4908 L
-2670 4908 mt 2635 4913 L
-2635 4913 mt 2600 4918 L
-2600 4918 mt 2565 4922 L
-2565 4922 mt 2560 4923 L
-2560 4923 mt 2530 4926 L
-2530 4926 mt 2496 4929 L
-2496 4929 mt 2461 4931 L
-2461 4931 mt 2426 4933 L
-2426 4933 mt 2391 4935 L
-2391 4935 mt 2356 4935 L
-2356 4935 mt 2321 4935 L
-2321 4935 mt 2286 4935 L
-2286 4935 mt 2251 4933 L
-2251 4933 mt 2217 4931 L
-2217 4931 mt 2182 4928 L
-2182 4928 mt 2147 4924 L
-2147 4924 mt 2140 4923 L
-2140 4923 mt 2112 4919 L
-2112 4919 mt 2077 4913 L
-2077 4913 mt 2042 4907 L
-2042 4907 mt 2007 4900 L
-2007 4900 mt 1988 4895 L
-1988 4895 mt 1972 4892 L
-1972 4892 mt 1938 4883 L
-1938 4883 mt 1903 4873 L
-1903 4873 mt 1888 4868 L
-1888 4868 mt 1868 4861 L
-1868 4861 mt 1833 4849 L
-1833 4849 mt 1812 4840 L
-1812 4840 mt 1798 4834 L
-1798 4834 mt 1763 4819 L
-1763 4819 mt 1752 4813 L
-1752 4813 mt 1728 4800 L
-1728 4800 mt 1702 4785 L
-1702 4785 mt 1694 4780 L
-1694 4780 mt 1660 4758 L
-1660 4758 mt 1659 4756 L
-1659 4756 mt 1625 4730 L
-1625 4730 mt 1624 4729 L
-1624 4729 mt 1595 4703 L
-1595 4703 mt 1589 4697 L
-1589 4697 mt 1569 4675 L
-1569 4675 mt 1554 4658 L
-1554 4658 mt 1546 4648 L
-1546 4648 mt 1526 4620 L
-1526 4620 mt 1519 4610 L
-1519 4610 mt 1507 4592 L
-1507 4592 mt 1491 4565 L
-1491 4565 mt 1484 4553 L
-1484 4553 mt 1476 4537 L
-1476 4537 mt 1462 4510 L
-1462 4510 mt 1449 4484 L
-1449 4484 mt 1449 4482 L
-1449 4482 mt 1436 4455 L
-1436 4455 mt 1425 4427 L
-1425 4427 mt 1415 4401 L
-1415 4401 mt 1414 4400 L
-1414 4400 mt 1404 4372 L
-1404 4372 mt 1395 4345 L
-1395 4345 mt 1386 4317 L
-1386 4317 mt 1380 4297 L
-1380 4297 mt 1377 4290 L
-1377 4290 mt 1370 4262 L
-1370 4262 mt 1364 4235 L
-1364 4235 mt 1360 4207 L
-1360 4207 mt 1357 4180 L
-1357 4180 mt 1355 4152 L
-1355 4152 mt 1354 4125 L
-1354 4125 mt 1356 4097 L
-1356 4097 mt 1358 4070 L
-1358 4070 mt 1362 4042 L
-1362 4042 mt 1367 4015 L
-1367 4015 mt 1374 3987 L
-1374 3987 mt 1380 3964 L
-1380 3964 mt 1381 3960 L
-1381 3960 mt 1389 3932 L
-1389 3932 mt 1398 3905 L
-1398 3905 mt 1406 3877 L
-1406 3877 mt 1415 3850 L
-1415 3850 mt 1415 3850 L
-1415 3850 mt 1423 3822 L
-1423 3822 mt 1430 3795 L
-1430 3795 mt 1435 3767 L
-1435 3767 mt 1439 3740 L
-1439 3740 mt 1440 3712 L
-1440 3712 mt 1440 3685 L
-1440 3685 mt 1436 3657 L
-1436 3657 mt 1430 3630 L
-1430 3630 mt 1421 3602 L
-1421 3602 mt 1415 3587 L
-1415 3587 mt 1409 3575 L
-1409 3575 mt 1393 3547 L
-1393 3547 mt 1380 3528 L
-1380 3528 mt 1374 3519 L
-1374 3519 mt 1350 3492 L
-1350 3492 mt 1345 3487 L
-1345 3487 mt 1321 3464 L
-1321 3464 mt 1310 3455 L
-1310 3455 mt 1287 3437 L
-1287 3437 mt 1275 3429 L
-1275 3429 mt 1248 3409 L
-1248 3409 mt 1240 3405 L
-1240 3405 mt 1205 3383 L
-1205 3383 mt 1204 3382 L
-1204 3382 mt 1170 3362 L
-1170 3362 mt 1157 3354 L
-1157 3354 mt 1136 3342 L
-1136 3342 mt 1109 3327 L
-1109 3327 mt 1101 3323 L
-1101 3323 mt 1066 3303 L
-1066 3303 mt 1060 3299 L
-1060 3299 mt 1031 3283 L
-1031 3283 mt 1011 3272 L
-1011 3272 mt 996 3263 L
- 996 3263 mt 964 3244 L
- 964 3244 mt 961 3243 L
- 961 3243 mt 926 3222 L
- 926 3222 mt 918 3217 L
- 918 3217 mt 892 3201 L
- 892 3201 mt 873 3189 L
- 873 3189 mt 857 3179 L
- 857 3179 mt 829 3162 L
- 829 3162 mt 822 3157 L
- 822 3157 mt 787 3135 L
- 787 3135 mt 786 3134 L
- 786 3134 mt 752 3111 L
- 752 3111 mt 745 3107 L
- 745 3107 mt 717 3087 L
- 717 3087 mt 707 3079 L
- 707 3079 mt 682 3061 L
- 682 3061 mt 670 3052 L
- 670 3052 mt 647 3033 L
- 647 3033 mt 636 3024 L
- 636 3024 mt 613 3004 L
- 613 3004 mt 604 2997 L
- 604 2997 mt 578 2973 L
- 578 2973 mt 574 2969 L
- 574 2969 mt 546 2942 L
- 546 2942 mt 543 2939 L
- 543 2939 mt 520 2914 L
- 520 2914 mt 508 2901 L
- 508 2901 mt 496 2887 L
- 496 2887 mt 473 2859 L
- 473 2859 mt 473 2859 L
- 473 2859 mt 453 2832 L
- 453 2832 mt 438 2811 L
- 438 2811 mt 434 2804 L
- 434 2804 mt 416 2777 L
- 416 2777 mt 403 2755 L
- 403 2755 mt 400 2749 L
- 400 2749 mt 384 2722 L
- 384 2722 mt 370 2694 L
- 370 2694 mt 368 2691 L
- 368 2691 mt 357 2667 L
- 357 2667 mt 345 2639 L
- 345 2639 mt 334 2612 L
- 334 2612 mt 334 2611 L
- 334 2611 mt 324 2584 L
- 324 2584 mt 315 2557 L
- 315 2557 mt 308 2529 L
- 308 2529 mt 301 2502 L
- 301 2502 mt 299 2489 L
- 299 2489 mt 296 2474 L
- 296 2474 mt 291 2446 L
- 291 2446 mt 287 2419 L
- 287 2419 mt 284 2391 L
- 284 2391 mt 282 2364 L
- 282 2364 mt 281 2336 L
- 281 2336 mt 280 2309 L
- 280 2309 mt 279 2281 L
- 279 2281 mt 280 2254 L
- 280 2254 mt 281 2226 L
- 281 2226 mt 283 2199 L
- 283 2199 mt 285 2171 L
- 285 2171 mt 288 2144 L
- 288 2144 mt 292 2116 L
- 292 2116 mt 296 2089 L
- 296 2089 mt 299 2073 L
- 299 2073 mt 301 2061 L
- 301 2061 mt 306 2034 L
- 306 2034 mt 311 2006 L
- 311 2006 mt 317 1979 L
- 317 1979 mt 322 1951 L
- 322 1951 mt 328 1924 L
- 328 1924 mt 334 1896 L
- 334 1896 mt 334 1896 L
- 334 1896 mt 339 1869 L
- 339 1869 mt 345 1841 L
- 345 1841 mt 351 1814 L
- 351 1814 mt 356 1786 L
- 356 1786 mt 362 1759 L
- 362 1759 mt 368 1731 L
- 368 1731 mt 368 1728 L
- 368 1728 mt 373 1704 L
- 373 1704 mt 378 1676 L
- 378 1676 mt 383 1649 L
- 383 1649 mt 388 1621 L
- 388 1621 mt 393 1594 L
- 393 1594 mt 398 1566 L
- 398 1566 mt 402 1539 L
- 402 1539 mt 403 1531 L
- 403 1531 mt 407 1511 L
- 407 1511 mt 411 1484 L
- 411 1484 mt 415 1456 L
- 415 1456 mt 419 1428 L
- 419 1428 mt 423 1401 L
- 423 1401 mt 428 1373 L
- 428 1373 mt 432 1346 L
- 432 1346 mt 436 1318 L
- 436 1318 mt 438 1306 L
- 438 1306 mt 441 1291 L
- 441 1291 mt 446 1263 L
- 446 1263 mt 451 1236 L
- 451 1236 mt 457 1208 L
- 457 1208 mt 463 1181 L
- 463 1181 mt 469 1153 L
- 469 1153 mt 473 1138 L
- 473 1138 mt 476 1126 L
- 476 1126 mt 484 1098 L
- 484 1098 mt 492 1071 L
- 492 1071 mt 500 1043 L
- 500 1043 mt 508 1021 L
- 508 1021 mt 510 1016 L
- 510 1016 mt 519 988 L
- 519 988 mt 529 961 L
- 529 961 mt 540 933 L
- 540 933 mt 543 927 L
- 543 927 mt 552 906 L
- 552 906 mt 564 878 L
- 564 878 mt 577 851 L
- 577 851 mt 578 849 L
- 578 849 mt 590 823 L
- 590 823 mt 605 796 L
- 605 796 mt 613 781 L
- 613 781 mt 620 768 L
- 620 768 mt 636 741 L
- 636 741 mt 647 722 L
- 647 722 mt 653 713 L
- 653 713 mt 670 686 L
- 670 686 mt 682 668 L
- 682 668 mt 689 658 L
- 689 658 mt 708 631 L
- 708 631 mt 717 619 L
- 717 619 mt 729 603 L
- 729 603 mt 750 576 L
- 750 576 mt 752 573 L
- 752 573 mt 772 548 L
- 772 548 mt 787 531 L
- 787 531 mt 796 521 L
- 796 521 mt 820 493 L
- 820 493 mt 822 492 L
- 822 492 mt 846 466 L
- 846 466 mt 857 455 L
- 857 455 mt 874 438 L
- 874 438 mt 892 422 L
- 892 422 mt 904 411 L
- 904 411 mt 926 392 L
- 926 392 mt 937 383 L
- 937 383 mt 961 365 L
- 961 365 mt 974 355 L
- 974 355 mt 996 340 L
- 996 340 mt 1014 328 L
-1014 328 mt 1031 317 L
-1031 317 mt 1059 300 L
-1059 300 mt 1066 296 L
-1066 296 mt 1101 277 L
-1101 277 mt 1110 273 L
-1110 273 mt 1136 260 L
-1136 260 mt 1169 245 L
-1169 245 mt 1170 245 L
-1170 245 mt 1205 230 L
-1205 230 mt 1239 218 L
-1239 218 mt 1240 218 L
-1240 218 mt 1275 206 L
-1275 206 mt 1310 195 L
-1310 195 mt 1328 190 L
-1328 190 mt 1345 186 L
-1345 186 mt 1380 177 L
-1380 177 mt 1415 168 L
-1415 168 mt 1439 163 L
-1439 163 mt 1449 160 L
-1449 160 mt 1484 153 L
-1484 153 mt 1519 146 L
-1519 146 mt 1554 138 L
-1554 138 mt 1569 135 L
-1569 135 mt 1589 131 L
-1589 131 mt 1624 125 L
-1624 125 mt 1659 118 L
-1659 118 mt 1694 111 L
-1694 111 mt 1713 108 L
-1713 108 mt 1728 105 L
-1728 105 mt 1763 99 L
-1763 99 mt 1798 93 L
-1798 93 mt 1833 87 L
-1833 87 mt 1868 82 L
-1868 82 mt 1880 80 L
-1880 80 mt 1903 77 L
-1903 77 mt 1938 72 L
-1938 72 mt 1972 67 L
-1972 67 mt 2007 63 L
-2007 63 mt 2042 59 L
-2042 59 mt 2077 54 L
-2077 54 mt 2090 53 L
-2090 53 mt 2112 50 L
-2112 50 mt 2147 46 L
-2147 46 mt 2182 42 L
-2182 42 mt 2217 38 L
-2217 38 mt 2251 34 L
-2251 34 mt 2286 30 L
-2286 30 mt 2321 26 L
-2321 26 mt 2324 25 L
-2324 25 mt 2356 21 L
-2356 21 mt 2391 17 L
-2391 17 mt 2426 12 L
-2426 12 mt 2461 7 L
-2461 7 mt 2496 2 L
-2496 2 mt 2526 -1 L
-2526 -1 mt 2530 -2 L
-2530 -2 mt 2565 -7 L
-2565 -7 mt 2600 -11 L
-2600 -11 mt 2635 -16 L
-2635 -16 mt 2670 -20 L
-2670 -20 mt 2705 -25 L
-2705 -25 mt 2736 -29 L
-2736 -29 mt 2740 -29 L
-2740 -29 mt 2774 -34 L
-2774 -34 mt 2809 -38 L
-2809 -38 mt 2844 -43 L
-2844 -43 mt 2879 -47 L
-2879 -47 mt 2914 -51 L
-2914 -51 mt 2949 -56 L
-2949 -56 mt 2955 -56 L
-2955 -56 mt 2984 -60 L
-2984 -60 mt 3019 -64 L
-3019 -64 mt 3053 -68 L
-3053 -68 mt 3088 -72 L
-3088 -72 mt 3123 -76 L
-3123 -76 mt 3158 -81 L
-3158 -81 mt 3182 -84 L
-3182 -84 mt 3193 -85 L
-3193 -85 mt 3228 -89 L
-3228 -89 mt 3263 -94 L
-3263 -94 mt 3298 -98 L
-3298 -98 mt 3332 -102 L
-3332 -102 mt 3367 -107 L
-3367 -107 mt 3402 -111 L
-3402 -111 mt 3405 -111 L
-3405 -111 mt 3437 -115 L
-3437 -115 mt 3472 -119 L
-3472 -119 mt 3507 -123 L
-3507 -123 mt 3542 -127 L
-3542 -127 mt 3577 -131 L
-3577 -131 mt 3611 -134 L
-3611 -134 mt 3646 -138 L
-3646 -138 mt 3655 -139 L
-3655 -139 mt 3681 -141 L
-3681 -141 mt 3716 -145 L
-3716 -145 mt 3751 -148 L
-3751 -148 mt 3786 -152 L
-3786 -152 mt 3821 -155 L
-3821 -155 mt 3855 -158 L
-3855 -158 mt 3890 -161 L
-3890 -161 mt 3925 -164 L
-3925 -164 mt 3960 -166 L
-3960 -166 mt 3962 -166 L
-3962 -166 mt 3995 -168 L
-3995 -168 mt 4030 -170 L
-4030 -170 mt 4065 -172 L
-4065 -172 mt 4100 -174 L
-4100 -174 mt 4134 -175 L
-4134 -175 mt 4169 -176 L
-4169 -176 mt 4204 -177 L
-4204 -177 mt 4239 -177 L
-4239 -177 mt 4274 -178 L
-4274 -178 mt 4309 -177 L
-4309 -177 mt 4344 -177 L
-4344 -177 mt 4379 -176 L
-4379 -176 mt 4413 -174 L
-4413 -174 mt 4448 -173 L
-4448 -173 mt 4483 -170 L
-4483 -170 mt 4518 -168 L
-4518 -168 mt 4533 -166 L
-4533 -166 mt 4553 -164 L
-4553 -164 mt 4588 -161 L
-4588 -161 mt 4623 -157 L
-4623 -157 mt 4657 -153 L
-4657 -153 mt 4692 -148 L
-4692 -148 mt 4727 -143 L
-4727 -143 mt 4751 -139 L
-4751 -139 mt 4762 -137 L
-4762 -137 mt 4797 -131 L
-4797 -131 mt 4832 -125 L
-4832 -125 mt 4867 -118 L
-4867 -118 mt 4897 -111 L
-4897 -111 mt 4902 -110 L
-4902 -110 mt 4936 -102 L
-4936 -102 mt 4971 -94 L
-4971 -94 mt 5006 -85 L
-5006 -85 mt 5009 -84 L
-5009 -84 mt 5041 -75 L
-5041 -75 mt 5076 -65 L
-5076 -65 mt 5105 -56 L
-5105 -56 mt 5111 -55 L
-5111 -55 mt 5146 -44 L
-5146 -44 mt 5181 -32 L
-5181 -32 mt 5191 -29 L
-5191 -29 mt 5215 -20 L
-5215 -20 mt 5250 -7 L
-5250 -7 mt 5266 -1 L
-5266 -1 mt 5285 5 L
-5285 5 mt 5320 20 L
-5320 20 mt 5332 25 L
-5332 25 mt 5355 36 L
-5355 36 mt 5390 52 L
-5390 52 mt 5391 53 L
-5391 53 mt 5425 70 L
-5425 70 mt 5445 80 L
-5445 80 mt 5459 88 L
-5459 88 mt 5494 108 L
-5494 108 mt 5494 108 L
-5494 108 mt 5529 129 L
-5529 129 mt 5539 135 L
-5539 135 mt 5564 151 L
-5564 151 mt 5581 163 L
-5581 163 mt 5599 175 L
-5599 175 mt 5621 190 L
-5621 190 mt 5634 199 L
-5634 199 mt 5659 218 L
-5659 218 mt 5669 225 L
-5669 225 mt 5695 245 L
-5695 245 mt 5704 252 L
-5704 252 mt 5730 273 L
-5730 273 mt 5738 280 L
-5738 280 mt 5763 300 L
-5763 300 mt 5773 309 L
-5773 309 mt 5795 328 L
-5795 328 mt 5808 339 L
-5808 339 mt 5826 355 L
-5826 355 mt 5843 371 L
-5843 371 mt 5857 383 L
-5857 383 mt 5878 403 L
-5878 403 mt 5886 411 L
-5886 411 mt 5913 435 L
-5913 435 mt 5915 438 L
-5915 438 mt 5944 466 L
-5944 466 mt 5948 469 L
-5948 469 mt 5973 493 L
-5973 493 mt 5983 503 L
-5983 503 mt 6001 521 L
-6001 521 mt 6017 537 L
-6017 537 mt 6029 548 L
-6029 548 mt 6052 572 L
-6052 572 mt 6056 576 L
-6056 576 mt 6084 603 L
-6084 603 mt 6087 606 L
-6087 606 mt 6112 631 L
-6112 631 mt 6122 641 L
-6122 641 mt 6139 658 L
-6139 658 mt 6157 676 L
-6157 676 mt 6166 686 L
-6166 686 mt 6192 712 L
-6192 712 mt 6193 713 L
-6193 713 mt 6220 741 L
-6220 741 mt 6227 747 L
-6227 747 mt 6247 768 L
-6247 768 mt 6261 783 L
-6261 783 mt 6274 796 L
-6274 796 mt 6296 818 L
-6296 818 mt 6301 823 L
-6301 823 mt 6328 851 L
-6328 851 mt 6331 854 L
-6331 854 mt 6355 878 L
-6355 878 mt 6366 889 L
-6366 889 mt 6382 906 L
-6382 906 mt 6401 925 L
-6401 925 mt 6409 933 L
-6409 933 mt 6435 961 L
-6435 961 mt 6436 961 L
-6436 961 mt 6462 988 L
-6462 988 mt 6471 998 L
-6471 998 mt 6488 1016 L
-6488 1016 mt 6506 1034 L
-6506 1034 mt 6514 1043 L
-6514 1043 mt 6540 1071 L
-6540 1071 mt 6540 1072 L
-6540 1072 mt 6565 1098 L
-6565 1098 mt 6575 1110 L
-6575 1110 mt 6589 1126 L
-6589 1126 mt 6610 1150 L
-6610 1150 mt 6613 1153 L
-6613 1153 mt 6637 1181 L
-6637 1181 mt 6645 1191 L
-6645 1191 mt 6660 1208 L
-6660 1208 mt 6680 1233 L
-6680 1233 mt 6682 1236 L
-6682 1236 mt 6704 1263 L
-6704 1263 mt 6715 1277 L
-6715 1277 mt 6726 1291 L
-6726 1291 mt 6746 1318 L
-6746 1318 mt 6750 1323 L
-6750 1323 mt 6767 1346 L
-6767 1346 mt 6785 1371 L
-6785 1371 mt 6786 1373 L
-6786 1373 mt 6805 1401 L
-6805 1401 mt 6819 1423 L
-6819 1423 mt 6823 1428 L
-6823 1428 mt 6841 1456 L
-6841 1456 mt 6854 1478 L
-6854 1478 mt 6858 1484 L
-6858 1484 mt 6874 1511 L
-6874 1511 mt 6889 1539 L
-6889 1539 mt 6889 1539 L
-6889 1539 mt 6903 1566 L
-6903 1566 mt 6917 1594 L
-6917 1594 mt 6924 1608 L
-6924 1608 mt 6930 1621 L
-6930 1621 mt 6943 1649 L
-6943 1649 mt 6954 1676 L
-6954 1676 mt 6959 1688 L
-6959 1688 mt 6965 1704 L
-6965 1704 mt 6976 1731 L
-6976 1731 mt 6985 1759 L
-6985 1759 mt 6994 1784 L
-6994 1784 mt 6994 1786 L
-6994 1786 mt 7003 1814 L
-7003 1814 mt 7010 1841 L
-7010 1841 mt 7017 1869 L
-7017 1869 mt 7022 1896 L
-7022 1896 mt 7027 1924 L
-7027 1924 mt 7029 1934 L
-6959 1864 mt 6960 1869 L
-6960 1869 mt 6965 1896 L
-6965 1896 mt 6970 1924 L
-6970 1924 mt 6973 1951 L
-6973 1951 mt 6976 1979 L
-6976 1979 mt 6979 2006 L
-6979 2006 mt 6980 2034 L
-6980 2034 mt 6981 2061 L
-6981 2061 mt 6981 2089 L
-6981 2089 mt 6981 2116 L
-6981 2116 mt 6980 2144 L
-6980 2144 mt 6978 2171 L
-6978 2171 mt 6975 2199 L
-6975 2199 mt 6972 2226 L
-6972 2226 mt 6968 2254 L
-6968 2254 mt 6964 2281 L
-6964 2281 mt 6959 2309 L
-6959 2309 mt 6959 2310 L
-6959 2310 mt 6954 2336 L
-6954 2336 mt 6947 2364 L
-6947 2364 mt 6941 2391 L
-6941 2391 mt 6934 2419 L
-6934 2419 mt 6926 2446 L
-6926 2446 mt 6924 2453 L
-6924 2453 mt 6918 2474 L
-6918 2474 mt 6909 2502 L
-6909 2502 mt 6900 2529 L
-6900 2529 mt 6891 2557 L
-6891 2557 mt 6889 2562 L
-6889 2562 mt 6881 2584 L
-6881 2584 mt 6872 2612 L
-6872 2612 mt 6862 2639 L
-6862 2639 mt 6854 2658 L
-6854 2658 mt 6851 2667 L
-6851 2667 mt 6840 2694 L
-6840 2694 mt 6830 2722 L
-6830 2722 mt 6819 2746 L
-6819 2746 mt 6818 2749 L
-6818 2749 mt 6807 2777 L
-6807 2777 mt 6795 2804 L
-6795 2804 mt 6785 2830 L
-6785 2830 mt 6784 2832 L
-6784 2832 mt 6773 2859 L
-6773 2859 mt 6761 2887 L
-6761 2887 mt 6750 2914 L
-6750 2914 mt 6750 2916 L
-6750 2916 mt 6740 2942 L
-6740 2942 mt 6729 2969 L
-6729 2969 mt 6719 2997 L
-6719 2997 mt 6715 3007 L
-6715 3007 mt 6708 3024 L
-6708 3024 mt 6698 3052 L
-6698 3052 mt 6688 3079 L
-6688 3079 mt 6680 3103 L
-6680 3103 mt 6679 3107 L
-6679 3107 mt 6669 3134 L
-6669 3134 mt 6660 3162 L
-6660 3162 mt 6652 3189 L
-6652 3189 mt 6645 3212 L
-6645 3212 mt 6643 3217 L
-6643 3217 mt 6635 3244 L
-6635 3244 mt 6628 3272 L
-6628 3272 mt 6620 3299 L
-6620 3299 mt 6612 3327 L
-6612 3327 mt 6610 3333 L
-6610 3333 mt 6604 3354 L
-6604 3354 mt 6596 3382 L
-6596 3382 mt 6588 3409 L
-6588 3409 mt 6579 3437 L
-6579 3437 mt 6575 3448 L
-6575 3448 mt 6570 3464 L
-6570 3464 mt 6560 3492 L
-6560 3492 mt 6550 3519 L
-6550 3519 mt 6540 3543 L
-6540 3543 mt 6539 3547 L
-6539 3547 mt 6527 3575 L
-6527 3575 mt 6515 3602 L
-6515 3602 mt 6506 3622 L
-6506 3622 mt 6502 3630 L
-6502 3630 mt 6488 3657 L
-6488 3657 mt 6474 3685 L
-6474 3685 mt 6471 3691 L
-6471 3691 mt 6459 3712 L
-6459 3712 mt 6444 3740 L
-6444 3740 mt 6436 3755 L
-6436 3755 mt 6429 3767 L
-6429 3767 mt 6414 3795 L
-6414 3795 mt 6401 3819 L
-6401 3819 mt 6399 3822 L
-6399 3822 mt 6385 3850 L
-6385 3850 mt 6372 3877 L
-6372 3877 mt 6366 3888 L
-6366 3888 mt 6358 3905 L
-6358 3905 mt 6344 3932 L
-6344 3932 mt 6331 3952 L
-6331 3952 mt 6325 3960 L
-6325 3960 mt 6301 3987 L
-6301 3987 mt 6296 3992 L
-6296 3992 mt 6267 4015 L
-6267 4015 mt 6261 4019 L
-6261 4019 mt 6227 4022 L
-6227 4022 mt 6216 4015 L
-6216 4015 mt 6192 3998 L
-6192 3998 mt 6184 3987 L
-6184 3987 mt 6166 3960 L
-6166 3960 mt 6157 3944 L
-6157 3944 mt 6151 3932 L
-6151 3932 mt 6138 3905 L
-6138 3905 mt 6125 3877 L
-6125 3877 mt 6122 3868 L
-6122 3868 mt 6115 3850 L
-6115 3850 mt 6105 3822 L
-6105 3822 mt 6094 3795 L
-6094 3795 mt 6087 3782 L
-6087 3782 mt 6079 3767 L
-6079 3767 mt 6062 3740 L
-6062 3740 mt 6052 3727 L
-6052 3727 mt 6040 3712 L
-6040 3712 mt 6017 3688 L
-6017 3688 mt 6013 3685 L
-6013 3685 mt 5983 3661 L
-5983 3661 mt 5976 3657 L
-5976 3657 mt 5948 3642 L
-5948 3642 mt 5915 3630 L
-5915 3630 mt 5913 3629 L
-5913 3629 mt 5878 3617 L
-5878 3617 mt 5843 3605 L
-5843 3605 mt 5835 3602 L
-5835 3602 mt 5808 3592 L
-5808 3592 mt 5773 3577 L
-5773 3577 mt 5768 3575 L
-5768 3575 mt 5738 3559 L
-5738 3559 mt 5720 3547 L
-5720 3547 mt 5704 3536 L
-5704 3536 mt 5683 3519 L
-5683 3519 mt 5669 3507 L
-5669 3507 mt 5654 3492 L
-5654 3492 mt 5634 3470 L
-5634 3470 mt 5630 3464 L
-5630 3464 mt 5610 3437 L
-5610 3437 mt 5599 3417 L
-5599 3417 mt 5595 3409 L
-5595 3409 mt 5581 3382 L
-5581 3382 mt 5569 3354 L
-5569 3354 mt 5564 3340 L
-5564 3340 mt 5559 3327 L
-5559 3327 mt 5551 3299 L
-5551 3299 mt 5545 3272 L
-5545 3272 mt 5538 3244 L
-5538 3244 mt 5530 3217 L
-5530 3217 mt 5529 3214 L
-5529 3214 mt 5520 3189 L
-5520 3189 mt 5509 3162 L
-5509 3162 mt 5494 3137 L
-5494 3137 mt 5493 3134 L
-5493 3134 mt 5470 3107 L
-5470 3107 mt 5459 3097 L
-5459 3097 mt 5438 3079 L
-5438 3079 mt 5425 3070 L
-5425 3070 mt 5397 3052 L
-5397 3052 mt 5390 3047 L
-5390 3047 mt 5360 3024 L
-5360 3024 mt 5355 3020 L
-5355 3020 mt 5329 2997 L
-5329 2997 mt 5320 2988 L
-5320 2988 mt 5300 2969 L
-5300 2969 mt 5285 2957 L
-5285 2957 mt 5266 2942 L
-5266 2942 mt 5250 2931 L
-5250 2931 mt 5219 2914 L
-5219 2914 mt 5215 2913 L
-5215 2913 mt 5181 2901 L
-5181 2901 mt 5146 2892 L
-5146 2892 mt 5129 2887 L
-5129 2887 mt 5111 2881 L
-5111 2881 mt 5076 2866 L
-5076 2866 mt 5062 2859 L
-5062 2859 mt 5041 2849 L
-5041 2849 mt 5007 2832 L
-5007 2832 mt 5006 2831 L
-5006 2831 mt 4971 2810 L
-4971 2810 mt 4964 2804 L
-4964 2804 mt 4936 2780 L
-4936 2780 mt 4933 2777 L
-4933 2777 mt 4906 2749 L
-4906 2749 mt 4902 2744 L
-4902 2744 mt 4884 2722 L
-4884 2722 mt 4867 2700 L
-4867 2700 mt 4863 2694 L
-4863 2694 mt 4845 2667 L
-4845 2667 mt 4832 2646 L
-4832 2646 mt 4827 2639 L
-4827 2639 mt 4815 2612 L
-4815 2612 mt 4804 2584 L
-4804 2584 mt 4797 2563 L
-4797 2563 mt 4795 2557 L
-4795 2557 mt 4791 2529 L
-4791 2529 mt 4789 2502 L
-4789 2502 mt 4788 2474 L
-4788 2474 mt 4787 2446 L
-4787 2446 mt 4783 2419 L
-4783 2419 mt 4769 2391 L
-4769 2391 mt 4762 2383 L
-4762 2383 mt 4745 2364 L
-4745 2364 mt 4727 2347 L
-4727 2347 mt 4715 2336 L
-4715 2336 mt 4692 2315 L
-4692 2315 mt 4685 2309 L
-4685 2309 mt 4657 2283 L
-4657 2283 mt 4656 2281 L
-4656 2281 mt 4627 2254 L
-4627 2254 mt 4623 2250 L
-4623 2250 mt 4594 2226 L
-4594 2226 mt 4588 2221 L
-4588 2221 mt 4562 2199 L
-4562 2199 mt 4553 2188 L
-4553 2188 mt 4538 2171 L
-4538 2171 mt 4522 2144 L
-4522 2144 mt 4518 2133 L
-4518 2133 mt 4511 2116 L
-4511 2116 mt 4504 2089 L
-4504 2089 mt 4497 2061 L
-4497 2061 mt 4484 2034 L
-4484 2034 mt 4483 2032 L
-4483 2032 mt 4448 2009 L
-4448 2009 mt 4442 2006 L
-4442 2006 mt 4413 1999 L
-4413 1999 mt 4379 1993 L
-4379 1993 mt 4344 1989 L
-4344 1989 mt 4309 1984 L
-4309 1984 mt 4274 1981 L
-4274 1981 mt 4257 1979 L
-4257 1979 mt 4239 1976 L
-4239 1976 mt 4204 1970 L
-4204 1970 mt 4172 1951 L
-4172 1951 mt 4169 1949 L
-4169 1949 mt 4147 1924 L
-4147 1924 mt 4134 1911 L
-4134 1911 mt 4122 1896 L
-4122 1896 mt 4100 1874 L
-4100 1874 mt 4094 1869 L
-4094 1869 mt 4065 1849 L
-4065 1849 mt 4047 1841 L
-4047 1841 mt 4030 1834 L
-4030 1834 mt 3995 1826 L
-3995 1826 mt 3960 1818 L
-3960 1818 mt 3933 1814 L
-3933 1814 mt 3925 1813 L
-3925 1813 mt 3890 1807 L
-3890 1807 mt 3855 1803 L
-3855 1803 mt 3821 1799 L
-3821 1799 mt 3786 1794 L
-3786 1794 mt 3751 1787 L
-3751 1787 mt 3747 1786 L
-3747 1786 mt 3716 1776 L
-3716 1776 mt 3681 1759 L
-3681 1759 mt 3680 1759 L
-3680 1759 mt 3646 1740 L
-3646 1740 mt 3634 1731 L
-3634 1731 mt 3611 1715 L
-3611 1715 mt 3597 1704 L
-3597 1704 mt 3577 1687 L
-3577 1687 mt 3564 1676 L
-3564 1676 mt 3542 1656 L
-3542 1656 mt 3532 1649 L
-3532 1649 mt 3507 1628 L
-3507 1628 mt 3496 1621 L
-3496 1621 mt 3472 1604 L
-3472 1604 mt 3451 1594 L
-3451 1594 mt 3437 1585 L
-3437 1585 mt 3402 1571 L
-3402 1571 mt 3384 1566 L
-3384 1566 mt 3367 1561 L
-3367 1561 mt 3332 1556 L
-3332 1556 mt 3298 1552 L
-3298 1552 mt 3263 1548 L
-3263 1548 mt 3228 1543 L
-3228 1543 mt 3203 1539 L
-3203 1539 mt 3193 1537 L
-3193 1537 mt 3158 1529 L
-3158 1529 mt 3123 1520 L
-3123 1520 mt 3091 1511 L
-3091 1511 mt 3088 1510 L
-3088 1510 mt 3053 1502 L
-3053 1502 mt 3019 1493 L
-3019 1493 mt 2984 1487 L
-2984 1487 mt 2960 1484 L
-2960 1484 mt 2949 1482 L
-2949 1482 mt 2914 1480 L
-2914 1480 mt 2879 1479 L
-2879 1479 mt 2844 1479 L
-2844 1479 mt 2809 1482 L
-2809 1482 mt 2791 1484 L
-2791 1484 mt 2774 1485 L
-2774 1485 mt 2740 1490 L
-2740 1490 mt 2705 1495 L
-2705 1495 mt 2670 1500 L
-2670 1500 mt 2635 1506 L
-2635 1506 mt 2610 1511 L
-2610 1511 mt 2600 1513 L
-2600 1513 mt 2565 1519 L
-2565 1519 mt 2530 1525 L
-2530 1525 mt 2496 1530 L
-2496 1530 mt 2461 1533 L
-2461 1533 mt 2426 1534 L
-2426 1534 mt 2391 1533 L
-2391 1533 mt 2356 1532 L
-2356 1532 mt 2321 1530 L
-2321 1530 mt 2286 1528 L
-2286 1528 mt 2251 1527 L
-2251 1527 mt 2217 1530 L
-2217 1530 mt 2182 1536 L
-2182 1536 mt 2173 1539 L
-2173 1539 mt 2147 1549 L
-2147 1549 mt 2122 1566 L
-2122 1566 mt 2112 1574 L
-2112 1574 mt 2094 1594 L
-2094 1594 mt 2077 1614 L
-2077 1614 mt 2073 1621 L
-2073 1621 mt 2058 1649 L
-2058 1649 mt 2044 1676 L
-2044 1676 mt 2042 1681 L
-2042 1681 mt 2034 1704 L
-2034 1704 mt 2026 1731 L
-2026 1731 mt 2020 1759 L
-2020 1759 mt 2015 1786 L
-2015 1786 mt 2012 1814 L
-2012 1814 mt 2009 1841 L
-2009 1841 mt 2007 1863 L
-2007 1863 mt 2007 1869 L
-2007 1869 mt 2006 1896 L
-2006 1896 mt 2005 1924 L
-2005 1924 mt 2004 1951 L
-2004 1951 mt 2005 1979 L
-2005 1979 mt 2007 1998 L
-2007 1998 mt 2009 2006 L
-2009 2006 mt 2017 2034 L
-2017 2034 mt 2026 2061 L
-2026 2061 mt 2031 2089 L
-2031 2089 mt 2028 2116 L
-2028 2116 mt 2015 2144 L
-2015 2144 mt 2007 2155 L
-2007 2155 mt 1998 2171 L
-1998 2171 mt 1983 2199 L
-1983 2199 mt 1976 2226 L
-1976 2226 mt 1980 2254 L
-1980 2254 mt 1992 2281 L
-1992 2281 mt 2007 2305 L
-2007 2305 mt 2011 2309 L
-2011 2309 mt 2037 2336 L
-2037 2336 mt 2042 2342 L
-2042 2342 mt 2069 2364 L
-2069 2364 mt 2077 2371 L
-2077 2371 mt 2103 2391 L
-2103 2391 mt 2112 2398 L
-2112 2398 mt 2138 2419 L
-2138 2419 mt 2147 2426 L
-2147 2426 mt 2172 2446 L
-2172 2446 mt 2182 2455 L
-2182 2455 mt 2202 2474 L
-2202 2474 mt 2217 2489 L
-2217 2489 mt 2227 2502 L
-2227 2502 mt 2247 2529 L
-2247 2529 mt 2251 2535 L
-2251 2535 mt 2265 2557 L
-2265 2557 mt 2282 2584 L
-2282 2584 mt 2286 2592 L
-2286 2592 mt 2298 2612 L
-2298 2612 mt 2313 2639 L
-2313 2639 mt 2321 2652 L
-2321 2652 mt 2330 2667 L
-2330 2667 mt 2348 2694 L
-2348 2694 mt 2356 2706 L
-2356 2706 mt 2367 2722 L
-2367 2722 mt 2388 2749 L
-2388 2749 mt 2391 2752 L
-2391 2752 mt 2412 2777 L
-2412 2777 mt 2426 2792 L
-2426 2792 mt 2436 2804 L
-2436 2804 mt 2461 2830 L
-2461 2830 mt 2462 2832 L
-2462 2832 mt 2487 2859 L
-2487 2859 mt 2496 2870 L
-2496 2870 mt 2508 2887 L
-2508 2887 mt 2525 2914 L
-2525 2914 mt 2530 2927 L
-2530 2927 mt 2537 2942 L
-2537 2942 mt 2542 2969 L
-2542 2969 mt 2541 2997 L
-2541 2997 mt 2537 3024 L
-2537 3024 mt 2533 3052 L
-2533 3052 mt 2530 3061 L
-2530 3061 mt 2526 3079 L
-2526 3079 mt 2517 3107 L
-2517 3107 mt 2511 3134 L
-2511 3134 mt 2514 3162 L
-2514 3162 mt 2530 3188 L
-2530 3188 mt 2532 3189 L
-2532 3189 mt 2565 3211 L
-2565 3211 mt 2576 3217 L
-2576 3217 mt 2600 3228 L
-2600 3228 mt 2635 3243 L
-2635 3243 mt 2639 3244 L
-2639 3244 mt 2670 3258 L
-2670 3258 mt 2697 3272 L
-2697 3272 mt 2705 3277 L
-2705 3277 mt 2739 3299 L
-2739 3299 mt 2740 3300 L
-2740 3300 mt 2768 3327 L
-2768 3327 mt 2774 3334 L
-2774 3334 mt 2790 3354 L
-2790 3354 mt 2809 3382 L
-2809 3382 mt 2809 3382 L
-2809 3382 mt 2826 3409 L
-2826 3409 mt 2841 3437 L
-2841 3437 mt 2844 3443 L
-2844 3443 mt 2855 3464 L
-2855 3464 mt 2867 3492 L
-2867 3492 mt 2879 3517 L
-2879 3517 mt 2880 3519 L
-2880 3519 mt 2894 3547 L
-2894 3547 mt 2907 3575 L
-2907 3575 mt 2914 3589 L
-2914 3589 mt 2920 3602 L
-2920 3602 mt 2928 3630 L
-2928 3630 mt 2930 3657 L
-2930 3657 mt 2925 3685 L
-2925 3685 mt 2915 3712 L
-2915 3712 mt 2914 3713 L
-2914 3713 mt 2902 3740 L
-2902 3740 mt 2889 3767 L
-2889 3767 mt 2879 3795 L
-2879 3795 mt 2879 3796 L
-2879 3796 mt 2871 3822 L
-2871 3822 mt 2864 3850 L
-2864 3850 mt 2857 3877 L
-2857 3877 mt 2846 3905 L
-2846 3905 mt 2844 3907 L
-2844 3907 mt 2826 3932 L
-2826 3932 mt 2809 3947 L
-2809 3947 mt 2792 3960 L
-2792 3960 mt 2774 3971 L
-2774 3971 mt 2746 3987 L
-2746 3987 mt 2740 3991 L
-2740 3991 mt 2705 4009 L
-2705 4009 mt 2696 4015 L
-2696 4015 mt 2670 4030 L
-2670 4030 mt 2652 4042 L
-2652 4042 mt 2635 4056 L
-2635 4056 mt 2623 4070 L
-2623 4070 mt 2609 4097 L
-2609 4097 mt 2606 4125 L
-2606 4125 mt 2613 4152 L
-2613 4152 mt 2626 4180 L
-2626 4180 mt 2635 4193 L
-2635 4193 mt 2646 4207 L
-2646 4207 mt 2670 4235 L
-2670 4235 mt 2670 4235 L
-2670 4235 mt 2699 4262 L
-2699 4262 mt 2705 4267 L
-2705 4267 mt 2737 4290 L
-2737 4290 mt 2740 4291 L
-2740 4291 mt 2774 4309 L
-2774 4309 mt 2792 4317 L
-2792 4317 mt 2809 4325 L
-2809 4325 mt 2844 4339 L
-2844 4339 mt 2857 4345 L
-2857 4345 mt 2879 4354 L
-2879 4354 mt 2914 4371 L
-2914 4371 mt 2915 4372 L
-2915 4372 mt 2949 4391 L
-2949 4391 mt 2962 4400 L
-2962 4400 mt 2984 4413 L
-2984 4413 mt 3008 4427 L
-3008 4427 mt 3019 4433 L
-3019 4433 mt 3053 4453 L
-3053 4453 mt 3057 4455 L
-3057 4455 mt 3088 4472 L
-3088 4472 mt 3109 4482 L
-3109 4482 mt 3123 4489 L
-3123 4489 mt 3158 4504 L
-3158 4504 mt 3171 4510 L
-3171 4510 mt 3193 4519 L
-3193 4519 mt 3228 4532 L
-3228 4532 mt 3244 4537 L
-3244 4537 mt 3263 4545 L
-3263 4545 mt 3298 4556 L
-3298 4556 mt 3320 4565 L
-3320 4565 mt 3332 4571 L
-3332 4571 mt 3362 4592 L
-3362 4592 mt 3353 4620 L
-3353 4620 mt 3332 4633 L
-3332 4633 mt 3298 4648 L
-3298 4648 mt 3298 4648 L
-3298 4648 mt 3263 4664 L
-3263 4664 mt 3243 4675 L
-3243 4675 mt 3228 4682 L
-3228 4682 mt 3193 4700 L
-3193 4700 mt 3187 4703 L
-3187 4703 mt 3158 4716 L
-3158 4716 mt 3126 4730 L
-3126 4730 mt 3123 4731 L
-3123 4731 mt 3088 4745 L
-3088 4745 mt 3057 4758 L
-3057 4758 mt 3053 4759 L
-3053 4759 mt 3019 4771 L
-3019 4771 mt 2984 4782 L
-2984 4782 mt 2975 4785 L
-2975 4785 mt 2949 4793 L
-2949 4793 mt 2914 4803 L
-2914 4803 mt 2879 4813 L
-2879 4813 mt 2879 4813 L
-2879 4813 mt 2844 4822 L
-2844 4822 mt 2809 4830 L
-2809 4830 mt 2774 4839 L
-2774 4839 mt 2768 4840 L
-2768 4840 mt 2740 4846 L
-2740 4846 mt 2705 4854 L
-2705 4854 mt 2670 4861 L
-2670 4861 mt 2635 4867 L
-2635 4867 mt 2630 4868 L
-2630 4868 mt 2600 4872 L
-2600 4872 mt 2565 4878 L
-2565 4878 mt 2530 4882 L
-2530 4882 mt 2496 4886 L
-2496 4886 mt 2461 4890 L
-2461 4890 mt 2426 4893 L
-2426 4893 mt 2391 4895 L
-2391 4895 mt 2385 4895 L
-2385 4895 mt 2356 4896 L
-2356 4896 mt 2321 4897 L
-2321 4897 mt 2286 4897 L
-2286 4897 mt 2251 4896 L
-2251 4896 mt 2230 4895 L
-2230 4895 mt 2217 4895 L
-2217 4895 mt 2182 4892 L
-2182 4892 mt 2147 4889 L
-2147 4889 mt 2112 4884 L
-2112 4884 mt 2077 4879 L
-2077 4879 mt 2042 4873 L
-2042 4873 mt 2015 4868 L
-2015 4868 mt 2007 4866 L
-2007 4866 mt 1972 4858 L
-1972 4858 mt 1938 4849 L
-1938 4849 mt 1906 4840 L
-1906 4840 mt 1903 4839 L
-1903 4839 mt 1868 4828 L
-1868 4828 mt 1833 4815 L
-1833 4815 mt 1827 4813 L
-1827 4813 mt 1798 4801 L
-1798 4801 mt 1766 4785 L
-1766 4785 mt 1763 4784 L
-1763 4784 mt 1728 4765 L
-1728 4765 mt 1716 4758 L
-1716 4758 mt 1694 4743 L
-1694 4743 mt 1675 4730 L
-1675 4730 mt 1659 4717 L
-1659 4717 mt 1641 4703 L
-1641 4703 mt 1624 4686 L
-1624 4686 mt 1613 4675 L
-1613 4675 mt 1589 4648 L
-1589 4648 mt 1589 4648 L
-1589 4648 mt 1568 4620 L
-1568 4620 mt 1554 4599 L
-1554 4599 mt 1550 4592 L
-1550 4592 mt 1533 4565 L
-1533 4565 mt 1519 4539 L
-1519 4539 mt 1518 4537 L
-1518 4537 mt 1505 4510 L
-1505 4510 mt 1492 4482 L
-1492 4482 mt 1484 4464 L
-1484 4464 mt 1480 4455 L
-1480 4455 mt 1470 4427 L
-1470 4427 mt 1460 4400 L
-1460 4400 mt 1450 4372 L
-1450 4372 mt 1449 4371 L
-1449 4371 mt 1441 4345 L
-1441 4345 mt 1432 4317 L
-1432 4317 mt 1423 4290 L
-1423 4290 mt 1415 4262 L
-1415 4262 mt 1415 4259 L
-1415 4259 mt 1409 4235 L
-1409 4235 mt 1404 4207 L
-1404 4207 mt 1401 4180 L
-1401 4180 mt 1400 4152 L
-1400 4152 mt 1400 4125 L
-1400 4125 mt 1403 4097 L
-1403 4097 mt 1407 4070 L
-1407 4070 mt 1414 4042 L
-1414 4042 mt 1415 4040 L
-1415 4040 mt 1422 4015 L
-1422 4015 mt 1432 3987 L
-1432 3987 mt 1443 3960 L
-1443 3960 mt 1449 3945 L
-1449 3945 mt 1456 3932 L
-1456 3932 mt 1469 3905 L
-1469 3905 mt 1483 3877 L
-1483 3877 mt 1484 3874 L
-1484 3874 mt 1497 3850 L
-1497 3850 mt 1509 3822 L
-1509 3822 mt 1519 3797 L
-1519 3797 mt 1520 3795 L
-1520 3795 mt 1529 3767 L
-1529 3767 mt 1536 3740 L
-1536 3740 mt 1540 3712 L
-1540 3712 mt 1541 3685 L
-1541 3685 mt 1539 3657 L
-1539 3657 mt 1535 3630 L
-1535 3630 mt 1528 3602 L
-1528 3602 mt 1519 3575 L
-1519 3575 mt 1519 3574 L
-1519 3574 mt 1507 3547 L
-1507 3547 mt 1492 3519 L
-1492 3519 mt 1484 3509 L
-1484 3509 mt 1472 3492 L
-1472 3492 mt 1449 3466 L
-1449 3466 mt 1448 3464 L
-1448 3464 mt 1417 3437 L
-1417 3437 mt 1415 3435 L
-1415 3435 mt 1380 3409 L
-1380 3409 mt 1380 3409 L
-1380 3409 mt 1345 3387 L
-1345 3387 mt 1336 3382 L
-1336 3382 mt 1310 3368 L
-1310 3368 mt 1286 3354 L
-1286 3354 mt 1275 3349 L
-1275 3349 mt 1240 3332 L
-1240 3332 mt 1231 3327 L
-1231 3327 mt 1205 3315 L
-1205 3315 mt 1175 3299 L
-1175 3299 mt 1170 3297 L
-1170 3297 mt 1136 3280 L
-1136 3280 mt 1119 3272 L
-1119 3272 mt 1101 3263 L
-1101 3263 mt 1066 3245 L
-1066 3245 mt 1065 3244 L
-1065 3244 mt 1031 3226 L
-1031 3226 mt 1014 3217 L
-1014 3217 mt 996 3207 L
- 996 3207 mt 965 3189 L
- 965 3189 mt 961 3187 L
- 961 3187 mt 926 3167 L
- 926 3167 mt 918 3162 L
- 918 3162 mt 892 3146 L
- 892 3146 mt 872 3134 L
- 872 3134 mt 857 3125 L
- 857 3125 mt 828 3107 L
- 828 3107 mt 822 3103 L
- 822 3103 mt 787 3080 L
- 787 3080 mt 785 3079 L
- 785 3079 mt 752 3057 L
- 752 3057 mt 745 3052 L
- 745 3052 mt 717 3031 L
- 717 3031 mt 708 3024 L
- 708 3024 mt 682 3004 L
- 682 3004 mt 673 2997 L
- 673 2997 mt 647 2975 L
- 647 2975 mt 641 2969 L
- 641 2969 mt 613 2943 L
- 613 2943 mt 611 2942 L
- 611 2942 mt 583 2914 L
- 583 2914 mt 578 2908 L
- 578 2908 mt 558 2887 L
- 558 2887 mt 543 2869 L
- 543 2869 mt 534 2859 L
- 534 2859 mt 513 2832 L
- 513 2832 mt 508 2825 L
- 508 2825 mt 493 2804 L
- 493 2804 mt 475 2777 L
- 475 2777 mt 473 2773 L
- 473 2773 mt 459 2749 L
- 459 2749 mt 444 2722 L
- 444 2722 mt 438 2711 L
- 438 2711 mt 429 2694 L
- 429 2694 mt 416 2667 L
- 416 2667 mt 405 2639 L
- 405 2639 mt 403 2636 L
- 403 2636 mt 394 2612 L
- 394 2612 mt 384 2584 L
- 384 2584 mt 376 2557 L
- 376 2557 mt 368 2530 L
- 368 2530 mt 368 2529 L
- 368 2529 mt 362 2502 L
- 362 2502 mt 357 2474 L
- 357 2474 mt 353 2446 L
- 353 2446 mt 349 2419 L
- 349 2419 mt 347 2391 L
- 347 2391 mt 345 2364 L
- 345 2364 mt 343 2336 L
- 343 2336 mt 343 2309 L
- 343 2309 mt 343 2281 L
- 343 2281 mt 344 2254 L
- 344 2254 mt 346 2226 L
- 346 2226 mt 348 2199 L
- 348 2199 mt 351 2171 L
- 351 2171 mt 355 2144 L
- 355 2144 mt 359 2116 L
- 359 2116 mt 364 2089 L
- 364 2089 mt 368 2066 L
- 368 2066 mt 369 2061 L
- 369 2061 mt 375 2034 L
- 375 2034 mt 380 2006 L
- 380 2006 mt 386 1979 L
- 386 1979 mt 392 1951 L
- 392 1951 mt 397 1924 L
- 397 1924 mt 402 1896 L
- 402 1896 mt 403 1892 L
- 403 1892 mt 408 1869 L
- 408 1869 mt 413 1841 L
- 413 1841 mt 418 1814 L
- 418 1814 mt 423 1786 L
- 423 1786 mt 428 1759 L
- 428 1759 mt 433 1731 L
- 433 1731 mt 438 1704 L
- 438 1704 mt 438 1702 L
- 438 1702 mt 443 1676 L
- 443 1676 mt 447 1649 L
- 447 1649 mt 451 1621 L
- 451 1621 mt 455 1594 L
- 455 1594 mt 459 1566 L
- 459 1566 mt 463 1539 L
- 463 1539 mt 467 1511 L
- 467 1511 mt 470 1484 L
- 470 1484 mt 473 1463 L
- 473 1463 mt 474 1456 L
- 474 1456 mt 478 1428 L
- 478 1428 mt 481 1401 L
- 481 1401 mt 484 1373 L
- 484 1373 mt 488 1346 L
- 488 1346 mt 491 1318 L
- 491 1318 mt 495 1291 L
- 495 1291 mt 499 1263 L
- 499 1263 mt 504 1236 L
- 504 1236 mt 508 1215 L
- 508 1215 mt 509 1208 L
- 509 1208 mt 515 1181 L
- 515 1181 mt 521 1153 L
- 521 1153 mt 527 1126 L
- 527 1126 mt 534 1098 L
- 534 1098 mt 541 1071 L
- 541 1071 mt 543 1066 L
- 543 1066 mt 549 1043 L
- 549 1043 mt 558 1016 L
- 558 1016 mt 567 988 L
- 567 988 mt 577 961 L
- 577 961 mt 578 958 L
- 578 958 mt 587 933 L
- 587 933 mt 598 906 L
- 598 906 mt 609 878 L
- 609 878 mt 613 871 L
- 613 871 mt 621 851 L
- 621 851 mt 635 823 L
- 635 823 mt 647 798 L
- 647 798 mt 649 796 L
- 649 796 mt 663 768 L
- 663 768 mt 679 741 L
- 679 741 mt 682 735 L
- 682 735 mt 696 713 L
- 696 713 mt 714 686 L
- 714 686 mt 717 680 L
- 717 680 mt 732 658 L
- 732 658 mt 752 631 L
- 752 631 mt 752 630 L
- 752 630 mt 772 603 L
- 772 603 mt 787 585 L
- 787 585 mt 794 576 L
- 794 576 mt 816 548 L
- 816 548 mt 822 542 L
- 822 542 mt 840 521 L
- 840 521 mt 857 502 L
- 857 502 mt 865 493 L
- 865 493 mt 892 466 L
- 892 466 mt 892 466 L
- 892 466 mt 920 438 L
- 920 438 mt 926 433 L
- 926 433 mt 952 411 L
- 952 411 mt 961 403 L
- 961 403 mt 987 383 L
- 987 383 mt 996 376 L
- 996 376 mt 1025 355 L
-1025 355 mt 1031 352 L
-1031 352 mt 1066 330 L
-1066 330 mt 1069 328 L
-1069 328 mt 1101 310 L
-1101 310 mt 1119 300 L
-1119 300 mt 1136 292 L
-1136 292 mt 1170 276 L
-1170 276 mt 1178 273 L
-1178 273 mt 1205 262 L
-1205 262 mt 1240 249 L
-1240 249 mt 1251 245 L
-1251 245 mt 1275 238 L
-1275 238 mt 1310 227 L
-1310 227 mt 1345 218 L
-1345 218 mt 1347 218 L
-1347 218 mt 1380 210 L
-1380 210 mt 1415 203 L
-1415 203 mt 1449 196 L
-1449 196 mt 1476 190 L
-1476 190 mt 1484 189 L
-1484 189 mt 1519 182 L
-1519 182 mt 1554 176 L
-1554 176 mt 1589 169 L
-1589 169 mt 1624 163 L
-1624 163 mt 1624 163 L
-1624 163 mt 1659 157 L
-1659 157 mt 1694 150 L
-1694 150 mt 1728 144 L
-1728 144 mt 1763 139 L
-1763 139 mt 1783 135 L
-1783 135 mt 1798 133 L
-1798 133 mt 1833 128 L
-1833 128 mt 1868 123 L
-1868 123 mt 1903 118 L
-1903 118 mt 1938 114 L
-1938 114 mt 1972 110 L
-1972 110 mt 1992 108 L
-1992 108 mt 2007 106 L
-2007 106 mt 2042 103 L
-2042 103 mt 2077 99 L
-2077 99 mt 2112 96 L
-2112 96 mt 2147 92 L
-2147 92 mt 2182 89 L
-2182 89 mt 2217 85 L
-2217 85 mt 2251 82 L
-2251 82 mt 2264 80 L
-2264 80 mt 2286 78 L
-2286 78 mt 2321 74 L
-2321 74 mt 2356 70 L
-2356 70 mt 2391 66 L
-2391 66 mt 2426 62 L
-2426 62 mt 2461 58 L
-2461 58 mt 2496 53 L
-2496 53 mt 2500 53 L
-2500 53 mt 2530 49 L
-2530 49 mt 2565 45 L
-2565 45 mt 2600 41 L
-2600 41 mt 2635 36 L
-2635 36 mt 2670 32 L
-2670 32 mt 2705 28 L
-2705 28 mt 2730 25 L
-2730 25 mt 2740 24 L
-2740 24 mt 2774 20 L
-2774 20 mt 2809 16 L
-2809 16 mt 2844 12 L
-2844 12 mt 2879 8 L
-2879 8 mt 2914 4 L
-2914 4 mt 2949 0 L
-2949 0 mt 2969 -1 L
-2969 -1 mt 2984 -3 L
-2984 -3 mt 3019 -7 L
-3019 -7 mt 3053 -10 L
-3053 -10 mt 3088 -14 L
-3088 -14 mt 3123 -18 L
-3123 -18 mt 3158 -22 L
-3158 -22 mt 3193 -26 L
-3193 -26 mt 3217 -29 L
-3217 -29 mt 3228 -30 L
-3228 -30 mt 3263 -34 L
-3263 -34 mt 3298 -38 L
-3298 -38 mt 3332 -42 L
-3332 -42 mt 3367 -47 L
-3367 -47 mt 3402 -51 L
-3402 -51 mt 3437 -55 L
-3437 -55 mt 3448 -56 L
-3448 -56 mt 3472 -59 L
-3472 -59 mt 3507 -63 L
-3507 -63 mt 3542 -67 L
-3542 -67 mt 3577 -72 L
-3577 -72 mt 3611 -76 L
-3611 -76 mt 3646 -80 L
-3646 -80 mt 3679 -84 L
-3679 -84 mt 3681 -84 L
-3681 -84 mt 3716 -88 L
-3716 -88 mt 3751 -92 L
-3751 -92 mt 3786 -96 L
-3786 -96 mt 3821 -100 L
-3821 -100 mt 3855 -104 L
-3855 -104 mt 3890 -107 L
-3890 -107 mt 3925 -110 L
-3925 -110 mt 3935 -111 L
-3935 -111 mt 3960 -113 L
-3960 -113 mt 3995 -116 L
-3995 -116 mt 4030 -119 L
-4030 -119 mt 4065 -121 L
-4065 -121 mt 4100 -124 L
-4100 -124 mt 4134 -126 L
-4134 -126 mt 4169 -128 L
-4169 -128 mt 4204 -129 L
-4204 -129 mt 4239 -131 L
-4239 -131 mt 4274 -131 L
-4274 -131 mt 4309 -132 L
-4309 -132 mt 4344 -132 L
-4344 -132 mt 4379 -132 L
-4379 -132 mt 4413 -131 L
-4413 -131 mt 4448 -130 L
-4448 -130 mt 4483 -128 L
-4483 -128 mt 4518 -126 L
-4518 -126 mt 4553 -124 L
-4553 -124 mt 4588 -121 L
-4588 -121 mt 4623 -118 L
-4623 -118 mt 4657 -114 L
-4657 -114 mt 4679 -111 L
-4679 -111 mt 4692 -110 L
-4692 -110 mt 4727 -105 L
-4727 -105 mt 4762 -100 L
-4762 -100 mt 4797 -95 L
-4797 -95 mt 4832 -89 L
-4832 -89 mt 4861 -84 L
-4861 -84 mt 4867 -83 L
-4867 -83 mt 4902 -76 L
-4902 -76 mt 4936 -68 L
-4936 -68 mt 4971 -60 L
-4971 -60 mt 4987 -56 L
-4987 -56 mt 5006 -52 L
-5006 -52 mt 5041 -42 L
-5041 -42 mt 5076 -33 L
-5076 -33 mt 5090 -29 L
-5090 -29 mt 5111 -23 L
-5111 -23 mt 5146 -12 L
-5146 -12 mt 5179 -1 L
-5179 -1 mt 5181 -1 L
-5181 -1 mt 5215 10 L
-5215 10 mt 5250 23 L
-5250 23 mt 5255 25 L
-5255 25 mt 5285 37 L
-5285 37 mt 5320 52 L
-5320 52 mt 5322 53 L
-5322 53 mt 5355 68 L
-5355 68 mt 5381 80 L
-5381 80 mt 5390 85 L
-5390 85 mt 5425 103 L
-5425 103 mt 5434 108 L
-5434 108 mt 5459 122 L
-5459 122 mt 5482 135 L
-5482 135 mt 5494 143 L
-5494 143 mt 5527 163 L
-5527 163 mt 5529 164 L
-5529 164 mt 5564 188 L
-5564 188 mt 5568 190 L
-5568 190 mt 5599 212 L
-5599 212 mt 5607 218 L
-5607 218 mt 5634 238 L
-5634 238 mt 5644 245 L
-5644 245 mt 5669 265 L
-5669 265 mt 5679 273 L
-5679 273 mt 5704 293 L
-5704 293 mt 5713 300 L
-5713 300 mt 5738 322 L
-5738 322 mt 5746 328 L
-5746 328 mt 5773 352 L
-5773 352 mt 5777 355 L
-5777 355 mt 5808 383 L
-5808 383 mt 5808 383 L
-5808 383 mt 5838 411 L
-5838 411 mt 5843 415 L
-5843 415 mt 5867 438 L
-5867 438 mt 5878 448 L
-5878 448 mt 5896 466 L
-5896 466 mt 5913 482 L
-5913 482 mt 5924 493 L
-5924 493 mt 5948 516 L
-5948 516 mt 5952 521 L
-5952 521 mt 5980 548 L
-5980 548 mt 5983 550 L
-5983 550 mt 6008 576 L
-6008 576 mt 6017 585 L
-6017 585 mt 6035 603 L
-6035 603 mt 6052 620 L
-6052 620 mt 6063 631 L
-6063 631 mt 6087 656 L
-6087 656 mt 6090 658 L
-6090 658 mt 6117 686 L
-6117 686 mt 6122 691 L
-6122 691 mt 6144 713 L
-6144 713 mt 6157 727 L
-6157 727 mt 6170 741 L
-6170 741 mt 6192 763 L
-6192 763 mt 6197 768 L
-6197 768 mt 6223 796 L
-6223 796 mt 6227 799 L
-6227 799 mt 6250 823 L
-6250 823 mt 6261 835 L
-6261 835 mt 6277 851 L
-6277 851 mt 6296 871 L
-6296 871 mt 6303 878 L
-6303 878 mt 6330 906 L
-6330 906 mt 6331 907 L
-6331 907 mt 6356 933 L
-6356 933 mt 6366 944 L
-6366 944 mt 6383 961 L
-6383 961 mt 6401 980 L
-6401 980 mt 6409 988 L
-6409 988 mt 6435 1016 L
-6435 1016 mt 6436 1017 L
-6436 1017 mt 6461 1043 L
-6461 1043 mt 6471 1054 L
-6471 1054 mt 6487 1071 L
-6487 1071 mt 6506 1092 L
-6506 1092 mt 6512 1098 L
-6512 1098 mt 6537 1126 L
-6537 1126 mt 6540 1130 L
-6540 1130 mt 6561 1153 L
-6561 1153 mt 6575 1170 L
-6575 1170 mt 6585 1181 L
-6585 1181 mt 6608 1208 L
-6608 1208 mt 6610 1211 L
-6610 1211 mt 6631 1236 L
-6631 1236 mt 6645 1254 L
-6645 1254 mt 6653 1263 L
-6653 1263 mt 6674 1291 L
-6674 1291 mt 6680 1298 L
-6680 1298 mt 6695 1318 L
-6695 1318 mt 6715 1345 L
-6715 1345 mt 6716 1346 L
-6716 1346 mt 6735 1373 L
-6735 1373 mt 6750 1394 L
-6750 1394 mt 6754 1401 L
-6754 1401 mt 6773 1428 L
-6773 1428 mt 6785 1447 L
-6785 1447 mt 6790 1456 L
-6790 1456 mt 6807 1484 L
-6807 1484 mt 6819 1506 L
-6819 1506 mt 6823 1511 L
-6823 1511 mt 6838 1539 L
-6838 1539 mt 6852 1566 L
-6852 1566 mt 6854 1571 L
-6854 1571 mt 6865 1594 L
-6865 1594 mt 6878 1621 L
-6878 1621 mt 6889 1647 L
-6889 1647 mt 6890 1649 L
-6890 1649 mt 6901 1676 L
-6901 1676 mt 6912 1704 L
-6912 1704 mt 6922 1731 L
-6922 1731 mt 6924 1739 L
-6924 1739 mt 6931 1759 L
-6931 1759 mt 6939 1786 L
-6939 1786 mt 6947 1814 L
-6947 1814 mt 6954 1841 L
-6954 1841 mt 6959 1864 L
-6924 2025 mt 6924 2034 L
-6924 2034 mt 6925 2061 L
-6925 2061 mt 6925 2089 L
-6925 2089 mt 6924 2116 L
-6924 2116 mt 6924 2122 L
-6924 2122 mt 6923 2144 L
-6923 2144 mt 6921 2171 L
-6921 2171 mt 6918 2199 L
-6918 2199 mt 6914 2226 L
-6914 2226 mt 6910 2254 L
-6910 2254 mt 6905 2281 L
-6905 2281 mt 6900 2309 L
-6900 2309 mt 6894 2336 L
-6894 2336 mt 6889 2354 L
-6889 2354 mt 6887 2364 L
-6887 2364 mt 6880 2391 L
-6880 2391 mt 6872 2419 L
-6872 2419 mt 6864 2446 L
-6864 2446 mt 6855 2474 L
-6855 2474 mt 6854 2476 L
-6854 2476 mt 6846 2502 L
-6846 2502 mt 6836 2529 L
-6836 2529 mt 6826 2557 L
-6826 2557 mt 6819 2574 L
-6819 2574 mt 6816 2584 L
-6816 2584 mt 6805 2612 L
-6805 2612 mt 6794 2639 L
-6794 2639 mt 6785 2662 L
-6785 2662 mt 6782 2667 L
-6782 2667 mt 6771 2694 L
-6771 2694 mt 6759 2722 L
-6759 2722 mt 6750 2741 L
-6750 2741 mt 6746 2749 L
-6746 2749 mt 6733 2777 L
-6733 2777 mt 6721 2804 L
-6721 2804 mt 6715 2817 L
-6715 2817 mt 6708 2832 L
-6708 2832 mt 6695 2859 L
-6695 2859 mt 6683 2887 L
-6683 2887 mt 6680 2893 L
-6680 2893 mt 6671 2914 L
-6671 2914 mt 6659 2942 L
-6659 2942 mt 6648 2969 L
-6648 2969 mt 6645 2976 L
-6645 2976 mt 6637 2997 L
-6637 2997 mt 6626 3024 L
-6626 3024 mt 6616 3052 L
-6616 3052 mt 6610 3069 L
-6610 3069 mt 6607 3079 L
-6607 3079 mt 6598 3107 L
-6598 3107 mt 6590 3134 L
-6590 3134 mt 6583 3162 L
-6583 3162 mt 6576 3189 L
-6576 3189 mt 6575 3190 L
-6575 3190 mt 6569 3217 L
-6569 3217 mt 6562 3244 L
-6562 3244 mt 6556 3272 L
-6556 3272 mt 6550 3299 L
-6550 3299 mt 6543 3327 L
-6543 3327 mt 6540 3338 L
-6540 3338 mt 6536 3354 L
-6536 3354 mt 6529 3382 L
-6529 3382 mt 6522 3409 L
-6522 3409 mt 6514 3437 L
-6514 3437 mt 6506 3462 L
-6506 3462 mt 6505 3464 L
-6505 3464 mt 6495 3492 L
-6495 3492 mt 6485 3519 L
-6485 3519 mt 6474 3547 L
-6474 3547 mt 6471 3554 L
-6471 3554 mt 6461 3575 L
-6461 3575 mt 6447 3602 L
-6447 3602 mt 6436 3623 L
-6436 3623 mt 6432 3630 L
-6432 3630 mt 6416 3657 L
-6416 3657 mt 6401 3681 L
-6401 3681 mt 6398 3685 L
-6398 3685 mt 6379 3712 L
-6379 3712 mt 6366 3730 L
-6366 3730 mt 6358 3740 L
-6358 3740 mt 6337 3767 L
-6337 3767 mt 6331 3776 L
-6331 3776 mt 6315 3795 L
-6315 3795 mt 6296 3822 L
-6296 3822 mt 6296 3822 L
-6296 3822 mt 6280 3850 L
-6280 3850 mt 6273 3877 L
-6273 3877 mt 6266 3905 L
-6266 3905 mt 6261 3913 L
-6261 3913 mt 6227 3916 L
-6227 3916 mt 6218 3905 L
-6218 3905 mt 6202 3877 L
-6202 3877 mt 6192 3863 L
-6192 3863 mt 6186 3850 L
-6186 3850 mt 6177 3822 L
-6177 3822 mt 6162 3795 L
-6162 3795 mt 6157 3788 L
-6157 3788 mt 6146 3767 L
-6146 3767 mt 6130 3740 L
-6130 3740 mt 6122 3728 L
-6122 3728 mt 6112 3712 L
-6112 3712 mt 6092 3685 L
-6092 3685 mt 6087 3678 L
-6087 3678 mt 6069 3657 L
-6069 3657 mt 6052 3639 L
-6052 3639 mt 6042 3630 L
-6042 3630 mt 6017 3610 L
-6017 3610 mt 6003 3602 L
-6003 3602 mt 5983 3591 L
-5983 3591 mt 5948 3579 L
-5948 3579 mt 5933 3575 L
-5933 3575 mt 5913 3568 L
-5913 3568 mt 5878 3557 L
-5878 3557 mt 5849 3547 L
-5849 3547 mt 5843 3545 L
-5843 3545 mt 5808 3531 L
-5808 3531 mt 5782 3519 L
-5782 3519 mt 5773 3515 L
-5773 3515 mt 5738 3494 L
-5738 3494 mt 5736 3492 L
-5736 3492 mt 5704 3465 L
-5704 3465 mt 5703 3464 L
-5703 3464 mt 5680 3437 L
-5680 3437 mt 5669 3419 L
-5669 3419 mt 5663 3409 L
-5663 3409 mt 5651 3382 L
-5651 3382 mt 5640 3354 L
-5640 3354 mt 5634 3335 L
-5634 3335 mt 5631 3327 L
-5631 3327 mt 5624 3299 L
-5624 3299 mt 5617 3272 L
-5617 3272 mt 5610 3244 L
-5610 3244 mt 5603 3217 L
-5603 3217 mt 5599 3202 L
-5599 3202 mt 5595 3189 L
-5595 3189 mt 5586 3162 L
-5586 3162 mt 5575 3134 L
-5575 3134 mt 5564 3113 L
-5564 3113 mt 5560 3107 L
-5560 3107 mt 5538 3079 L
-5538 3079 mt 5529 3071 L
-5529 3071 mt 5506 3052 L
-5506 3052 mt 5494 3043 L
-5494 3043 mt 5468 3024 L
-5468 3024 mt 5459 3018 L
-5459 3018 mt 5431 2997 L
-5431 2997 mt 5425 2991 L
-5425 2991 mt 5399 2969 L
-5399 2969 mt 5390 2961 L
-5390 2961 mt 5368 2942 L
-5368 2942 mt 5355 2930 L
-5355 2930 mt 5336 2914 L
-5336 2914 mt 5320 2901 L
-5320 2901 mt 5302 2887 L
-5302 2887 mt 5285 2875 L
-5285 2875 mt 5256 2859 L
-5256 2859 mt 5250 2856 L
-5250 2856 mt 5215 2841 L
-5215 2841 mt 5191 2832 L
-5191 2832 mt 5181 2826 L
-5181 2826 mt 5146 2806 L
-5146 2806 mt 5142 2804 L
-5142 2804 mt 5111 2778 L
-5111 2778 mt 5109 2777 L
-5109 2777 mt 5081 2749 L
-5081 2749 mt 5076 2744 L
-5076 2744 mt 5051 2722 L
-5051 2722 mt 5041 2714 L
-5041 2714 mt 5014 2694 L
-5014 2694 mt 5006 2689 L
-5006 2689 mt 4976 2667 L
-4976 2667 mt 4971 2664 L
-4971 2664 mt 4946 2639 L
-4946 2639 mt 4936 2624 L
-4936 2624 mt 4930 2612 L
-4930 2612 mt 4929 2584 L
-4929 2584 mt 4934 2557 L
-4934 2557 mt 4936 2546 L
-4936 2546 mt 4941 2529 L
-4941 2529 mt 4947 2502 L
-4947 2502 mt 4948 2474 L
-4948 2474 mt 4944 2446 L
-4944 2446 mt 4936 2424 L
-4936 2424 mt 4935 2419 L
-4935 2419 mt 4924 2391 L
-4924 2391 mt 4908 2364 L
-4908 2364 mt 4902 2356 L
-4902 2356 mt 4883 2336 L
-4883 2336 mt 4867 2322 L
-4867 2322 mt 4852 2309 L
-4852 2309 mt 4832 2292 L
-4832 2292 mt 4819 2281 L
-4819 2281 mt 4797 2265 L
-4797 2265 mt 4783 2254 L
-4783 2254 mt 4762 2240 L
-4762 2240 mt 4744 2226 L
-4744 2226 mt 4727 2216 L
-4727 2216 mt 4703 2199 L
-4703 2199 mt 4692 2192 L
-4692 2192 mt 4669 2171 L
-4669 2171 mt 4657 2159 L
-4657 2159 mt 4644 2144 L
-4644 2144 mt 4626 2116 L
-4626 2116 mt 4623 2109 L
-4623 2109 mt 4613 2089 L
-4613 2089 mt 4605 2061 L
-4605 2061 mt 4599 2034 L
-4599 2034 mt 4591 2006 L
-4591 2006 mt 4588 1997 L
-4588 1997 mt 4579 1979 L
-4579 1979 mt 4556 1951 L
-4556 1951 mt 4553 1949 L
-4553 1949 mt 4518 1929 L
-4518 1929 mt 4500 1924 L
-4500 1924 mt 4483 1919 L
-4483 1919 mt 4448 1914 L
-4448 1914 mt 4413 1909 L
-4413 1909 mt 4379 1901 L
-4379 1901 mt 4364 1896 L
-4364 1896 mt 4344 1888 L
-4344 1888 mt 4309 1873 L
-4309 1873 mt 4302 1869 L
-4302 1869 mt 4274 1850 L
-4274 1850 mt 4263 1841 L
-4263 1841 mt 4239 1815 L
-4239 1815 mt 4238 1814 L
-4238 1814 mt 4215 1786 L
-4215 1786 mt 4204 1774 L
-4204 1774 mt 4188 1759 L
-4188 1759 mt 4169 1741 L
-4169 1741 mt 4155 1731 L
-4155 1731 mt 4134 1717 L
-4134 1717 mt 4109 1704 L
-4109 1704 mt 4100 1699 L
-4100 1699 mt 4065 1686 L
-4065 1686 mt 4030 1677 L
-4030 1677 mt 4024 1676 L
-4024 1676 mt 3995 1670 L
-3995 1670 mt 3960 1666 L
-3960 1666 mt 3925 1663 L
-3925 1663 mt 3890 1661 L
-3890 1661 mt 3855 1658 L
-3855 1658 mt 3821 1654 L
-3821 1654 mt 3797 1649 L
-3797 1649 mt 3786 1646 L
-3786 1646 mt 3751 1629 L
-3751 1629 mt 3736 1621 L
-3736 1621 mt 3716 1611 L
-3716 1611 mt 3683 1594 L
-3683 1594 mt 3681 1593 L
-3681 1593 mt 3646 1571 L
-3646 1571 mt 3640 1566 L
-3640 1566 mt 3611 1544 L
-3611 1544 mt 3605 1539 L
-3605 1539 mt 3577 1511 L
-3577 1511 mt 3576 1511 L
-3576 1511 mt 3550 1484 L
-3550 1484 mt 3542 1472 L
-3542 1472 mt 3529 1456 L
-3529 1456 mt 3508 1428 L
-3508 1428 mt 3507 1426 L
-3507 1426 mt 3477 1401 L
-3477 1401 mt 3472 1398 L
-3472 1398 mt 3437 1382 L
-3437 1382 mt 3405 1373 L
-3405 1373 mt 3402 1373 L
-3402 1373 mt 3367 1368 L
-3367 1368 mt 3332 1365 L
-3332 1365 mt 3298 1363 L
-3298 1363 mt 3263 1361 L
-3263 1361 mt 3228 1357 L
-3228 1357 mt 3193 1352 L
-3193 1352 mt 3164 1346 L
-3164 1346 mt 3158 1345 L
-3158 1345 mt 3123 1335 L
-3123 1335 mt 3088 1325 L
-3088 1325 mt 3064 1318 L
-3064 1318 mt 3053 1315 L
-3053 1315 mt 3019 1307 L
-3019 1307 mt 2984 1300 L
-2984 1300 mt 2949 1296 L
-2949 1296 mt 2914 1294 L
-2914 1294 mt 2879 1293 L
-2879 1293 mt 2844 1292 L
-2844 1292 mt 2818 1291 L
-2818 1291 mt 2809 1291 L
-2809 1291 mt 2774 1289 L
-2774 1289 mt 2740 1288 L
-2740 1288 mt 2705 1287 L
-2705 1287 mt 2670 1287 L
-2670 1287 mt 2635 1287 L
-2635 1287 mt 2600 1287 L
-2600 1287 mt 2565 1287 L
-2565 1287 mt 2530 1286 L
-2530 1286 mt 2496 1283 L
-2496 1283 mt 2461 1280 L
-2461 1280 mt 2426 1274 L
-2426 1274 mt 2391 1268 L
-2391 1268 mt 2363 1263 L
-2363 1263 mt 2356 1262 L
-2356 1262 mt 2321 1257 L
-2321 1257 mt 2286 1252 L
-2286 1252 mt 2251 1249 L
-2251 1249 mt 2217 1248 L
-2217 1248 mt 2182 1248 L
-2182 1248 mt 2147 1250 L
-2147 1250 mt 2112 1253 L
-2112 1253 mt 2077 1259 L
-2077 1259 mt 2054 1263 L
-2054 1263 mt 2042 1266 L
-2042 1266 mt 2007 1277 L
-2007 1277 mt 1972 1290 L
-1972 1290 mt 1971 1291 L
-1971 1291 mt 1938 1308 L
-1938 1308 mt 1921 1318 L
-1921 1318 mt 1903 1332 L
-1903 1332 mt 1888 1346 L
-1888 1346 mt 1868 1369 L
-1868 1369 mt 1865 1373 L
-1865 1373 mt 1851 1401 L
-1851 1401 mt 1841 1428 L
-1841 1428 mt 1835 1456 L
-1835 1456 mt 1833 1464 L
-1833 1464 mt 1830 1484 L
-1830 1484 mt 1825 1511 L
-1825 1511 mt 1821 1539 L
-1821 1539 mt 1816 1566 L
-1816 1566 mt 1812 1594 L
-1812 1594 mt 1808 1621 L
-1808 1621 mt 1806 1649 L
-1806 1649 mt 1805 1676 L
-1805 1676 mt 1807 1704 L
-1807 1704 mt 1809 1731 L
-1809 1731 mt 1811 1759 L
-1811 1759 mt 1811 1786 L
-1811 1786 mt 1807 1814 L
-1807 1814 mt 1801 1841 L
-1801 1841 mt 1798 1852 L
-1798 1852 mt 1794 1869 L
-1794 1869 mt 1789 1896 L
-1789 1896 mt 1789 1924 L
-1789 1924 mt 1797 1951 L
-1797 1951 mt 1798 1953 L
-1798 1953 mt 1814 1979 L
-1814 1979 mt 1833 2004 L
-1833 2004 mt 1835 2006 L
-1835 2006 mt 1853 2034 L
-1853 2034 mt 1860 2061 L
-1860 2061 mt 1856 2089 L
-1856 2089 mt 1840 2116 L
-1840 2116 mt 1833 2125 L
-1833 2125 mt 1817 2144 L
-1817 2144 mt 1798 2169 L
-1798 2169 mt 1797 2171 L
-1797 2171 mt 1786 2199 L
-1786 2199 mt 1792 2226 L
-1792 2226 mt 1798 2234 L
-1798 2234 mt 1811 2254 L
-1811 2254 mt 1833 2272 L
-1833 2272 mt 1844 2281 L
-1844 2281 mt 1868 2299 L
-1868 2299 mt 1880 2309 L
-1880 2309 mt 1903 2326 L
-1903 2326 mt 1915 2336 L
-1915 2336 mt 1938 2357 L
-1938 2357 mt 1945 2364 L
-1945 2364 mt 1972 2389 L
-1972 2389 mt 1975 2391 L
-1975 2391 mt 2006 2419 L
-2006 2419 mt 2007 2420 L
-2007 2420 mt 2038 2446 L
-2038 2446 mt 2042 2450 L
-2042 2450 mt 2069 2474 L
-2069 2474 mt 2077 2481 L
-2077 2481 mt 2101 2502 L
-2101 2502 mt 2112 2511 L
-2112 2511 mt 2133 2529 L
-2133 2529 mt 2147 2540 L
-2147 2540 mt 2164 2557 L
-2164 2557 mt 2182 2575 L
-2182 2575 mt 2190 2584 L
-2190 2584 mt 2210 2612 L
-2210 2612 mt 2217 2622 L
-2217 2622 mt 2228 2639 L
-2228 2639 mt 2246 2667 L
-2246 2667 mt 2251 2675 L
-2251 2675 mt 2265 2694 L
-2265 2694 mt 2286 2719 L
-2286 2719 mt 2288 2722 L
-2288 2722 mt 2313 2749 L
-2313 2749 mt 2321 2757 L
-2321 2757 mt 2341 2777 L
-2341 2777 mt 2356 2792 L
-2356 2792 mt 2368 2804 L
-2368 2804 mt 2391 2828 L
-2391 2828 mt 2395 2832 L
-2395 2832 mt 2422 2859 L
-2422 2859 mt 2426 2863 L
-2426 2863 mt 2448 2887 L
-2448 2887 mt 2461 2902 L
-2461 2902 mt 2469 2914 L
-2469 2914 mt 2481 2942 L
-2481 2942 mt 2483 2969 L
-2483 2969 mt 2477 2997 L
-2477 2997 mt 2466 3024 L
-2466 3024 mt 2461 3043 L
-2461 3043 mt 2457 3052 L
-2457 3052 mt 2448 3079 L
-2448 3079 mt 2438 3107 L
-2438 3107 mt 2432 3134 L
-2432 3134 mt 2432 3162 L
-2432 3162 mt 2439 3189 L
-2439 3189 mt 2457 3217 L
-2457 3217 mt 2461 3221 L
-2461 3221 mt 2487 3244 L
-2487 3244 mt 2496 3250 L
-2496 3250 mt 2530 3272 L
-2530 3272 mt 2530 3272 L
-2530 3272 mt 2565 3293 L
-2565 3293 mt 2577 3299 L
-2577 3299 mt 2600 3315 L
-2600 3315 mt 2617 3327 L
-2617 3327 mt 2635 3342 L
-2635 3342 mt 2647 3354 L
-2647 3354 mt 2670 3381 L
-2670 3381 mt 2670 3382 L
-2670 3382 mt 2694 3409 L
-2694 3409 mt 2705 3423 L
-2705 3423 mt 2716 3437 L
-2716 3437 mt 2737 3464 L
-2737 3464 mt 2740 3468 L
-2740 3468 mt 2756 3492 L
-2756 3492 mt 2774 3519 L
-2774 3519 mt 2774 3520 L
-2774 3520 mt 2791 3547 L
-2791 3547 mt 2808 3575 L
-2808 3575 mt 2809 3577 L
-2809 3577 mt 2823 3602 L
-2823 3602 mt 2836 3630 L
-2836 3630 mt 2844 3657 L
-2844 3657 mt 2844 3672 L
-2844 3672 mt 2844 3685 L
-2844 3685 mt 2844 3685 L
-2844 3685 mt 2834 3712 L
-2834 3712 mt 2816 3740 L
-2816 3740 mt 2809 3749 L
-2809 3749 mt 2792 3767 L
-2792 3767 mt 2774 3785 L
-2774 3785 mt 2762 3795 L
-2762 3795 mt 2740 3812 L
-2740 3812 mt 2721 3822 L
-2721 3822 mt 2705 3831 L
-2705 3831 mt 2670 3846 L
-2670 3846 mt 2657 3850 L
-2657 3850 mt 2635 3858 L
-2635 3858 mt 2600 3868 L
-2600 3868 mt 2572 3877 L
-2572 3877 mt 2565 3880 L
-2565 3880 mt 2530 3895 L
-2530 3895 mt 2511 3905 L
-2511 3905 mt 2496 3915 L
-2496 3915 mt 2475 3932 L
-2475 3932 mt 2461 3949 L
-2461 3949 mt 2454 3960 L
-2454 3960 mt 2441 3987 L
-2441 3987 mt 2434 4015 L
-2434 4015 mt 2431 4042 L
-2431 4042 mt 2433 4070 L
-2433 4070 mt 2439 4097 L
-2439 4097 mt 2449 4125 L
-2449 4125 mt 2461 4149 L
-2461 4149 mt 2462 4152 L
-2462 4152 mt 2477 4180 L
-2477 4180 mt 2494 4207 L
-2494 4207 mt 2496 4210 L
-2496 4210 mt 2512 4235 L
-2512 4235 mt 2530 4259 L
-2530 4259 mt 2533 4262 L
-2533 4262 mt 2555 4290 L
-2555 4290 mt 2565 4302 L
-2565 4302 mt 2581 4317 L
-2581 4317 mt 2600 4335 L
-2600 4335 mt 2612 4345 L
-2612 4345 mt 2635 4362 L
-2635 4362 mt 2653 4372 L
-2653 4372 mt 2670 4382 L
-2670 4382 mt 2705 4396 L
-2705 4396 mt 2715 4400 L
-2715 4400 mt 2740 4407 L
-2740 4407 mt 2774 4414 L
-2774 4414 mt 2809 4420 L
-2809 4420 mt 2844 4425 L
-2844 4425 mt 2855 4427 L
-2855 4427 mt 2879 4432 L
-2879 4432 mt 2914 4442 L
-2914 4442 mt 2947 4455 L
-2947 4455 mt 2949 4456 L
-2949 4456 mt 2984 4473 L
-2984 4473 mt 3001 4482 L
-3001 4482 mt 3019 4492 L
-3019 4492 mt 3053 4510 L
-3053 4510 mt 3054 4510 L
-3054 4510 mt 3088 4527 L
-3088 4527 mt 3109 4537 L
-3109 4537 mt 3123 4545 L
-3123 4545 mt 3158 4563 L
-3158 4563 mt 3163 4565 L
-3163 4565 mt 3193 4589 L
-3193 4589 mt 3197 4592 L
-3197 4592 mt 3193 4620 L
-3193 4620 mt 3193 4620 L
-3193 4620 mt 3158 4644 L
-3158 4644 mt 3153 4648 L
-3153 4648 mt 3123 4664 L
-3123 4664 mt 3104 4675 L
-3104 4675 mt 3088 4683 L
-3088 4683 mt 3053 4699 L
-3053 4699 mt 3046 4703 L
-3046 4703 mt 3019 4714 L
-3019 4714 mt 2984 4727 L
-2984 4727 mt 2974 4730 L
-2974 4730 mt 2949 4738 L
-2949 4738 mt 2914 4750 L
-2914 4750 mt 2887 4758 L
-2887 4758 mt 2879 4760 L
-2879 4760 mt 2844 4770 L
-2844 4770 mt 2809 4779 L
-2809 4779 mt 2785 4785 L
-2785 4785 mt 2774 4788 L
-2774 4788 mt 2740 4796 L
-2740 4796 mt 2705 4804 L
-2705 4804 mt 2670 4812 L
-2670 4812 mt 2668 4813 L
-2668 4813 mt 2635 4820 L
-2635 4820 mt 2600 4826 L
-2600 4826 mt 2565 4833 L
-2565 4833 mt 2530 4839 L
-2530 4839 mt 2522 4840 L
-2522 4840 mt 2496 4844 L
-2496 4844 mt 2461 4848 L
-2461 4848 mt 2426 4852 L
-2426 4852 mt 2391 4856 L
-2391 4856 mt 2356 4858 L
-2356 4858 mt 2321 4860 L
-2321 4860 mt 2286 4860 L
-2286 4860 mt 2251 4860 L
-2251 4860 mt 2217 4859 L
-2217 4859 mt 2182 4857 L
-2182 4857 mt 2147 4855 L
-2147 4855 mt 2112 4851 L
-2112 4851 mt 2077 4846 L
-2077 4846 mt 2042 4840 L
-2042 4840 mt 2042 4840 L
-2042 4840 mt 2007 4834 L
-2007 4834 mt 1972 4826 L
-1972 4826 mt 1938 4817 L
-1938 4817 mt 1922 4813 L
-1922 4813 mt 1903 4807 L
-1903 4807 mt 1868 4796 L
-1868 4796 mt 1840 4785 L
-1840 4785 mt 1833 4782 L
-1833 4782 mt 1798 4767 L
-1798 4767 mt 1778 4758 L
-1778 4758 mt 1763 4750 L
-1763 4750 mt 1728 4730 L
-1728 4730 mt 1728 4730 L
-1728 4730 mt 1694 4706 L
-1694 4706 mt 1689 4703 L
-1689 4703 mt 1659 4677 L
-1659 4677 mt 1656 4675 L
-1656 4675 mt 1630 4648 L
-1630 4648 mt 1624 4640 L
-1624 4640 mt 1608 4620 L
-1608 4620 mt 1590 4592 L
-1590 4592 mt 1589 4591 L
-1589 4591 mt 1574 4565 L
-1574 4565 mt 1560 4537 L
-1560 4537 mt 1554 4525 L
-1554 4525 mt 1547 4510 L
-1547 4510 mt 1535 4482 L
-1535 4482 mt 1524 4455 L
-1524 4455 mt 1519 4442 L
-1519 4442 mt 1514 4427 L
-1514 4427 mt 1505 4400 L
-1505 4400 mt 1497 4372 L
-1497 4372 mt 1488 4345 L
-1488 4345 mt 1484 4334 L
-1484 4334 mt 1479 4317 L
-1479 4317 mt 1469 4290 L
-1469 4290 mt 1460 4262 L
-1460 4262 mt 1453 4235 L
-1453 4235 mt 1449 4217 L
-1449 4217 mt 1448 4207 L
-1448 4207 mt 1444 4180 L
-1444 4180 mt 1443 4152 L
-1443 4152 mt 1445 4125 L
-1445 4125 mt 1449 4097 L
-1449 4097 mt 1449 4095 L
-1449 4095 mt 1456 4070 L
-1456 4070 mt 1465 4042 L
-1465 4042 mt 1478 4015 L
-1478 4015 mt 1484 4001 L
-1484 4001 mt 1492 3987 L
-1492 3987 mt 1509 3960 L
-1509 3960 mt 1519 3945 L
-1519 3945 mt 1529 3932 L
-1529 3932 mt 1550 3905 L
-1550 3905 mt 1554 3899 L
-1554 3899 mt 1572 3877 L
-1572 3877 mt 1589 3855 L
-1589 3855 mt 1594 3850 L
-1594 3850 mt 1613 3822 L
-1613 3822 mt 1624 3801 L
-1624 3801 mt 1627 3795 L
-1627 3795 mt 1638 3767 L
-1638 3767 mt 1644 3740 L
-1644 3740 mt 1647 3712 L
-1647 3712 mt 1647 3685 L
-1647 3685 mt 1645 3657 L
-1645 3657 mt 1641 3630 L
-1641 3630 mt 1635 3602 L
-1635 3602 mt 1628 3575 L
-1628 3575 mt 1624 3561 L
-1624 3561 mt 1619 3547 L
-1619 3547 mt 1608 3519 L
-1608 3519 mt 1595 3492 L
-1595 3492 mt 1589 3482 L
-1589 3482 mt 1578 3464 L
-1578 3464 mt 1556 3437 L
-1556 3437 mt 1554 3435 L
-1554 3435 mt 1528 3409 L
-1528 3409 mt 1519 3403 L
-1519 3403 mt 1490 3382 L
-1490 3382 mt 1484 3378 L
-1484 3378 mt 1449 3358 L
-1449 3358 mt 1442 3354 L
-1442 3354 mt 1415 3341 L
-1415 3341 mt 1383 3327 L
-1383 3327 mt 1380 3326 L
-1380 3326 mt 1345 3312 L
-1345 3312 mt 1315 3299 L
-1315 3299 mt 1310 3298 L
-1310 3298 mt 1275 3284 L
-1275 3284 mt 1246 3272 L
-1246 3272 mt 1240 3270 L
-1240 3270 mt 1205 3256 L
-1205 3256 mt 1180 3244 L
-1180 3244 mt 1170 3241 L
-1170 3241 mt 1136 3225 L
-1136 3225 mt 1118 3217 L
-1118 3217 mt 1101 3209 L
-1101 3209 mt 1066 3191 L
-1066 3191 mt 1062 3189 L
-1062 3189 mt 1031 3173 L
-1031 3173 mt 1010 3162 L
-1010 3162 mt 996 3155 L
- 996 3155 mt 961 3135 L
- 961 3135 mt 960 3134 L
- 960 3134 mt 926 3115 L
- 926 3115 mt 913 3107 L
- 913 3107 mt 892 3094 L
- 892 3094 mt 866 3079 L
- 866 3079 mt 857 3073 L
- 857 3073 mt 822 3052 L
- 822 3052 mt 822 3052 L
- 822 3052 mt 787 3029 L
- 787 3029 mt 780 3024 L
- 780 3024 mt 752 3004 L
- 752 3004 mt 742 2997 L
- 742 2997 mt 717 2978 L
- 717 2978 mt 707 2969 L
- 707 2969 mt 682 2949 L
- 682 2949 mt 674 2942 L
- 674 2942 mt 647 2917 L
- 647 2917 mt 644 2914 L
- 644 2914 mt 617 2887 L
- 617 2887 mt 613 2881 L
- 613 2881 mt 593 2859 L
- 593 2859 mt 578 2841 L
- 578 2841 mt 570 2832 L
- 570 2832 mt 550 2804 L
- 550 2804 mt 543 2794 L
- 543 2794 mt 531 2777 L
- 531 2777 mt 514 2749 L
- 514 2749 mt 508 2737 L
- 508 2737 mt 499 2722 L
- 499 2722 mt 485 2694 L
- 485 2694 mt 473 2668 L
- 473 2668 mt 472 2667 L
- 472 2667 mt 460 2639 L
- 460 2639 mt 450 2612 L
- 450 2612 mt 441 2584 L
- 441 2584 mt 438 2576 L
- 438 2576 mt 432 2557 L
- 432 2557 mt 425 2529 L
- 425 2529 mt 419 2502 L
- 419 2502 mt 415 2474 L
- 415 2474 mt 411 2446 L
- 411 2446 mt 408 2419 L
- 408 2419 mt 406 2391 L
- 406 2391 mt 405 2364 L
- 405 2364 mt 404 2336 L
- 404 2336 mt 404 2309 L
- 404 2309 mt 405 2281 L
- 405 2281 mt 407 2254 L
- 407 2254 mt 409 2226 L
- 409 2226 mt 412 2199 L
- 412 2199 mt 416 2171 L
- 416 2171 mt 421 2144 L
- 421 2144 mt 426 2116 L
- 426 2116 mt 431 2089 L
- 431 2089 mt 437 2061 L
- 437 2061 mt 438 2056 L
- 438 2056 mt 443 2034 L
- 443 2034 mt 449 2006 L
- 449 2006 mt 455 1979 L
- 455 1979 mt 460 1951 L
- 460 1951 mt 466 1924 L
- 466 1924 mt 471 1896 L
- 471 1896 mt 473 1884 L
- 473 1884 mt 476 1869 L
- 476 1869 mt 481 1841 L
- 481 1841 mt 485 1814 L
- 485 1814 mt 490 1786 L
- 490 1786 mt 494 1759 L
- 494 1759 mt 498 1731 L
- 498 1731 mt 502 1704 L
- 502 1704 mt 506 1676 L
- 506 1676 mt 508 1661 L
- 508 1661 mt 510 1649 L
- 510 1649 mt 513 1621 L
- 513 1621 mt 517 1594 L
- 517 1594 mt 520 1566 L
- 520 1566 mt 523 1539 L
- 523 1539 mt 527 1511 L
- 527 1511 mt 530 1484 L
- 530 1484 mt 533 1456 L
- 533 1456 mt 535 1428 L
- 535 1428 mt 538 1401 L
- 538 1401 mt 540 1373 L
- 540 1373 mt 543 1350 L
- 543 1350 mt 543 1346 L
- 543 1346 mt 546 1318 L
- 546 1318 mt 549 1291 L
- 549 1291 mt 553 1263 L
- 553 1263 mt 556 1236 L
- 556 1236 mt 561 1208 L
- 561 1208 mt 566 1181 L
- 566 1181 mt 571 1153 L
- 571 1153 mt 577 1126 L
- 577 1126 mt 578 1122 L
- 578 1122 mt 583 1098 L
- 583 1098 mt 590 1071 L
- 590 1071 mt 597 1043 L
- 597 1043 mt 605 1016 L
- 605 1016 mt 613 991 L
- 613 991 mt 613 988 L
- 613 988 mt 622 961 L
- 622 961 mt 632 933 L
- 632 933 mt 642 906 L
- 642 906 mt 647 893 L
- 647 893 mt 653 878 L
- 653 878 mt 665 851 L
- 665 851 mt 678 823 L
- 678 823 mt 682 814 L
- 682 814 mt 691 796 L
- 691 796 mt 706 768 L
- 706 768 mt 717 748 L
- 717 748 mt 721 741 L
- 721 741 mt 738 713 L
- 738 713 mt 752 691 L
- 752 691 mt 756 686 L
- 756 686 mt 775 658 L
- 775 658 mt 787 641 L
- 787 641 mt 795 631 L
- 795 631 mt 815 603 L
- 815 603 mt 822 595 L
- 822 595 mt 837 576 L
- 837 576 mt 857 552 L
- 857 552 mt 860 548 L
- 860 548 mt 883 521 L
- 883 521 mt 892 512 L
- 892 512 mt 909 493 L
- 909 493 mt 926 475 L
- 926 475 mt 936 466 L
- 936 466 mt 961 442 L
- 961 442 mt 966 438 L
- 966 438 mt 996 412 L
- 996 412 mt 999 411 L
- 999 411 mt 1031 386 L
-1031 386 mt 1036 383 L
-1036 383 mt 1066 363 L
-1066 363 mt 1078 355 L
-1078 355 mt 1101 342 L
-1101 342 mt 1127 328 L
-1127 328 mt 1136 323 L
-1136 323 mt 1170 307 L
-1170 307 mt 1185 300 L
-1185 300 mt 1205 292 L
-1205 292 mt 1240 279 L
-1240 279 mt 1260 273 L
-1260 273 mt 1275 268 L
-1275 268 mt 1310 258 L
-1310 258 mt 1345 250 L
-1345 250 mt 1367 245 L
-1367 245 mt 1380 243 L
-1380 243 mt 1415 236 L
-1415 236 mt 1449 230 L
-1449 230 mt 1484 224 L
-1484 224 mt 1519 218 L
-1519 218 mt 1522 218 L
-1522 218 mt 1554 213 L
-1554 213 mt 1589 207 L
-1589 207 mt 1624 201 L
-1624 201 mt 1659 195 L
-1659 195 mt 1686 190 L
-1686 190 mt 1694 189 L
-1694 189 mt 1728 183 L
-1728 183 mt 1763 178 L
-1763 178 mt 1798 172 L
-1798 172 mt 1833 168 L
-1833 168 mt 1868 163 L
-1868 163 mt 1870 163 L
-1870 163 mt 1903 159 L
-1903 159 mt 1938 155 L
-1938 155 mt 1972 152 L
-1972 152 mt 2007 149 L
-2007 149 mt 2042 146 L
-2042 146 mt 2077 143 L
-2077 143 mt 2112 141 L
-2112 141 mt 2147 138 L
-2147 138 mt 2176 135 L
-2176 135 mt 2182 135 L
-2182 135 mt 2217 132 L
-2217 132 mt 2251 129 L
-2251 129 mt 2286 126 L
-2286 126 mt 2321 122 L
-2321 122 mt 2356 119 L
-2356 119 mt 2391 115 L
-2391 115 mt 2426 112 L
-2426 112 mt 2461 108 L
-2461 108 mt 2463 108 L
-2463 108 mt 2496 104 L
-2496 104 mt 2530 100 L
-2530 100 mt 2565 97 L
-2565 97 mt 2600 93 L
-2600 93 mt 2635 89 L
-2635 89 mt 2670 85 L
-2670 85 mt 2705 82 L
-2705 82 mt 2717 80 L
-2717 80 mt 2740 78 L
-2740 78 mt 2774 74 L
-2774 74 mt 2809 70 L
-2809 70 mt 2844 67 L
-2844 67 mt 2879 63 L
-2879 63 mt 2914 60 L
-2914 60 mt 2949 56 L
-2949 56 mt 2982 53 L
-2982 53 mt 2984 53 L
-2984 53 mt 3019 49 L
-3019 49 mt 3053 46 L
-3053 46 mt 3088 43 L
-3088 43 mt 3123 39 L
-3123 39 mt 3158 35 L
-3158 35 mt 3193 32 L
-3193 32 mt 3228 28 L
-3228 28 mt 3252 25 L
-3252 25 mt 3263 24 L
-3263 24 mt 3298 20 L
-3298 20 mt 3332 16 L
-3332 16 mt 3367 12 L
-3367 12 mt 3402 7 L
-3402 7 mt 3437 3 L
-3437 3 mt 3472 0 L
-3472 0 mt 3479 -1 L
-3479 -1 mt 3507 -5 L
-3507 -5 mt 3542 -9 L
-3542 -9 mt 3577 -14 L
-3577 -14 mt 3611 -19 L
-3611 -19 mt 3646 -23 L
-3646 -23 mt 3681 -28 L
-3681 -28 mt 3687 -29 L
-3687 -29 mt 3716 -33 L
-3716 -33 mt 3751 -37 L
-3751 -37 mt 3786 -42 L
-3786 -42 mt 3821 -46 L
-3821 -46 mt 3855 -50 L
-3855 -50 mt 3890 -54 L
-3890 -54 mt 3907 -56 L
-3907 -56 mt 3925 -58 L
-3925 -58 mt 3960 -62 L
-3960 -62 mt 3995 -65 L
-3995 -65 mt 4030 -69 L
-4030 -69 mt 4065 -72 L
-4065 -72 mt 4100 -75 L
-4100 -75 mt 4134 -78 L
-4134 -78 mt 4169 -80 L
-4169 -80 mt 4204 -83 L
-4204 -83 mt 4224 -84 L
-4224 -84 mt 4239 -85 L
-4239 -85 mt 4274 -86 L
-4274 -86 mt 4309 -88 L
-4309 -88 mt 4344 -89 L
-4344 -89 mt 4379 -89 L
-4379 -89 mt 4413 -89 L
-4413 -89 mt 4448 -88 L
-4448 -88 mt 4483 -87 L
-4483 -87 mt 4518 -86 L
-4518 -86 mt 4553 -84 L
-4553 -84 mt 4560 -84 L
-4560 -84 mt 4588 -82 L
-4588 -82 mt 4623 -79 L
-4623 -79 mt 4657 -76 L
-4657 -76 mt 4692 -73 L
-4692 -73 mt 4727 -69 L
-4727 -69 mt 4762 -65 L
-4762 -65 mt 4797 -60 L
-4797 -60 mt 4822 -56 L
-4822 -56 mt 4832 -55 L
-4832 -55 mt 4867 -49 L
-4867 -49 mt 4902 -43 L
-4902 -43 mt 4936 -36 L
-4936 -36 mt 4967 -29 L
-4967 -29 mt 4971 -28 L
-4971 -28 mt 5006 -20 L
-5006 -20 mt 5041 -11 L
-5041 -11 mt 5076 -2 L
-5076 -2 mt 5077 -1 L
-5077 -1 mt 5111 7 L
-5111 7 mt 5146 18 L
-5146 18 mt 5170 25 L
-5170 25 mt 5181 29 L
-5181 29 mt 5215 41 L
-5215 41 mt 5248 53 L
-5248 53 mt 5250 54 L
-5250 54 mt 5285 68 L
-5285 68 mt 5315 80 L
-5315 80 mt 5320 83 L
-5320 83 mt 5355 99 L
-5355 99 mt 5373 108 L
-5373 108 mt 5390 116 L
-5390 116 mt 5425 135 L
-5425 135 mt 5425 135 L
-5425 135 mt 5459 155 L
-5459 155 mt 5472 163 L
-5472 163 mt 5494 177 L
-5494 177 mt 5516 190 L
-5516 190 mt 5529 199 L
-5529 199 mt 5556 218 L
-5556 218 mt 5564 224 L
-5564 224 mt 5594 245 L
-5594 245 mt 5599 249 L
-5599 249 mt 5630 273 L
-5630 273 mt 5634 276 L
-5634 276 mt 5665 300 L
-5665 300 mt 5669 304 L
-5669 304 mt 5698 328 L
-5698 328 mt 5704 333 L
-5704 333 mt 5730 355 L
-5730 355 mt 5738 363 L
-5738 363 mt 5761 383 L
-5761 383 mt 5773 394 L
-5773 394 mt 5791 411 L
-5791 411 mt 5808 427 L
-5808 427 mt 5820 438 L
-5820 438 mt 5843 460 L
-5843 460 mt 5849 466 L
-5849 466 mt 5878 493 L
-5878 493 mt 5878 493 L
-5878 493 mt 5906 521 L
-5906 521 mt 5913 528 L
-5913 528 mt 5933 548 L
-5933 548 mt 5948 563 L
-5948 563 mt 5961 576 L
-5961 576 mt 5983 598 L
-5983 598 mt 5988 603 L
-5988 603 mt 6015 631 L
-6015 631 mt 6017 633 L
-6017 633 mt 6042 658 L
-6042 658 mt 6052 669 L
-6052 669 mt 6068 686 L
-6068 686 mt 6087 705 L
-6087 705 mt 6095 713 L
-6095 713 mt 6121 741 L
-6121 741 mt 6122 741 L
-6122 741 mt 6148 768 L
-6148 768 mt 6157 778 L
-6157 778 mt 6174 796 L
-6174 796 mt 6192 814 L
-6192 814 mt 6200 823 L
-6200 823 mt 6226 851 L
-6226 851 mt 6227 851 L
-6227 851 mt 6253 878 L
-6253 878 mt 6261 888 L
-6261 888 mt 6279 906 L
-6279 906 mt 6296 924 L
-6296 924 mt 6305 933 L
-6305 933 mt 6331 961 L
-6331 961 mt 6331 961 L
-6331 961 mt 6357 988 L
-6357 988 mt 6366 998 L
-6366 998 mt 6383 1016 L
-6383 1016 mt 6401 1035 L
-6401 1035 mt 6409 1043 L
-6409 1043 mt 6434 1071 L
-6434 1071 mt 6436 1072 L
-6436 1072 mt 6460 1098 L
-6460 1098 mt 6471 1110 L
-6471 1110 mt 6485 1126 L
-6485 1126 mt 6506 1149 L
-6506 1149 mt 6510 1153 L
-6510 1153 mt 6534 1181 L
-6534 1181 mt 6540 1189 L
-6540 1189 mt 6557 1208 L
-6557 1208 mt 6575 1230 L
-6575 1230 mt 6580 1236 L
-6580 1236 mt 6603 1263 L
-6603 1263 mt 6610 1273 L
-6610 1273 mt 6625 1291 L
-6625 1291 mt 6645 1317 L
-6645 1317 mt 6646 1318 L
-6646 1318 mt 6666 1346 L
-6666 1346 mt 6680 1365 L
-6680 1365 mt 6686 1373 L
-6686 1373 mt 6705 1401 L
-6705 1401 mt 6715 1415 L
-6715 1415 mt 6724 1428 L
-6724 1428 mt 6741 1456 L
-6741 1456 mt 6750 1470 L
-6750 1470 mt 6758 1484 L
-6758 1484 mt 6774 1511 L
-6774 1511 mt 6785 1531 L
-6785 1531 mt 6789 1539 L
-6789 1539 mt 6803 1566 L
-6803 1566 mt 6816 1594 L
-6816 1594 mt 6819 1602 L
-6819 1602 mt 6828 1621 L
-6828 1621 mt 6840 1649 L
-6840 1649 mt 6851 1676 L
-6851 1676 mt 6854 1686 L
-6854 1686 mt 6861 1704 L
-6861 1704 mt 6870 1731 L
-6870 1731 mt 6879 1759 L
-6879 1759 mt 6887 1786 L
-6887 1786 mt 6889 1795 L
-6889 1795 mt 6894 1814 L
-6894 1814 mt 6901 1841 L
-6901 1841 mt 6906 1869 L
-6906 1869 mt 6911 1896 L
-6911 1896 mt 6915 1924 L
-6915 1924 mt 6918 1951 L
-6918 1951 mt 6921 1979 L
-6921 1979 mt 6923 2006 L
-6923 2006 mt 6924 2025 L
-6854 1868 mt 6854 1869 L
-6854 1869 mt 6859 1896 L
-6859 1896 mt 6863 1924 L
-6863 1924 mt 6866 1951 L
-6866 1951 mt 6868 1979 L
-6868 1979 mt 6870 2006 L
-6870 2006 mt 6871 2034 L
-6871 2034 mt 6872 2061 L
-6872 2061 mt 6871 2089 L
-6871 2089 mt 6870 2116 L
-6870 2116 mt 6868 2144 L
-6868 2144 mt 6866 2171 L
-6866 2171 mt 6862 2199 L
-6862 2199 mt 6858 2226 L
-6858 2226 mt 6854 2250 L
-6854 2250 mt 6854 2254 L
-6854 2254 mt 6848 2281 L
-6848 2281 mt 6842 2309 L
-6842 2309 mt 6836 2336 L
-6836 2336 mt 6829 2364 L
-6829 2364 mt 6821 2391 L
-6821 2391 mt 6819 2396 L
-6819 2396 mt 6812 2419 L
-6812 2419 mt 6804 2446 L
-6804 2446 mt 6794 2474 L
-6794 2474 mt 6785 2501 L
-6785 2501 mt 6784 2502 L
-6784 2502 mt 6774 2529 L
-6774 2529 mt 6763 2557 L
-6763 2557 mt 6752 2584 L
-6752 2584 mt 6750 2589 L
-6750 2589 mt 6740 2612 L
-6740 2612 mt 6728 2639 L
-6728 2639 mt 6715 2667 L
-6715 2667 mt 6715 2667 L
-6715 2667 mt 6702 2694 L
-6702 2694 mt 6688 2722 L
-6688 2722 mt 6680 2738 L
-6680 2738 mt 6674 2749 L
-6674 2749 mt 6660 2777 L
-6660 2777 mt 6645 2804 L
-6645 2804 mt 6645 2804 L
-6645 2804 mt 6630 2832 L
-6630 2832 mt 6616 2859 L
-6616 2859 mt 6610 2871 L
-6610 2871 mt 6602 2887 L
-6602 2887 mt 6588 2914 L
-6588 2914 mt 6575 2941 L
-6575 2941 mt 6575 2942 L
-6575 2942 mt 6562 2969 L
-6562 2969 mt 6550 2997 L
-6550 2997 mt 6540 3023 L
-6540 3023 mt 6540 3024 L
-6540 3024 mt 6530 3052 L
-6530 3052 mt 6522 3079 L
-6522 3079 mt 6515 3107 L
-6515 3107 mt 6509 3134 L
-6509 3134 mt 6506 3152 L
-6506 3152 mt 6504 3162 L
-6504 3162 mt 6499 3189 L
-6499 3189 mt 6494 3217 L
-6494 3217 mt 6489 3244 L
-6489 3244 mt 6485 3272 L
-6485 3272 mt 6480 3299 L
-6480 3299 mt 6475 3327 L
-6475 3327 mt 6471 3349 L
-6471 3349 mt 6470 3354 L
-6470 3354 mt 6464 3382 L
-6464 3382 mt 6457 3409 L
-6457 3409 mt 6450 3437 L
-6450 3437 mt 6442 3464 L
-6442 3464 mt 6436 3481 L
-6436 3481 mt 6432 3492 L
-6432 3492 mt 6421 3519 L
-6421 3519 mt 6408 3547 L
-6408 3547 mt 6401 3561 L
-6401 3561 mt 6393 3575 L
-6393 3575 mt 6377 3602 L
-6377 3602 mt 6366 3618 L
-6366 3618 mt 6357 3630 L
-6357 3630 mt 6335 3657 L
-6335 3657 mt 6331 3661 L
-6331 3661 mt 6306 3685 L
-6306 3685 mt 6296 3693 L
-6296 3693 mt 6263 3712 L
-6263 3712 mt 6261 3713 L
-6261 3713 mt 6227 3724 L
-6227 3724 mt 6193 3712 L
-6193 3712 mt 6192 3712 L
-6192 3712 mt 6165 3685 L
-6165 3685 mt 6157 3677 L
-6157 3677 mt 6140 3657 L
-6140 3657 mt 6122 3636 L
-6122 3636 mt 6117 3630 L
-6117 3630 mt 6094 3602 L
-6094 3602 mt 6087 3595 L
-6087 3595 mt 6064 3575 L
-6064 3575 mt 6052 3565 L
-6052 3565 mt 6022 3547 L
-6022 3547 mt 6017 3545 L
-6017 3545 mt 5983 3531 L
-5983 3531 mt 5948 3520 L
-5948 3520 mt 5946 3519 L
-5946 3519 mt 5913 3509 L
-5913 3509 mt 5878 3496 L
-5878 3496 mt 5869 3492 L
-5869 3492 mt 5843 3480 L
-5843 3480 mt 5811 3464 L
-5811 3464 mt 5808 3463 L
-5808 3463 mt 5773 3438 L
-5773 3438 mt 5772 3437 L
-5772 3437 mt 5747 3409 L
-5747 3409 mt 5738 3395 L
-5738 3395 mt 5731 3382 L
-5731 3382 mt 5720 3354 L
-5720 3354 mt 5711 3327 L
-5711 3327 mt 5704 3306 L
-5704 3306 mt 5701 3299 L
-5701 3299 mt 5692 3272 L
-5692 3272 mt 5682 3244 L
-5682 3244 mt 5672 3217 L
-5672 3217 mt 5669 3206 L
-5669 3206 mt 5663 3189 L
-5663 3189 mt 5654 3162 L
-5654 3162 mt 5645 3134 L
-5645 3134 mt 5634 3107 L
-5634 3107 mt 5634 3107 L
-5634 3107 mt 5617 3079 L
-5617 3079 mt 5599 3055 L
-5599 3055 mt 5596 3052 L
-5596 3052 mt 5566 3024 L
-5566 3024 mt 5564 3023 L
-5564 3023 mt 5529 2997 L
-5529 2997 mt 5529 2997 L
-5529 2997 mt 5494 2971 L
-5494 2971 mt 5492 2969 L
-5492 2969 mt 5461 2942 L
-5461 2942 mt 5459 2940 L
-5459 2940 mt 5432 2914 L
-5432 2914 mt 5425 2907 L
-5425 2907 mt 5401 2887 L
-5401 2887 mt 5390 2877 L
-5390 2877 mt 5368 2859 L
-5368 2859 mt 5355 2848 L
-5355 2848 mt 5334 2832 L
-5334 2832 mt 5320 2819 L
-5320 2819 mt 5300 2804 L
-5300 2804 mt 5285 2788 L
-5285 2788 mt 5274 2777 L
-5274 2777 mt 5259 2749 L
-5259 2749 mt 5256 2722 L
-5256 2722 mt 5260 2694 L
-5260 2694 mt 5267 2667 L
-5267 2667 mt 5271 2639 L
-5271 2639 mt 5270 2612 L
-5270 2612 mt 5263 2584 L
-5263 2584 mt 5250 2558 L
-5250 2558 mt 5249 2557 L
-5249 2557 mt 5226 2529 L
-5226 2529 mt 5215 2518 L
-5215 2518 mt 5196 2502 L
-5196 2502 mt 5181 2489 L
-5181 2489 mt 5162 2474 L
-5162 2474 mt 5146 2460 L
-5146 2460 mt 5131 2446 L
-5131 2446 mt 5111 2428 L
-5111 2428 mt 5103 2419 L
-5103 2419 mt 5078 2391 L
-5078 2391 mt 5076 2389 L
-5076 2389 mt 5057 2364 L
-5057 2364 mt 5041 2342 L
-5041 2342 mt 5037 2336 L
-5037 2336 mt 5016 2309 L
-5016 2309 mt 5006 2299 L
-5006 2299 mt 4989 2281 L
-4989 2281 mt 4971 2267 L
-4971 2267 mt 4955 2254 L
-4955 2254 mt 4936 2242 L
-4936 2242 mt 4911 2226 L
-4911 2226 mt 4902 2221 L
-4902 2221 mt 4867 2203 L
-4867 2203 mt 4858 2199 L
-4858 2199 mt 4832 2187 L
-4832 2187 mt 4797 2172 L
-4797 2172 mt 4795 2171 L
-4795 2171 mt 4762 2156 L
-4762 2156 mt 4743 2144 L
-4743 2144 mt 4727 2131 L
-4727 2131 mt 4713 2116 L
-4713 2116 mt 4696 2089 L
-4696 2089 mt 4692 2082 L
-4692 2082 mt 4684 2061 L
-4684 2061 mt 4677 2034 L
-4677 2034 mt 4670 2006 L
-4670 2006 mt 4662 1979 L
-4662 1979 mt 4657 1965 L
-4657 1965 mt 4653 1951 L
-4653 1951 mt 4641 1924 L
-4641 1924 mt 4626 1896 L
-4626 1896 mt 4623 1892 L
-4623 1892 mt 4600 1869 L
-4600 1869 mt 4588 1859 L
-4588 1859 mt 4554 1841 L
-4554 1841 mt 4553 1841 L
-4553 1841 mt 4518 1828 L
-4518 1828 mt 4483 1818 L
-4483 1818 mt 4467 1814 L
-4467 1814 mt 4448 1809 L
-4448 1809 mt 4413 1799 L
-4413 1799 mt 4380 1786 L
-4380 1786 mt 4379 1785 L
-4379 1785 mt 4344 1767 L
-4344 1767 mt 4333 1759 L
-4333 1759 mt 4309 1737 L
-4309 1737 mt 4303 1731 L
-4303 1731 mt 4281 1704 L
-4281 1704 mt 4274 1694 L
-4274 1694 mt 4261 1676 L
-4261 1676 mt 4242 1649 L
-4242 1649 mt 4239 1644 L
-4239 1644 mt 4219 1621 L
-4219 1621 mt 4204 1604 L
-4204 1604 mt 4192 1594 L
-4192 1594 mt 4169 1575 L
-4169 1575 mt 4155 1566 L
-4155 1566 mt 4134 1554 L
-4134 1554 mt 4100 1540 L
-4100 1540 mt 4093 1539 L
-4093 1539 mt 4065 1532 L
-4065 1532 mt 4030 1526 L
-4030 1526 mt 3995 1522 L
-3995 1522 mt 3960 1520 L
-3960 1520 mt 3925 1518 L
-3925 1518 mt 3890 1516 L
-3890 1516 mt 3856 1511 L
-3856 1511 mt 3855 1511 L
-3855 1511 mt 3821 1503 L
-3821 1503 mt 3786 1490 L
-3786 1490 mt 3772 1484 L
-3772 1484 mt 3751 1472 L
-3751 1472 mt 3727 1456 L
-3727 1456 mt 3716 1447 L
-3716 1447 mt 3695 1428 L
-3695 1428 mt 3681 1414 L
-3681 1414 mt 3670 1401 L
-3670 1401 mt 3647 1373 L
-3647 1373 mt 3646 1373 L
-3646 1373 mt 3626 1346 L
-3626 1346 mt 3611 1329 L
-3611 1329 mt 3602 1318 L
-3602 1318 mt 3577 1297 L
-3577 1297 mt 3566 1291 L
-3566 1291 mt 3542 1279 L
-3542 1279 mt 3507 1267 L
-3507 1267 mt 3493 1263 L
-3493 1263 mt 3472 1258 L
-3472 1258 mt 3437 1251 L
-3437 1251 mt 3402 1245 L
-3402 1245 mt 3367 1239 L
-3367 1239 mt 3347 1236 L
-3347 1236 mt 3332 1233 L
-3332 1233 mt 3298 1226 L
-3298 1226 mt 3263 1219 L
-3263 1219 mt 3228 1210 L
-3228 1210 mt 3221 1208 L
-3221 1208 mt 3193 1200 L
-3193 1200 mt 3158 1190 L
-3158 1190 mt 3128 1181 L
-3128 1181 mt 3123 1180 L
-3123 1180 mt 3088 1170 L
-3088 1170 mt 3053 1162 L
-3053 1162 mt 3019 1157 L
-3019 1157 mt 2984 1154 L
-2984 1154 mt 2965 1153 L
-2965 1153 mt 2949 1152 L
-2949 1152 mt 2914 1149 L
-2914 1149 mt 2879 1147 L
-2879 1147 mt 2844 1146 L
-2844 1146 mt 2809 1146 L
-2809 1146 mt 2774 1147 L
-2774 1147 mt 2740 1148 L
-2740 1148 mt 2705 1148 L
-2705 1148 mt 2670 1147 L
-2670 1147 mt 2635 1144 L
-2635 1144 mt 2600 1140 L
-2600 1140 mt 2565 1136 L
-2565 1136 mt 2530 1131 L
-2530 1131 mt 2501 1126 L
-2501 1126 mt 2496 1125 L
-2496 1125 mt 2461 1115 L
-2461 1115 mt 2426 1107 L
-2426 1107 mt 2391 1100 L
-2391 1100 mt 2372 1098 L
-2372 1098 mt 2356 1097 L
-2356 1097 mt 2321 1095 L
-2321 1095 mt 2286 1095 L
-2286 1095 mt 2251 1096 L
-2251 1096 mt 2217 1097 L
-2217 1097 mt 2195 1098 L
-2195 1098 mt 2182 1099 L
-2182 1099 mt 2147 1103 L
-2147 1103 mt 2112 1107 L
-2112 1107 mt 2077 1113 L
-2077 1113 mt 2042 1121 L
-2042 1121 mt 2021 1126 L
-2021 1126 mt 2007 1129 L
-2007 1129 mt 1972 1140 L
-1972 1140 mt 1938 1152 L
-1938 1152 mt 1933 1153 L
-1933 1153 mt 1903 1166 L
-1903 1166 mt 1871 1181 L
-1871 1181 mt 1868 1183 L
-1868 1183 mt 1833 1203 L
-1833 1203 mt 1825 1208 L
-1825 1208 mt 1798 1227 L
-1798 1227 mt 1787 1236 L
-1787 1236 mt 1763 1258 L
-1763 1258 mt 1758 1263 L
-1758 1263 mt 1737 1291 L
-1737 1291 mt 1728 1307 L
-1728 1307 mt 1724 1318 L
-1724 1318 mt 1717 1346 L
-1717 1346 mt 1713 1373 L
-1713 1373 mt 1711 1401 L
-1711 1401 mt 1709 1428 L
-1709 1428 mt 1704 1456 L
-1704 1456 mt 1698 1484 L
-1698 1484 mt 1694 1498 L
-1694 1498 mt 1690 1511 L
-1690 1511 mt 1679 1539 L
-1679 1539 mt 1667 1566 L
-1667 1566 mt 1659 1587 L
-1659 1587 mt 1656 1594 L
-1656 1594 mt 1650 1621 L
-1650 1621 mt 1649 1649 L
-1649 1649 mt 1653 1676 L
-1653 1676 mt 1659 1696 L
-1659 1696 mt 1661 1704 L
-1661 1704 mt 1669 1731 L
-1669 1731 mt 1674 1759 L
-1674 1759 mt 1673 1786 L
-1673 1786 mt 1669 1814 L
-1669 1814 mt 1663 1841 L
-1663 1841 mt 1659 1856 L
-1659 1856 mt 1655 1869 L
-1655 1869 mt 1649 1896 L
-1649 1896 mt 1646 1924 L
-1646 1924 mt 1648 1951 L
-1648 1951 mt 1654 1979 L
-1654 1979 mt 1659 1999 L
-1659 1999 mt 1661 2006 L
-1661 2006 mt 1666 2034 L
-1666 2034 mt 1666 2061 L
-1666 2061 mt 1661 2089 L
-1661 2089 mt 1659 2096 L
-1659 2096 mt 1654 2116 L
-1654 2116 mt 1647 2144 L
-1647 2144 mt 1644 2171 L
-1644 2171 mt 1648 2199 L
-1648 2199 mt 1659 2220 L
-1659 2220 mt 1661 2226 L
-1661 2226 mt 1688 2254 L
-1688 2254 mt 1694 2258 L
-1694 2258 mt 1725 2281 L
-1725 2281 mt 1728 2284 L
-1728 2284 mt 1763 2306 L
-1763 2306 mt 1768 2309 L
-1768 2309 mt 1798 2327 L
-1798 2327 mt 1813 2336 L
-1813 2336 mt 1833 2350 L
-1833 2350 mt 1853 2364 L
-1853 2364 mt 1868 2376 L
-1868 2376 mt 1886 2391 L
-1886 2391 mt 1903 2409 L
-1903 2409 mt 1912 2419 L
-1912 2419 mt 1937 2446 L
-1937 2446 mt 1938 2448 L
-1938 2448 mt 1961 2474 L
-1961 2474 mt 1972 2486 L
-1972 2486 mt 1987 2502 L
-1987 2502 mt 2007 2522 L
-2007 2522 mt 2016 2529 L
-2016 2529 mt 2042 2550 L
-2042 2550 mt 2051 2557 L
-2051 2557 mt 2077 2574 L
-2077 2574 mt 2091 2584 L
-2091 2584 mt 2112 2600 L
-2112 2600 mt 2124 2612 L
-2124 2612 mt 2147 2638 L
-2147 2638 mt 2147 2639 L
-2147 2639 mt 2167 2667 L
-2167 2667 mt 2182 2684 L
-2182 2684 mt 2189 2694 L
-2189 2694 mt 2213 2722 L
-2213 2722 mt 2217 2725 L
-2217 2725 mt 2240 2749 L
-2240 2749 mt 2251 2760 L
-2251 2760 mt 2268 2777 L
-2268 2777 mt 2286 2794 L
-2286 2794 mt 2297 2804 L
-2297 2804 mt 2321 2830 L
-2321 2830 mt 2323 2832 L
-2323 2832 mt 2348 2859 L
-2348 2859 mt 2356 2869 L
-2356 2869 mt 2372 2887 L
-2372 2887 mt 2391 2907 L
-2391 2907 mt 2397 2914 L
-2397 2914 mt 2412 2942 L
-2412 2942 mt 2408 2969 L
-2408 2969 mt 2394 2997 L
-2394 2997 mt 2391 3003 L
-2391 3003 mt 2376 3024 L
-2376 3024 mt 2362 3052 L
-2362 3052 mt 2356 3063 L
-2356 3063 mt 2345 3079 L
-2345 3079 mt 2330 3107 L
-2330 3107 mt 2321 3134 L
-2321 3134 mt 2321 3134 L
-2321 3134 mt 2321 3137 L
-2321 3137 mt 2323 3162 L
-2323 3162 mt 2335 3189 L
-2335 3189 mt 2353 3217 L
-2353 3217 mt 2356 3220 L
-2356 3220 mt 2378 3244 L
-2378 3244 mt 2391 3256 L
-2391 3256 mt 2409 3272 L
-2409 3272 mt 2426 3286 L
-2426 3286 mt 2442 3299 L
-2442 3299 mt 2461 3315 L
-2461 3315 mt 2476 3327 L
-2476 3327 mt 2496 3342 L
-2496 3342 mt 2512 3354 L
-2512 3354 mt 2530 3368 L
-2530 3368 mt 2548 3382 L
-2548 3382 mt 2565 3395 L
-2565 3395 mt 2582 3409 L
-2582 3409 mt 2600 3427 L
-2600 3427 mt 2610 3437 L
-2610 3437 mt 2633 3464 L
-2633 3464 mt 2635 3467 L
-2635 3467 mt 2652 3492 L
-2652 3492 mt 2669 3519 L
-2669 3519 mt 2670 3521 L
-2670 3521 mt 2686 3547 L
-2686 3547 mt 2703 3575 L
-2703 3575 mt 2705 3578 L
-2705 3578 mt 2719 3602 L
-2719 3602 mt 2734 3630 L
-2734 3630 mt 2740 3645 L
-2740 3645 mt 2744 3657 L
-2744 3657 mt 2746 3685 L
-2746 3685 mt 2740 3697 L
-2740 3697 mt 2732 3712 L
-2732 3712 mt 2705 3735 L
-2705 3735 mt 2696 3740 L
-2696 3740 mt 2670 3752 L
-2670 3752 mt 2635 3765 L
-2635 3765 mt 2629 3767 L
-2629 3767 mt 2600 3776 L
-2600 3776 mt 2565 3787 L
-2565 3787 mt 2541 3795 L
-2541 3795 mt 2530 3798 L
-2530 3798 mt 2496 3812 L
-2496 3812 mt 2469 3822 L
-2469 3822 mt 2461 3826 L
-2461 3826 mt 2426 3842 L
-2426 3842 mt 2410 3850 L
-2410 3850 mt 2391 3861 L
-2391 3861 mt 2364 3877 L
-2364 3877 mt 2356 3883 L
-2356 3883 mt 2327 3905 L
-2327 3905 mt 2321 3910 L
-2321 3910 mt 2295 3932 L
-2295 3932 mt 2286 3942 L
-2286 3942 mt 2267 3960 L
-2267 3960 mt 2251 3981 L
-2251 3981 mt 2246 3987 L
-2246 3987 mt 2236 4015 L
-2236 4015 mt 2237 4042 L
-2237 4042 mt 2249 4070 L
-2249 4070 mt 2251 4073 L
-2251 4073 mt 2268 4097 L
-2268 4097 mt 2286 4119 L
-2286 4119 mt 2290 4125 L
-2290 4125 mt 2315 4152 L
-2315 4152 mt 2321 4159 L
-2321 4159 mt 2338 4180 L
-2338 4180 mt 2356 4202 L
-2356 4202 mt 2360 4207 L
-2360 4207 mt 2381 4235 L
-2381 4235 mt 2391 4249 L
-2391 4249 mt 2401 4262 L
-2401 4262 mt 2419 4290 L
-2419 4290 mt 2426 4299 L
-2426 4299 mt 2439 4317 L
-2439 4317 mt 2461 4341 L
-2461 4341 mt 2464 4345 L
-2464 4345 mt 2495 4372 L
-2495 4372 mt 2496 4373 L
-2496 4373 mt 2530 4400 L
-2530 4400 mt 2531 4400 L
-2531 4400 mt 2565 4421 L
-2565 4421 mt 2576 4427 L
-2576 4427 mt 2600 4440 L
-2600 4440 mt 2630 4455 L
-2630 4455 mt 2635 4457 L
-2635 4457 mt 2670 4471 L
-2670 4471 mt 2705 4481 L
-2705 4481 mt 2712 4482 L
-2712 4482 mt 2740 4487 L
-2740 4487 mt 2774 4490 L
-2774 4490 mt 2809 4491 L
-2809 4491 mt 2844 4493 L
-2844 4493 mt 2879 4497 L
-2879 4497 mt 2914 4505 L
-2914 4505 mt 2930 4510 L
-2930 4510 mt 2949 4516 L
-2949 4516 mt 2984 4532 L
-2984 4532 mt 2994 4537 L
-2994 4537 mt 3019 4552 L
-3019 4552 mt 3038 4565 L
-3038 4565 mt 3053 4585 L
-3053 4585 mt 3059 4592 L
-3059 4592 mt 3055 4620 L
-3055 4620 mt 3053 4621 L
-3053 4621 mt 3021 4648 L
-3021 4648 mt 3019 4649 L
-3019 4649 mt 2984 4665 L
-2984 4665 mt 2959 4675 L
-2959 4675 mt 2949 4679 L
-2949 4679 mt 2914 4692 L
-2914 4692 mt 2884 4703 L
-2884 4703 mt 2879 4704 L
-2879 4704 mt 2844 4715 L
-2844 4715 mt 2809 4724 L
-2809 4724 mt 2789 4730 L
-2789 4730 mt 2774 4734 L
-2774 4734 mt 2740 4743 L
-2740 4743 mt 2705 4752 L
-2705 4752 mt 2684 4758 L
-2684 4758 mt 2670 4761 L
-2670 4761 mt 2635 4770 L
-2635 4770 mt 2600 4779 L
-2600 4779 mt 2573 4785 L
-2573 4785 mt 2565 4787 L
-2565 4787 mt 2530 4794 L
-2530 4794 mt 2496 4801 L
-2496 4801 mt 2461 4807 L
-2461 4807 mt 2426 4812 L
-2426 4812 mt 2420 4813 L
-2420 4813 mt 2391 4816 L
-2391 4816 mt 2356 4820 L
-2356 4820 mt 2321 4822 L
-2321 4822 mt 2286 4824 L
-2286 4824 mt 2251 4825 L
-2251 4825 mt 2217 4825 L
-2217 4825 mt 2182 4824 L
-2182 4824 mt 2147 4821 L
-2147 4821 mt 2112 4818 L
-2112 4818 mt 2077 4814 L
-2077 4814 mt 2070 4813 L
-2070 4813 mt 2042 4808 L
-2042 4808 mt 2007 4802 L
-2007 4802 mt 1972 4794 L
-1972 4794 mt 1938 4786 L
-1938 4786 mt 1935 4785 L
-1935 4785 mt 1903 4776 L
-1903 4776 mt 1868 4764 L
-1868 4764 mt 1851 4758 L
-1851 4758 mt 1833 4751 L
-1833 4751 mt 1798 4735 L
-1798 4735 mt 1788 4730 L
-1788 4730 mt 1763 4717 L
-1763 4717 mt 1739 4703 L
-1739 4703 mt 1728 4696 L
-1728 4696 mt 1700 4675 L
-1700 4675 mt 1694 4669 L
-1694 4669 mt 1670 4648 L
-1670 4648 mt 1659 4634 L
-1659 4634 mt 1647 4620 L
-1647 4620 mt 1629 4592 L
-1629 4592 mt 1624 4584 L
-1624 4584 mt 1613 4565 L
-1613 4565 mt 1600 4537 L
-1600 4537 mt 1589 4511 L
-1589 4511 mt 1589 4510 L
-1589 4510 mt 1578 4482 L
-1578 4482 mt 1567 4455 L
-1567 4455 mt 1558 4427 L
-1558 4427 mt 1554 4408 L
-1554 4408 mt 1552 4400 L
-1552 4400 mt 1546 4372 L
-1546 4372 mt 1539 4345 L
-1539 4345 mt 1529 4317 L
-1529 4317 mt 1519 4294 L
-1519 4294 mt 1518 4290 L
-1518 4290 mt 1507 4262 L
-1507 4262 mt 1497 4235 L
-1497 4235 mt 1490 4207 L
-1490 4207 mt 1486 4180 L
-1486 4180 mt 1485 4152 L
-1485 4152 mt 1488 4125 L
-1488 4125 mt 1494 4097 L
-1494 4097 mt 1504 4070 L
-1504 4070 mt 1518 4042 L
-1518 4042 mt 1519 4040 L
-1519 4040 mt 1536 4015 L
-1536 4015 mt 1554 3992 L
-1554 3992 mt 1558 3987 L
-1558 3987 mt 1585 3960 L
-1585 3960 mt 1589 3956 L
-1589 3956 mt 1618 3932 L
-1618 3932 mt 1624 3927 L
-1624 3927 mt 1659 3905 L
-1659 3905 mt 1660 3905 L
-1660 3905 mt 1694 3882 L
-1694 3882 mt 1701 3877 L
-1701 3877 mt 1728 3854 L
-1728 3854 mt 1734 3850 L
-1734 3850 mt 1756 3822 L
-1756 3822 mt 1763 3803 L
-1763 3803 mt 1767 3795 L
-1767 3795 mt 1770 3767 L
-1770 3767 mt 1767 3740 L
-1767 3740 mt 1763 3721 L
-1763 3721 mt 1762 3712 L
-1762 3712 mt 1755 3685 L
-1755 3685 mt 1748 3657 L
-1748 3657 mt 1741 3630 L
-1741 3630 mt 1735 3602 L
-1735 3602 mt 1729 3575 L
-1729 3575 mt 1728 3572 L
-1728 3572 mt 1722 3547 L
-1722 3547 mt 1714 3519 L
-1714 3519 mt 1704 3492 L
-1704 3492 mt 1694 3466 L
-1694 3466 mt 1693 3464 L
-1693 3464 mt 1679 3437 L
-1679 3437 mt 1662 3409 L
-1662 3409 mt 1659 3405 L
-1659 3405 mt 1640 3382 L
-1640 3382 mt 1624 3366 L
-1624 3366 mt 1611 3354 L
-1611 3354 mt 1589 3340 L
-1589 3340 mt 1566 3327 L
-1566 3327 mt 1554 3321 L
-1554 3321 mt 1519 3305 L
-1519 3305 mt 1507 3299 L
-1507 3299 mt 1484 3291 L
-1484 3291 mt 1449 3279 L
-1449 3279 mt 1426 3272 L
-1426 3272 mt 1415 3269 L
-1415 3269 mt 1380 3259 L
-1380 3259 mt 1345 3249 L
-1345 3249 mt 1331 3244 L
-1331 3244 mt 1310 3238 L
-1310 3238 mt 1275 3227 L
-1275 3227 mt 1246 3217 L
-1246 3217 mt 1240 3215 L
-1240 3215 mt 1205 3203 L
-1205 3203 mt 1171 3189 L
-1171 3189 mt 1170 3189 L
-1170 3189 mt 1136 3175 L
-1136 3175 mt 1107 3162 L
-1107 3162 mt 1101 3159 L
-1101 3159 mt 1066 3142 L
-1066 3142 mt 1051 3134 L
-1051 3134 mt 1031 3124 L
-1031 3124 mt 999 3107 L
- 999 3107 mt 996 3105 L
- 996 3105 mt 961 3086 L
- 961 3086 mt 950 3079 L
- 950 3079 mt 926 3066 L
- 926 3066 mt 902 3052 L
- 902 3052 mt 892 3046 L
- 892 3046 mt 857 3025 L
- 857 3025 mt 856 3024 L
- 856 3024 mt 822 3003 L
- 822 3003 mt 812 2997 L
- 812 2997 mt 787 2980 L
- 787 2980 mt 773 2969 L
- 773 2969 mt 752 2954 L
- 752 2954 mt 737 2942 L
- 737 2942 mt 717 2926 L
- 717 2926 mt 704 2914 L
- 704 2914 mt 682 2894 L
- 682 2894 mt 675 2887 L
- 675 2887 mt 649 2859 L
- 649 2859 mt 647 2858 L
- 647 2858 mt 625 2832 L
- 625 2832 mt 613 2816 L
- 613 2816 mt 604 2804 L
- 604 2804 mt 584 2777 L
- 584 2777 mt 578 2766 L
- 578 2766 mt 567 2749 L
- 567 2749 mt 551 2722 L
- 551 2722 mt 543 2704 L
- 543 2704 mt 538 2694 L
- 538 2694 mt 525 2667 L
- 525 2667 mt 513 2639 L
- 513 2639 mt 508 2624 L
- 508 2624 mt 503 2612 L
- 503 2612 mt 494 2584 L
- 494 2584 mt 486 2557 L
- 486 2557 mt 480 2529 L
- 480 2529 mt 474 2502 L
- 474 2502 mt 473 2494 L
- 473 2494 mt 470 2474 L
- 470 2474 mt 467 2446 L
- 467 2446 mt 464 2419 L
- 464 2419 mt 463 2391 L
- 463 2391 mt 462 2364 L
- 462 2364 mt 462 2336 L
- 462 2336 mt 463 2309 L
- 463 2309 mt 465 2281 L
- 465 2281 mt 468 2254 L
- 468 2254 mt 471 2226 L
- 471 2226 mt 473 2215 L
- 473 2215 mt 476 2199 L
- 476 2199 mt 480 2171 L
- 480 2171 mt 486 2144 L
- 486 2144 mt 492 2116 L
- 492 2116 mt 498 2089 L
- 498 2089 mt 505 2061 L
- 505 2061 mt 508 2047 L
- 508 2047 mt 511 2034 L
- 511 2034 mt 518 2006 L
- 518 2006 mt 524 1979 L
- 524 1979 mt 529 1951 L
- 529 1951 mt 535 1924 L
- 535 1924 mt 540 1896 L
- 540 1896 mt 543 1878 L
- 543 1878 mt 544 1869 L
- 544 1869 mt 548 1841 L
- 548 1841 mt 552 1814 L
- 552 1814 mt 556 1786 L
- 556 1786 mt 560 1759 L
- 560 1759 mt 563 1731 L
- 563 1731 mt 566 1704 L
- 566 1704 mt 570 1676 L
- 570 1676 mt 573 1649 L
- 573 1649 mt 576 1621 L
- 576 1621 mt 578 1603 L
- 578 1603 mt 579 1594 L
- 579 1594 mt 582 1566 L
- 582 1566 mt 584 1539 L
- 584 1539 mt 587 1511 L
- 587 1511 mt 589 1484 L
- 589 1484 mt 591 1456 L
- 591 1456 mt 593 1428 L
- 593 1428 mt 595 1401 L
- 595 1401 mt 596 1373 L
- 596 1373 mt 598 1346 L
- 598 1346 mt 600 1318 L
- 600 1318 mt 602 1291 L
- 602 1291 mt 605 1263 L
- 605 1263 mt 608 1236 L
- 608 1236 mt 612 1208 L
- 612 1208 mt 613 1202 L
- 613 1202 mt 616 1181 L
- 616 1181 mt 620 1153 L
- 620 1153 mt 626 1126 L
- 626 1126 mt 631 1098 L
- 631 1098 mt 638 1071 L
- 638 1071 mt 644 1043 L
- 644 1043 mt 647 1032 L
- 647 1032 mt 652 1016 L
- 652 1016 mt 659 988 L
- 659 988 mt 667 961 L
- 667 961 mt 676 933 L
- 676 933 mt 682 916 L
- 682 916 mt 686 906 L
- 686 906 mt 696 878 L
- 696 878 mt 707 851 L
- 707 851 mt 717 828 L
- 717 828 mt 719 823 L
- 719 823 mt 733 796 L
- 733 796 mt 747 768 L
- 747 768 mt 752 759 L
- 752 759 mt 763 741 L
- 763 741 mt 779 713 L
- 779 713 mt 787 702 L
- 787 702 mt 797 686 L
- 797 686 mt 817 658 L
- 817 658 mt 822 651 L
- 822 651 mt 837 631 L
- 837 631 mt 857 604 L
- 857 604 mt 858 603 L
- 858 603 mt 879 576 L
- 879 576 mt 892 561 L
- 892 561 mt 902 548 L
- 902 548 mt 926 521 L
- 926 521 mt 926 520 L
- 926 520 mt 951 493 L
- 951 493 mt 961 483 L
- 961 483 mt 979 466 L
- 979 466 mt 996 450 L
- 996 450 mt 1010 438 L
-1010 438 mt 1031 421 L
-1031 421 mt 1045 411 L
-1045 411 mt 1066 396 L
-1066 396 mt 1085 383 L
-1085 383 mt 1101 373 L
-1101 373 mt 1132 355 L
-1132 355 mt 1136 354 L
-1136 354 mt 1170 336 L
-1170 336 mt 1189 328 L
-1189 328 mt 1205 321 L
-1205 321 mt 1240 308 L
-1240 308 mt 1265 300 L
-1265 300 mt 1275 297 L
-1275 297 mt 1310 288 L
-1310 288 mt 1345 280 L
-1345 280 mt 1380 274 L
-1380 274 mt 1387 273 L
-1387 273 mt 1415 269 L
-1415 269 mt 1449 264 L
-1449 264 mt 1484 259 L
-1484 259 mt 1519 254 L
-1519 254 mt 1554 250 L
-1554 250 mt 1582 245 L
-1582 245 mt 1589 244 L
-1589 244 mt 1624 239 L
-1624 239 mt 1659 233 L
-1659 233 mt 1694 228 L
-1694 228 mt 1728 222 L
-1728 222 mt 1756 218 L
-1756 218 mt 1763 217 L
-1763 217 mt 1798 212 L
-1798 212 mt 1833 207 L
-1833 207 mt 1868 203 L
-1868 203 mt 1903 199 L
-1903 199 mt 1938 196 L
-1938 196 mt 1972 194 L
-1972 194 mt 2007 192 L
-2007 192 mt 2028 190 L
-2028 190 mt 2042 190 L
-2042 190 mt 2077 188 L
-2077 188 mt 2112 186 L
-2112 186 mt 2147 184 L
-2147 184 mt 2182 181 L
-2182 181 mt 2217 179 L
-2217 179 mt 2251 176 L
-2251 176 mt 2286 173 L
-2286 173 mt 2321 170 L
-2321 170 mt 2356 167 L
-2356 167 mt 2391 164 L
-2391 164 mt 2405 163 L
-2405 163 mt 2426 161 L
-2426 161 mt 2461 158 L
-2461 158 mt 2496 155 L
-2496 155 mt 2530 152 L
-2530 152 mt 2565 148 L
-2565 148 mt 2600 145 L
-2600 145 mt 2635 142 L
-2635 142 mt 2670 138 L
-2670 138 mt 2698 135 L
-2698 135 mt 2705 135 L
-2705 135 mt 2740 131 L
-2740 131 mt 2774 128 L
-2774 128 mt 2809 125 L
-2809 125 mt 2844 121 L
-2844 121 mt 2879 118 L
-2879 118 mt 2914 115 L
-2914 115 mt 2949 112 L
-2949 112 mt 2984 109 L
-2984 109 mt 2999 108 L
-2999 108 mt 3019 106 L
-3019 106 mt 3053 103 L
-3053 103 mt 3088 100 L
-3088 100 mt 3123 97 L
-3123 97 mt 3158 94 L
-3158 94 mt 3193 91 L
-3193 91 mt 3228 87 L
-3228 87 mt 3263 83 L
-3263 83 mt 3286 80 L
-3286 80 mt 3298 79 L
-3298 79 mt 3332 75 L
-3332 75 mt 3367 70 L
-3367 70 mt 3402 66 L
-3402 66 mt 3437 61 L
-3437 61 mt 3472 56 L
-3472 56 mt 3498 53 L
-3498 53 mt 3507 52 L
-3507 52 mt 3542 47 L
-3542 47 mt 3577 42 L
-3577 42 mt 3611 36 L
-3611 36 mt 3646 31 L
-3646 31 mt 3681 26 L
-3681 26 mt 3686 25 L
-3686 25 mt 3716 21 L
-3716 21 mt 3751 16 L
-3751 16 mt 3786 11 L
-3786 11 mt 3821 6 L
-3821 6 mt 3855 1 L
-3855 1 mt 3882 -1 L
-3882 -1 mt 3890 -2 L
-3890 -2 mt 3925 -7 L
-3925 -7 mt 3960 -11 L
-3960 -11 mt 3995 -15 L
-3995 -15 mt 4030 -19 L
-4030 -19 mt 4065 -23 L
-4065 -23 mt 4100 -27 L
-4100 -27 mt 4119 -29 L
-4119 -29 mt 4134 -30 L
-4134 -30 mt 4169 -34 L
-4169 -34 mt 4204 -37 L
-4204 -37 mt 4239 -40 L
-4239 -40 mt 4274 -42 L
-4274 -42 mt 4309 -44 L
-4309 -44 mt 4344 -46 L
-4344 -46 mt 4379 -47 L
-4379 -47 mt 4413 -48 L
-4413 -48 mt 4448 -48 L
-4448 -48 mt 4483 -48 L
-4483 -48 mt 4518 -47 L
-4518 -47 mt 4553 -46 L
-4553 -46 mt 4588 -44 L
-4588 -44 mt 4623 -42 L
-4623 -42 mt 4657 -40 L
-4657 -40 mt 4692 -37 L
-4692 -37 mt 4727 -34 L
-4727 -34 mt 4762 -30 L
-4762 -30 mt 4776 -29 L
-4776 -29 mt 4797 -26 L
-4797 -26 mt 4832 -22 L
-4832 -22 mt 4867 -16 L
-4867 -16 mt 4902 -10 L
-4902 -10 mt 4936 -4 L
-4936 -4 mt 4949 -1 L
-4949 -1 mt 4971 2 L
-4971 2 mt 5006 10 L
-5006 10 mt 5041 18 L
-5041 18 mt 5068 25 L
-5068 25 mt 5076 27 L
-5076 27 mt 5111 37 L
-5111 37 mt 5146 47 L
-5146 47 mt 5164 53 L
-5164 53 mt 5181 58 L
-5181 58 mt 5215 70 L
-5215 70 mt 5243 80 L
-5243 80 mt 5250 83 L
-5250 83 mt 5285 97 L
-5285 97 mt 5309 108 L
-5309 108 mt 5320 113 L
-5320 113 mt 5355 129 L
-5355 129 mt 5367 135 L
-5367 135 mt 5390 147 L
-5390 147 mt 5417 163 L
-5417 163 mt 5425 167 L
-5425 167 mt 5459 188 L
-5459 188 mt 5463 190 L
-5463 190 mt 5494 210 L
-5494 210 mt 5506 218 L
-5506 218 mt 5529 234 L
-5529 234 mt 5545 245 L
-5545 245 mt 5564 259 L
-5564 259 mt 5582 273 L
-5582 273 mt 5599 286 L
-5599 286 mt 5617 300 L
-5617 300 mt 5634 314 L
-5634 314 mt 5651 328 L
-5651 328 mt 5669 343 L
-5669 343 mt 5683 355 L
-5683 355 mt 5704 373 L
-5704 373 mt 5714 383 L
-5714 383 mt 5738 405 L
-5738 405 mt 5745 411 L
-5745 411 mt 5773 437 L
-5773 437 mt 5774 438 L
-5774 438 mt 5803 466 L
-5803 466 mt 5808 470 L
-5808 470 mt 5832 493 L
-5832 493 mt 5843 504 L
-5843 504 mt 5860 521 L
-5860 521 mt 5878 539 L
-5878 539 mt 5887 548 L
-5887 548 mt 5913 574 L
-5913 574 mt 5915 576 L
-5915 576 mt 5942 603 L
-5942 603 mt 5948 609 L
-5948 609 mt 5968 631 L
-5968 631 mt 5983 645 L
-5983 645 mt 5995 658 L
-5995 658 mt 6017 682 L
-6017 682 mt 6021 686 L
-6021 686 mt 6047 713 L
-6047 713 mt 6052 718 L
-6052 718 mt 6074 741 L
-6074 741 mt 6087 755 L
-6087 755 mt 6100 768 L
-6100 768 mt 6122 792 L
-6122 792 mt 6126 796 L
-6126 796 mt 6152 823 L
-6152 823 mt 6157 829 L
-6157 829 mt 6178 851 L
-6178 851 mt 6192 866 L
-6192 866 mt 6203 878 L
-6203 878 mt 6227 903 L
-6227 903 mt 6229 906 L
-6229 906 mt 6255 933 L
-6255 933 mt 6261 940 L
-6261 940 mt 6281 961 L
-6281 961 mt 6296 977 L
-6296 977 mt 6307 988 L
-6307 988 mt 6331 1014 L
-6331 1014 mt 6333 1016 L
-6333 1016 mt 6358 1043 L
-6358 1043 mt 6366 1052 L
-6366 1052 mt 6384 1071 L
-6384 1071 mt 6401 1089 L
-6401 1089 mt 6409 1098 L
-6409 1098 mt 6434 1126 L
-6434 1126 mt 6436 1128 L
-6436 1128 mt 6459 1153 L
-6459 1153 mt 6471 1166 L
-6471 1166 mt 6484 1181 L
-6484 1181 mt 6506 1206 L
-6506 1206 mt 6508 1208 L
-6508 1208 mt 6531 1236 L
-6531 1236 mt 6540 1247 L
-6540 1247 mt 6554 1263 L
-6554 1263 mt 6575 1290 L
-6575 1290 mt 6576 1291 L
-6576 1291 mt 6597 1318 L
-6597 1318 mt 6610 1335 L
-6610 1335 mt 6618 1346 L
-6618 1346 mt 6638 1373 L
-6638 1373 mt 6645 1383 L
-6645 1383 mt 6658 1401 L
-6658 1401 mt 6676 1428 L
-6676 1428 mt 6680 1435 L
-6680 1435 mt 6694 1456 L
-6694 1456 mt 6710 1484 L
-6710 1484 mt 6715 1491 L
-6715 1491 mt 6726 1511 L
-6726 1511 mt 6741 1539 L
-6741 1539 mt 6750 1555 L
-6750 1555 mt 6755 1566 L
-6755 1566 mt 6768 1594 L
-6768 1594 mt 6781 1621 L
-6781 1621 mt 6785 1631 L
-6785 1631 mt 6792 1649 L
-6792 1649 mt 6803 1676 L
-6803 1676 mt 6812 1704 L
-6812 1704 mt 6819 1726 L
-6819 1726 mt 6821 1731 L
-6821 1731 mt 6829 1759 L
-6829 1759 mt 6837 1786 L
-6837 1786 mt 6844 1814 L
-6844 1814 mt 6849 1841 L
-6849 1841 mt 6854 1868 L
-6819 2024 mt 6820 2034 L
-6820 2034 mt 6820 2061 L
-6820 2061 mt 6819 2074 L
-6819 2074 mt 6819 2089 L
-6819 2089 mt 6818 2116 L
-6818 2116 mt 6815 2144 L
-6815 2144 mt 6812 2171 L
-6812 2171 mt 6809 2199 L
-6809 2199 mt 6804 2226 L
-6804 2226 mt 6799 2254 L
-6799 2254 mt 6794 2281 L
-6794 2281 mt 6787 2309 L
-6787 2309 mt 6785 2319 L
-6785 2319 mt 6780 2336 L
-6780 2336 mt 6772 2364 L
-6772 2364 mt 6764 2391 L
-6764 2391 mt 6755 2419 L
-6755 2419 mt 6750 2435 L
-6750 2435 mt 6746 2446 L
-6746 2446 mt 6736 2474 L
-6736 2474 mt 6725 2502 L
-6725 2502 mt 6715 2526 L
-6715 2526 mt 6714 2529 L
-6714 2529 mt 6702 2557 L
-6702 2557 mt 6689 2584 L
-6689 2584 mt 6680 2604 L
-6680 2604 mt 6676 2612 L
-6676 2612 mt 6662 2639 L
-6662 2639 mt 6648 2667 L
-6648 2667 mt 6645 2672 L
-6645 2672 mt 6633 2694 L
-6633 2694 mt 6617 2722 L
-6617 2722 mt 6610 2733 L
-6610 2733 mt 6601 2749 L
-6601 2749 mt 6584 2777 L
-6584 2777 mt 6575 2791 L
-6575 2791 mt 6567 2804 L
-6567 2804 mt 6550 2832 L
-6550 2832 mt 6540 2847 L
-6540 2847 mt 6533 2859 L
-6533 2859 mt 6516 2887 L
-6516 2887 mt 6506 2905 L
-6506 2905 mt 6500 2914 L
-6500 2914 mt 6484 2942 L
-6484 2942 mt 6471 2969 L
-6471 2969 mt 6471 2969 L
-6471 2969 mt 6458 2997 L
-6458 2997 mt 6448 3024 L
-6448 3024 mt 6440 3052 L
-6440 3052 mt 6436 3070 L
-6436 3070 mt 6434 3079 L
-6434 3079 mt 6429 3107 L
-6429 3107 mt 6425 3134 L
-6425 3134 mt 6423 3162 L
-6423 3162 mt 6420 3189 L
-6420 3189 mt 6418 3217 L
-6418 3217 mt 6415 3244 L
-6415 3244 mt 6413 3272 L
-6413 3272 mt 6410 3299 L
-6410 3299 mt 6407 3327 L
-6407 3327 mt 6403 3354 L
-6403 3354 mt 6401 3369 L
-6401 3369 mt 6399 3382 L
-6399 3382 mt 6393 3409 L
-6393 3409 mt 6387 3437 L
-6387 3437 mt 6379 3464 L
-6379 3464 mt 6368 3492 L
-6368 3492 mt 6366 3497 L
-6366 3497 mt 6355 3519 L
-6355 3519 mt 6339 3547 L
-6339 3547 mt 6331 3559 L
-6331 3559 mt 6320 3575 L
-6320 3575 mt 6297 3602 L
-6297 3602 mt 6296 3602 L
-6296 3602 mt 6264 3630 L
-6264 3630 mt 6261 3631 L
-6261 3631 mt 6227 3642 L
-6227 3642 mt 6192 3630 L
-6192 3630 mt 6192 3630 L
-6192 3630 mt 6163 3602 L
-6163 3602 mt 6157 3596 L
-6157 3596 mt 6138 3575 L
-6138 3575 mt 6122 3557 L
-6122 3557 mt 6112 3547 L
-6112 3547 mt 6087 3525 L
-6087 3525 mt 6080 3519 L
-6080 3519 mt 6052 3500 L
-6052 3500 mt 6035 3492 L
-6035 3492 mt 6017 3483 L
-6017 3483 mt 5983 3469 L
-5983 3469 mt 5970 3464 L
-5970 3464 mt 5948 3455 L
-5948 3455 mt 5913 3439 L
-5913 3439 mt 5909 3437 L
-5909 3437 mt 5878 3419 L
-5878 3419 mt 5862 3409 L
-5862 3409 mt 5843 3395 L
-5843 3395 mt 5829 3382 L
-5829 3382 mt 5808 3355 L
-5808 3355 mt 5808 3354 L
-5808 3354 mt 5794 3327 L
-5794 3327 mt 5783 3299 L
-5783 3299 mt 5773 3279 L
-5773 3279 mt 5770 3272 L
-5770 3272 mt 5757 3244 L
-5757 3244 mt 5744 3217 L
-5744 3217 mt 5738 3203 L
-5738 3203 mt 5733 3189 L
-5733 3189 mt 5722 3162 L
-5722 3162 mt 5711 3134 L
-5711 3134 mt 5704 3118 L
-5704 3118 mt 5699 3107 L
-5699 3107 mt 5684 3079 L
-5684 3079 mt 5669 3055 L
-5669 3055 mt 5667 3052 L
-5667 3052 mt 5645 3024 L
-5645 3024 mt 5634 3012 L
-5634 3012 mt 5617 2997 L
-5617 2997 mt 5599 2982 L
-5599 2982 mt 5582 2969 L
-5582 2969 mt 5564 2957 L
-5564 2957 mt 5543 2942 L
-5543 2942 mt 5529 2930 L
-5529 2930 mt 5512 2914 L
-5512 2914 mt 5494 2896 L
-5494 2896 mt 5485 2887 L
-5485 2887 mt 5459 2863 L
-5459 2863 mt 5455 2859 L
-5455 2859 mt 5425 2833 L
-5425 2833 mt 5423 2832 L
-5423 2832 mt 5392 2804 L
-5392 2804 mt 5390 2802 L
-5390 2802 mt 5366 2777 L
-5366 2777 mt 5355 2759 L
-5355 2759 mt 5349 2749 L
-5349 2749 mt 5340 2722 L
-5340 2722 mt 5338 2694 L
-5338 2694 mt 5340 2667 L
-5340 2667 mt 5345 2639 L
-5345 2639 mt 5351 2612 L
-5351 2612 mt 5355 2594 L
-5355 2594 mt 5357 2584 L
-5357 2584 mt 5358 2557 L
-5358 2557 mt 5355 2529 L
-5355 2529 mt 5355 2529 L
-5355 2529 mt 5347 2502 L
-5347 2502 mt 5334 2474 L
-5334 2474 mt 5320 2450 L
-5320 2450 mt 5317 2446 L
-5317 2446 mt 5294 2419 L
-5294 2419 mt 5285 2410 L
-5285 2410 mt 5264 2391 L
-5264 2391 mt 5250 2380 L
-5250 2380 mt 5229 2364 L
-5229 2364 mt 5215 2355 L
-5215 2355 mt 5189 2336 L
-5189 2336 mt 5181 2331 L
-5181 2331 mt 5153 2309 L
-5153 2309 mt 5146 2302 L
-5146 2302 mt 5123 2281 L
-5123 2281 mt 5111 2271 L
-5111 2271 mt 5093 2254 L
-5093 2254 mt 5076 2240 L
-5076 2240 mt 5059 2226 L
-5059 2226 mt 5041 2212 L
-5041 2212 mt 5024 2199 L
-5024 2199 mt 5006 2185 L
-5006 2185 mt 4987 2171 L
-4987 2171 mt 4971 2160 L
-4971 2160 mt 4944 2144 L
-4944 2144 mt 4936 2139 L
-4936 2139 mt 4902 2119 L
-4902 2119 mt 4897 2116 L
-4897 2116 mt 4867 2094 L
-4867 2094 mt 4858 2089 L
-4858 2089 mt 4832 2067 L
-4832 2067 mt 4825 2061 L
-4825 2061 mt 4797 2038 L
-4797 2038 mt 4793 2034 L
-4793 2034 mt 4765 2006 L
-4765 2006 mt 4762 2004 L
-4762 2004 mt 4742 1979 L
-4742 1979 mt 4727 1955 L
-4727 1955 mt 4725 1951 L
-4725 1951 mt 4717 1924 L
-4717 1924 mt 4709 1896 L
-4709 1896 mt 4702 1869 L
-4702 1869 mt 4693 1841 L
-4693 1841 mt 4692 1838 L
-4692 1838 mt 4682 1814 L
-4682 1814 mt 4668 1786 L
-4668 1786 mt 4657 1769 L
-4657 1769 mt 4646 1759 L
-4646 1759 mt 4623 1742 L
-4623 1742 mt 4595 1731 L
-4595 1731 mt 4588 1729 L
-4588 1729 mt 4553 1721 L
-4553 1721 mt 4518 1715 L
-4518 1715 mt 4483 1708 L
-4483 1708 mt 4464 1704 L
-4464 1704 mt 4448 1700 L
-4448 1700 mt 4413 1687 L
-4413 1687 mt 4392 1676 L
-4392 1676 mt 4379 1667 L
-4379 1667 mt 4364 1649 L
-4364 1649 mt 4347 1621 L
-4347 1621 mt 4344 1614 L
-4344 1614 mt 4334 1594 L
-4334 1594 mt 4320 1566 L
-4320 1566 mt 4309 1544 L
-4309 1544 mt 4306 1539 L
-4306 1539 mt 4289 1511 L
-4289 1511 mt 4274 1487 L
-4274 1487 mt 4271 1484 L
-4271 1484 mt 4249 1456 L
-4249 1456 mt 4239 1447 L
-4239 1447 mt 4214 1428 L
-4214 1428 mt 4204 1423 L
-4204 1423 mt 4169 1407 L
-4169 1407 mt 4147 1401 L
-4147 1401 mt 4134 1398 L
-4134 1398 mt 4100 1395 L
-4100 1395 mt 4065 1392 L
-4065 1392 mt 4030 1390 L
-4030 1390 mt 3995 1386 L
-3995 1386 mt 3960 1378 L
-3960 1378 mt 3945 1373 L
-3945 1373 mt 3925 1367 L
-3925 1367 mt 3890 1352 L
-3890 1352 mt 3880 1346 L
-3880 1346 mt 3855 1332 L
-3855 1332 mt 3836 1318 L
-3836 1318 mt 3821 1307 L
-3821 1307 mt 3801 1291 L
-3801 1291 mt 3786 1278 L
-3786 1278 mt 3769 1263 L
-3769 1263 mt 3751 1250 L
-3751 1250 mt 3730 1236 L
-3730 1236 mt 3716 1228 L
-3716 1228 mt 3681 1211 L
-3681 1211 mt 3676 1208 L
-3676 1208 mt 3646 1198 L
-3646 1198 mt 3611 1187 L
-3611 1187 mt 3592 1181 L
-3592 1181 mt 3577 1176 L
-3577 1176 mt 3542 1167 L
-3542 1167 mt 3507 1157 L
-3507 1157 mt 3494 1153 L
-3494 1153 mt 3472 1147 L
-3472 1147 mt 3437 1136 L
-3437 1136 mt 3407 1126 L
-3407 1126 mt 3402 1124 L
-3402 1124 mt 3367 1112 L
-3367 1112 mt 3332 1100 L
-3332 1100 mt 3327 1098 L
-3327 1098 mt 3298 1088 L
-3298 1088 mt 3263 1076 L
-3263 1076 mt 3248 1071 L
-3248 1071 mt 3228 1063 L
-3228 1063 mt 3193 1051 L
-3193 1051 mt 3171 1043 L
-3171 1043 mt 3158 1039 L
-3158 1039 mt 3123 1027 L
-3123 1027 mt 3088 1017 L
-3088 1017 mt 3084 1016 L
-3084 1016 mt 3053 1007 L
-3053 1007 mt 3019 1000 L
-3019 1000 mt 2984 994 L
-2984 994 mt 2949 989 L
-2949 989 mt 2942 988 L
-2942 988 mt 2914 985 L
-2914 985 mt 2879 984 L
-2879 984 mt 2844 984 L
-2844 984 mt 2809 984 L
-2809 984 mt 2774 984 L
-2774 984 mt 2740 985 L
-2740 985 mt 2705 984 L
-2705 984 mt 2670 983 L
-2670 983 mt 2635 980 L
-2635 980 mt 2600 976 L
-2600 976 mt 2565 971 L
-2565 971 mt 2530 967 L
-2530 967 mt 2496 964 L
-2496 964 mt 2467 961 L
-2467 961 mt 2461 960 L
-2461 960 mt 2426 958 L
-2426 958 mt 2391 956 L
-2391 956 mt 2356 958 L
-2356 958 mt 2321 960 L
-2321 960 mt 2316 961 L
-2316 961 mt 2286 964 L
-2286 964 mt 2251 969 L
-2251 969 mt 2217 974 L
-2217 974 mt 2182 979 L
-2182 979 mt 2147 984 L
-2147 984 mt 2120 988 L
-2120 988 mt 2112 989 L
-2112 989 mt 2077 995 L
-2077 995 mt 2042 1002 L
-2042 1002 mt 2007 1009 L
-2007 1009 mt 1977 1016 L
-1977 1016 mt 1972 1017 L
-1972 1017 mt 1938 1026 L
-1938 1026 mt 1903 1036 L
-1903 1036 mt 1883 1043 L
-1883 1043 mt 1868 1049 L
-1868 1049 mt 1833 1063 L
-1833 1063 mt 1819 1071 L
-1819 1071 mt 1798 1081 L
-1798 1081 mt 1771 1098 L
-1771 1098 mt 1763 1103 L
-1763 1103 mt 1731 1126 L
-1731 1126 mt 1728 1128 L
-1728 1128 mt 1696 1153 L
-1696 1153 mt 1694 1156 L
-1694 1156 mt 1664 1181 L
-1664 1181 mt 1659 1186 L
-1659 1186 mt 1636 1208 L
-1636 1208 mt 1624 1223 L
-1624 1223 mt 1613 1236 L
-1613 1236 mt 1598 1263 L
-1598 1263 mt 1591 1291 L
-1591 1291 mt 1591 1318 L
-1591 1318 mt 1596 1346 L
-1596 1346 mt 1602 1373 L
-1602 1373 mt 1608 1401 L
-1608 1401 mt 1610 1428 L
-1610 1428 mt 1607 1456 L
-1607 1456 mt 1596 1484 L
-1596 1484 mt 1589 1494 L
-1589 1494 mt 1577 1511 L
-1577 1511 mt 1554 1536 L
-1554 1536 mt 1551 1539 L
-1551 1539 mt 1521 1566 L
-1521 1566 mt 1519 1569 L
-1519 1569 mt 1496 1594 L
-1496 1594 mt 1484 1621 L
-1484 1621 mt 1484 1621 L
-1484 1621 mt 1481 1649 L
-1481 1649 mt 1484 1676 L
-1484 1676 mt 1484 1681 L
-1484 1681 mt 1486 1704 L
-1486 1704 mt 1490 1731 L
-1490 1731 mt 1494 1759 L
-1494 1759 mt 1500 1786 L
-1500 1786 mt 1505 1814 L
-1505 1814 mt 1507 1841 L
-1507 1841 mt 1507 1869 L
-1507 1869 mt 1506 1896 L
-1506 1896 mt 1507 1924 L
-1507 1924 mt 1511 1951 L
-1511 1951 mt 1517 1979 L
-1517 1979 mt 1519 1991 L
-1519 1991 mt 1522 2006 L
-1522 2006 mt 1528 2034 L
-1528 2034 mt 1533 2061 L
-1533 2061 mt 1538 2089 L
-1538 2089 mt 1542 2116 L
-1542 2116 mt 1547 2144 L
-1547 2144 mt 1552 2171 L
-1552 2171 mt 1554 2184 L
-1554 2184 mt 1557 2199 L
-1557 2199 mt 1567 2226 L
-1567 2226 mt 1589 2254 L
-1589 2254 mt 1589 2254 L
-1589 2254 mt 1624 2281 L
-1624 2281 mt 1624 2281 L
-1624 2281 mt 1659 2302 L
-1659 2302 mt 1669 2309 L
-1669 2309 mt 1694 2323 L
-1694 2323 mt 1717 2336 L
-1717 2336 mt 1728 2343 L
-1728 2343 mt 1763 2364 L
-1763 2364 mt 1763 2364 L
-1763 2364 mt 1798 2387 L
-1798 2387 mt 1804 2391 L
-1804 2391 mt 1833 2418 L
-1833 2418 mt 1834 2419 L
-1834 2419 mt 1853 2446 L
-1853 2446 mt 1866 2474 L
-1866 2474 mt 1868 2483 L
-1868 2483 mt 1874 2502 L
-1874 2502 mt 1883 2529 L
-1883 2529 mt 1897 2557 L
-1897 2557 mt 1903 2563 L
-1903 2563 mt 1928 2584 L
-1928 2584 mt 1938 2589 L
-1938 2589 mt 1972 2606 L
-1972 2606 mt 1983 2612 L
-1983 2612 mt 2007 2621 L
-2007 2621 mt 2042 2639 L
-2042 2639 mt 2042 2639 L
-2042 2639 mt 2077 2665 L
-2077 2665 mt 2079 2667 L
-2079 2667 mt 2106 2694 L
-2106 2694 mt 2112 2700 L
-2112 2700 mt 2133 2722 L
-2133 2722 mt 2147 2734 L
-2147 2734 mt 2162 2749 L
-2162 2749 mt 2182 2768 L
-2182 2768 mt 2191 2777 L
-2191 2777 mt 2217 2803 L
-2217 2803 mt 2218 2804 L
-2218 2804 mt 2242 2832 L
-2242 2832 mt 2251 2844 L
-2251 2844 mt 2263 2859 L
-2263 2859 mt 2279 2887 L
-2279 2887 mt 2286 2907 L
-2286 2907 mt 2289 2914 L
-2289 2914 mt 2287 2942 L
-2287 2942 mt 2286 2943 L
-2286 2943 mt 2270 2969 L
-2270 2969 mt 2251 2993 L
-2251 2993 mt 2247 2997 L
-2247 2997 mt 2223 3024 L
-2223 3024 mt 2217 3032 L
-2217 3032 mt 2199 3052 L
-2199 3052 mt 2182 3078 L
-2182 3078 mt 2181 3079 L
-2181 3079 mt 2175 3107 L
-2175 3107 mt 2181 3134 L
-2181 3134 mt 2182 3136 L
-2182 3136 mt 2198 3162 L
-2198 3162 mt 2217 3185 L
-2217 3185 mt 2220 3189 L
-2220 3189 mt 2246 3217 L
-2246 3217 mt 2251 3223 L
-2251 3223 mt 2273 3244 L
-2273 3244 mt 2286 3256 L
-2286 3256 mt 2304 3272 L
-2304 3272 mt 2321 3287 L
-2321 3287 mt 2336 3299 L
-2336 3299 mt 2356 3316 L
-2356 3316 mt 2369 3327 L
-2369 3327 mt 2391 3346 L
-2391 3346 mt 2401 3354 L
-2401 3354 mt 2426 3375 L
-2426 3375 mt 2435 3382 L
-2435 3382 mt 2461 3402 L
-2461 3402 mt 2470 3409 L
-2470 3409 mt 2496 3430 L
-2496 3430 mt 2504 3437 L
-2504 3437 mt 2530 3463 L
-2530 3463 mt 2532 3464 L
-2532 3464 mt 2554 3492 L
-2554 3492 mt 2565 3512 L
-2565 3512 mt 2569 3519 L
-2569 3519 mt 2580 3547 L
-2580 3547 mt 2591 3575 L
-2591 3575 mt 2600 3595 L
-2600 3595 mt 2604 3602 L
-2604 3602 mt 2617 3630 L
-2617 3630 mt 2623 3657 L
-2623 3657 mt 2616 3685 L
-2616 3685 mt 2600 3699 L
-2600 3699 mt 2584 3712 L
-2584 3712 mt 2565 3722 L
-2565 3722 mt 2530 3738 L
-2530 3738 mt 2528 3740 L
-2528 3740 mt 2496 3753 L
-2496 3753 mt 2463 3767 L
-2463 3767 mt 2461 3768 L
-2461 3768 mt 2426 3783 L
-2426 3783 mt 2400 3795 L
-2400 3795 mt 2391 3799 L
-2391 3799 mt 2356 3816 L
-2356 3816 mt 2344 3822 L
-2344 3822 mt 2321 3835 L
-2321 3835 mt 2294 3850 L
-2294 3850 mt 2286 3854 L
-2286 3854 mt 2251 3874 L
-2251 3874 mt 2246 3877 L
-2246 3877 mt 2217 3894 L
-2217 3894 mt 2195 3905 L
-2195 3905 mt 2182 3913 L
-2182 3913 mt 2150 3932 L
-2150 3932 mt 2147 3935 L
-2147 3935 mt 2119 3960 L
-2119 3960 mt 2112 3970 L
-2112 3970 mt 2101 3987 L
-2101 3987 mt 2093 4015 L
-2093 4015 mt 2092 4042 L
-2092 4042 mt 2098 4070 L
-2098 4070 mt 2109 4097 L
-2109 4097 mt 2112 4102 L
-2112 4102 mt 2127 4125 L
-2127 4125 mt 2147 4150 L
-2147 4150 mt 2149 4152 L
-2149 4152 mt 2175 4180 L
-2175 4180 mt 2182 4187 L
-2182 4187 mt 2204 4207 L
-2204 4207 mt 2217 4221 L
-2217 4221 mt 2231 4235 L
-2231 4235 mt 2251 4258 L
-2251 4258 mt 2255 4262 L
-2255 4262 mt 2278 4290 L
-2278 4290 mt 2286 4300 L
-2286 4300 mt 2301 4317 L
-2301 4317 mt 2321 4338 L
-2321 4338 mt 2327 4345 L
-2327 4345 mt 2356 4369 L
-2356 4369 mt 2360 4372 L
-2360 4372 mt 2391 4394 L
-2391 4394 mt 2400 4400 L
-2400 4400 mt 2426 4414 L
-2426 4414 mt 2451 4427 L
-2451 4427 mt 2461 4432 L
-2461 4432 mt 2496 4450 L
-2496 4450 mt 2505 4455 L
-2505 4455 mt 2530 4467 L
-2530 4467 mt 2560 4482 L
-2560 4482 mt 2565 4485 L
-2565 4485 mt 2600 4502 L
-2600 4502 mt 2618 4510 L
-2618 4510 mt 2635 4517 L
-2635 4517 mt 2670 4530 L
-2670 4530 mt 2694 4537 L
-2694 4537 mt 2705 4541 L
-2705 4541 mt 2740 4547 L
-2740 4547 mt 2774 4551 L
-2774 4551 mt 2809 4554 L
-2809 4554 mt 2844 4558 L
-2844 4558 mt 2875 4565 L
-2875 4565 mt 2879 4567 L
-2879 4567 mt 2913 4592 L
-2913 4592 mt 2900 4620 L
-2900 4620 mt 2879 4635 L
-2879 4635 mt 2860 4648 L
-2860 4648 mt 2844 4654 L
-2844 4654 mt 2809 4664 L
-2809 4664 mt 2774 4672 L
-2774 4672 mt 2763 4675 L
-2763 4675 mt 2740 4681 L
-2740 4681 mt 2705 4691 L
-2705 4691 mt 2674 4703 L
-2674 4703 mt 2670 4704 L
-2670 4704 mt 2635 4715 L
-2635 4715 mt 2600 4727 L
-2600 4727 mt 2590 4730 L
-2590 4730 mt 2565 4737 L
-2565 4737 mt 2530 4747 L
-2530 4747 mt 2496 4756 L
-2496 4756 mt 2487 4758 L
-2487 4758 mt 2461 4763 L
-2461 4763 mt 2426 4770 L
-2426 4770 mt 2391 4776 L
-2391 4776 mt 2356 4781 L
-2356 4781 mt 2321 4785 L
-2321 4785 mt 2320 4785 L
-2320 4785 mt 2286 4788 L
-2286 4788 mt 2251 4790 L
-2251 4790 mt 2217 4790 L
-2217 4790 mt 2182 4790 L
-2182 4790 mt 2147 4789 L
-2147 4789 mt 2112 4786 L
-2112 4786 mt 2104 4785 L
-2104 4785 mt 2077 4782 L
-2077 4782 mt 2042 4777 L
-2042 4777 mt 2007 4771 L
-2007 4771 mt 1972 4764 L
-1972 4764 mt 1948 4758 L
-1948 4758 mt 1938 4755 L
-1938 4755 mt 1903 4745 L
-1903 4745 mt 1868 4733 L
-1868 4733 mt 1859 4730 L
-1859 4730 mt 1833 4720 L
-1833 4720 mt 1798 4704 L
-1798 4704 mt 1796 4703 L
-1796 4703 mt 1763 4685 L
-1763 4685 mt 1748 4675 L
-1748 4675 mt 1728 4662 L
-1728 4662 mt 1711 4648 L
-1711 4648 mt 1694 4630 L
-1694 4630 mt 1685 4620 L
-1685 4620 mt 1665 4592 L
-1665 4592 mt 1659 4580 L
-1659 4580 mt 1651 4565 L
-1651 4565 mt 1640 4537 L
-1640 4537 mt 1630 4510 L
-1630 4510 mt 1624 4487 L
-1624 4487 mt 1622 4482 L
-1622 4482 mt 1614 4455 L
-1614 4455 mt 1604 4427 L
-1604 4427 mt 1601 4400 L
-1601 4400 mt 1603 4372 L
-1603 4372 mt 1600 4345 L
-1600 4345 mt 1590 4317 L
-1590 4317 mt 1589 4315 L
-1589 4315 mt 1576 4290 L
-1576 4290 mt 1558 4262 L
-1558 4262 mt 1554 4257 L
-1554 4257 mt 1543 4235 L
-1543 4235 mt 1534 4207 L
-1534 4207 mt 1528 4180 L
-1528 4180 mt 1527 4152 L
-1527 4152 mt 1531 4125 L
-1531 4125 mt 1540 4097 L
-1540 4097 mt 1554 4070 L
-1554 4070 mt 1554 4070 L
-1554 4070 mt 1575 4042 L
-1575 4042 mt 1589 4027 L
-1589 4027 mt 1604 4015 L
-1604 4015 mt 1624 3998 L
-1624 3998 mt 1641 3987 L
-1641 3987 mt 1659 3976 L
-1659 3976 mt 1694 3961 L
-1694 3961 mt 1696 3960 L
-1696 3960 mt 1728 3947 L
-1728 3947 mt 1759 3932 L
-1759 3932 mt 1763 3930 L
-1763 3930 mt 1798 3910 L
-1798 3910 mt 1808 3905 L
-1808 3905 mt 1833 3887 L
-1833 3887 mt 1848 3877 L
-1848 3877 mt 1868 3857 L
-1868 3857 mt 1876 3850 L
-1876 3850 mt 1890 3822 L
-1890 3822 mt 1892 3795 L
-1892 3795 mt 1887 3767 L
-1887 3767 mt 1877 3740 L
-1877 3740 mt 1868 3723 L
-1868 3723 mt 1862 3712 L
-1862 3712 mt 1848 3685 L
-1848 3685 mt 1836 3657 L
-1836 3657 mt 1833 3648 L
-1833 3648 mt 1827 3630 L
-1827 3630 mt 1819 3602 L
-1819 3602 mt 1812 3575 L
-1812 3575 mt 1805 3547 L
-1805 3547 mt 1798 3521 L
-1798 3521 mt 1798 3519 L
-1798 3519 mt 1788 3492 L
-1788 3492 mt 1778 3464 L
-1778 3464 mt 1765 3437 L
-1765 3437 mt 1763 3433 L
-1763 3433 mt 1750 3409 L
-1750 3409 mt 1732 3382 L
-1732 3382 mt 1728 3376 L
-1728 3376 mt 1711 3354 L
-1711 3354 mt 1694 3334 L
-1694 3334 mt 1686 3327 L
-1686 3327 mt 1659 3302 L
-1659 3302 mt 1655 3299 L
-1655 3299 mt 1624 3278 L
-1624 3278 mt 1614 3272 L
-1614 3272 mt 1589 3259 L
-1589 3259 mt 1555 3244 L
-1555 3244 mt 1554 3244 L
-1554 3244 mt 1519 3234 L
-1519 3234 mt 1484 3224 L
-1484 3224 mt 1452 3217 L
-1452 3217 mt 1449 3216 L
-1449 3216 mt 1415 3210 L
-1415 3210 mt 1380 3203 L
-1380 3203 mt 1345 3194 L
-1345 3194 mt 1326 3189 L
-1326 3189 mt 1310 3185 L
-1310 3185 mt 1275 3175 L
-1275 3175 mt 1240 3165 L
-1240 3165 mt 1229 3162 L
-1229 3162 mt 1205 3155 L
-1205 3155 mt 1170 3142 L
-1170 3142 mt 1152 3134 L
-1152 3134 mt 1136 3128 L
-1136 3128 mt 1101 3112 L
-1101 3112 mt 1090 3107 L
-1090 3107 mt 1066 3095 L
-1066 3095 mt 1036 3079 L
-1036 3079 mt 1031 3076 L
-1031 3076 mt 996 3057 L
- 996 3057 mt 986 3052 L
- 986 3052 mt 961 3038 L
- 961 3038 mt 936 3024 L
- 936 3024 mt 926 3019 L
- 926 3019 mt 892 2999 L
- 892 2999 mt 887 2997 L
- 887 2997 mt 857 2979 L
- 857 2979 mt 842 2969 L
- 842 2969 mt 822 2957 L
- 822 2957 mt 800 2942 L
- 800 2942 mt 787 2932 L
- 787 2932 mt 764 2914 L
- 764 2914 mt 752 2905 L
- 752 2905 mt 731 2887 L
- 731 2887 mt 717 2873 L
- 717 2873 mt 703 2859 L
- 703 2859 mt 682 2837 L
- 682 2837 mt 677 2832 L
- 677 2832 mt 655 2804 L
- 655 2804 mt 647 2794 L
- 647 2794 mt 635 2777 L
- 635 2777 mt 617 2749 L
- 617 2749 mt 613 2741 L
- 613 2741 mt 601 2722 L
- 601 2722 mt 587 2694 L
- 587 2694 mt 578 2673 L
- 578 2673 mt 575 2667 L
- 575 2667 mt 563 2639 L
- 563 2639 mt 553 2612 L
- 553 2612 mt 545 2584 L
- 545 2584 mt 543 2576 L
- 543 2576 mt 537 2557 L
- 537 2557 mt 531 2529 L
- 531 2529 mt 527 2502 L
- 527 2502 mt 523 2474 L
- 523 2474 mt 520 2446 L
- 520 2446 mt 519 2419 L
- 519 2419 mt 518 2391 L
- 518 2391 mt 518 2364 L
- 518 2364 mt 519 2336 L
- 519 2336 mt 521 2309 L
- 521 2309 mt 524 2281 L
- 524 2281 mt 528 2254 L
- 528 2254 mt 533 2226 L
- 533 2226 mt 538 2199 L
- 538 2199 mt 543 2179 L
- 543 2179 mt 545 2171 L
- 545 2171 mt 551 2144 L
- 551 2144 mt 559 2116 L
- 559 2116 mt 566 2089 L
- 566 2089 mt 574 2061 L
- 574 2061 mt 578 2045 L
- 578 2045 mt 581 2034 L
- 581 2034 mt 588 2006 L
- 588 2006 mt 594 1979 L
- 594 1979 mt 600 1951 L
- 600 1951 mt 605 1924 L
- 605 1924 mt 610 1896 L
- 610 1896 mt 613 1879 L
- 613 1879 mt 614 1869 L
- 614 1869 mt 618 1841 L
- 618 1841 mt 621 1814 L
- 621 1814 mt 623 1786 L
- 623 1786 mt 626 1759 L
- 626 1759 mt 628 1731 L
- 628 1731 mt 631 1704 L
- 631 1704 mt 634 1676 L
- 634 1676 mt 637 1649 L
- 637 1649 mt 639 1621 L
- 639 1621 mt 642 1594 L
- 642 1594 mt 644 1566 L
- 644 1566 mt 646 1539 L
- 646 1539 mt 647 1524 L
- 647 1524 mt 648 1511 L
- 648 1511 mt 650 1484 L
- 650 1484 mt 651 1456 L
- 651 1456 mt 651 1428 L
- 651 1428 mt 652 1401 L
- 652 1401 mt 653 1373 L
- 653 1373 mt 653 1346 L
- 653 1346 mt 654 1318 L
- 654 1318 mt 655 1291 L
- 655 1291 mt 657 1263 L
- 657 1263 mt 659 1236 L
- 659 1236 mt 662 1208 L
- 662 1208 mt 665 1181 L
- 665 1181 mt 669 1153 L
- 669 1153 mt 674 1126 L
- 674 1126 mt 679 1098 L
- 679 1098 mt 682 1083 L
- 682 1083 mt 685 1071 L
- 685 1071 mt 691 1043 L
- 691 1043 mt 698 1016 L
- 698 1016 mt 705 988 L
- 705 988 mt 712 961 L
- 712 961 mt 717 943 L
- 717 943 mt 720 933 L
- 720 933 mt 729 906 L
- 729 906 mt 738 878 L
- 738 878 mt 748 851 L
- 748 851 mt 752 842 L
- 752 842 mt 760 823 L
- 760 823 mt 773 796 L
- 773 796 mt 787 769 L
- 787 769 mt 787 768 L
- 787 768 mt 803 741 L
- 803 741 mt 820 713 L
- 820 713 mt 822 711 L
- 822 711 mt 839 686 L
- 839 686 mt 857 661 L
- 857 661 mt 858 658 L
- 858 658 mt 879 631 L
- 879 631 mt 892 614 L
- 892 614 mt 900 603 L
- 900 603 mt 921 576 L
- 921 576 mt 926 569 L
- 926 569 mt 943 548 L
- 943 548 mt 961 527 L
- 961 527 mt 967 521 L
- 967 521 mt 992 493 L
- 992 493 mt 996 489 L
- 996 489 mt 1021 466 L
-1021 466 mt 1031 457 L
-1031 457 mt 1054 438 L
-1054 438 mt 1066 429 L
-1066 429 mt 1092 411 L
-1092 411 mt 1101 405 L
-1101 405 mt 1136 384 L
-1136 384 mt 1137 383 L
-1137 383 mt 1170 365 L
-1170 365 mt 1192 355 L
-1192 355 mt 1205 349 L
-1205 349 mt 1240 336 L
-1240 336 mt 1266 328 L
-1266 328 mt 1275 325 L
-1275 325 mt 1310 316 L
-1310 316 mt 1345 310 L
-1345 310 mt 1380 305 L
-1380 305 mt 1415 301 L
-1415 301 mt 1419 300 L
-1419 300 mt 1449 297 L
-1449 297 mt 1484 294 L
-1484 294 mt 1519 291 L
-1519 291 mt 1554 287 L
-1554 287 mt 1589 283 L
-1589 283 mt 1624 278 L
-1624 278 mt 1658 273 L
-1658 273 mt 1659 273 L
-1659 273 mt 1694 267 L
-1694 267 mt 1728 262 L
-1728 262 mt 1763 256 L
-1763 256 mt 1798 251 L
-1798 251 mt 1833 247 L
-1833 247 mt 1842 245 L
-1842 245 mt 1868 243 L
-1868 243 mt 1903 239 L
-1903 239 mt 1938 237 L
-1938 237 mt 1972 235 L
-1972 235 mt 2007 234 L
-2007 234 mt 2042 233 L
-2042 233 mt 2077 233 L
-2077 233 mt 2112 232 L
-2112 232 mt 2147 230 L
-2147 230 mt 2182 229 L
-2182 229 mt 2217 227 L
-2217 227 mt 2251 224 L
-2251 224 mt 2286 222 L
-2286 222 mt 2321 219 L
-2321 219 mt 2333 218 L
-2333 218 mt 2356 216 L
-2356 216 mt 2391 213 L
-2391 213 mt 2426 211 L
-2426 211 mt 2461 208 L
-2461 208 mt 2496 205 L
-2496 205 mt 2530 203 L
-2530 203 mt 2565 200 L
-2565 200 mt 2600 197 L
-2600 197 mt 2635 194 L
-2635 194 mt 2670 191 L
-2670 191 mt 2677 190 L
-2677 190 mt 2705 188 L
-2705 188 mt 2740 185 L
-2740 185 mt 2774 182 L
-2774 182 mt 2809 179 L
-2809 179 mt 2844 176 L
-2844 176 mt 2879 173 L
-2879 173 mt 2914 171 L
-2914 171 mt 2949 168 L
-2949 168 mt 2984 166 L
-2984 166 mt 3019 164 L
-3019 164 mt 3033 163 L
-3033 163 mt 3053 161 L
-3053 161 mt 3088 159 L
-3088 159 mt 3123 156 L
-3123 156 mt 3158 153 L
-3158 153 mt 3193 150 L
-3193 150 mt 3228 146 L
-3228 146 mt 3263 143 L
-3263 143 mt 3298 138 L
-3298 138 mt 3320 135 L
-3320 135 mt 3332 134 L
-3332 134 mt 3367 129 L
-3367 129 mt 3402 124 L
-3402 124 mt 3437 119 L
-3437 119 mt 3472 114 L
-3472 114 mt 3507 108 L
-3507 108 mt 3510 108 L
-3510 108 mt 3542 103 L
-3542 103 mt 3577 97 L
-3577 97 mt 3611 92 L
-3611 92 mt 3646 86 L
-3646 86 mt 3681 81 L
-3681 81 mt 3683 80 L
-3683 80 mt 3716 75 L
-3716 75 mt 3751 70 L
-3751 70 mt 3786 64 L
-3786 64 mt 3821 59 L
-3821 59 mt 3855 53 L
-3855 53 mt 3860 53 L
-3860 53 mt 3890 48 L
-3890 48 mt 3925 43 L
-3925 43 mt 3960 38 L
-3960 38 mt 3995 33 L
-3995 33 mt 4030 29 L
-4030 29 mt 4056 25 L
-4056 25 mt 4065 24 L
-4065 24 mt 4100 20 L
-4100 20 mt 4134 15 L
-4134 15 mt 4169 11 L
-4169 11 mt 4204 7 L
-4204 7 mt 4239 4 L
-4239 4 mt 4274 1 L
-4274 1 mt 4309 -1 L
-4309 -1 mt 4309 -1 L
-4309 -1 mt 4344 -4 L
-4344 -4 mt 4379 -5 L
-4379 -5 mt 4413 -7 L
-4413 -7 mt 4448 -8 L
-4448 -8 mt 4483 -8 L
-4483 -8 mt 4518 -8 L
-4518 -8 mt 4553 -8 L
-4553 -8 mt 4588 -7 L
-4588 -7 mt 4623 -6 L
-4623 -6 mt 4657 -4 L
-4657 -4 mt 4692 -2 L
-4692 -2 mt 4707 -1 L
-4707 -1 mt 4727 0 L
-4727 0 mt 4762 2 L
-4762 2 mt 4797 6 L
-4797 6 mt 4832 10 L
-4832 10 mt 4867 14 L
-4867 14 mt 4902 20 L
-4902 20 mt 4934 25 L
-4934 25 mt 4936 26 L
-4936 26 mt 4971 32 L
-4971 32 mt 5006 40 L
-5006 40 mt 5041 48 L
-5041 48 mt 5062 53 L
-5062 53 mt 5076 56 L
-5076 56 mt 5111 65 L
-5111 65 mt 5146 76 L
-5146 76 mt 5161 80 L
-5161 80 mt 5181 87 L
-5181 87 mt 5215 99 L
-5215 99 mt 5240 108 L
-5240 108 mt 5250 112 L
-5250 112 mt 5285 126 L
-5285 126 mt 5305 135 L
-5305 135 mt 5320 142 L
-5320 142 mt 5355 159 L
-5355 159 mt 5361 163 L
-5361 163 mt 5390 178 L
-5390 178 mt 5411 190 L
-5411 190 mt 5425 198 L
-5425 198 mt 5456 218 L
-5456 218 mt 5459 220 L
-5459 220 mt 5494 244 L
-5494 244 mt 5497 245 L
-5497 245 mt 5529 269 L
-5529 269 mt 5535 273 L
-5535 273 mt 5564 295 L
-5564 295 mt 5571 300 L
-5571 300 mt 5599 323 L
-5599 323 mt 5605 328 L
-5605 328 mt 5634 352 L
-5634 352 mt 5638 355 L
-5638 355 mt 5669 383 L
-5669 383 mt 5669 383 L
-5669 383 mt 5700 411 L
-5700 411 mt 5704 414 L
-5704 414 mt 5730 438 L
-5730 438 mt 5738 446 L
-5738 446 mt 5759 466 L
-5759 466 mt 5773 480 L
-5773 480 mt 5787 493 L
-5787 493 mt 5808 514 L
-5808 514 mt 5815 521 L
-5815 521 mt 5842 548 L
-5842 548 mt 5843 549 L
-5843 549 mt 5869 576 L
-5869 576 mt 5878 584 L
-5878 584 mt 5896 603 L
-5896 603 mt 5913 620 L
-5913 620 mt 5923 631 L
-5923 631 mt 5948 657 L
-5948 657 mt 5949 658 L
-5949 658 mt 5975 686 L
-5975 686 mt 5983 693 L
-5983 693 mt 6001 713 L
-6001 713 mt 6017 730 L
-6017 730 mt 6027 741 L
-6027 741 mt 6052 768 L
-6052 768 mt 6053 768 L
-6053 768 mt 6078 796 L
-6078 796 mt 6087 805 L
-6087 805 mt 6104 823 L
-6104 823 mt 6122 842 L
-6122 842 mt 6130 851 L
-6130 851 mt 6155 878 L
-6155 878 mt 6157 880 L
-6157 880 mt 6181 906 L
-6181 906 mt 6192 917 L
-6192 917 mt 6206 933 L
-6206 933 mt 6227 955 L
-6227 955 mt 6232 961 L
-6232 961 mt 6257 988 L
-6257 988 mt 6261 993 L
-6261 993 mt 6283 1016 L
-6283 1016 mt 6296 1030 L
-6296 1030 mt 6309 1043 L
-6309 1043 mt 6331 1068 L
-6331 1068 mt 6334 1071 L
-6334 1071 mt 6360 1098 L
-6360 1098 mt 6366 1106 L
-6366 1106 mt 6385 1126 L
-6385 1126 mt 6401 1144 L
-6401 1144 mt 6409 1153 L
-6409 1153 mt 6434 1181 L
-6434 1181 mt 6436 1183 L
-6436 1183 mt 6458 1208 L
-6458 1208 mt 6471 1223 L
-6471 1223 mt 6482 1236 L
-6482 1236 mt 6506 1263 L
-6506 1263 mt 6506 1263 L
-6506 1263 mt 6528 1291 L
-6528 1291 mt 6540 1306 L
-6540 1306 mt 6550 1318 L
-6550 1318 mt 6571 1346 L
-6571 1346 mt 6575 1352 L
-6575 1352 mt 6592 1373 L
-6592 1373 mt 6610 1400 L
-6610 1400 mt 6611 1401 L
-6611 1401 mt 6630 1428 L
-6630 1428 mt 6645 1452 L
-6645 1452 mt 6648 1456 L
-6648 1456 mt 6664 1484 L
-6664 1484 mt 6680 1510 L
-6680 1510 mt 6680 1511 L
-6680 1511 mt 6695 1539 L
-6695 1539 mt 6709 1566 L
-6709 1566 mt 6715 1578 L
-6715 1578 mt 6722 1594 L
-6722 1594 mt 6735 1621 L
-6735 1621 mt 6746 1649 L
-6746 1649 mt 6750 1659 L
-6750 1659 mt 6756 1676 L
-6756 1676 mt 6765 1704 L
-6765 1704 mt 6774 1731 L
-6774 1731 mt 6782 1759 L
-6782 1759 mt 6785 1770 L
-6785 1770 mt 6789 1786 L
-6789 1786 mt 6795 1814 L
-6795 1814 mt 6800 1841 L
-6800 1841 mt 6805 1869 L
-6805 1869 mt 6809 1896 L
-6809 1896 mt 6813 1924 L
-6813 1924 mt 6815 1951 L
-6815 1951 mt 6817 1979 L
-6817 1979 mt 6819 2006 L
-6819 2006 mt 6819 2024 L
-6750 1822 mt 6753 1841 L
-6753 1841 mt 6758 1869 L
-6758 1869 mt 6761 1896 L
-6761 1896 mt 6764 1924 L
-6764 1924 mt 6767 1951 L
-6767 1951 mt 6769 1979 L
-6769 1979 mt 6770 2006 L
-6770 2006 mt 6770 2034 L
-6770 2034 mt 6770 2061 L
-6770 2061 mt 6769 2089 L
-6769 2089 mt 6767 2116 L
-6767 2116 mt 6764 2144 L
-6764 2144 mt 6761 2171 L
-6761 2171 mt 6757 2199 L
-6757 2199 mt 6752 2226 L
-6752 2226 mt 6750 2238 L
-6750 2238 mt 6746 2254 L
-6746 2254 mt 6740 2281 L
-6740 2281 mt 6734 2309 L
-6734 2309 mt 6726 2336 L
-6726 2336 mt 6718 2364 L
-6718 2364 mt 6715 2374 L
-6715 2374 mt 6709 2391 L
-6709 2391 mt 6700 2419 L
-6700 2419 mt 6690 2446 L
-6690 2446 mt 6680 2471 L
-6680 2471 mt 6679 2474 L
-6679 2474 mt 6667 2502 L
-6667 2502 mt 6655 2529 L
-6655 2529 mt 6645 2550 L
-6645 2550 mt 6642 2557 L
-6642 2557 mt 6628 2584 L
-6628 2584 mt 6613 2612 L
-6613 2612 mt 6610 2616 L
-6610 2616 mt 6597 2639 L
-6597 2639 mt 6580 2667 L
-6580 2667 mt 6575 2675 L
-6575 2675 mt 6563 2694 L
-6563 2694 mt 6544 2722 L
-6544 2722 mt 6540 2727 L
-6540 2727 mt 6524 2749 L
-6524 2749 mt 6506 2775 L
-6506 2775 mt 6504 2777 L
-6504 2777 mt 6483 2804 L
-6483 2804 mt 6471 2821 L
-6471 2821 mt 6462 2832 L
-6462 2832 mt 6441 2859 L
-6441 2859 mt 6436 2867 L
-6436 2867 mt 6421 2887 L
-6421 2887 mt 6401 2914 L
-6401 2914 mt 6401 2914 L
-6401 2914 mt 6382 2942 L
-6382 2942 mt 6366 2969 L
-6366 2969 mt 6366 2970 L
-6366 2970 mt 6353 2997 L
-6353 2997 mt 6344 3024 L
-6344 3024 mt 6339 3052 L
-6339 3052 mt 6337 3079 L
-6337 3079 mt 6337 3107 L
-6337 3107 mt 6337 3134 L
-6337 3134 mt 6337 3162 L
-6337 3162 mt 6338 3189 L
-6338 3189 mt 6338 3217 L
-6338 3217 mt 6338 3244 L
-6338 3244 mt 6338 3272 L
-6338 3272 mt 6338 3299 L
-6338 3299 mt 6337 3327 L
-6337 3327 mt 6335 3354 L
-6335 3354 mt 6332 3382 L
-6332 3382 mt 6331 3389 L
-6331 3389 mt 6328 3409 L
-6328 3409 mt 6322 3437 L
-6322 3437 mt 6314 3464 L
-6314 3464 mt 6302 3492 L
-6302 3492 mt 6296 3501 L
-6296 3501 mt 6282 3519 L
-6282 3519 mt 6261 3538 L
-6261 3538 mt 6237 3547 L
-6237 3547 mt 6227 3553 L
-6227 3553 mt 6208 3547 L
-6208 3547 mt 6192 3542 L
-6192 3542 mt 6168 3519 L
-6168 3519 mt 6157 3510 L
-6157 3510 mt 6139 3492 L
-6139 3492 mt 6122 3475 L
-6122 3475 mt 6110 3464 L
-6110 3464 mt 6087 3444 L
-6087 3444 mt 6076 3437 L
-6076 3437 mt 6052 3419 L
-6052 3419 mt 6036 3409 L
-6036 3409 mt 6017 3396 L
-6017 3396 mt 5997 3382 L
-5997 3382 mt 5983 3371 L
-5983 3371 mt 5962 3354 L
-5962 3354 mt 5948 3342 L
-5948 3342 mt 5930 3327 L
-5930 3327 mt 5913 3309 L
-5913 3309 mt 5904 3299 L
-5904 3299 mt 5882 3272 L
-5882 3272 mt 5878 3265 L
-5878 3265 mt 5866 3244 L
-5866 3244 mt 5849 3217 L
-5849 3217 mt 5843 3208 L
-5843 3208 mt 5832 3189 L
-5832 3189 mt 5813 3162 L
-5813 3162 mt 5808 3156 L
-5808 3156 mt 5796 3134 L
-5796 3134 mt 5778 3107 L
-5778 3107 mt 5773 3102 L
-5773 3102 mt 5758 3079 L
-5758 3079 mt 5738 3054 L
-5738 3054 mt 5737 3052 L
-5737 3052 mt 5718 3024 L
-5718 3024 mt 5704 3007 L
-5704 3007 mt 5695 2997 L
-5695 2997 mt 5669 2973 L
-5669 2973 mt 5664 2969 L
-5664 2969 mt 5634 2948 L
-5634 2948 mt 5625 2942 L
-5625 2942 mt 5599 2923 L
-5599 2923 mt 5588 2914 L
-5588 2914 mt 5564 2893 L
-5564 2893 mt 5558 2887 L
-5558 2887 mt 5531 2859 L
-5531 2859 mt 5529 2858 L
-5529 2858 mt 5501 2832 L
-5501 2832 mt 5494 2826 L
-5494 2826 mt 5471 2804 L
-5471 2804 mt 5459 2792 L
-5459 2792 mt 5444 2777 L
-5444 2777 mt 5425 2749 L
-5425 2749 mt 5425 2749 L
-5425 2749 mt 5412 2722 L
-5412 2722 mt 5407 2694 L
-5407 2694 mt 5406 2667 L
-5406 2667 mt 5410 2639 L
-5410 2639 mt 5417 2612 L
-5417 2612 mt 5425 2584 L
-5425 2584 mt 5425 2584 L
-5425 2584 mt 5432 2557 L
-5432 2557 mt 5437 2529 L
-5437 2529 mt 5441 2502 L
-5441 2502 mt 5441 2474 L
-5441 2474 mt 5438 2446 L
-5438 2446 mt 5432 2419 L
-5432 2419 mt 5425 2396 L
-5425 2396 mt 5423 2391 L
-5423 2391 mt 5412 2364 L
-5412 2364 mt 5398 2336 L
-5398 2336 mt 5390 2323 L
-5390 2323 mt 5380 2309 L
-5380 2309 mt 5355 2281 L
-5355 2281 mt 5355 2281 L
-5355 2281 mt 5320 2255 L
-5320 2255 mt 5318 2254 L
-5318 2254 mt 5285 2239 L
-5285 2239 mt 5250 2230 L
-5250 2230 mt 5231 2226 L
-5231 2226 mt 5215 2220 L
-5215 2220 mt 5184 2199 L
-5184 2199 mt 5181 2193 L
-5181 2193 mt 5172 2171 L
-5172 2171 mt 5169 2144 L
-5169 2144 mt 5176 2116 L
-5176 2116 mt 5181 2102 L
-5181 2102 mt 5184 2089 L
-5184 2089 mt 5191 2061 L
-5191 2061 mt 5194 2034 L
-5194 2034 mt 5191 2006 L
-5191 2006 mt 5181 1979 L
-5181 1979 mt 5181 1978 L
-5181 1978 mt 5160 1951 L
-5160 1951 mt 5146 1941 L
-5146 1941 mt 5111 1925 L
-5111 1925 mt 5104 1924 L
-5104 1924 mt 5076 1919 L
-5076 1919 mt 5041 1918 L
-5041 1918 mt 5006 1919 L
-5006 1919 mt 4971 1922 L
-4971 1922 mt 4957 1924 L
-4957 1924 mt 4936 1926 L
-4936 1926 mt 4902 1931 L
-4902 1931 mt 4867 1932 L
-4867 1932 mt 4832 1926 L
-4832 1926 mt 4828 1924 L
-4828 1924 mt 4797 1906 L
-4797 1906 mt 4788 1896 L
-4788 1896 mt 4773 1869 L
-4773 1869 mt 4766 1841 L
-4766 1841 mt 4764 1814 L
-4764 1814 mt 4765 1786 L
-4765 1786 mt 4768 1759 L
-4768 1759 mt 4771 1731 L
-4771 1731 mt 4772 1704 L
-4772 1704 mt 4768 1676 L
-4768 1676 mt 4762 1664 L
-4762 1664 mt 4750 1649 L
-4750 1649 mt 4727 1634 L
-4727 1634 mt 4692 1623 L
-4692 1623 mt 4680 1621 L
-4680 1621 mt 4657 1618 L
-4657 1618 mt 4623 1616 L
-4623 1616 mt 4588 1616 L
-4588 1616 mt 4553 1615 L
-4553 1615 mt 4518 1613 L
-4518 1613 mt 4483 1604 L
-4483 1604 mt 4463 1594 L
-4463 1594 mt 4448 1583 L
-4448 1583 mt 4435 1566 L
-4435 1566 mt 4419 1539 L
-4419 1539 mt 4413 1526 L
-4413 1526 mt 4407 1511 L
-4407 1511 mt 4395 1484 L
-4395 1484 mt 4381 1456 L
-4381 1456 mt 4379 1451 L
-4379 1451 mt 4365 1428 L
-4365 1428 mt 4344 1407 L
-4344 1407 mt 4337 1401 L
-4337 1401 mt 4309 1383 L
-4309 1383 mt 4290 1373 L
-4290 1373 mt 4274 1366 L
-4274 1366 mt 4239 1353 L
-4239 1353 mt 4220 1346 L
-4220 1346 mt 4204 1340 L
-4204 1340 mt 4169 1328 L
-4169 1328 mt 4140 1318 L
-4140 1318 mt 4134 1316 L
-4134 1316 mt 4100 1305 L
-4100 1305 mt 4065 1294 L
-4065 1294 mt 4055 1291 L
-4055 1291 mt 4030 1279 L
-4030 1279 mt 4002 1263 L
-4002 1263 mt 3995 1258 L
-3995 1258 mt 3968 1236 L
-3968 1236 mt 3960 1228 L
-3960 1228 mt 3939 1208 L
-3939 1208 mt 3925 1196 L
-3925 1196 mt 3906 1181 L
-3906 1181 mt 3890 1169 L
-3890 1169 mt 3864 1153 L
-3864 1153 mt 3855 1149 L
-3855 1149 mt 3821 1133 L
-3821 1133 mt 3801 1126 L
-3801 1126 mt 3786 1121 L
-3786 1121 mt 3751 1110 L
-3751 1110 mt 3716 1101 L
-3716 1101 mt 3706 1098 L
-3706 1098 mt 3681 1092 L
-3681 1092 mt 3646 1081 L
-3646 1081 mt 3614 1071 L
-3614 1071 mt 3611 1070 L
-3611 1070 mt 3577 1056 L
-3577 1056 mt 3545 1043 L
-3545 1043 mt 3542 1042 L
-3542 1042 mt 3507 1026 L
-3507 1026 mt 3486 1016 L
-3486 1016 mt 3472 1008 L
-3472 1008 mt 3437 989 L
-3437 989 mt 3436 988 L
-3436 988 mt 3402 968 L
-3402 968 mt 3390 961 L
-3390 961 mt 3367 945 L
-3367 945 mt 3348 933 L
-3348 933 mt 3332 922 L
-3332 922 mt 3307 906 L
-3307 906 mt 3298 899 L
-3298 899 mt 3263 880 L
-3263 880 mt 3258 878 L
-3258 878 mt 3228 861 L
-3228 861 mt 3209 851 L
-3209 851 mt 3193 836 L
-3193 836 mt 3178 823 L
-3178 823 mt 3158 803 L
-3158 803 mt 3151 796 L
-3151 796 mt 3123 769 L
-3123 769 mt 3123 768 L
-3123 768 mt 3088 741 L
-3088 741 mt 3088 741 L
-3088 741 mt 3053 722 L
-3053 722 mt 3029 713 L
-3029 713 mt 3019 710 L
-3019 710 mt 2984 703 L
-2984 703 mt 2949 700 L
-2949 700 mt 2914 702 L
-2914 702 mt 2879 706 L
-2879 706 mt 2844 711 L
-2844 711 mt 2831 713 L
-2831 713 mt 2809 717 L
-2809 717 mt 2774 722 L
-2774 722 mt 2740 726 L
-2740 726 mt 2705 728 L
-2705 728 mt 2670 730 L
-2670 730 mt 2635 730 L
-2635 730 mt 2600 730 L
-2600 730 mt 2565 728 L
-2565 728 mt 2530 726 L
-2530 726 mt 2496 723 L
-2496 723 mt 2461 723 L
-2461 723 mt 2426 726 L
-2426 726 mt 2391 733 L
-2391 733 mt 2367 741 L
-2367 741 mt 2356 745 L
-2356 745 mt 2321 760 L
-2321 760 mt 2302 768 L
-2302 768 mt 2286 776 L
-2286 776 mt 2251 792 L
-2251 792 mt 2242 796 L
-2242 796 mt 2217 806 L
-2217 806 mt 2182 816 L
-2182 816 mt 2147 823 L
-2147 823 mt 2141 823 L
-2141 823 mt 2112 826 L
-2112 826 mt 2077 827 L
-2077 827 mt 2042 826 L
-2042 826 mt 2007 824 L
-2007 824 mt 1983 823 L
-1983 823 mt 1972 823 L
-1972 823 mt 1938 821 L
-1938 821 mt 1903 823 L
-1903 823 mt 1897 823 L
-1897 823 mt 1868 828 L
-1868 828 mt 1833 838 L
-1833 838 mt 1805 851 L
-1805 851 mt 1798 854 L
-1798 854 mt 1763 878 L
-1763 878 mt 1763 878 L
-1763 878 mt 1735 906 L
-1735 906 mt 1728 911 L
-1728 911 mt 1710 933 L
-1710 933 mt 1694 950 L
-1694 950 mt 1685 961 L
-1685 961 mt 1661 988 L
-1661 988 mt 1659 991 L
-1659 991 mt 1637 1016 L
-1637 1016 mt 1624 1029 L
-1624 1029 mt 1610 1043 L
-1610 1043 mt 1589 1062 L
-1589 1062 mt 1580 1071 L
-1580 1071 mt 1554 1093 L
-1554 1093 mt 1548 1098 L
-1548 1098 mt 1519 1123 L
-1519 1123 mt 1516 1126 L
-1516 1126 mt 1487 1153 L
-1487 1153 mt 1484 1156 L
-1484 1156 mt 1463 1181 L
-1463 1181 mt 1449 1205 L
-1449 1205 mt 1448 1208 L
-1448 1208 mt 1440 1236 L
-1440 1236 mt 1439 1263 L
-1439 1263 mt 1444 1291 L
-1444 1291 mt 1449 1306 L
-1449 1306 mt 1454 1318 L
-1454 1318 mt 1467 1346 L
-1467 1346 mt 1482 1373 L
-1482 1373 mt 1484 1380 L
-1484 1380 mt 1494 1401 L
-1494 1401 mt 1497 1428 L
-1497 1428 mt 1487 1456 L
-1487 1456 mt 1484 1459 L
-1484 1459 mt 1456 1484 L
-1456 1484 mt 1449 1487 L
-1449 1487 mt 1415 1495 L
-1415 1495 mt 1380 1498 L
-1380 1498 mt 1345 1500 L
-1345 1500 mt 1310 1506 L
-1310 1506 mt 1292 1511 L
-1292 1511 mt 1275 1519 L
-1275 1519 mt 1243 1539 L
-1243 1539 mt 1240 1541 L
-1240 1541 mt 1221 1566 L
-1221 1566 mt 1213 1594 L
-1213 1594 mt 1213 1621 L
-1213 1621 mt 1219 1649 L
-1219 1649 mt 1229 1676 L
-1229 1676 mt 1239 1704 L
-1239 1704 mt 1240 1706 L
-1240 1706 mt 1251 1731 L
-1251 1731 mt 1262 1759 L
-1262 1759 mt 1274 1786 L
-1274 1786 mt 1275 1788 L
-1275 1788 mt 1287 1814 L
-1287 1814 mt 1301 1841 L
-1301 1841 mt 1310 1857 L
-1310 1857 mt 1317 1869 L
-1317 1869 mt 1334 1896 L
-1334 1896 mt 1345 1913 L
-1345 1913 mt 1351 1924 L
-1351 1924 mt 1367 1951 L
-1367 1951 mt 1380 1974 L
-1380 1974 mt 1382 1979 L
-1382 1979 mt 1395 2006 L
-1395 2006 mt 1408 2034 L
-1408 2034 mt 1415 2048 L
-1415 2048 mt 1421 2061 L
-1421 2061 mt 1435 2089 L
-1435 2089 mt 1449 2111 L
-1449 2111 mt 1452 2116 L
-1452 2116 mt 1466 2144 L
-1466 2144 mt 1474 2171 L
-1474 2171 mt 1479 2199 L
-1479 2199 mt 1484 2215 L
-1484 2215 mt 1487 2226 L
-1487 2226 mt 1503 2254 L
-1503 2254 mt 1519 2270 L
-1519 2270 mt 1531 2281 L
-1531 2281 mt 1554 2298 L
-1554 2298 mt 1572 2309 L
-1572 2309 mt 1589 2319 L
-1589 2319 mt 1621 2336 L
-1621 2336 mt 1624 2338 L
-1624 2338 mt 1659 2357 L
-1659 2357 mt 1671 2364 L
-1671 2364 mt 1694 2378 L
-1694 2378 mt 1714 2391 L
-1714 2391 mt 1728 2402 L
-1728 2402 mt 1751 2419 L
-1751 2419 mt 1763 2434 L
-1763 2434 mt 1773 2446 L
-1773 2446 mt 1783 2474 L
-1783 2474 mt 1783 2502 L
-1783 2502 mt 1777 2529 L
-1777 2529 mt 1769 2557 L
-1769 2557 mt 1763 2576 L
-1763 2576 mt 1761 2584 L
-1761 2584 mt 1759 2612 L
-1759 2612 mt 1763 2629 L
-1763 2629 mt 1768 2639 L
-1768 2639 mt 1798 2665 L
-1798 2665 mt 1802 2667 L
-1802 2667 mt 1833 2677 L
-1833 2677 mt 1868 2683 L
-1868 2683 mt 1903 2688 L
-1903 2688 mt 1938 2693 L
-1938 2693 mt 1944 2694 L
-1944 2694 mt 1972 2701 L
-1972 2701 mt 2007 2715 L
-2007 2715 mt 2019 2722 L
-2019 2722 mt 2042 2736 L
-2042 2736 mt 2059 2749 L
-2059 2749 mt 2077 2762 L
-2077 2762 mt 2095 2777 L
-2095 2777 mt 2112 2790 L
-2112 2790 mt 2127 2804 L
-2127 2804 mt 2147 2830 L
-2147 2830 mt 2148 2832 L
-2148 2832 mt 2149 2859 L
-2149 2859 mt 2147 2863 L
-2147 2863 mt 2131 2887 L
-2131 2887 mt 2112 2905 L
-2112 2905 mt 2099 2914 L
-2099 2914 mt 2077 2930 L
-2077 2930 mt 2067 2942 L
-2067 2942 mt 2050 2969 L
-2050 2969 mt 2042 2990 L
-2042 2990 mt 2040 2997 L
-2040 2997 mt 2036 3024 L
-2036 3024 mt 2038 3052 L
-2038 3052 mt 2042 3074 L
-2042 3074 mt 2043 3079 L
-2043 3079 mt 2054 3107 L
-2054 3107 mt 2069 3134 L
-2069 3134 mt 2077 3145 L
-2077 3145 mt 2090 3162 L
-2090 3162 mt 2112 3185 L
-2112 3185 mt 2116 3189 L
-2116 3189 mt 2146 3217 L
-2146 3217 mt 2147 3218 L
-2147 3218 mt 2177 3244 L
-2177 3244 mt 2182 3249 L
-2182 3249 mt 2206 3272 L
-2206 3272 mt 2217 3281 L
-2217 3281 mt 2239 3299 L
-2239 3299 mt 2251 3309 L
-2251 3309 mt 2274 3327 L
-2274 3327 mt 2286 3337 L
-2286 3337 mt 2307 3354 L
-2307 3354 mt 2321 3366 L
-2321 3366 mt 2340 3382 L
-2340 3382 mt 2356 3396 L
-2356 3396 mt 2373 3409 L
-2373 3409 mt 2391 3424 L
-2391 3424 mt 2406 3437 L
-2406 3437 mt 2426 3456 L
-2426 3456 mt 2435 3464 L
-2435 3464 mt 2460 3492 L
-2460 3492 mt 2461 3493 L
-2461 3493 mt 2480 3519 L
-2480 3519 mt 2495 3547 L
-2495 3547 mt 2496 3547 L
-2496 3547 mt 2508 3575 L
-2508 3575 mt 2517 3602 L
-2517 3602 mt 2522 3630 L
-2522 3630 mt 2520 3657 L
-2520 3657 mt 2504 3685 L
-2504 3685 mt 2496 3691 L
-2496 3691 mt 2466 3712 L
-2466 3712 mt 2461 3715 L
-2461 3715 mt 2426 3734 L
-2426 3734 mt 2415 3740 L
-2415 3740 mt 2391 3751 L
-2391 3751 mt 2359 3767 L
-2359 3767 mt 2356 3769 L
-2356 3769 mt 2321 3787 L
-2321 3787 mt 2306 3795 L
-2306 3795 mt 2286 3805 L
-2286 3805 mt 2254 3822 L
-2254 3822 mt 2251 3823 L
-2251 3823 mt 2217 3840 L
-2217 3840 mt 2191 3850 L
-2191 3850 mt 2182 3853 L
-2182 3853 mt 2147 3864 L
-2147 3864 mt 2112 3869 L
-2112 3869 mt 2077 3866 L
-2077 3866 mt 2050 3850 L
-2050 3850 mt 2042 3844 L
-2042 3844 mt 2023 3822 L
-2023 3822 mt 2007 3807 L
-2007 3807 mt 1996 3795 L
-1996 3795 mt 1972 3767 L
-1972 3767 mt 1972 3767 L
-1972 3767 mt 1953 3740 L
-1953 3740 mt 1938 3712 L
-1938 3712 mt 1937 3712 L
-1937 3712 mt 1924 3685 L
-1924 3685 mt 1912 3657 L
-1912 3657 mt 1903 3632 L
-1903 3632 mt 1902 3630 L
-1902 3630 mt 1894 3602 L
-1894 3602 mt 1886 3575 L
-1886 3575 mt 1877 3547 L
-1877 3547 mt 1868 3519 L
-1868 3519 mt 1868 3519 L
-1868 3519 mt 1858 3492 L
-1858 3492 mt 1847 3464 L
-1847 3464 mt 1834 3437 L
-1834 3437 mt 1833 3435 L
-1833 3435 mt 1819 3409 L
-1819 3409 mt 1802 3382 L
-1802 3382 mt 1798 3377 L
-1798 3377 mt 1783 3354 L
-1783 3354 mt 1763 3328 L
-1763 3328 mt 1762 3327 L
-1762 3327 mt 1738 3299 L
-1738 3299 mt 1728 3290 L
-1728 3290 mt 1708 3272 L
-1708 3272 mt 1694 3261 L
-1694 3261 mt 1671 3244 L
-1671 3244 mt 1659 3237 L
-1659 3237 mt 1624 3219 L
-1624 3219 mt 1620 3217 L
-1620 3217 mt 1589 3205 L
-1589 3205 mt 1554 3194 L
-1554 3194 mt 1540 3189 L
-1540 3189 mt 1519 3184 L
-1519 3184 mt 1484 3175 L
-1484 3175 mt 1449 3167 L
-1449 3167 mt 1424 3162 L
-1424 3162 mt 1415 3160 L
-1415 3160 mt 1380 3152 L
-1380 3152 mt 1345 3144 L
-1345 3144 mt 1310 3135 L
-1310 3135 mt 1305 3134 L
-1305 3134 mt 1275 3128 L
-1275 3128 mt 1240 3120 L
-1240 3120 mt 1205 3111 L
-1205 3111 mt 1194 3107 L
-1194 3107 mt 1170 3098 L
-1170 3098 mt 1136 3083 L
-1136 3083 mt 1128 3079 L
-1128 3079 mt 1101 3066 L
-1101 3066 mt 1073 3052 L
-1073 3052 mt 1066 3048 L
-1066 3048 mt 1031 3030 L
-1031 3030 mt 1021 3024 L
-1021 3024 mt 996 3011 L
- 996 3011 mt 969 2997 L
- 969 2997 mt 961 2993 L
- 961 2993 mt 926 2974 L
- 926 2974 mt 917 2969 L
- 917 2969 mt 892 2955 L
- 892 2955 mt 868 2942 L
- 868 2942 mt 857 2935 L
- 857 2935 mt 825 2914 L
- 825 2914 mt 822 2912 L
- 822 2912 mt 788 2887 L
- 788 2887 mt 787 2886 L
- 787 2886 mt 756 2859 L
- 756 2859 mt 752 2855 L
- 752 2855 mt 728 2832 L
- 728 2832 mt 717 2819 L
- 717 2819 mt 704 2804 L
- 704 2804 mt 683 2777 L
- 683 2777 mt 682 2775 L
- 682 2775 mt 665 2749 L
- 665 2749 mt 649 2722 L
- 649 2722 mt 647 2719 L
- 647 2719 mt 634 2694 L
- 634 2694 mt 622 2667 L
- 622 2667 mt 613 2642 L
- 613 2642 mt 611 2639 L
- 611 2639 mt 602 2612 L
- 602 2612 mt 594 2584 L
- 594 2584 mt 587 2557 L
- 587 2557 mt 581 2529 L
- 581 2529 mt 578 2505 L
- 578 2505 mt 577 2502 L
- 577 2502 mt 574 2474 L
- 574 2474 mt 572 2446 L
- 572 2446 mt 571 2419 L
- 571 2419 mt 572 2391 L
- 572 2391 mt 573 2364 L
- 573 2364 mt 575 2336 L
- 575 2336 mt 578 2314 L
- 578 2314 mt 578 2309 L
- 578 2309 mt 583 2281 L
- 583 2281 mt 588 2254 L
- 588 2254 mt 594 2226 L
- 594 2226 mt 602 2199 L
- 602 2199 mt 610 2171 L
- 610 2171 mt 613 2162 L
- 613 2162 mt 618 2144 L
- 618 2144 mt 627 2116 L
- 627 2116 mt 636 2089 L
- 636 2089 mt 645 2061 L
- 645 2061 mt 647 2054 L
- 647 2054 mt 654 2034 L
- 654 2034 mt 662 2006 L
- 662 2006 mt 669 1979 L
- 669 1979 mt 675 1951 L
- 675 1951 mt 680 1924 L
- 680 1924 mt 682 1906 L
- 682 1906 mt 684 1896 L
- 684 1896 mt 687 1869 L
- 687 1869 mt 689 1841 L
- 689 1841 mt 691 1814 L
- 691 1814 mt 692 1786 L
- 692 1786 mt 694 1759 L
- 694 1759 mt 695 1731 L
- 695 1731 mt 698 1704 L
- 698 1704 mt 700 1676 L
- 700 1676 mt 703 1649 L
- 703 1649 mt 705 1621 L
- 705 1621 mt 708 1594 L
- 708 1594 mt 710 1566 L
- 710 1566 mt 712 1539 L
- 712 1539 mt 713 1511 L
- 713 1511 mt 713 1484 L
- 713 1484 mt 712 1456 L
- 712 1456 mt 711 1428 L
- 711 1428 mt 710 1401 L
- 710 1401 mt 709 1373 L
- 709 1373 mt 709 1346 L
- 709 1346 mt 708 1318 L
- 708 1318 mt 709 1291 L
- 709 1291 mt 709 1263 L
- 709 1263 mt 710 1236 L
- 710 1236 mt 712 1208 L
- 712 1208 mt 715 1181 L
- 715 1181 mt 717 1161 L
- 717 1161 mt 718 1153 L
- 718 1153 mt 722 1126 L
- 722 1126 mt 727 1098 L
- 727 1098 mt 732 1071 L
- 732 1071 mt 738 1043 L
- 738 1043 mt 744 1016 L
- 744 1016 mt 750 988 L
- 750 988 mt 752 980 L
- 752 980 mt 756 961 L
- 756 961 mt 763 933 L
- 763 933 mt 771 906 L
- 771 906 mt 779 878 L
- 779 878 mt 787 856 L
- 787 856 mt 789 851 L
- 789 851 mt 800 823 L
- 800 823 mt 813 796 L
- 813 796 mt 822 779 L
- 822 779 mt 828 768 L
- 828 768 mt 844 741 L
- 844 741 mt 857 721 L
- 857 721 mt 862 713 L
- 862 713 mt 881 686 L
- 881 686 mt 892 671 L
- 892 671 mt 901 658 L
- 901 658 mt 921 631 L
- 921 631 mt 926 624 L
- 926 624 mt 942 603 L
- 942 603 mt 961 577 L
- 961 577 mt 962 576 L
- 962 576 mt 983 548 L
- 983 548 mt 996 533 L
- 996 533 mt 1007 521 L
-1007 521 mt 1031 495 L
-1031 495 mt 1033 493 L
-1033 493 mt 1063 466 L
-1063 466 mt 1066 464 L
-1066 464 mt 1099 438 L
-1099 438 mt 1101 437 L
-1101 437 mt 1136 414 L
-1136 414 mt 1142 411 L
-1142 411 mt 1170 394 L
-1170 394 mt 1193 383 L
-1193 383 mt 1205 377 L
-1205 377 mt 1240 363 L
-1240 363 mt 1265 355 L
-1265 355 mt 1275 352 L
-1275 352 mt 1310 343 L
-1310 343 mt 1345 338 L
-1345 338 mt 1380 335 L
-1380 335 mt 1415 333 L
-1415 333 mt 1449 332 L
-1449 332 mt 1484 330 L
-1484 330 mt 1519 329 L
-1519 329 mt 1530 328 L
-1530 328 mt 1554 326 L
-1554 326 mt 1589 323 L
-1589 323 mt 1624 319 L
-1624 319 mt 1659 314 L
-1659 314 mt 1694 309 L
-1694 309 mt 1728 303 L
-1728 303 mt 1741 300 L
-1741 300 mt 1763 297 L
-1763 297 mt 1798 291 L
-1798 291 mt 1833 286 L
-1833 286 mt 1868 282 L
-1868 282 mt 1903 279 L
-1903 279 mt 1938 277 L
-1938 277 mt 1972 277 L
-1972 277 mt 2007 277 L
-2007 277 mt 2042 278 L
-2042 278 mt 2077 279 L
-2077 279 mt 2112 280 L
-2112 280 mt 2147 280 L
-2147 280 mt 2182 279 L
-2182 279 mt 2217 277 L
-2217 277 mt 2251 275 L
-2251 275 mt 2275 273 L
-2275 273 mt 2286 272 L
-2286 272 mt 2321 269 L
-2321 269 mt 2356 266 L
-2356 266 mt 2391 263 L
-2391 263 mt 2426 261 L
-2426 261 mt 2461 259 L
-2461 259 mt 2496 257 L
-2496 257 mt 2530 255 L
-2530 255 mt 2565 253 L
-2565 253 mt 2600 251 L
-2600 251 mt 2635 249 L
-2635 249 mt 2670 245 L
-2670 245 mt 2670 245 L
-2670 245 mt 2705 242 L
-2705 242 mt 2740 239 L
-2740 239 mt 2774 236 L
-2774 236 mt 2809 233 L
-2809 233 mt 2844 231 L
-2844 231 mt 2879 229 L
-2879 229 mt 2914 227 L
-2914 227 mt 2949 226 L
-2949 226 mt 2984 224 L
-2984 224 mt 3019 223 L
-3019 223 mt 3053 221 L
-3053 221 mt 3088 220 L
-3088 220 mt 3115 218 L
-3115 218 mt 3123 217 L
-3123 217 mt 3158 215 L
-3158 215 mt 3193 212 L
-3193 212 mt 3228 208 L
-3228 208 mt 3263 204 L
-3263 204 mt 3298 199 L
-3298 199 mt 3332 194 L
-3332 194 mt 3353 190 L
-3353 190 mt 3367 188 L
-3367 188 mt 3402 183 L
-3402 183 mt 3437 177 L
-3437 177 mt 3472 171 L
-3472 171 mt 3507 165 L
-3507 165 mt 3520 163 L
-3520 163 mt 3542 159 L
-3542 159 mt 3577 153 L
-3577 153 mt 3611 147 L
-3611 147 mt 3646 141 L
-3646 141 mt 3680 135 L
-3680 135 mt 3681 135 L
-3681 135 mt 3716 129 L
-3716 129 mt 3751 123 L
-3751 123 mt 3786 117 L
-3786 117 mt 3821 112 L
-3821 112 mt 3842 108 L
-3842 108 mt 3855 106 L
-3855 106 mt 3890 100 L
-3890 100 mt 3925 94 L
-3925 94 mt 3960 88 L
-3960 88 mt 3995 83 L
-3995 83 mt 4011 80 L
-4011 80 mt 4030 77 L
-4030 77 mt 4065 72 L
-4065 72 mt 4100 67 L
-4100 67 mt 4134 62 L
-4134 62 mt 4169 57 L
-4169 57 mt 4199 53 L
-4199 53 mt 4204 52 L
-4204 52 mt 4239 48 L
-4239 48 mt 4274 44 L
-4274 44 mt 4309 40 L
-4309 40 mt 4344 37 L
-4344 37 mt 4379 34 L
-4379 34 mt 4413 32 L
-4413 32 mt 4448 30 L
-4448 30 mt 4483 29 L
-4483 29 mt 4518 28 L
-4518 28 mt 4553 28 L
-4553 28 mt 4588 28 L
-4588 28 mt 4623 29 L
-4623 29 mt 4657 29 L
-4657 29 mt 4692 31 L
-4692 31 mt 4727 33 L
-4727 33 mt 4762 35 L
-4762 35 mt 4797 38 L
-4797 38 mt 4832 41 L
-4832 41 mt 4867 45 L
-4867 45 mt 4902 50 L
-4902 50 mt 4920 53 L
-4920 53 mt 4936 55 L
-4936 55 mt 4971 61 L
-4971 61 mt 5006 68 L
-5006 68 mt 5041 76 L
-5041 76 mt 5060 80 L
-5060 80 mt 5076 84 L
-5076 84 mt 5111 93 L
-5111 93 mt 5146 103 L
-5146 103 mt 5161 108 L
-5161 108 mt 5181 114 L
-5181 114 mt 5215 126 L
-5215 126 mt 5239 135 L
-5239 135 mt 5250 140 L
-5250 140 mt 5285 154 L
-5285 154 mt 5303 163 L
-5303 163 mt 5320 171 L
-5320 171 mt 5355 189 L
-5355 189 mt 5358 190 L
-5358 190 mt 5390 208 L
-5390 208 mt 5405 218 L
-5405 218 mt 5425 230 L
-5425 230 mt 5449 245 L
-5449 245 mt 5459 253 L
-5459 253 mt 5488 273 L
-5488 273 mt 5494 277 L
-5494 277 mt 5525 300 L
-5525 300 mt 5529 304 L
-5529 304 mt 5560 328 L
-5560 328 mt 5564 332 L
-5564 332 mt 5593 355 L
-5593 355 mt 5599 361 L
-5599 361 mt 5625 383 L
-5625 383 mt 5634 391 L
-5634 391 mt 5656 411 L
-5656 411 mt 5669 423 L
-5669 423 mt 5686 438 L
-5686 438 mt 5704 455 L
-5704 455 mt 5715 466 L
-5715 466 mt 5738 488 L
-5738 488 mt 5743 493 L
-5743 493 mt 5771 521 L
-5771 521 mt 5773 523 L
-5773 523 mt 5799 548 L
-5799 548 mt 5808 558 L
-5808 558 mt 5825 576 L
-5825 576 mt 5843 594 L
-5843 594 mt 5852 603 L
-5852 603 mt 5878 630 L
-5878 630 mt 5878 631 L
-5878 631 mt 5904 658 L
-5904 658 mt 5913 667 L
-5913 667 mt 5930 686 L
-5930 686 mt 5948 705 L
-5948 705 mt 5956 713 L
-5956 713 mt 5981 741 L
-5981 741 mt 5983 742 L
-5983 742 mt 6007 768 L
-6007 768 mt 6017 780 L
-6017 780 mt 6032 796 L
-6032 796 mt 6052 818 L
-6052 818 mt 6058 823 L
-6058 823 mt 6083 851 L
-6083 851 mt 6087 855 L
-6087 855 mt 6108 878 L
-6108 878 mt 6122 893 L
-6122 893 mt 6134 906 L
-6134 906 mt 6157 931 L
-6157 931 mt 6159 933 L
-6159 933 mt 6184 961 L
-6184 961 mt 6192 969 L
-6192 969 mt 6209 988 L
-6209 988 mt 6227 1007 L
-6227 1007 mt 6235 1016 L
-6235 1016 mt 6260 1043 L
-6260 1043 mt 6261 1045 L
-6261 1045 mt 6285 1071 L
-6285 1071 mt 6296 1083 L
-6296 1083 mt 6310 1098 L
-6310 1098 mt 6331 1121 L
-6331 1121 mt 6336 1126 L
-6336 1126 mt 6361 1153 L
-6361 1153 mt 6366 1159 L
-6366 1159 mt 6385 1181 L
-6385 1181 mt 6401 1198 L
-6401 1198 mt 6410 1208 L
-6410 1208 mt 6434 1236 L
-6434 1236 mt 6436 1238 L
-6436 1238 mt 6458 1263 L
-6458 1263 mt 6471 1279 L
-6471 1279 mt 6481 1291 L
-6481 1291 mt 6503 1318 L
-6503 1318 mt 6506 1321 L
-6506 1321 mt 6525 1346 L
-6525 1346 mt 6540 1367 L
-6540 1367 mt 6546 1373 L
-6546 1373 mt 6566 1401 L
-6566 1401 mt 6575 1415 L
-6575 1415 mt 6585 1428 L
-6585 1428 mt 6603 1456 L
-6603 1456 mt 6610 1468 L
-6610 1468 mt 6620 1484 L
-6620 1484 mt 6636 1511 L
-6636 1511 mt 6645 1528 L
-6645 1528 mt 6651 1539 L
-6651 1539 mt 6665 1566 L
-6665 1566 mt 6678 1594 L
-6678 1594 mt 6680 1599 L
-6680 1599 mt 6690 1621 L
-6690 1621 mt 6701 1649 L
-6701 1649 mt 6711 1676 L
-6711 1676 mt 6715 1688 L
-6715 1688 mt 6720 1704 L
-6720 1704 mt 6728 1731 L
-6728 1731 mt 6736 1759 L
-6736 1759 mt 6742 1786 L
-6742 1786 mt 6748 1814 L
-6748 1814 mt 6750 1822 L
-1589 4112 mt 1597 4097 L
-1597 4097 mt 1619 4070 L
-1619 4070 mt 1624 4065 L
-1624 4065 mt 1652 4042 L
-1652 4042 mt 1659 4037 L
-1659 4037 mt 1694 4017 L
-1694 4017 mt 1697 4015 L
-1697 4015 mt 1728 3999 L
-1728 3999 mt 1754 3987 L
-1754 3987 mt 1763 3983 L
-1763 3983 mt 1798 3966 L
-1798 3966 mt 1813 3960 L
-1813 3960 mt 1833 3950 L
-1833 3950 mt 1868 3935 L
-1868 3935 mt 1878 3932 L
-1878 3932 mt 1903 3923 L
-1903 3923 mt 1938 3915 L
-1938 3915 mt 1972 3914 L
-1972 3914 mt 2006 3932 L
-2006 3932 mt 2007 3934 L
-2007 3934 mt 2016 3960 L
-2016 3960 mt 2016 3987 L
-2016 3987 mt 2013 4015 L
-2013 4015 mt 2013 4042 L
-2013 4042 mt 2016 4070 L
-2016 4070 mt 2021 4097 L
-2021 4097 mt 2030 4125 L
-2030 4125 mt 2042 4152 L
-2042 4152 mt 2042 4153 L
-2042 4153 mt 2058 4180 L
-2058 4180 mt 2077 4207 L
-2077 4207 mt 2077 4208 L
-2077 4208 mt 2099 4235 L
-2099 4235 mt 2112 4251 L
-2112 4251 mt 2122 4262 L
-2122 4262 mt 2146 4290 L
-2146 4290 mt 2147 4291 L
-2147 4291 mt 2171 4317 L
-2171 4317 mt 2182 4329 L
-2182 4329 mt 2198 4345 L
-2198 4345 mt 2217 4363 L
-2217 4363 mt 2228 4372 L
-2228 4372 mt 2251 4388 L
-2251 4388 mt 2269 4400 L
-2269 4400 mt 2286 4409 L
-2286 4409 mt 2321 4427 L
-2321 4427 mt 2323 4427 L
-2323 4427 mt 2356 4442 L
-2356 4442 mt 2388 4455 L
-2388 4455 mt 2391 4456 L
-2391 4456 mt 2426 4469 L
-2426 4469 mt 2457 4482 L
-2457 4482 mt 2461 4484 L
-2461 4484 mt 2496 4500 L
-2496 4500 mt 2514 4510 L
-2514 4510 mt 2530 4519 L
-2530 4519 mt 2565 4537 L
-2565 4537 mt 2565 4537 L
-2565 4537 mt 2600 4557 L
-2600 4557 mt 2615 4565 L
-2615 4565 mt 2635 4580 L
-2635 4580 mt 2653 4592 L
-2653 4592 mt 2657 4620 L
-2657 4620 mt 2635 4643 L
-2635 4643 mt 2630 4648 L
-2630 4648 mt 2600 4664 L
-2600 4664 mt 2579 4675 L
-2579 4675 mt 2565 4681 L
-2565 4681 mt 2530 4694 L
-2530 4694 mt 2508 4703 L
-2508 4703 mt 2496 4707 L
-2496 4707 mt 2461 4717 L
-2461 4717 mt 2426 4727 L
-2426 4727 mt 2412 4730 L
-2412 4730 mt 2391 4735 L
-2391 4735 mt 2356 4741 L
-2356 4741 mt 2321 4747 L
-2321 4747 mt 2286 4751 L
-2286 4751 mt 2251 4754 L
-2251 4754 mt 2217 4756 L
-2217 4756 mt 2182 4757 L
-2182 4757 mt 2147 4756 L
-2147 4756 mt 2112 4754 L
-2112 4754 mt 2077 4751 L
-2077 4751 mt 2042 4746 L
-2042 4746 mt 2007 4741 L
-2007 4741 mt 1972 4733 L
-1972 4733 mt 1959 4730 L
-1959 4730 mt 1938 4725 L
-1938 4725 mt 1903 4715 L
-1903 4715 mt 1868 4703 L
-1868 4703 mt 1866 4703 L
-1866 4703 mt 1833 4689 L
-1833 4689 mt 1802 4675 L
-1802 4675 mt 1798 4673 L
-1798 4673 mt 1763 4653 L
-1763 4653 mt 1755 4648 L
-1755 4648 mt 1728 4627 L
-1728 4627 mt 1721 4620 L
-1721 4620 mt 1701 4592 L
-1701 4592 mt 1694 4576 L
-1694 4576 mt 1688 4565 L
-1688 4565 mt 1679 4537 L
-1679 4537 mt 1672 4510 L
-1672 4510 mt 1671 4482 L
-1671 4482 mt 1674 4455 L
-1674 4455 mt 1680 4427 L
-1680 4427 mt 1691 4400 L
-1691 4400 mt 1694 4392 L
-1694 4392 mt 1703 4372 L
-1703 4372 mt 1705 4345 L
-1705 4345 mt 1694 4320 L
-1694 4320 mt 1693 4317 L
-1693 4317 mt 1671 4290 L
-1671 4290 mt 1659 4279 L
-1659 4279 mt 1641 4262 L
-1641 4262 mt 1624 4247 L
-1624 4247 mt 1612 4235 L
-1612 4235 mt 1591 4207 L
-1591 4207 mt 1589 4203 L
-1589 4203 mt 1582 4180 L
-1582 4180 mt 1580 4152 L
-1580 4152 mt 1584 4125 L
-1584 4125 mt 1589 4112 L
-6715 1896 mt 6715 1896 L
-6715 1896 mt 6717 1924 L
-6717 1924 mt 6720 1951 L
-6720 1951 mt 6721 1979 L
-6721 1979 mt 6722 2006 L
-6722 2006 mt 6722 2034 L
-6722 2034 mt 6721 2061 L
-6721 2061 mt 6719 2089 L
-6719 2089 mt 6717 2116 L
-6717 2116 mt 6715 2138 L
-6715 2138 mt 6714 2144 L
-6714 2144 mt 6711 2171 L
-6711 2171 mt 6706 2199 L
-6706 2199 mt 6701 2226 L
-6701 2226 mt 6695 2254 L
-6695 2254 mt 6689 2281 L
-6689 2281 mt 6681 2309 L
-6681 2309 mt 6680 2314 L
-6680 2314 mt 6674 2336 L
-6674 2336 mt 6665 2364 L
-6665 2364 mt 6656 2391 L
-6656 2391 mt 6646 2419 L
-6646 2419 mt 6645 2421 L
-6645 2421 mt 6635 2446 L
-6635 2446 mt 6623 2474 L
-6623 2474 mt 6611 2502 L
-6611 2502 mt 6610 2503 L
-6610 2503 mt 6597 2529 L
-6597 2529 mt 6582 2557 L
-6582 2557 mt 6575 2569 L
-6575 2569 mt 6567 2584 L
-6567 2584 mt 6550 2612 L
-6550 2612 mt 6540 2626 L
-6540 2626 mt 6531 2639 L
-6531 2639 mt 6511 2667 L
-6511 2667 mt 6506 2674 L
-6506 2674 mt 6490 2694 L
-6490 2694 mt 6471 2717 L
-6471 2717 mt 6467 2722 L
-6467 2722 mt 6442 2749 L
-6442 2749 mt 6436 2756 L
-6436 2756 mt 6416 2777 L
-6416 2777 mt 6401 2793 L
-6401 2793 mt 6389 2804 L
-6389 2804 mt 6366 2828 L
-6366 2828 mt 6362 2832 L
-6362 2832 mt 6335 2859 L
-6335 2859 mt 6331 2863 L
-6331 2863 mt 6306 2887 L
-6306 2887 mt 6296 2897 L
-6296 2897 mt 6274 2914 L
-6274 2914 mt 6261 2926 L
-6261 2926 mt 6236 2942 L
-6236 2942 mt 6227 2950 L
-6227 2950 mt 6195 2969 L
-6195 2969 mt 6192 2973 L
-6192 2973 mt 6157 2990 L
-6157 2990 mt 6122 2981 L
-6122 2981 mt 6101 2969 L
-6101 2969 mt 6087 2967 L
-6087 2967 mt 6052 2964 L
-6052 2964 mt 6017 2966 L
-6017 2966 mt 6009 2969 L
-6009 2969 mt 5983 2987 L
-5983 2987 mt 5968 2997 L
-5968 2997 mt 5948 3013 L
-5948 3013 mt 5920 3024 L
-5920 3024 mt 5913 3028 L
-5913 3028 mt 5878 3030 L
-5878 3030 mt 5858 3024 L
-5858 3024 mt 5843 3021 L
-5843 3021 mt 5808 3003 L
-5808 3003 mt 5801 2997 L
-5801 2997 mt 5773 2979 L
-5773 2979 mt 5762 2969 L
-5762 2969 mt 5738 2955 L
-5738 2955 mt 5719 2942 L
-5719 2942 mt 5704 2933 L
-5704 2933 mt 5672 2914 L
-5672 2914 mt 5669 2912 L
-5669 2912 mt 5634 2888 L
-5634 2888 mt 5632 2887 L
-5632 2887 mt 5601 2859 L
-5601 2859 mt 5599 2857 L
-5599 2857 mt 5573 2832 L
-5573 2832 mt 5564 2823 L
-5564 2823 mt 5544 2804 L
-5544 2804 mt 5529 2789 L
-5529 2789 mt 5517 2777 L
-5517 2777 mt 5497 2749 L
-5497 2749 mt 5494 2744 L
-5494 2744 mt 5483 2722 L
-5483 2722 mt 5475 2694 L
-5475 2694 mt 5471 2667 L
-5471 2667 mt 5473 2639 L
-5473 2639 mt 5478 2612 L
-5478 2612 mt 5486 2584 L
-5486 2584 mt 5494 2563 L
-5494 2563 mt 5497 2557 L
-5497 2557 mt 5506 2529 L
-5506 2529 mt 5514 2502 L
-5514 2502 mt 5518 2474 L
-5518 2474 mt 5519 2446 L
-5519 2446 mt 5519 2419 L
-5519 2419 mt 5519 2391 L
-5519 2391 mt 5520 2364 L
-5520 2364 mt 5520 2336 L
-5520 2336 mt 5520 2309 L
-5520 2309 mt 5518 2281 L
-5518 2281 mt 5511 2254 L
-5511 2254 mt 5501 2226 L
-5501 2226 mt 5494 2209 L
-5494 2209 mt 5489 2199 L
-5489 2199 mt 5476 2171 L
-5476 2171 mt 5465 2144 L
-5465 2144 mt 5459 2129 L
-5459 2129 mt 5454 2116 L
-5454 2116 mt 5444 2089 L
-5444 2089 mt 5434 2061 L
-5434 2061 mt 5425 2035 L
-5425 2035 mt 5424 2034 L
-5424 2034 mt 5409 2006 L
-5409 2006 mt 5393 1979 L
-5393 1979 mt 5390 1974 L
-5390 1974 mt 5373 1951 L
-5373 1951 mt 5355 1930 L
-5355 1930 mt 5350 1924 L
-5350 1924 mt 5320 1896 L
-5320 1896 mt 5320 1896 L
-5320 1896 mt 5285 1872 L
-5285 1872 mt 5279 1869 L
-5279 1869 mt 5250 1852 L
-5250 1852 mt 5227 1841 L
-5227 1841 mt 5215 1836 L
-5215 1836 mt 5181 1827 L
-5181 1827 mt 5146 1823 L
-5146 1823 mt 5111 1823 L
-5111 1823 mt 5076 1826 L
-5076 1826 mt 5041 1832 L
-5041 1832 mt 5006 1839 L
-5006 1839 mt 4995 1841 L
-4995 1841 mt 4971 1847 L
-4971 1847 mt 4936 1855 L
-4936 1855 mt 4902 1858 L
-4902 1858 mt 4867 1851 L
-4867 1851 mt 4850 1841 L
-4850 1841 mt 4832 1823 L
-4832 1823 mt 4827 1814 L
-4827 1814 mt 4823 1786 L
-4823 1786 mt 4827 1759 L
-4827 1759 mt 4832 1742 L
-4832 1742 mt 4835 1731 L
-4835 1731 mt 4844 1704 L
-4844 1704 mt 4854 1676 L
-4854 1676 mt 4861 1649 L
-4861 1649 mt 4862 1621 L
-4862 1621 mt 4853 1594 L
-4853 1594 mt 4832 1573 L
-4832 1573 mt 4819 1566 L
-4819 1566 mt 4797 1559 L
-4797 1559 mt 4762 1554 L
-4762 1554 mt 4727 1554 L
-4727 1554 mt 4692 1553 L
-4692 1553 mt 4657 1553 L
-4657 1553 mt 4623 1550 L
-4623 1550 mt 4588 1545 L
-4588 1545 mt 4567 1539 L
-4567 1539 mt 4553 1533 L
-4553 1533 mt 4519 1511 L
-4519 1511 mt 4518 1510 L
-4518 1510 mt 4497 1484 L
-4497 1484 mt 4483 1457 L
-4483 1457 mt 4483 1456 L
-4483 1456 mt 4470 1428 L
-4470 1428 mt 4455 1401 L
-4455 1401 mt 4448 1390 L
-4448 1390 mt 4435 1373 L
-4435 1373 mt 4413 1354 L
-4413 1354 mt 4401 1346 L
-4401 1346 mt 4379 1332 L
-4379 1332 mt 4350 1318 L
-4350 1318 mt 4344 1315 L
-4344 1315 mt 4309 1299 L
-4309 1299 mt 4287 1291 L
-4287 1291 mt 4274 1284 L
-4274 1284 mt 4239 1267 L
-4239 1267 mt 4233 1263 L
-4233 1263 mt 4204 1241 L
-4204 1241 mt 4200 1236 L
-4200 1236 mt 4184 1208 L
-4184 1208 mt 4169 1183 L
-4169 1183 mt 4168 1181 L
-4168 1181 mt 4146 1153 L
-4146 1153 mt 4134 1142 L
-4134 1142 mt 4117 1126 L
-4117 1126 mt 4100 1113 L
-4100 1113 mt 4080 1098 L
-4080 1098 mt 4065 1089 L
-4065 1089 mt 4032 1071 L
-4032 1071 mt 4030 1070 L
-4030 1070 mt 3995 1054 L
-3995 1054 mt 3968 1043 L
-3968 1043 mt 3960 1041 L
-3960 1041 mt 3925 1030 L
-3925 1030 mt 3890 1021 L
-3890 1021 mt 3871 1016 L
-3871 1016 mt 3855 1012 L
-3855 1012 mt 3821 1002 L
-3821 1002 mt 3786 992 L
-3786 992 mt 3774 988 L
-3774 988 mt 3751 980 L
-3751 980 mt 3716 966 L
-3716 966 mt 3704 961 L
-3704 961 mt 3681 949 L
-3681 949 mt 3652 933 L
-3652 933 mt 3646 930 L
-3646 930 mt 3611 906 L
-3611 906 mt 3611 906 L
-3611 906 mt 3577 878 L
-3577 878 mt 3577 878 L
-3577 878 mt 3548 851 L
-3548 851 mt 3542 844 L
-3542 844 mt 3523 823 L
-3523 823 mt 3507 801 L
-3507 801 mt 3503 796 L
-3503 796 mt 3484 768 L
-3484 768 mt 3472 754 L
-3472 754 mt 3460 741 L
-3460 741 mt 3437 718 L
-3437 718 mt 3433 713 L
-3433 713 mt 3402 688 L
-3402 688 mt 3399 686 L
-3399 686 mt 3367 663 L
-3367 663 mt 3360 658 L
-3360 658 mt 3332 643 L
-3332 643 mt 3310 631 L
-3310 631 mt 3298 625 L
-3298 625 mt 3263 611 L
-3263 611 mt 3240 603 L
-3240 603 mt 3228 599 L
-3228 599 mt 3193 589 L
-3193 589 mt 3158 581 L
-3158 581 mt 3137 576 L
-3137 576 mt 3123 573 L
-3123 573 mt 3088 567 L
-3088 567 mt 3053 562 L
-3053 562 mt 3019 559 L
-3019 559 mt 2984 557 L
-2984 557 mt 2949 557 L
-2949 557 mt 2914 558 L
-2914 558 mt 2879 561 L
-2879 561 mt 2844 565 L
-2844 565 mt 2809 570 L
-2809 570 mt 2775 576 L
-2775 576 mt 2774 576 L
-2774 576 mt 2740 583 L
-2740 583 mt 2705 590 L
-2705 590 mt 2670 598 L
-2670 598 mt 2638 603 L
-2638 603 mt 2635 604 L
-2635 604 mt 2600 607 L
-2600 607 mt 2565 608 L
-2565 608 mt 2530 607 L
-2530 607 mt 2496 607 L
-2496 607 mt 2461 610 L
-2461 610 mt 2426 614 L
-2426 614 mt 2391 620 L
-2391 620 mt 2356 626 L
-2356 626 mt 2327 631 L
-2327 631 mt 2321 632 L
-2321 632 mt 2286 638 L
-2286 638 mt 2251 643 L
-2251 643 mt 2217 647 L
-2217 647 mt 2182 650 L
-2182 650 mt 2147 651 L
-2147 651 mt 2112 652 L
-2112 652 mt 2077 652 L
-2077 652 mt 2042 653 L
-2042 653 mt 2007 656 L
-2007 656 mt 1994 658 L
-1994 658 mt 1972 661 L
-1972 661 mt 1938 669 L
-1938 669 mt 1903 678 L
-1903 678 mt 1879 686 L
-1879 686 mt 1868 689 L
-1868 689 mt 1833 699 L
-1833 699 mt 1798 708 L
-1798 708 mt 1777 713 L
-1777 713 mt 1763 717 L
-1763 717 mt 1728 724 L
-1728 724 mt 1694 730 L
-1694 730 mt 1659 737 L
-1659 737 mt 1644 741 L
-1644 741 mt 1624 748 L
-1624 748 mt 1589 767 L
-1589 767 mt 1587 768 L
-1587 768 mt 1560 796 L
-1560 796 mt 1554 806 L
-1554 806 mt 1544 823 L
-1544 823 mt 1532 851 L
-1532 851 mt 1521 878 L
-1521 878 mt 1519 883 L
-1519 883 mt 1510 906 L
-1510 906 mt 1496 933 L
-1496 933 mt 1484 949 L
-1484 949 mt 1476 961 L
-1476 961 mt 1449 987 L
-1449 987 mt 1448 988 L
-1448 988 mt 1415 1016 L
-1415 1016 mt 1415 1016 L
-1415 1016 mt 1380 1043 L
-1380 1043 mt 1379 1043 L
-1379 1043 mt 1346 1071 L
-1346 1071 mt 1345 1073 L
-1345 1073 mt 1327 1098 L
-1327 1098 mt 1318 1126 L
-1318 1126 mt 1315 1153 L
-1315 1153 mt 1316 1181 L
-1316 1181 mt 1318 1208 L
-1318 1208 mt 1320 1236 L
-1320 1236 mt 1323 1263 L
-1323 1263 mt 1327 1291 L
-1327 1291 mt 1330 1318 L
-1330 1318 mt 1328 1346 L
-1328 1346 mt 1311 1373 L
-1311 1373 mt 1310 1374 L
-1310 1374 mt 1275 1395 L
-1275 1395 mt 1260 1401 L
-1260 1401 mt 1240 1408 L
-1240 1408 mt 1205 1422 L
-1205 1422 mt 1191 1428 L
-1191 1428 mt 1170 1439 L
-1170 1439 mt 1145 1456 L
-1145 1456 mt 1136 1463 L
-1136 1463 mt 1116 1484 L
-1116 1484 mt 1101 1504 L
-1101 1504 mt 1097 1511 L
-1097 1511 mt 1085 1539 L
-1085 1539 mt 1079 1566 L
-1079 1566 mt 1077 1594 L
-1077 1594 mt 1077 1621 L
-1077 1621 mt 1080 1649 L
-1080 1649 mt 1084 1676 L
-1084 1676 mt 1090 1704 L
-1090 1704 mt 1097 1731 L
-1097 1731 mt 1101 1745 L
-1101 1745 mt 1105 1759 L
-1105 1759 mt 1115 1786 L
-1115 1786 mt 1126 1814 L
-1126 1814 mt 1136 1836 L
-1136 1836 mt 1138 1841 L
-1138 1841 mt 1152 1869 L
-1152 1869 mt 1168 1896 L
-1168 1896 mt 1170 1900 L
-1170 1900 mt 1186 1924 L
-1186 1924 mt 1205 1951 L
-1205 1951 mt 1205 1952 L
-1205 1952 mt 1225 1979 L
-1225 1979 mt 1240 2002 L
-1240 2002 mt 1243 2006 L
-1243 2006 mt 1260 2034 L
-1260 2034 mt 1275 2060 L
-1275 2060 mt 1276 2061 L
-1276 2061 mt 1291 2089 L
-1291 2089 mt 1309 2116 L
-1309 2116 mt 1310 2118 L
-1310 2118 mt 1328 2144 L
-1328 2144 mt 1345 2165 L
-1345 2165 mt 1349 2171 L
-1349 2171 mt 1369 2199 L
-1369 2199 mt 1380 2211 L
-1380 2211 mt 1389 2226 L
-1389 2226 mt 1409 2254 L
-1409 2254 mt 1415 2259 L
-1415 2259 mt 1435 2281 L
-1435 2281 mt 1449 2293 L
-1449 2293 mt 1471 2309 L
-1471 2309 mt 1484 2318 L
-1484 2318 mt 1513 2336 L
-1513 2336 mt 1519 2341 L
-1519 2341 mt 1554 2362 L
-1554 2362 mt 1557 2364 L
-1557 2364 mt 1589 2384 L
-1589 2384 mt 1603 2391 L
-1603 2391 mt 1624 2406 L
-1624 2406 mt 1644 2419 L
-1644 2419 mt 1659 2432 L
-1659 2432 mt 1675 2446 L
-1675 2446 mt 1691 2474 L
-1691 2474 mt 1688 2502 L
-1688 2502 mt 1678 2529 L
-1678 2529 mt 1668 2557 L
-1668 2557 mt 1659 2581 L
-1659 2581 mt 1657 2584 L
-1657 2584 mt 1648 2612 L
-1648 2612 mt 1642 2639 L
-1642 2639 mt 1642 2667 L
-1642 2667 mt 1651 2694 L
-1651 2694 mt 1659 2705 L
-1659 2705 mt 1673 2722 L
-1673 2722 mt 1694 2739 L
-1694 2739 mt 1711 2749 L
-1711 2749 mt 1728 2759 L
-1728 2759 mt 1763 2775 L
-1763 2775 mt 1768 2777 L
-1768 2777 mt 1798 2790 L
-1798 2790 mt 1828 2804 L
-1828 2804 mt 1833 2807 L
-1833 2807 mt 1868 2827 L
-1868 2827 mt 1876 2832 L
-1876 2832 mt 1903 2854 L
-1903 2854 mt 1908 2859 L
-1908 2859 mt 1924 2887 L
-1924 2887 mt 1930 2914 L
-1930 2914 mt 1932 2942 L
-1932 2942 mt 1935 2969 L
-1935 2969 mt 1938 2981 L
-1938 2981 mt 1940 2997 L
-1940 2997 mt 1946 3024 L
-1946 3024 mt 1952 3052 L
-1952 3052 mt 1960 3079 L
-1960 3079 mt 1972 3107 L
-1972 3107 mt 1972 3108 L
-1972 3108 mt 1987 3134 L
-1987 3134 mt 2005 3162 L
-2005 3162 mt 2007 3164 L
-2007 3164 mt 2029 3189 L
-2029 3189 mt 2042 3202 L
-2042 3202 mt 2057 3217 L
-2057 3217 mt 2077 3235 L
-2077 3235 mt 2087 3244 L
-2087 3244 mt 2112 3267 L
-2112 3267 mt 2118 3272 L
-2118 3272 mt 2147 3296 L
-2147 3296 mt 2151 3299 L
-2151 3299 mt 2182 3322 L
-2182 3322 mt 2188 3327 L
-2188 3327 mt 2217 3347 L
-2217 3347 mt 2226 3354 L
-2226 3354 mt 2251 3375 L
-2251 3375 mt 2260 3382 L
-2260 3382 mt 2286 3404 L
-2286 3404 mt 2292 3409 L
-2292 3409 mt 2321 3434 L
-2321 3434 mt 2325 3437 L
-2325 3437 mt 2356 3464 L
-2356 3464 mt 2357 3464 L
-2357 3464 mt 2385 3492 L
-2385 3492 mt 2391 3499 L
-2391 3499 mt 2407 3519 L
-2407 3519 mt 2424 3547 L
-2424 3547 mt 2426 3550 L
-2426 3550 mt 2436 3575 L
-2436 3575 mt 2443 3602 L
-2443 3602 mt 2445 3630 L
-2445 3630 mt 2437 3657 L
-2437 3657 mt 2426 3670 L
-2426 3670 mt 2414 3685 L
-2414 3685 mt 2391 3701 L
-2391 3701 mt 2374 3712 L
-2374 3712 mt 2356 3722 L
-2356 3722 mt 2323 3740 L
-2323 3740 mt 2321 3740 L
-2321 3740 mt 2286 3758 L
-2286 3758 mt 2265 3767 L
-2265 3767 mt 2251 3773 L
-2251 3773 mt 2217 3787 L
-2217 3787 mt 2186 3795 L
-2186 3795 mt 2182 3796 L
-2182 3796 mt 2147 3799 L
-2147 3799 mt 2124 3795 L
-2124 3795 mt 2112 3792 L
-2112 3792 mt 2077 3775 L
-2077 3775 mt 2067 3767 L
-2067 3767 mt 2042 3747 L
-2042 3747 mt 2034 3740 L
-2034 3740 mt 2011 3712 L
-2011 3712 mt 2007 3705 L
-2007 3705 mt 1996 3685 L
-1996 3685 mt 1986 3657 L
-1986 3657 mt 1978 3630 L
-1978 3630 mt 1972 3607 L
-1972 3607 mt 1971 3602 L
-1971 3602 mt 1963 3575 L
-1963 3575 mt 1953 3547 L
-1953 3547 mt 1942 3519 L
-1942 3519 mt 1938 3510 L
-1938 3510 mt 1929 3492 L
-1929 3492 mt 1914 3464 L
-1914 3464 mt 1903 3443 L
-1903 3443 mt 1899 3437 L
-1899 3437 mt 1883 3409 L
-1883 3409 mt 1868 3386 L
-1868 3386 mt 1865 3382 L
-1865 3382 mt 1847 3354 L
-1847 3354 mt 1833 3333 L
-1833 3333 mt 1829 3327 L
-1829 3327 mt 1810 3299 L
-1810 3299 mt 1798 3285 L
-1798 3285 mt 1786 3272 L
-1786 3272 mt 1763 3252 L
-1763 3252 mt 1754 3244 L
-1754 3244 mt 1728 3226 L
-1728 3226 mt 1715 3217 L
-1715 3217 mt 1694 3204 L
-1694 3204 mt 1667 3189 L
-1667 3189 mt 1659 3185 L
-1659 3185 mt 1624 3171 L
-1624 3171 mt 1598 3162 L
-1598 3162 mt 1589 3159 L
-1589 3159 mt 1554 3149 L
-1554 3149 mt 1519 3139 L
-1519 3139 mt 1503 3134 L
-1503 3134 mt 1484 3129 L
-1484 3129 mt 1449 3119 L
-1449 3119 mt 1415 3111 L
-1415 3111 mt 1396 3107 L
-1396 3107 mt 1380 3103 L
-1380 3103 mt 1345 3095 L
-1345 3095 mt 1310 3088 L
-1310 3088 mt 1275 3082 L
-1275 3082 mt 1258 3079 L
-1258 3079 mt 1240 3077 L
-1240 3077 mt 1205 3068 L
-1205 3068 mt 1170 3054 L
-1170 3054 mt 1165 3052 L
-1165 3052 mt 1136 3038 L
-1136 3038 mt 1109 3024 L
-1109 3024 mt 1101 3020 L
-1101 3020 mt 1066 3001 L
-1066 3001 mt 1059 2997 L
-1059 2997 mt 1031 2982 L
-1031 2982 mt 1004 2969 L
-1004 2969 mt 996 2965 L
- 996 2965 mt 961 2949 L
- 961 2949 mt 947 2942 L
- 947 2942 mt 926 2932 L
- 926 2932 mt 892 2914 L
- 892 2914 mt 892 2914 L
- 892 2914 mt 857 2893 L
- 857 2893 mt 847 2887 L
- 847 2887 mt 822 2869 L
- 822 2869 mt 809 2859 L
- 809 2859 mt 787 2839 L
- 787 2839 mt 779 2832 L
- 779 2832 mt 753 2804 L
- 753 2804 mt 752 2803 L
- 752 2803 mt 730 2777 L
- 730 2777 mt 717 2758 L
- 717 2758 mt 711 2749 L
- 711 2749 mt 694 2722 L
- 694 2722 mt 682 2698 L
- 682 2698 mt 680 2694 L
- 680 2694 mt 667 2667 L
- 667 2667 mt 657 2639 L
- 657 2639 mt 648 2612 L
- 648 2612 mt 647 2609 L
- 647 2609 mt 640 2584 L
- 640 2584 mt 634 2557 L
- 634 2557 mt 629 2529 L
- 629 2529 mt 626 2502 L
- 626 2502 mt 624 2474 L
- 624 2474 mt 623 2446 L
- 623 2446 mt 623 2419 L
- 623 2419 mt 624 2391 L
- 624 2391 mt 627 2364 L
- 627 2364 mt 630 2336 L
- 630 2336 mt 635 2309 L
- 635 2309 mt 641 2281 L
- 641 2281 mt 647 2258 L
- 647 2258 mt 648 2254 L
- 648 2254 mt 657 2226 L
- 657 2226 mt 667 2199 L
- 667 2199 mt 677 2171 L
- 677 2171 mt 682 2159 L
- 682 2159 mt 689 2144 L
- 689 2144 mt 700 2116 L
- 700 2116 mt 712 2089 L
- 712 2089 mt 717 2075 L
- 717 2075 mt 723 2061 L
- 723 2061 mt 734 2034 L
- 734 2034 mt 743 2006 L
- 743 2006 mt 751 1979 L
- 751 1979 mt 752 1976 L
- 752 1976 mt 758 1951 L
- 758 1951 mt 762 1924 L
- 762 1924 mt 765 1896 L
- 765 1896 mt 766 1869 L
- 766 1869 mt 765 1841 L
- 765 1841 mt 765 1814 L
- 765 1814 mt 764 1786 L
- 764 1786 mt 764 1759 L
- 764 1759 mt 765 1731 L
- 765 1731 mt 767 1704 L
- 767 1704 mt 769 1676 L
- 769 1676 mt 773 1649 L
- 773 1649 mt 777 1621 L
- 777 1621 mt 780 1594 L
- 780 1594 mt 783 1566 L
- 783 1566 mt 785 1539 L
- 785 1539 mt 784 1511 L
- 784 1511 mt 782 1484 L
- 782 1484 mt 779 1456 L
- 779 1456 mt 775 1428 L
- 775 1428 mt 771 1401 L
- 771 1401 mt 768 1373 L
- 768 1373 mt 766 1346 L
- 766 1346 mt 764 1318 L
- 764 1318 mt 763 1291 L
- 763 1291 mt 763 1263 L
- 763 1263 mt 763 1236 L
- 763 1236 mt 763 1208 L
- 763 1208 mt 764 1181 L
- 764 1181 mt 767 1153 L
- 767 1153 mt 771 1126 L
- 771 1126 mt 776 1098 L
- 776 1098 mt 781 1071 L
- 781 1071 mt 786 1043 L
- 786 1043 mt 787 1040 L
- 787 1040 mt 792 1016 L
- 792 1016 mt 797 988 L
- 797 988 mt 801 961 L
- 801 961 mt 806 933 L
- 806 933 mt 812 906 L
- 812 906 mt 819 878 L
- 819 878 mt 822 870 L
- 822 870 mt 828 851 L
- 828 851 mt 840 823 L
- 840 823 mt 853 796 L
- 853 796 mt 857 789 L
- 857 789 mt 868 768 L
- 868 768 mt 885 741 L
- 885 741 mt 892 730 L
- 892 730 mt 903 713 L
- 903 713 mt 923 686 L
- 923 686 mt 926 682 L
- 926 682 mt 945 658 L
- 945 658 mt 961 635 L
- 961 635 mt 965 631 L
- 965 631 mt 984 603 L
- 984 603 mt 996 585 L
- 996 585 mt 1002 576 L
-1002 576 mt 1023 548 L
-1023 548 mt 1031 538 L
-1031 538 mt 1046 521 L
-1046 521 mt 1066 500 L
-1066 500 mt 1073 493 L
-1073 493 mt 1101 470 L
-1101 470 mt 1107 466 L
-1107 466 mt 1136 445 L
-1136 445 mt 1147 438 L
-1147 438 mt 1170 424 L
-1170 424 mt 1195 411 L
-1195 411 mt 1205 405 L
-1205 405 mt 1240 390 L
-1240 390 mt 1261 383 L
-1261 383 mt 1275 378 L
-1275 378 mt 1310 370 L
-1310 370 mt 1345 365 L
-1345 365 mt 1380 365 L
-1380 365 mt 1415 366 L
-1415 366 mt 1449 368 L
-1449 368 mt 1484 369 L
-1484 369 mt 1519 370 L
-1519 370 mt 1554 369 L
-1554 369 mt 1589 367 L
-1589 367 mt 1624 363 L
-1624 363 mt 1659 359 L
-1659 359 mt 1677 355 L
-1677 355 mt 1694 353 L
-1694 353 mt 1728 346 L
-1728 346 mt 1763 339 L
-1763 339 mt 1798 332 L
-1798 332 mt 1820 328 L
-1820 328 mt 1833 326 L
-1833 326 mt 1868 321 L
-1868 321 mt 1903 318 L
-1903 318 mt 1938 317 L
-1938 317 mt 1972 319 L
-1972 319 mt 2007 322 L
-2007 322 mt 2042 326 L
-2042 326 mt 2065 328 L
-2065 328 mt 2077 329 L
-2077 329 mt 2112 332 L
-2112 332 mt 2147 334 L
-2147 334 mt 2182 334 L
-2182 334 mt 2217 333 L
-2217 333 mt 2251 330 L
-2251 330 mt 2271 328 L
-2271 328 mt 2286 327 L
-2286 327 mt 2321 323 L
-2321 323 mt 2356 319 L
-2356 319 mt 2391 315 L
-2391 315 mt 2426 312 L
-2426 312 mt 2461 311 L
-2461 311 mt 2496 310 L
-2496 310 mt 2530 310 L
-2530 310 mt 2565 311 L
-2565 311 mt 2600 310 L
-2600 310 mt 2635 308 L
-2635 308 mt 2670 305 L
-2670 305 mt 2699 300 L
-2699 300 mt 2705 300 L
-2705 300 mt 2740 295 L
-2740 295 mt 2774 291 L
-2774 291 mt 2809 288 L
-2809 288 mt 2844 286 L
-2844 286 mt 2879 286 L
-2879 286 mt 2914 285 L
-2914 285 mt 2949 286 L
-2949 286 mt 2984 286 L
-2984 286 mt 3019 286 L
-3019 286 mt 3053 285 L
-3053 285 mt 3088 285 L
-3088 285 mt 3123 283 L
-3123 283 mt 3158 281 L
-3158 281 mt 3193 278 L
-3193 278 mt 3228 274 L
-3228 274 mt 3236 273 L
-3236 273 mt 3263 269 L
-3263 269 mt 3298 263 L
-3298 263 mt 3332 256 L
-3332 256 mt 3367 249 L
-3367 249 mt 3386 245 L
-3386 245 mt 3402 242 L
-3402 242 mt 3437 235 L
-3437 235 mt 3472 229 L
-3472 229 mt 3507 222 L
-3507 222 mt 3531 218 L
-3531 218 mt 3542 216 L
-3542 216 mt 3577 210 L
-3577 210 mt 3611 203 L
-3611 203 mt 3646 197 L
-3646 197 mt 3681 190 L
-3681 190 mt 3681 190 L
-3681 190 mt 3716 184 L
-3716 184 mt 3751 178 L
-3751 178 mt 3786 171 L
-3786 171 mt 3821 165 L
-3821 165 mt 3830 163 L
-3830 163 mt 3855 158 L
-3855 158 mt 3890 152 L
-3890 152 mt 3925 145 L
-3925 145 mt 3960 139 L
-3960 139 mt 3979 135 L
-3979 135 mt 3995 133 L
-3995 133 mt 4030 126 L
-4030 126 mt 4065 120 L
-4065 120 mt 4100 114 L
-4100 114 mt 4134 108 L
-4134 108 mt 4136 108 L
-4136 108 mt 4169 102 L
-4169 102 mt 4204 97 L
-4204 97 mt 4239 92 L
-4239 92 mt 4274 87 L
-4274 87 mt 4309 83 L
-4309 83 mt 4328 80 L
-4328 80 mt 4344 79 L
-4344 79 mt 4379 75 L
-4379 75 mt 4413 72 L
-4413 72 mt 4448 69 L
-4448 69 mt 4483 67 L
-4483 67 mt 4518 66 L
-4518 66 mt 4553 64 L
-4553 64 mt 4588 64 L
-4588 64 mt 4623 63 L
-4623 63 mt 4657 64 L
-4657 64 mt 4692 64 L
-4692 64 mt 4727 65 L
-4727 65 mt 4762 67 L
-4762 67 mt 4797 69 L
-4797 69 mt 4832 72 L
-4832 72 mt 4867 75 L
-4867 75 mt 4902 79 L
-4902 79 mt 4908 80 L
-4908 80 mt 4936 84 L
-4936 84 mt 4971 90 L
-4971 90 mt 5006 96 L
-5006 96 mt 5041 103 L
-5041 103 mt 5062 108 L
-5062 108 mt 5076 111 L
-5076 111 mt 5111 120 L
-5111 120 mt 5146 130 L
-5146 130 mt 5164 135 L
-5164 135 mt 5181 141 L
-5181 141 mt 5215 153 L
-5215 153 mt 5240 163 L
-5240 163 mt 5250 167 L
-5250 167 mt 5285 182 L
-5285 182 mt 5302 190 L
-5302 190 mt 5320 199 L
-5320 199 mt 5355 218 L
-5355 218 mt 5355 218 L
-5355 218 mt 5390 239 L
-5390 239 mt 5401 245 L
-5401 245 mt 5425 261 L
-5425 261 mt 5442 273 L
-5442 273 mt 5459 285 L
-5459 285 mt 5480 300 L
-5480 300 mt 5494 311 L
-5494 311 mt 5516 328 L
-5516 328 mt 5529 339 L
-5529 339 mt 5549 355 L
-5549 355 mt 5564 368 L
-5564 368 mt 5581 383 L
-5581 383 mt 5599 399 L
-5599 399 mt 5612 411 L
-5612 411 mt 5634 430 L
-5634 430 mt 5642 438 L
-5642 438 mt 5669 463 L
-5669 463 mt 5672 466 L
-5672 466 mt 5700 493 L
-5700 493 mt 5704 496 L
-5704 496 mt 5728 521 L
-5728 521 mt 5738 531 L
-5738 531 mt 5755 548 L
-5755 548 mt 5773 567 L
-5773 567 mt 5782 576 L
-5782 576 mt 5808 603 L
-5808 603 mt 5809 603 L
-5809 603 mt 5834 631 L
-5834 631 mt 5843 640 L
-5843 640 mt 5860 658 L
-5860 658 mt 5878 677 L
-5878 677 mt 5886 686 L
-5886 686 mt 5911 713 L
-5911 713 mt 5913 715 L
-5913 715 mt 5936 741 L
-5936 741 mt 5948 753 L
-5948 753 mt 5961 768 L
-5961 768 mt 5983 791 L
-5983 791 mt 5987 796 L
-5987 796 mt 6012 823 L
-6012 823 mt 6017 829 L
-6017 829 mt 6037 851 L
-6037 851 mt 6052 868 L
-6052 868 mt 6062 878 L
-6062 878 mt 6087 906 L
-6087 906 mt 6087 906 L
-6087 906 mt 6112 933 L
-6112 933 mt 6122 944 L
-6122 944 mt 6137 961 L
-6137 961 mt 6157 983 L
-6157 983 mt 6162 988 L
-6162 988 mt 6187 1016 L
-6187 1016 mt 6192 1021 L
-6192 1021 mt 6212 1043 L
-6212 1043 mt 6227 1059 L
-6227 1059 mt 6237 1071 L
-6237 1071 mt 6261 1098 L
-6261 1098 mt 6262 1098 L
-6262 1098 mt 6287 1126 L
-6287 1126 mt 6296 1136 L
-6296 1136 mt 6312 1153 L
-6312 1153 mt 6331 1174 L
-6331 1174 mt 6337 1181 L
-6337 1181 mt 6362 1208 L
-6362 1208 mt 6366 1213 L
-6366 1213 mt 6386 1236 L
-6386 1236 mt 6401 1253 L
-6401 1253 mt 6410 1263 L
-6410 1263 mt 6434 1291 L
-6434 1291 mt 6436 1293 L
-6436 1293 mt 6457 1318 L
-6457 1318 mt 6471 1336 L
-6471 1336 mt 6479 1346 L
-6479 1346 mt 6500 1373 L
-6500 1373 mt 6506 1380 L
-6506 1380 mt 6521 1401 L
-6521 1401 mt 6540 1428 L
-6540 1428 mt 6540 1429 L
-6540 1429 mt 6559 1456 L
-6559 1456 mt 6575 1483 L
-6575 1483 mt 6576 1484 L
-6576 1484 mt 6592 1511 L
-6592 1511 mt 6607 1539 L
-6607 1539 mt 6610 1544 L
-6610 1544 mt 6621 1566 L
-6621 1566 mt 6634 1594 L
-6634 1594 mt 6645 1618 L
-6645 1618 mt 6646 1621 L
-6646 1621 mt 6657 1649 L
-6657 1649 mt 6667 1676 L
-6667 1676 mt 6676 1704 L
-6676 1704 mt 6680 1717 L
-6680 1717 mt 6684 1731 L
-6684 1731 mt 6691 1759 L
-6691 1759 mt 6697 1786 L
-6697 1786 mt 6703 1814 L
-6703 1814 mt 6708 1841 L
-6708 1841 mt 6711 1869 L
-6711 1869 mt 6715 1896 L
-6227 3163 mt 6229 3189 L
-6229 3189 mt 6233 3217 L
-6233 3217 mt 6236 3244 L
-6236 3244 mt 6240 3272 L
-6240 3272 mt 6244 3299 L
-6244 3299 mt 6247 3327 L
-6247 3327 mt 6247 3354 L
-6247 3354 mt 6246 3382 L
-6246 3382 mt 6241 3409 L
-6241 3409 mt 6232 3437 L
-6232 3437 mt 6227 3444 L
-6227 3444 mt 6221 3437 L
-6221 3437 mt 6204 3409 L
-6204 3409 mt 6192 3387 L
-6192 3387 mt 6189 3382 L
-6189 3382 mt 6178 3354 L
-6178 3354 mt 6167 3327 L
-6167 3327 mt 6157 3302 L
-6157 3302 mt 6156 3299 L
-6156 3299 mt 6149 3272 L
-6149 3272 mt 6144 3244 L
-6144 3244 mt 6141 3217 L
-6141 3217 mt 6140 3189 L
-6140 3189 mt 6142 3162 L
-6142 3162 mt 6148 3134 L
-6148 3134 mt 6157 3112 L
-6157 3112 mt 6192 3112 L
-6192 3112 mt 6207 3134 L
-6207 3134 mt 6226 3162 L
-6226 3162 mt 6227 3163 L
-1694 4092 mt 1714 4070 L
-1714 4070 mt 1728 4059 L
-1728 4059 mt 1753 4042 L
-1753 4042 mt 1763 4037 L
-1763 4037 mt 1798 4017 L
-1798 4017 mt 1804 4015 L
-1804 4015 mt 1833 4002 L
-1833 4002 mt 1868 3992 L
-1868 3992 mt 1903 3995 L
-1903 3995 mt 1931 4015 L
-1931 4015 mt 1938 4027 L
-1938 4027 mt 1943 4042 L
-1943 4042 mt 1947 4070 L
-1947 4070 mt 1950 4097 L
-1950 4097 mt 1954 4125 L
-1954 4125 mt 1960 4152 L
-1960 4152 mt 1968 4180 L
-1968 4180 mt 1972 4193 L
-1972 4193 mt 1978 4207 L
-1978 4207 mt 1994 4235 L
-1994 4235 mt 2007 4253 L
-2007 4253 mt 2014 4262 L
-2014 4262 mt 2041 4290 L
-2041 4290 mt 2042 4291 L
-2042 4291 mt 2070 4317 L
-2070 4317 mt 2077 4324 L
-2077 4324 mt 2099 4345 L
-2099 4345 mt 2112 4357 L
-2112 4357 mt 2128 4372 L
-2128 4372 mt 2147 4388 L
-2147 4388 mt 2162 4400 L
-2162 4400 mt 2182 4414 L
-2182 4414 mt 2204 4427 L
-2204 4427 mt 2217 4434 L
-2217 4434 mt 2251 4450 L
-2251 4450 mt 2262 4455 L
-2262 4455 mt 2286 4464 L
-2286 4464 mt 2321 4477 L
-2321 4477 mt 2338 4482 L
-2338 4482 mt 2356 4489 L
-2356 4489 mt 2391 4500 L
-2391 4500 mt 2416 4510 L
-2416 4510 mt 2426 4514 L
-2426 4514 mt 2461 4531 L
-2461 4531 mt 2473 4537 L
-2473 4537 mt 2496 4552 L
-2496 4552 mt 2515 4565 L
-2515 4565 mt 2530 4583 L
-2530 4583 mt 2539 4592 L
-2539 4592 mt 2533 4620 L
-2533 4620 mt 2530 4622 L
-2530 4622 mt 2496 4648 L
-2496 4648 mt 2496 4648 L
-2496 4648 mt 2461 4664 L
-2461 4664 mt 2435 4675 L
-2435 4675 mt 2426 4678 L
-2426 4678 mt 2391 4689 L
-2391 4689 mt 2356 4699 L
-2356 4699 mt 2341 4703 L
-2341 4703 mt 2321 4707 L
-2321 4707 mt 2286 4713 L
-2286 4713 mt 2251 4718 L
-2251 4718 mt 2217 4722 L
-2217 4722 mt 2182 4724 L
-2182 4724 mt 2147 4724 L
-2147 4724 mt 2112 4723 L
-2112 4723 mt 2077 4720 L
-2077 4720 mt 2042 4716 L
-2042 4716 mt 2007 4710 L
-2007 4710 mt 1972 4703 L
-1972 4703 mt 1970 4703 L
-1970 4703 mt 1938 4695 L
-1938 4695 mt 1903 4685 L
-1903 4685 mt 1874 4675 L
-1874 4675 mt 1868 4673 L
-1868 4673 mt 1833 4659 L
-1833 4659 mt 1810 4648 L
-1810 4648 mt 1798 4642 L
-1798 4642 mt 1763 4621 L
-1763 4621 mt 1762 4620 L
-1762 4620 mt 1734 4592 L
-1734 4592 mt 1728 4580 L
-1728 4580 mt 1723 4565 L
-1723 4565 mt 1720 4537 L
-1720 4537 mt 1721 4510 L
-1721 4510 mt 1728 4490 L
-1728 4490 mt 1733 4482 L
-1733 4482 mt 1761 4455 L
-1761 4455 mt 1763 4453 L
-1763 4453 mt 1798 4427 L
-1798 4427 mt 1798 4427 L
-1798 4427 mt 1829 4400 L
-1829 4400 mt 1833 4393 L
-1833 4393 mt 1846 4372 L
-1846 4372 mt 1851 4345 L
-1851 4345 mt 1843 4317 L
-1843 4317 mt 1833 4305 L
-1833 4305 mt 1821 4290 L
-1821 4290 mt 1798 4272 L
-1798 4272 mt 1785 4262 L
-1785 4262 mt 1763 4248 L
-1763 4248 mt 1742 4235 L
-1742 4235 mt 1728 4225 L
-1728 4225 mt 1705 4207 L
-1705 4207 mt 1694 4193 L
-1694 4193 mt 1683 4180 L
-1683 4180 mt 1673 4152 L
-1673 4152 mt 1676 4125 L
-1676 4125 mt 1689 4097 L
-1689 4097 mt 1694 4092 L
-6645 1749 mt 6647 1759 L
-6647 1759 mt 6654 1786 L
-6654 1786 mt 6659 1814 L
-6659 1814 mt 6663 1841 L
-6663 1841 mt 6667 1869 L
-6667 1869 mt 6670 1896 L
-6670 1896 mt 6672 1924 L
-6672 1924 mt 6674 1951 L
-6674 1951 mt 6675 1979 L
-6675 1979 mt 6675 2006 L
-6675 2006 mt 6675 2034 L
-6675 2034 mt 6673 2061 L
-6673 2061 mt 6671 2089 L
-6671 2089 mt 6669 2116 L
-6669 2116 mt 6665 2144 L
-6665 2144 mt 6661 2171 L
-6661 2171 mt 6657 2199 L
-6657 2199 mt 6651 2226 L
-6651 2226 mt 6645 2254 L
-6645 2254 mt 6645 2254 L
-6645 2254 mt 6638 2281 L
-6638 2281 mt 6631 2309 L
-6631 2309 mt 6622 2336 L
-6622 2336 mt 6613 2364 L
-6613 2364 mt 6610 2373 L
-6610 2373 mt 6604 2391 L
-6604 2391 mt 6593 2419 L
-6593 2419 mt 6582 2446 L
-6582 2446 mt 6575 2460 L
-6575 2460 mt 6569 2474 L
-6569 2474 mt 6555 2502 L
-6555 2502 mt 6540 2529 L
-6540 2529 mt 6540 2529 L
-6540 2529 mt 6524 2557 L
-6524 2557 mt 6506 2584 L
-6506 2584 mt 6506 2584 L
-6506 2584 mt 6486 2612 L
-6486 2612 mt 6471 2631 L
-6471 2631 mt 6463 2639 L
-6463 2639 mt 6439 2667 L
-6439 2667 mt 6436 2670 L
-6436 2670 mt 6411 2694 L
-6411 2694 mt 6401 2704 L
-6401 2704 mt 6381 2722 L
-6381 2722 mt 6366 2735 L
-6366 2735 mt 6348 2749 L
-6348 2749 mt 6331 2762 L
-6331 2762 mt 6311 2777 L
-6311 2777 mt 6296 2787 L
-6296 2787 mt 6269 2804 L
-6269 2804 mt 6261 2810 L
-6261 2810 mt 6227 2829 L
-6227 2829 mt 6219 2832 L
-6219 2832 mt 6192 2841 L
-6192 2841 mt 6157 2838 L
-6157 2838 mt 6127 2832 L
-6127 2832 mt 6122 2831 L
-6122 2831 mt 6087 2825 L
-6087 2825 mt 6052 2823 L
-6052 2823 mt 6017 2828 L
-6017 2828 mt 6009 2832 L
-6009 2832 mt 5983 2846 L
-5983 2846 mt 5961 2859 L
-5961 2859 mt 5948 2867 L
-5948 2867 mt 5913 2885 L
-5913 2885 mt 5908 2887 L
-5908 2887 mt 5878 2895 L
-5878 2895 mt 5843 2897 L
-5843 2897 mt 5808 2894 L
-5808 2894 mt 5773 2889 L
-5773 2889 mt 5764 2887 L
-5764 2887 mt 5738 2881 L
-5738 2881 mt 5704 2867 L
-5704 2867 mt 5689 2859 L
-5689 2859 mt 5669 2847 L
-5669 2847 mt 5650 2832 L
-5650 2832 mt 5634 2818 L
-5634 2818 mt 5619 2804 L
-5619 2804 mt 5599 2784 L
-5599 2784 mt 5591 2777 L
-5591 2777 mt 5568 2749 L
-5568 2749 mt 5564 2743 L
-5564 2743 mt 5552 2722 L
-5552 2722 mt 5542 2694 L
-5542 2694 mt 5536 2667 L
-5536 2667 mt 5534 2639 L
-5534 2639 mt 5537 2612 L
-5537 2612 mt 5544 2584 L
-5544 2584 mt 5554 2557 L
-5554 2557 mt 5564 2530 L
-5564 2530 mt 5565 2529 L
-5565 2529 mt 5572 2502 L
-5572 2502 mt 5576 2474 L
-5576 2474 mt 5579 2446 L
-5579 2446 mt 5581 2419 L
-5581 2419 mt 5584 2391 L
-5584 2391 mt 5590 2364 L
-5590 2364 mt 5597 2336 L
-5597 2336 mt 5599 2329 L
-5599 2329 mt 5604 2309 L
-5604 2309 mt 5608 2281 L
-5608 2281 mt 5608 2254 L
-5608 2254 mt 5604 2226 L
-5604 2226 mt 5599 2208 L
-5599 2208 mt 5596 2199 L
-5596 2199 mt 5586 2171 L
-5586 2171 mt 5573 2144 L
-5573 2144 mt 5564 2125 L
-5564 2125 mt 5560 2116 L
-5560 2116 mt 5546 2089 L
-5546 2089 mt 5532 2061 L
-5532 2061 mt 5529 2055 L
-5529 2055 mt 5518 2034 L
-5518 2034 mt 5502 2006 L
-5502 2006 mt 5494 1994 L
-5494 1994 mt 5485 1979 L
-5485 1979 mt 5465 1951 L
-5465 1951 mt 5459 1944 L
-5459 1944 mt 5444 1924 L
-5444 1924 mt 5425 1899 L
-5425 1899 mt 5422 1896 L
-5422 1896 mt 5396 1869 L
-5396 1869 mt 5390 1864 L
-5390 1864 mt 5361 1841 L
-5361 1841 mt 5355 1837 L
-5355 1837 mt 5322 1814 L
-5322 1814 mt 5320 1812 L
-5320 1812 mt 5285 1790 L
-5285 1790 mt 5279 1786 L
-5279 1786 mt 5250 1773 L
-5250 1773 mt 5215 1764 L
-5215 1764 mt 5181 1762 L
-5181 1762 mt 5146 1765 L
-5146 1765 mt 5111 1770 L
-5111 1770 mt 5076 1776 L
-5076 1776 mt 5041 1783 L
-5041 1783 mt 5025 1786 L
-5025 1786 mt 5006 1790 L
-5006 1790 mt 4971 1796 L
-4971 1796 mt 4936 1798 L
-4936 1798 mt 4902 1788 L
-4902 1788 mt 4899 1786 L
-4899 1786 mt 4885 1759 L
-4885 1759 mt 4889 1731 L
-4889 1731 mt 4900 1704 L
-4900 1704 mt 4902 1699 L
-4902 1699 mt 4912 1676 L
-4912 1676 mt 4926 1649 L
-4926 1649 mt 4936 1626 L
-4936 1626 mt 4938 1621 L
-4938 1621 mt 4943 1594 L
-4943 1594 mt 4936 1567 L
-4936 1567 mt 4936 1566 L
-4936 1566 mt 4914 1539 L
-4914 1539 mt 4902 1529 L
-4902 1529 mt 4867 1512 L
-4867 1512 mt 4861 1511 L
-4861 1511 mt 4832 1507 L
-4832 1507 mt 4797 1506 L
-4797 1506 mt 4762 1505 L
-4762 1505 mt 4727 1505 L
-4727 1505 mt 4692 1504 L
-4692 1504 mt 4657 1501 L
-4657 1501 mt 4623 1494 L
-4623 1494 mt 4600 1484 L
-4600 1484 mt 4588 1476 L
-4588 1476 mt 4567 1456 L
-4567 1456 mt 4553 1436 L
-4553 1436 mt 4548 1428 L
-4548 1428 mt 4535 1401 L
-4535 1401 mt 4521 1373 L
-4521 1373 mt 4518 1369 L
-4518 1369 mt 4503 1346 L
-4503 1346 mt 4483 1321 L
-4483 1321 mt 4481 1318 L
-4481 1318 mt 4452 1291 L
-4452 1291 mt 4448 1287 L
-4448 1287 mt 4424 1263 L
-4424 1263 mt 4413 1240 L
-4413 1240 mt 4411 1236 L
-4411 1236 mt 4401 1208 L
-4401 1208 mt 4399 1181 L
-4399 1181 mt 4396 1153 L
-4396 1153 mt 4389 1126 L
-4389 1126 mt 4379 1108 L
-4379 1108 mt 4373 1098 L
-4373 1098 mt 4349 1071 L
-4349 1071 mt 4344 1066 L
-4344 1066 mt 4317 1043 L
-4317 1043 mt 4309 1037 L
-4309 1037 mt 4279 1016 L
-4279 1016 mt 4274 1012 L
-4274 1012 mt 4239 992 L
-4239 992 mt 4232 988 L
-4232 988 mt 4204 974 L
-4204 974 mt 4176 961 L
-4176 961 mt 4169 957 L
-4169 957 mt 4134 940 L
-4134 940 mt 4118 933 L
-4118 933 mt 4100 925 L
-4100 925 mt 4065 911 L
-4065 911 mt 4048 906 L
-4048 906 mt 4030 899 L
-4030 899 mt 3995 888 L
-3995 888 mt 3969 878 L
-3969 878 mt 3960 875 L
-3960 875 mt 3925 859 L
-3925 859 mt 3908 851 L
-3908 851 mt 3890 840 L
-3890 840 mt 3863 823 L
-3863 823 mt 3855 817 L
-3855 817 mt 3828 796 L
-3828 796 mt 3821 788 L
-3821 788 mt 3801 768 L
-3801 768 mt 3786 752 L
-3786 752 mt 3776 741 L
-3776 741 mt 3751 717 L
-3751 717 mt 3747 713 L
-3747 713 mt 3716 691 L
-3716 691 mt 3709 686 L
-3709 686 mt 3681 671 L
-3681 671 mt 3656 658 L
-3656 658 mt 3646 654 L
-3646 654 mt 3611 640 L
-3611 640 mt 3589 631 L
-3589 631 mt 3577 626 L
-3577 626 mt 3542 612 L
-3542 612 mt 3524 603 L
-3524 603 mt 3507 596 L
-3507 596 mt 3472 581 L
-3472 581 mt 3460 576 L
-3460 576 mt 3437 566 L
-3437 566 mt 3402 552 L
-3402 552 mt 3392 548 L
-3392 548 mt 3367 539 L
-3367 539 mt 3332 528 L
-3332 528 mt 3307 521 L
-3307 521 mt 3298 518 L
-3298 518 mt 3263 509 L
-3263 509 mt 3228 502 L
-3228 502 mt 3193 496 L
-3193 496 mt 3171 493 L
-3171 493 mt 3158 491 L
-3158 491 mt 3123 487 L
-3123 487 mt 3088 483 L
-3088 483 mt 3053 480 L
-3053 480 mt 3019 478 L
-3019 478 mt 2984 476 L
-2984 476 mt 2949 476 L
-2949 476 mt 2914 476 L
-2914 476 mt 2879 478 L
-2879 478 mt 2844 479 L
-2844 479 mt 2809 480 L
-2809 480 mt 2774 480 L
-2774 480 mt 2740 477 L
-2740 477 mt 2705 474 L
-2705 474 mt 2670 471 L
-2670 471 mt 2635 474 L
-2635 474 mt 2600 486 L
-2600 486 mt 2586 493 L
-2586 493 mt 2565 500 L
-2565 500 mt 2530 511 L
-2530 511 mt 2497 521 L
-2497 521 mt 2496 521 L
-2496 521 mt 2461 528 L
-2461 528 mt 2426 535 L
-2426 535 mt 2391 542 L
-2391 542 mt 2356 548 L
-2356 548 mt 2355 548 L
-2355 548 mt 2321 552 L
-2321 552 mt 2286 555 L
-2286 555 mt 2251 557 L
-2251 557 mt 2217 557 L
-2217 557 mt 2182 557 L
-2182 557 mt 2147 557 L
-2147 557 mt 2112 558 L
-2112 558 mt 2077 560 L
-2077 560 mt 2042 564 L
-2042 564 mt 2007 571 L
-2007 571 mt 1993 576 L
-1993 576 mt 1972 581 L
-1972 581 mt 1938 592 L
-1938 592 mt 1912 603 L
-1912 603 mt 1903 607 L
-1903 607 mt 1868 623 L
-1868 623 mt 1853 631 L
-1853 631 mt 1833 640 L
-1833 640 mt 1798 655 L
-1798 655 mt 1788 658 L
-1788 658 mt 1763 665 L
-1763 665 mt 1728 670 L
-1728 670 mt 1694 670 L
-1694 670 mt 1659 667 L
-1659 667 mt 1624 666 L
-1624 666 mt 1589 667 L
-1589 667 mt 1554 674 L
-1554 674 mt 1523 686 L
-1523 686 mt 1519 688 L
-1519 688 mt 1484 710 L
-1484 710 mt 1481 713 L
-1481 713 mt 1455 741 L
-1455 741 mt 1449 749 L
-1449 749 mt 1436 768 L
-1436 768 mt 1421 796 L
-1421 796 mt 1415 808 L
-1415 808 mt 1406 823 L
-1406 823 mt 1390 851 L
-1390 851 mt 1380 864 L
-1380 864 mt 1368 878 L
-1368 878 mt 1345 901 L
-1345 901 mt 1339 906 L
-1339 906 mt 1310 927 L
-1310 927 mt 1301 933 L
-1301 933 mt 1275 952 L
-1275 952 mt 1265 961 L
-1265 961 mt 1240 982 L
-1240 982 mt 1235 988 L
-1235 988 mt 1217 1016 L
-1217 1016 mt 1205 1042 L
-1205 1042 mt 1205 1043 L
-1205 1043 mt 1200 1071 L
-1200 1071 mt 1199 1098 L
-1199 1098 mt 1200 1126 L
-1200 1126 mt 1204 1153 L
-1204 1153 mt 1205 1158 L
-1205 1158 mt 1211 1181 L
-1211 1181 mt 1216 1208 L
-1216 1208 mt 1219 1236 L
-1219 1236 mt 1218 1263 L
-1218 1263 mt 1209 1291 L
-1209 1291 mt 1205 1297 L
-1205 1297 mt 1188 1318 L
-1188 1318 mt 1170 1332 L
-1170 1332 mt 1153 1346 L
-1153 1346 mt 1136 1357 L
-1136 1357 mt 1113 1373 L
-1113 1373 mt 1101 1382 L
-1101 1382 mt 1078 1401 L
-1078 1401 mt 1066 1411 L
-1066 1411 mt 1048 1428 L
-1048 1428 mt 1031 1448 L
-1031 1448 mt 1024 1456 L
-1024 1456 mt 1007 1484 L
-1007 1484 mt 998 1511 L
- 998 1511 mt 996 1518 L
- 996 1518 mt 990 1539 L
- 990 1539 mt 987 1566 L
- 987 1566 mt 986 1594 L
- 986 1594 mt 985 1621 L
- 985 1621 mt 984 1649 L
- 984 1649 mt 984 1676 L
- 984 1676 mt 985 1704 L
- 985 1704 mt 988 1731 L
- 988 1731 mt 993 1759 L
- 993 1759 mt 996 1773 L
- 996 1773 mt 999 1786 L
- 999 1786 mt 1006 1814 L
-1006 1814 mt 1015 1841 L
-1015 1841 mt 1026 1869 L
-1026 1869 mt 1031 1881 L
-1031 1881 mt 1037 1896 L
-1037 1896 mt 1048 1924 L
-1048 1924 mt 1060 1951 L
-1060 1951 mt 1066 1966 L
-1066 1966 mt 1071 1979 L
-1071 1979 mt 1082 2006 L
-1082 2006 mt 1093 2034 L
-1093 2034 mt 1101 2054 L
-1101 2054 mt 1103 2061 L
-1103 2061 mt 1114 2089 L
-1114 2089 mt 1124 2116 L
-1124 2116 mt 1134 2144 L
-1134 2144 mt 1136 2148 L
-1136 2148 mt 1149 2171 L
-1149 2171 mt 1167 2199 L
-1167 2199 mt 1170 2203 L
-1170 2203 mt 1197 2226 L
-1197 2226 mt 1205 2232 L
-1205 2232 mt 1240 2251 L
-1240 2251 mt 1245 2254 L
-1245 2254 mt 1275 2267 L
-1275 2267 mt 1304 2281 L
-1304 2281 mt 1310 2284 L
-1310 2284 mt 1345 2301 L
-1345 2301 mt 1357 2309 L
-1357 2309 mt 1380 2322 L
-1380 2322 mt 1400 2336 L
-1400 2336 mt 1415 2349 L
-1415 2349 mt 1434 2364 L
-1434 2364 mt 1449 2379 L
-1449 2379 mt 1465 2391 L
-1465 2391 mt 1484 2412 L
-1484 2412 mt 1490 2419 L
-1490 2419 mt 1511 2446 L
-1511 2446 mt 1519 2457 L
-1519 2457 mt 1530 2474 L
-1530 2474 mt 1540 2502 L
-1540 2502 mt 1544 2529 L
-1544 2529 mt 1547 2557 L
-1547 2557 mt 1551 2584 L
-1551 2584 mt 1554 2604 L
-1554 2604 mt 1555 2612 L
-1555 2612 mt 1556 2639 L
-1556 2639 mt 1558 2667 L
-1558 2667 mt 1565 2694 L
-1565 2694 mt 1579 2722 L
-1579 2722 mt 1589 2736 L
-1589 2736 mt 1599 2749 L
-1599 2749 mt 1624 2772 L
-1624 2772 mt 1629 2777 L
-1629 2777 mt 1659 2799 L
-1659 2799 mt 1667 2804 L
-1667 2804 mt 1694 2823 L
-1694 2823 mt 1707 2832 L
-1707 2832 mt 1728 2849 L
-1728 2849 mt 1742 2859 L
-1742 2859 mt 1763 2879 L
-1763 2879 mt 1771 2887 L
-1771 2887 mt 1798 2914 L
-1798 2914 mt 1798 2914 L
-1798 2914 mt 1823 2942 L
-1823 2942 mt 1833 2953 L
-1833 2953 mt 1846 2969 L
-1846 2969 mt 1864 2997 L
-1864 2997 mt 1868 3003 L
-1868 3003 mt 1879 3024 L
-1879 3024 mt 1888 3052 L
-1888 3052 mt 1894 3079 L
-1894 3079 mt 1901 3107 L
-1901 3107 mt 1903 3111 L
-1903 3111 mt 1911 3134 L
-1911 3134 mt 1922 3162 L
-1922 3162 mt 1934 3189 L
-1934 3189 mt 1938 3196 L
-1938 3196 mt 1951 3217 L
-1951 3217 mt 1972 3232 L
-1972 3232 mt 1988 3244 L
-1988 3244 mt 2007 3254 L
-2007 3254 mt 2030 3272 L
-2030 3272 mt 2042 3281 L
-2042 3281 mt 2063 3299 L
-2063 3299 mt 2077 3312 L
-2077 3312 mt 2095 3327 L
-2095 3327 mt 2112 3340 L
-2112 3340 mt 2132 3354 L
-2132 3354 mt 2147 3364 L
-2147 3364 mt 2175 3382 L
-2175 3382 mt 2182 3386 L
-2182 3386 mt 2213 3409 L
-2213 3409 mt 2217 3412 L
-2217 3412 mt 2247 3437 L
-2247 3437 mt 2251 3441 L
-2251 3441 mt 2279 3464 L
-2279 3464 mt 2286 3470 L
-2286 3470 mt 2310 3492 L
-2310 3492 mt 2321 3503 L
-2321 3503 mt 2335 3519 L
-2335 3519 mt 2354 3547 L
-2354 3547 mt 2356 3551 L
-2356 3551 mt 2367 3575 L
-2367 3575 mt 2374 3602 L
-2374 3602 mt 2375 3630 L
-2375 3630 mt 2363 3657 L
-2363 3657 mt 2356 3663 L
-2356 3663 mt 2331 3685 L
-2331 3685 mt 2321 3690 L
-2321 3690 mt 2286 3708 L
-2286 3708 mt 2275 3712 L
-2275 3712 mt 2251 3722 L
-2251 3722 mt 2217 3733 L
-2217 3733 mt 2182 3739 L
-2182 3739 mt 2147 3736 L
-2147 3736 mt 2112 3723 L
-2112 3723 mt 2097 3712 L
-2097 3712 mt 2077 3694 L
-2077 3694 mt 2070 3685 L
-2070 3685 mt 2054 3657 L
-2054 3657 mt 2043 3630 L
-2043 3630 mt 2042 3627 L
-2042 3627 mt 2035 3602 L
-2035 3602 mt 2028 3575 L
-2028 3575 mt 2019 3547 L
-2019 3547 mt 2008 3519 L
-2008 3519 mt 2007 3517 L
-2007 3517 mt 1995 3492 L
-1995 3492 mt 1980 3464 L
-1980 3464 mt 1972 3453 L
-1972 3453 mt 1964 3437 L
-1964 3437 mt 1948 3409 L
-1948 3409 mt 1938 3391 L
-1938 3391 mt 1932 3382 L
-1932 3382 mt 1917 3354 L
-1917 3354 mt 1903 3328 L
-1903 3328 mt 1902 3327 L
-1902 3327 mt 1892 3299 L
-1892 3299 mt 1882 3272 L
-1882 3272 mt 1868 3253 L
-1868 3253 mt 1861 3244 L
-1861 3244 mt 1833 3226 L
-1833 3226 mt 1819 3217 L
-1819 3217 mt 1798 3205 L
-1798 3205 mt 1771 3189 L
-1771 3189 mt 1763 3186 L
-1763 3186 mt 1728 3169 L
-1728 3169 mt 1715 3162 L
-1715 3162 mt 1694 3153 L
-1694 3153 mt 1659 3139 L
-1659 3139 mt 1647 3134 L
-1647 3134 mt 1624 3125 L
-1624 3125 mt 1589 3114 L
-1589 3114 mt 1565 3107 L
-1565 3107 mt 1554 3104 L
-1554 3104 mt 1519 3094 L
-1519 3094 mt 1484 3084 L
-1484 3084 mt 1469 3079 L
-1469 3079 mt 1449 3074 L
-1449 3074 mt 1415 3065 L
-1415 3065 mt 1380 3056 L
-1380 3056 mt 1360 3052 L
-1360 3052 mt 1345 3048 L
-1345 3048 mt 1310 3042 L
-1310 3042 mt 1275 3037 L
-1275 3037 mt 1240 3031 L
-1240 3031 mt 1214 3024 L
-1214 3024 mt 1205 3022 L
-1205 3022 mt 1170 3006 L
-1170 3006 mt 1153 2997 L
-1153 2997 mt 1136 2986 L
-1136 2986 mt 1106 2969 L
-1106 2969 mt 1101 2967 L
-1101 2967 mt 1066 2949 L
-1066 2949 mt 1048 2942 L
-1048 2942 mt 1031 2935 L
-1031 2935 mt 996 2922 L
- 996 2922 mt 978 2914 L
- 978 2914 mt 961 2908 L
- 961 2908 mt 926 2893 L
- 926 2893 mt 915 2887 L
- 915 2887 mt 892 2875 L
- 892 2875 mt 866 2859 L
- 866 2859 mt 857 2853 L
- 857 2853 mt 829 2832 L
- 829 2832 mt 822 2825 L
- 822 2825 mt 800 2804 L
- 800 2804 mt 787 2790 L
- 787 2790 mt 776 2777 L
- 776 2777 mt 756 2749 L
- 756 2749 mt 752 2744 L
- 752 2744 mt 738 2722 L
- 738 2722 mt 724 2694 L
- 724 2694 mt 717 2680 L
- 717 2680 mt 711 2667 L
- 711 2667 mt 701 2639 L
- 701 2639 mt 692 2612 L
- 692 2612 mt 686 2584 L
- 686 2584 mt 682 2567 L
- 682 2567 mt 680 2557 L
- 680 2557 mt 676 2529 L
- 676 2529 mt 674 2502 L
- 674 2502 mt 672 2474 L
- 672 2474 mt 672 2446 L
- 672 2446 mt 673 2419 L
- 673 2419 mt 676 2391 L
- 676 2391 mt 680 2364 L
- 680 2364 mt 682 2350 L
- 682 2350 mt 685 2336 L
- 685 2336 mt 692 2309 L
- 692 2309 mt 701 2281 L
- 701 2281 mt 711 2254 L
- 711 2254 mt 717 2239 L
- 717 2239 mt 723 2226 L
- 723 2226 mt 736 2199 L
- 736 2199 mt 751 2171 L
- 751 2171 mt 752 2169 L
- 752 2169 mt 767 2144 L
- 767 2144 mt 782 2116 L
- 782 2116 mt 787 2107 L
- 787 2107 mt 798 2089 L
- 798 2089 mt 813 2061 L
- 813 2061 mt 822 2046 L
- 822 2046 mt 830 2034 L
- 830 2034 mt 847 2006 L
- 847 2006 mt 857 1984 L
- 857 1984 mt 860 1979 L
- 860 1979 mt 868 1951 L
- 868 1951 mt 870 1924 L
- 870 1924 mt 866 1896 L
- 866 1896 mt 860 1869 L
- 860 1869 mt 857 1858 L
- 857 1858 mt 853 1841 L
- 853 1841 mt 848 1814 L
- 848 1814 mt 843 1786 L
- 843 1786 mt 841 1759 L
- 841 1759 mt 840 1731 L
- 840 1731 mt 842 1704 L
- 842 1704 mt 846 1676 L
- 846 1676 mt 853 1649 L
- 853 1649 mt 857 1636 L
- 857 1636 mt 862 1621 L
- 862 1621 mt 872 1594 L
- 872 1594 mt 879 1566 L
- 879 1566 mt 883 1539 L
- 883 1539 mt 881 1511 L
- 881 1511 mt 874 1484 L
- 874 1484 mt 861 1456 L
- 861 1456 mt 857 1450 L
- 857 1450 mt 848 1428 L
- 848 1428 mt 836 1401 L
- 836 1401 mt 829 1373 L
- 829 1373 mt 826 1346 L
- 826 1346 mt 824 1318 L
- 824 1318 mt 822 1291 L
- 822 1291 mt 822 1291 L
- 822 1291 mt 820 1263 L
- 820 1263 mt 817 1236 L
- 817 1236 mt 815 1208 L
- 815 1208 mt 814 1181 L
- 814 1181 mt 817 1153 L
- 817 1153 mt 821 1126 L
- 821 1126 mt 822 1121 L
- 822 1121 mt 827 1098 L
- 827 1098 mt 833 1071 L
- 833 1071 mt 838 1043 L
- 838 1043 mt 842 1016 L
- 842 1016 mt 845 988 L
- 845 988 mt 848 961 L
- 848 961 mt 850 933 L
- 850 933 mt 853 906 L
- 853 906 mt 857 890 L
- 857 890 mt 859 878 L
- 859 878 mt 867 851 L
- 867 851 mt 880 823 L
- 880 823 mt 892 801 L
- 892 801 mt 894 796 L
- 894 796 mt 909 768 L
- 909 768 mt 926 741 L
- 926 741 mt 926 740 L
- 926 740 mt 947 713 L
- 947 713 mt 961 695 L
- 961 695 mt 970 686 L
- 970 686 mt 991 658 L
- 991 658 mt 996 652 L
- 996 652 mt 1010 631 L
-1010 631 mt 1026 603 L
-1026 603 mt 1031 594 L
-1031 594 mt 1041 576 L
-1041 576 mt 1061 548 L
-1061 548 mt 1066 543 L
-1066 543 mt 1084 521 L
-1084 521 mt 1101 505 L
-1101 505 mt 1116 493 L
-1116 493 mt 1136 478 L
-1136 478 mt 1154 466 L
-1154 466 mt 1170 455 L
-1170 455 mt 1198 438 L
-1198 438 mt 1205 434 L
-1205 434 mt 1240 418 L
-1240 418 mt 1260 411 L
-1260 411 mt 1275 405 L
-1275 405 mt 1310 395 L
-1310 395 mt 1345 392 L
-1345 392 mt 1380 397 L
-1380 397 mt 1415 403 L
-1415 403 mt 1449 410 L
-1449 410 mt 1458 411 L
-1458 411 mt 1484 414 L
-1484 414 mt 1519 418 L
-1519 418 mt 1554 418 L
-1554 418 mt 1589 418 L
-1589 418 mt 1624 415 L
-1624 415 mt 1657 411 L
-1657 411 mt 1659 410 L
-1659 410 mt 1694 404 L
-1694 404 mt 1728 396 L
-1728 396 mt 1763 386 L
-1763 386 mt 1774 383 L
-1774 383 mt 1798 377 L
-1798 377 mt 1833 368 L
-1833 368 mt 1868 360 L
-1868 360 mt 1903 356 L
-1903 356 mt 1938 356 L
-1938 356 mt 1972 362 L
-1972 362 mt 2007 372 L
-2007 372 mt 2042 382 L
-2042 382 mt 2047 383 L
-2047 383 mt 2077 392 L
-2077 392 mt 2112 400 L
-2112 400 mt 2147 403 L
-2147 403 mt 2182 403 L
-2182 403 mt 2217 401 L
-2217 401 mt 2251 397 L
-2251 397 mt 2286 391 L
-2286 391 mt 2321 384 L
-2321 384 mt 2328 383 L
-2328 383 mt 2356 378 L
-2356 378 mt 2391 372 L
-2391 372 mt 2426 367 L
-2426 367 mt 2461 364 L
-2461 364 mt 2496 365 L
-2496 365 mt 2530 371 L
-2530 371 mt 2565 383 L
-2565 383 mt 2565 383 L
-2565 383 mt 2600 398 L
-2600 398 mt 2635 403 L
-2635 403 mt 2670 392 L
-2670 392 mt 2681 383 L
-2681 383 mt 2705 374 L
-2705 374 mt 2740 357 L
-2740 357 mt 2745 355 L
-2745 355 mt 2774 349 L
-2774 349 mt 2809 345 L
-2809 345 mt 2844 345 L
-2844 345 mt 2879 347 L
-2879 347 mt 2914 349 L
-2914 349 mt 2949 352 L
-2949 352 mt 2984 355 L
-2984 355 mt 2984 355 L
-2984 355 mt 3019 358 L
-3019 358 mt 3053 360 L
-3053 360 mt 3088 361 L
-3088 361 mt 3123 362 L
-3123 362 mt 3158 360 L
-3158 360 mt 3193 358 L
-3193 358 mt 3212 355 L
-3212 355 mt 3228 354 L
-3228 354 mt 3263 348 L
-3263 348 mt 3298 338 L
-3298 338 mt 3328 328 L
-3328 328 mt 3332 327 L
-3332 327 mt 3367 316 L
-3367 316 mt 3402 305 L
-3402 305 mt 3418 300 L
-3418 300 mt 3437 296 L
-3437 296 mt 3472 288 L
-3472 288 mt 3507 281 L
-3507 281 mt 3542 275 L
-3542 275 mt 3550 273 L
-3550 273 mt 3577 268 L
-3577 268 mt 3611 261 L
-3611 261 mt 3646 254 L
-3646 254 mt 3681 247 L
-3681 247 mt 3689 245 L
-3689 245 mt 3716 240 L
-3716 240 mt 3751 233 L
-3751 233 mt 3786 226 L
-3786 226 mt 3821 219 L
-3821 219 mt 3826 218 L
-3826 218 mt 3855 212 L
-3855 212 mt 3890 205 L
-3890 205 mt 3925 198 L
-3925 198 mt 3960 190 L
-3960 190 mt 3960 190 L
-3960 190 mt 3995 183 L
-3995 183 mt 4030 176 L
-4030 176 mt 4065 169 L
-4065 169 mt 4094 163 L
-4094 163 mt 4100 162 L
-4100 162 mt 4134 155 L
-4134 155 mt 4169 148 L
-4169 148 mt 4204 142 L
-4204 142 mt 4239 136 L
-4239 136 mt 4243 135 L
-4243 135 mt 4274 130 L
-4274 130 mt 4309 125 L
-4309 125 mt 4344 120 L
-4344 120 mt 4379 116 L
-4379 116 mt 4413 112 L
-4413 112 mt 4448 108 L
-4448 108 mt 4450 108 L
-4450 108 mt 4483 105 L
-4483 105 mt 4518 103 L
-4518 103 mt 4553 101 L
-4553 101 mt 4588 99 L
-4588 99 mt 4623 98 L
-4623 98 mt 4657 97 L
-4657 97 mt 4692 97 L
-4692 97 mt 4727 98 L
-4727 98 mt 4762 99 L
-4762 99 mt 4797 100 L
-4797 100 mt 4832 102 L
-4832 102 mt 4867 105 L
-4867 105 mt 4899 108 L
-4899 108 mt 4902 108 L
-4902 108 mt 4936 112 L
-4936 112 mt 4971 117 L
-4971 117 mt 5006 123 L
-5006 123 mt 5041 129 L
-5041 129 mt 5068 135 L
-5068 135 mt 5076 137 L
-5076 137 mt 5111 146 L
-5111 146 mt 5146 155 L
-5146 155 mt 5169 163 L
-5169 163 mt 5181 167 L
-5181 167 mt 5215 179 L
-5215 179 mt 5243 190 L
-5243 190 mt 5250 193 L
-5250 193 mt 5285 209 L
-5285 209 mt 5302 218 L
-5302 218 mt 5320 227 L
-5320 227 mt 5352 245 L
-5352 245 mt 5355 247 L
-5355 247 mt 5390 269 L
-5390 269 mt 5396 273 L
-5396 273 mt 5425 292 L
-5425 292 mt 5436 300 L
-5436 300 mt 5459 318 L
-5459 318 mt 5472 328 L
-5472 328 mt 5494 346 L
-5494 346 mt 5506 355 L
-5506 355 mt 5529 375 L
-5529 375 mt 5539 383 L
-5539 383 mt 5564 405 L
-5564 405 mt 5570 411 L
-5570 411 mt 5599 437 L
-5599 437 mt 5600 438 L
-5600 438 mt 5629 466 L
-5629 466 mt 5634 470 L
-5634 470 mt 5658 493 L
-5658 493 mt 5669 504 L
-5669 504 mt 5686 521 L
-5686 521 mt 5704 539 L
-5704 539 mt 5713 548 L
-5713 548 mt 5738 575 L
-5738 575 mt 5739 576 L
-5739 576 mt 5766 603 L
-5766 603 mt 5773 611 L
-5773 611 mt 5791 631 L
-5791 631 mt 5808 649 L
-5808 649 mt 5817 658 L
-5817 658 mt 5842 686 L
-5842 686 mt 5843 687 L
-5843 687 mt 5867 713 L
-5867 713 mt 5878 726 L
-5878 726 mt 5892 741 L
-5892 741 mt 5913 764 L
-5913 764 mt 5916 768 L
-5916 768 mt 5941 796 L
-5941 796 mt 5948 803 L
-5948 803 mt 5966 823 L
-5966 823 mt 5983 841 L
-5983 841 mt 5991 851 L
-5991 851 mt 6016 878 L
-6016 878 mt 6017 880 L
-6017 880 mt 6041 906 L
-6041 906 mt 6052 919 L
-6052 919 mt 6066 933 L
-6066 933 mt 6087 957 L
-6087 957 mt 6090 961 L
-6090 961 mt 6115 988 L
-6115 988 mt 6122 996 L
-6122 996 mt 6140 1016 L
-6140 1016 mt 6157 1035 L
-6157 1035 mt 6165 1043 L
-6165 1043 mt 6190 1071 L
-6190 1071 mt 6192 1073 L
-6192 1073 mt 6214 1098 L
-6214 1098 mt 6227 1112 L
-6227 1112 mt 6239 1126 L
-6239 1126 mt 6261 1151 L
-6261 1151 mt 6264 1153 L
-6264 1153 mt 6289 1181 L
-6289 1181 mt 6296 1189 L
-6296 1189 mt 6314 1208 L
-6314 1208 mt 6331 1228 L
-6331 1228 mt 6339 1236 L
-6339 1236 mt 6363 1263 L
-6363 1263 mt 6366 1267 L
-6366 1267 mt 6387 1291 L
-6387 1291 mt 6401 1307 L
-6401 1307 mt 6410 1318 L
-6410 1318 mt 6433 1346 L
-6433 1346 mt 6436 1349 L
-6436 1349 mt 6455 1373 L
-6455 1373 mt 6471 1394 L
-6471 1394 mt 6476 1401 L
-6476 1401 mt 6496 1428 L
-6496 1428 mt 6506 1442 L
-6506 1442 mt 6515 1456 L
-6515 1456 mt 6533 1484 L
-6533 1484 mt 6540 1496 L
-6540 1496 mt 6549 1511 L
-6549 1511 mt 6565 1539 L
-6565 1539 mt 6575 1559 L
-6575 1559 mt 6579 1566 L
-6579 1566 mt 6592 1594 L
-6592 1594 mt 6604 1621 L
-6604 1621 mt 6610 1638 L
-6610 1638 mt 6615 1649 L
-6615 1649 mt 6624 1676 L
-6624 1676 mt 6633 1704 L
-6633 1704 mt 6641 1731 L
-6641 1731 mt 6645 1749 L
-1763 4563 mt 1768 4537 L
-1768 4537 mt 1787 4510 L
-1787 4510 mt 1798 4500 L
-1798 4500 mt 1821 4482 L
-1821 4482 mt 1833 4475 L
-1833 4475 mt 1861 4455 L
-1861 4455 mt 1868 4450 L
-1868 4450 mt 1894 4427 L
-1894 4427 mt 1903 4417 L
-1903 4417 mt 1919 4400 L
-1919 4400 mt 1938 4375 L
-1938 4375 mt 1941 4372 L
-1941 4372 mt 1972 4354 L
-1972 4354 mt 2007 4357 L
-2007 4357 mt 2040 4372 L
-2040 4372 mt 2042 4374 L
-2042 4374 mt 2077 4398 L
-2077 4398 mt 2079 4400 L
-2079 4400 mt 2112 4423 L
-2112 4423 mt 2118 4427 L
-2118 4427 mt 2147 4445 L
-2147 4445 mt 2164 4455 L
-2164 4455 mt 2182 4464 L
-2182 4464 mt 2217 4480 L
-2217 4480 mt 2222 4482 L
-2222 4482 mt 2251 4494 L
-2251 4494 mt 2286 4507 L
-2286 4507 mt 2296 4510 L
-2296 4510 mt 2321 4519 L
-2321 4519 mt 2356 4531 L
-2356 4531 mt 2372 4537 L
-2372 4537 mt 2391 4547 L
-2391 4547 mt 2418 4565 L
-2418 4565 mt 2426 4582 L
-2426 4582 mt 2433 4592 L
-2433 4592 mt 2426 4602 L
-2426 4602 mt 2417 4620 L
-2417 4620 mt 2391 4636 L
-2391 4636 mt 2364 4648 L
-2364 4648 mt 2356 4651 L
-2356 4651 mt 2321 4662 L
-2321 4662 mt 2286 4673 L
-2286 4673 mt 2278 4675 L
-2278 4675 mt 2251 4681 L
-2251 4681 mt 2217 4687 L
-2217 4687 mt 2182 4691 L
-2182 4691 mt 2147 4692 L
-2147 4692 mt 2112 4691 L
-2112 4691 mt 2077 4689 L
-2077 4689 mt 2042 4685 L
-2042 4685 mt 2007 4679 L
-2007 4679 mt 1986 4675 L
-1986 4675 mt 1972 4672 L
-1972 4672 mt 1938 4664 L
-1938 4664 mt 1903 4654 L
-1903 4654 mt 1883 4648 L
-1883 4648 mt 1868 4642 L
-1868 4642 mt 1833 4627 L
-1833 4627 mt 1819 4620 L
-1819 4620 mt 1798 4606 L
-1798 4606 mt 1779 4592 L
-1779 4592 mt 1763 4565 L
-1763 4565 mt 1763 4565 L
-1763 4565 mt 1763 4563 L
-6610 1784 mt 6611 1786 L
-6611 1786 mt 6616 1814 L
-6616 1814 mt 6620 1841 L
-6620 1841 mt 6623 1869 L
-6623 1869 mt 6626 1896 L
-6626 1896 mt 6628 1924 L
-6628 1924 mt 6629 1951 L
-6629 1951 mt 6629 1979 L
-6629 1979 mt 6629 2006 L
-6629 2006 mt 6628 2034 L
-6628 2034 mt 6627 2061 L
-6627 2061 mt 6624 2089 L
-6624 2089 mt 6621 2116 L
-6621 2116 mt 6618 2144 L
-6618 2144 mt 6613 2171 L
-6613 2171 mt 6610 2188 L
-6610 2188 mt 6608 2199 L
-6608 2199 mt 6602 2226 L
-6602 2226 mt 6596 2254 L
-6596 2254 mt 6589 2281 L
-6589 2281 mt 6581 2309 L
-6581 2309 mt 6575 2326 L
-6575 2326 mt 6572 2336 L
-6572 2336 mt 6563 2364 L
-6563 2364 mt 6553 2391 L
-6553 2391 mt 6542 2419 L
-6542 2419 mt 6540 2422 L
-6540 2422 mt 6529 2446 L
-6529 2446 mt 6516 2474 L
-6516 2474 mt 6506 2493 L
-6506 2493 mt 6501 2502 L
-6501 2502 mt 6484 2529 L
-6484 2529 mt 6471 2549 L
-6471 2549 mt 6465 2557 L
-6465 2557 mt 6444 2584 L
-6444 2584 mt 6436 2594 L
-6436 2594 mt 6420 2612 L
-6420 2612 mt 6401 2631 L
-6401 2631 mt 6392 2639 L
-6392 2639 mt 6366 2661 L
-6366 2661 mt 6359 2667 L
-6359 2667 mt 6331 2687 L
-6331 2687 mt 6320 2694 L
-6320 2694 mt 6296 2709 L
-6296 2709 mt 6272 2722 L
-6272 2722 mt 6261 2727 L
-6261 2727 mt 6227 2742 L
-6227 2742 mt 6192 2746 L
-6192 2746 mt 6157 2743 L
-6157 2743 mt 6122 2739 L
-6122 2739 mt 6087 2736 L
-6087 2736 mt 6052 2737 L
-6052 2737 mt 6017 2742 L
-6017 2742 mt 5987 2749 L
-5987 2749 mt 5983 2751 L
-5983 2751 mt 5948 2765 L
-5948 2765 mt 5918 2777 L
-5918 2777 mt 5913 2779 L
-5913 2779 mt 5878 2791 L
-5878 2791 mt 5843 2801 L
-5843 2801 mt 5826 2804 L
-5826 2804 mt 5808 2807 L
-5808 2807 mt 5773 2809 L
-5773 2809 mt 5741 2804 L
-5741 2804 mt 5738 2804 L
-5738 2804 mt 5704 2788 L
-5704 2788 mt 5687 2777 L
-5687 2777 mt 5669 2763 L
-5669 2763 mt 5655 2749 L
-5655 2749 mt 5634 2727 L
-5634 2727 mt 5630 2722 L
-5630 2722 mt 5615 2694 L
-5615 2694 mt 5604 2667 L
-5604 2667 mt 5599 2648 L
-5599 2648 mt 5597 2639 L
-5597 2639 mt 5597 2612 L
-5597 2612 mt 5599 2602 L
-5599 2602 mt 5603 2584 L
-5603 2584 mt 5612 2557 L
-5612 2557 mt 5620 2529 L
-5620 2529 mt 5626 2502 L
-5626 2502 mt 5627 2474 L
-5627 2474 mt 5628 2446 L
-5628 2446 mt 5631 2419 L
-5631 2419 mt 5633 2391 L
-5633 2391 mt 5634 2390 L
-5634 2390 mt 5640 2364 L
-5640 2364 mt 5650 2336 L
-5650 2336 mt 5661 2309 L
-5661 2309 mt 5669 2288 L
-5669 2288 mt 5671 2281 L
-5671 2281 mt 5679 2254 L
-5679 2254 mt 5682 2226 L
-5682 2226 mt 5681 2199 L
-5681 2199 mt 5675 2171 L
-5675 2171 mt 5669 2155 L
-5669 2155 mt 5664 2144 L
-5664 2144 mt 5651 2116 L
-5651 2116 mt 5636 2089 L
-5636 2089 mt 5634 2085 L
-5634 2085 mt 5620 2061 L
-5620 2061 mt 5605 2034 L
-5605 2034 mt 5599 2024 L
-5599 2024 mt 5589 2006 L
-5589 2006 mt 5572 1979 L
-5572 1979 mt 5564 1967 L
-5564 1967 mt 5553 1951 L
-5553 1951 mt 5532 1924 L
-5532 1924 mt 5529 1921 L
-5529 1921 mt 5508 1896 L
-5508 1896 mt 5494 1884 L
-5494 1884 mt 5479 1869 L
-5479 1869 mt 5459 1852 L
-5459 1852 mt 5447 1841 L
-5447 1841 mt 5425 1823 L
-5425 1823 mt 5413 1814 L
-5413 1814 mt 5390 1795 L
-5390 1795 mt 5379 1786 L
-5379 1786 mt 5355 1767 L
-5355 1767 mt 5343 1759 L
-5343 1759 mt 5320 1743 L
-5320 1743 mt 5299 1731 L
-5299 1731 mt 5285 1725 L
-5285 1725 mt 5250 1716 L
-5250 1716 mt 5215 1713 L
-5215 1713 mt 5181 1715 L
-5181 1715 mt 5146 1720 L
-5146 1720 mt 5111 1726 L
-5111 1726 mt 5085 1731 L
-5085 1731 mt 5076 1733 L
-5076 1733 mt 5041 1740 L
-5041 1740 mt 5006 1744 L
-5006 1744 mt 4971 1740 L
-4971 1740 mt 4958 1731 L
-4958 1731 mt 4954 1704 L
-4954 1704 mt 4966 1676 L
-4966 1676 mt 4971 1665 L
-4971 1665 mt 4981 1649 L
-4981 1649 mt 4992 1621 L
-4992 1621 mt 4999 1594 L
-4999 1594 mt 4998 1566 L
-4998 1566 mt 4988 1539 L
-4988 1539 mt 4971 1514 L
-4971 1514 mt 4968 1511 L
-4968 1511 mt 4936 1487 L
-4936 1487 mt 4929 1484 L
-4929 1484 mt 4902 1472 L
-4902 1472 mt 4867 1464 L
-4867 1464 mt 4832 1463 L
-4832 1463 mt 4797 1463 L
-4797 1463 mt 4762 1463 L
-4762 1463 mt 4727 1461 L
-4727 1461 mt 4692 1457 L
-4692 1457 mt 4688 1456 L
-4688 1456 mt 4657 1448 L
-4657 1448 mt 4625 1428 L
-4625 1428 mt 4623 1426 L
-4623 1426 mt 4603 1401 L
-4603 1401 mt 4588 1374 L
-4588 1374 mt 4587 1373 L
-4587 1373 mt 4572 1346 L
-4572 1346 mt 4558 1318 L
-4558 1318 mt 4553 1308 L
-4553 1308 mt 4544 1291 L
-4544 1291 mt 4536 1263 L
-4536 1263 mt 4535 1236 L
-4535 1236 mt 4546 1208 L
-4546 1208 mt 4553 1196 L
-4553 1196 mt 4562 1181 L
-4562 1181 mt 4573 1153 L
-4573 1153 mt 4578 1126 L
-4578 1126 mt 4572 1098 L
-4572 1098 mt 4557 1071 L
-4557 1071 mt 4553 1065 L
-4553 1065 mt 4531 1043 L
-4531 1043 mt 4518 1032 L
-4518 1032 mt 4498 1016 L
-4498 1016 mt 4483 1005 L
-4483 1005 mt 4462 988 L
-4462 988 mt 4448 978 L
-4448 978 mt 4426 961 L
-4426 961 mt 4413 951 L
-4413 951 mt 4389 933 L
-4389 933 mt 4379 925 L
-4379 925 mt 4352 906 L
-4352 906 mt 4344 900 L
-4344 900 mt 4313 878 L
-4313 878 mt 4309 875 L
-4309 875 mt 4274 851 L
-4274 851 mt 4274 850 L
-4274 850 mt 4239 825 L
-4239 825 mt 4237 823 L
-4237 823 mt 4204 797 L
-4204 797 mt 4202 796 L
-4202 796 mt 4169 768 L
-4169 768 mt 4169 768 L
-4169 768 mt 4134 741 L
-4134 741 mt 4134 741 L
-4134 741 mt 4100 716 L
-4100 716 mt 4096 713 L
-4096 713 mt 4065 693 L
-4065 693 mt 4052 686 L
-4052 686 mt 4030 674 L
-4030 674 mt 3998 658 L
-3998 658 mt 3995 657 L
-3995 657 mt 3960 642 L
-3960 642 mt 3933 631 L
-3933 631 mt 3925 628 L
-3925 628 mt 3890 616 L
-3890 616 mt 3855 605 L
-3855 605 mt 3849 603 L
-3849 603 mt 3821 595 L
-3821 595 mt 3786 585 L
-3786 585 mt 3752 576 L
-3752 576 mt 3751 575 L
-3751 575 mt 3716 566 L
-3716 566 mt 3681 556 L
-3681 556 mt 3651 548 L
-3651 548 mt 3646 547 L
-3646 547 mt 3611 537 L
-3611 537 mt 3577 526 L
-3577 526 mt 3560 521 L
-3560 521 mt 3542 514 L
-3542 514 mt 3507 502 L
-3507 502 mt 3483 493 L
-3483 493 mt 3472 489 L
-3472 489 mt 3437 474 L
-3437 474 mt 3420 466 L
-3420 466 mt 3402 452 L
-3402 452 mt 3387 438 L
-3387 438 mt 3381 411 L
-3381 411 mt 3397 383 L
-3397 383 mt 3402 379 L
-3402 379 mt 3437 358 L
-3437 358 mt 3445 355 L
-3445 355 mt 3472 348 L
-3472 348 mt 3507 343 L
-3507 343 mt 3542 338 L
-3542 338 mt 3577 333 L
-3577 333 mt 3599 328 L
-3599 328 mt 3611 326 L
-3611 326 mt 3646 317 L
-3646 317 mt 3681 307 L
-3681 307 mt 3708 300 L
-3708 300 mt 3716 299 L
-3716 299 mt 3751 291 L
-3751 291 mt 3786 283 L
-3786 283 mt 3821 276 L
-3821 276 mt 3834 273 L
-3834 273 mt 3855 269 L
-3855 269 mt 3890 261 L
-3890 261 mt 3925 253 L
-3925 253 mt 3954 245 L
-3954 245 mt 3960 244 L
-3960 244 mt 3995 236 L
-3995 236 mt 4030 227 L
-4030 227 mt 4065 219 L
-4065 219 mt 4069 218 L
-4069 218 mt 4100 211 L
-4100 211 mt 4134 203 L
-4134 203 mt 4169 195 L
-4169 195 mt 4193 190 L
-4193 190 mt 4204 188 L
-4204 188 mt 4239 181 L
-4239 181 mt 4274 174 L
-4274 174 mt 4309 168 L
-4309 168 mt 4337 163 L
-4337 163 mt 4344 162 L
-4344 162 mt 4379 156 L
-4379 156 mt 4413 151 L
-4413 151 mt 4448 147 L
-4448 147 mt 4483 143 L
-4483 143 mt 4518 139 L
-4518 139 mt 4553 137 L
-4553 137 mt 4570 135 L
-4570 135 mt 4588 134 L
-4588 134 mt 4623 132 L
-4623 132 mt 4657 131 L
-4657 131 mt 4692 130 L
-4692 130 mt 4727 130 L
-4727 130 mt 4762 130 L
-4762 130 mt 4797 130 L
-4797 130 mt 4832 132 L
-4832 132 mt 4867 134 L
-4867 134 mt 4892 135 L
-4892 135 mt 4902 136 L
-4902 136 mt 4936 139 L
-4936 139 mt 4971 144 L
-4971 144 mt 5006 149 L
-5006 149 mt 5041 155 L
-5041 155 mt 5076 162 L
-5076 162 mt 5078 163 L
-5078 163 mt 5111 171 L
-5111 171 mt 5146 180 L
-5146 180 mt 5176 190 L
-5176 190 mt 5181 192 L
-5181 192 mt 5215 205 L
-5215 205 mt 5247 218 L
-5247 218 mt 5250 219 L
-5250 219 mt 5285 236 L
-5285 236 mt 5303 245 L
-5303 245 mt 5320 255 L
-5320 255 mt 5350 273 L
-5350 273 mt 5355 276 L
-5355 276 mt 5390 299 L
-5390 299 mt 5392 300 L
-5392 300 mt 5425 324 L
-5425 324 mt 5430 328 L
-5430 328 mt 5459 352 L
-5459 352 mt 5464 355 L
-5464 355 mt 5494 381 L
-5494 381 mt 5497 383 L
-5497 383 mt 5528 411 L
-5528 411 mt 5529 412 L
-5529 412 mt 5558 438 L
-5558 438 mt 5564 443 L
-5564 443 mt 5588 466 L
-5588 466 mt 5599 476 L
-5599 476 mt 5616 493 L
-5616 493 mt 5634 510 L
-5634 510 mt 5644 521 L
-5644 521 mt 5669 545 L
-5669 545 mt 5671 548 L
-5671 548 mt 5698 576 L
-5698 576 mt 5704 582 L
-5704 582 mt 5724 603 L
-5724 603 mt 5738 619 L
-5738 619 mt 5749 631 L
-5749 631 mt 5773 658 L
-5773 658 mt 5774 658 L
-5774 658 mt 5798 686 L
-5798 686 mt 5808 697 L
-5808 697 mt 5823 713 L
-5823 713 mt 5843 736 L
-5843 736 mt 5847 741 L
-5847 741 mt 5872 768 L
-5872 768 mt 5878 775 L
-5878 775 mt 5896 796 L
-5896 796 mt 5913 815 L
-5913 815 mt 5921 823 L
-5921 823 mt 5945 851 L
-5945 851 mt 5948 854 L
-5948 854 mt 5970 878 L
-5970 878 mt 5983 892 L
-5983 892 mt 5995 906 L
-5995 906 mt 6017 931 L
-6017 931 mt 6019 933 L
-6019 933 mt 6044 961 L
-6044 961 mt 6052 970 L
-6052 970 mt 6069 988 L
-6069 988 mt 6087 1009 L
-6087 1009 mt 6093 1016 L
-6093 1016 mt 6118 1043 L
-6118 1043 mt 6122 1048 L
-6122 1048 mt 6142 1071 L
-6142 1071 mt 6157 1087 L
-6157 1087 mt 6167 1098 L
-6167 1098 mt 6192 1126 L
-6192 1126 mt 6192 1126 L
-6192 1126 mt 6216 1153 L
-6216 1153 mt 6227 1165 L
-6227 1165 mt 6241 1181 L
-6241 1181 mt 6261 1204 L
-6261 1204 mt 6266 1208 L
-6266 1208 mt 6291 1236 L
-6291 1236 mt 6296 1242 L
-6296 1242 mt 6316 1263 L
-6316 1263 mt 6331 1281 L
-6331 1281 mt 6340 1291 L
-6340 1291 mt 6364 1318 L
-6364 1318 mt 6366 1320 L
-6366 1320 mt 6388 1346 L
-6388 1346 mt 6401 1362 L
-6401 1362 mt 6410 1373 L
-6410 1373 mt 6432 1401 L
-6432 1401 mt 6436 1406 L
-6436 1406 mt 6452 1428 L
-6452 1428 mt 6471 1454 L
-6471 1454 mt 6472 1456 L
-6472 1456 mt 6490 1484 L
-6490 1484 mt 6506 1509 L
-6506 1509 mt 6507 1511 L
-6507 1511 mt 6523 1539 L
-6523 1539 mt 6537 1566 L
-6537 1566 mt 6540 1573 L
-6540 1573 mt 6550 1594 L
-6550 1594 mt 6562 1621 L
-6562 1621 mt 6573 1649 L
-6573 1649 mt 6575 1656 L
-6575 1656 mt 6582 1676 L
-6582 1676 mt 6591 1704 L
-6591 1704 mt 6599 1731 L
-6599 1731 mt 6605 1759 L
-6605 1759 mt 6610 1784 L
- 752 2304 mt 762 2281 L
- 762 2281 mt 777 2254 L
- 777 2254 mt 787 2238 L
- 787 2238 mt 795 2226 L
- 795 2226 mt 816 2199 L
- 816 2199 mt 822 2192 L
- 822 2192 mt 841 2171 L
- 841 2171 mt 857 2153 L
- 857 2153 mt 868 2144 L
- 868 2144 mt 890 2116 L
- 890 2116 mt 892 2115 L
- 892 2115 mt 918 2089 L
- 918 2089 mt 926 2084 L
- 926 2084 mt 938 2089 L
- 938 2089 mt 961 2104 L
- 961 2104 mt 973 2116 L
- 973 2116 mt 995 2144 L
- 995 2144 mt 996 2145 L
- 996 2145 mt 1014 2171 L
-1014 2171 mt 1031 2197 L
-1031 2197 mt 1032 2199 L
-1032 2199 mt 1052 2226 L
-1052 2226 mt 1066 2244 L
-1066 2244 mt 1074 2254 L
-1074 2254 mt 1101 2278 L
-1101 2278 mt 1105 2281 L
-1105 2281 mt 1136 2301 L
-1136 2301 mt 1149 2309 L
-1149 2309 mt 1170 2319 L
-1170 2319 mt 1205 2333 L
-1205 2333 mt 1215 2336 L
-1215 2336 mt 1240 2346 L
-1240 2346 mt 1275 2360 L
-1275 2360 mt 1283 2364 L
-1283 2364 mt 1308 2391 L
-1308 2391 mt 1310 2405 L
-1310 2405 mt 1313 2419 L
-1313 2419 mt 1313 2446 L
-1313 2446 mt 1315 2474 L
-1315 2474 mt 1327 2502 L
-1327 2502 mt 1345 2520 L
-1345 2520 mt 1355 2529 L
-1355 2529 mt 1380 2545 L
-1380 2545 mt 1395 2557 L
-1395 2557 mt 1415 2571 L
-1415 2571 mt 1428 2584 L
-1428 2584 mt 1449 2610 L
-1449 2610 mt 1450 2612 L
-1450 2612 mt 1466 2639 L
-1466 2639 mt 1476 2667 L
-1476 2667 mt 1484 2691 L
-1484 2691 mt 1485 2694 L
-1485 2694 mt 1497 2722 L
-1497 2722 mt 1514 2749 L
-1514 2749 mt 1519 2755 L
-1519 2755 mt 1537 2777 L
-1537 2777 mt 1554 2794 L
-1554 2794 mt 1565 2804 L
-1565 2804 mt 1589 2826 L
-1589 2826 mt 1596 2832 L
-1596 2832 mt 1624 2857 L
-1624 2857 mt 1626 2859 L
-1626 2859 mt 1653 2887 L
-1653 2887 mt 1659 2894 L
-1659 2894 mt 1677 2914 L
-1677 2914 mt 1694 2934 L
-1694 2934 mt 1700 2942 L
-1700 2942 mt 1727 2969 L
-1727 2969 mt 1728 2970 L
-1728 2970 mt 1757 2997 L
-1757 2997 mt 1763 3003 L
-1763 3003 mt 1783 3024 L
-1783 3024 mt 1798 3049 L
-1798 3049 mt 1800 3052 L
-1800 3052 mt 1805 3079 L
-1805 3079 mt 1798 3093 L
-1798 3093 mt 1782 3107 L
-1782 3107 mt 1763 3112 L
-1763 3112 mt 1728 3108 L
-1728 3108 mt 1723 3107 L
-1723 3107 mt 1694 3097 L
-1694 3097 mt 1659 3086 L
-1659 3086 mt 1638 3079 L
-1638 3079 mt 1624 3074 L
-1624 3074 mt 1589 3063 L
-1589 3063 mt 1554 3055 L
-1554 3055 mt 1542 3052 L
-1542 3052 mt 1519 3045 L
-1519 3045 mt 1484 3036 L
-1484 3036 mt 1449 3027 L
-1449 3027 mt 1438 3024 L
-1438 3024 mt 1415 3019 L
-1415 3019 mt 1380 3012 L
-1380 3012 mt 1345 3005 L
-1345 3005 mt 1310 2999 L
-1310 2999 mt 1296 2997 L
-1296 2997 mt 1275 2993 L
-1275 2993 mt 1240 2983 L
-1240 2983 mt 1208 2969 L
-1208 2969 mt 1205 2968 L
-1205 2968 mt 1170 2945 L
-1170 2945 mt 1165 2942 L
-1165 2942 mt 1136 2924 L
-1136 2924 mt 1113 2914 L
-1113 2914 mt 1101 2909 L
-1101 2909 mt 1066 2897 L
-1066 2897 mt 1031 2888 L
-1031 2888 mt 1028 2887 L
-1028 2887 mt 996 2879 L
- 996 2879 mt 961 2869 L
- 961 2869 mt 934 2859 L
- 934 2859 mt 926 2856 L
- 926 2856 mt 892 2838 L
- 892 2838 mt 882 2832 L
- 882 2832 mt 857 2812 L
- 857 2812 mt 848 2804 L
- 848 2804 mt 822 2778 L
- 822 2778 mt 821 2777 L
- 821 2777 mt 799 2749 L
- 799 2749 mt 787 2731 L
- 787 2731 mt 781 2722 L
- 781 2722 mt 766 2694 L
- 766 2694 mt 754 2667 L
- 754 2667 mt 752 2662 L
- 752 2662 mt 744 2639 L
- 744 2639 mt 736 2612 L
- 736 2612 mt 730 2584 L
- 730 2584 mt 725 2557 L
- 725 2557 mt 722 2529 L
- 722 2529 mt 721 2502 L
- 721 2502 mt 720 2474 L
- 720 2474 mt 721 2446 L
- 721 2446 mt 723 2419 L
- 723 2419 mt 727 2391 L
- 727 2391 mt 733 2364 L
- 733 2364 mt 740 2336 L
- 740 2336 mt 750 2309 L
- 750 2309 mt 752 2304 L
- 892 1071 mt 898 1043 L
- 898 1043 mt 902 1016 L
- 902 1016 mt 901 988 L
- 901 988 mt 898 961 L
- 898 961 mt 895 933 L
- 895 933 mt 896 906 L
- 896 906 mt 899 878 L
- 899 878 mt 909 851 L
- 909 851 mt 924 823 L
- 924 823 mt 926 819 L
- 926 819 mt 939 796 L
- 939 796 mt 953 768 L
- 953 768 mt 961 756 L
- 961 756 mt 973 741 L
- 973 741 mt 996 713 L
- 996 713 mt 996 713 L
- 996 713 mt 1023 686 L
-1023 686 mt 1031 676 L
-1031 676 mt 1045 658 L
-1045 658 mt 1060 631 L
-1060 631 mt 1066 612 L
-1066 612 mt 1069 603 L
-1069 603 mt 1083 576 L
-1083 576 mt 1101 550 L
-1101 550 mt 1102 548 L
-1102 548 mt 1127 521 L
-1127 521 mt 1136 514 L
-1136 514 mt 1165 493 L
-1165 493 mt 1170 489 L
-1170 489 mt 1204 466 L
-1204 466 mt 1205 465 L
-1205 465 mt 1240 447 L
-1240 447 mt 1263 438 L
-1263 438 mt 1275 434 L
-1275 434 mt 1310 425 L
-1310 425 mt 1345 426 L
-1345 426 mt 1375 438 L
-1375 438 mt 1380 440 L
-1380 440 mt 1415 456 L
-1415 456 mt 1442 466 L
-1442 466 mt 1449 469 L
-1449 469 mt 1484 478 L
-1484 478 mt 1519 482 L
-1519 482 mt 1554 484 L
-1554 484 mt 1589 485 L
-1589 485 mt 1624 484 L
-1624 484 mt 1659 481 L
-1659 481 mt 1694 475 L
-1694 475 mt 1721 466 L
-1721 466 mt 1728 463 L
-1728 463 mt 1763 450 L
-1763 450 mt 1786 438 L
-1786 438 mt 1798 433 L
-1798 433 mt 1833 417 L
-1833 417 mt 1847 411 L
-1847 411 mt 1868 403 L
-1868 403 mt 1903 393 L
-1903 393 mt 1938 396 L
-1938 396 mt 1963 411 L
-1963 411 mt 1972 424 L
-1972 424 mt 1986 438 L
-1986 438 mt 1994 466 L
-1994 466 mt 1981 493 L
-1981 493 mt 1972 499 L
-1972 499 mt 1945 521 L
-1945 521 mt 1938 524 L
-1938 524 mt 1903 545 L
-1903 545 mt 1899 548 L
-1899 548 mt 1868 567 L
-1868 567 mt 1853 576 L
-1853 576 mt 1833 586 L
-1833 586 mt 1802 603 L
-1802 603 mt 1798 605 L
-1798 605 mt 1763 620 L
-1763 620 mt 1728 629 L
-1728 629 mt 1694 625 L
-1694 625 mt 1659 617 L
-1659 617 mt 1624 609 L
-1624 609 mt 1591 603 L
-1591 603 mt 1589 603 L
-1589 603 mt 1554 599 L
-1554 599 mt 1519 600 L
-1519 600 mt 1503 603 L
-1503 603 mt 1484 606 L
-1484 606 mt 1449 618 L
-1449 618 mt 1431 631 L
-1431 631 mt 1415 644 L
-1415 644 mt 1402 658 L
-1402 658 mt 1382 686 L
-1382 686 mt 1380 689 L
-1380 689 mt 1365 713 L
-1365 713 mt 1349 741 L
-1349 741 mt 1345 747 L
-1345 747 mt 1332 768 L
-1332 768 mt 1312 796 L
-1312 796 mt 1310 798 L
-1310 798 mt 1289 823 L
-1289 823 mt 1275 838 L
-1275 838 mt 1262 851 L
-1262 851 mt 1240 871 L
-1240 871 mt 1232 878 L
-1232 878 mt 1205 904 L
-1205 904 mt 1203 906 L
-1203 906 mt 1176 933 L
-1176 933 mt 1170 940 L
-1170 940 mt 1153 961 L
-1153 961 mt 1136 988 L
-1136 988 mt 1136 990 L
-1136 990 mt 1126 1016 L
-1126 1016 mt 1119 1043 L
-1119 1043 mt 1115 1071 L
-1115 1071 mt 1112 1098 L
-1112 1098 mt 1109 1126 L
-1109 1126 mt 1105 1153 L
-1105 1153 mt 1101 1181 L
-1101 1181 mt 1101 1183 L
-1101 1183 mt 1096 1208 L
-1096 1208 mt 1088 1236 L
-1088 1236 mt 1077 1263 L
-1077 1263 mt 1066 1281 L
-1066 1281 mt 1060 1291 L
-1060 1291 mt 1038 1318 L
-1038 1318 mt 1031 1325 L
-1031 1325 mt 1011 1346 L
-1011 1346 mt 996 1360 L
- 996 1360 mt 978 1373 L
- 978 1373 mt 961 1385 L
- 961 1385 mt 926 1396 L
- 926 1396 mt 893 1373 L
- 893 1373 mt 895 1346 L
- 895 1346 mt 896 1318 L
- 896 1318 mt 896 1291 L
- 896 1291 mt 892 1275 L
- 892 1275 mt 889 1263 L
- 889 1263 mt 881 1236 L
- 881 1236 mt 870 1208 L
- 870 1208 mt 865 1181 L
- 865 1181 mt 868 1153 L
- 868 1153 mt 875 1126 L
- 875 1126 mt 884 1098 L
- 884 1098 mt 892 1071 L
- 892 1071 mt 892 1071 L
-1833 4551 mt 1840 4537 L
-1840 4537 mt 1868 4512 L
-1868 4512 mt 1870 4510 L
-1870 4510 mt 1903 4486 L
-1903 4486 mt 1908 4482 L
-1908 4482 mt 1938 4462 L
-1938 4462 mt 1951 4455 L
-1951 4455 mt 1972 4443 L
-1972 4443 mt 2007 4435 L
-2007 4435 mt 2042 4440 L
-2042 4440 mt 2077 4454 L
-2077 4454 mt 2078 4455 L
-2078 4455 mt 2112 4472 L
-2112 4472 mt 2133 4482 L
-2133 4482 mt 2147 4489 L
-2147 4489 mt 2182 4506 L
-2182 4506 mt 2190 4510 L
-2190 4510 mt 2217 4522 L
-2217 4522 mt 2251 4537 L
-2251 4537 mt 2254 4537 L
-2254 4537 mt 2286 4556 L
-2286 4556 mt 2303 4565 L
-2303 4565 mt 2315 4592 L
-2315 4592 mt 2291 4620 L
-2291 4620 mt 2286 4622 L
-2286 4622 mt 2251 4638 L
-2251 4638 mt 2221 4648 L
-2221 4648 mt 2217 4649 L
-2217 4649 mt 2182 4656 L
-2182 4656 mt 2147 4659 L
-2147 4659 mt 2112 4659 L
-2112 4659 mt 2077 4656 L
-2077 4656 mt 2042 4652 L
-2042 4652 mt 2011 4648 L
-2011 4648 mt 2007 4647 L
-2007 4647 mt 1972 4640 L
-1972 4640 mt 1938 4632 L
-1938 4632 mt 1903 4622 L
-1903 4622 mt 1898 4620 L
-1898 4620 mt 1868 4606 L
-1868 4606 mt 1841 4592 L
-1841 4592 mt 1833 4579 L
-1833 4579 mt 1827 4565 L
-1827 4565 mt 1833 4551 L
-2077 3418 mt 2112 3433 L
-2112 3433 mt 2118 3437 L
-2118 3437 mt 2147 3453 L
-2147 3453 mt 2164 3464 L
-2164 3464 mt 2182 3475 L
-2182 3475 mt 2206 3492 L
-2206 3492 mt 2217 3500 L
-2217 3500 mt 2241 3519 L
-2241 3519 mt 2251 3528 L
-2251 3528 mt 2268 3547 L
-2268 3547 mt 2286 3574 L
-2286 3574 mt 2286 3575 L
-2286 3575 mt 2292 3602 L
-2292 3602 mt 2287 3630 L
-2287 3630 mt 2286 3630 L
-2286 3630 mt 2251 3656 L
-2251 3656 mt 2250 3657 L
-2250 3657 mt 2217 3665 L
-2217 3665 mt 2182 3665 L
-2182 3665 mt 2152 3657 L
-2152 3657 mt 2147 3654 L
-2147 3654 mt 2127 3630 L
-2127 3630 mt 2112 3607 L
-2112 3607 mt 2110 3602 L
-2110 3602 mt 2104 3575 L
-2104 3575 mt 2098 3547 L
-2098 3547 mt 2089 3519 L
-2089 3519 mt 2077 3493 L
-2077 3493 mt 2077 3492 L
-2077 3492 mt 2070 3464 L
-2070 3464 mt 2064 3437 L
-2064 3437 mt 2077 3418 L
-6575 1830 mt 6577 1841 L
-6577 1841 mt 6580 1869 L
-6580 1869 mt 6582 1896 L
-6582 1896 mt 6584 1924 L
-6584 1924 mt 6584 1951 L
-6584 1951 mt 6584 1979 L
-6584 1979 mt 6584 2006 L
-6584 2006 mt 6582 2034 L
-6582 2034 mt 6580 2061 L
-6580 2061 mt 6578 2089 L
-6578 2089 mt 6575 2108 L
-6575 2108 mt 6574 2116 L
-6574 2116 mt 6570 2144 L
-6570 2144 mt 6566 2171 L
-6566 2171 mt 6560 2199 L
-6560 2199 mt 6554 2226 L
-6554 2226 mt 6547 2254 L
-6547 2254 mt 6540 2279 L
-6540 2279 mt 6540 2281 L
-6540 2281 mt 6532 2309 L
-6532 2309 mt 6523 2336 L
-6523 2336 mt 6513 2364 L
-6513 2364 mt 6506 2384 L
-6506 2384 mt 6503 2391 L
-6503 2391 mt 6491 2419 L
-6491 2419 mt 6478 2446 L
-6478 2446 mt 6471 2460 L
-6471 2460 mt 6463 2474 L
-6463 2474 mt 6447 2502 L
-6447 2502 mt 6436 2517 L
-6436 2517 mt 6428 2529 L
-6428 2529 mt 6406 2557 L
-6406 2557 mt 6401 2562 L
-6401 2562 mt 6380 2584 L
-6380 2584 mt 6366 2597 L
-6366 2597 mt 6349 2612 L
-6349 2612 mt 6331 2626 L
-6331 2626 mt 6310 2639 L
-6310 2639 mt 6296 2648 L
-6296 2648 mt 6261 2664 L
-6261 2664 mt 6253 2667 L
-6253 2667 mt 6227 2674 L
-6227 2674 mt 6192 2677 L
-6192 2677 mt 6157 2676 L
-6157 2676 mt 6122 2675 L
-6122 2675 mt 6087 2675 L
-6087 2675 mt 6052 2678 L
-6052 2678 mt 6017 2682 L
-6017 2682 mt 5983 2689 L
-5983 2689 mt 5961 2694 L
-5961 2694 mt 5948 2697 L
-5948 2697 mt 5913 2705 L
-5913 2705 mt 5878 2710 L
-5878 2710 mt 5843 2711 L
-5843 2711 mt 5808 2708 L
-5808 2708 mt 5773 2700 L
-5773 2700 mt 5759 2694 L
-5759 2694 mt 5738 2684 L
-5738 2684 mt 5710 2667 L
-5710 2667 mt 5704 2661 L
-5704 2661 mt 5683 2639 L
-5683 2639 mt 5672 2612 L
-5672 2612 mt 5673 2584 L
-5673 2584 mt 5677 2557 L
-5677 2557 mt 5680 2529 L
-5680 2529 mt 5682 2502 L
-5682 2502 mt 5681 2474 L
-5681 2474 mt 5680 2446 L
-5680 2446 mt 5681 2419 L
-5681 2419 mt 5685 2391 L
-5685 2391 mt 5692 2364 L
-5692 2364 mt 5703 2336 L
-5703 2336 mt 5704 2334 L
-5704 2334 mt 5716 2309 L
-5716 2309 mt 5730 2281 L
-5730 2281 mt 5738 2266 L
-5738 2266 mt 5745 2254 L
-5745 2254 mt 5754 2226 L
-5754 2226 mt 5759 2199 L
-5759 2199 mt 5760 2171 L
-5760 2171 mt 5755 2144 L
-5755 2144 mt 5746 2116 L
-5746 2116 mt 5738 2102 L
-5738 2102 mt 5731 2089 L
-5731 2089 mt 5715 2061 L
-5715 2061 mt 5704 2044 L
-5704 2044 mt 5697 2034 L
-5697 2034 mt 5680 2006 L
-5680 2006 mt 5669 1989 L
-5669 1989 mt 5662 1979 L
-5662 1979 mt 5645 1951 L
-5645 1951 mt 5634 1936 L
-5634 1936 mt 5626 1924 L
-5626 1924 mt 5604 1896 L
-5604 1896 mt 5599 1890 L
-5599 1890 mt 5579 1869 L
-5579 1869 mt 5564 1856 L
-5564 1856 mt 5546 1841 L
-5546 1841 mt 5529 1829 L
-5529 1829 mt 5507 1814 L
-5507 1814 mt 5494 1806 L
-5494 1806 mt 5466 1786 L
-5466 1786 mt 5459 1782 L
-5459 1782 mt 5430 1759 L
-5430 1759 mt 5425 1754 L
-5425 1754 mt 5396 1731 L
-5396 1731 mt 5390 1727 L
-5390 1727 mt 5357 1704 L
-5357 1704 mt 5355 1703 L
-5355 1703 mt 5320 1684 L
-5320 1684 mt 5295 1676 L
-5295 1676 mt 5285 1673 L
-5285 1673 mt 5250 1669 L
-5250 1669 mt 5215 1669 L
-5215 1669 mt 5181 1673 L
-5181 1673 mt 5155 1676 L
-5155 1676 mt 5146 1677 L
-5146 1677 mt 5111 1681 L
-5111 1681 mt 5076 1680 L
-5076 1680 mt 5058 1676 L
-5058 1676 mt 5041 1649 L
-5041 1649 mt 5044 1621 L
-5044 1621 mt 5047 1594 L
-5047 1594 mt 5049 1566 L
-5049 1566 mt 5045 1539 L
-5045 1539 mt 5041 1526 L
-5041 1526 mt 5035 1511 L
-5035 1511 mt 5014 1484 L
-5014 1484 mt 5006 1476 L
-5006 1476 mt 4979 1456 L
-4979 1456 mt 4971 1451 L
-4971 1451 mt 4936 1435 L
-4936 1435 mt 4917 1428 L
-4917 1428 mt 4902 1424 L
-4902 1424 mt 4867 1418 L
-4867 1418 mt 4832 1416 L
-4832 1416 mt 4797 1416 L
-4797 1416 mt 4762 1415 L
-4762 1415 mt 4727 1409 L
-4727 1409 mt 4703 1401 L
-4703 1401 mt 4692 1396 L
-4692 1396 mt 4662 1373 L
-4662 1373 mt 4657 1368 L
-4657 1368 mt 4641 1346 L
-4641 1346 mt 4627 1318 L
-4627 1318 mt 4623 1306 L
-4623 1306 mt 4617 1291 L
-4617 1291 mt 4614 1263 L
-4614 1263 mt 4619 1236 L
-4619 1236 mt 4623 1229 L
-4623 1229 mt 4634 1208 L
-4634 1208 mt 4653 1181 L
-4653 1181 mt 4657 1174 L
-4657 1174 mt 4670 1153 L
-4670 1153 mt 4680 1126 L
-4680 1126 mt 4683 1098 L
-4683 1098 mt 4678 1071 L
-4678 1071 mt 4666 1043 L
-4666 1043 mt 4657 1031 L
-4657 1031 mt 4645 1016 L
-4645 1016 mt 4623 992 L
-4623 992 mt 4619 988 L
-4619 988 mt 4589 961 L
-4589 961 mt 4588 959 L
-4588 959 mt 4560 933 L
-4560 933 mt 4553 926 L
-4553 926 mt 4532 906 L
-4532 906 mt 4518 891 L
-4518 891 mt 4505 878 L
-4505 878 mt 4483 856 L
-4483 856 mt 4478 851 L
-4478 851 mt 4449 823 L
-4449 823 mt 4448 823 L
-4448 823 mt 4417 796 L
-4417 796 mt 4413 792 L
-4413 792 mt 4383 768 L
-4383 768 mt 4379 765 L
-4379 765 mt 4347 741 L
-4347 741 mt 4344 738 L
-4344 738 mt 4310 713 L
-4310 713 mt 4309 712 L
-4309 712 mt 4274 687 L
-4274 687 mt 4272 686 L
-4272 686 mt 4239 663 L
-4239 663 mt 4231 658 L
-4231 658 mt 4204 641 L
-4204 641 mt 4186 631 L
-4186 631 mt 4169 622 L
-4169 622 mt 4134 606 L
-4134 606 mt 4128 603 L
-4128 603 mt 4100 592 L
-4100 592 mt 4065 580 L
-4065 580 mt 4053 576 L
-4053 576 mt 4030 568 L
-4030 568 mt 3995 557 L
-3995 557 mt 3966 548 L
-3966 548 mt 3960 546 L
-3960 546 mt 3925 536 L
-3925 536 mt 3890 526 L
-3890 526 mt 3866 521 L
-3866 521 mt 3855 518 L
-3855 518 mt 3821 510 L
-3821 510 mt 3786 502 L
-3786 502 mt 3751 493 L
-3751 493 mt 3751 493 L
-3751 493 mt 3716 482 L
-3716 482 mt 3681 467 L
-3681 467 mt 3678 466 L
-3678 466 mt 3651 438 L
-3651 438 mt 3655 411 L
-3655 411 mt 3681 385 L
-3681 385 mt 3682 383 L
-3682 383 mt 3716 362 L
-3716 362 mt 3736 355 L
-3736 355 mt 3751 351 L
-3751 351 mt 3786 344 L
-3786 344 mt 3821 339 L
-3821 339 mt 3855 332 L
-3855 332 mt 3872 328 L
-3872 328 mt 3890 324 L
-3890 324 mt 3925 314 L
-3925 314 mt 3960 303 L
-3960 303 mt 3967 300 L
-3967 300 mt 3995 292 L
-3995 292 mt 4030 282 L
-4030 282 mt 4061 273 L
-4061 273 mt 4065 272 L
-4065 272 mt 4100 263 L
-4100 263 mt 4134 253 L
-4134 253 mt 4165 245 L
-4165 245 mt 4169 244 L
-4169 244 mt 4204 236 L
-4204 236 mt 4239 227 L
-4239 227 mt 4274 219 L
-4274 219 mt 4279 218 L
-4279 218 mt 4309 212 L
-4309 212 mt 4344 204 L
-4344 204 mt 4379 198 L
-4379 198 mt 4413 191 L
-4413 191 mt 4419 190 L
-4419 190 mt 4448 186 L
-4448 186 mt 4483 181 L
-4483 181 mt 4518 176 L
-4518 176 mt 4553 173 L
-4553 173 mt 4588 169 L
-4588 169 mt 4623 167 L
-4623 167 mt 4657 164 L
-4657 164 mt 4688 163 L
-4688 163 mt 4692 163 L
-4692 163 mt 4727 161 L
-4727 161 mt 4762 161 L
-4762 161 mt 4797 160 L
-4797 160 mt 4832 161 L
-4832 161 mt 4867 162 L
-4867 162 mt 4889 163 L
-4889 163 mt 4902 164 L
-4902 164 mt 4936 166 L
-4936 166 mt 4971 170 L
-4971 170 mt 5006 174 L
-5006 174 mt 5041 180 L
-5041 180 mt 5076 187 L
-5076 187 mt 5091 190 L
-5091 190 mt 5111 195 L
-5111 195 mt 5146 205 L
-5146 205 mt 5181 216 L
-5181 216 mt 5185 218 L
-5185 218 mt 5215 230 L
-5215 230 mt 5250 245 L
-5250 245 mt 5251 245 L
-5251 245 mt 5285 263 L
-5285 263 mt 5304 273 L
-5304 273 mt 5320 283 L
-5320 283 mt 5348 300 L
-5348 300 mt 5355 305 L
-5355 305 mt 5387 328 L
-5387 328 mt 5390 330 L
-5390 330 mt 5423 355 L
-5423 355 mt 5425 357 L
-5425 357 mt 5456 383 L
-5456 383 mt 5459 386 L
-5459 386 mt 5487 411 L
-5487 411 mt 5494 417 L
-5494 417 mt 5517 438 L
-5517 438 mt 5529 449 L
-5529 449 mt 5547 466 L
-5547 466 mt 5564 482 L
-5564 482 mt 5575 493 L
-5575 493 mt 5599 517 L
-5599 517 mt 5603 521 L
-5603 521 mt 5630 548 L
-5630 548 mt 5634 552 L
-5634 552 mt 5656 576 L
-5656 576 mt 5669 589 L
-5669 589 mt 5682 603 L
-5682 603 mt 5704 627 L
-5704 627 mt 5707 631 L
-5707 631 mt 5732 658 L
-5732 658 mt 5738 666 L
-5738 666 mt 5756 686 L
-5756 686 mt 5773 706 L
-5773 706 mt 5779 713 L
-5779 713 mt 5803 741 L
-5803 741 mt 5808 746 L
-5808 746 mt 5827 768 L
-5827 768 mt 5843 786 L
-5843 786 mt 5851 796 L
-5851 796 mt 5875 823 L
-5875 823 mt 5878 826 L
-5878 826 mt 5900 851 L
-5900 851 mt 5913 866 L
-5913 866 mt 5924 878 L
-5924 878 mt 5948 905 L
-5948 905 mt 5948 906 L
-5948 906 mt 5973 933 L
-5973 933 mt 5983 944 L
-5983 944 mt 5998 961 L
-5998 961 mt 6017 983 L
-6017 983 mt 6022 988 L
-6022 988 mt 6047 1016 L
-6047 1016 mt 6052 1022 L
-6052 1022 mt 6071 1043 L
-6071 1043 mt 6087 1061 L
-6087 1061 mt 6096 1071 L
-6096 1071 mt 6120 1098 L
-6120 1098 mt 6122 1101 L
-6122 1101 mt 6144 1126 L
-6144 1126 mt 6157 1140 L
-6157 1140 mt 6169 1153 L
-6169 1153 mt 6192 1179 L
-6192 1179 mt 6194 1181 L
-6194 1181 mt 6218 1208 L
-6218 1208 mt 6227 1218 L
-6227 1218 mt 6243 1236 L
-6243 1236 mt 6261 1256 L
-6261 1256 mt 6268 1263 L
-6268 1263 mt 6293 1291 L
-6293 1291 mt 6296 1295 L
-6296 1295 mt 6317 1318 L
-6317 1318 mt 6331 1334 L
-6331 1334 mt 6342 1346 L
-6342 1346 mt 6365 1373 L
-6365 1373 mt 6366 1375 L
-6366 1375 mt 6387 1401 L
-6387 1401 mt 6401 1419 L
-6401 1419 mt 6409 1428 L
-6409 1428 mt 6429 1456 L
-6429 1456 mt 6436 1466 L
-6436 1466 mt 6448 1484 L
-6448 1484 mt 6465 1511 L
-6465 1511 mt 6471 1521 L
-6471 1521 mt 6481 1539 L
-6481 1539 mt 6496 1566 L
-6496 1566 mt 6506 1586 L
-6506 1586 mt 6509 1594 L
-6509 1594 mt 6521 1621 L
-6521 1621 mt 6532 1649 L
-6532 1649 mt 6540 1673 L
-6540 1673 mt 6541 1676 L
-6541 1676 mt 6550 1704 L
-6550 1704 mt 6557 1731 L
-6557 1731 mt 6563 1759 L
-6563 1759 mt 6569 1786 L
-6569 1786 mt 6573 1814 L
-6573 1814 mt 6575 1830 L
- 787 2363 mt 797 2336 L
- 797 2336 mt 811 2309 L
- 811 2309 mt 822 2292 L
- 822 2292 mt 830 2281 L
- 830 2281 mt 855 2254 L
- 855 2254 mt 857 2253 L
- 857 2253 mt 892 2228 L
- 892 2228 mt 897 2226 L
- 897 2226 mt 926 2216 L
- 926 2216 mt 955 2226 L
- 955 2226 mt 961 2228 L
- 961 2228 mt 992 2254 L
- 992 2254 mt 996 2257 L
- 996 2257 mt 1021 2281 L
-1021 2281 mt 1031 2290 L
-1031 2290 mt 1054 2309 L
-1054 2309 mt 1066 2318 L
-1066 2318 mt 1092 2336 L
-1092 2336 mt 1101 2342 L
-1101 2342 mt 1136 2363 L
-1136 2363 mt 1138 2364 L
-1138 2364 mt 1170 2384 L
-1170 2384 mt 1182 2391 L
-1182 2391 mt 1201 2419 L
-1201 2419 mt 1205 2446 L
-1205 2446 mt 1205 2474 L
-1205 2474 mt 1205 2476 L
-1205 2476 mt 1208 2502 L
-1208 2502 mt 1218 2529 L
-1218 2529 mt 1238 2557 L
-1238 2557 mt 1240 2559 L
-1240 2559 mt 1275 2583 L
-1275 2583 mt 1277 2584 L
-1277 2584 mt 1310 2600 L
-1310 2600 mt 1332 2612 L
-1332 2612 mt 1345 2619 L
-1345 2619 mt 1371 2639 L
-1371 2639 mt 1380 2648 L
-1380 2648 mt 1394 2667 L
-1394 2667 mt 1410 2694 L
-1410 2694 mt 1415 2703 L
-1415 2703 mt 1423 2722 L
-1423 2722 mt 1438 2749 L
-1438 2749 mt 1449 2767 L
-1449 2767 mt 1457 2777 L
-1457 2777 mt 1480 2804 L
-1480 2804 mt 1484 2809 L
-1484 2809 mt 1506 2832 L
-1506 2832 mt 1519 2846 L
-1519 2846 mt 1532 2859 L
-1532 2859 mt 1554 2887 L
-1554 2887 mt 1554 2887 L
-1554 2887 mt 1570 2914 L
-1570 2914 mt 1581 2942 L
-1581 2942 mt 1578 2969 L
-1578 2969 mt 1554 2983 L
-1554 2983 mt 1519 2985 L
-1519 2985 mt 1484 2982 L
-1484 2982 mt 1449 2978 L
-1449 2978 mt 1415 2974 L
-1415 2974 mt 1385 2969 L
-1385 2969 mt 1380 2968 L
-1380 2968 mt 1345 2961 L
-1345 2961 mt 1310 2953 L
-1310 2953 mt 1275 2942 L
-1275 2942 mt 1275 2942 L
-1275 2942 mt 1240 2924 L
-1240 2924 mt 1226 2914 L
-1226 2914 mt 1205 2901 L
-1205 2901 mt 1181 2887 L
-1181 2887 mt 1170 2881 L
-1170 2881 mt 1136 2868 L
-1136 2868 mt 1108 2859 L
-1108 2859 mt 1101 2857 L
-1101 2857 mt 1066 2848 L
-1066 2848 mt 1031 2842 L
-1031 2842 mt 996 2837 L
- 996 2837 mt 969 2832 L
- 969 2832 mt 961 2830 L
- 961 2830 mt 926 2819 L
- 926 2819 mt 900 2804 L
- 900 2804 mt 892 2799 L
- 892 2799 mt 867 2777 L
- 867 2777 mt 857 2765 L
- 857 2765 mt 843 2749 L
- 843 2749 mt 823 2722 L
- 823 2722 mt 822 2720 L
- 822 2720 mt 807 2694 L
- 807 2694 mt 795 2667 L
- 795 2667 mt 787 2644 L
- 787 2644 mt 785 2639 L
- 785 2639 mt 778 2612 L
- 778 2612 mt 773 2584 L
- 773 2584 mt 770 2557 L
- 770 2557 mt 768 2529 L
- 768 2529 mt 768 2502 L
- 768 2502 mt 768 2474 L
- 768 2474 mt 770 2446 L
- 770 2446 mt 774 2419 L
- 774 2419 mt 779 2391 L
- 779 2391 mt 787 2364 L
- 787 2364 mt 787 2363 L
- 926 1167 mt 932 1153 L
- 932 1153 mt 952 1126 L
- 952 1126 mt 961 1110 L
- 961 1110 mt 978 1098 L
- 978 1098 mt 996 1072 L
- 996 1072 mt 1013 1098 L
-1013 1098 mt 1007 1126 L
-1007 1126 mt 996 1148 L
- 996 1148 mt 992 1153 L
- 992 1153 mt 962 1181 L
- 962 1181 mt 961 1181 L
- 961 1181 mt 926 1184 L
- 926 1184 mt 924 1181 L
- 924 1181 mt 926 1167 L
- 961 857 mt 963 851 L
- 963 851 mt 977 823 L
- 977 823 mt 991 796 L
- 991 796 mt 996 786 L
- 996 786 mt 1007 768 L
-1007 768 mt 1029 741 L
-1029 741 mt 1031 739 L
-1031 739 mt 1056 713 L
-1056 713 mt 1066 703 L
-1066 703 mt 1083 686 L
-1083 686 mt 1100 658 L
-1100 658 mt 1101 655 L
-1101 655 mt 1107 631 L
-1107 631 mt 1115 603 L
-1115 603 mt 1130 576 L
-1130 576 mt 1136 569 L
-1136 569 mt 1153 548 L
-1153 548 mt 1170 533 L
-1170 533 mt 1187 521 L
-1187 521 mt 1205 508 L
-1205 508 mt 1231 493 L
-1231 493 mt 1240 488 L
-1240 488 mt 1275 476 L
-1275 476 mt 1310 479 L
-1310 479 mt 1333 493 L
-1333 493 mt 1345 512 L
-1345 512 mt 1349 521 L
-1349 521 mt 1348 548 L
-1348 548 mt 1345 560 L
-1345 560 mt 1341 576 L
-1341 576 mt 1335 603 L
-1335 603 mt 1328 631 L
-1328 631 mt 1318 658 L
-1318 658 mt 1310 676 L
-1310 676 mt 1306 686 L
-1306 686 mt 1291 713 L
-1291 713 mt 1275 737 L
-1275 737 mt 1273 741 L
-1273 741 mt 1252 768 L
-1252 768 mt 1240 782 L
-1240 782 mt 1228 796 L
-1228 796 mt 1205 822 L
-1205 822 mt 1204 823 L
-1204 823 mt 1177 851 L
-1177 851 mt 1170 857 L
-1170 857 mt 1150 878 L
-1150 878 mt 1136 893 L
-1136 893 mt 1122 906 L
-1122 906 mt 1101 927 L
-1101 927 mt 1093 933 L
-1093 933 mt 1069 961 L
-1069 961 mt 1066 966 L
-1066 966 mt 1044 988 L
-1044 988 mt 1033 1016 L
-1033 1016 mt 1031 1028 L
-1031 1028 mt 1023 1016 L
-1023 1016 mt 996 992 L
- 996 992 mt 995 988 L
- 995 988 mt 978 961 L
- 978 961 mt 961 943 L
- 961 943 mt 956 933 L
- 956 933 mt 950 906 L
- 950 906 mt 954 878 L
- 954 878 mt 961 857 L
-1938 4524 mt 1959 4510 L
-1959 4510 mt 1972 4503 L
-1972 4503 mt 2007 4492 L
-2007 4492 mt 2042 4493 L
-2042 4493 mt 2077 4503 L
-2077 4503 mt 2094 4510 L
-2094 4510 mt 2112 4518 L
-2112 4518 mt 2147 4534 L
-2147 4534 mt 2155 4537 L
-2155 4537 mt 2182 4553 L
-2182 4553 mt 2202 4565 L
-2202 4565 mt 2212 4592 L
-2212 4592 mt 2182 4616 L
-2182 4616 mt 2175 4620 L
-2175 4620 mt 2147 4626 L
-2147 4626 mt 2112 4625 L
-2112 4625 mt 2077 4620 L
-2077 4620 mt 2074 4620 L
-2074 4620 mt 2042 4614 L
-2042 4614 mt 2007 4610 L
-2007 4610 mt 1972 4605 L
-1972 4605 mt 1938 4592 L
-1938 4592 mt 1938 4592 L
-1938 4592 mt 1904 4565 L
-1904 4565 mt 1921 4537 L
-1921 4537 mt 1938 4524 L
-6506 1692 mt 6509 1704 L
-6509 1704 mt 6516 1731 L
-6516 1731 mt 6522 1759 L
-6522 1759 mt 6527 1786 L
-6527 1786 mt 6531 1814 L
-6531 1814 mt 6534 1841 L
-6534 1841 mt 6537 1869 L
-6537 1869 mt 6539 1896 L
-6539 1896 mt 6540 1924 L
-6540 1924 mt 6540 1951 L
-6540 1951 mt 6540 1979 L
-6540 1979 mt 6539 2006 L
-6539 2006 mt 6537 2034 L
-6537 2034 mt 6534 2061 L
-6534 2061 mt 6531 2089 L
-6531 2089 mt 6527 2116 L
-6527 2116 mt 6523 2144 L
-6523 2144 mt 6518 2171 L
-6518 2171 mt 6512 2199 L
-6512 2199 mt 6506 2226 L
-6506 2226 mt 6506 2228 L
-6506 2228 mt 6499 2254 L
-6499 2254 mt 6491 2281 L
-6491 2281 mt 6483 2309 L
-6483 2309 mt 6474 2336 L
-6474 2336 mt 6471 2346 L
-6471 2346 mt 6464 2364 L
-6464 2364 mt 6453 2391 L
-6453 2391 mt 6441 2419 L
-6441 2419 mt 6436 2429 L
-6436 2429 mt 6427 2446 L
-6427 2446 mt 6411 2474 L
-6411 2474 mt 6401 2489 L
-6401 2489 mt 6392 2502 L
-6392 2502 mt 6370 2529 L
-6370 2529 mt 6366 2534 L
-6366 2534 mt 6344 2557 L
-6344 2557 mt 6331 2568 L
-6331 2568 mt 6311 2584 L
-6311 2584 mt 6296 2594 L
-6296 2594 mt 6266 2612 L
-6266 2612 mt 6261 2614 L
-6261 2614 mt 6227 2624 L
-6227 2624 mt 6192 2626 L
-6192 2626 mt 6157 2625 L
-6157 2625 mt 6122 2624 L
-6122 2624 mt 6087 2625 L
-6087 2625 mt 6052 2627 L
-6052 2627 mt 6017 2630 L
-6017 2630 mt 5983 2634 L
-5983 2634 mt 5948 2635 L
-5948 2635 mt 5913 2634 L
-5913 2634 mt 5878 2628 L
-5878 2628 mt 5843 2616 L
-5843 2616 mt 5832 2612 L
-5832 2612 mt 5808 2600 L
-5808 2600 mt 5787 2584 L
-5787 2584 mt 5773 2570 L
-5773 2570 mt 5765 2557 L
-5765 2557 mt 5756 2529 L
-5756 2529 mt 5751 2502 L
-5751 2502 mt 5747 2474 L
-5747 2474 mt 5742 2446 L
-5742 2446 mt 5741 2419 L
-5741 2419 mt 5745 2391 L
-5745 2391 mt 5752 2364 L
-5752 2364 mt 5763 2336 L
-5763 2336 mt 5773 2315 L
-5773 2315 mt 5777 2309 L
-5777 2309 mt 5792 2281 L
-5792 2281 mt 5807 2254 L
-5807 2254 mt 5808 2251 L
-5808 2251 mt 5818 2226 L
-5818 2226 mt 5826 2199 L
-5826 2199 mt 5833 2171 L
-5833 2171 mt 5837 2144 L
-5837 2144 mt 5834 2116 L
-5834 2116 mt 5826 2089 L
-5826 2089 mt 5816 2061 L
-5816 2061 mt 5808 2045 L
-5808 2045 mt 5801 2034 L
-5801 2034 mt 5784 2006 L
-5784 2006 mt 5773 1990 L
-5773 1990 mt 5766 1979 L
-5766 1979 mt 5747 1951 L
-5747 1951 mt 5738 1940 L
-5738 1940 mt 5727 1924 L
-5727 1924 mt 5708 1896 L
-5708 1896 mt 5704 1890 L
-5704 1890 mt 5688 1869 L
-5688 1869 mt 5669 1845 L
-5669 1845 mt 5666 1841 L
-5666 1841 mt 5639 1814 L
-5639 1814 mt 5634 1809 L
-5634 1809 mt 5601 1786 L
-5601 1786 mt 5599 1785 L
-5599 1785 mt 5564 1766 L
-5564 1766 mt 5548 1759 L
-5548 1759 mt 5529 1749 L
-5529 1749 mt 5498 1731 L
-5498 1731 mt 5494 1729 L
-5494 1729 mt 5459 1708 L
-5459 1708 mt 5453 1704 L
-5453 1704 mt 5425 1685 L
-5425 1685 mt 5411 1676 L
-5411 1676 mt 5390 1663 L
-5390 1663 mt 5361 1649 L
-5361 1649 mt 5355 1646 L
-5355 1646 mt 5320 1634 L
-5320 1634 mt 5285 1627 L
-5285 1627 mt 5250 1624 L
-5250 1624 mt 5215 1623 L
-5215 1623 mt 5181 1624 L
-5181 1624 mt 5146 1623 L
-5146 1623 mt 5133 1621 L
-5133 1621 mt 5111 1609 L
-5111 1609 mt 5105 1594 L
-5105 1594 mt 5105 1566 L
-5105 1566 mt 5103 1539 L
-5103 1539 mt 5096 1511 L
-5096 1511 mt 5083 1484 L
-5083 1484 mt 5076 1473 L
-5076 1473 mt 5062 1456 L
-5062 1456 mt 5041 1436 L
-5041 1436 mt 5032 1428 L
-5032 1428 mt 5006 1410 L
-5006 1410 mt 4990 1401 L
-4990 1401 mt 4971 1391 L
-4971 1391 mt 4936 1376 L
-4936 1376 mt 4927 1373 L
-4927 1373 mt 4902 1365 L
-4902 1365 mt 4867 1357 L
-4867 1357 mt 4832 1351 L
-4832 1351 mt 4797 1347 L
-4797 1347 mt 4788 1346 L
-4788 1346 mt 4762 1342 L
-4762 1342 mt 4727 1329 L
-4727 1329 mt 4714 1318 L
-4714 1318 mt 4695 1291 L
-4695 1291 mt 4693 1263 L
-4693 1263 mt 4704 1236 L
-4704 1236 mt 4720 1208 L
-4720 1208 mt 4727 1197 L
-4727 1197 mt 4739 1181 L
-4739 1181 mt 4754 1153 L
-4754 1153 mt 4762 1131 L
-4762 1131 mt 4764 1126 L
-4764 1126 mt 4770 1098 L
-4770 1098 mt 4770 1071 L
-4770 1071 mt 4766 1043 L
-4766 1043 mt 4762 1034 L
-4762 1034 mt 4754 1016 L
-4754 1016 mt 4736 988 L
-4736 988 mt 4727 976 L
-4727 976 mt 4714 961 L
-4714 961 mt 4692 938 L
-4692 938 mt 4687 933 L
-4687 933 mt 4659 906 L
-4659 906 mt 4657 904 L
-4657 904 mt 4632 878 L
-4632 878 mt 4623 869 L
-4623 869 mt 4606 851 L
-4606 851 mt 4588 832 L
-4588 832 mt 4580 823 L
-4580 823 mt 4553 796 L
-4553 796 mt 4553 795 L
-4553 795 mt 4526 768 L
-4526 768 mt 4518 761 L
-4518 761 mt 4496 741 L
-4496 741 mt 4483 729 L
-4483 729 mt 4465 713 L
-4465 713 mt 4448 699 L
-4448 699 mt 4431 686 L
-4431 686 mt 4413 672 L
-4413 672 mt 4395 658 L
-4395 658 mt 4379 645 L
-4379 645 mt 4358 631 L
-4358 631 mt 4344 620 L
-4344 620 mt 4319 603 L
-4319 603 mt 4309 597 L
-4309 597 mt 4274 577 L
-4274 577 mt 4271 576 L
-4271 576 mt 4239 561 L
-4239 561 mt 4210 548 L
-4210 548 mt 4204 546 L
-4204 546 mt 4169 533 L
-4169 533 mt 4134 522 L
-4134 522 mt 4131 521 L
-4131 521 mt 4100 511 L
-4100 511 mt 4065 500 L
-4065 500 mt 4042 493 L
-4042 493 mt 4030 488 L
-4030 488 mt 3995 475 L
-3995 475 mt 3973 466 L
-3973 466 mt 3960 456 L
-3960 456 mt 3934 438 L
-3934 438 mt 3934 411 L
-3934 411 mt 3959 383 L
-3959 383 mt 3960 382 L
-3960 382 mt 3995 358 L
-3995 358 mt 4001 355 L
-4001 355 mt 4030 343 L
-4030 343 mt 4065 331 L
-4065 331 mt 4075 328 L
-4075 328 mt 4100 320 L
-4100 320 mt 4134 308 L
-4134 308 mt 4159 300 L
-4159 300 mt 4169 297 L
-4169 297 mt 4204 287 L
-4204 287 mt 4239 277 L
-4239 277 mt 4251 273 L
-4251 273 mt 4274 267 L
-4274 267 mt 4309 257 L
-4309 257 mt 4344 248 L
-4344 248 mt 4355 245 L
-4355 245 mt 4379 240 L
-4379 240 mt 4413 232 L
-4413 232 mt 4448 226 L
-4448 226 mt 4483 219 L
-4483 219 mt 4492 218 L
-4492 218 mt 4518 214 L
-4518 214 mt 4553 209 L
-4553 209 mt 4588 205 L
-4588 205 mt 4623 201 L
-4623 201 mt 4657 198 L
-4657 198 mt 4692 195 L
-4692 195 mt 4727 193 L
-4727 193 mt 4762 191 L
-4762 191 mt 4791 190 L
-4791 190 mt 4797 190 L
-4797 190 mt 4832 190 L
-4832 190 mt 4867 190 L
-4867 190 mt 4898 190 L
-4898 190 mt 4902 190 L
-4902 190 mt 4936 192 L
-4936 192 mt 4971 195 L
-4971 195 mt 5006 199 L
-5006 199 mt 5041 204 L
-5041 204 mt 5076 211 L
-5076 211 mt 5107 218 L
-5107 218 mt 5111 219 L
-5111 219 mt 5146 228 L
-5146 228 mt 5181 240 L
-5181 240 mt 5194 245 L
-5194 245 mt 5215 254 L
-5215 254 mt 5250 270 L
-5250 270 mt 5255 273 L
-5255 273 mt 5285 289 L
-5285 289 mt 5304 300 L
-5304 300 mt 5320 311 L
-5320 311 mt 5346 328 L
-5346 328 mt 5355 335 L
-5355 335 mt 5382 355 L
-5382 355 mt 5390 362 L
-5390 362 mt 5416 383 L
-5416 383 mt 5425 391 L
-5425 391 mt 5447 411 L
-5447 411 mt 5459 422 L
-5459 422 mt 5477 438 L
-5477 438 mt 5494 454 L
-5494 454 mt 5506 466 L
-5506 466 mt 5529 488 L
-5529 488 mt 5535 493 L
-5535 493 mt 5562 521 L
-5562 521 mt 5564 522 L
-5564 522 mt 5589 548 L
-5589 548 mt 5599 558 L
-5599 558 mt 5616 576 L
-5616 576 mt 5634 595 L
-5634 595 mt 5641 603 L
-5641 603 mt 5666 631 L
-5666 631 mt 5669 634 L
-5669 634 mt 5690 658 L
-5690 658 mt 5704 675 L
-5704 675 mt 5713 686 L
-5713 686 mt 5736 713 L
-5736 713 mt 5738 716 L
-5738 716 mt 5760 741 L
-5760 741 mt 5773 757 L
-5773 757 mt 5783 768 L
-5783 768 mt 5806 796 L
-5806 796 mt 5808 798 L
-5808 798 mt 5830 823 L
-5830 823 mt 5843 839 L
-5843 839 mt 5854 851 L
-5854 851 mt 5878 878 L
-5878 878 mt 5878 878 L
-5878 878 mt 5902 906 L
-5902 906 mt 5913 918 L
-5913 918 mt 5926 933 L
-5926 933 mt 5948 957 L
-5948 957 mt 5951 961 L
-5951 961 mt 5975 988 L
-5975 988 mt 5983 996 L
-5983 996 mt 6000 1016 L
-6000 1016 mt 6017 1035 L
-6017 1035 mt 6024 1043 L
-6024 1043 mt 6049 1071 L
-6049 1071 mt 6052 1075 L
-6052 1075 mt 6073 1098 L
-6073 1098 mt 6087 1115 L
-6087 1115 mt 6097 1126 L
-6097 1126 mt 6121 1153 L
-6121 1153 mt 6122 1154 L
-6122 1154 mt 6145 1181 L
-6145 1181 mt 6157 1194 L
-6157 1194 mt 6170 1208 L
-6170 1208 mt 6192 1232 L
-6192 1232 mt 6195 1236 L
-6195 1236 mt 6220 1263 L
-6220 1263 mt 6227 1270 L
-6227 1270 mt 6245 1291 L
-6245 1291 mt 6261 1309 L
-6261 1309 mt 6270 1318 L
-6270 1318 mt 6295 1346 L
-6295 1346 mt 6296 1348 L
-6296 1348 mt 6319 1373 L
-6319 1373 mt 6331 1388 L
-6331 1388 mt 6342 1401 L
-6342 1401 mt 6364 1428 L
-6364 1428 mt 6366 1431 L
-6366 1431 mt 6385 1456 L
-6385 1456 mt 6401 1478 L
-6401 1478 mt 6405 1484 L
-6405 1484 mt 6423 1511 L
-6423 1511 mt 6436 1532 L
-6436 1532 mt 6440 1539 L
-6440 1539 mt 6455 1566 L
-6455 1566 mt 6469 1594 L
-6469 1594 mt 6471 1598 L
-6471 1598 mt 6481 1621 L
-6481 1621 mt 6492 1649 L
-6492 1649 mt 6501 1676 L
-6501 1676 mt 6506 1692 L
- 822 2438 mt 825 2419 L
- 825 2419 mt 832 2391 L
- 832 2391 mt 842 2364 L
- 842 2364 mt 857 2337 L
- 857 2337 mt 857 2336 L
- 857 2336 mt 882 2309 L
- 882 2309 mt 892 2301 L
- 892 2301 mt 926 2285 L
- 926 2285 mt 961 2292 L
- 961 2292 mt 986 2309 L
- 986 2309 mt 996 2314 L
- 996 2314 mt 1025 2336 L
-1025 2336 mt 1031 2340 L
-1031 2340 mt 1065 2364 L
-1065 2364 mt 1066 2364 L
-1066 2364 mt 1101 2389 L
-1101 2389 mt 1104 2391 L
-1104 2391 mt 1127 2419 L
-1127 2419 mt 1135 2446 L
-1135 2446 mt 1136 2451 L
-1136 2451 mt 1138 2474 L
-1138 2474 mt 1141 2502 L
-1141 2502 mt 1149 2529 L
-1149 2529 mt 1163 2557 L
-1163 2557 mt 1170 2568 L
-1170 2568 mt 1184 2584 L
-1184 2584 mt 1205 2604 L
-1205 2604 mt 1215 2612 L
-1215 2612 mt 1240 2631 L
-1240 2631 mt 1253 2639 L
-1253 2639 mt 1275 2654 L
-1275 2654 mt 1292 2667 L
-1292 2667 mt 1310 2682 L
-1310 2682 mt 1323 2694 L
-1323 2694 mt 1345 2720 L
-1345 2720 mt 1346 2722 L
-1346 2722 mt 1365 2749 L
-1365 2749 mt 1380 2771 L
-1380 2771 mt 1383 2777 L
-1383 2777 mt 1398 2804 L
-1398 2804 mt 1415 2831 L
-1415 2831 mt 1415 2832 L
-1415 2832 mt 1431 2859 L
-1431 2859 mt 1442 2887 L
-1442 2887 mt 1418 2914 L
-1418 2914 mt 1415 2915 L
-1415 2915 mt 1392 2914 L
-1392 2914 mt 1380 2913 L
-1380 2913 mt 1345 2904 L
-1345 2904 mt 1310 2892 L
-1310 2892 mt 1298 2887 L
-1298 2887 mt 1275 2877 L
-1275 2877 mt 1240 2860 L
-1240 2860 mt 1239 2859 L
-1239 2859 mt 1205 2844 L
-1205 2844 mt 1177 2832 L
-1177 2832 mt 1170 2829 L
-1170 2829 mt 1136 2819 L
-1136 2819 mt 1101 2811 L
-1101 2811 mt 1068 2804 L
-1068 2804 mt 1066 2804 L
-1066 2804 mt 1031 2799 L
-1031 2799 mt 996 2795 L
- 996 2795 mt 961 2788 L
- 961 2788 mt 926 2777 L
- 926 2777 mt 925 2777 L
- 925 2777 mt 892 2750 L
- 892 2750 mt 891 2749 L
- 891 2749 mt 867 2722 L
- 867 2722 mt 857 2707 L
- 857 2707 mt 849 2694 L
- 849 2694 mt 836 2667 L
- 836 2667 mt 826 2639 L
- 826 2639 mt 822 2622 L
- 822 2622 mt 819 2612 L
- 819 2612 mt 816 2584 L
- 816 2584 mt 815 2557 L
- 815 2557 mt 815 2529 L
- 815 2529 mt 816 2502 L
- 816 2502 mt 818 2474 L
- 818 2474 mt 820 2446 L
- 820 2446 mt 822 2438 L
-1066 783 mt 1080 768 L
-1080 768 mt 1100 741 L
-1100 741 mt 1101 740 L
-1101 740 mt 1127 713 L
-1127 713 mt 1136 700 L
-1136 700 mt 1148 686 L
-1148 686 mt 1160 658 L
-1160 658 mt 1168 631 L
-1168 631 mt 1170 624 L
-1170 624 mt 1186 603 L
-1186 603 mt 1205 576 L
-1205 576 mt 1205 575 L
-1205 575 mt 1240 563 L
-1240 563 mt 1257 576 L
-1257 576 mt 1261 603 L
-1261 603 mt 1258 631 L
-1258 631 mt 1250 658 L
-1250 658 mt 1240 685 L
-1240 685 mt 1240 686 L
-1240 686 mt 1219 713 L
-1219 713 mt 1205 730 L
-1205 730 mt 1193 741 L
-1193 741 mt 1170 768 L
-1170 768 mt 1170 768 L
-1170 768 mt 1146 796 L
-1146 796 mt 1136 807 L
-1136 807 mt 1118 823 L
-1118 823 mt 1101 844 L
-1101 844 mt 1093 851 L
-1093 851 mt 1066 875 L
-1066 875 mt 1033 851 L
-1033 851 mt 1043 823 L
-1043 823 mt 1058 796 L
-1058 796 mt 1066 783 L
-6471 1711 mt 6476 1731 L
-6476 1731 mt 6481 1759 L
-6481 1759 mt 6486 1786 L
-6486 1786 mt 6489 1814 L
-6489 1814 mt 6492 1841 L
-6492 1841 mt 6494 1869 L
-6494 1869 mt 6496 1896 L
-6496 1896 mt 6496 1924 L
-6496 1924 mt 6496 1951 L
-6496 1951 mt 6495 1979 L
-6495 1979 mt 6493 2006 L
-6493 2006 mt 6491 2034 L
-6491 2034 mt 6488 2061 L
-6488 2061 mt 6484 2089 L
-6484 2089 mt 6480 2116 L
-6480 2116 mt 6475 2144 L
-6475 2144 mt 6471 2168 L
-6471 2168 mt 6470 2171 L
-6470 2171 mt 6464 2199 L
-6464 2199 mt 6457 2226 L
-6457 2226 mt 6450 2254 L
-6450 2254 mt 6443 2281 L
-6443 2281 mt 6436 2303 L
-6436 2303 mt 6434 2309 L
-6434 2309 mt 6425 2336 L
-6425 2336 mt 6415 2364 L
-6415 2364 mt 6404 2391 L
-6404 2391 mt 6401 2398 L
-6401 2398 mt 6391 2419 L
-6391 2419 mt 6376 2446 L
-6376 2446 mt 6366 2462 L
-6366 2462 mt 6358 2474 L
-6358 2474 mt 6337 2502 L
-6337 2502 mt 6331 2508 L
-6331 2508 mt 6310 2529 L
-6310 2529 mt 6296 2541 L
-6296 2541 mt 6275 2557 L
-6275 2557 mt 6261 2566 L
-6261 2566 mt 6227 2579 L
-6227 2579 mt 6192 2581 L
-6192 2581 mt 6157 2580 L
-6157 2580 mt 6122 2577 L
-6122 2577 mt 6087 2574 L
-6087 2574 mt 6052 2570 L
-6052 2570 mt 6017 2566 L
-6017 2566 mt 5983 2559 L
-5983 2559 mt 5973 2557 L
-5973 2557 mt 5948 2548 L
-5948 2548 mt 5913 2534 L
-5913 2534 mt 5900 2529 L
-5900 2529 mt 5878 2517 L
-5878 2517 mt 5858 2502 L
-5858 2502 mt 5843 2486 L
-5843 2486 mt 5835 2474 L
-5835 2474 mt 5821 2446 L
-5821 2446 mt 5813 2419 L
-5813 2419 mt 5813 2391 L
-5813 2391 mt 5818 2364 L
-5818 2364 mt 5827 2336 L
-5827 2336 mt 5840 2309 L
-5840 2309 mt 5843 2303 L
-5843 2303 mt 5854 2281 L
-5854 2281 mt 5866 2254 L
-5866 2254 mt 5877 2226 L
-5877 2226 mt 5878 2223 L
-5878 2223 mt 5887 2199 L
-5887 2199 mt 5896 2171 L
-5896 2171 mt 5901 2144 L
-5901 2144 mt 5900 2116 L
-5900 2116 mt 5896 2089 L
-5896 2089 mt 5891 2061 L
-5891 2061 mt 5884 2034 L
-5884 2034 mt 5878 2011 L
-5878 2011 mt 5876 2006 L
-5876 2006 mt 5870 1979 L
-5870 1979 mt 5865 1951 L
-5865 1951 mt 5858 1924 L
-5858 1924 mt 5848 1896 L
-5848 1896 mt 5843 1886 L
-5843 1886 mt 5835 1869 L
-5835 1869 mt 5820 1841 L
-5820 1841 mt 5808 1823 L
-5808 1823 mt 5803 1814 L
-5803 1814 mt 5787 1786 L
-5787 1786 mt 5773 1763 L
-5773 1763 mt 5770 1759 L
-5770 1759 mt 5750 1731 L
-5750 1731 mt 5738 1720 L
-5738 1720 mt 5711 1704 L
-5711 1704 mt 5704 1700 L
-5704 1700 mt 5669 1689 L
-5669 1689 mt 5634 1682 L
-5634 1682 mt 5606 1676 L
-5606 1676 mt 5599 1675 L
-5599 1675 mt 5564 1668 L
-5564 1668 mt 5529 1659 L
-5529 1659 mt 5503 1649 L
-5503 1649 mt 5494 1645 L
-5494 1645 mt 5459 1629 L
-5459 1629 mt 5442 1621 L
-5442 1621 mt 5425 1615 L
-5425 1615 mt 5390 1603 L
-5390 1603 mt 5359 1594 L
-5359 1594 mt 5355 1592 L
-5355 1592 mt 5320 1584 L
-5320 1584 mt 5285 1577 L
-5285 1577 mt 5250 1570 L
-5250 1570 mt 5239 1566 L
-5239 1566 mt 5215 1555 L
-5215 1555 mt 5193 1539 L
-5193 1539 mt 5181 1521 L
-5181 1521 mt 5174 1511 L
-5174 1511 mt 5159 1484 L
-5159 1484 mt 5146 1462 L
-5146 1462 mt 5142 1456 L
-5142 1456 mt 5122 1428 L
-5122 1428 mt 5111 1415 L
-5111 1415 mt 5097 1401 L
-5097 1401 mt 5076 1382 L
-5076 1382 mt 5064 1373 L
-5064 1373 mt 5041 1356 L
-5041 1356 mt 5024 1346 L
-5024 1346 mt 5006 1335 L
-5006 1335 mt 4977 1318 L
-4977 1318 mt 4971 1315 L
-4971 1315 mt 4936 1296 L
-4936 1296 mt 4926 1291 L
-4926 1291 mt 4902 1275 L
-4902 1275 mt 4884 1263 L
-4884 1263 mt 4867 1246 L
-4867 1246 mt 4858 1236 L
-4858 1236 mt 4845 1208 L
-4845 1208 mt 4840 1181 L
-4840 1181 mt 4839 1153 L
-4839 1153 mt 4841 1126 L
-4841 1126 mt 4843 1098 L
-4843 1098 mt 4843 1071 L
-4843 1071 mt 4841 1043 L
-4841 1043 mt 4834 1016 L
-4834 1016 mt 4832 1008 L
-4832 1008 mt 4824 988 L
-4824 988 mt 4810 961 L
-4810 961 mt 4797 939 L
-4797 939 mt 4793 933 L
-4793 933 mt 4771 906 L
-4771 906 mt 4762 896 L
-4762 896 mt 4745 878 L
-4745 878 mt 4727 863 L
-4727 863 mt 4713 851 L
-4713 851 mt 4692 834 L
-4692 834 mt 4680 823 L
-4680 823 mt 4657 806 L
-4657 806 mt 4647 796 L
-4647 796 mt 4623 776 L
-4623 776 mt 4614 768 L
-4614 768 mt 4588 747 L
-4588 747 mt 4580 741 L
-4580 741 mt 4553 717 L
-4553 717 mt 4549 713 L
-4549 713 mt 4523 686 L
-4523 686 mt 4518 680 L
-4518 680 mt 4496 658 L
-4496 658 mt 4483 643 L
-4483 643 mt 4470 631 L
-4470 631 mt 4448 609 L
-4448 609 mt 4442 603 L
-4442 603 mt 4413 580 L
-4413 580 mt 4408 576 L
-4408 576 mt 4379 554 L
-4379 554 mt 4370 548 L
-4370 548 mt 4344 532 L
-4344 532 mt 4325 521 L
-4325 521 mt 4309 512 L
-4309 512 mt 4274 496 L
-4274 496 mt 4266 493 L
-4266 493 mt 4239 483 L
-4239 483 mt 4204 470 L
-4204 470 mt 4191 466 L
-4191 466 mt 4169 456 L
-4169 456 mt 4134 439 L
-4134 439 mt 4131 438 L
-4131 438 mt 4111 411 L
-4111 411 mt 4133 383 L
-4133 383 mt 4134 382 L
-4134 382 mt 4169 359 L
-4169 359 mt 4177 355 L
-4177 355 mt 4204 345 L
-4204 345 mt 4239 333 L
-4239 333 mt 4251 328 L
-4251 328 mt 4274 320 L
-4274 320 mt 4309 307 L
-4309 307 mt 4328 300 L
-4328 300 mt 4344 295 L
-4344 295 mt 4379 285 L
-4379 285 mt 4413 275 L
-4413 275 mt 4421 273 L
-4421 273 mt 4448 267 L
-4448 267 mt 4483 259 L
-4483 259 mt 4518 252 L
-4518 252 mt 4553 246 L
-4553 246 mt 4560 245 L
-4560 245 mt 4588 241 L
-4588 241 mt 4623 237 L
-4623 237 mt 4657 233 L
-4657 233 mt 4692 229 L
-4692 229 mt 4727 225 L
-4727 225 mt 4762 223 L
-4762 223 mt 4797 220 L
-4797 220 mt 4832 218 L
-4832 218 mt 4845 218 L
-4845 218 mt 4867 217 L
-4867 217 mt 4902 217 L
-4902 217 mt 4936 218 L
-4936 218 mt 4938 218 L
-4938 218 mt 4971 220 L
-4971 220 mt 5006 223 L
-5006 223 mt 5041 227 L
-5041 227 mt 5076 234 L
-5076 234 mt 5111 242 L
-5111 242 mt 5124 245 L
-5124 245 mt 5146 251 L
-5146 251 mt 5181 264 L
-5181 264 mt 5203 273 L
-5203 273 mt 5215 278 L
-5215 278 mt 5250 296 L
-5250 296 mt 5259 300 L
-5259 300 mt 5285 316 L
-5285 316 mt 5304 328 L
-5304 328 mt 5320 339 L
-5320 339 mt 5342 355 L
-5342 355 mt 5355 365 L
-5355 365 mt 5376 383 L
-5376 383 mt 5390 395 L
-5390 395 mt 5408 411 L
-5408 411 mt 5425 426 L
-5425 426 mt 5437 438 L
-5437 438 mt 5459 459 L
-5459 459 mt 5466 466 L
-5466 466 mt 5494 493 L
-5494 493 mt 5494 493 L
-5494 493 mt 5522 521 L
-5522 521 mt 5529 528 L
-5529 528 mt 5549 548 L
-5549 548 mt 5564 564 L
-5564 564 mt 5575 576 L
-5575 576 mt 5599 601 L
-5599 601 mt 5601 603 L
-5601 603 mt 5625 631 L
-5625 631 mt 5634 641 L
-5634 641 mt 5648 658 L
-5648 658 mt 5669 683 L
-5669 683 mt 5671 686 L
-5671 686 mt 5694 713 L
-5694 713 mt 5704 726 L
-5704 726 mt 5716 741 L
-5716 741 mt 5738 768 L
-5738 768 mt 5738 768 L
-5738 768 mt 5761 796 L
-5761 796 mt 5773 811 L
-5773 811 mt 5784 823 L
-5784 823 mt 5807 851 L
-5807 851 mt 5808 852 L
-5808 852 mt 5831 878 L
-5831 878 mt 5843 892 L
-5843 892 mt 5855 906 L
-5855 906 mt 5878 932 L
-5878 932 mt 5879 933 L
-5879 933 mt 5904 961 L
-5904 961 mt 5913 971 L
-5913 971 mt 5928 988 L
-5928 988 mt 5948 1010 L
-5948 1010 mt 5952 1016 L
-5952 1016 mt 5977 1043 L
-5977 1043 mt 5983 1050 L
-5983 1050 mt 6001 1071 L
-6001 1071 mt 6017 1090 L
-6017 1090 mt 6025 1098 L
-6025 1098 mt 6049 1126 L
-6049 1126 mt 6052 1130 L
-6052 1130 mt 6073 1153 L
-6073 1153 mt 6087 1170 L
-6087 1170 mt 6097 1181 L
-6097 1181 mt 6121 1208 L
-6121 1208 mt 6122 1209 L
-6122 1209 mt 6146 1236 L
-6146 1236 mt 6157 1248 L
-6157 1248 mt 6171 1263 L
-6171 1263 mt 6192 1286 L
-6192 1286 mt 6197 1291 L
-6197 1291 mt 6222 1318 L
-6222 1318 mt 6227 1323 L
-6227 1323 mt 6247 1346 L
-6247 1346 mt 6261 1362 L
-6261 1362 mt 6272 1373 L
-6272 1373 mt 6296 1401 L
-6296 1401 mt 6296 1401 L
-6296 1401 mt 6319 1428 L
-6319 1428 mt 6331 1443 L
-6331 1443 mt 6341 1456 L
-6341 1456 mt 6362 1484 L
-6362 1484 mt 6366 1489 L
-6366 1489 mt 6381 1511 L
-6381 1511 mt 6398 1539 L
-6398 1539 mt 6401 1543 L
-6401 1543 mt 6414 1566 L
-6414 1566 mt 6428 1594 L
-6428 1594 mt 6436 1610 L
-6436 1610 mt 6441 1621 L
-6441 1621 mt 6452 1649 L
-6452 1649 mt 6461 1676 L
-6461 1676 mt 6469 1704 L
-6469 1704 mt 6471 1711 L
- 892 2386 mt 907 2364 L
- 907 2364 mt 926 2347 L
- 926 2347 mt 961 2349 L
- 961 2349 mt 996 2364 L
- 996 2364 mt 996 2364 L
- 996 2364 mt 1031 2386 L
-1031 2386 mt 1038 2391 L
-1038 2391 mt 1066 2419 L
-1066 2419 mt 1066 2419 L
-1066 2419 mt 1078 2446 L
-1078 2446 mt 1082 2474 L
-1082 2474 mt 1084 2502 L
-1084 2502 mt 1090 2529 L
-1090 2529 mt 1101 2556 L
-1101 2556 mt 1101 2557 L
-1101 2557 mt 1117 2584 L
-1117 2584 mt 1136 2608 L
-1136 2608 mt 1139 2612 L
-1139 2612 mt 1166 2639 L
-1166 2639 mt 1170 2644 L
-1170 2644 mt 1196 2667 L
-1196 2667 mt 1205 2677 L
-1205 2677 mt 1224 2694 L
-1224 2694 mt 1240 2714 L
-1240 2714 mt 1247 2722 L
-1247 2722 mt 1262 2749 L
-1262 2749 mt 1263 2777 L
-1263 2777 mt 1240 2783 L
-1240 2783 mt 1205 2781 L
-1205 2781 mt 1170 2777 L
-1170 2777 mt 1167 2777 L
-1167 2777 mt 1136 2771 L
-1136 2771 mt 1101 2765 L
-1101 2765 mt 1066 2759 L
-1066 2759 mt 1031 2754 L
-1031 2754 mt 996 2750 L
- 996 2750 mt 994 2749 L
- 994 2749 mt 961 2741 L
- 961 2741 mt 926 2726 L
- 926 2726 mt 920 2722 L
- 920 2722 mt 892 2694 L
- 892 2694 mt 892 2694 L
- 892 2694 mt 879 2667 L
- 879 2667 mt 867 2639 L
- 867 2639 mt 861 2612 L
- 861 2612 mt 861 2584 L
- 861 2584 mt 864 2557 L
- 864 2557 mt 867 2529 L
- 867 2529 mt 869 2502 L
- 869 2502 mt 871 2474 L
- 871 2474 mt 874 2446 L
- 874 2446 mt 879 2419 L
- 879 2419 mt 889 2391 L
- 889 2391 mt 892 2386 L
-6436 1736 mt 6440 1759 L
-6440 1759 mt 6444 1786 L
-6444 1786 mt 6447 1814 L
-6447 1814 mt 6449 1841 L
-6449 1841 mt 6451 1869 L
-6451 1869 mt 6452 1896 L
-6452 1896 mt 6452 1924 L
-6452 1924 mt 6451 1951 L
-6451 1951 mt 6450 1979 L
-6450 1979 mt 6447 2006 L
-6447 2006 mt 6444 2034 L
-6444 2034 mt 6441 2061 L
-6441 2061 mt 6437 2089 L
-6437 2089 mt 6436 2095 L
-6436 2095 mt 6432 2116 L
-6432 2116 mt 6427 2144 L
-6427 2144 mt 6421 2171 L
-6421 2171 mt 6415 2199 L
-6415 2199 mt 6408 2226 L
-6408 2226 mt 6401 2253 L
-6401 2253 mt 6401 2254 L
-6401 2254 mt 6393 2281 L
-6393 2281 mt 6384 2309 L
-6384 2309 mt 6376 2336 L
-6376 2336 mt 6366 2363 L
-6366 2363 mt 6366 2364 L
-6366 2364 mt 6355 2391 L
-6355 2391 mt 6341 2419 L
-6341 2419 mt 6331 2436 L
-6331 2436 mt 6325 2446 L
-6325 2446 mt 6304 2474 L
-6304 2474 mt 6296 2482 L
-6296 2482 mt 6276 2502 L
-6276 2502 mt 6261 2514 L
-6261 2514 mt 6233 2529 L
-6233 2529 mt 6227 2532 L
-6227 2532 mt 6192 2535 L
-6192 2535 mt 6157 2530 L
-6157 2530 mt 6150 2529 L
-6150 2529 mt 6122 2521 L
-6122 2521 mt 6087 2508 L
-6087 2508 mt 6072 2502 L
-6072 2502 mt 6052 2490 L
-6052 2490 mt 6027 2474 L
-6027 2474 mt 6017 2468 L
-6017 2468 mt 5983 2446 L
-5983 2446 mt 5983 2446 L
-5983 2446 mt 5948 2430 L
-5948 2430 mt 5929 2419 L
-5929 2419 mt 5913 2407 L
-5913 2407 mt 5899 2391 L
-5899 2391 mt 5890 2364 L
-5890 2364 mt 5893 2336 L
-5893 2336 mt 5904 2309 L
-5904 2309 mt 5913 2289 L
-5913 2289 mt 5917 2281 L
-5917 2281 mt 5930 2254 L
-5930 2254 mt 5944 2226 L
-5944 2226 mt 5948 2219 L
-5948 2219 mt 5958 2199 L
-5958 2199 mt 5968 2171 L
-5968 2171 mt 5972 2144 L
-5972 2144 mt 5970 2116 L
-5970 2116 mt 5966 2089 L
-5966 2089 mt 5965 2061 L
-5965 2061 mt 5963 2034 L
-5963 2034 mt 5964 2006 L
-5964 2006 mt 5970 1979 L
-5970 1979 mt 5978 1951 L
-5978 1951 mt 5983 1939 L
-5983 1939 mt 5988 1924 L
-5988 1924 mt 5998 1896 L
-5998 1896 mt 6007 1869 L
-6007 1869 mt 6013 1841 L
-6013 1841 mt 6016 1814 L
-6016 1814 mt 6016 1786 L
-6016 1786 mt 6013 1759 L
-6013 1759 mt 6009 1731 L
-6009 1731 mt 6002 1704 L
-6002 1704 mt 5993 1676 L
-5993 1676 mt 5983 1652 L
-5983 1652 mt 5980 1649 L
-5980 1649 mt 5958 1621 L
-5958 1621 mt 5948 1611 L
-5948 1611 mt 5929 1594 L
-5929 1594 mt 5913 1581 L
-5913 1581 mt 5890 1566 L
-5890 1566 mt 5878 1559 L
-5878 1559 mt 5843 1542 L
-5843 1542 mt 5834 1539 L
-5834 1539 mt 5808 1530 L
-5808 1530 mt 5773 1522 L
-5773 1522 mt 5738 1519 L
-5738 1519 mt 5704 1521 L
-5704 1521 mt 5669 1526 L
-5669 1526 mt 5634 1535 L
-5634 1535 mt 5618 1539 L
-5618 1539 mt 5599 1543 L
-5599 1543 mt 5564 1548 L
-5564 1548 mt 5529 1551 L
-5529 1551 mt 5494 1550 L
-5494 1550 mt 5459 1549 L
-5459 1549 mt 5425 1547 L
-5425 1547 mt 5390 1544 L
-5390 1544 mt 5355 1539 L
-5355 1539 mt 5351 1539 L
-5351 1539 mt 5320 1531 L
-5320 1531 mt 5285 1516 L
-5285 1516 mt 5276 1511 L
-5276 1511 mt 5250 1485 L
-5250 1485 mt 5249 1484 L
-5249 1484 mt 5232 1456 L
-5232 1456 mt 5216 1428 L
-5216 1428 mt 5215 1427 L
-5215 1427 mt 5199 1401 L
-5199 1401 mt 5181 1375 L
-5181 1375 mt 5179 1373 L
-5179 1373 mt 5154 1346 L
-5154 1346 mt 5146 1337 L
-5146 1337 mt 5125 1318 L
-5125 1318 mt 5111 1306 L
-5111 1306 mt 5091 1291 L
-5091 1291 mt 5076 1279 L
-5076 1279 mt 5054 1263 L
-5054 1263 mt 5041 1253 L
-5041 1253 mt 5020 1236 L
-5020 1236 mt 5006 1224 L
-5006 1224 mt 4989 1208 L
-4989 1208 mt 4971 1188 L
-4971 1188 mt 4966 1181 L
-4966 1181 mt 4949 1153 L
-4949 1153 mt 4937 1126 L
-4937 1126 mt 4936 1125 L
-4936 1125 mt 4927 1098 L
-4927 1098 mt 4918 1071 L
-4918 1071 mt 4909 1043 L
-4909 1043 mt 4902 1022 L
-4902 1022 mt 4900 1016 L
-4900 1016 mt 4890 988 L
-4890 988 mt 4880 961 L
-4880 961 mt 4868 933 L
-4868 933 mt 4867 930 L
-4867 930 mt 4853 906 L
-4853 906 mt 4834 878 L
-4834 878 mt 4832 876 L
-4832 876 mt 4810 851 L
-4810 851 mt 4797 838 L
-4797 838 mt 4779 823 L
-4779 823 mt 4762 812 L
-4762 812 mt 4737 796 L
-4737 796 mt 4727 791 L
-4727 791 mt 4692 772 L
-4692 772 mt 4687 768 L
-4687 768 mt 4657 752 L
-4657 752 mt 4642 741 L
-4642 741 mt 4623 728 L
-4623 728 mt 4604 713 L
-4604 713 mt 4588 699 L
-4588 699 mt 4575 686 L
-4575 686 mt 4555 658 L
-4555 658 mt 4553 652 L
-4553 652 mt 4540 631 L
-4540 631 mt 4527 603 L
-4527 603 mt 4518 587 L
-4518 587 mt 4509 576 L
-4509 576 mt 4483 551 L
-4483 551 mt 4480 548 L
-4480 548 mt 4448 528 L
-4448 528 mt 4436 521 L
-4436 521 mt 4413 508 L
-4413 508 mt 4386 493 L
-4386 493 mt 4379 489 L
-4379 489 mt 4344 469 L
-4344 469 mt 4337 466 L
-4337 466 mt 4309 444 L
-4309 444 mt 4298 438 L
-4298 438 mt 4283 411 L
-4283 411 mt 4298 383 L
-4298 383 mt 4309 376 L
-4309 376 mt 4332 355 L
-4332 355 mt 4344 350 L
-4344 350 mt 4379 334 L
-4379 334 mt 4393 328 L
-4393 328 mt 4413 321 L
-4413 321 mt 4448 310 L
-4448 310 mt 4483 301 L
-4483 301 mt 4484 300 L
-4484 300 mt 4518 293 L
-4518 293 mt 4553 286 L
-4553 286 mt 4588 279 L
-4588 279 mt 4623 273 L
-4623 273 mt 4625 273 L
-4625 273 mt 4657 268 L
-4657 268 mt 4692 263 L
-4692 263 mt 4727 259 L
-4727 259 mt 4762 254 L
-4762 254 mt 4797 251 L
-4797 251 mt 4832 247 L
-4832 247 mt 4860 245 L
-4860 245 mt 4867 245 L
-4867 245 mt 4902 243 L
-4902 243 mt 4936 243 L
-4936 243 mt 4971 244 L
-4971 244 mt 4993 245 L
-4993 245 mt 5006 246 L
-5006 246 mt 5041 250 L
-5041 250 mt 5076 256 L
-5076 256 mt 5111 264 L
-5111 264 mt 5142 273 L
-5142 273 mt 5146 274 L
-5146 274 mt 5181 287 L
-5181 287 mt 5212 300 L
-5212 300 mt 5215 302 L
-5215 302 mt 5250 321 L
-5250 321 mt 5262 328 L
-5262 328 mt 5285 343 L
-5285 343 mt 5303 355 L
-5303 355 mt 5320 369 L
-5320 369 mt 5338 383 L
-5338 383 mt 5355 398 L
-5355 398 mt 5369 411 L
-5369 411 mt 5390 430 L
-5390 430 mt 5399 438 L
-5399 438 mt 5425 463 L
-5425 463 mt 5427 466 L
-5427 466 mt 5454 493 L
-5454 493 mt 5459 499 L
-5459 499 mt 5481 521 L
-5481 521 mt 5494 534 L
-5494 534 mt 5508 548 L
-5508 548 mt 5529 570 L
-5529 570 mt 5534 576 L
-5534 576 mt 5560 603 L
-5560 603 mt 5564 608 L
-5564 608 mt 5584 631 L
-5584 631 mt 5599 648 L
-5599 648 mt 5608 658 L
-5608 658 mt 5630 686 L
-5630 686 mt 5634 691 L
-5634 691 mt 5651 713 L
-5651 713 mt 5669 736 L
-5669 736 mt 5672 741 L
-5672 741 mt 5693 768 L
-5693 768 mt 5704 781 L
-5704 781 mt 5715 796 L
-5715 796 mt 5737 823 L
-5737 823 mt 5738 825 L
-5738 825 mt 5760 851 L
-5760 851 mt 5773 867 L
-5773 867 mt 5783 878 L
-5783 878 mt 5806 906 L
-5806 906 mt 5808 908 L
-5808 908 mt 5831 933 L
-5831 933 mt 5843 947 L
-5843 947 mt 5855 961 L
-5855 961 mt 5878 986 L
-5878 986 mt 5880 988 L
-5880 988 mt 5904 1016 L
-5904 1016 mt 5913 1025 L
-5913 1025 mt 5929 1043 L
-5929 1043 mt 5948 1065 L
-5948 1065 mt 5953 1071 L
-5953 1071 mt 5976 1098 L
-5976 1098 mt 5983 1106 L
-5983 1106 mt 6000 1126 L
-6000 1126 mt 6017 1146 L
-6017 1146 mt 6024 1153 L
-6024 1153 mt 6047 1181 L
-6047 1181 mt 6052 1187 L
-6052 1187 mt 6071 1208 L
-6071 1208 mt 6087 1226 L
-6087 1226 mt 6096 1236 L
-6096 1236 mt 6121 1263 L
-6121 1263 mt 6122 1265 L
-6122 1265 mt 6146 1291 L
-6146 1291 mt 6157 1302 L
-6157 1302 mt 6172 1318 L
-6172 1318 mt 6192 1339 L
-6192 1339 mt 6198 1346 L
-6198 1346 mt 6224 1373 L
-6224 1373 mt 6227 1377 L
-6227 1377 mt 6248 1401 L
-6248 1401 mt 6261 1416 L
-6261 1416 mt 6273 1428 L
-6273 1428 mt 6296 1456 L
-6296 1456 mt 6296 1457 L
-6296 1457 mt 6317 1484 L
-6317 1484 mt 6331 1502 L
-6331 1502 mt 6338 1511 L
-6338 1511 mt 6356 1539 L
-6356 1539 mt 6366 1555 L
-6366 1555 mt 6373 1566 L
-6373 1566 mt 6388 1594 L
-6388 1594 mt 6400 1621 L
-6400 1621 mt 6401 1622 L
-6401 1622 mt 6411 1649 L
-6411 1649 mt 6421 1676 L
-6421 1676 mt 6429 1704 L
-6429 1704 mt 6435 1731 L
-6435 1731 mt 6436 1736 L
- 926 2568 mt 933 2557 L
- 933 2557 mt 938 2529 L
- 938 2529 mt 939 2502 L
- 939 2502 mt 939 2474 L
- 939 2474 mt 941 2446 L
- 941 2446 mt 950 2419 L
- 950 2419 mt 961 2412 L
- 961 2412 mt 980 2419 L
- 980 2419 mt 996 2427 L
- 996 2427 mt 1012 2446 L
-1012 2446 mt 1020 2474 L
-1020 2474 mt 1022 2502 L
-1022 2502 mt 1026 2529 L
-1026 2529 mt 1031 2540 L
-1031 2540 mt 1035 2557 L
-1035 2557 mt 1046 2584 L
-1046 2584 mt 1063 2612 L
-1063 2612 mt 1066 2618 L
-1066 2618 mt 1075 2639 L
-1075 2639 mt 1084 2667 L
-1084 2667 mt 1066 2691 L
-1066 2691 mt 1054 2694 L
-1054 2694 mt 1031 2695 L
-1031 2695 mt 998 2694 L
- 998 2694 mt 996 2694 L
- 996 2694 mt 961 2681 L
- 961 2681 mt 942 2667 L
- 942 2667 mt 926 2653 L
- 926 2653 mt 918 2639 L
- 918 2639 mt 909 2612 L
- 909 2612 mt 921 2584 L
- 921 2584 mt 926 2568 L
-6401 1781 mt 6402 1786 L
-6402 1786 mt 6404 1814 L
-6404 1814 mt 6405 1841 L
-6405 1841 mt 6406 1869 L
-6406 1869 mt 6407 1896 L
-6407 1896 mt 6406 1924 L
-6406 1924 mt 6405 1951 L
-6405 1951 mt 6403 1979 L
-6403 1979 mt 6401 1997 L
-6401 1997 mt 6400 2006 L
-6400 2006 mt 6396 2034 L
-6396 2034 mt 6392 2061 L
-6392 2061 mt 6387 2089 L
-6387 2089 mt 6382 2116 L
-6382 2116 mt 6376 2144 L
-6376 2144 mt 6371 2171 L
-6371 2171 mt 6366 2190 L
-6366 2190 mt 6364 2199 L
-6364 2199 mt 6356 2226 L
-6356 2226 mt 6348 2254 L
-6348 2254 mt 6340 2281 L
-6340 2281 mt 6333 2309 L
-6333 2309 mt 6331 2313 L
-6331 2313 mt 6324 2336 L
-6324 2336 mt 6315 2364 L
-6315 2364 mt 6304 2391 L
-6304 2391 mt 6296 2407 L
-6296 2407 mt 6290 2419 L
-6290 2419 mt 6271 2446 L
-6271 2446 mt 6261 2456 L
-6261 2456 mt 6233 2474 L
-6233 2474 mt 6227 2478 L
-6227 2478 mt 6192 2479 L
-6192 2479 mt 6174 2474 L
-6174 2474 mt 6157 2469 L
-6157 2469 mt 6122 2450 L
-6122 2450 mt 6116 2446 L
-6116 2446 mt 6087 2428 L
-6087 2428 mt 6075 2419 L
-6075 2419 mt 6052 2404 L
-6052 2404 mt 6032 2391 L
-6032 2391 mt 6017 2381 L
-6017 2381 mt 5996 2364 L
-5996 2364 mt 5983 2341 L
-5983 2341 mt 5980 2336 L
-5980 2336 mt 5979 2309 L
-5979 2309 mt 5983 2296 L
-5983 2296 mt 5986 2281 L
-5986 2281 mt 5998 2254 L
-5998 2254 mt 6013 2226 L
-6013 2226 mt 6017 2218 L
-6017 2218 mt 6027 2199 L
-6027 2199 mt 6036 2171 L
-6036 2171 mt 6042 2144 L
-6042 2144 mt 6043 2116 L
-6043 2116 mt 6044 2089 L
-6044 2089 mt 6045 2061 L
-6045 2061 mt 6048 2034 L
-6048 2034 mt 6052 2012 L
-6052 2012 mt 6053 2006 L
-6053 2006 mt 6059 1979 L
-6059 1979 mt 6066 1951 L
-6066 1951 mt 6074 1924 L
-6074 1924 mt 6081 1896 L
-6081 1896 mt 6086 1869 L
-6086 1869 mt 6087 1862 L
-6087 1862 mt 6089 1841 L
-6089 1841 mt 6090 1814 L
-6090 1814 mt 6090 1786 L
-6090 1786 mt 6089 1759 L
-6089 1759 mt 6087 1745 L
-6087 1745 mt 6085 1731 L
-6085 1731 mt 6080 1704 L
-6080 1704 mt 6072 1676 L
-6072 1676 mt 6062 1649 L
-6062 1649 mt 6052 1629 L
-6052 1629 mt 6048 1621 L
-6048 1621 mt 6029 1594 L
-6029 1594 mt 6017 1581 L
-6017 1581 mt 6002 1566 L
-6002 1566 mt 5983 1550 L
-5983 1550 mt 5967 1539 L
-5967 1539 mt 5948 1525 L
-5948 1525 mt 5924 1511 L
-5924 1511 mt 5913 1504 L
-5913 1504 mt 5878 1485 L
-5878 1485 mt 5874 1484 L
-5874 1484 mt 5843 1469 L
-5843 1469 mt 5812 1456 L
-5812 1456 mt 5808 1455 L
-5808 1455 mt 5773 1445 L
-5773 1445 mt 5738 1438 L
-5738 1438 mt 5704 1434 L
-5704 1434 mt 5669 1433 L
-5669 1433 mt 5634 1435 L
-5634 1435 mt 5599 1439 L
-5599 1439 mt 5564 1445 L
-5564 1445 mt 5529 1453 L
-5529 1453 mt 5519 1456 L
-5519 1456 mt 5494 1466 L
-5494 1466 mt 5459 1477 L
-5459 1477 mt 5425 1482 L
-5425 1482 mt 5390 1482 L
-5390 1482 mt 5355 1471 L
-5355 1471 mt 5334 1456 L
-5334 1456 mt 5320 1435 L
-5320 1435 mt 5317 1428 L
-5317 1428 mt 5309 1401 L
-5309 1401 mt 5300 1373 L
-5300 1373 mt 5285 1346 L
-5285 1346 mt 5285 1346 L
-5285 1346 mt 5266 1318 L
-5266 1318 mt 5250 1295 L
-5250 1295 mt 5247 1291 L
-5247 1291 mt 5223 1263 L
-5223 1263 mt 5215 1254 L
-5215 1254 mt 5197 1236 L
-5197 1236 mt 5181 1220 L
-5181 1220 mt 5166 1208 L
-5166 1208 mt 5146 1192 L
-5146 1192 mt 5132 1181 L
-5132 1181 mt 5111 1164 L
-5111 1164 mt 5098 1153 L
-5098 1153 mt 5076 1135 L
-5076 1135 mt 5067 1126 L
-5067 1126 mt 5041 1101 L
-5041 1101 mt 5038 1098 L
-5038 1098 mt 5014 1071 L
-5014 1071 mt 5006 1064 L
-5006 1064 mt 4990 1043 L
-4990 1043 mt 4971 1021 L
-4971 1021 mt 4968 1016 L
-4968 1016 mt 4950 988 L
-4950 988 mt 4936 963 L
-4936 963 mt 4935 961 L
-4935 961 mt 4923 933 L
-4923 933 mt 4910 906 L
-4910 906 mt 4902 888 L
-4902 888 mt 4896 878 L
-4896 878 mt 4878 851 L
-4878 851 mt 4867 835 L
-4867 835 mt 4856 823 L
-4856 823 mt 4832 800 L
-4832 800 mt 4827 796 L
-4827 796 mt 4797 776 L
-4797 776 mt 4784 768 L
-4784 768 mt 4762 759 L
-4762 759 mt 4727 746 L
-4727 746 mt 4716 741 L
-4716 741 mt 4692 733 L
-4692 733 mt 4657 717 L
-4657 717 mt 4651 713 L
-4651 713 mt 4623 694 L
-4623 694 mt 4614 686 L
-4614 686 mt 4593 658 L
-4593 658 mt 4588 643 L
-4588 643 mt 4583 631 L
-4583 631 mt 4578 603 L
-4578 603 mt 4573 576 L
-4573 576 mt 4560 548 L
-4560 548 mt 4553 539 L
-4553 539 mt 4534 521 L
-4534 521 mt 4518 509 L
-4518 509 mt 4491 493 L
-4491 493 mt 4483 488 L
-4483 488 mt 4448 469 L
-4448 469 mt 4442 466 L
-4442 466 mt 4413 446 L
-4413 446 mt 4404 438 L
-4404 438 mt 4380 411 L
-4380 411 mt 4403 383 L
-4403 383 mt 4413 379 L
-4413 379 mt 4448 361 L
-4448 361 mt 4458 355 L
-4458 355 mt 4483 346 L
-4483 346 mt 4518 336 L
-4518 336 mt 4551 328 L
-4551 328 mt 4553 328 L
-4553 328 mt 4588 320 L
-4588 320 mt 4623 313 L
-4623 313 mt 4657 306 L
-4657 306 mt 4685 300 L
-4685 300 mt 4692 299 L
-4692 299 mt 4727 293 L
-4727 293 mt 4762 287 L
-4762 287 mt 4797 282 L
-4797 282 mt 4832 277 L
-4832 277 mt 4866 273 L
-4866 273 mt 4867 273 L
-4867 273 mt 4902 270 L
-4902 270 mt 4936 268 L
-4936 268 mt 4971 268 L
-4971 268 mt 5006 269 L
-5006 269 mt 5041 272 L
-5041 272 mt 5045 273 L
-5045 273 mt 5076 277 L
-5076 277 mt 5111 285 L
-5111 285 mt 5146 296 L
-5146 296 mt 5158 300 L
-5158 300 mt 5181 309 L
-5181 309 mt 5215 326 L
-5215 326 mt 5219 328 L
-5219 328 mt 5250 347 L
-5250 347 mt 5263 355 L
-5263 355 mt 5285 371 L
-5285 371 mt 5300 383 L
-5300 383 mt 5320 400 L
-5320 400 mt 5332 411 L
-5332 411 mt 5355 433 L
-5355 433 mt 5361 438 L
-5361 438 mt 5388 466 L
-5388 466 mt 5390 468 L
-5390 468 mt 5414 493 L
-5414 493 mt 5425 504 L
-5425 504 mt 5440 521 L
-5440 521 mt 5459 541 L
-5459 541 mt 5467 548 L
-5467 548 mt 5493 576 L
-5493 576 mt 5494 577 L
-5494 577 mt 5519 603 L
-5519 603 mt 5529 614 L
-5529 614 mt 5544 631 L
-5544 631 mt 5564 655 L
-5564 655 mt 5567 658 L
-5567 658 mt 5589 686 L
-5589 686 mt 5599 700 L
-5599 700 mt 5609 713 L
-5609 713 mt 5629 741 L
-5629 741 mt 5634 748 L
-5634 748 mt 5649 768 L
-5649 768 mt 5669 796 L
-5669 796 mt 5669 796 L
-5669 796 mt 5689 823 L
-5689 823 mt 5704 841 L
-5704 841 mt 5711 851 L
-5711 851 mt 5733 878 L
-5733 878 mt 5738 884 L
-5738 884 mt 5756 906 L
-5756 906 mt 5773 925 L
-5773 925 mt 5780 933 L
-5780 933 mt 5805 961 L
-5805 961 mt 5808 964 L
-5808 964 mt 5830 988 L
-5830 988 mt 5843 1003 L
-5843 1003 mt 5854 1016 L
-5854 1016 mt 5878 1042 L
-5878 1042 mt 5879 1043 L
-5879 1043 mt 5903 1071 L
-5903 1071 mt 5913 1082 L
-5913 1082 mt 5927 1098 L
-5927 1098 mt 5948 1123 L
-5948 1123 mt 5950 1126 L
-5950 1126 mt 5973 1153 L
-5973 1153 mt 5983 1165 L
-5983 1165 mt 5996 1181 L
-5996 1181 mt 6017 1206 L
-6017 1206 mt 6019 1208 L
-6019 1208 mt 6043 1236 L
-6043 1236 mt 6052 1246 L
-6052 1246 mt 6068 1263 L
-6068 1263 mt 6087 1284 L
-6087 1284 mt 6094 1291 L
-6094 1291 mt 6120 1318 L
-6120 1318 mt 6122 1321 L
-6122 1321 mt 6146 1346 L
-6146 1346 mt 6157 1357 L
-6157 1357 mt 6172 1373 L
-6172 1373 mt 6192 1394 L
-6192 1394 mt 6198 1401 L
-6198 1401 mt 6224 1428 L
-6224 1428 mt 6227 1432 L
-6227 1432 mt 6248 1456 L
-6248 1456 mt 6261 1472 L
-6261 1472 mt 6271 1484 L
-6271 1484 mt 6293 1511 L
-6293 1511 mt 6296 1516 L
-6296 1516 mt 6313 1539 L
-6313 1539 mt 6331 1566 L
-6331 1566 mt 6331 1567 L
-6331 1567 mt 6346 1594 L
-6346 1594 mt 6360 1621 L
-6360 1621 mt 6366 1636 L
-6366 1636 mt 6371 1649 L
-6371 1649 mt 6381 1676 L
-6381 1676 mt 6388 1704 L
-6388 1704 mt 6394 1731 L
-6394 1731 mt 6398 1759 L
-6398 1759 mt 6401 1781 L
-6331 1653 mt 6339 1676 L
-6339 1676 mt 6346 1704 L
-6346 1704 mt 6351 1731 L
-6351 1731 mt 6354 1759 L
-6354 1759 mt 6356 1786 L
-6356 1786 mt 6357 1814 L
-6357 1814 mt 6358 1841 L
-6358 1841 mt 6358 1869 L
-6358 1869 mt 6358 1896 L
-6358 1896 mt 6357 1924 L
-6357 1924 mt 6356 1951 L
-6356 1951 mt 6353 1979 L
-6353 1979 mt 6349 2006 L
-6349 2006 mt 6344 2034 L
-6344 2034 mt 6339 2061 L
-6339 2061 mt 6333 2089 L
-6333 2089 mt 6331 2100 L
-6331 2100 mt 6328 2116 L
-6328 2116 mt 6322 2144 L
-6322 2144 mt 6315 2171 L
-6315 2171 mt 6308 2199 L
-6308 2199 mt 6300 2226 L
-6300 2226 mt 6296 2237 L
-6296 2237 mt 6290 2254 L
-6290 2254 mt 6281 2281 L
-6281 2281 mt 6273 2309 L
-6273 2309 mt 6267 2336 L
-6267 2336 mt 6262 2364 L
-6262 2364 mt 6261 2365 L
-6261 2365 mt 6246 2391 L
-6246 2391 mt 6227 2414 L
-6227 2414 mt 6192 2416 L
-6192 2416 mt 6157 2403 L
-6157 2403 mt 6137 2391 L
-6137 2391 mt 6122 2382 L
-6122 2382 mt 6097 2364 L
-6097 2364 mt 6087 2355 L
-6087 2355 mt 6068 2336 L
-6068 2336 mt 6053 2309 L
-6053 2309 mt 6052 2304 L
-6052 2304 mt 6050 2281 L
-6050 2281 mt 6052 2273 L
-6052 2273 mt 6058 2254 L
-6058 2254 mt 6072 2226 L
-6072 2226 mt 6084 2199 L
-6084 2199 mt 6087 2191 L
-6087 2191 mt 6094 2171 L
-6094 2171 mt 6101 2144 L
-6101 2144 mt 6103 2116 L
-6103 2116 mt 6106 2089 L
-6106 2089 mt 6109 2061 L
-6109 2061 mt 6113 2034 L
-6113 2034 mt 6118 2006 L
-6118 2006 mt 6122 1985 L
-6122 1985 mt 6123 1979 L
-6123 1979 mt 6128 1951 L
-6128 1951 mt 6131 1924 L
-6131 1924 mt 6133 1896 L
-6133 1896 mt 6136 1869 L
-6136 1869 mt 6138 1841 L
-6138 1841 mt 6139 1814 L
-6139 1814 mt 6139 1786 L
-6139 1786 mt 6138 1759 L
-6138 1759 mt 6136 1731 L
-6136 1731 mt 6131 1704 L
-6131 1704 mt 6124 1676 L
-6124 1676 mt 6122 1670 L
-6122 1670 mt 6114 1649 L
-6114 1649 mt 6102 1621 L
-6102 1621 mt 6087 1594 L
-6087 1594 mt 6087 1593 L
-6087 1593 mt 6066 1566 L
-6066 1566 mt 6052 1550 L
-6052 1550 mt 6040 1539 L
-6040 1539 mt 6017 1520 L
-6017 1520 mt 6004 1511 L
-6004 1511 mt 5983 1498 L
-5983 1498 mt 5959 1484 L
-5959 1484 mt 5948 1477 L
-5948 1477 mt 5913 1457 L
-5913 1457 mt 5910 1456 L
-5910 1456 mt 5878 1440 L
-5878 1440 mt 5855 1428 L
-5855 1428 mt 5843 1423 L
-5843 1423 mt 5808 1410 L
-5808 1410 mt 5778 1401 L
-5778 1401 mt 5773 1400 L
-5773 1400 mt 5738 1394 L
-5738 1394 mt 5704 1390 L
-5704 1390 mt 5669 1389 L
-5669 1389 mt 5634 1390 L
-5634 1390 mt 5599 1392 L
-5599 1392 mt 5564 1396 L
-5564 1396 mt 5529 1400 L
-5529 1400 mt 5523 1401 L
-5523 1401 mt 5494 1405 L
-5494 1405 mt 5459 1409 L
-5459 1409 mt 5425 1405 L
-5425 1405 mt 5416 1401 L
-5416 1401 mt 5390 1374 L
-5390 1374 mt 5390 1373 L
-5390 1373 mt 5383 1346 L
-5383 1346 mt 5377 1318 L
-5377 1318 mt 5372 1291 L
-5372 1291 mt 5367 1263 L
-5367 1263 mt 5361 1236 L
-5361 1236 mt 5355 1219 L
-5355 1219 mt 5350 1208 L
-5350 1208 mt 5332 1181 L
-5332 1181 mt 5320 1167 L
-5320 1167 mt 5306 1153 L
-5306 1153 mt 5285 1136 L
-5285 1136 mt 5270 1126 L
-5270 1126 mt 5250 1114 L
-5250 1114 mt 5222 1098 L
-5222 1098 mt 5215 1095 L
-5215 1095 mt 5181 1079 L
-5181 1079 mt 5163 1071 L
-5163 1071 mt 5146 1064 L
-5146 1064 mt 5111 1047 L
-5111 1047 mt 5105 1043 L
-5105 1043 mt 5076 1030 L
-5076 1030 mt 5054 1016 L
-5054 1016 mt 5041 1008 L
-5041 1008 mt 5017 988 L
-5017 988 mt 5006 979 L
-5006 979 mt 4992 961 L
-4992 961 mt 4973 933 L
-4973 933 mt 4971 931 L
-4971 931 mt 4956 906 L
-4956 906 mt 4940 878 L
-4940 878 mt 4936 871 L
-4936 871 mt 4924 851 L
-4924 851 mt 4910 823 L
-4910 823 mt 4902 809 L
-4902 809 mt 4892 796 L
-4892 796 mt 4867 769 L
-4867 769 mt 4866 768 L
-4866 768 mt 4832 746 L
-4832 746 mt 4821 741 L
-4821 741 mt 4797 731 L
-4797 731 mt 4762 720 L
-4762 720 mt 4737 713 L
-4737 713 mt 4727 711 L
-4727 711 mt 4692 700 L
-4692 700 mt 4661 686 L
-4661 686 mt 4657 683 L
-4657 683 mt 4631 658 L
-4631 658 mt 4623 642 L
-4623 642 mt 4618 631 L
-4618 631 mt 4617 603 L
-4617 603 mt 4621 576 L
-4621 576 mt 4621 548 L
-4621 548 mt 4611 521 L
-4611 521 mt 4593 493 L
-4593 493 mt 4588 487 L
-4588 487 mt 4563 466 L
-4563 466 mt 4553 457 L
-4553 457 mt 4528 438 L
-4528 438 mt 4518 426 L
-4518 426 mt 4505 411 L
-4505 411 mt 4518 395 L
-4518 395 mt 4547 383 L
-4547 383 mt 4553 382 L
-4553 382 mt 4588 369 L
-4588 369 mt 4623 357 L
-4623 357 mt 4628 355 L
-4628 355 mt 4657 348 L
-4657 348 mt 4692 340 L
-4692 340 mt 4727 331 L
-4727 331 mt 4738 328 L
-4738 328 mt 4762 323 L
-4762 323 mt 4797 315 L
-4797 315 mt 4832 308 L
-4832 308 mt 4867 302 L
-4867 302 mt 4874 300 L
-4874 300 mt 4902 297 L
-4902 297 mt 4936 293 L
-4936 293 mt 4971 291 L
-4971 291 mt 5006 291 L
-5006 291 mt 5041 293 L
-5041 293 mt 5076 298 L
-5076 298 mt 5086 300 L
-5086 300 mt 5111 306 L
-5111 306 mt 5146 317 L
-5146 317 mt 5172 328 L
-5172 328 mt 5181 332 L
-5181 332 mt 5215 350 L
-5215 350 mt 5224 355 L
-5224 355 mt 5250 374 L
-5250 374 mt 5263 383 L
-5263 383 mt 5285 402 L
-5285 402 mt 5295 411 L
-5295 411 mt 5320 434 L
-5320 434 mt 5324 438 L
-5324 438 mt 5350 466 L
-5350 466 mt 5355 471 L
-5355 471 mt 5375 493 L
-5375 493 mt 5390 510 L
-5390 510 mt 5400 521 L
-5400 521 mt 5425 548 L
-5425 548 mt 5425 548 L
-5425 548 mt 5450 576 L
-5450 576 mt 5459 585 L
-5459 585 mt 5477 603 L
-5477 603 mt 5494 621 L
-5494 621 mt 5504 631 L
-5504 631 mt 5527 658 L
-5527 658 mt 5529 661 L
-5529 661 mt 5548 686 L
-5548 686 mt 5564 709 L
-5564 709 mt 5567 713 L
-5567 713 mt 5585 741 L
-5585 741 mt 5599 762 L
-5599 762 mt 5603 768 L
-5603 768 mt 5622 796 L
-5622 796 mt 5634 813 L
-5634 813 mt 5641 823 L
-5641 823 mt 5661 851 L
-5661 851 mt 5669 861 L
-5669 861 mt 5682 878 L
-5682 878 mt 5704 905 L
-5704 905 mt 5704 906 L
-5704 906 mt 5728 933 L
-5728 933 mt 5738 945 L
-5738 945 mt 5752 961 L
-5752 961 mt 5773 984 L
-5773 984 mt 5777 988 L
-5777 988 mt 5802 1016 L
-5802 1016 mt 5808 1022 L
-5808 1022 mt 5827 1043 L
-5827 1043 mt 5843 1061 L
-5843 1061 mt 5852 1071 L
-5852 1071 mt 5876 1098 L
-5876 1098 mt 5878 1101 L
-5878 1101 mt 5898 1126 L
-5898 1126 mt 5913 1144 L
-5913 1144 mt 5921 1153 L
-5921 1153 mt 5942 1181 L
-5942 1181 mt 5948 1188 L
-5948 1188 mt 5964 1208 L
-5964 1208 mt 5983 1230 L
-5983 1230 mt 5987 1236 L
-5987 1236 mt 6011 1263 L
-6011 1263 mt 6017 1270 L
-6017 1270 mt 6036 1291 L
-6036 1291 mt 6052 1308 L
-6052 1308 mt 6063 1318 L
-6063 1318 mt 6087 1343 L
-6087 1343 mt 6090 1346 L
-6090 1346 mt 6116 1373 L
-6116 1373 mt 6122 1379 L
-6122 1379 mt 6143 1401 L
-6143 1401 mt 6157 1415 L
-6157 1415 mt 6170 1428 L
-6170 1428 mt 6192 1451 L
-6192 1451 mt 6196 1456 L
-6196 1456 mt 6221 1484 L
-6221 1484 mt 6227 1490 L
-6227 1490 mt 6244 1511 L
-6244 1511 mt 6261 1532 L
-6261 1532 mt 6266 1539 L
-6266 1539 mt 6286 1566 L
-6286 1566 mt 6296 1583 L
-6296 1583 mt 6303 1594 L
-6303 1594 mt 6317 1621 L
-6317 1621 mt 6329 1649 L
-6329 1649 mt 6331 1653 L
-6296 1682 mt 6302 1704 L
-6302 1704 mt 6305 1731 L
-6305 1731 mt 6306 1759 L
-6306 1759 mt 6305 1786 L
-6305 1786 mt 6304 1814 L
-6304 1814 mt 6303 1841 L
-6303 1841 mt 6302 1869 L
-6302 1869 mt 6302 1896 L
-6302 1896 mt 6302 1924 L
-6302 1924 mt 6300 1951 L
-6300 1951 mt 6296 1974 L
-6296 1974 mt 6296 1979 L
-6296 1979 mt 6289 2006 L
-6289 2006 mt 6281 2034 L
-6281 2034 mt 6273 2061 L
-6273 2061 mt 6267 2089 L
-6267 2089 mt 6262 2116 L
-6262 2116 mt 6261 2120 L
-6261 2120 mt 6257 2144 L
-6257 2144 mt 6250 2171 L
-6250 2171 mt 6241 2199 L
-6241 2199 mt 6228 2226 L
-6228 2226 mt 6227 2230 L
-6227 2230 mt 6208 2254 L
-6208 2254 mt 6192 2275 L
-6192 2275 mt 6167 2281 L
-6167 2281 mt 6157 2285 L
-6157 2285 mt 6154 2281 L
-6154 2281 mt 6135 2254 L
-6135 2254 mt 6136 2226 L
-6136 2226 mt 6145 2199 L
-6145 2199 mt 6153 2171 L
-6153 2171 mt 6157 2154 L
-6157 2154 mt 6159 2144 L
-6159 2144 mt 6163 2116 L
-6163 2116 mt 6166 2089 L
-6166 2089 mt 6169 2061 L
-6169 2061 mt 6173 2034 L
-6173 2034 mt 6177 2006 L
-6177 2006 mt 6181 1979 L
-6181 1979 mt 6183 1951 L
-6183 1951 mt 6184 1924 L
-6184 1924 mt 6183 1896 L
-6183 1896 mt 6184 1869 L
-6184 1869 mt 6185 1841 L
-6185 1841 mt 6186 1814 L
-6186 1814 mt 6186 1786 L
-6186 1786 mt 6186 1759 L
-6186 1759 mt 6184 1731 L
-6184 1731 mt 6180 1704 L
-6180 1704 mt 6173 1676 L
-6173 1676 mt 6163 1649 L
-6163 1649 mt 6157 1636 L
-6157 1636 mt 6151 1621 L
-6151 1621 mt 6137 1594 L
-6137 1594 mt 6122 1572 L
-6122 1572 mt 6118 1566 L
-6118 1566 mt 6096 1539 L
-6096 1539 mt 6087 1530 L
-6087 1530 mt 6068 1511 L
-6068 1511 mt 6052 1498 L
-6052 1498 mt 6032 1484 L
-6032 1484 mt 6017 1474 L
-6017 1474 mt 5985 1456 L
-5985 1456 mt 5983 1454 L
-5983 1454 mt 5948 1435 L
-5948 1435 mt 5936 1428 L
-5936 1428 mt 5913 1415 L
-5913 1415 mt 5882 1401 L
-5882 1401 mt 5878 1399 L
-5878 1399 mt 5843 1383 L
-5843 1383 mt 5812 1373 L
-5812 1373 mt 5808 1372 L
-5808 1372 mt 5773 1363 L
-5773 1363 mt 5738 1357 L
-5738 1357 mt 5704 1354 L
-5704 1354 mt 5669 1352 L
-5669 1352 mt 5634 1352 L
-5634 1352 mt 5599 1353 L
-5599 1353 mt 5564 1354 L
-5564 1354 mt 5529 1355 L
-5529 1355 mt 5494 1352 L
-5494 1352 mt 5477 1346 L
-5477 1346 mt 5459 1334 L
-5459 1334 mt 5450 1318 L
-5450 1318 mt 5442 1291 L
-5442 1291 mt 5437 1263 L
-5437 1263 mt 5433 1236 L
-5433 1236 mt 5430 1208 L
-5430 1208 mt 5425 1181 L
-5425 1181 mt 5425 1179 L
-5425 1179 mt 5415 1153 L
-5415 1153 mt 5398 1126 L
-5398 1126 mt 5390 1116 L
-5390 1116 mt 5371 1098 L
-5371 1098 mt 5355 1086 L
-5355 1086 mt 5331 1071 L
-5331 1071 mt 5320 1065 L
-5320 1065 mt 5285 1047 L
-5285 1047 mt 5275 1043 L
-5275 1043 mt 5250 1034 L
-5250 1034 mt 5215 1022 L
-5215 1022 mt 5196 1016 L
-5196 1016 mt 5181 1011 L
-5181 1011 mt 5146 1000 L
-5146 1000 mt 5113 988 L
-5113 988 mt 5111 988 L
-5111 988 mt 5076 972 L
-5076 972 mt 5059 961 L
-5059 961 mt 5041 949 L
-5041 949 mt 5025 933 L
-5025 933 mt 5006 912 L
-5006 912 mt 5002 906 L
-5002 906 mt 4981 878 L
-4981 878 mt 4971 865 L
-4971 865 mt 4963 851 L
-4963 851 mt 4950 823 L
-4950 823 mt 4938 796 L
-4938 796 mt 4936 792 L
-4936 792 mt 4923 768 L
-4923 768 mt 4902 742 L
-4902 742 mt 4900 741 L
-4900 741 mt 4867 718 L
-4867 718 mt 4856 713 L
-4856 713 mt 4832 704 L
-4832 704 mt 4797 693 L
-4797 693 mt 4770 686 L
-4770 686 mt 4762 683 L
-4762 683 mt 4727 674 L
-4727 674 mt 4692 661 L
-4692 661 mt 4688 658 L
-4688 658 mt 4665 631 L
-4665 631 mt 4664 603 L
-4664 603 mt 4674 576 L
-4674 576 mt 4684 548 L
-4684 548 mt 4687 521 L
-4687 521 mt 4683 493 L
-4683 493 mt 4672 466 L
-4672 466 mt 4659 438 L
-4659 438 mt 4659 411 L
-4659 411 mt 4692 397 L
-4692 397 mt 4710 383 L
-4710 383 mt 4727 376 L
-4727 376 mt 4762 363 L
-4762 363 mt 4784 355 L
-4784 355 mt 4797 352 L
-4797 352 mt 4832 341 L
-4832 341 mt 4867 332 L
-4867 332 mt 4883 328 L
-4883 328 mt 4902 324 L
-4902 324 mt 4936 318 L
-4936 318 mt 4971 314 L
-4971 314 mt 5006 312 L
-5006 312 mt 5041 314 L
-5041 314 mt 5076 318 L
-5076 318 mt 5111 326 L
-5111 326 mt 5117 328 L
-5117 328 mt 5146 338 L
-5146 338 mt 5181 354 L
-5181 354 mt 5183 355 L
-5183 355 mt 5215 375 L
-5215 375 mt 5226 383 L
-5226 383 mt 5250 402 L
-5250 402 mt 5260 411 L
-5260 411 mt 5285 435 L
-5285 435 mt 5288 438 L
-5288 438 mt 5313 466 L
-5313 466 mt 5320 474 L
-5320 474 mt 5336 493 L
-5336 493 mt 5355 516 L
-5355 516 mt 5359 521 L
-5359 521 mt 5382 548 L
-5382 548 mt 5390 558 L
-5390 558 mt 5406 576 L
-5406 576 mt 5425 595 L
-5425 595 mt 5432 603 L
-5432 603 mt 5459 629 L
-5459 629 mt 5461 631 L
-5461 631 mt 5487 658 L
-5487 658 mt 5494 667 L
-5494 667 mt 5508 686 L
-5508 686 mt 5525 713 L
-5525 713 mt 5529 720 L
-5529 720 mt 5541 741 L
-5541 741 mt 5557 768 L
-5557 768 mt 5564 780 L
-5564 780 mt 5573 796 L
-5573 796 mt 5590 823 L
-5590 823 mt 5599 837 L
-5599 837 mt 5608 851 L
-5608 851 mt 5627 878 L
-5627 878 mt 5634 887 L
-5634 887 mt 5648 906 L
-5648 906 mt 5669 931 L
-5669 931 mt 5671 933 L
-5671 933 mt 5695 961 L
-5695 961 mt 5704 970 L
-5704 970 mt 5720 988 L
-5720 988 mt 5738 1008 L
-5738 1008 mt 5746 1016 L
-5746 1016 mt 5772 1043 L
-5772 1043 mt 5773 1045 L
-5773 1045 mt 5797 1071 L
-5797 1071 mt 5808 1083 L
-5808 1083 mt 5822 1098 L
-5822 1098 mt 5843 1123 L
-5843 1123 mt 5845 1126 L
-5845 1126 mt 5867 1153 L
-5867 1153 mt 5878 1169 L
-5878 1169 mt 5887 1181 L
-5887 1181 mt 5907 1208 L
-5907 1208 mt 5913 1217 L
-5913 1217 mt 5926 1236 L
-5926 1236 mt 5948 1263 L
-5948 1263 mt 5948 1263 L
-5948 1263 mt 5971 1291 L
-5971 1291 mt 5983 1304 L
-5983 1304 mt 5996 1318 L
-5996 1318 mt 6017 1340 L
-6017 1340 mt 6023 1346 L
-6023 1346 mt 6051 1373 L
-6051 1373 mt 6052 1375 L
-6052 1375 mt 6077 1401 L
-6077 1401 mt 6087 1410 L
-6087 1410 mt 6105 1428 L
-6105 1428 mt 6122 1444 L
-6122 1444 mt 6134 1456 L
-6134 1456 mt 6157 1478 L
-6157 1478 mt 6162 1484 L
-6162 1484 mt 6187 1511 L
-6187 1511 mt 6192 1516 L
-6192 1516 mt 6211 1539 L
-6211 1539 mt 6227 1556 L
-6227 1556 mt 6234 1566 L
-6234 1566 mt 6254 1594 L
-6254 1594 mt 6261 1606 L
-6261 1606 mt 6270 1621 L
-6270 1621 mt 6283 1649 L
-6283 1649 mt 6295 1676 L
-6295 1676 mt 6296 1682 L
-5913 1345 mt 5913 1346 L
-5913 1346 mt 5913 1346 L
-5913 1346 mt 5909 1346 L
-5909 1346 mt 5878 1342 L
-5878 1342 mt 5843 1335 L
-5843 1335 mt 5808 1329 L
-5808 1329 mt 5773 1325 L
-5773 1325 mt 5738 1322 L
-5738 1322 mt 5704 1319 L
-5704 1319 mt 5692 1318 L
-5692 1318 mt 5669 1317 L
-5669 1317 mt 5634 1315 L
-5634 1315 mt 5599 1315 L
-5599 1315 mt 5564 1312 L
-5564 1312 mt 5529 1305 L
-5529 1305 mt 5508 1291 L
-5508 1291 mt 5494 1269 L
-5494 1269 mt 5492 1263 L
-5492 1263 mt 5487 1236 L
-5487 1236 mt 5485 1208 L
-5485 1208 mt 5481 1181 L
-5481 1181 mt 5475 1153 L
-5475 1153 mt 5464 1126 L
-5464 1126 mt 5459 1117 L
-5459 1117 mt 5447 1098 L
-5447 1098 mt 5425 1073 L
-5425 1073 mt 5422 1071 L
-5422 1071 mt 5390 1044 L
-5390 1044 mt 5389 1043 L
-5389 1043 mt 5355 1022 L
-5355 1022 mt 5343 1016 L
-5343 1016 mt 5320 1006 L
-5320 1006 mt 5285 993 L
-5285 993 mt 5272 988 L
-5272 988 mt 5250 982 L
-5250 982 mt 5215 973 L
-5215 973 mt 5181 965 L
-5181 965 mt 5166 961 L
-5166 961 mt 5146 956 L
-5146 956 mt 5111 943 L
-5111 943 mt 5093 933 L
-5093 933 mt 5076 923 L
-5076 923 mt 5054 906 L
-5054 906 mt 5041 894 L
-5041 894 mt 5027 878 L
-5027 878 mt 5006 852 L
-5006 852 mt 5005 851 L
-5005 851 mt 4991 823 L
-4991 823 mt 4982 796 L
-4982 796 mt 4971 771 L
-4971 771 mt 4970 768 L
-4970 768 mt 4952 741 L
-4952 741 mt 4936 721 L
-4936 721 mt 4929 713 L
-4929 713 mt 4902 690 L
-4902 690 mt 4892 686 L
-4892 686 mt 4867 675 L
-4867 675 mt 4832 663 L
-4832 663 mt 4818 658 L
-4818 658 mt 4797 648 L
-4797 648 mt 4762 633 L
-4762 633 mt 4757 631 L
-4757 631 mt 4738 603 L
-4738 603 mt 4744 576 L
-4744 576 mt 4755 548 L
-4755 548 mt 4762 531 L
-4762 531 mt 4766 521 L
-4766 521 mt 4772 493 L
-4772 493 mt 4773 466 L
-4773 466 mt 4774 438 L
-4774 438 mt 4785 411 L
-4785 411 mt 4797 403 L
-4797 403 mt 4824 383 L
-4824 383 mt 4832 379 L
-4832 379 mt 4867 365 L
-4867 365 mt 4894 355 L
-4894 355 mt 4902 353 L
-4902 353 mt 4936 344 L
-4936 344 mt 4971 337 L
-4971 337 mt 5006 333 L
-5006 333 mt 5041 333 L
-5041 333 mt 5076 337 L
-5076 337 mt 5111 345 L
-5111 345 mt 5138 355 L
-5138 355 mt 5146 359 L
-5146 359 mt 5181 377 L
-5181 377 mt 5190 383 L
-5190 383 mt 5215 402 L
-5215 402 mt 5226 411 L
-5226 411 mt 5250 435 L
-5250 435 mt 5254 438 L
-5254 438 mt 5278 466 L
-5278 466 mt 5285 476 L
-5285 476 mt 5299 493 L
-5299 493 mt 5319 521 L
-5319 521 mt 5320 523 L
-5320 523 mt 5338 548 L
-5338 548 mt 5355 570 L
-5355 570 mt 5359 576 L
-5359 576 mt 5383 603 L
-5383 603 mt 5390 611 L
-5390 611 mt 5410 631 L
-5410 631 mt 5425 642 L
-5425 642 mt 5443 658 L
-5443 658 mt 5459 673 L
-5459 673 mt 5469 686 L
-5469 686 mt 5483 713 L
-5483 713 mt 5494 736 L
-5494 736 mt 5497 741 L
-5497 741 mt 5510 768 L
-5510 768 mt 5523 796 L
-5523 796 mt 5529 809 L
-5529 809 mt 5536 823 L
-5536 823 mt 5551 851 L
-5551 851 mt 5564 873 L
-5564 873 mt 5568 878 L
-5568 878 mt 5586 906 L
-5586 906 mt 5599 923 L
-5599 923 mt 5607 933 L
-5607 933 mt 5630 961 L
-5630 961 mt 5634 965 L
-5634 965 mt 5655 988 L
-5655 988 mt 5669 1002 L
-5669 1002 mt 5681 1016 L
-5681 1016 mt 5704 1038 L
-5704 1038 mt 5709 1043 L
-5709 1043 mt 5737 1071 L
-5737 1071 mt 5738 1072 L
-5738 1072 mt 5763 1098 L
-5763 1098 mt 5773 1109 L
-5773 1109 mt 5788 1126 L
-5788 1126 mt 5808 1150 L
-5808 1150 mt 5811 1153 L
-5811 1153 mt 5830 1181 L
-5830 1181 mt 5843 1203 L
-5843 1203 mt 5847 1208 L
-5847 1208 mt 5860 1236 L
-5860 1236 mt 5872 1263 L
-5872 1263 mt 5878 1278 L
-5878 1278 mt 5884 1291 L
-5884 1291 mt 5899 1318 L
-5899 1318 mt 5913 1345 L
-5773 1188 mt 5785 1208 L
-5785 1208 mt 5794 1236 L
-5794 1236 mt 5786 1263 L
-5786 1263 mt 5773 1272 L
-5773 1272 mt 5738 1279 L
-5738 1279 mt 5704 1278 L
-5704 1278 mt 5669 1276 L
-5669 1276 mt 5634 1273 L
-5634 1273 mt 5599 1269 L
-5599 1269 mt 5583 1263 L
-5583 1263 mt 5564 1254 L
-5564 1254 mt 5548 1236 L
-5548 1236 mt 5539 1208 L
-5539 1208 mt 5534 1181 L
-5534 1181 mt 5529 1158 L
-5529 1158 mt 5528 1153 L
-5528 1153 mt 5520 1126 L
-5520 1126 mt 5509 1098 L
-5509 1098 mt 5494 1075 L
-5494 1075 mt 5492 1071 L
-5492 1071 mt 5469 1043 L
-5469 1043 mt 5459 1034 L
-5459 1034 mt 5437 1016 L
-5437 1016 mt 5425 1006 L
-5425 1006 mt 5394 988 L
-5394 988 mt 5390 986 L
-5390 986 mt 5355 970 L
-5355 970 mt 5325 961 L
-5325 961 mt 5320 959 L
-5320 959 mt 5285 948 L
-5285 948 mt 5250 940 L
-5250 940 mt 5215 933 L
-5215 933 mt 5215 933 L
-5215 933 mt 5181 924 L
-5181 924 mt 5146 912 L
-5146 912 mt 5131 906 L
-5131 906 mt 5111 895 L
-5111 895 mt 5085 878 L
-5085 878 mt 5076 870 L
-5076 870 mt 5061 851 L
-5061 851 mt 5043 823 L
-5043 823 mt 5041 819 L
-5041 819 mt 5033 796 L
-5033 796 mt 5023 768 L
-5023 768 mt 5006 742 L
-5006 742 mt 5006 741 L
-5006 741 mt 4985 713 L
-4985 713 mt 4971 699 L
-4971 699 mt 4960 686 L
-4960 686 mt 4936 666 L
-4936 666 mt 4925 658 L
-4925 658 mt 4902 644 L
-4902 644 mt 4873 631 L
-4873 631 mt 4867 626 L
-4867 626 mt 4837 603 L
-4837 603 mt 4832 595 L
-4832 595 mt 4821 576 L
-4821 576 mt 4820 548 L
-4820 548 mt 4824 521 L
-4824 521 mt 4831 493 L
-4831 493 mt 4832 489 L
-4832 489 mt 4836 466 L
-4836 466 mt 4843 438 L
-4843 438 mt 4862 411 L
-4862 411 mt 4867 408 L
-4867 408 mt 4902 387 L
-4902 387 mt 4908 383 L
-4908 383 mt 4936 371 L
-4936 371 mt 4971 360 L
-4971 360 mt 4997 355 L
-4997 355 mt 5006 354 L
-5006 354 mt 5041 352 L
-5041 352 mt 5075 355 L
-5075 355 mt 5076 356 L
-5076 356 mt 5111 365 L
-5111 365 mt 5146 379 L
-5146 379 mt 5152 383 L
-5152 383 mt 5181 402 L
-5181 402 mt 5192 411 L
-5192 411 mt 5215 433 L
-5215 433 mt 5221 438 L
-5221 438 mt 5243 466 L
-5243 466 mt 5250 476 L
-5250 476 mt 5263 493 L
-5263 493 mt 5279 521 L
-5279 521 mt 5285 531 L
-5285 531 mt 5295 548 L
-5295 548 mt 5311 576 L
-5311 576 mt 5320 591 L
-5320 591 mt 5328 603 L
-5328 603 mt 5349 631 L
-5349 631 mt 5355 637 L
-5355 637 mt 5376 658 L
-5376 658 mt 5390 669 L
-5390 669 mt 5415 686 L
-5415 686 mt 5425 694 L
-5425 694 mt 5436 713 L
-5436 713 mt 5447 741 L
-5447 741 mt 5458 768 L
-5458 768 mt 5459 772 L
-5459 772 mt 5467 796 L
-5467 796 mt 5476 823 L
-5476 823 mt 5486 851 L
-5486 851 mt 5494 871 L
-5494 871 mt 5497 878 L
-5497 878 mt 5510 906 L
-5510 906 mt 5527 933 L
-5527 933 mt 5529 936 L
-5529 936 mt 5547 961 L
-5547 961 mt 5564 980 L
-5564 980 mt 5571 988 L
-5571 988 mt 5599 1015 L
-5599 1015 mt 5600 1016 L
-5600 1016 mt 5629 1043 L
-5629 1043 mt 5634 1047 L
-5634 1047 mt 5660 1071 L
-5660 1071 mt 5669 1077 L
-5669 1077 mt 5692 1098 L
-5692 1098 mt 5704 1108 L
-5704 1108 mt 5723 1126 L
-5723 1126 mt 5738 1143 L
-5738 1143 mt 5748 1153 L
-5748 1153 mt 5769 1181 L
-5769 1181 mt 5773 1188 L
-5111 460 mt 5115 466 L
-5115 466 mt 5122 493 L
-5122 493 mt 5123 521 L
-5123 521 mt 5116 548 L
-5116 548 mt 5111 555 L
-5111 555 mt 5076 559 L
-5076 559 mt 5044 548 L
-5044 548 mt 5041 546 L
-5041 546 mt 5019 521 L
-5019 521 mt 5007 493 L
-5007 493 mt 5013 466 L
-5013 466 mt 5029 438 L
-5029 438 mt 5041 430 L
-5041 430 mt 5076 433 L
-5076 433 mt 5086 438 L
-5086 438 mt 5111 460 L
-gr
-
-0 sg
-24 W
-4390 4604 PD
-24 W
-4388 4604 PD
-24 W
-4375 4586 PD
-24 W
-4365 4567 PD
-24 W
-4358 4546 PD
-24 W
-4350 4528 PD
-24 W
-4342 4509 PD
-24 W
-4336 4492 PD
-24 W
-4332 4473 PD
-24 W
-4336 4454 PD
-24 W
-4351 4436 PD
-24 W
-4358 4417 PD
-24 W
-4364 4399 PD
-24 W
-4365 4380 PD
-24 W
-4360 4362 PD
-24 W
-4362 4344 PD
-24 W
-4370 4326 PD
-24 W
-4367 4307 PD
-24 W
-4359 4289 PD
-24 W
-4356 4270 PD
-24 W
-4382 4254 PD
-24 W
-4398 4236 PD
-24 W
-4404 4217 PD
-24 W
-4412 4200 PD
-24 W
-4415 4180 PD
-24 W
-4423 4162 PD
-24 W
-4451 4158 PD
-24 W
-4478 4173 PD
-24 W
-4488 4191 PD
-24 W
-4499 4209 PD
-24 W
-4528 4223 PD
-24 W
-4549 4241 PD
-24 W
-4552 4259 PD
-24 W
-4559 4277 PD
-24 W
-4581 4296 PD
-24 W
-4600 4314 PD
-24 W
-4620 4331 PD
-24 W
-4625 4349 PD
-24 W
-4632 4367 PD
-24 W
-4660 4384 PD
-24 W
-4665 4402 PD
-24 W
-4673 4421 PD
-24 W
-4688 4439 PD
-24 W
-4689 4458 PD
-24 W
-4690 4477 PD
-24 W
-4696 4496 PD
-24 W
-4697 4514 PD
-24 W
-4727 4515 PD
-24 W
-4754 4512 PD
-24 W
-4782 4507 PD
-24 W
-4810 4513 PD
-24 W
-4809 4531 PD
-24 W
-4818 4550 PD
-24 W
-4842 4568 PD
-24 W
-4838 4586 PD
-24 W
-4866 4592 PD
-24 W
-4893 4591 PD
-24 W
-4921 4593 PD
-24 W
-4948 4590 PD
-24 W
-4975 4601 PD
-24 W
-4293 4609 PD
-24 W
-4300 4591 PD
-24 W
-4305 4572 PD
-24 W
-4300 4553 PD
-24 W
-4297 4534 PD
-24 W
-4293 4516 PD
-24 W
-4284 4498 PD
-24 W
-4273 4480 PD
-24 W
-4263 4461 PD
-24 W
-4251 4441 PD
-24 W
-4239 4423 PD
-24 W
-4233 4405 PD
-24 W
-4225 4386 PD
-24 W
-4219 4367 PD
-24 W
-4215 4348 PD
-24 W
-4215 4329 PD
-24 W
-4220 4309 PD
-24 W
-4222 4291 PD
-24 W
-4221 4270 PD
-24 W
-4217 4251 PD
-24 W
-4215 4233 PD
-24 W
-4212 4212 PD
-24 W
-4207 4195 PD
-24 W
-4194 4176 PD
-24 W
-4186 4156 PD
-24 W
-4182 4136 PD
-24 W
-4179 4118 PD
-24 W
-4189 4100 PD
-24 W
-4209 4082 PD
-24 W
-4219 4063 PD
-24 W
-4222 4046 PD
-24 W
-4217 4027 PD
-24 W
-4204 4009 PD
-24 W
-4201 3991 PD
-24 W
-4207 3973 PD
-24 W
-4204 3955 PD
-24 W
-4192 3937 PD
-24 W
-4189 3919 PD
-24 W
-4197 3901 PD
-24 W
-4204 3884 PD
-24 W
-4214 3864 PD
-24 W
-4221 3846 PD
-24 W
-4225 3827 PD
-24 W
-4235 3807 PD
-24 W
-4250 3788 PD
-24 W
-4247 3770 PD
-24 W
-4229 3753 PD
-24 W
-4233 3734 PD
-24 W
-4262 3716 PD
-24 W
-4290 3708 PD
-24 W
-4319 3698 PD
-24 W
-4346 3689 PD
-24 W
-4375 3685 PD
-24 W
-4404 3688 PD
-24 W
-4432 3685 PD
-24 W
-4459 3676 PD
-24 W
-4487 3689 PD
-24 W
-4517 3698 PD
-24 W
-4544 3698 PD
-24 W
-4571 3710 PD
-24 W
-4580 3728 PD
-24 W
-4588 3747 PD
-24 W
-4596 3765 PD
-24 W
-4607 3783 PD
-24 W
-4626 3802 PD
-24 W
-4648 3820 PD
-24 W
-4656 3839 PD
-24 W
-4655 3858 PD
-24 W
-4656 3875 PD
-24 W
-4668 3894 PD
-24 W
-4678 3912 PD
-24 W
-4693 3931 PD
-24 W
-4705 3949 PD
-24 W
-4714 3968 PD
-24 W
-4720 3987 PD
-24 W
-4724 4006 PD
-24 W
-4733 4024 PD
-24 W
-4751 4042 PD
-24 W
-4761 4060 PD
-24 W
-4768 4079 PD
-24 W
-4771 4097 PD
-24 W
-4779 4117 PD
-24 W
-4807 4133 PD
-24 W
-4834 4137 PD
-24 W
-4844 4157 PD
-24 W
-4839 4176 PD
-24 W
-4830 4194 PD
-24 W
-4821 4212 PD
-24 W
-4815 4231 PD
-24 W
-4807 4250 PD
-24 W
-4835 4261 PD
-24 W
-4848 4279 PD
-24 W
-4853 4297 PD
-24 W
-4856 4316 PD
-24 W
-4856 4336 PD
-24 W
-4871 4354 PD
-24 W
-4899 4350 PD
-24 W
-4926 4338 PD
-24 W
-4953 4334 PD
-24 W
-4973 4353 PD
-24 W
-4953 4372 PD
-24 W
-4959 4390 PD
-24 W
-4977 4408 PD
-24 W
-5000 4426 PD
-24 W
-5011 4444 PD
-24 W
-5018 4463 PD
-24 W
-5029 4481 PD
-24 W
-5056 4472 PD
-24 W
-5084 4486 PD
-24 W
-5111 4492 PD
-24 W
-5141 4495 PD
-24 W
-5119 4513 PD
-24 W
-5116 4531 PD
-24 W
-5131 4550 PD
-24 W
-5133 4568 PD
-24 W
-5160 4582 PD
-24 W
-5162 4600 PD
-24 W
-4209 4607 PD
-24 W
-4208 4607 PD
-24 W
-4207 4588 PD
-24 W
-4209 4570 PD
-24 W
-4207 4551 PD
-24 W
-4199 4532 PD
-24 W
-4195 4513 PD
-24 W
-4193 4493 PD
-24 W
-4186 4473 PD
-24 W
-4176 4455 PD
-24 W
-4160 4437 PD
-24 W
-4149 4418 PD
-24 W
-4145 4400 PD
-24 W
-4143 4380 PD
-24 W
-4144 4361 PD
-24 W
-4121 4344 PD
-24 W
-4116 4325 PD
-24 W
-4136 4307 PD
-24 W
-4143 4289 PD
-24 W
-4143 4272 PD
-24 W
-4140 4252 PD
-24 W
-4136 4234 PD
-24 W
-4130 4215 PD
-24 W
-4125 4197 PD
-24 W
-4124 4178 PD
-24 W
-4120 4159 PD
-24 W
-4116 4139 PD
-24 W
-4114 4121 PD
-24 W
-4111 4102 PD
-24 W
-4109 4084 PD
-24 W
-4104 4064 PD
-24 W
-4101 4046 PD
-24 W
-4096 4029 PD
-24 W
-4083 4010 PD
-24 W
-4070 3991 PD
-24 W
-4061 3972 PD
-24 W
-4046 3954 PD
-24 W
-4038 3935 PD
-24 W
-4034 3915 PD
-24 W
-4035 3898 PD
-24 W
-4040 3879 PD
-24 W
-4043 3861 PD
-24 W
-4049 3842 PD
-24 W
-4052 3823 PD
-24 W
-4047 3805 PD
-24 W
-4050 3787 PD
-24 W
-4050 3768 PD
-24 W
-4053 3750 PD
-24 W
-4048 3732 PD
-24 W
-4046 3715 PD
-24 W
-4041 3696 PD
-24 W
-4041 3678 PD
-24 W
-4042 3659 PD
-24 W
-4049 3641 PD
-24 W
-4050 3637 PD
-24 W
-4077 3630 PD
-24 W
-4105 3624 PD
-24 W
-4133 3617 PD
-24 W
-4160 3610 PD
-24 W
-4186 3601 PD
-24 W
-4213 3591 PD
-24 W
-4241 3576 PD
-24 W
-4268 3562 PD
-24 W
-4296 3553 PD
-24 W
-4325 3544 PD
-24 W
-4352 3530 PD
-24 W
-4368 3511 PD
-24 W
-4387 3494 PD
-24 W
-4401 3476 PD
-24 W
-4429 3478 PD
-24 W
-4456 3479 PD
-24 W
-4483 3477 PD
-24 W
-4511 3476 PD
-24 W
-4510 3475 PD
-24 W
-4536 3494 PD
-24 W
-4549 3512 PD
-24 W
-4563 3529 PD
-24 W
-4578 3548 PD
-24 W
-4600 3567 PD
-24 W
-4628 3576 PD
-24 W
-4652 3595 PD
-24 W
-4663 3614 PD
-24 W
-4679 3633 PD
-24 W
-4697 3651 PD
-24 W
-4711 3669 PD
-24 W
-4729 3689 PD
-24 W
-4746 3708 PD
-24 W
-4756 3727 PD
-24 W
-4764 3745 PD
-24 W
-4780 3764 PD
-24 W
-4793 3782 PD
-24 W
-4803 3801 PD
-24 W
-4813 3819 PD
-24 W
-4823 3836 PD
-24 W
-4833 3854 PD
-24 W
-4850 3872 PD
-24 W
-4869 3891 PD
-24 W
-4883 3910 PD
-24 W
-4897 3928 PD
-24 W
-4910 3946 PD
-24 W
-4920 3965 PD
-24 W
-4929 3985 PD
-24 W
-4936 4002 PD
-24 W
-4938 4020 PD
-24 W
-4944 4039 PD
-24 W
-4950 4057 PD
-24 W
-4957 4076 PD
-24 W
-4965 4095 PD
-24 W
-4972 4114 PD
-24 W
-4982 4134 PD
-24 W
-4988 4152 PD
-24 W
-4997 4170 PD
-24 W
-5007 4188 PD
-24 W
-5031 4206 PD
-24 W
-5041 4226 PD
-24 W
-5044 4244 PD
-24 W
-5045 4263 PD
-24 W
-5051 4282 PD
-24 W
-5070 4300 PD
-24 W
-5087 4319 PD
-24 W
-5098 4338 PD
-24 W
-5103 4357 PD
-24 W
-5108 4375 PD
-24 W
-5113 4393 PD
-24 W
-5120 4411 PD
-24 W
-5147 4416 PD
-24 W
-5159 4397 PD
-24 W
-5149 4379 PD
-24 W
-5138 4359 PD
-24 W
-5131 4341 PD
-24 W
-5128 4323 PD
-24 W
-5139 4305 PD
-24 W
-5167 4296 PD
-24 W
-5173 4314 PD
-24 W
-5177 4333 PD
-24 W
-5202 4351 PD
-24 W
-5219 4369 PD
-24 W
-5227 4387 PD
-24 W
-5232 4407 PD
-24 W
-5239 4425 PD
-24 W
-5242 4443 PD
-24 W
-5249 4461 PD
-24 W
-5243 4480 PD
-24 W
-5237 4499 PD
-24 W
-5234 4518 PD
-24 W
-5233 4535 PD
-24 W
-5239 4553 PD
-24 W
-5249 4571 PD
-24 W
-5246 4590 PD
-24 W
-5244 4608 PD
-24 W
-4118 4607 PD
-24 W
-4117 4607 PD
-24 W
-4117 4588 PD
-24 W
-4125 4571 PD
-24 W
-4125 4553 PD
-24 W
-4122 4535 PD
-24 W
-4114 4516 PD
-24 W
-4104 4499 PD
-24 W
-4095 4479 PD
-24 W
-4081 4460 PD
-24 W
-4071 4442 PD
-24 W
-4063 4424 PD
-24 W
-4053 4406 PD
-24 W
-4046 4388 PD
-24 W
-4036 4369 PD
-24 W
-4028 4352 PD
-24 W
-4019 4334 PD
-24 W
-4016 4316 PD
-24 W
-4043 4317 PD
-24 W
-4063 4298 PD
-24 W
-4061 4280 PD
-24 W
-4049 4260 PD
-24 W
-4041 4240 PD
-24 W
-4035 4222 PD
-24 W
-4034 4203 PD
-24 W
-4039 4184 PD
-24 W
-4041 4166 PD
-24 W
-4033 4147 PD
-24 W
-4025 4129 PD
-24 W
-4022 4110 PD
-24 W
-4021 4091 PD
-24 W
-4019 4072 PD
-24 W
-4016 4053 PD
-24 W
-4010 4035 PD
-24 W
-4008 4017 PD
-24 W
-4003 3998 PD
-24 W
-3994 3980 PD
-24 W
-3981 3962 PD
-24 W
-3979 3945 PD
-24 W
-3971 3926 PD
-24 W
-3951 3909 PD
-24 W
-3952 3890 PD
-24 W
-3955 3869 PD
-24 W
-3951 3850 PD
-24 W
-3951 3832 PD
-24 W
-3953 3814 PD
-24 W
-3957 3796 PD
-24 W
-3959 3779 PD
-24 W
-3963 3760 PD
-24 W
-3961 3741 PD
-24 W
-3958 3723 PD
-24 W
-3955 3705 PD
-24 W
-3952 3687 PD
-24 W
-3949 3669 PD
-24 W
-3945 3650 PD
-24 W
-3941 3632 PD
-24 W
-3941 3614 PD
-24 W
-3942 3595 PD
-24 W
-3944 3577 PD
-24 W
-3938 3559 PD
-24 W
-3933 3541 PD
-24 W
-3934 3529 PD
-24 W
-3951 3523 PD
-24 W
-3978 3510 PD
-24 W
-4006 3499 PD
-24 W
-4034 3490 PD
-24 W
-4062 3478 PD
-24 W
-4088 3469 PD
-24 W
-4115 3461 PD
-24 W
-4142 3449 PD
-24 W
-4170 3433 PD
-24 W
-4197 3417 PD
-24 W
-4225 3400 PD
-24 W
-4250 3382 PD
-24 W
-4262 3364 PD
-24 W
-4275 3346 PD
-24 W
-4291 3327 PD
-24 W
-4306 3308 PD
-24 W
-4329 3290 PD
-24 W
-4353 3272 PD
-24 W
-4380 3262 PD
-24 W
-4407 3249 PD
-24 W
-4408 3278 PD
-24 W
-4427 3296 PD
-24 W
-4445 3314 PD
-24 W
-4461 3332 PD
-24 W
-4488 3348 PD
-24 W
-4515 3348 PD
-24 W
-4542 3363 PD
-24 W
-4569 3381 PD
-24 W
-4588 3400 PD
-24 W
-4610 3418 PD
-24 W
-4628 3435 PD
-24 W
-4649 3453 PD
-24 W
-4657 3471 PD
-24 W
-4664 3489 PD
-24 W
-4685 3508 PD
-24 W
-4703 3526 PD
-24 W
-4714 3546 PD
-24 W
-4728 3564 PD
-24 W
-4753 3583 PD
-24 W
-4775 3601 PD
-24 W
-4795 3620 PD
-24 W
-4812 3638 PD
-24 W
-4825 3658 PD
-24 W
-4836 3676 PD
-24 W
-4846 3695 PD
-24 W
-4854 3713 PD
-24 W
-4867 3731 PD
-24 W
-4880 3749 PD
-24 W
-4894 3767 PD
-24 W
-4908 3786 PD
-24 W
-4920 3805 PD
-24 W
-4932 3824 PD
-24 W
-4947 3843 PD
-24 W
-4961 3861 PD
-24 W
-4972 3881 PD
-24 W
-4981 3899 PD
-24 W
-4994 3918 PD
-24 W
-5014 3936 PD
-24 W
-5023 3953 PD
-24 W
-5029 3972 PD
-24 W
-5038 3993 PD
-24 W
-5044 4011 PD
-24 W
-5049 4029 PD
-24 W
-5055 4048 PD
-24 W
-5063 4066 PD
-24 W
-5074 4085 PD
-24 W
-5084 4103 PD
-24 W
-5095 4122 PD
-24 W
-5114 4140 PD
-24 W
-5139 4157 PD
-24 W
-5165 4165 PD
-24 W
-5194 4169 PD
-24 W
-5219 4187 PD
-24 W
-5241 4205 PD
-24 W
-5251 4224 PD
-24 W
-5248 4243 PD
-24 W
-5246 4261 PD
-24 W
-5244 4279 PD
-24 W
-5248 4297 PD
-24 W
-5256 4315 PD
-24 W
-5280 4333 PD
-24 W
-5291 4352 PD
-24 W
-5294 4369 PD
-24 W
-5312 4388 PD
-24 W
-5328 4406 PD
-24 W
-5345 4425 PD
-24 W
-5361 4444 PD
-24 W
-5372 4462 PD
-24 W
-5385 4482 PD
-24 W
-5395 4501 PD
-24 W
-5401 4519 PD
-24 W
-5403 4539 PD
-24 W
-5402 4558 PD
-24 W
-5400 4576 PD
-24 W
-5407 4594 PD
-24 W
-4022 4609 PD
-24 W
-4021 4609 PD
-24 W
-4023 4591 PD
-24 W
-4024 4572 PD
-24 W
-4021 4553 PD
-24 W
-4020 4535 PD
-24 W
-4020 4516 PD
-24 W
-4010 4496 PD
-24 W
-4001 4477 PD
-24 W
-3992 4458 PD
-24 W
-3986 4440 PD
-24 W
-3980 4422 PD
-24 W
-3973 4403 PD
-24 W
-3967 4384 PD
-24 W
-3963 4366 PD
-24 W
-3964 4348 PD
-24 W
-3935 4340 PD
-24 W
-3908 4340 PD
-24 W
-3920 4322 PD
-24 W
-3939 4302 PD
-24 W
-3945 4282 PD
-24 W
-3946 4262 PD
-24 W
-3945 4243 PD
-24 W
-3944 4223 PD
-24 W
-3943 4204 PD
-24 W
-3942 4183 PD
-24 W
-3941 4163 PD
-24 W
-3938 4144 PD
-24 W
-3933 4126 PD
-24 W
-3929 4107 PD
-24 W
-3927 4089 PD
-24 W
-3924 4069 PD
-24 W
-3917 4051 PD
-24 W
-3909 4032 PD
-24 W
-3902 4015 PD
-24 W
-3874 3997 PD
-24 W
-3866 3978 PD
-24 W
-3879 3960 PD
-24 W
-3880 3942 PD
-24 W
-3871 3923 PD
-24 W
-3858 3906 PD
-24 W
-3866 3888 PD
-24 W
-3876 3868 PD
-24 W
-3879 3850 PD
-24 W
-3882 3832 PD
-24 W
-3878 3812 PD
-24 W
-3869 3793 PD
-24 W
-3873 3774 PD
-24 W
-3877 3756 PD
-24 W
-3872 3738 PD
-24 W
-3864 3721 PD
-24 W
-3858 3701 PD
-24 W
-3851 3682 PD
-24 W
-3845 3663 PD
-24 W
-3841 3645 PD
-24 W
-3837 3625 PD
-24 W
-3833 3605 PD
-24 W
-3829 3588 PD
-24 W
-3821 3570 PD
-24 W
-3813 3551 PD
-24 W
-3802 3532 PD
-24 W
-3781 3513 PD
-24 W
-3760 3495 PD
-24 W
-3750 3478 PD
-24 W
-4280 3086 PD
-24 W
-4280 3084 PD
-24 W
-4308 3101 PD
-24 W
-4337 3118 PD
-24 W
-4363 3137 PD
-24 W
-4384 3156 PD
-24 W
-4405 3175 PD
-24 W
-4427 3193 PD
-24 W
-4452 3212 PD
-24 W
-4481 3227 PD
-24 W
-4509 3243 PD
-24 W
-4533 3261 PD
-24 W
-4556 3280 PD
-24 W
-4578 3300 PD
-24 W
-4603 3320 PD
-24 W
-4628 3338 PD
-24 W
-4652 3357 PD
-24 W
-4673 3376 PD
-24 W
-4692 3393 PD
-24 W
-4711 3412 PD
-24 W
-4727 3431 PD
-24 W
-4741 3449 PD
-24 W
-4756 3467 PD
-24 W
-4770 3485 PD
-24 W
-4784 3504 PD
-24 W
-4797 3522 PD
-24 W
-4809 3542 PD
-24 W
-4824 3562 PD
-24 W
-4836 3579 PD
-24 W
-4854 3598 PD
-24 W
-4860 3616 PD
-24 W
-4869 3635 PD
-24 W
-4890 3654 PD
-24 W
-4908 3672 PD
-24 W
-4922 3690 PD
-24 W
-4922 3709 PD
-24 W
-4928 3726 PD
-24 W
-4955 3740 PD
-24 W
-4969 3757 PD
-24 W
-4973 3776 PD
-24 W
-4976 3795 PD
-24 W
-4989 3814 PD
-24 W
-5007 3833 PD
-24 W
-5034 3851 PD
-24 W
-5058 3869 PD
-24 W
-5077 3888 PD
-24 W
-5093 3905 PD
-24 W
-5099 3923 PD
-24 W
-5104 3942 PD
-24 W
-5113 3961 PD
-24 W
-5127 3979 PD
-24 W
-5140 3997 PD
-24 W
-5159 4015 PD
-24 W
-5188 4031 PD
-24 W
-5213 4050 PD
-24 W
-5241 4052 PD
-24 W
-5268 4057 PD
-24 W
-5293 4076 PD
-24 W
-5303 4095 PD
-24 W
-5312 4113 PD
-24 W
-5315 4132 PD
-24 W
-5313 4150 PD
-24 W
-5317 4168 PD
-24 W
-5345 4173 PD
-24 W
-5356 4192 PD
-24 W
-5365 4210 PD
-24 W
-5373 4229 PD
-24 W
-5380 4247 PD
-24 W
-5390 4267 PD
-24 W
-5402 4286 PD
-24 W
-5420 4305 PD
-24 W
-5439 4324 PD
-24 W
-5458 4343 PD
-24 W
-5480 4362 PD
-24 W
-5505 4380 PD
-24 W
-5523 4398 PD
-24 W
-5528 4417 PD
-24 W
-5530 4436 PD
-24 W
-5539 4455 PD
-24 W
-5550 4473 PD
-24 W
-5555 4491 PD
-24 W
-5551 4512 PD
-24 W
-5553 4530 PD
-24 W
-5563 4548 PD
-24 W
-5569 4567 PD
-24 W
-5579 4586 PD
-24 W
-5590 4605 PD
-24 W
-3745 3465 PD
-24 W
-3756 3446 PD
-24 W
-3768 3428 PD
-24 W
-3789 3410 PD
-24 W
-3817 3393 PD
-24 W
-3845 3380 PD
-24 W
-3872 3366 PD
-24 W
-3899 3353 PD
-24 W
-3927 3340 PD
-24 W
-3957 3325 PD
-24 W
-3985 3309 PD
-24 W
-4014 3293 PD
-24 W
-4043 3277 PD
-24 W
-4070 3260 PD
-24 W
-4098 3243 PD
-24 W
-4122 3225 PD
-24 W
-4148 3207 PD
-24 W
-4167 3189 PD
-24 W
-4176 3171 PD
-24 W
-4185 3153 PD
-24 W
-4197 3135 PD
-24 W
-4211 3117 PD
-24 W
-4227 3100 PD
-24 W
-4253 3090 PD
-24 W
-3949 4611 PD
-24 W
-3948 4610 PD
-24 W
-3952 4591 PD
-24 W
-3943 4572 PD
-24 W
-3938 4553 PD
-24 W
-3935 4534 PD
-24 W
-3933 4516 PD
-24 W
-3929 4497 PD
-24 W
-3927 4479 PD
-24 W
-3912 4460 PD
-24 W
-3902 4441 PD
-24 W
-3900 4423 PD
-24 W
-3908 4404 PD
-24 W
-3896 4385 PD
-24 W
-3876 4367 PD
-24 W
-3849 4352 PD
-24 W
-3822 4341 PD
-24 W
-3795 4328 PD
-24 W
-3824 4315 PD
-24 W
-3851 4302 PD
-24 W
-3874 4282 PD
-24 W
-3876 4263 PD
-24 W
-3875 4246 PD
-24 W
-3872 4227 PD
-24 W
-3868 4209 PD
-24 W
-3864 4189 PD
-24 W
-3858 4170 PD
-24 W
-3854 4151 PD
-24 W
-3852 4133 PD
-24 W
-3848 4114 PD
-24 W
-3843 4096 PD
-24 W
-3841 4076 PD
-24 W
-3833 4058 PD
-24 W
-3815 4040 PD
-24 W
-3798 4021 PD
-24 W
-3775 4003 PD
-24 W
-3756 3985 PD
-24 W
-3781 3967 PD
-24 W
-3792 3949 PD
-24 W
-3785 3931 PD
-24 W
-3780 3913 PD
-24 W
-3775 3895 PD
-24 W
-3784 3877 PD
-24 W
-3795 3857 PD
-24 W
-3800 3839 PD
-24 W
-3804 3821 PD
-24 W
-3802 3803 PD
-24 W
-3799 3784 PD
-24 W
-3798 3766 PD
-24 W
-3791 3747 PD
-24 W
-3788 3729 PD
-24 W
-3784 3710 PD
-24 W
-3782 3692 PD
-24 W
-3776 3673 PD
-24 W
-3765 3653 PD
-24 W
-3758 3635 PD
-24 W
-3753 3616 PD
-24 W
-3745 3597 PD
-24 W
-3735 3579 PD
-24 W
-3719 3559 PD
-24 W
-3707 3542 PD
-24 W
-3693 3523 PD
-24 W
-3677 3505 PD
-24 W
-3662 3486 PD
-24 W
-3647 3468 PD
-24 W
-3636 3448 PD
-24 W
-3628 3430 PD
-24 W
-3619 3410 PD
-24 W
-3608 3392 PD
-24 W
-3598 3374 PD
-24 W
-3597 3352 PD
-24 W
-3596 3352 PD
-24 W
-3587 3333 PD
-24 W
-3599 3315 PD
-24 W
-3614 3296 PD
-24 W
-3640 3279 PD
-24 W
-3668 3259 PD
-24 W
-3693 3242 PD
-24 W
-3720 3228 PD
-24 W
-3748 3213 PD
-24 W
-3775 3199 PD
-24 W
-3804 3184 PD
-24 W
-3833 3168 PD
-24 W
-3852 3149 PD
-24 W
-3868 3132 PD
-24 W
-3884 3112 PD
-24 W
-3900 3094 PD
-24 W
-3927 3076 PD
-24 W
-3956 3064 PD
-24 W
-3984 3054 PD
-24 W
-4014 3047 PD
-24 W
-4042 3036 PD
-24 W
-4070 3025 PD
-24 W
-4093 3006 PD
-24 W
-4110 2987 PD
-24 W
-4125 2969 PD
-24 W
-4136 2951 PD
-24 W
-4163 2944 PD
-24 W
-4170 2926 PD
-24 W
-4175 2922 PD
-24 W
-4198 2927 PD
-24 W
-4227 2940 PD
-24 W
-4254 2957 PD
-24 W
-4277 2974 PD
-24 W
-4303 2993 PD
-24 W
-4330 3010 PD
-24 W
-4358 3029 PD
-24 W
-4380 3046 PD
-24 W
-4400 3064 PD
-24 W
-4423 3082 PD
-24 W
-4452 3097 PD
-24 W
-4479 3114 PD
-24 W
-4480 3132 PD
-24 W
-4506 3139 PD
-24 W
-4533 3150 PD
-24 W
-4542 3169 PD
-24 W
-4556 3186 PD
-24 W
-4555 3205 PD
-24 W
-4574 3224 PD
-24 W
-4596 3242 PD
-24 W
-4616 3260 PD
-24 W
-4638 3279 PD
-24 W
-4659 3298 PD
-24 W
-4685 3317 PD
-24 W
-4713 3329 PD
-24 W
-4740 3345 PD
-24 W
-4757 3364 PD
-24 W
-4770 3383 PD
-24 W
-4779 3403 PD
-24 W
-4792 3421 PD
-24 W
-4803 3440 PD
-24 W
-4814 3458 PD
-24 W
-4828 3476 PD
-24 W
-4845 3494 PD
-24 W
-4865 3512 PD
-24 W
-4882 3530 PD
-24 W
-4904 3548 PD
-24 W
-4930 3559 PD
-24 W
-4948 3578 PD
-24 W
-4955 3597 PD
-24 W
-4973 3615 PD
-24 W
-4990 3634 PD
-24 W
-5006 3652 PD
-24 W
-5025 3670 PD
-24 W
-5043 3689 PD
-24 W
-5061 3706 PD
-24 W
-5069 3724 PD
-24 W
-5059 3742 PD
-24 W
-5076 3761 PD
-24 W
-5098 3779 PD
-24 W
-5127 3798 PD
-24 W
-5156 3812 PD
-24 W
-5185 3823 PD
-24 W
-5213 3836 PD
-24 W
-5241 3850 PD
-24 W
-5269 3865 PD
-24 W
-5291 3883 PD
-24 W
-5309 3901 PD
-24 W
-5337 3911 PD
-24 W
-5358 3931 PD
-24 W
-5368 3951 PD
-24 W
-5378 3971 PD
-24 W
-5392 3989 PD
-24 W
-5403 4007 PD
-24 W
-5416 4027 PD
-24 W
-5431 4046 PD
-24 W
-5443 4063 PD
-24 W
-5454 4081 PD
-24 W
-5466 4101 PD
-24 W
-5478 4120 PD
-24 W
-5492 4138 PD
-24 W
-5504 4156 PD
-24 W
-5516 4176 PD
-24 W
-5528 4196 PD
-24 W
-5537 4214 PD
-24 W
-5547 4235 PD
-24 W
-5555 4253 PD
-24 W
-5564 4272 PD
-24 W
-5573 4291 PD
-24 W
-5587 4309 PD
-24 W
-5604 4328 PD
-24 W
-5620 4346 PD
-24 W
-5633 4363 PD
-24 W
-5649 4383 PD
-24 W
-5664 4401 PD
-24 W
-5671 4419 PD
-24 W
-5673 4440 PD
-24 W
-5675 4457 PD
-24 W
-5672 4477 PD
-24 W
-5672 4495 PD
-24 W
-5673 4514 PD
-24 W
-5688 4533 PD
-24 W
-5708 4552 PD
-24 W
-5727 4571 PD
-24 W
-5735 4590 PD
-24 W
-3870 4600 PD
-24 W
-3860 4581 PD
-24 W
-3858 4562 PD
-24 W
-3856 4544 PD
-24 W
-3852 4525 PD
-24 W
-3851 4507 PD
-24 W
-3848 4488 PD
-24 W
-3833 4469 PD
-24 W
-3823 4450 PD
-24 W
-3826 4432 PD
-24 W
-3826 4414 PD
-24 W
-3811 4395 PD
-24 W
-3782 4381 PD
-24 W
-3754 4370 PD
-24 W
-3727 4357 PD
-24 W
-3700 4347 PD
-24 W
-3676 4329 PD
-24 W
-3703 4324 PD
-24 W
-3730 4310 PD
-24 W
-3758 4296 PD
-24 W
-3787 4281 PD
-24 W
-3807 4263 PD
-24 W
-3809 4244 PD
-24 W
-3801 4226 PD
-24 W
-3790 4206 PD
-24 W
-3787 4188 PD
-24 W
-3781 4169 PD
-24 W
-3774 4148 PD
-24 W
-3771 4130 PD
-24 W
-3769 4110 PD
-24 W
-3761 4092 PD
-24 W
-3751 4073 PD
-24 W
-3744 4055 PD
-24 W
-3730 4037 PD
-24 W
-3702 4019 PD
-24 W
-3675 4002 PD
-24 W
-3653 3984 PD
-24 W
-3661 3966 PD
-24 W
-3688 3961 PD
-24 W
-3716 3954 PD
-24 W
-3727 3936 PD
-24 W
-3708 3917 PD
-24 W
-3694 3899 PD
-24 W
-3691 3881 PD
-24 W
-3697 3862 PD
-24 W
-3704 3844 PD
-24 W
-3712 3826 PD
-24 W
-3720 3807 PD
-24 W
-3723 3788 PD
-24 W
-3722 3770 PD
-24 W
-3723 3751 PD
-24 W
-3720 3733 PD
-24 W
-3715 3715 PD
-24 W
-3708 3697 PD
-24 W
-3700 3678 PD
-24 W
-3690 3661 PD
-24 W
-3676 3642 PD
-24 W
-3661 3623 PD
-24 W
-3650 3605 PD
-24 W
-3636 3588 PD
-24 W
-3625 3569 PD
-24 W
-3616 3551 PD
-24 W
-3608 3533 PD
-24 W
-3596 3515 PD
-24 W
-3581 3496 PD
-24 W
-3564 3477 PD
-24 W
-3548 3458 PD
-24 W
-3535 3439 PD
-24 W
-3521 3422 PD
-24 W
-3508 3403 PD
-24 W
-3498 3385 PD
-24 W
-3489 3367 PD
-24 W
-3478 3348 PD
-24 W
-3469 3329 PD
-24 W
-3465 3312 PD
-24 W
-3450 3293 PD
-24 W
-3425 3275 PD
-24 W
-3398 3261 PD
-24 W
-3377 3242 PD
-24 W
-3370 3220 PD
-24 W
-3366 3222 PD
-24 W
-3349 3204 PD
-24 W
-3355 3186 PD
-24 W
-3374 3168 PD
-24 W
-3399 3149 PD
-24 W
-3427 3130 PD
-24 W
-3450 3112 PD
-24 W
-3475 3093 PD
-24 W
-3498 3073 PD
-24 W
-3522 3054 PD
-24 W
-3543 3035 PD
-24 W
-3566 3017 PD
-24 W
-3590 2997 PD
-24 W
-3619 2978 PD
-24 W
-3646 2964 PD
-24 W
-3673 2953 PD
-24 W
-3703 2943 PD
-24 W
-3733 2932 PD
-24 W
-3761 2924 PD
-24 W
-3790 2914 PD
-24 W
-3819 2906 PD
-24 W
-3846 2900 PD
-24 W
-3873 2892 PD
-24 W
-3902 2880 PD
-24 W
-3931 2867 PD
-24 W
-3959 2847 PD
-24 W
-3973 2828 PD
-24 W
-3986 2810 PD
-24 W
-3990 2791 PD
-24 W
-3995 2773 PD
-24 W
-4005 2755 PD
-24 W
-4022 2737 PD
-24 W
-4042 2722 PD
-24 W
-4050 2727 PD
-24 W
-4066 2747 PD
-24 W
-4090 2764 PD
-24 W
-4117 2778 PD
-24 W
-4146 2792 PD
-24 W
-4172 2808 PD
-24 W
-4197 2826 PD
-24 W
-4220 2845 PD
-24 W
-4236 2863 PD
-24 W
-4255 2881 PD
-24 W
-4283 2896 PD
-24 W
-4310 2908 PD
-24 W
-4339 2925 PD
-24 W
-4362 2944 PD
-24 W
-4379 2962 PD
-24 W
-4394 2980 PD
-24 W
-4413 2999 PD
-24 W
-4435 3017 PD
-24 W
-4463 3025 PD
-24 W
-4490 3034 PD
-24 W
-4514 3053 PD
-24 W
-4537 3071 PD
-24 W
-4564 3088 PD
-24 W
-4586 3106 PD
-24 W
-4607 3125 PD
-24 W
-4624 3142 PD
-24 W
-4631 3161 PD
-24 W
-4635 3180 PD
-24 W
-4648 3198 PD
-24 W
-4675 3215 PD
-24 W
-4702 3231 PD
-24 W
-4731 3251 PD
-24 W
-4750 3270 PD
-24 W
-4767 3288 PD
-24 W
-4785 3308 PD
-24 W
-4804 3327 PD
-24 W
-4821 3346 PD
-24 W
-4838 3365 PD
-24 W
-4859 3383 PD
-24 W
-4882 3401 PD
-24 W
-4907 3420 PD
-24 W
-4936 3433 PD
-24 W
-4962 3451 PD
-24 W
-4968 3469 PD
-24 W
-4974 3487 PD
-24 W
-4990 3506 PD
-24 W
-5005 3524 PD
-24 W
-5020 3543 PD
-24 W
-5036 3564 PD
-24 W
-5058 3583 PD
-24 W
-5085 3601 PD
-24 W
-5113 3617 PD
-24 W
-5136 3635 PD
-24 W
-5153 3653 PD
-24 W
-5172 3672 PD
-24 W
-5201 3672 PD
-24 W
-5223 3690 PD
-24 W
-5237 3708 PD
-24 W
-5250 3727 PD
-24 W
-5270 3746 PD
-24 W
-5296 3765 PD
-24 W
-5324 3779 PD
-24 W
-5352 3795 PD
-24 W
-5375 3813 PD
-24 W
-5394 3831 PD
-24 W
-5410 3849 PD
-24 W
-5431 3869 PD
-24 W
-5454 3888 PD
-24 W
-5473 3907 PD
-24 W
-5485 3926 PD
-24 W
-5497 3944 PD
-24 W
-5511 3961 PD
-24 W
-5526 3979 PD
-24 W
-5541 3998 PD
-24 W
-5558 4017 PD
-24 W
-5570 4034 PD
-24 W
-5582 4053 PD
-24 W
-5593 4071 PD
-24 W
-5607 4091 PD
-24 W
-5618 4110 PD
-24 W
-5624 4128 PD
-24 W
-5633 4147 PD
-24 W
-5642 4168 PD
-24 W
-5650 4186 PD
-24 W
-5659 4204 PD
-24 W
-5669 4223 PD
-24 W
-5677 4241 PD
-24 W
-5687 4261 PD
-24 W
-5699 4279 PD
-24 W
-5716 4298 PD
-24 W
-5728 4315 PD
-24 W
-5742 4333 PD
-24 W
-5760 4351 PD
-24 W
-5781 4371 PD
-24 W
-5797 4389 PD
-24 W
-5797 4408 PD
-24 W
-5799 4426 PD
-24 W
-5795 4444 PD
-24 W
-5795 4463 PD
-24 W
-5809 4481 PD
-24 W
-5826 4501 PD
-24 W
-5848 4520 PD
-24 W
-5860 4538 PD
-24 W
-5868 4558 PD
-24 W
-5873 4577 PD
-24 W
-5880 4595 PD
-24 W
-3788 4603 PD
-24 W
-3787 4603 PD
-24 W
-3772 4584 PD
-24 W
-3772 4566 PD
-24 W
-3779 4547 PD
-24 W
-3782 4527 PD
-24 W
-3780 4509 PD
-24 W
-3776 4491 PD
-24 W
-3758 4473 PD
-24 W
-3754 4454 PD
-24 W
-3747 4435 PD
-24 W
-3730 4416 PD
-24 W
-3706 4397 PD
-24 W
-3678 4381 PD
-24 W
-3651 4367 PD
-24 W
-3623 4361 PD
-24 W
-3597 4351 PD
-24 W
-3592 4333 PD
-24 W
-3587 4315 PD
-24 W
-3614 4307 PD
-24 W
-3641 4298 PD
-24 W
-3668 4285 PD
-24 W
-3695 4272 PD
-24 W
-3723 4257 PD
-24 W
-3733 4239 PD
-24 W
-3734 4221 PD
-24 W
-3730 4201 PD
-24 W
-3723 4181 PD
-24 W
-3718 4162 PD
-24 W
-3712 4143 PD
-24 W
-3706 4124 PD
-24 W
-3699 4105 PD
-24 W
-3691 4085 PD
-24 W
-3679 4067 PD
-24 W
-3659 4048 PD
-24 W
-3632 4034 PD
-24 W
-3605 4024 PD
-24 W
-3577 4008 PD
-24 W
-3559 3990 PD
-24 W
-3556 3970 PD
-24 W
-3574 3952 PD
-24 W
-3585 3934 PD
-24 W
-3575 3916 PD
-24 W
-3582 3898 PD
-24 W
-3604 3879 PD
-24 W
-3617 3860 PD
-24 W
-3600 3842 PD
-24 W
-3597 3823 PD
-24 W
-3617 3805 PD
-24 W
-3636 3787 PD
-24 W
-3647 3769 PD
-24 W
-3647 3751 PD
-24 W
-3647 3733 PD
-24 W
-3655 3715 PD
-24 W
-3666 3695 PD
-24 W
-3662 3677 PD
-24 W
-3635 3659 PD
-24 W
-3619 3640 PD
-24 W
-3606 3622 PD
-24 W
-3593 3604 PD
-24 W
-3579 3587 PD
-24 W
-3567 3567 PD
-24 W
-3553 3549 PD
-24 W
-3543 3531 PD
-24 W
-3530 3511 PD
-24 W
-3517 3493 PD
-24 W
-3502 3475 PD
-24 W
-3485 3456 PD
-24 W
-3467 3437 PD
-24 W
-3449 3418 PD
-24 W
-3432 3400 PD
-24 W
-3413 3381 PD
-24 W
-3395 3362 PD
-24 W
-3378 3343 PD
-24 W
-3363 3323 PD
-24 W
-3348 3306 PD
-24 W
-3331 3286 PD
-24 W
-3313 3268 PD
-24 W
-3293 3250 PD
-24 W
-3267 3232 PD
-24 W
-3245 3214 PD
-24 W
-3220 3195 PD
-24 W
-3198 3178 PD
-24 W
-3177 3159 PD
-24 W
-3156 3140 PD
-24 W
-3130 3122 PD
-24 W
-3119 3104 PD
-24 W
-3111 3098 PD
-24 W
-3113 3084 PD
-24 W
-3116 3066 PD
-24 W
-3124 3048 PD
-24 W
-3130 3030 PD
-24 W
-3133 3011 PD
-24 W
-3145 2991 PD
-24 W
-3165 2973 PD
-24 W
-3192 2956 PD
-24 W
-3206 2938 PD
-24 W
-3216 2920 PD
-24 W
-3233 2902 PD
-24 W
-3260 2891 PD
-24 W
-3290 2878 PD
-24 W
-3315 2860 PD
-24 W
-3343 2841 PD
-24 W
-3370 2826 PD
-24 W
-3397 2811 PD
-24 W
-3425 2794 PD
-24 W
-3454 2777 PD
-24 W
-3481 2764 PD
-24 W
-3510 2757 PD
-24 W
-3538 2750 PD
-24 W
-3566 2742 PD
-24 W
-3596 2734 PD
-24 W
-3626 2725 PD
-24 W
-3653 2717 PD
-24 W
-3680 2708 PD
-24 W
-3710 2702 PD
-24 W
-3737 2695 PD
-24 W
-3765 2687 PD
-24 W
-3795 2673 PD
-24 W
-3812 2656 PD
-24 W
-3827 2637 PD
-24 W
-3840 2617 PD
-24 W
-3847 2598 PD
-24 W
-3851 2580 PD
-24 W
-3858 2560 PD
-24 W
-3859 2543 PD
-24 W
-3864 2524 PD
-24 W
-3870 2506 PD
-24 W
-3873 2500 PD
-24 W
-3900 2506 PD
-24 W
-3927 2517 PD
-24 W
-3957 2525 PD
-24 W
-3984 2543 PD
-24 W
-4000 2561 PD
-24 W
-4010 2580 PD
-24 W
-4031 2598 PD
-24 W
-4053 2616 PD
-24 W
-4079 2635 PD
-24 W
-4101 2654 PD
-24 W
-4117 2673 PD
-24 W
-4145 2687 PD
-24 W
-4160 2706 PD
-24 W
-4181 2724 PD
-24 W
-4205 2743 PD
-24 W
-4228 2760 PD
-24 W
-4257 2776 PD
-24 W
-4283 2790 PD
-24 W
-4311 2808 PD
-24 W
-4339 2826 PD
-24 W
-4367 2845 PD
-24 W
-4385 2864 PD
-24 W
-4402 2882 PD
-24 W
-4422 2901 PD
-24 W
-4448 2921 PD
-24 W
-4474 2940 PD
-24 W
-4501 2958 PD
-24 W
-4528 2975 PD
-24 W
-4556 2994 PD
-24 W
-4580 3013 PD
-24 W
-4605 3031 PD
-24 W
-4632 3050 PD
-24 W
-4660 3068 PD
-24 W
-4681 3086 PD
-24 W
-4680 3104 PD
-24 W
-4688 3124 PD
-24 W
-4702 3144 PD
-24 W
-4721 3164 PD
-24 W
-4741 3181 PD
-24 W
-4770 3197 PD
-24 W
-4800 3214 PD
-24 W
-4826 3233 PD
-24 W
-4853 3251 PD
-24 W
-4880 3270 PD
-24 W
-4901 3289 PD
-24 W
-4921 3308 PD
-24 W
-4950 3326 PD
-24 W
-4979 3334 PD
-24 W
-5006 3347 PD
-24 W
-5035 3356 PD
-24 W
-5062 3375 PD
-24 W
-5075 3393 PD
-24 W
-5088 3411 PD
-24 W
-5110 3430 PD
-24 W
-5135 3448 PD
-24 W
-5158 3467 PD
-24 W
-5177 3486 PD
-24 W
-5195 3506 PD
-24 W
-5210 3524 PD
-24 W
-5230 3544 PD
-24 W
-5246 3562 PD
-24 W
-5263 3580 PD
-24 W
-5281 3598 PD
-24 W
-5300 3617 PD
-24 W
-5315 3635 PD
-24 W
-5332 3653 PD
-24 W
-5351 3673 PD
-24 W
-5369 3692 PD
-24 W
-5389 3712 PD
-24 W
-5409 3732 PD
-24 W
-5430 3750 PD
-24 W
-5453 3769 PD
-24 W
-5477 3788 PD
-24 W
-5501 3807 PD
-24 W
-5523 3827 PD
-24 W
-5543 3845 PD
-24 W
-5567 3865 PD
-24 W
-5582 3883 PD
-24 W
-5598 3902 PD
-24 W
-5614 3921 PD
-24 W
-5629 3940 PD
-24 W
-5645 3958 PD
-24 W
-5664 3978 PD
-24 W
-5681 3998 PD
-24 W
-5701 4016 PD
-24 W
-5717 4034 PD
-24 W
-5733 4053 PD
-24 W
-5746 4071 PD
-24 W
-5762 4092 PD
-24 W
-5773 4110 PD
-24 W
-5785 4129 PD
-24 W
-5794 4147 PD
-24 W
-5803 4166 PD
-24 W
-5812 4185 PD
-24 W
-5823 4203 PD
-24 W
-5831 4223 PD
-24 W
-5834 4243 PD
-24 W
-5839 4262 PD
-24 W
-5847 4281 PD
-24 W
-5861 4300 PD
-24 W
-5877 4318 PD
-24 W
-5897 4338 PD
-24 W
-5914 4355 PD
-24 W
-5930 4375 PD
-24 W
-5933 4393 PD
-24 W
-5930 4411 PD
-24 W
-5927 4429 PD
-24 W
-5927 4449 PD
-24 W
-5932 4468 PD
-24 W
-5944 4486 PD
-24 W
-5962 4507 PD
-24 W
-5975 4525 PD
-24 W
-5993 4545 PD
-24 W
-6005 4564 PD
-24 W
-6012 4583 PD
-24 W
-6024 4600 PD
-24 W
-3730 4603 PD
-24 W
-3718 4585 PD
-24 W
-3714 4567 PD
-24 W
-3713 4548 PD
-24 W
-3715 4529 PD
-24 W
-3711 4510 PD
-24 W
-3695 4492 PD
-24 W
-3686 4472 PD
-24 W
-3688 4454 PD
-24 W
-3682 4434 PD
-24 W
-3662 4416 PD
-24 W
-3634 4411 PD
-24 W
-3607 4408 PD
-24 W
-3579 4392 PD
-24 W
-3567 4373 PD
-24 W
-3538 4369 PD
-24 W
-3510 4352 PD
-24 W
-3525 4334 PD
-24 W
-3534 4316 PD
-24 W
-3529 4298 PD
-24 W
-3542 4279 PD
-24 W
-3571 4274 PD
-24 W
-3600 4266 PD
-24 W
-3629 4253 PD
-24 W
-3657 4244 PD
-24 W
-3666 4225 PD
-24 W
-3666 4207 PD
-24 W
-3665 4189 PD
-24 W
-3660 4169 PD
-24 W
-3655 4150 PD
-24 W
-3653 4131 PD
-24 W
-3646 4113 PD
-24 W
-3630 4095 PD
-24 W
-3602 4083 PD
-24 W
-3574 4067 PD
-24 W
-3547 4055 PD
-24 W
-3518 4043 PD
-24 W
-3490 4025 PD
-24 W
-3471 4007 PD
-24 W
-3457 3988 PD
-24 W
-3467 3970 PD
-24 W
-3488 3952 PD
-24 W
-3493 3934 PD
-24 W
-3492 3916 PD
-24 W
-3492 3898 PD
-24 W
-3520 3881 PD
-24 W
-3529 3862 PD
-24 W
-3525 3845 PD
-24 W
-3517 3826 PD
-24 W
-3526 3808 PD
-24 W
-3545 3789 PD
-24 W
-3557 3771 PD
-24 W
-3566 3753 PD
-24 W
-3571 3735 PD
-24 W
-3578 3716 PD
-24 W
-3579 3696 PD
-24 W
-3571 3678 PD
-24 W
-3562 3659 PD
-24 W
-3547 3641 PD
-24 W
-3522 3622 PD
-24 W
-3510 3604 PD
-24 W
-3508 3586 PD
-24 W
-3510 3567 PD
-24 W
-3499 3547 PD
-24 W
-3482 3529 PD
-24 W
-3461 3510 PD
-24 W
-3436 3491 PD
-24 W
-3420 3472 PD
-24 W
-3405 3455 PD
-24 W
-3386 3436 PD
-24 W
-3366 3416 PD
-24 W
-3348 3398 PD
-24 W
-3336 3380 PD
-24 W
-3318 3362 PD
-24 W
-3290 3343 PD
-24 W
-3268 3325 PD
-24 W
-3247 3307 PD
-24 W
-3222 3288 PD
-24 W
-3198 3270 PD
-24 W
-3172 3253 PD
-24 W
-3144 3237 PD
-24 W
-3116 3219 PD
-24 W
-3097 3199 PD
-24 W
-3078 3181 PD
-24 W
-3056 3163 PD
-24 W
-3030 3145 PD
-24 W
-3002 3129 PD
-24 W
-2993 3110 PD
-24 W
-2986 3090 PD
-24 W
-2970 3072 PD
-24 W
-2945 3053 PD
-24 W
-2929 3035 PD
-24 W
-2924 3017 PD
-24 W
-2918 2999 PD
-24 W
-2911 2980 PD
-24 W
-2910 2966 PD
-24 W
-2909 2962 PD
-24 W
-2908 2944 PD
-24 W
-2907 2926 PD
-24 W
-2890 2907 PD
-24 W
-2883 2889 PD
-24 W
-2879 2872 PD
-24 W
-2878 2854 PD
-24 W
-2885 2836 PD
-24 W
-2899 2817 PD
-24 W
-2916 2798 PD
-24 W
-2939 2781 PD
-24 W
-2961 2763 PD
-24 W
-2976 2745 PD
-24 W
-2987 2727 PD
-24 W
-3010 2710 PD
-24 W
-3040 2698 PD
-24 W
-3068 2686 PD
-24 W
-3096 2672 PD
-24 W
-3126 2655 PD
-24 W
-3151 2636 PD
-24 W
-3181 2616 PD
-24 W
-3207 2598 PD
-24 W
-3237 2579 PD
-24 W
-3266 2563 PD
-24 W
-3294 2549 PD
-24 W
-3321 2535 PD
-24 W
-3349 2521 PD
-24 W
-3377 2504 PD
-24 W
-3405 2489 PD
-24 W
-3432 2480 PD
-24 W
-3460 2473 PD
-24 W
-3490 2470 PD
-24 W
-3520 2464 PD
-24 W
-3547 2459 PD
-24 W
-3575 2456 PD
-24 W
-3604 2449 PD
-24 W
-3627 2431 PD
-24 W
-3642 2413 PD
-24 W
-3650 2395 PD
-24 W
-3659 2377 PD
-24 W
-3665 2360 PD
-24 W
-3669 2341 PD
-24 W
-3676 2324 PD
-24 W
-3704 2315 PD
-24 W
-3732 2320 PD
-24 W
-3745 2325 PD
-24 W
-3744 2338 PD
-24 W
-3767 2356 PD
-24 W
-3791 2374 PD
-24 W
-3819 2391 PD
-24 W
-3849 2407 PD
-24 W
-3878 2422 PD
-24 W
-3908 2436 PD
-24 W
-3937 2449 PD
-24 W
-3967 2464 PD
-24 W
-3996 2480 PD
-24 W
-4025 2494 PD
-24 W
-4053 2505 PD
-24 W
-4081 2522 PD
-24 W
-4109 2539 PD
-24 W
-4126 2557 PD
-24 W
-4145 2576 PD
-24 W
-4172 2593 PD
-24 W
-4190 2611 PD
-24 W
-4208 2629 PD
-24 W
-4214 2648 PD
-24 W
-4230 2666 PD
-24 W
-4257 2678 PD
-24 W
-4283 2694 PD
-24 W
-4310 2711 PD
-24 W
-4328 2729 PD
-24 W
-4333 2747 PD
-24 W
-4350 2764 PD
-24 W
-4377 2782 PD
-24 W
-4407 2795 PD
-24 W
-4434 2810 PD
-24 W
-4462 2826 PD
-24 W
-4490 2845 PD
-24 W
-4508 2864 PD
-24 W
-4519 2882 PD
-24 W
-4538 2901 PD
-24 W
-4557 2919 PD
-24 W
-4586 2936 PD
-24 W
-4614 2946 PD
-24 W
-4642 2956 PD
-24 W
-4670 2968 PD
-24 W
-4696 2986 PD
-24 W
-4719 3004 PD
-24 W
-4744 3022 PD
-24 W
-4767 3040 PD
-24 W
-4787 3058 PD
-24 W
-4784 3076 PD
-24 W
-4804 3095 PD
-24 W
-4831 3114 PD
-24 W
-4859 3125 PD
-24 W
-4886 3114 PD
-24 W
-4913 3125 PD
-24 W
-4936 3144 PD
-24 W
-4960 3163 PD
-24 W
-4988 3177 PD
-24 W
-5015 3194 PD
-24 W
-5037 3212 PD
-24 W
-5066 3230 PD
-24 W
-5087 3248 PD
-24 W
-5109 3267 PD
-24 W
-5134 3287 PD
-24 W
-5151 3305 PD
-24 W
-5166 3323 PD
-24 W
-5181 3342 PD
-24 W
-5195 3361 PD
-24 W
-5205 3380 PD
-24 W
-5217 3398 PD
-24 W
-5233 3416 PD
-24 W
-5253 3435 PD
-24 W
-5266 3453 PD
-24 W
-5285 3473 PD
-24 W
-5302 3492 PD
-24 W
-5318 3511 PD
-24 W
-5336 3529 PD
-24 W
-5354 3548 PD
-24 W
-5370 3567 PD
-24 W
-5382 3585 PD
-24 W
-5383 3602 PD
-24 W
-5407 3620 PD
-24 W
-5429 3640 PD
-24 W
-5451 3658 PD
-24 W
-5476 3676 PD
-24 W
-5500 3694 PD
-24 W
-5519 3712 PD
-24 W
-5542 3731 PD
-24 W
-5561 3749 PD
-24 W
-5579 3767 PD
-24 W
-5599 3786 PD
-24 W
-5623 3803 PD
-24 W
-5646 3822 PD
-24 W
-5664 3840 PD
-24 W
-5679 3859 PD
-24 W
-5694 3878 PD
-24 W
-5707 3896 PD
-24 W
-5724 3914 PD
-24 W
-5742 3933 PD
-24 W
-5763 3952 PD
-24 W
-5788 3970 PD
-24 W
-5815 3986 PD
-24 W
-5832 4006 PD
-24 W
-5832 4024 PD
-24 W
-5841 4043 PD
-24 W
-5863 4061 PD
-24 W
-5885 4081 PD
-24 W
-5894 4098 PD
-24 W
-5903 4118 PD
-24 W
-5912 4138 PD
-24 W
-5922 4157 PD
-24 W
-5932 4177 PD
-24 W
-5939 4195 PD
-24 W
-5946 4212 PD
-24 W
-5950 4231 PD
-24 W
-5957 4249 PD
-24 W
-5965 4269 PD
-24 W
-5972 4288 PD
-24 W
-5982 4305 PD
-24 W
-5995 4324 PD
-24 W
-6010 4341 PD
-24 W
-6028 4360 PD
-24 W
-6041 4378 PD
-24 W
-6041 4396 PD
-24 W
-6045 4414 PD
-24 W
-6051 4432 PD
-24 W
-6057 4452 PD
-24 W
-6064 4471 PD
-24 W
-6074 4491 PD
-24 W
-6089 4509 PD
-24 W
-6100 4528 PD
-24 W
-6108 4546 PD
-24 W
-6122 4564 PD
-24 W
-3658 4601 PD
-24 W
-3657 4601 PD
-24 W
-3639 4583 PD
-24 W
-3633 4564 PD
-24 W
-3629 4545 PD
-24 W
-3625 4527 PD
-24 W
-3622 4508 PD
-24 W
-3620 4489 PD
-24 W
-3614 4470 PD
-24 W
-3596 4453 PD
-24 W
-3569 4442 PD
-24 W
-3540 4432 PD
-24 W
-3524 4414 PD
-24 W
-3515 4397 PD
-24 W
-3488 4380 PD
-24 W
-3460 4366 PD
-24 W
-3432 4354 PD
-24 W
-3430 4336 PD
-24 W
-3456 4321 PD
-24 W
-3470 4303 PD
-24 W
-3467 4285 PD
-24 W
-3481 4268 PD
-24 W
-3480 4249 PD
-24 W
-3490 4230 PD
-24 W
-3518 4225 PD
-24 W
-3545 4234 PD
-24 W
-3572 4218 PD
-24 W
-3575 4199 PD
-24 W
-3575 4180 PD
-24 W
-3576 4160 PD
-24 W
-3574 4143 PD
-24 W
-3562 4125 PD
-24 W
-3546 4107 PD
-24 W
-3517 4090 PD
-24 W
-3489 4086 PD
-24 W
-3461 4074 PD
-24 W
-3437 4056 PD
-24 W
-3410 4042 PD
-24 W
-3382 4029 PD
-24 W
-3364 4010 PD
-24 W
-3349 3991 PD
-24 W
-3363 3973 PD
-24 W
-3381 3954 PD
-24 W
-3409 3935 PD
-24 W
-3429 3918 PD
-24 W
-3427 3900 PD
-24 W
-3416 3882 PD
-24 W
-3413 3864 PD
-24 W
-3427 3845 PD
-24 W
-3413 3828 PD
-24 W
-3396 3810 PD
-24 W
-3409 3792 PD
-24 W
-3424 3774 PD
-24 W
-3420 3756 PD
-24 W
-3413 3736 PD
-24 W
-3409 3718 PD
-24 W
-3408 3699 PD
-24 W
-3405 3681 PD
-24 W
-3400 3661 PD
-24 W
-3393 3643 PD
-24 W
-3386 3625 PD
-24 W
-3381 3607 PD
-24 W
-3376 3588 PD
-24 W
-3375 3571 PD
-24 W
-3378 3552 PD
-24 W
-3385 3532 PD
-24 W
-3387 3512 PD
-24 W
-3382 3494 PD
-24 W
-3371 3475 PD
-24 W
-3355 3456 PD
-24 W
-3328 3439 PD
-24 W
-3301 3423 PD
-24 W
-3286 3404 PD
-24 W
-3268 3387 PD
-24 W
-3242 3369 PD
-24 W
-3215 3358 PD
-24 W
-3190 3339 PD
-24 W
-3169 3321 PD
-24 W
-3145 3302 PD
-24 W
-3124 3285 PD
-24 W
-3103 3266 PD
-24 W
-3088 3248 PD
-24 W
-3071 3230 PD
-24 W
-3048 3211 PD
-24 W
-3019 3201 PD
-24 W
-2991 3189 PD
-24 W
-2968 3171 PD
-24 W
-2944 3153 PD
-24 W
-2916 3136 PD
-24 W
-2888 3127 PD
-24 W
-2862 3113 PD
-24 W
-2844 3095 PD
-24 W
-2830 3076 PD
-24 W
-2828 3058 PD
-24 W
-2827 3039 PD
-24 W
-2824 3018 PD
-24 W
-2820 2999 PD
-24 W
-2811 2981 PD
-24 W
-2802 2963 PD
-24 W
-2795 2945 PD
-24 W
-2779 2925 PD
-24 W
-2764 2906 PD
-24 W
-2754 2888 PD
-24 W
-2743 2869 PD
-24 W
-2731 2850 PD
-24 W
-2725 2831 PD
-24 W
-2720 2813 PD
-24 W
-2709 2794 PD
-24 W
-2697 2776 PD
-24 W
-2688 2759 PD
-24 W
-2683 2740 PD
-24 W
-2678 2724 PD
-24 W
-2676 2722 PD
-24 W
-2667 2703 PD
-24 W
-2668 2685 PD
-24 W
-2671 2667 PD
-24 W
-2678 2649 PD
-24 W
-2683 2629 PD
-24 W
-2692 2610 PD
-24 W
-2697 2592 PD
-24 W
-2705 2575 PD
-24 W
-2709 2555 PD
-24 W
-2716 2536 PD
-24 W
-2723 2518 PD
-24 W
-2734 2499 PD
-24 W
-2761 2496 PD
-24 W
-2777 2478 PD
-24 W
-2780 2459 PD
-24 W
-2788 2441 PD
-24 W
-2818 2427 PD
-24 W
-2845 2418 PD
-24 W
-2872 2402 PD
-24 W
-2899 2383 PD
-24 W
-2926 2367 PD
-24 W
-2954 2348 PD
-24 W
-2982 2334 PD
-24 W
-3011 2317 PD
-24 W
-3039 2301 PD
-24 W
-3069 2282 PD
-24 W
-3097 2269 PD
-24 W
-3124 2260 PD
-24 W
-3152 2254 PD
-24 W
-3180 2251 PD
-24 W
-3207 2248 PD
-24 W
-3237 2244 PD
-24 W
-3264 2243 PD
-24 W
-3294 2241 PD
-24 W
-3323 2238 PD
-24 W
-3352 2232 PD
-24 W
-3381 2228 PD
-24 W
-3409 2223 PD
-24 W
-3435 2217 PD
-24 W
-3464 2211 PD
-24 W
-3492 2197 PD
-24 W
-3520 2182 PD
-24 W
-3540 2162 PD
-24 W
-3560 2144 PD
-24 W
-3582 2127 PD
-24 W
-3599 2144 PD
-24 W
-3610 2150 PD
-24 W
-3629 2161 PD
-24 W
-3658 2172 PD
-24 W
-3688 2184 PD
-24 W
-3714 2199 PD
-24 W
-3737 2219 PD
-24 W
-3754 2237 PD
-24 W
-3772 2256 PD
-24 W
-3798 2258 PD
-24 W
-3818 2276 PD
-24 W
-3835 2293 PD
-24 W
-3862 2308 PD
-24 W
-3889 2318 PD
-24 W
-3918 2332 PD
-24 W
-3944 2349 PD
-24 W
-3971 2367 PD
-24 W
-3998 2382 PD
-24 W
-4026 2399 PD
-24 W
-4056 2412 PD
-24 W
-4084 2426 PD
-24 W
-4113 2442 PD
-24 W
-4140 2460 PD
-24 W
-4162 2478 PD
-24 W
-4178 2496 PD
-24 W
-4198 2516 PD
-24 W
-4217 2533 PD
-24 W
-4244 2546 PD
-24 W
-4264 2564 PD
-24 W
-4275 2583 PD
-24 W
-4292 2601 PD
-24 W
-4318 2619 PD
-24 W
-4345 2633 PD
-24 W
-4373 2650 PD
-24 W
-4402 2659 PD
-24 W
-4425 2678 PD
-24 W
-4448 2695 PD
-24 W
-4476 2711 PD
-24 W
-4504 2727 PD
-24 W
-4532 2746 PD
-24 W
-4551 2764 PD
-24 W
-4577 2783 PD
-24 W
-4602 2802 PD
-24 W
-4624 2820 PD
-24 W
-4638 2838 PD
-24 W
-4652 2857 PD
-24 W
-4670 2876 PD
-24 W
-4693 2894 PD
-24 W
-4722 2912 PD
-24 W
-4749 2927 PD
-24 W
-4777 2945 PD
-24 W
-4793 2962 PD
-24 W
-4820 2972 PD
-24 W
-4837 2990 PD
-24 W
-4844 3008 PD
-24 W
-4873 3027 PD
-24 W
-4901 3041 PD
-24 W
-4929 3048 PD
-24 W
-4958 3055 PD
-24 W
-4986 3058 PD
-24 W
-5015 3071 PD
-24 W
-5033 3089 PD
-24 W
-5053 3107 PD
-24 W
-5082 3123 PD
-24 W
-5109 3142 PD
-24 W
-5137 3160 PD
-24 W
-5164 3173 PD
-24 W
-5185 3192 PD
-24 W
-5203 3210 PD
-24 W
-5219 3229 PD
-24 W
-5235 3248 PD
-24 W
-5251 3265 PD
-24 W
-5267 3285 PD
-24 W
-5278 3303 PD
-24 W
-5288 3321 PD
-24 W
-5303 3341 PD
-24 W
-5318 3362 PD
-24 W
-5334 3383 PD
-24 W
-5347 3404 PD
-24 W
-5359 3424 PD
-24 W
-5369 3445 PD
-24 W
-5379 3466 PD
-24 W
-5392 3486 PD
-24 W
-5407 3505 PD
-24 W
-5431 3526 PD
-24 W
-5447 3546 PD
-24 W
-5462 3565 PD
-24 W
-5479 3584 PD
-24 W
-5498 3602 PD
-24 W
-5522 3620 PD
-24 W
-5549 3638 PD
-24 W
-5575 3657 PD
-24 W
-5595 3676 PD
-24 W
-5616 3694 PD
-24 W
-5638 3712 PD
-24 W
-5660 3730 PD
-24 W
-5684 3751 PD
-24 W
-5707 3770 PD
-24 W
-5731 3788 PD
-24 W
-5758 3808 PD
-24 W
-5783 3826 PD
-24 W
-5805 3845 PD
-24 W
-5824 3864 PD
-24 W
-5839 3884 PD
-24 W
-5853 3902 PD
-24 W
-5863 3920 PD
-24 W
-5877 3938 PD
-24 W
-5898 3957 PD
-24 W
-5916 3976 PD
-24 W
-5934 3996 PD
-24 W
-5953 4015 PD
-24 W
-5967 4034 PD
-24 W
-5985 4054 PD
-24 W
-6001 4073 PD
-24 W
-6016 4092 PD
-24 W
-6033 4114 PD
-24 W
-6046 4131 PD
-24 W
-6060 4151 PD
-24 W
-6069 4169 PD
-24 W
-6067 4188 PD
-24 W
-6069 4206 PD
-24 W
-6074 4225 PD
-24 W
-6076 4246 PD
-24 W
-6084 4265 PD
-24 W
-6094 4283 PD
-24 W
-6106 4302 PD
-24 W
-6111 4320 PD
-24 W
-6114 4339 PD
-24 W
-6116 4358 PD
-24 W
-6121 4379 PD
-24 W
-6126 4399 PD
-24 W
-6129 4418 PD
-24 W
-6136 4437 PD
-24 W
-6145 4455 PD
-24 W
-6158 4474 PD
-24 W
-6174 4492 PD
-24 W
-6191 4510 PD
-24 W
-6208 4529 PD
-24 W
-6222 4548 PD
-24 W
-3578 4605 PD
-24 W
-3577 4605 PD
-24 W
-3568 4586 PD
-24 W
-3565 4567 PD
-24 W
-3559 4549 PD
-24 W
-3550 4531 PD
-24 W
-3536 4512 PD
-24 W
-3516 4492 PD
-24 W
-3493 4474 PD
-24 W
-3471 4456 PD
-24 W
-3443 4437 PD
-24 W
-3416 4418 PD
-24 W
-3390 4398 PD
-24 W
-3370 4379 PD
-24 W
-3359 4360 PD
-24 W
-3359 4341 PD
-24 W
-3361 4323 PD
-24 W
-3371 4303 PD
-24 W
-3368 4286 PD
-24 W
-3376 4267 PD
-24 W
-3403 4256 PD
-24 W
-3397 4237 PD
-24 W
-3380 4219 PD
-24 W
-3376 4202 PD
-24 W
-3403 4191 PD
-24 W
-3431 4183 PD
-24 W
-3460 4172 PD
-24 W
-3473 4155 PD
-24 W
-3461 4136 PD
-24 W
-3433 4119 PD
-24 W
-3407 4107 PD
-24 W
-3378 4089 PD
-24 W
-3356 4071 PD
-24 W
-3327 4067 PD
-24 W
-3315 4049 PD
-24 W
-3288 4034 PD
-24 W
-3288 4017 PD
-24 W
-3260 4001 PD
-24 W
-3257 3983 PD
-24 W
-3283 3969 PD
-24 W
-3298 3951 PD
-24 W
-3325 3944 PD
-24 W
-3342 3926 PD
-24 W
-3338 3909 PD
-24 W
-3310 3892 PD
-24 W
-3301 3874 PD
-24 W
-3284 3855 PD
-24 W
-3276 3838 PD
-24 W
-3270 3820 PD
-24 W
-3259 3802 PD
-24 W
-3234 3784 PD
-24 W
-3240 3765 PD
-24 W
-3220 3746 PD
-24 W
-3209 3728 PD
-24 W
-3205 3710 PD
-24 W
-3204 3692 PD
-24 W
-3205 3673 PD
-24 W
-3212 3653 PD
-24 W
-3219 3635 PD
-24 W
-3214 3617 PD
-24 W
-3206 3599 PD
-24 W
-3213 3581 PD
-24 W
-3226 3563 PD
-24 W
-3221 3544 PD
-24 W
-3209 3525 PD
-24 W
-3196 3507 PD
-24 W
-3182 3489 PD
-24 W
-3180 3471 PD
-24 W
-3169 3453 PD
-24 W
-3153 3434 PD
-24 W
-3148 3417 PD
-24 W
-3144 3399 PD
-24 W
-3131 3380 PD
-24 W
-3113 3361 PD
-24 W
-3101 3342 PD
-24 W
-3089 3324 PD
-24 W
-3069 3305 PD
-24 W
-3041 3286 PD
-24 W
-3028 3267 PD
-24 W
-3010 3249 PD
-24 W
-2983 3235 PD
-24 W
-2954 3226 PD
-24 W
-2926 3218 PD
-24 W
-2906 3200 PD
-24 W
-2885 3182 PD
-24 W
-2856 3169 PD
-24 W
-2829 3160 PD
-24 W
-2799 3152 PD
-24 W
-2769 3144 PD
-24 W
-2742 3131 PD
-24 W
-2720 3113 PD
-24 W
-2723 3095 PD
-24 W
-2731 3077 PD
-24 W
-2735 3058 PD
-24 W
-2733 3039 PD
-24 W
-2727 3020 PD
-24 W
-2716 3001 PD
-24 W
-2701 2983 PD
-24 W
-2688 2963 PD
-24 W
-2680 2944 PD
-24 W
-2670 2926 PD
-24 W
-2660 2907 PD
-24 W
-2650 2888 PD
-24 W
-2642 2868 PD
-24 W
-2632 2849 PD
-24 W
-2624 2831 PD
-24 W
-2611 2813 PD
-24 W
-2595 2796 PD
-24 W
-2576 2778 PD
-24 W
-2561 2759 PD
-24 W
-2548 2740 PD
-24 W
-2533 2721 PD
-24 W
-2520 2702 PD
-24 W
-2509 2683 PD
-24 W
-2498 2665 PD
-24 W
-2486 2646 PD
-24 W
-2476 2627 PD
-24 W
-2468 2609 PD
-24 W
-2459 2591 PD
-24 W
-2450 2577 PD
-24 W
-2440 2572 PD
-24 W
-2430 2553 PD
-24 W
-2423 2534 PD
-24 W
-2419 2516 PD
-24 W
-2417 2498 PD
-24 W
-2422 2480 PD
-24 W
-2429 2461 PD
-24 W
-2434 2442 PD
-24 W
-2439 2424 PD
-24 W
-2444 2406 PD
-24 W
-2450 2388 PD
-24 W
-2458 2369 PD
-24 W
-2469 2351 PD
-24 W
-2481 2332 PD
-24 W
-2494 2313 PD
-24 W
-2504 2295 PD
-24 W
-2515 2277 PD
-24 W
-2529 2259 PD
-24 W
-2550 2241 PD
-24 W
-2578 2225 PD
-24 W
-2605 2214 PD
-24 W
-2633 2204 PD
-24 W
-2662 2190 PD
-24 W
-2690 2176 PD
-24 W
-2720 2159 PD
-24 W
-2748 2143 PD
-24 W
-2775 2128 PD
-24 W
-2803 2114 PD
-24 W
-2831 2101 PD
-24 W
-2858 2089 PD
-24 W
-2886 2076 PD
-24 W
-2915 2062 PD
-24 W
-2946 2050 PD
-24 W
-2975 2039 PD
-24 W
-3001 2030 PD
-24 W
-3028 2024 PD
-24 W
-3057 2018 PD
-24 W
-3086 2016 PD
-24 W
-3114 2013 PD
-24 W
-3142 2009 PD
-24 W
-3170 2007 PD
-24 W
-3198 2006 PD
-24 W
-3229 2003 PD
-24 W
-3256 1999 PD
-24 W
-3285 1996 PD
-24 W
-3314 1990 PD
-24 W
-3342 1984 PD
-24 W
-3371 1975 PD
-24 W
-3399 1968 PD
-24 W
-3426 1958 PD
-24 W
-3453 1949 PD
-24 W
-3479 1935 PD
-24 W
-3503 1917 PD
-24 W
-3507 1914 PD
-24 W
-3531 1920 PD
-24 W
-3557 1939 PD
-24 W
-3568 1957 PD
-24 W
-3583 1975 PD
-24 W
-3602 1994 PD
-24 W
-3625 2011 PD
-24 W
-3648 2029 PD
-24 W
-3675 2043 PD
-24 W
-3702 2052 PD
-24 W
-3714 2072 PD
-24 W
-3721 2090 PD
-24 W
-3733 2108 PD
-24 W
-3751 2128 PD
-24 W
-3774 2147 PD
-24 W
-3801 2157 PD
-24 W
-3814 2175 PD
-24 W
-3834 2193 PD
-24 W
-3862 2194 PD
-24 W
-3890 2194 PD
-24 W
-3901 2212 PD
-24 W
-3918 2230 PD
-24 W
-3944 2248 PD
-24 W
-3954 2267 PD
-24 W
-3963 2286 PD
-24 W
-3988 2304 PD
-24 W
-4012 2322 PD
-24 W
-4039 2337 PD
-24 W
-4066 2353 PD
-24 W
-4095 2371 PD
-24 W
-4124 2383 PD
-24 W
-4153 2389 PD
-24 W
-4180 2393 PD
-24 W
-4208 2407 PD
-24 W
-4227 2425 PD
-24 W
-4253 2444 PD
-24 W
-4281 2458 PD
-24 W
-4308 2471 PD
-24 W
-4320 2489 PD
-24 W
-4336 2507 PD
-24 W
-4364 2523 PD
-24 W
-4387 2541 PD
-24 W
-4402 2559 PD
-24 W
-4417 2578 PD
-24 W
-4444 2593 PD
-24 W
-4472 2595 PD
-24 W
-4476 2614 PD
-24 W
-4493 2631 PD
-24 W
-4524 2637 PD
-24 W
-4552 2647 PD
-24 W
-4574 2665 PD
-24 W
-4584 2682 PD
-24 W
-4600 2702 PD
-24 W
-4618 2721 PD
-24 W
-4638 2740 PD
-24 W
-4663 2760 PD
-24 W
-4689 2780 PD
-24 W
-4710 2798 PD
-24 W
-4726 2816 PD
-24 W
-4742 2834 PD
-24 W
-4762 2854 PD
-24 W
-4779 2873 PD
-24 W
-4799 2891 PD
-24 W
-4822 2909 PD
-24 W
-4850 2927 PD
-24 W
-4878 2943 PD
-24 W
-4908 2958 PD
-24 W
-4937 2970 PD
-24 W
-4966 2984 PD
-24 W
-4993 2996 PD
-24 W
-5021 3003 PD
-24 W
-5049 3012 PD
-24 W
-5075 3023 PD
-24 W
-5103 3036 PD
-24 W
-5130 3053 PD
-24 W
-5155 3070 PD
-24 W
-5183 3088 PD
-24 W
-5210 3105 PD
-24 W
-5237 3123 PD
-24 W
-5261 3141 PD
-24 W
-5284 3159 PD
-24 W
-5306 3177 PD
-24 W
-5324 3196 PD
-24 W
-5334 3214 PD
-24 W
-5337 3233 PD
-24 W
-5337 3250 PD
-24 W
-5345 3269 PD
-24 W
-5354 3289 PD
-24 W
-5367 3309 PD
-24 W
-5381 3329 PD
-24 W
-5397 3348 PD
-24 W
-5408 3367 PD
-24 W
-5417 3385 PD
-24 W
-5429 3404 PD
-24 W
-5439 3422 PD
-24 W
-5451 3442 PD
-24 W
-5466 3463 PD
-24 W
-5480 3483 PD
-24 W
-5499 3502 PD
-24 W
-5517 3520 PD
-24 W
-5534 3538 PD
-24 W
-5547 3556 PD
-24 W
-5568 3576 PD
-24 W
-5586 3594 PD
-24 W
-5607 3612 PD
-24 W
-5634 3631 PD
-24 W
-5661 3648 PD
-24 W
-5688 3664 PD
-24 W
-5718 3683 PD
-24 W
-5745 3699 PD
-24 W
-5774 3714 PD
-24 W
-5802 3731 PD
-24 W
-5823 3749 PD
-24 W
-5838 3767 PD
-24 W
-5861 3786 PD
-24 W
-5883 3804 PD
-24 W
-5896 3823 PD
-24 W
-5908 3841 PD
-24 W
-5923 3859 PD
-24 W
-5939 3878 PD
-24 W
-5958 3897 PD
-24 W
-5981 3916 PD
-24 W
-6000 3933 PD
-24 W
-6017 3951 PD
-24 W
-6032 3970 PD
-24 W
-6041 3987 PD
-24 W
-6049 4006 PD
-24 W
-6057 4024 PD
-24 W
-6074 4043 PD
-24 W
-6093 4062 PD
-24 W
-6116 4080 PD
-24 W
-6111 4099 PD
-24 W
-6112 4119 PD
-24 W
-6115 4139 PD
-24 W
-6121 4157 PD
-24 W
-6132 4175 PD
-24 W
-6140 4192 PD
-24 W
-6147 4210 PD
-24 W
-6151 4229 PD
-24 W
-6160 4247 PD
-24 W
-6168 4265 PD
-24 W
-6170 4283 PD
-24 W
-6171 4301 PD
-24 W
-6172 4319 PD
-24 W
-6180 4337 PD
-24 W
-6188 4357 PD
-24 W
-6198 4375 PD
-24 W
-6208 4393 PD
-24 W
-6216 4411 PD
-24 W
-6219 4431 PD
-24 W
-6221 4449 PD
-24 W
-6229 4468 PD
-24 W
-3507 4607 PD
-24 W
-3499 4589 PD
-24 W
-3499 4571 PD
-24 W
-3490 4551 PD
-24 W
-3477 4532 PD
-24 W
-3449 4513 PD
-24 W
-3420 4501 PD
-24 W
-3392 4485 PD
-24 W
-3365 4470 PD
-24 W
-3339 4451 PD
-24 W
-3320 4432 PD
-24 W
-3304 4413 PD
-24 W
-3292 4395 PD
-24 W
-3288 4378 PD
-24 W
-3287 4359 PD
-24 W
-3270 4341 PD
-24 W
-3249 4324 PD
-24 W
-3237 4305 PD
-24 W
-3245 4287 PD
-24 W
-3252 4267 PD
-24 W
-3253 4249 PD
-24 W
-3244 4230 PD
-24 W
-3230 4211 PD
-24 W
-3207 4193 PD
-24 W
-3183 4174 PD
-24 W
-3181 4156 PD
-24 W
-3184 4138 PD
-24 W
-3212 4142 PD
-24 W
-3242 4147 PD
-24 W
-3270 4147 PD
-24 W
-3281 4128 PD
-24 W
-3272 4110 PD
-24 W
-3251 4091 PD
-24 W
-3231 4072 PD
-24 W
-3206 4054 PD
-24 W
-3198 4036 PD
-24 W
-3200 4019 PD
-24 W
-3172 4015 PD
-24 W
-3156 3996 PD
-24 W
-3163 3978 PD
-24 W
-3168 3959 PD
-24 W
-3192 3940 PD
-24 W
-3192 3922 PD
-24 W
-3182 3904 PD
-24 W
-3163 3885 PD
-24 W
-3145 3867 PD
-24 W
-3129 3848 PD
-24 W
-3109 3829 PD
-24 W
-3094 3810 PD
-24 W
-3078 3792 PD
-24 W
-3069 3774 PD
-24 W
-3068 3755 PD
-24 W
-3073 3737 PD
-24 W
-3082 3718 PD
-24 W
-3090 3698 PD
-24 W
-3094 3679 PD
-24 W
-3096 3660 PD
-24 W
-3096 3642 PD
-24 W
-3095 3623 PD
-24 W
-3094 3603 PD
-24 W
-3090 3583 PD
-24 W
-3087 3565 PD
-24 W
-3087 3545 PD
-24 W
-3084 3526 PD
-24 W
-3082 3508 PD
-24 W
-3076 3488 PD
-24 W
-3069 3468 PD
-24 W
-3064 3449 PD
-24 W
-3058 3430 PD
-24 W
-3050 3410 PD
-24 W
-3041 3392 PD
-24 W
-3031 3374 PD
-24 W
-3019 3354 PD
-24 W
-3005 3334 PD
-24 W
-2990 3315 PD
-24 W
-2969 3296 PD
-24 W
-2948 3276 PD
-24 W
-2928 3258 PD
-24 W
-2905 3239 PD
-24 W
-2878 3229 PD
-24 W
-2850 3222 PD
-24 W
-2822 3207 PD
-24 W
-2793 3193 PD
-24 W
-2763 3188 PD
-24 W
-2734 3190 PD
-24 W
-2705 3184 PD
-24 W
-2676 3170 PD
-24 W
-2647 3162 PD
-24 W
-2620 3159 PD
-24 W
-2606 3140 PD
-24 W
-2603 3122 PD
-24 W
-2598 3104 PD
-24 W
-2622 3086 PD
-24 W
-2650 3072 PD
-24 W
-2673 3054 PD
-24 W
-2665 3036 PD
-24 W
-2637 3018 PD
-24 W
-2618 2999 PD
-24 W
-2619 2980 PD
-24 W
-2625 2962 PD
-24 W
-2621 2944 PD
-24 W
-2612 2925 PD
-24 W
-2598 2906 PD
-24 W
-2588 2887 PD
-24 W
-2577 2869 PD
-24 W
-2564 2850 PD
-24 W
-2546 2831 PD
-24 W
-2527 2812 PD
-24 W
-2505 2794 PD
-24 W
-2488 2775 PD
-24 W
-2469 2756 PD
-24 W
-2457 2737 PD
-24 W
-2448 2719 PD
-24 W
-2434 2700 PD
-24 W
-2422 2682 PD
-24 W
-2410 2664 PD
-24 W
-2393 2645 PD
-24 W
-2376 2626 PD
-24 W
-2359 2607 PD
-24 W
-2339 2589 PD
-24 W
-2322 2570 PD
-24 W
-2307 2551 PD
-24 W
-2294 2533 PD
-24 W
-2288 2515 PD
-24 W
-2283 2494 PD
-24 W
-2279 2475 PD
-24 W
-2271 2458 PD
-24 W
-2260 2449 PD
-24 W
-2253 2439 PD
-24 W
-2243 2419 PD
-24 W
-2229 2400 PD
-24 W
-2214 2381 PD
-24 W
-2200 2362 PD
-24 W
-2190 2343 PD
-24 W
-2185 2326 PD
-24 W
-2185 2308 PD
-24 W
-2195 2290 PD
-24 W
-2216 2272 PD
-24 W
-2229 2253 PD
-24 W
-2238 2235 PD
-24 W
-2242 2216 PD
-24 W
-2244 2197 PD
-24 W
-2247 2179 PD
-24 W
-2249 2161 PD
-24 W
-2253 2142 PD
-24 W
-2257 2124 PD
-24 W
-2262 2106 PD
-24 W
-2270 2088 PD
-24 W
-2279 2070 PD
-24 W
-2292 2051 PD
-24 W
-2309 2032 PD
-24 W
-2326 2013 PD
-24 W
-2352 1995 PD
-24 W
-2380 1979 PD
-24 W
-2407 1967 PD
-24 W
-2437 1959 PD
-24 W
-2465 1949 PD
-24 W
-2491 1934 PD
-24 W
-2512 1914 PD
-24 W
-2534 1894 PD
-24 W
-2552 1876 PD
-24 W
-2577 1855 PD
-24 W
-2605 1838 PD
-24 W
-2634 1819 PD
-24 W
-2662 1802 PD
-24 W
-2689 1784 PD
-24 W
-2718 1766 PD
-24 W
-2748 1751 PD
-24 W
-2776 1739 PD
-24 W
-2804 1728 PD
-24 W
-2831 1720 PD
-24 W
-2860 1713 PD
-24 W
-2890 1706 PD
-24 W
-2917 1701 PD
-24 W
-2946 1696 PD
-24 W
-2977 1696 PD
-24 W
-3004 1697 PD
-24 W
-3032 1702 PD
-24 W
-3060 1707 PD
-24 W
-3087 1714 PD
-24 W
-3114 1722 PD
-24 W
-3143 1732 PD
-24 W
-3173 1736 PD
-24 W
-3202 1737 PD
-24 W
-3229 1735 PD
-24 W
-3256 1734 PD
-24 W
-3284 1732 PD
-24 W
-3312 1736 PD
-24 W
-3339 1739 PD
-24 W
-3365 1739 PD
-24 W
-3392 1725 PD
-24 W
-3419 1708 PD
-24 W
-3447 1694 PD
-24 W
-3474 1687 PD
-24 W
-3476 1688 PD
-24 W
-3490 1708 PD
-24 W
-3507 1726 PD
-24 W
-3530 1744 PD
-24 W
-3545 1763 PD
-24 W
-3564 1782 PD
-24 W
-3583 1800 PD
-24 W
-3610 1819 PD
-24 W
-3614 1839 PD
-24 W
-3615 1856 PD
-24 W
-3631 1875 PD
-24 W
-3655 1894 PD
-24 W
-3668 1912 PD
-24 W
-3678 1930 PD
-24 W
-3693 1951 PD
-24 W
-3715 1971 PD
-24 W
-3741 1988 PD
-24 W
-3768 1985 PD
-24 W
-3795 1985 PD
-24 W
-3825 2004 PD
-24 W
-3845 2022 PD
-24 W
-3847 2040 PD
-24 W
-3850 2058 PD
-24 W
-3865 2076 PD
-24 W
-3883 2095 PD
-24 W
-3900 2114 PD
-24 W
-3917 2131 PD
-24 W
-3933 2150 PD
-24 W
-3951 2169 PD
-24 W
-3980 2171 PD
-24 W
-3991 2192 PD
-24 W
-4000 2213 PD
-24 W
-4014 2232 PD
-24 W
-4032 2250 PD
-24 W
-4059 2267 PD
-24 W
-4088 2279 PD
-24 W
-4116 2286 PD
-24 W
-4147 2296 PD
-24 W
-4175 2307 PD
-24 W
-4205 2323 PD
-24 W
-4233 2337 PD
-24 W
-4263 2352 PD
-24 W
-4290 2370 PD
-24 W
-4316 2380 PD
-24 W
-4331 2399 PD
-24 W
-4351 2416 PD
-24 W
-4379 2429 PD
-24 W
-4406 2428 PD
-24 W
-4415 2446 PD
-24 W
-4442 2455 PD
-24 W
-4470 2458 PD
-24 W
-4499 2460 PD
-24 W
-4523 2478 PD
-24 W
-4536 2496 PD
-24 W
-4564 2505 PD
-24 W
-4581 2524 PD
-24 W
-4577 2543 PD
-24 W
-4574 2560 PD
-24 W
-4601 2573 PD
-24 W
-4616 2591 PD
-24 W
-4628 2610 PD
-24 W
-4635 2628 PD
-24 W
-4646 2647 PD
-24 W
-4664 2665 PD
-24 W
-4682 2682 PD
-24 W
-4699 2701 PD
-24 W
-4718 2720 PD
-24 W
-4741 2740 PD
-24 W
-4760 2758 PD
-24 W
-4781 2776 PD
-24 W
-4802 2794 PD
-24 W
-4818 2814 PD
-24 W
-4832 2833 PD
-24 W
-4848 2851 PD
-24 W
-4872 2871 PD
-24 W
-4900 2887 PD
-24 W
-4927 2905 PD
-24 W
-4955 2912 PD
-24 W
-4982 2919 PD
-24 W
-5009 2933 PD
-24 W
-5023 2951 PD
-24 W
-5051 2959 PD
-24 W
-5079 2964 PD
-24 W
-5108 2966 PD
-24 W
-5136 2970 PD
-24 W
-5164 2982 PD
-24 W
-5191 2996 PD
-24 W
-5212 3015 PD
-24 W
-5219 3033 PD
-24 W
-5234 3052 PD
-24 W
-5261 3070 PD
-24 W
-5291 3086 PD
-24 W
-5320 3103 PD
-24 W
-5347 3122 PD
-24 W
-5374 3135 PD
-24 W
-5377 3153 PD
-24 W
-5394 3171 PD
-24 W
-5415 3190 PD
-24 W
-5422 3208 PD
-24 W
-5435 3226 PD
-24 W
-5444 3245 PD
-24 W
-5454 3265 PD
-24 W
-5461 3284 PD
-24 W
-5466 3304 PD
-24 W
-5470 3323 PD
-24 W
-5478 3342 PD
-24 W
-5490 3361 PD
-24 W
-5502 3379 PD
-24 W
-5512 3398 PD
-24 W
-5522 3418 PD
-24 W
-5540 3435 PD
-24 W
-5557 3453 PD
-24 W
-5567 3472 PD
-24 W
-5580 3491 PD
-24 W
-5595 3510 PD
-24 W
-5611 3530 PD
-24 W
-5629 3549 PD
-24 W
-5652 3569 PD
-24 W
-5679 3587 PD
-24 W
-5706 3601 PD
-24 W
-5734 3614 PD
-24 W
-5763 3631 PD
-24 W
-5790 3648 PD
-24 W
-5820 3665 PD
-24 W
-5849 3680 PD
-24 W
-5877 3698 PD
-24 W
-5902 3717 PD
-24 W
-5926 3735 PD
-24 W
-5950 3755 PD
-24 W
-5975 3773 PD
-24 W
-5993 3791 PD
-24 W
-6006 3809 PD
-24 W
-6015 3827 PD
-24 W
-6024 3846 PD
-24 W
-6032 3866 PD
-24 W
-6042 3885 PD
-24 W
-6055 3903 PD
-24 W
-6067 3921 PD
-24 W
-6094 3934 PD
-24 W
-6112 3953 PD
-24 W
-6118 3972 PD
-24 W
-6118 3991 PD
-24 W
-6125 4009 PD
-24 W
-6148 4026 PD
-24 W
-6177 4037 PD
-24 W
-6187 4056 PD
-24 W
-6185 4075 PD
-24 W
-6186 4095 PD
-24 W
-6187 4112 PD
-24 W
-6187 4130 PD
-24 W
-6193 4150 PD
-24 W
-6221 4162 PD
-24 W
-6229 4182 PD
-24 W
-6229 4199 PD
-24 W
-6240 4217 PD
-24 W
-3439 4606 PD
-24 W
-3438 4606 PD
-24 W
-3418 4588 PD
-24 W
-3399 4570 PD
-24 W
-3373 4552 PD
-24 W
-3343 4541 PD
-24 W
-3316 4534 PD
-24 W
-3289 4526 PD
-24 W
-3262 4518 PD
-24 W
-3233 4507 PD
-24 W
-3205 4494 PD
-24 W
-3177 4480 PD
-24 W
-3149 4468 PD
-24 W
-3122 4454 PD
-24 W
-3096 4435 PD
-24 W
-3073 4416 PD
-24 W
-3044 4404 PD
-24 W
-3015 4397 PD
-24 W
-2993 4378 PD
-24 W
-2977 4359 PD
-24 W
-2963 4340 PD
-24 W
-2940 4322 PD
-24 W
-2911 4305 PD
-24 W
-2883 4292 PD
-24 W
-2855 4287 PD
-24 W
-2827 4281 PD
-24 W
-2799 4270 PD
-24 W
-2771 4258 PD
-24 W
-2743 4243 PD
-24 W
-2731 4224 PD
-24 W
-2725 4207 PD
-24 W
-2720 4188 PD
-24 W
-2692 4176 PD
-24 W
-2664 4169 PD
-24 W
-2648 4149 PD
-24 W
-2644 4131 PD
-24 W
-2648 4113 PD
-24 W
-2662 4095 PD
-24 W
-2690 4084 PD
-24 W
-2718 4077 PD
-24 W
-2747 4071 PD
-24 W
-2776 4063 PD
-24 W
-2806 4055 PD
-24 W
-2836 4046 PD
-24 W
-2863 4037 PD
-24 W
-2892 4029 PD
-24 W
-2922 4019 PD
-24 W
-2950 4008 PD
-24 W
-2978 3999 PD
-24 W
-3008 3990 PD
-24 W
-3035 3982 PD
-24 W
-3061 3964 PD
-24 W
-3062 3946 PD
-24 W
-3055 3928 PD
-24 W
-3056 3910 PD
-24 W
-3028 3913 PD
-24 W
-3010 3894 PD
-24 W
-2983 3890 PD
-24 W
-2989 3872 PD
-24 W
-2965 3854 PD
-24 W
-2955 3833 PD
-24 W
-2950 3815 PD
-24 W
-2947 3797 PD
-24 W
-2945 3779 PD
-24 W
-2949 3761 PD
-24 W
-2960 3742 PD
-24 W
-2976 3725 PD
-24 W
-2998 3707 PD
-24 W
-3016 3689 PD
-24 W
-3025 3671 PD
-24 W
-3027 3652 PD
-24 W
-3023 3634 PD
-24 W
-3014 3615 PD
-24 W
-3000 3596 PD
-24 W
-2985 3578 PD
-24 W
-2974 3560 PD
-24 W
-2964 3541 PD
-24 W
-2953 3522 PD
-24 W
-2946 3503 PD
-24 W
-2938 3484 PD
-24 W
-2929 3466 PD
-24 W
-2922 3447 PD
-24 W
-2914 3428 PD
-24 W
-2903 3408 PD
-24 W
-2889 3391 PD
-24 W
-2863 3371 PD
-24 W
-2839 3353 PD
-24 W
-2819 3336 PD
-24 W
-2806 3316 PD
-24 W
-2805 3298 PD
-24 W
-2795 3280 PD
-24 W
-2773 3262 PD
-24 W
-2751 3244 PD
-24 W
-2724 3232 PD
-24 W
-2696 3226 PD
-24 W
-2670 3215 PD
-24 W
-2642 3199 PD
-24 W
-2614 3201 PD
-24 W
-2584 3197 PD
-24 W
-2556 3192 PD
-24 W
-2529 3187 PD
-24 W
-2513 3168 PD
-24 W
-2511 3149 PD
-24 W
-2510 3131 PD
-24 W
-2523 3112 PD
-24 W
-2550 3095 PD
-24 W
-2569 3077 PD
-24 W
-2578 3059 PD
-24 W
-2549 3045 PD
-24 W
-2526 3027 PD
-24 W
-2537 3010 PD
-24 W
-2549 2992 PD
-24 W
-2551 2972 PD
-24 W
-2547 2954 PD
-24 W
-2537 2936 PD
-24 W
-2526 2918 PD
-24 W
-2513 2900 PD
-24 W
-2499 2881 PD
-24 W
-2483 2862 PD
-24 W
-2462 2843 PD
-24 W
-2444 2824 PD
-24 W
-2424 2806 PD
-24 W
-2405 2788 PD
-24 W
-2384 2770 PD
-24 W
-2362 2751 PD
-24 W
-2343 2732 PD
-24 W
-2326 2713 PD
-24 W
-2308 2694 PD
-24 W
-2293 2676 PD
-24 W
-2279 2657 PD
-24 W
-2264 2639 PD
-24 W
-2251 2620 PD
-24 W
-2242 2602 PD
-24 W
-2229 2584 PD
-24 W
-2212 2567 PD
-24 W
-2195 2549 PD
-24 W
-2177 2531 PD
-24 W
-2159 2513 PD
-24 W
-2141 2494 PD
-24 W
-2126 2476 PD
-24 W
-2115 2458 PD
-24 W
-2102 2440 PD
-24 W
-2086 2422 PD
-24 W
-2071 2405 PD
-24 W
-2058 2387 PD
-24 W
-2044 2369 PD
-24 W
-2034 2351 PD
-24 W
-2024 2331 PD
-24 W
-2016 2312 PD
-24 W
-2012 2293 PD
-24 W
-2012 2275 PD
-24 W
-2013 2272 PD
-24 W
-2010 2257 PD
-24 W
-2007 2239 PD
-24 W
-2008 2221 PD
-24 W
-2011 2203 PD
-24 W
-2017 2184 PD
-24 W
-2021 2166 PD
-24 W
-2036 2147 PD
-24 W
-2055 2128 PD
-24 W
-2059 2110 PD
-24 W
-2052 2092 PD
-24 W
-2041 2074 PD
-24 W
-2030 2055 PD
-24 W
-2019 2035 PD
-24 W
-2013 2017 PD
-24 W
-2017 1999 PD
-24 W
-2024 1980 PD
-24 W
-2033 1961 PD
-24 W
-2043 1942 PD
-24 W
-2052 1925 PD
-24 W
-2059 1907 PD
-24 W
-2063 1889 PD
-24 W
-2066 1871 PD
-24 W
-2067 1853 PD
-24 W
-2070 1834 PD
-24 W
-2074 1815 PD
-24 W
-2080 1796 PD
-24 W
-2086 1777 PD
-24 W
-2094 1758 PD
-24 W
-2102 1739 PD
-24 W
-2114 1721 PD
-24 W
-2141 1705 PD
-24 W
-2168 1693 PD
-24 W
-2195 1684 PD
-24 W
-2224 1674 PD
-24 W
-2253 1662 PD
-24 W
-2283 1649 PD
-24 W
-2310 1636 PD
-24 W
-2339 1622 PD
-24 W
-2369 1607 PD
-24 W
-2396 1593 PD
-24 W
-2425 1580 PD
-24 W
-2453 1569 PD
-24 W
-2484 1558 PD
-24 W
-2513 1548 PD
-24 W
-2544 1539 PD
-24 W
-2575 1530 PD
-24 W
-2602 1520 PD
-24 W
-2632 1512 PD
-24 W
-2658 1505 PD
-24 W
-2686 1499 PD
-24 W
-2717 1494 PD
-24 W
-2747 1488 PD
-24 W
-2773 1483 PD
-24 W
-2800 1477 PD
-24 W
-2830 1470 PD
-24 W
-2856 1467 PD
-24 W
-2885 1463 PD
-24 W
-2914 1461 PD
-24 W
-2944 1461 PD
-24 W
-2973 1459 PD
-24 W
-3000 1459 PD
-24 W
-3030 1459 PD
-24 W
-3057 1461 PD
-24 W
-3086 1466 PD
-24 W
-3113 1470 PD
-24 W
-3140 1476 PD
-24 W
-3169 1482 PD
-24 W
-3197 1488 PD
-24 W
-3224 1492 PD
-24 W
-3252 1496 PD
-24 W
-3283 1501 PD
-24 W
-3312 1504 PD
-24 W
-3342 1504 PD
-24 W
-3371 1508 PD
-24 W
-3399 1510 PD
-24 W
-3430 1511 PD
-24 W
-3439 1513 PD
-24 W
-3457 1525 PD
-24 W
-3484 1536 PD
-24 W
-3504 1554 PD
-24 W
-3520 1572 PD
-24 W
-3536 1591 PD
-24 W
-3550 1609 PD
-24 W
-3566 1627 PD
-24 W
-3580 1644 PD
-24 W
-3592 1663 PD
-24 W
-3601 1681 PD
-24 W
-3628 1691 PD
-24 W
-3643 1711 PD
-24 W
-3659 1730 PD
-24 W
-3686 1742 PD
-24 W
-3712 1760 PD
-24 W
-3727 1778 PD
-24 W
-3750 1797 PD
-24 W
-3779 1806 PD
-24 W
-3806 1821 PD
-24 W
-3831 1839 PD
-24 W
-3848 1857 PD
-24 W
-3868 1875 PD
-24 W
-3883 1895 PD
-24 W
-3911 1908 PD
-24 W
-3928 1926 PD
-24 W
-3933 1945 PD
-24 W
-3946 1964 PD
-24 W
-3958 1983 PD
-24 W
-3970 2001 PD
-24 W
-3978 2018 PD
-24 W
-3987 2038 PD
-24 W
-3993 2058 PD
-24 W
-4002 2076 PD
-24 W
-4012 2095 PD
-24 W
-4023 2113 PD
-24 W
-4036 2131 PD
-24 W
-4063 2143 PD
-24 W
-4080 2162 PD
-24 W
-4089 2181 PD
-24 W
-4111 2198 PD
-24 W
-4134 2216 PD
-24 W
-4161 2214 PD
-24 W
-4175 2232 PD
-24 W
-4196 2251 PD
-24 W
-4224 2264 PD
-24 W
-4253 2279 PD
-24 W
-4282 2288 PD
-24 W
-4312 2299 PD
-24 W
-4339 2308 PD
-24 W
-4366 2317 PD
-24 W
-4394 2328 PD
-24 W
-4422 2345 PD
-24 W
-4451 2359 PD
-24 W
-4478 2369 PD
-24 W
-4495 2387 PD
-24 W
-4506 2405 PD
-24 W
-4533 2420 PD
-24 W
-4561 2424 PD
-24 W
-4587 2435 PD
-24 W
-4616 2426 PD
-24 W
-4642 2423 PD
-24 W
-4669 2441 PD
-24 W
-4670 2459 PD
-24 W
-4670 2478 PD
-24 W
-4668 2496 PD
-24 W
-4663 2513 PD
-24 W
-4690 2528 PD
-24 W
-4691 2546 PD
-24 W
-4718 2563 PD
-24 W
-4715 2582 PD
-24 W
-4720 2599 PD
-24 W
-4738 2617 PD
-24 W
-4756 2635 PD
-24 W
-4756 2652 PD
-24 W
-4769 2671 PD
-24 W
-4785 2688 PD
-24 W
-4806 2706 PD
-24 W
-4822 2724 PD
-24 W
-4839 2743 PD
-24 W
-4854 2762 PD
-24 W
-4869 2780 PD
-24 W
-4891 2798 PD
-24 W
-4894 2817 PD
-24 W
-4916 2835 PD
-24 W
-4938 2854 PD
-24 W
-4966 2862 PD
-24 W
-4994 2865 PD
-24 W
-5023 2874 PD
-24 W
-5046 2892 PD
-24 W
-5056 2912 PD
-24 W
-5084 2922 PD
-24 W
-5112 2927 PD
-24 W
-5139 2928 PD
-24 W
-5165 2922 PD
-24 W
-5192 2925 PD
-24 W
-5220 2942 PD
-24 W
-5243 2960 PD
-24 W
-5272 2979 PD
-24 W
-5292 2999 PD
-24 W
-5305 3018 PD
-24 W
-5323 3035 PD
-24 W
-5343 3053 PD
-24 W
-5370 3070 PD
-24 W
-5398 3079 PD
-24 W
-5424 3084 PD
-24 W
-5438 3102 PD
-24 W
-5453 3121 PD
-24 W
-5473 3139 PD
-24 W
-5483 3157 PD
-24 W
-5487 3176 PD
-24 W
-5493 3194 PD
-24 W
-5506 3214 PD
-24 W
-5519 3233 PD
-24 W
-5526 3250 PD
-24 W
-5530 3269 PD
-24 W
-5532 3288 PD
-24 W
-5535 3306 PD
-24 W
-5539 3325 PD
-24 W
-5550 3345 PD
-24 W
-5562 3363 PD
-24 W
-5571 3382 PD
-24 W
-5579 3400 PD
-24 W
-5587 3420 PD
-24 W
-5598 3439 PD
-24 W
-5614 3459 PD
-24 W
-5632 3479 PD
-24 W
-5649 3497 PD
-24 W
-5675 3516 PD
-24 W
-5697 3535 PD
-24 W
-5716 3553 PD
-24 W
-5736 3572 PD
-24 W
-5766 3588 PD
-24 W
-5794 3601 PD
-24 W
-5823 3614 PD
-24 W
-5850 3631 PD
-24 W
-5879 3643 PD
-24 W
-5908 3652 PD
-24 W
-5938 3667 PD
-24 W
-5968 3686 PD
-24 W
-5996 3705 PD
-24 W
-6017 3722 PD
-24 W
-6037 3741 PD
-24 W
-6051 3759 PD
-24 W
-6068 3778 PD
-24 W
-6082 3796 PD
-24 W
-6106 3815 PD
-24 W
-6112 3833 PD
-24 W
-6112 3852 PD
-24 W
-6115 3869 PD
-24 W
-6132 3888 PD
-24 W
-6161 3904 PD
-24 W
-6182 3922 PD
-24 W
-6181 3941 PD
-24 W
-6184 3960 PD
-24 W
-6193 3978 PD
-24 W
-6220 3996 PD
-24 W
-6246 4011 PD
-24 W
-3348 4608 PD
-24 W
-3348 4607 PD
-24 W
-3320 4600 PD
-24 W
-3291 4591 PD
-24 W
-3264 4582 PD
-24 W
-3236 4572 PD
-24 W
-3208 4562 PD
-24 W
-3180 4552 PD
-24 W
-3152 4541 PD
-24 W
-3125 4526 PD
-24 W
-3097 4512 PD
-24 W
-3069 4499 PD
-24 W
-3042 4484 PD
-24 W
-3016 4466 PD
-24 W
-2994 4447 PD
-24 W
-2972 4429 PD
-24 W
-2945 4411 PD
-24 W
-2918 4398 PD
-24 W
-2890 4388 PD
-24 W
-2863 4380 PD
-24 W
-2836 4373 PD
-24 W
-2807 4366 PD
-24 W
-2779 4357 PD
-24 W
-2750 4348 PD
-24 W
-2724 4338 PD
-24 W
-2696 4330 PD
-24 W
-2668 4318 PD
-24 W
-2641 4306 PD
-24 W
-2614 4292 PD
-24 W
-2587 4275 PD
-24 W
-2564 4257 PD
-24 W
-2543 4239 PD
-24 W
-2524 4220 PD
-24 W
-2508 4203 PD
-24 W
-2498 4184 PD
-24 W
-2492 4166 PD
-24 W
-2486 4147 PD
-24 W
-2482 4128 PD
-24 W
-2483 4110 PD
-24 W
-2483 4092 PD
-24 W
-2484 4074 PD
-24 W
-2487 4056 PD
-24 W
-2492 4038 PD
-24 W
-2511 4020 PD
-24 W
-2538 4005 PD
-24 W
-2565 3999 PD
-24 W
-2592 3993 PD
-24 W
-2619 3988 PD
-24 W
-2648 3982 PD
-24 W
-2641 3964 PD
-24 W
-2653 3945 PD
-24 W
-2680 3933 PD
-24 W
-2708 3920 PD
-24 W
-2735 3911 PD
-24 W
-2763 3899 PD
-24 W
-2789 3881 PD
-24 W
-2799 3863 PD
-24 W
-2805 3846 PD
-24 W
-2815 3828 PD
-24 W
-2825 3810 PD
-24 W
-2832 3791 PD
-24 W
-2840 3772 PD
-24 W
-2849 3754 PD
-24 W
-2864 3735 PD
-24 W
-2883 3716 PD
-24 W
-2900 3698 PD
-24 W
-2910 3680 PD
-24 W
-2917 3663 PD
-24 W
-2917 3645 PD
-24 W
-2911 3627 PD
-24 W
-2892 3608 PD
-24 W
-2875 3590 PD
-24 W
-2863 3572 PD
-24 W
-2854 3554 PD
-24 W
-2831 3536 PD
-24 W
-2821 3517 PD
-24 W
-2821 3498 PD
-24 W
-2807 3479 PD
-24 W
-2785 3462 PD
-24 W
-2767 3443 PD
-24 W
-2741 3425 PD
-24 W
-2717 3407 PD
-24 W
-2694 3388 PD
-24 W
-2675 3369 PD
-24 W
-2665 3350 PD
-24 W
-2661 3332 PD
-24 W
-2649 3314 PD
-24 W
-2624 3295 PD
-24 W
-2597 3282 PD
-24 W
-2570 3272 PD
-24 W
-2541 3260 PD
-24 W
-2512 3246 PD
-24 W
-2483 3232 PD
-24 W
-2457 3214 PD
-24 W
-2452 3196 PD
-24 W
-2454 3177 PD
-24 W
-2455 3159 PD
-24 W
-2451 3141 PD
-24 W
-2446 3122 PD
-24 W
-2452 3104 PD
-24 W
-2469 3086 PD
-24 W
-2482 3068 PD
-24 W
-2454 3052 PD
-24 W
-2434 3034 PD
-24 W
-2449 3016 PD
-24 W
-2473 2997 PD
-24 W
-2490 2979 PD
-24 W
-2491 2959 PD
-24 W
-2484 2941 PD
-24 W
-2473 2921 PD
-24 W
-2458 2904 PD
-24 W
-2441 2885 PD
-24 W
-2422 2867 PD
-24 W
-2397 2849 PD
-24 W
-2377 2829 PD
-24 W
-2361 2811 PD
-24 W
-2343 2792 PD
-24 W
-2317 2773 PD
-24 W
-2290 2758 PD
-24 W
-2264 2739 PD
-24 W
-2246 2720 PD
-24 W
-2227 2702 PD
-24 W
-2206 2682 PD
-24 W
-2193 2665 PD
-24 W
-2187 2647 PD
-24 W
-2178 2629 PD
-24 W
-2166 2610 PD
-24 W
-2151 2593 PD
-24 W
-2130 2574 PD
-24 W
-2107 2556 PD
-24 W
-2085 2537 PD
-24 W
-2069 2518 PD
-24 W
-2060 2501 PD
-24 W
-2046 2482 PD
-24 W
-2033 2464 PD
-24 W
-2020 2446 PD
-24 W
-2007 2428 PD
-24 W
-1989 2410 PD
-24 W
-1971 2392 PD
-24 W
-1957 2374 PD
-24 W
-1948 2355 PD
-24 W
-1938 2336 PD
-24 W
-1927 2318 PD
-24 W
-1912 2300 PD
-24 W
-1897 2282 PD
-24 W
-1883 2264 PD
-24 W
-1865 2246 PD
-24 W
-1865 2247 PD
-24 W
-1852 2227 PD
-24 W
-1847 2209 PD
-24 W
-1856 2192 PD
-24 W
-1867 2174 PD
-24 W
-1877 2156 PD
-24 W
-1891 2147 PD
-24 W
-1899 2136 PD
-24 W
-1915 2118 PD
-24 W
-1926 2101 PD
-24 W
-1924 2082 PD
-24 W
-1913 2064 PD
-24 W
-1903 2045 PD
-24 W
-1889 2027 PD
-24 W
-1875 2009 PD
-24 W
-1854 1990 PD
-24 W
-1839 1980 PD
-24 W
-1836 1972 PD
-24 W
-1822 1954 PD
-24 W
-1815 1937 PD
-24 W
-1812 1919 PD
-24 W
-1814 1900 PD
-24 W
-1822 1882 PD
-24 W
-1834 1863 PD
-24 W
-1839 1855 PD
-24 W
-1840 1845 PD
-24 W
-1855 1827 PD
-24 W
-1862 1809 PD
-24 W
-1851 1791 PD
-24 W
-1850 1775 PD
-24 W
-1849 1773 PD
-24 W
-1843 1754 PD
-24 W
-1838 1736 PD
-24 W
-1839 1719 PD
-24 W
-1840 1701 PD
-24 W
-1845 1682 PD
-24 W
-1853 1664 PD
-24 W
-1861 1647 PD
-24 W
-1867 1629 PD
-24 W
-1880 1611 PD
-24 W
-1901 1591 PD
-24 W
-1919 1572 PD
-24 W
-1923 1553 PD
-24 W
-1928 1535 PD
-24 W
-1930 1516 PD
-24 W
-1937 1498 PD
-24 W
-1948 1480 PD
-24 W
-1966 1461 PD
-24 W
-1991 1442 PD
-24 W
-2016 1424 PD
-24 W
-2040 1406 PD
-24 W
-2068 1386 PD
-24 W
-2095 1372 PD
-24 W
-2125 1356 PD
-24 W
-2153 1346 PD
-24 W
-2188 1337 PD
-24 W
-2216 1330 PD
-24 W
-2244 1323 PD
-24 W
-2271 1317 PD
-24 W
-2300 1317 PD
-24 W
-2328 1321 PD
-24 W
-2356 1327 PD
-24 W
-2386 1329 PD
-24 W
-2415 1326 PD
-24 W
-2443 1322 PD
-24 W
-2472 1321 PD
-24 W
-2502 1318 PD
-24 W
-2534 1314 PD
-24 W
-2562 1312 PD
-24 W
-2589 1308 PD
-24 W
-2619 1304 PD
-24 W
-2646 1300 PD
-24 W
-2677 1298 PD
-24 W
-2708 1297 PD
-24 W
-2738 1299 PD
-24 W
-2766 1300 PD
-24 W
-2794 1303 PD
-24 W
-2822 1305 PD
-24 W
-2852 1308 PD
-24 W
-2879 1306 PD
-24 W
-2908 1302 PD
-24 W
-2934 1298 PD
-24 W
-2961 1296 PD
-24 W
-2989 1296 PD
-24 W
-3018 1301 PD
-24 W
-3046 1307 PD
-24 W
-3073 1317 PD
-24 W
-3103 1325 PD
-24 W
-3132 1331 PD
-24 W
-3159 1338 PD
-24 W
-3188 1343 PD
-24 W
-3215 1345 PD
-24 W
-3242 1350 PD
-24 W
-3269 1352 PD
-24 W
-3298 1352 PD
-24 W
-3325 1345 PD
-24 W
-3353 1345 PD
-24 W
-3382 1349 PD
-24 W
-3410 1354 PD
-24 W
-3440 1360 PD
-24 W
-3468 1366 PD
-24 W
-3497 1370 PD
-24 W
-3525 1378 PD
-24 W
-3528 1381 PD
-24 W
-3532 1397 PD
-24 W
-3538 1415 PD
-24 W
-3541 1434 PD
-24 W
-3563 1452 PD
-24 W
-3563 1470 PD
-24 W
-3567 1487 PD
-24 W
-3594 1479 PD
-24 W
-3605 1497 PD
-24 W
-3617 1515 PD
-24 W
-3635 1534 PD
-24 W
-3662 1549 PD
-24 W
-3689 1563 PD
-24 W
-3716 1577 PD
-24 W
-3744 1586 PD
-24 W
-3771 1603 PD
-24 W
-3787 1622 PD
-24 W
-3782 1640 PD
-24 W
-3788 1659 PD
-24 W
-3815 1673 PD
-24 W
-3836 1692 PD
-24 W
-3859 1709 PD
-24 W
-3887 1722 PD
-24 W
-3916 1733 PD
-24 W
-3944 1739 PD
-24 W
-3967 1758 PD
-24 W
-3972 1777 PD
-24 W
-3977 1796 PD
-24 W
-4006 1812 PD
-24 W
-4034 1828 PD
-24 W
-4046 1846 PD
-24 W
-4071 1864 PD
-24 W
-4078 1882 PD
-24 W
-4078 1902 PD
-24 W
-4098 1919 PD
-24 W
-4118 1937 PD
-24 W
-4118 1955 PD
-24 W
-4109 1973 PD
-24 W
-4099 1992 PD
-24 W
-4090 2009 PD
-24 W
-4085 2027 PD
-24 W
-4084 2046 PD
-24 W
-4088 2065 PD
-24 W
-4100 2083 PD
-24 W
-4127 2098 PD
-24 W
-4154 2103 PD
-24 W
-4182 2090 PD
-24 W
-4207 2072 PD
-24 W
-4235 2053 PD
-24 W
-4262 2051 PD
-24 W
-4290 2057 PD
-24 W
-4318 2065 PD
-24 W
-4345 2070 PD
-24 W
-4372 2079 PD
-24 W
-4383 2097 PD
-24 W
-4377 2117 PD
-24 W
-4366 2136 PD
-24 W
-4341 2154 PD
-24 W
-4318 2173 PD
-24 W
-4312 2191 PD
-24 W
-4335 2208 PD
-24 W
-4365 2216 PD
-24 W
-4394 2220 PD
-24 W
-4421 2225 PD
-24 W
-4449 2228 PD
-24 W
-4476 2238 PD
-24 W
-4496 2255 PD
-24 W
-4526 2262 PD
-24 W
-4553 2261 PD
-24 W
-4580 2262 PD
-24 W
-4607 2280 PD
-24 W
-4613 2298 PD
-24 W
-4618 2317 PD
-24 W
-4617 2336 PD
-24 W
-4624 2354 PD
-24 W
-4652 2365 PD
-24 W
-4680 2361 PD
-24 W
-4708 2379 PD
-24 W
-4736 2385 PD
-24 W
-4747 2404 PD
-24 W
-4775 2408 PD
-24 W
-4778 2427 PD
-24 W
-4771 2445 PD
-24 W
-4761 2463 PD
-24 W
-4755 2482 PD
-24 W
-4782 2497 PD
-24 W
-4785 2515 PD
-24 W
-4786 2533 PD
-24 W
-4785 2552 PD
-24 W
-4807 2571 PD
-24 W
-4812 2590 PD
-24 W
-4822 2609 PD
-24 W
-4830 2628 PD
-24 W
-4847 2646 PD
-24 W
-4857 2664 PD
-24 W
-4870 2683 PD
-24 W
-4883 2701 PD
-24 W
-4897 2720 PD
-24 W
-4907 2738 PD
-24 W
-4931 2756 PD
-24 W
-4957 2775 PD
-24 W
-4972 2792 PD
-24 W
-4999 2803 PD
-24 W
-5026 2811 PD
-24 W
-5054 2816 PD
-24 W
-5082 2822 PD
-24 W
-5095 2841 PD
-24 W
-5112 2859 PD
-24 W
-5140 2866 PD
-24 W
-5170 2873 PD
-24 W
-5198 2876 PD
-24 W
-5227 2874 PD
-24 W
-5255 2881 PD
-24 W
-5275 2899 PD
-24 W
-5295 2917 PD
-24 W
-5305 2935 PD
-24 W
-5324 2952 PD
-24 W
-5352 2961 PD
-24 W
-5368 2980 PD
-24 W
-5382 2998 PD
-24 W
-5403 3017 PD
-24 W
-5432 3035 PD
-24 W
-5460 3050 PD
-24 W
-5487 3062 PD
-24 W
-5508 3081 PD
-24 W
-5526 3099 PD
-24 W
-5540 3117 PD
-24 W
-5551 3136 PD
-24 W
-5560 3156 PD
-24 W
-5569 3174 PD
-24 W
-5576 3194 PD
-24 W
-5582 3213 PD
-24 W
-5586 3233 PD
-24 W
-5591 3250 PD
-24 W
-5597 3270 PD
-24 W
-5603 3288 PD
-24 W
-5607 3307 PD
-24 W
-5612 3326 PD
-24 W
-5620 3345 PD
-24 W
-5629 3364 PD
-24 W
-5639 3383 PD
-24 W
-5647 3401 PD
-24 W
-5656 3420 PD
-24 W
-5667 3439 PD
-24 W
-5681 3458 PD
-24 W
-5699 3477 PD
-24 W
-5726 3496 PD
-24 W
-5756 3514 PD
-24 W
-5783 3528 PD
-24 W
-5814 3543 PD
-24 W
-5842 3554 PD
-24 W
-5870 3568 PD
-24 W
-5898 3583 PD
-24 W
-5926 3600 PD
-24 W
-5954 3610 PD
-24 W
-5982 3618 PD
-24 W
-6010 3629 PD
-24 W
-6029 3647 PD
-24 W
-6039 3666 PD
-24 W
-6067 3683 PD
-24 W
-6077 3701 PD
-24 W
-6105 3716 PD
-24 W
-6119 3734 PD
-24 W
-6119 3753 PD
-24 W
-6130 3771 PD
-24 W
-6158 3784 PD
-24 W
-6171 3802 PD
-24 W
-6169 3820 PD
-24 W
-6176 3839 PD
-24 W
-6187 3857 PD
-24 W
-6215 3866 PD
-24 W
-6235 3884 PD
-24 W
-6239 3902 PD
-24 W
-6246 3921 PD
-24 W
-6251 3939 PD
-24 W
-3172 4605 PD
-24 W
-3151 4587 PD
-24 W
-3122 4569 PD
-24 W
-3096 4555 PD
-24 W
-3069 4541 PD
-24 W
-3041 4528 PD
-24 W
-3014 4514 PD
-24 W
-2987 4501 PD
-24 W
-2960 4484 PD
-24 W
-2957 4482 PD
-24 W
-2933 4470 PD
-24 W
-2906 4457 PD
-24 W
-2878 4456 PD
-24 W
-2850 4459 PD
-24 W
-2822 4463 PD
-24 W
-2795 4464 PD
-24 W
-2768 4466 PD
-24 W
-2739 4463 PD
-24 W
-2712 4454 PD
-24 W
-2685 4441 PD
-24 W
-2657 4423 PD
-24 W
-2628 4407 PD
-24 W
-2601 4390 PD
-24 W
-2575 4372 PD
-24 W
-2549 4354 PD
-24 W
-2521 4335 PD
-24 W
-2494 4316 PD
-24 W
-2471 4298 PD
-24 W
-2454 4280 PD
-24 W
-2437 4261 PD
-24 W
-2419 4243 PD
-24 W
-2404 4225 PD
-24 W
-2386 4207 PD
-24 W
-2369 4188 PD
-24 W
-2355 4170 PD
-24 W
-2346 4152 PD
-24 W
-2339 4133 PD
-24 W
-2332 4116 PD
-24 W
-2329 4096 PD
-24 W
-2340 4077 PD
-24 W
-2349 4070 PD
-24 W
-2352 4059 PD
-24 W
-2362 4039 PD
-24 W
-2376 4021 PD
-24 W
-2387 4003 PD
-24 W
-2395 3985 PD
-24 W
-2397 3965 PD
-24 W
-2412 3947 PD
-24 W
-2439 3930 PD
-24 W
-2456 3911 PD
-24 W
-2476 3893 PD
-24 W
-2500 3873 PD
-24 W
-2524 3855 PD
-24 W
-2553 3836 PD
-24 W
-2582 3822 PD
-24 W
-2612 3811 PD
-24 W
-2641 3800 PD
-24 W
-2671 3790 PD
-24 W
-2697 3779 PD
-24 W
-2724 3768 PD
-24 W
-2753 3754 PD
-24 W
-2780 3741 PD
-24 W
-2807 3721 PD
-24 W
-2820 3702 PD
-24 W
-2824 3684 PD
-24 W
-2818 3665 PD
-24 W
-2802 3647 PD
-24 W
-2778 3628 PD
-24 W
-2763 3611 PD
-24 W
-2757 3592 PD
-24 W
-2759 3574 PD
-24 W
-2751 3555 PD
-24 W
-2728 3537 PD
-24 W
-2715 3518 PD
-24 W
-2702 3499 PD
-24 W
-2685 3481 PD
-24 W
-2665 3464 PD
-24 W
-2644 3445 PD
-24 W
-2620 3426 PD
-24 W
-2597 3407 PD
-24 W
-2569 3388 PD
-24 W
-2542 3374 PD
-24 W
-2515 3355 PD
-24 W
-2493 3337 PD
-24 W
-2473 3318 PD
-24 W
-2455 3298 PD
-24 W
-2437 3279 PD
-24 W
-2415 3261 PD
-24 W
-2387 3246 PD
-24 W
-2371 3228 PD
-24 W
-2360 3208 PD
-24 W
-2343 3190 PD
-24 W
-2331 3171 PD
-24 W
-2326 3152 PD
-24 W
-2324 3134 PD
-24 W
-2328 3115 PD
-24 W
-2350 3097 PD
-24 W
-2346 3079 PD
-24 W
-2362 3060 PD
-24 W
-2362 3042 PD
-24 W
-2348 3024 PD
-24 W
-2354 3006 PD
-24 W
-2377 2987 PD
-24 W
-2393 2970 PD
-24 W
-2420 2959 PD
-24 W
-2427 2941 PD
-24 W
-2413 2924 PD
-24 W
-2384 2918 PD
-24 W
-2355 2914 PD
-24 W
-2344 2896 PD
-24 W
-2337 2878 PD
-24 W
-2314 2860 PD
-24 W
-2305 2843 PD
-24 W
-2293 2824 PD
-24 W
-2275 2806 PD
-24 W
-2247 2787 PD
-24 W
-2223 2769 PD
-24 W
-2202 2751 PD
-24 W
-2180 2733 PD
-24 W
-2160 2715 PD
-24 W
-2134 2697 PD
-24 W
-2113 2678 PD
-24 W
-2108 2660 PD
-24 W
-2105 2642 PD
-24 W
-2096 2624 PD
-24 W
-2069 2608 PD
-24 W
-2042 2595 PD
-24 W
-2013 2584 PD
-24 W
-1990 2567 PD
-24 W
-1981 2548 PD
-24 W
-1978 2529 PD
-24 W
-1973 2511 PD
-24 W
-1963 2494 PD
-24 W
-1946 2476 PD
-24 W
-1931 2458 PD
-24 W
-1921 2439 PD
-24 W
-1910 2421 PD
-24 W
-1900 2403 PD
-24 W
-1888 2385 PD
-24 W
-1873 2368 PD
-24 W
-1855 2350 PD
-24 W
-1834 2332 PD
-24 W
-1816 2313 PD
-24 W
-1798 2295 PD
-24 W
-1776 2277 PD
-24 W
-1755 2259 PD
-24 W
-1741 2241 PD
-24 W
-1731 2223 PD
-24 W
-1730 2205 PD
-24 W
-1735 2187 PD
-24 W
-1741 2169 PD
-24 W
-1750 2152 PD
-24 W
-1761 2134 PD
-24 W
-1776 2116 PD
-24 W
-1788 2098 PD
-24 W
-1797 2081 PD
-24 W
-1801 2063 PD
-24 W
-1800 2044 PD
-24 W
-1783 2026 PD
-24 W
-1755 2012 PD
-24 W
-1732 1999 PD
-24 W
-1726 1998 PD
-24 W
-1700 1982 PD
-24 W
-1689 1964 PD
-24 W
-1680 1945 PD
-24 W
-1676 1927 PD
-24 W
-1676 1909 PD
-24 W
-1675 1906 PD
-24 W
-1678 1891 PD
-24 W
-1685 1873 PD
-24 W
-1690 1855 PD
-24 W
-1693 1837 PD
-24 W
-1692 1819 PD
-24 W
-1697 1801 PD
-24 W
-1714 1783 PD
-24 W
-1714 1765 PD
-24 W
-1694 1747 PD
-24 W
-1688 1742 PD
-24 W
-1686 1729 PD
-24 W
-1680 1711 PD
-24 W
-1673 1693 PD
-24 W
-1663 1675 PD
-24 W
-1659 1656 PD
-24 W
-1658 1637 PD
-24 W
-1658 1619 PD
-24 W
-1664 1600 PD
-24 W
-1681 1582 PD
-24 W
-1701 1563 PD
-24 W
-1714 1546 PD
-24 W
-1728 1527 PD
-24 W
-1739 1509 PD
-24 W
-1750 1490 PD
-24 W
-1748 1482 PD
-24 W
-1755 1472 PD
-24 W
-1755 1454 PD
-24 W
-1759 1435 PD
-24 W
-1769 1417 PD
-24 W
-1781 1399 PD
-24 W
-1794 1381 PD
-24 W
-1797 1378 PD
-24 W
-1803 1360 PD
-24 W
-1804 1341 PD
-24 W
-1823 1324 PD
-24 W
-1847 1306 PD
-24 W
-1862 1288 PD
-24 W
-1881 1270 PD
-24 W
-1902 1251 PD
-24 W
-1928 1232 PD
-24 W
-1955 1213 PD
-24 W
-1978 1195 PD
-24 W
-2003 1177 PD
-24 W
-2030 1164 PD
-24 W
-2057 1155 PD
-24 W
-2084 1145 PD
-24 W
-2111 1137 PD
-24 W
-2142 1129 PD
-24 W
-2173 1124 PD
-24 W
-2202 1119 PD
-24 W
-2231 1116 PD
-24 W
-2261 1111 PD
-24 W
-2288 1106 PD
-24 W
-2317 1101 PD
-24 W
-2346 1098 PD
-24 W
-2375 1094 PD
-24 W
-2402 1091 PD
-24 W
-2429 1092 PD
-24 W
-2456 1107 PD
-24 W
-2477 1125 PD
-24 W
-2504 1131 PD
-24 W
-2530 1130 PD
-24 W
-2560 1128 PD
-24 W
-2588 1128 PD
-24 W
-2616 1135 PD
-24 W
-2643 1143 PD
-24 W
-2670 1147 PD
-24 W
-2698 1145 PD
-24 W
-2726 1144 PD
-24 W
-2754 1142 PD
-24 W
-2784 1140 PD
-24 W
-2811 1138 PD
-24 W
-2838 1137 PD
-24 W
-2868 1139 PD
-24 W
-2896 1143 PD
-24 W
-2925 1151 PD
-24 W
-2954 1155 PD
-24 W
-2983 1152 PD
-24 W
-3012 1145 PD
-24 W
-3038 1145 PD
-24 W
-3065 1151 PD
-24 W
-3094 1158 PD
-24 W
-3121 1166 PD
-24 W
-3149 1173 PD
-24 W
-3176 1181 PD
-24 W
-3204 1190 PD
-24 W
-3231 1197 PD
-24 W
-3259 1203 PD
-24 W
-3287 1208 PD
-24 W
-3316 1214 PD
-24 W
-3344 1221 PD
-24 W
-3373 1224 PD
-24 W
-3401 1228 PD
-24 W
-3429 1234 PD
-24 W
-3456 1238 PD
-24 W
-3484 1243 PD
-24 W
-3511 1249 PD
-24 W
-3539 1254 PD
-24 W
-3568 1260 PD
-24 W
-3596 1266 PD
-24 W
-3619 1281 PD
-24 W
-3607 1288 PD
-24 W
-3628 1306 PD
-24 W
-3634 1326 PD
-24 W
-3640 1344 PD
-24 W
-3667 1362 PD
-24 W
-3680 1381 PD
-24 W
-3704 1399 PD
-24 W
-3724 1418 PD
-24 W
-3745 1436 PD
-24 W
-3767 1454 PD
-24 W
-3791 1472 PD
-24 W
-3815 1489 PD
-24 W
-3843 1496 PD
-24 W
-3871 1504 PD
-24 W
-3894 1523 PD
-24 W
-3921 1535 PD
-24 W
-3948 1540 PD
-24 W
-3975 1552 PD
-24 W
-3999 1571 PD
-24 W
-4014 1589 PD
-24 W
-4033 1607 PD
-24 W
-4057 1625 PD
-24 W
-4071 1643 PD
-24 W
-4089 1661 PD
-24 W
-4106 1680 PD
-24 W
-4122 1699 PD
-24 W
-4139 1718 PD
-24 W
-4155 1735 PD
-24 W
-4168 1754 PD
-24 W
-4181 1772 PD
-24 W
-4194 1791 PD
-24 W
-4202 1810 PD
-24 W
-4205 1828 PD
-24 W
-4208 1846 PD
-24 W
-4214 1866 PD
-24 W
-4220 1885 PD
-24 W
-4232 1904 PD
-24 W
-4260 1917 PD
-24 W
-4287 1926 PD
-24 W
-4314 1940 PD
-24 W
-4333 1959 PD
-24 W
-4362 1977 PD
-24 W
-4389 1982 PD
-24 W
-4417 1985 PD
-24 W
-4445 1988 PD
-24 W
-4475 1993 PD
-24 W
-4503 2007 PD
-24 W
-4512 2025 PD
-24 W
-4518 2044 PD
-24 W
-4517 2064 PD
-24 W
-4513 2083 PD
-24 W
-4519 2101 PD
-24 W
-4535 2119 PD
-24 W
-4555 2138 PD
-24 W
-4581 2150 PD
-24 W
-4610 2155 PD
-24 W
-4634 2173 PD
-24 W
-4643 2191 PD
-24 W
-4657 2208 PD
-24 W
-4684 2221 PD
-24 W
-4713 2234 PD
-24 W
-4733 2253 PD
-24 W
-4737 2271 PD
-24 W
-4764 2280 PD
-24 W
-4779 2299 PD
-24 W
-4801 2317 PD
-24 W
-4812 2336 PD
-24 W
-4839 2348 PD
-24 W
-4866 2352 PD
-24 W
-4892 2354 PD
-24 W
-4919 2371 PD
-24 W
-4918 2391 PD
-24 W
-4927 2409 PD
-24 W
-4947 2427 PD
-24 W
-4976 2437 PD
-24 W
-5004 2447 PD
-24 W
-5027 2465 PD
-24 W
-5039 2484 PD
-24 W
-5049 2502 PD
-24 W
-5046 2520 PD
-24 W
-5032 2538 PD
-24 W
-5011 2558 PD
-24 W
-4987 2576 PD
-24 W
-4968 2595 PD
-24 W
-4953 2613 PD
-24 W
-4981 2626 PD
-24 W
-5008 2620 PD
-24 W
-5037 2606 PD
-24 W
-5065 2591 PD
-24 W
-5093 2584 PD
-24 W
-5120 2577 PD
-24 W
-5148 2574 PD
-24 W
-5159 2573 PD
-24 W
-5175 2575 PD
-24 W
-5202 2591 PD
-24 W
-5219 2610 PD
-24 W
-5232 2628 PD
-24 W
-5240 2646 PD
-24 W
-5242 2650 PD
-24 W
-5232 2666 PD
-24 W
-5223 2685 PD
-24 W
-5212 2705 PD
-24 W
-5203 2723 PD
-24 W
-5198 2741 PD
-24 W
-5193 2759 PD
-24 W
-5189 2777 PD
-24 W
-5193 2795 PD
-24 W
-5219 2807 PD
-24 W
-5247 2814 PD
-24 W
-5274 2819 PD
-24 W
-5302 2828 PD
-24 W
-5318 2847 PD
-24 W
-5335 2866 PD
-24 W
-5353 2885 PD
-24 W
-5375 2903 PD
-24 W
-5399 2921 PD
-24 W
-5427 2938 PD
-24 W
-5446 2958 PD
-24 W
-5465 2977 PD
-24 W
-5483 2996 PD
-24 W
-5507 3015 PD
-24 W
-5536 3032 PD
-24 W
-5565 3050 PD
-24 W
-5588 3069 PD
-24 W
-5604 3088 PD
-24 W
-5616 3106 PD
-24 W
-5620 3124 PD
-24 W
-5623 3142 PD
-24 W
-5629 3159 PD
-24 W
-5636 3178 PD
-24 W
-5643 3197 PD
-24 W
-5654 3216 PD
-24 W
-5665 3235 PD
-24 W
-5675 3254 PD
-24 W
-5683 3272 PD
-24 W
-5688 3291 PD
-24 W
-5694 3309 PD
-24 W
-5702 3327 PD
-24 W
-5710 3346 PD
-24 W
-5717 3363 PD
-24 W
-5724 3383 PD
-24 W
-5736 3403 PD
-24 W
-5748 3421 PD
-24 W
-5763 3439 PD
-24 W
-5786 3458 PD
-24 W
-5813 3471 PD
-24 W
-5841 3482 PD
-24 W
-5868 3501 PD
-24 W
-5893 3520 PD
-24 W
-5922 3531 PD
-24 W
-5949 3541 PD
-24 W
-5977 3550 PD
-24 W
-6005 3558 PD
-24 W
-6032 3570 PD
-24 W
-6061 3586 PD
-24 W
-6082 3604 PD
-24 W
-6094 3622 PD
-24 W
-6106 3641 PD
-24 W
-6133 3658 PD
-24 W
-6148 3676 PD
-24 W
-6176 3685 PD
-24 W
-6191 3703 PD
-24 W
-6190 3722 PD
-24 W
-6192 3741 PD
-24 W
-6220 3756 PD
-24 W
-3017 4609 PD
-24 W
-3016 4609 PD
-24 W
-2990 4596 PD
-24 W
-2962 4583 PD
-24 W
-2935 4574 PD
-24 W
-2908 4571 PD
-24 W
-2879 4566 PD
-24 W
-2852 4561 PD
-24 W
-2825 4556 PD
-24 W
-2799 4551 PD
-24 W
-2770 4546 PD
-24 W
-2743 4539 PD
-24 W
-2714 4532 PD
-24 W
-2685 4519 PD
-24 W
-2656 4503 PD
-24 W
-2628 4486 PD
-24 W
-2601 4470 PD
-24 W
-2574 4453 PD
-24 W
-2547 4437 PD
-24 W
-2522 4421 PD
-24 W
-2519 4421 PD
-24 W
-2491 4405 PD
-24 W
-2464 4390 PD
-24 W
-2435 4379 PD
-24 W
-2408 4361 PD
-24 W
-2389 4343 PD
-24 W
-2369 4324 PD
-24 W
-2345 4306 PD
-24 W
-2322 4287 PD
-24 W
-2305 4268 PD
-24 W
-2291 4250 PD
-24 W
-2279 4232 PD
-24 W
-2267 4215 PD
-24 W
-2248 4196 PD
-24 W
-2228 4177 PD
-24 W
-2204 4158 PD
-24 W
-2190 4139 PD
-24 W
-2179 4121 PD
-24 W
-2169 4103 PD
-24 W
-2159 4085 PD
-24 W
-2150 4067 PD
-24 W
-2145 4049 PD
-24 W
-2143 4031 PD
-24 W
-2146 4017 PD
-24 W
-2145 4013 PD
-24 W
-2143 3994 PD
-24 W
-2153 3975 PD
-24 W
-2172 3957 PD
-24 W
-2199 3941 PD
-24 W
-2226 3926 PD
-24 W
-2256 3908 PD
-24 W
-2285 3889 PD
-24 W
-2314 3873 PD
-24 W
-2344 3860 PD
-24 W
-2373 3847 PD
-24 W
-2400 3836 PD
-24 W
-2430 3823 PD
-24 W
-2458 3813 PD
-24 W
-2489 3796 PD
-24 W
-2516 3781 PD
-24 W
-2546 3768 PD
-24 W
-2575 3755 PD
-24 W
-2602 3744 PD
-24 W
-2629 3734 PD
-24 W
-2656 3724 PD
-24 W
-2684 3713 PD
-24 W
-2711 3701 PD
-24 W
-2714 3683 PD
-24 W
-2699 3664 PD
-24 W
-2670 3648 PD
-24 W
-2641 3629 PD
-24 W
-2624 3611 PD
-24 W
-2611 3591 PD
-24 W
-2601 3570 PD
-24 W
-2598 3550 PD
-24 W
-2599 3532 PD
-24 W
-2601 3511 PD
-24 W
-2595 3491 PD
-24 W
-2583 3472 PD
-24 W
-2563 3453 PD
-24 W
-2537 3435 PD
-24 W
-2510 3420 PD
-24 W
-2481 3407 PD
-24 W
-2452 3390 PD
-24 W
-2430 3371 PD
-24 W
-2409 3353 PD
-24 W
-2389 3336 PD
-24 W
-2369 3317 PD
-24 W
-2349 3297 PD
-24 W
-2329 3277 PD
-24 W
-2306 3258 PD
-24 W
-2285 3239 PD
-24 W
-2269 3220 PD
-24 W
-2253 3201 PD
-24 W
-2238 3183 PD
-24 W
-2224 3164 PD
-24 W
-2210 3144 PD
-24 W
-2196 3126 PD
-24 W
-2201 3105 PD
-24 W
-2210 3087 PD
-24 W
-2229 3069 PD
-24 W
-2249 3051 PD
-24 W
-2239 3033 PD
-24 W
-2225 3015 PD
-24 W
-2221 2996 PD
-24 W
-2225 2978 PD
-24 W
-2240 2959 PD
-24 W
-2262 2942 PD
-24 W
-2273 2922 PD
-24 W
-2262 2905 PD
-24 W
-2247 2885 PD
-24 W
-2235 2867 PD
-24 W
-2222 2848 PD
-24 W
-2206 2830 PD
-24 W
-2178 2812 PD
-24 W
-2151 2794 PD
-24 W
-2132 2776 PD
-24 W
-2111 2758 PD
-24 W
-2082 2742 PD
-24 W
-2064 2723 PD
-24 W
-2054 2704 PD
-24 W
-2047 2686 PD
-24 W
-2033 2668 PD
-24 W
-2006 2654 PD
-24 W
-1978 2640 PD
-24 W
-1950 2631 PD
-24 W
-1934 2627 PD
-24 W
-1922 2614 PD
-24 W
-1895 2603 PD
-24 W
-1876 2586 PD
-24 W
-1872 2567 PD
-24 W
-1872 2557 PD
-24 W
-1872 2550 PD
-24 W
-1865 2532 PD
-24 W
-1851 2514 PD
-24 W
-1847 2496 PD
-24 W
-1854 2478 PD
-24 W
-1858 2459 PD
-24 W
-1855 2442 PD
-24 W
-1845 2423 PD
-24 W
-1830 2405 PD
-24 W
-1815 2387 PD
-24 W
-1794 2369 PD
-24 W
-1768 2351 PD
-24 W
-1740 2332 PD
-24 W
-1717 2314 PD
-24 W
-1695 2296 PD
-24 W
-1676 2278 PD
-24 W
-1657 2260 PD
-24 W
-1640 2247 PD
-24 W
-1634 2241 PD
-24 W
-1614 2223 PD
-24 W
-1611 2204 PD
-24 W
-1613 2186 PD
-24 W
-1612 2168 PD
-24 W
-1607 2150 PD
-24 W
-1604 2133 PD
-24 W
-1601 2114 PD
-24 W
-1603 2095 PD
-24 W
-1608 2076 PD
-24 W
-1611 2061 PD
-24 W
-1611 2059 PD
-24 W
-1602 2041 PD
-24 W
-1589 2023 PD
-24 W
-1578 2005 PD
-24 W
-1577 2003 PD
-24 W
-1568 1988 PD
-24 W
-1558 1969 PD
-24 W
-1549 1950 PD
-24 W
-1540 1931 PD
-24 W
-1538 1913 PD
-24 W
-1538 1895 PD
-24 W
-1541 1876 PD
-24 W
-1543 1858 PD
-24 W
-1543 1839 PD
-24 W
-1541 1821 PD
-24 W
-1530 1803 PD
-24 W
-1513 1784 PD
-24 W
-1502 1765 PD
-24 W
-1493 1746 PD
-24 W
-1495 1727 PD
-24 W
-1500 1709 PD
-24 W
-1503 1691 PD
-24 W
-1504 1674 PD
-24 W
-1497 1655 PD
-24 W
-1492 1635 PD
-24 W
-1487 1617 PD
-24 W
-1485 1599 PD
-24 W
-1491 1580 PD
-24 W
-1506 1563 PD
-24 W
-1534 1547 PD
-24 W
-1562 1533 PD
-24 W
-1586 1515 PD
-24 W
-1603 1497 PD
-24 W
-1624 1479 PD
-24 W
-1635 1461 PD
-24 W
-1634 1461 PD
-24 W
-1647 1443 PD
-24 W
-1668 1425 PD
-24 W
-1665 1407 PD
-24 W
-1661 1389 PD
-24 W
-1662 1371 PD
-24 W
-1664 1352 PD
-24 W
-1664 1334 PD
-24 W
-1663 1316 PD
-24 W
-1667 1299 PD
-24 W
-1676 1281 PD
-24 W
-1681 1275 PD
-24 W
-1688 1262 PD
-24 W
-1701 1245 PD
-24 W
-1722 1226 PD
-24 W
-1740 1208 PD
-24 W
-1758 1189 PD
-24 W
-1773 1171 PD
-24 W
-1792 1153 PD
-24 W
-1809 1136 PD
-24 W
-1828 1117 PD
-24 W
-1852 1100 PD
-24 W
-1879 1088 PD
-24 W
-1906 1080 PD
-24 W
-1933 1070 PD
-24 W
-1960 1061 PD
-24 W
-1989 1049 PD
-24 W
-2018 1037 PD
-24 W
-2048 1022 PD
-24 W
-2074 1008 PD
-24 W
-2103 995 PD
-24 W
-2130 987 PD
-24 W
-2158 982 PD
-24 W
-2185 977 PD
-24 W
-2214 970 PD
-24 W
-2242 962 PD
-24 W
-2272 954 PD
-24 W
-2302 945 PD
-24 W
-2330 942 PD
-24 W
-2358 937 PD
-24 W
-2386 934 PD
-24 W
-2414 932 PD
-24 W
-2442 935 PD
-24 W
-2470 938 PD
-24 W
-2499 938 PD
-24 W
-2526 939 PD
-24 W
-2554 939 PD
-24 W
-2582 943 PD
-24 W
-2610 950 PD
-24 W
-2638 955 PD
-24 W
-2666 959 PD
-24 W
-2695 960 PD
-24 W
-2723 959 PD
-24 W
-2753 959 PD
-24 W
-2782 959 PD
-24 W
-2811 960 PD
-24 W
-2839 962 PD
-24 W
-2867 962 PD
-24 W
-2894 963 PD
-24 W
-2921 964 PD
-24 W
-2951 966 PD
-24 W
-2978 972 PD
-24 W
-3007 980 PD
-24 W
-3035 983 PD
-24 W
-3064 988 PD
-24 W
-3093 995 PD
-24 W
-3122 1003 PD
-24 W
-3152 1011 PD
-24 W
-3183 1020 PD
-24 W
-3210 1030 PD
-24 W
-3239 1038 PD
-24 W
-3269 1048 PD
-24 W
-3297 1056 PD
-24 W
-3325 1063 PD
-24 W
-3352 1070 PD
-24 W
-3380 1077 PD
-24 W
-3409 1086 PD
-24 W
-3438 1102 PD
-24 W
-3466 1115 PD
-24 W
-3496 1126 PD
-24 W
-3526 1137 PD
-24 W
-3556 1144 PD
-24 W
-3583 1149 PD
-24 W
-3611 1157 PD
-24 W
-3638 1163 PD
-24 W
-3665 1169 PD
-24 W
-3693 1176 PD
-24 W
-3720 1182 PD
-24 W
-3748 1188 PD
-24 W
-3759 1198 PD
-24 W
-3776 1206 PD
-24 W
-3804 1222 PD
-24 W
-3816 1240 PD
-24 W
-3831 1259 PD
-24 W
-3848 1277 PD
-24 W
-3866 1295 PD
-24 W
-3895 1312 PD
-24 W
-3924 1330 PD
-24 W
-3951 1344 PD
-24 W
-3963 1362 PD
-24 W
-3989 1372 PD
-24 W
-4018 1389 PD
-24 W
-4047 1392 PD
-24 W
-4075 1391 PD
-24 W
-4102 1394 PD
-24 W
-4131 1397 PD
-24 W
-4158 1405 PD
-24 W
-4177 1423 PD
-24 W
-4191 1442 PD
-24 W
-4205 1461 PD
-24 W
-4207 1481 PD
-24 W
-4201 1499 PD
-24 W
-4198 1517 PD
-24 W
-4207 1535 PD
-24 W
-4223 1553 PD
-24 W
-4233 1572 PD
-24 W
-4247 1590 PD
-24 W
-4258 1609 PD
-24 W
-4258 1628 PD
-24 W
-4258 1645 PD
-24 W
-4261 1664 PD
-24 W
-4270 1683 PD
-24 W
-4278 1701 PD
-24 W
-4282 1720 PD
-24 W
-4284 1738 PD
-24 W
-4292 1755 PD
-24 W
-4301 1775 PD
-24 W
-4301 1793 PD
-24 W
-4304 1811 PD
-24 W
-4307 1829 PD
-24 W
-4330 1846 PD
-24 W
-4357 1858 PD
-24 W
-4380 1876 PD
-24 W
-4391 1894 PD
-24 W
-4413 1912 PD
-24 W
-4440 1915 PD
-24 W
-4467 1909 PD
-24 W
-4494 1909 PD
-24 W
-4522 1910 PD
-24 W
-4549 1922 PD
-24 W
-4577 1940 PD
-24 W
-4591 1958 PD
-24 W
-4600 1977 PD
-24 W
-4608 1995 PD
-24 W
-4616 2014 PD
-24 W
-4621 2033 PD
-24 W
-4623 2051 PD
-24 W
-4627 2070 PD
-24 W
-4635 2089 PD
-24 W
-4648 2107 PD
-24 W
-4662 2125 PD
-24 W
-4674 2143 PD
-24 W
-4689 2161 PD
-24 W
-4717 2173 PD
-24 W
-4745 2180 PD
-24 W
-4772 2183 PD
-24 W
-4800 2187 PD
-24 W
-4827 2204 PD
-24 W
-4851 2222 PD
-24 W
-4877 2228 PD
-24 W
-4905 2239 PD
-24 W
-4932 2255 PD
-24 W
-4961 2265 PD
-24 W
-4990 2278 PD
-24 W
-5014 2296 PD
-24 W
-5027 2314 PD
-24 W
-5040 2332 PD
-24 W
-5056 2350 PD
-24 W
-5075 2369 PD
-24 W
-5099 2386 PD
-24 W
-5125 2404 PD
-24 W
-5146 2422 PD
-24 W
-5174 2430 PD
-24 W
-5202 2433 PD
-24 W
-5229 2439 PD
-24 W
-5256 2456 PD
-24 W
-5242 2470 PD
-24 W
-5248 2474 PD
-24 W
-5271 2493 PD
-24 W
-5283 2513 PD
-24 W
-5299 2531 PD
-24 W
-5316 2550 PD
-24 W
-5326 2558 PD
-24 W
-5329 2568 PD
-24 W
-5329 2586 PD
-24 W
-5320 2605 PD
-24 W
-5316 2624 PD
-24 W
-5312 2643 PD
-24 W
-5303 2662 PD
-24 W
-5301 2680 PD
-24 W
-5300 2699 PD
-24 W
-5302 2717 PD
-24 W
-5307 2735 PD
-24 W
-5315 2754 PD
-24 W
-5325 2774 PD
-24 W
-5341 2794 PD
-24 W
-5363 2812 PD
-24 W
-5386 2831 PD
-24 W
-5413 2848 PD
-24 W
-5436 2866 PD
-24 W
-5456 2885 PD
-24 W
-5469 2903 PD
-24 W
-5481 2920 PD
-24 W
-5493 2938 PD
-24 W
-5514 2956 PD
-24 W
-5543 2965 PD
-24 W
-5570 2977 PD
-24 W
-5593 2995 PD
-24 W
-5615 3014 PD
-24 W
-5633 3034 PD
-24 W
-5645 3053 PD
-24 W
-5655 3071 PD
-24 W
-5663 3090 PD
-24 W
-5679 3109 PD
-24 W
-5691 3127 PD
-24 W
-5695 3147 PD
-24 W
-5697 3165 PD
-24 W
-5706 3185 PD
-24 W
-5716 3205 PD
-24 W
-5724 3223 PD
-24 W
-5731 3241 PD
-24 W
-5738 3259 PD
-24 W
-5755 3277 PD
-24 W
-5771 3295 PD
-24 W
-5774 3314 PD
-24 W
-5780 3334 PD
-24 W
-5790 3352 PD
-24 W
-5797 3369 PD
-24 W
-5807 3387 PD
-24 W
-5822 3407 PD
-24 W
-5848 3425 PD
-24 W
-5876 3441 PD
-24 W
-5905 3459 PD
-24 W
-5927 3478 PD
-24 W
-5955 3491 PD
-24 W
-5984 3494 PD
-24 W
-6014 3501 PD
-24 W
-6042 3511 PD
-24 W
-6069 3524 PD
-24 W
-6090 3542 PD
-24 W
-6113 3561 PD
-24 W
-6129 3579 PD
-24 W
-6157 3597 PD
-24 W
-6182 3615 PD
-24 W
-6187 3633 PD
-24 W
-6207 3650 PD
-24 W
-6236 3659 PD
-24 W
-2842 4615 PD
-24 W
-2841 4615 PD
-24 W
-2815 4606 PD
-24 W
-2786 4600 PD
-24 W
-2757 4598 PD
-24 W
-2730 4590 PD
-24 W
-2702 4581 PD
-24 W
-2674 4572 PD
-24 W
-2647 4562 PD
-24 W
-2620 4551 PD
-24 W
-2591 4535 PD
-24 W
-2565 4516 PD
-24 W
-2542 4497 PD
-24 W
-2515 4480 PD
-24 W
-2488 4466 PD
-24 W
-2459 4454 PD
-24 W
-2432 4442 PD
-24 W
-2405 4428 PD
-24 W
-2378 4412 PD
-24 W
-2354 4394 PD
-24 W
-2329 4376 PD
-24 W
-2301 4359 PD
-24 W
-2298 4357 PD
-24 W
-2272 4347 PD
-24 W
-2245 4328 PD
-24 W
-2221 4310 PD
-24 W
-2198 4292 PD
-24 W
-2174 4273 PD
-24 W
-2157 4255 PD
-24 W
-2141 4236 PD
-24 W
-2122 4218 PD
-24 W
-2105 4198 PD
-24 W
-2093 4180 PD
-24 W
-2078 4161 PD
-24 W
-2065 4142 PD
-24 W
-2056 4123 PD
-24 W
-2048 4105 PD
-24 W
-2042 4087 PD
-24 W
-2039 4069 PD
-24 W
-2037 4051 PD
-24 W
-2037 4033 PD
-24 W
-2037 4015 PD
-24 W
-2053 3997 PD
-24 W
-2081 3978 PD
-24 W
-2102 3959 PD
-24 W
-2120 3940 PD
-24 W
-2145 3921 PD
-24 W
-2172 3902 PD
-24 W
-2199 3888 PD
-24 W
-2226 3873 PD
-24 W
-2254 3859 PD
-24 W
-2282 3841 PD
-24 W
-2309 3824 PD
-24 W
-2339 3807 PD
-24 W
-2367 3793 PD
-24 W
-2394 3781 PD
-24 W
-2425 3767 PD
-24 W
-2454 3751 PD
-24 W
-2481 3736 PD
-24 W
-2508 3721 PD
-24 W
-2537 3706 PD
-24 W
-2565 3694 PD
-24 W
-2586 3676 PD
-24 W
-2580 3658 PD
-24 W
-2563 3640 PD
-24 W
-2544 3621 PD
-24 W
-2530 3602 PD
-24 W
-2526 3583 PD
-24 W
-2519 3565 PD
-24 W
-2508 3546 PD
-24 W
-2496 3526 PD
-24 W
-2479 3507 PD
-24 W
-2462 3490 PD
-24 W
-2445 3472 PD
-24 W
-2427 3452 PD
-24 W
-2405 3433 PD
-24 W
-2379 3416 PD
-24 W
-2354 3397 PD
-24 W
-2332 3378 PD
-24 W
-2314 3360 PD
-24 W
-2293 3341 PD
-24 W
-2278 3324 PD
-24 W
-2249 3305 PD
-24 W
-2224 3286 PD
-24 W
-2216 3268 PD
-24 W
-2210 3248 PD
-24 W
-2199 3230 PD
-24 W
-2178 3211 PD
-24 W
-2152 3192 PD
-24 W
-2131 3173 PD
-24 W
-2116 3154 PD
-24 W
-2103 3136 PD
-24 W
-2096 3117 PD
-24 W
-2092 3097 PD
-24 W
-2087 3080 PD
-24 W
-2084 3061 PD
-24 W
-2081 3041 PD
-24 W
-2079 3023 PD
-24 W
-2077 3004 PD
-24 W
-2074 2984 PD
-24 W
-2071 2965 PD
-24 W
-2066 2947 PD
-24 W
-2062 2928 PD
-24 W
-2066 2908 PD
-24 W
-2073 2890 PD
-24 W
-2092 2871 PD
-24 W
-2120 2854 PD
-24 W
-2143 2836 PD
-24 W
-2115 2820 PD
-24 W
-2094 2807 PD
-24 W
-2088 2807 PD
-24 W
-2060 2788 PD
-24 W
-2038 2770 PD
-24 W
-2013 2751 PD
-24 W
-1991 2734 PD
-24 W
-1964 2717 PD
-24 W
-1936 2712 PD
-24 W
-1908 2699 PD
-24 W
-1881 2691 PD
-24 W
-1854 2681 PD
-24 W
-1826 2670 PD
-24 W
-1798 2656 PD
-24 W
-1774 2638 PD
-24 W
-1761 2620 PD
-24 W
-1752 2602 PD
-24 W
-1751 2584 PD
-24 W
-1757 2567 PD
-24 W
-1761 2557 PD
-24 W
-1766 2548 PD
-24 W
-1769 2530 PD
-24 W
-1758 2512 PD
-24 W
-1776 2495 PD
-24 W
-1790 2477 PD
-24 W
-1788 2459 PD
-24 W
-1773 2440 PD
-24 W
-1761 2421 PD
-24 W
-1741 2403 PD
-24 W
-1714 2390 PD
-24 W
-1699 2372 PD
-24 W
-1688 2354 PD
-24 W
-1669 2337 PD
-24 W
-1642 2324 PD
-24 W
-1616 2306 PD
-24 W
-1589 2289 PD
-24 W
-1562 2274 PD
-24 W
-1545 2256 PD
-24 W
-1536 2238 PD
-24 W
-1535 2219 PD
-24 W
-1538 2200 PD
-24 W
-1538 2182 PD
-24 W
-1535 2163 PD
-24 W
-1524 2144 PD
-24 W
-1510 2127 PD
-24 W
-1508 2123 PD
-24 W
-1496 2108 PD
-24 W
-1486 2090 PD
-24 W
-1477 2072 PD
-24 W
-1470 2055 PD
-24 W
-1465 2036 PD
-24 W
-1460 2017 PD
-24 W
-1455 1999 PD
-24 W
-1445 1979 PD
-24 W
-1435 1961 PD
-24 W
-1425 1943 PD
-24 W
-1414 1925 PD
-24 W
-1403 1907 PD
-24 W
-1393 1888 PD
-24 W
-1382 1870 PD
-24 W
-1369 1850 PD
-24 W
-1356 1832 PD
-24 W
-1343 1812 PD
-24 W
-1337 1793 PD
-24 W
-1333 1775 PD
-24 W
-1329 1756 PD
-24 W
-1326 1737 PD
-24 W
-1322 1719 PD
-24 W
-1318 1699 PD
-24 W
-1316 1680 PD
-24 W
-1314 1662 PD
-24 W
-1311 1644 PD
-24 W
-1311 1623 PD
-24 W
-1311 1603 PD
-24 W
-1312 1584 PD
-24 W
-1311 1566 PD
-24 W
-1312 1548 PD
-24 W
-1319 1531 PD
-24 W
-1345 1518 PD
-24 W
-1373 1510 PD
-24 W
-1401 1508 PD
-24 W
-1428 1507 PD
-24 W
-1456 1505 PD
-24 W
-1470 1501 PD
-24 W
-1484 1494 PD
-24 W
-1512 1483 PD
-24 W
-1538 1464 PD
-24 W
-1553 1446 PD
-24 W
-1547 1428 PD
-24 W
-1531 1410 PD
-24 W
-1527 1392 PD
-24 W
-1526 1392 PD
-24 W
-1513 1373 PD
-24 W
-1503 1355 PD
-24 W
-1496 1337 PD
-24 W
-1493 1317 PD
-24 W
-1493 1299 PD
-24 W
-1498 1280 PD
-24 W
-1511 1261 PD
-24 W
-1531 1242 PD
-24 W
-1552 1223 PD
-24 W
-1571 1204 PD
-24 W
-1582 1186 PD
-24 W
-1585 1168 PD
-24 W
-1596 1150 PD
-24 W
-1624 1132 PD
-24 W
-1631 1114 PD
-24 W
-1639 1096 PD
-24 W
-1649 1078 PD
-24 W
-1660 1059 PD
-24 W
-1671 1039 PD
-24 W
-1680 1021 PD
-24 W
-1698 1003 PD
-24 W
-1722 985 PD
-24 W
-1750 971 PD
-24 W
-1776 959 PD
-24 W
-1804 947 PD
-24 W
-1830 934 PD
-24 W
-1857 923 PD
-24 W
-1884 911 PD
-24 W
-1912 900 PD
-24 W
-1938 891 PD
-24 W
-1966 885 PD
-24 W
-1994 879 PD
-24 W
-2024 872 PD
-24 W
-2052 866 PD
-24 W
-2080 861 PD
-24 W
-2107 856 PD
-24 W
-2134 850 PD
-24 W
-2162 845 PD
-24 W
-2189 841 PD
-24 W
-2216 832 PD
-24 W
-2247 820 PD
-24 W
-2276 809 PD
-24 W
-2305 796 PD
-24 W
-2333 782 PD
-24 W
-2360 768 PD
-24 W
-2389 755 PD
-24 W
-2417 747 PD
-24 W
-2446 744 PD
-24 W
-2474 744 PD
-24 W
-2502 747 PD
-24 W
-2530 752 PD
-24 W
-2559 753 PD
-24 W
-2588 752 PD
-24 W
-2617 749 PD
-24 W
-2644 747 PD
-24 W
-2674 749 PD
-24 W
-2703 754 PD
-24 W
-2731 759 PD
-24 W
-2759 765 PD
-24 W
-2788 768 PD
-24 W
-2818 772 PD
-24 W
-2849 774 PD
-24 W
-2879 774 PD
-24 W
-2907 773 PD
-24 W
-2936 774 PD
-24 W
-2964 778 PD
-24 W
-2993 784 PD
-24 W
-3022 793 PD
-24 W
-3050 806 PD
-24 W
-3079 817 PD
-24 W
-3107 827 PD
-24 W
-3135 837 PD
-24 W
-3164 848 PD
-24 W
-3191 856 PD
-24 W
-3219 862 PD
-24 W
-3245 865 PD
-24 W
-3273 867 PD
-24 W
-3301 871 PD
-24 W
-3327 878 PD
-24 W
-3355 896 PD
-24 W
-3381 909 PD
-24 W
-3410 922 PD
-24 W
-3438 937 PD
-24 W
-3467 951 PD
-24 W
-3497 963 PD
-24 W
-3525 975 PD
-24 W
-3554 987 PD
-24 W
-3583 1000 PD
-24 W
-3610 1013 PD
-24 W
-3639 1028 PD
-24 W
-3668 1042 PD
-24 W
-3698 1052 PD
-24 W
-3727 1057 PD
-24 W
-3756 1059 PD
-24 W
-3783 1064 PD
-24 W
-3810 1071 PD
-24 W
-3837 1078 PD
-24 W
-3864 1086 PD
-24 W
-3890 1096 PD
-24 W
-3891 1097 PD
-24 W
-3918 1107 PD
-24 W
-3946 1123 PD
-24 W
-3961 1142 PD
-24 W
-3976 1160 PD
-24 W
-3988 1178 PD
-24 W
-3999 1197 PD
-24 W
-4006 1215 PD
-24 W
-4013 1234 PD
-24 W
-4022 1251 PD
-24 W
-4041 1271 PD
-24 W
-4070 1279 PD
-24 W
-4096 1292 PD
-24 W
-4126 1303 PD
-24 W
-4156 1317 PD
-24 W
-4185 1330 PD
-24 W
-4212 1347 PD
-24 W
-4240 1364 PD
-24 W
-4267 1382 PD
-24 W
-4293 1399 PD
-24 W
-4311 1419 PD
-24 W
-4313 1438 PD
-24 W
-4312 1457 PD
-24 W
-4313 1475 PD
-24 W
-4313 1494 PD
-24 W
-4331 1512 PD
-24 W
-4351 1530 PD
-24 W
-4356 1548 PD
-24 W
-4358 1568 PD
-24 W
-4363 1588 PD
-24 W
-4366 1607 PD
-24 W
-4366 1625 PD
-24 W
-4365 1645 PD
-24 W
-4365 1663 PD
-24 W
-4366 1681 PD
-24 W
-4373 1699 PD
-24 W
-4401 1713 PD
-24 W
-4429 1714 PD
-24 W
-4458 1726 PD
-24 W
-4485 1744 PD
-24 W
-4510 1763 PD
-24 W
-4530 1781 PD
-24 W
-4548 1800 PD
-24 W
-4569 1817 PD
-24 W
-4596 1825 PD
-24 W
-4624 1832 PD
-24 W
-4652 1849 PD
-24 W
-4664 1866 PD
-24 W
-4668 1885 PD
-24 W
-4674 1904 PD
-24 W
-4678 1923 PD
-24 W
-4678 1940 PD
-24 W
-4680 1960 PD
-24 W
-4686 1978 PD
-24 W
-4692 1996 PD
-24 W
-4698 2016 PD
-24 W
-4702 2035 PD
-24 W
-4708 2054 PD
-24 W
-4716 2073 PD
-24 W
-4726 2090 PD
-24 W
-4736 2109 PD
-24 W
-4754 2127 PD
-24 W
-4782 2141 PD
-24 W
-4809 2144 PD
-24 W
-4838 2140 PD
-24 W
-4865 2138 PD
-24 W
-4892 2156 PD
-24 W
-4920 2157 PD
-24 W
-4947 2165 PD
-24 W
-4967 2183 PD
-24 W
-4994 2198 PD
-24 W
-5023 2212 PD
-24 W
-5050 2223 PD
-24 W
-5077 2231 PD
-24 W
-5105 2240 PD
-24 W
-5133 2250 PD
-24 W
-5154 2268 PD
-24 W
-5165 2286 PD
-24 W
-5181 2304 PD
-24 W
-5209 2314 PD
-24 W
-5237 2315 PD
-24 W
-5266 2320 PD
-24 W
-5292 2338 PD
-24 W
-5303 2356 PD
-24 W
-5317 2373 PD
-24 W
-5341 2392 PD
-24 W
-5368 2406 PD
-24 W
-5370 2411 PD
-24 W
-5381 2425 PD
-24 W
-5390 2445 PD
-24 W
-5398 2463 PD
-24 W
-5406 2482 PD
-24 W
-5401 2494 PD
-24 W
-5405 2502 PD
-24 W
-5407 2520 PD
-24 W
-5408 2538 PD
-24 W
-5406 2557 PD
-24 W
-5403 2575 PD
-24 W
-5398 2593 PD
-24 W
-5390 2610 PD
-24 W
-5384 2628 PD
-24 W
-5378 2647 PD
-24 W
-5377 2666 PD
-24 W
-5378 2685 PD
-24 W
-5379 2705 PD
-24 W
-5382 2723 PD
-24 W
-5386 2743 PD
-24 W
-5395 2761 PD
-24 W
-5408 2779 PD
-24 W
-5430 2797 PD
-24 W
-5453 2815 PD
-24 W
-5478 2833 PD
-24 W
-5505 2851 PD
-24 W
-5526 2869 PD
-24 W
-5536 2888 PD
-24 W
-5541 2906 PD
-24 W
-5558 2924 PD
-24 W
-5587 2937 PD
-24 W
-5614 2951 PD
-24 W
-5642 2966 PD
-24 W
-5668 2984 PD
-24 W
-5686 3002 PD
-24 W
-5697 3021 PD
-24 W
-5705 3040 PD
-24 W
-5716 3060 PD
-24 W
-5730 3079 PD
-24 W
-5753 3097 PD
-24 W
-5770 3115 PD
-24 W
-5777 3134 PD
-24 W
-5778 3153 PD
-24 W
-5782 3171 PD
-24 W
-5792 3190 PD
-24 W
-5809 3209 PD
-24 W
-5828 3228 PD
-24 W
-5838 3245 PD
-24 W
-5842 3264 PD
-24 W
-5849 3283 PD
-24 W
-5860 3301 PD
-24 W
-5878 3319 PD
-24 W
-5907 3335 PD
-24 W
-5936 3349 PD
-24 W
-5959 3367 PD
-24 W
-5961 3385 PD
-24 W
-5970 3404 PD
-24 W
-5990 3423 PD
-24 W
-6017 3430 PD
-24 W
-6047 3435 PD
-24 W
-6074 3452 PD
-24 W
-6103 3459 PD
-24 W
-6112 3477 PD
-24 W
-6131 3496 PD
-24 W
-6158 3509 PD
-24 W
-6183 3528 PD
-24 W
-6193 3548 PD
-24 W
-6205 3567 PD
-24 W
-6221 3586 PD
-24 W
-6240 3603 PD
-24 W
-2613 4611 PD
-24 W
-2612 4611 PD
-24 W
-2589 4593 PD
-24 W
-2561 4574 PD
-24 W
-2535 4556 PD
-24 W
-2505 4539 PD
-24 W
-2481 4519 PD
-24 W
-2454 4500 PD
-24 W
-2426 4485 PD
-24 W
-2398 4475 PD
-24 W
-2371 4467 PD
-24 W
-2344 4457 PD
-24 W
-2315 4443 PD
-24 W
-2287 4430 PD
-24 W
-2260 4416 PD
-24 W
-2231 4404 PD
-24 W
-2204 4391 PD
-24 W
-2177 4372 PD
-24 W
-2149 4353 PD
-24 W
-2127 4335 PD
-24 W
-2102 4317 PD
-24 W
-2080 4298 PD
-24 W
-2058 4280 PD
-24 W
-2039 4261 PD
-24 W
-2021 4242 PD
-24 W
-2004 4222 PD
-24 W
-1991 4203 PD
-24 W
-1978 4184 PD
-24 W
-1967 4166 PD
-24 W
-1960 4147 PD
-24 W
-1956 4129 PD
-24 W
-1954 4110 PD
-24 W
-1952 4091 PD
-24 W
-1953 4072 PD
-24 W
-1958 4053 PD
-24 W
-1963 4034 PD
-24 W
-1967 4015 PD
-24 W
-1970 3997 PD
-24 W
-1974 3980 PD
-24 W
-1978 3961 PD
-24 W
-1979 3942 PD
-24 W
-1952 3937 PD
-24 W
-1923 3940 PD
-24 W
-1895 3951 PD
-24 W
-1868 3965 PD
-24 W
-1845 3984 PD
-24 W
-1819 4002 PD
-24 W
-1790 4016 PD
-24 W
-1762 4031 PD
-24 W
-1735 4043 PD
-24 W
-1711 4062 PD
-24 W
-1695 4080 PD
-24 W
-1684 4100 PD
-24 W
-1679 4118 PD
-24 W
-1673 4138 PD
-24 W
-1669 4156 PD
-24 W
-1672 4175 PD
-24 W
-1680 4193 PD
-24 W
-1689 4211 PD
-24 W
-1705 4230 PD
-24 W
-1726 4248 PD
-24 W
-1747 4267 PD
-24 W
-1766 4286 PD
-24 W
-1784 4305 PD
-24 W
-1794 4324 PD
-24 W
-1796 4343 PD
-24 W
-1790 4361 PD
-24 W
-1778 4380 PD
-24 W
-1764 4398 PD
-24 W
-1746 4417 PD
-24 W
-1731 4435 PD
-24 W
-1720 4454 PD
-24 W
-1708 4472 PD
-24 W
-1700 4491 PD
-24 W
-1694 4509 PD
-24 W
-2497 4602 PD
-24 W
-2496 4602 PD
-24 W
-2477 4584 PD
-24 W
-2459 4565 PD
-24 W
-2430 4547 PD
-24 W
-2400 4532 PD
-24 W
-2369 4520 PD
-24 W
-2339 4506 PD
-24 W
-2311 4495 PD
-24 W
-2285 4485 PD
-24 W
-2258 4473 PD
-24 W
-2231 4461 PD
-24 W
-2203 4450 PD
-24 W
-2174 4436 PD
-24 W
-2147 4421 PD
-24 W
-2122 4403 PD
-24 W
-2095 4385 PD
-24 W
-2073 4367 PD
-24 W
-2052 4348 PD
-24 W
-2034 4330 PD
-24 W
-2012 4311 PD
-24 W
-1991 4293 PD
-24 W
-1969 4274 PD
-24 W
-1951 4256 PD
-24 W
-1935 4238 PD
-24 W
-1920 4220 PD
-24 W
-1910 4202 PD
-24 W
-1904 4183 PD
-24 W
-1895 4164 PD
-24 W
-1893 4146 PD
-24 W
-1892 4128 PD
-24 W
-1889 4109 PD
-24 W
-1886 4090 PD
-24 W
-1884 4072 PD
-24 W
-1883 4053 PD
-24 W
-1885 4034 PD
-24 W
-1884 4015 PD
-24 W
-1857 4021 PD
-24 W
-1829 4039 PD
-24 W
-1808 4058 PD
-24 W
-1791 4076 PD
-24 W
-1773 4095 PD
-24 W
-1761 4112 PD
-24 W
-1752 4131 PD
-24 W
-1746 4151 PD
-24 W
-1746 4170 PD
-24 W
-1751 4188 PD
-24 W
-1765 4206 PD
-24 W
-1788 4225 PD
-24 W
-1808 4243 PD
-24 W
-1825 4262 PD
-24 W
-1840 4281 PD
-24 W
-1853 4299 PD
-24 W
-1862 4319 PD
-24 W
-1868 4338 PD
-24 W
-1873 4356 PD
-24 W
-1875 4375 PD
-24 W
-1872 4394 PD
-24 W
-1859 4414 PD
-24 W
-1845 4432 PD
-24 W
-1828 4451 PD
-24 W
-1803 4470 PD
-24 W
-1787 4488 PD
-24 W
-1775 4507 PD
-24 W
-1768 4525 PD
-24 W
-1761 4545 PD
-24 W
-1755 4564 PD
-24 W
-1752 4582 PD
-24 W
-1751 4601 PD
-24 W
-2379 4599 PD
-24 W
-2378 4580 PD
-24 W
-2365 4562 PD
-24 W
-2337 4553 PD
-24 W
-2309 4544 PD
-24 W
-2281 4533 PD
-24 W
-2254 4524 PD
-24 W
-2226 4515 PD
-24 W
-2199 4503 PD
-24 W
-2171 4487 PD
-24 W
-2145 4469 PD
-24 W
-2117 4455 PD
-24 W
-2092 4436 PD
-24 W
-2075 4418 PD
-24 W
-2057 4399 PD
-24 W
-2035 4382 PD
-24 W
-2008 4367 PD
-24 W
-1981 4358 PD
-24 W
-1954 4371 PD
-24 W
-1941 4389 PD
-24 W
-1934 4407 PD
-24 W
-1927 4427 PD
-24 W
-1919 4447 PD
-24 W
-1905 4465 PD
-24 W
-1888 4483 PD
-24 W
-1872 4505 PD
-24 W
-1859 4524 PD
-24 W
-1849 4542 PD
-24 W
-1842 4561 PD
-24 W
-1833 4580 PD
-24 W
-1826 4599 PD
-24 W
-2259 4595 PD
-24 W
-2258 4595 PD
-24 W
-2234 4577 PD
-24 W
-2206 4563 PD
-24 W
-2179 4555 PD
-24 W
-2150 4544 PD
-24 W
-2123 4531 PD
-24 W
-2097 4512 PD
-24 W
-2074 4494 PD
-24 W
-2051 4476 PD
-24 W
-2027 4458 PD
-24 W
-2001 4462 PD
-24 W
-1976 4482 PD
-24 W
-1958 4500 PD
-24 W
-1940 4518 PD
-24 W
-1921 4537 PD
-24 W
-1912 4556 PD
-24 W
-1898 4575 PD
-24 W
-1894 4593 PD
-24 W
-2157 4601 PD
-24 W
-2128 4592 PD
-24 W
-2102 4578 PD
-24 W
-2076 4559 PD
-24 W
-2056 4541 PD
-24 W
-2028 4528 PD
-24 W
-2005 4546 PD
-24 W
-1982 4566 PD
-24 W
-1974 4585 PD
-24 W
-1614 4423 PD
-24 W
-1613 4423 PD
-24 W
-1622 4404 PD
-24 W
-1636 4386 PD
-24 W
-1647 4367 PD
-24 W
-1651 4347 PD
-24 W
-1651 4328 PD
-24 W
-1650 4309 PD
-24 W
-1640 4291 PD
-24 W
-1617 4273 PD
-24 W
-1592 4255 PD
-24 W
-1572 4237 PD
-24 W
-1566 4218 PD
-24 W
-1571 4199 PD
-24 W
-1566 4181 PD
-24 W
-1556 4160 PD
-24 W
-1557 4140 PD
-24 W
-1564 4121 PD
-24 W
-1575 4101 PD
-24 W
-1587 4082 PD
-24 W
-1602 4062 PD
-24 W
-1622 4044 PD
-24 W
-1649 4026 PD
-24 W
-1678 4010 PD
-24 W
-1705 3994 PD
-24 W
-1732 3982 PD
-24 W
-1760 3969 PD
-24 W
-1790 3951 PD
-24 W
-1820 3933 PD
-24 W
-1847 3920 PD
-24 W
-1876 3906 PD
-24 W
-1905 3894 PD
-24 W
-1934 3884 PD
-24 W
-1961 3875 PD
-24 W
-1989 3865 PD
-24 W
-2018 3852 PD
-24 W
-2014 3834 PD
-24 W
-1995 3816 PD
-24 W
-1967 3801 PD
-24 W
-1940 3782 PD
-24 W
-1929 3764 PD
-24 W
-1922 3744 PD
-24 W
-1913 3726 PD
-24 W
-1906 3708 PD
-24 W
-1897 3689 PD
-24 W
-1890 3671 PD
-24 W
-1881 3651 PD
-24 W
-1875 3631 PD
-24 W
-1869 3611 PD
-24 W
-1866 3592 PD
-24 W
-1861 3574 PD
-24 W
-1854 3556 PD
-24 W
-1846 3538 PD
-24 W
-1839 3520 PD
-24 W
-1831 3499 PD
-24 W
-1826 3481 PD
-24 W
-1820 3463 PD
-24 W
-1813 3445 PD
-24 W
-1798 3425 PD
-24 W
-1786 3407 PD
-24 W
-1770 3388 PD
-24 W
-1754 3369 PD
-24 W
-1735 3350 PD
-24 W
-1712 3331 PD
-24 W
-1686 3313 PD
-24 W
-1660 3294 PD
-24 W
-1632 3277 PD
-24 W
-1603 3265 PD
-24 W
-1574 3254 PD
-24 W
-1545 3245 PD
-24 W
-1518 3237 PD
-24 W
-1491 3231 PD
-24 W
-1463 3226 PD
-24 W
-1436 3221 PD
-24 W
-1721 3939 PD
-24 W
-1632 3954 PD
-24 W
-1660 3939 PD
-24 W
-1688 3933 PD
-24 W
-1716 3926 PD
-24 W
-1743 3915 PD
-24 W
-1771 3900 PD
-24 W
-1794 3882 PD
-24 W
-1807 3862 PD
-24 W
-1818 3845 PD
-24 W
-1830 3827 PD
-24 W
-1841 3808 PD
-24 W
-1846 3790 PD
-24 W
-1859 3771 PD
-24 W
-1861 3753 PD
-24 W
-1851 3734 PD
-24 W
-1836 3715 PD
-24 W
-1826 3696 PD
-24 W
-1814 3678 PD
-24 W
-1807 3660 PD
-24 W
-1807 3640 PD
-24 W
-1805 3622 PD
-24 W
-1801 3605 PD
-24 W
-1797 3585 PD
-24 W
-1792 3568 PD
-24 W
-1785 3550 PD
-24 W
-1778 3532 PD
-24 W
-1770 3514 PD
-24 W
-1761 3496 PD
-24 W
-1751 3478 PD
-24 W
-1737 3460 PD
-24 W
-1724 3443 PD
-24 W
-1707 3424 PD
-24 W
-1694 3405 PD
-24 W
-1675 3387 PD
-24 W
-1651 3369 PD
-24 W
-1622 3350 PD
-24 W
-1595 3340 PD
-24 W
-1313 3145 PD
-24 W
-1341 3156 PD
-24 W
-1368 3165 PD
-24 W
-1396 3168 PD
-24 W
-1422 3174 PD
-24 W
-1450 3181 PD
-24 W
-1478 3184 PD
-24 W
-1509 3189 PD
-24 W
-1539 3196 PD
-24 W
-1566 3203 PD
-24 W
-1595 3211 PD
-24 W
-1624 3219 PD
-24 W
-1652 3226 PD
-24 W
-1680 3236 PD
-24 W
-1708 3254 PD
-24 W
-1732 3272 PD
-24 W
-1758 3290 PD
-24 W
-1778 3310 PD
-24 W
-1794 3329 PD
-24 W
-1811 3347 PD
-24 W
-1827 3366 PD
-24 W
-1845 3384 PD
-24 W
-1861 3403 PD
-24 W
-1877 3421 PD
-24 W
-1890 3439 PD
-24 W
-1903 3457 PD
-24 W
-1916 3476 PD
-24 W
-1927 3495 PD
-24 W
-1936 3515 PD
-24 W
-1944 3536 PD
-24 W
-1952 3553 PD
-24 W
-1961 3572 PD
-24 W
-1969 3590 PD
-24 W
-1973 3608 PD
-24 W
-1976 3626 PD
-24 W
-1978 3645 PD
-24 W
-1979 3664 PD
-24 W
-1983 3684 PD
-24 W
-1989 3704 PD
-24 W
-1992 3722 PD
-24 W
-2007 3740 PD
-24 W
-2035 3755 PD
-24 W
-2060 3773 PD
-24 W
-2074 3793 PD
-24 W
-2088 3812 PD
-24 W
-2101 3829 PD
-24 W
-2112 3847 PD
-24 W
-2140 3849 PD
-24 W
-2170 3843 PD
-24 W
-2200 3833 PD
-24 W
-2229 3821 PD
-24 W
-2259 3808 PD
-24 W
-2286 3793 PD
-24 W
-2311 3774 PD
-24 W
-2339 3755 PD
-24 W
-2367 3737 PD
-24 W
-2395 3718 PD
-24 W
-2423 3702 PD
-24 W
-2451 3692 PD
-24 W
-2479 3678 PD
-24 W
-2480 3659 PD
-24 W
-2463 3640 PD
-24 W
-2454 3623 PD
-24 W
-2451 3605 PD
-24 W
-2451 3586 PD
-24 W
-2446 3568 PD
-24 W
-2439 3548 PD
-24 W
-2430 3531 PD
-24 W
-2413 3513 PD
-24 W
-2394 3494 PD
-24 W
-2371 3474 PD
-24 W
-2347 3456 PD
-24 W
-2318 3437 PD
-24 W
-2297 3419 PD
-24 W
-2278 3400 PD
-24 W
-2260 3381 PD
-24 W
-2244 3363 PD
-24 W
-2224 3344 PD
-24 W
-2195 3326 PD
-24 W
-2167 3307 PD
-24 W
-2145 3289 PD
-24 W
-2128 3269 PD
-24 W
-2112 3251 PD
-24 W
-2097 3231 PD
-24 W
-2085 3213 PD
-24 W
-2067 3195 PD
-24 W
-2051 3175 PD
-24 W
-2038 3156 PD
-24 W
-2027 3138 PD
-24 W
-2013 3118 PD
-24 W
-2001 3100 PD
-24 W
-1992 3081 PD
-24 W
-1982 3062 PD
-24 W
-1974 3044 PD
-24 W
-1967 3025 PD
-24 W
-1961 3006 PD
-24 W
-1960 2986 PD
-24 W
-1959 2968 PD
-24 W
-1960 2948 PD
-24 W
-1961 2930 PD
-24 W
-1962 2912 PD
-24 W
-1960 2899 PD
-24 W
-1959 2894 PD
-24 W
-1948 2875 PD
-24 W
-1933 2857 PD
-24 W
-1905 2840 PD
-24 W
-1878 2822 PD
-24 W
-1854 2803 PD
-24 W
-1836 2785 PD
-24 W
-1812 2768 PD
-24 W
-1785 2756 PD
-24 W
-1758 2744 PD
-24 W
-1730 2730 PD
-24 W
-1705 2711 PD
-24 W
-1704 2712 PD
-24 W
-1678 2695 PD
-24 W
-1664 2677 PD
-24 W
-1653 2658 PD
-24 W
-1650 2640 PD
-24 W
-1657 2620 PD
-24 W
-1667 2602 PD
-24 W
-1676 2584 PD
-24 W
-1674 2567 PD
-24 W
-1671 2549 PD
-24 W
-1672 2531 PD
-24 W
-1678 2513 PD
-24 W
-1691 2495 PD
-24 W
-1699 2477 PD
-24 W
-1701 2459 PD
-24 W
-1697 2441 PD
-24 W
-1675 2423 PD
-24 W
-1647 2413 PD
-24 W
-1627 2394 PD
-24 W
-1626 2376 PD
-24 W
-1599 2364 PD
-24 W
-1576 2346 PD
-24 W
-1549 2331 PD
-24 W
-1522 2318 PD
-24 W
-1495 2302 PD
-24 W
-1473 2289 PD
-24 W
-1466 2286 PD
-24 W
-1443 2269 PD
-24 W
-1439 2251 PD
-24 W
-1442 2233 PD
-24 W
-1449 2214 PD
-24 W
-1452 2206 PD
-24 W
-1454 2197 PD
-24 W
-1459 2178 PD
-24 W
-1460 2160 PD
-24 W
-1452 2142 PD
-24 W
-1449 2140 PD
-24 W
-1425 2129 PD
-24 W
-1406 2110 PD
-24 W
-1389 2092 PD
-24 W
-1377 2074 PD
-24 W
-1367 2056 PD
-24 W
-1357 2037 PD
-24 W
-1345 2019 PD
-24 W
-1333 2001 PD
-24 W
-1320 1983 PD
-24 W
-1301 1964 PD
-24 W
-1281 1946 PD
-24 W
-1262 1927 PD
-24 W
-1245 1909 PD
-24 W
-1232 1891 PD
-24 W
-1222 1874 PD
-24 W
-1214 1856 PD
-24 W
-1208 1836 PD
-24 W
-1201 1817 PD
-24 W
-1192 1798 PD
-24 W
-1187 1779 PD
-24 W
-1183 1761 PD
-24 W
-1178 1743 PD
-24 W
-1173 1724 PD
-24 W
-1166 1706 PD
-24 W
-1159 1688 PD
-24 W
-1152 1669 PD
-24 W
-1150 1649 PD
-24 W
-1148 1631 PD
-24 W
-1150 1611 PD
-24 W
-1150 1593 PD
-24 W
-1154 1574 PD
-24 W
-1161 1556 PD
-24 W
-1172 1537 PD
-24 W
-1188 1519 PD
-24 W
-1208 1501 PD
-24 W
-1229 1483 PD
-24 W
-1255 1465 PD
-24 W
-1283 1449 PD
-24 W
-1298 1442 PD
-24 W
-1310 1435 PD
-24 W
-1336 1431 PD
-24 W
-1367 1436 PD
-24 W
-1394 1440 PD
-24 W
-1421 1438 PD
-24 W
-1427 1421 PD
-24 W
-1424 1403 PD
-24 W
-1419 1384 PD
-24 W
-1410 1366 PD
-24 W
-1404 1347 PD
-24 W
-1399 1329 PD
-24 W
-1396 1312 PD
-24 W
-1393 1300 PD
-24 W
-1386 1294 PD
-24 W
-1374 1276 PD
-24 W
-1377 1257 PD
-24 W
-1388 1237 PD
-24 W
-1398 1218 PD
-24 W
-1404 1199 PD
-24 W
-1413 1180 PD
-24 W
-1421 1162 PD
-24 W
-1430 1144 PD
-24 W
-1439 1126 PD
-24 W
-1448 1108 PD
-24 W
-1456 1091 PD
-24 W
-1462 1072 PD
-24 W
-1467 1054 PD
-24 W
-1473 1034 PD
-24 W
-1480 1016 PD
-24 W
-1490 996 PD
-24 W
-1499 978 PD
-24 W
-1513 958 PD
-24 W
-1524 940 PD
-24 W
-1532 921 PD
-24 W
-1542 902 PD
-24 W
-1553 884 PD
-24 W
-1567 864 PD
-24 W
-1583 845 PD
-24 W
-1597 827 PD
-24 W
-1621 808 PD
-24 W
-1649 794 PD
-24 W
-1678 786 PD
-24 W
-1706 782 PD
-24 W
-1733 777 PD
-24 W
-1762 768 PD
-24 W
-1789 759 PD
-24 W
-1816 747 PD
-24 W
-1844 742 PD
-24 W
-1872 741 PD
-24 W
-1903 744 PD
-24 W
-1933 746 PD
-24 W
-1961 746 PD
-24 W
-1990 744 PD
-24 W
-2018 743 PD
-24 W
-2049 740 PD
-24 W
-2078 735 PD
-24 W
-2105 731 PD
-24 W
-2133 728 PD
-24 W
-2161 719 PD
-24 W
-2188 709 PD
-24 W
-2217 702 PD
-24 W
-2246 693 PD
-24 W
-2273 685 PD
-24 W
-2301 675 PD
-24 W
-2329 664 PD
-24 W
-2357 656 PD
-24 W
-2385 647 PD
-24 W
-2412 641 PD
-24 W
-2441 636 PD
-24 W
-2468 630 PD
-24 W
-2495 626 PD
-24 W
-2522 631 PD
-24 W
-2549 638 PD
-24 W
-2576 649 PD
-24 W
-2603 657 PD
-24 W
-2629 659 PD
-24 W
-2657 660 PD
-24 W
-2684 651 PD
-24 W
-2709 634 PD
-24 W
-2737 626 PD
-24 W
-2767 622 PD
-24 W
-2796 619 PD
-24 W
-2825 617 PD
-24 W
-2854 616 PD
-24 W
-2883 617 PD
-24 W
-2911 618 PD
-24 W
-2940 618 PD
-24 W
-2971 620 PD
-24 W
-2999 622 PD
-24 W
-3027 624 PD
-24 W
-3055 628 PD
-24 W
-3083 634 PD
-24 W
-3111 640 PD
-24 W
-3140 651 PD
-24 W
-3169 661 PD
-24 W
-3197 669 PD
-24 W
-3226 676 PD
-24 W
-3255 684 PD
-24 W
-3283 693 PD
-24 W
-3312 704 PD
-24 W
-3341 717 PD
-24 W
-3371 729 PD
-24 W
-3400 740 PD
-24 W
-3429 756 PD
-24 W
-3460 769 PD
-24 W
-3486 780 PD
-24 W
-3504 798 PD
-24 W
-3532 816 PD
-24 W
-3562 828 PD
-24 W
-3591 842 PD
-24 W
-3618 855 PD
-24 W
-3646 868 PD
-24 W
-3676 879 PD
-24 W
-3704 893 PD
-24 W
-3732 906 PD
-24 W
-3759 920 PD
-24 W
-3787 934 PD
-24 W
-3813 944 PD
-24 W
-3841 955 PD
-24 W
-3869 965 PD
-24 W
-3898 974 PD
-24 W
-3925 981 PD
-24 W
-3952 987 PD
-24 W
-3980 994 PD
-24 W
-4007 1001 PD
-24 W
-4034 1017 PD
-24 W
-4058 1035 PD
-24 W
-4077 1054 PD
-24 W
-4096 1071 PD
-24 W
-4122 1090 PD
-24 W
-4145 1108 PD
-24 W
-4164 1128 PD
-24 W
-4182 1147 PD
-24 W
-4200 1166 PD
-24 W
-4215 1184 PD
-24 W
-4219 1202 PD
-24 W
-4208 1228 PD
-24 W
-4207 1228 PD
-24 W
-4204 1247 PD
-24 W
-4215 1265 PD
-24 W
-4224 1284 PD
-24 W
-4250 1303 PD
-24 W
-4277 1313 PD
-24 W
-4304 1324 PD
-24 W
-4334 1338 PD
-24 W
-4362 1356 PD
-24 W
-4389 1373 PD
-24 W
-4407 1392 PD
-24 W
-4412 1410 PD
-24 W
-4415 1430 PD
-24 W
-4422 1449 PD
-24 W
-4427 1467 PD
-24 W
-4433 1486 PD
-24 W
-4440 1504 PD
-24 W
-4447 1522 PD
-24 W
-4448 1541 PD
-24 W
-4449 1559 PD
-24 W
-4455 1578 PD
-24 W
-4460 1596 PD
-24 W
-4489 1612 PD
-24 W
-4517 1614 PD
-24 W
-4544 1612 PD
-24 W
-4574 1614 PD
-24 W
-4602 1620 PD
-24 W
-4628 1629 PD
-24 W
-4648 1641 PD
-24 W
-4656 1639 PD
-24 W
-4685 1655 PD
-24 W
-4706 1674 PD
-24 W
-4726 1692 PD
-24 W
-4735 1707 PD
-24 W
-4736 1711 PD
-24 W
-4742 1728 PD
-24 W
-4746 1746 PD
-24 W
-4745 1765 PD
-24 W
-4742 1786 PD
-24 W
-4739 1804 PD
-24 W
-4735 1823 PD
-24 W
-4732 1840 PD
-24 W
-4731 1858 PD
-24 W
-4732 1876 PD
-24 W
-4733 1896 PD
-24 W
-4734 1914 PD
-24 W
-4736 1933 PD
-24 W
-4740 1951 PD
-24 W
-4754 1969 PD
-24 W
-4780 1972 PD
-24 W
-4808 1970 PD
-24 W
-4837 1966 PD
-24 W
-4865 1963 PD
-24 W
-4896 1961 PD
-24 W
-4925 1957 PD
-24 W
-4952 1958 PD
-24 W
-4981 1962 PD
-24 W
-5007 1968 PD
-24 W
-5019 1987 PD
-24 W
-5009 2006 PD
-24 W
-4982 2023 PD
-24 W
-4958 2041 PD
-24 W
-4941 2060 PD
-24 W
-4929 2080 PD
-24 W
-4957 2093 PD
-24 W
-4984 2108 PD
-24 W
-5012 2096 PD
-24 W
-5039 2083 PD
-24 W
-5067 2081 PD
-24 W
-5091 2099 PD
-24 W
-5086 2117 PD
-24 W
-5075 2135 PD
-24 W
-5083 2153 PD
-24 W
-5114 2159 PD
-24 W
-5144 2166 PD
-24 W
-5170 2185 PD
-24 W
-5174 2204 PD
-24 W
-5182 2222 PD
-24 W
-5209 2229 PD
-24 W
-5236 2214 PD
-24 W
-5263 2197 PD
-24 W
-5269 2194 PD
-24 W
-5289 2189 PD
-24 W
-5317 2192 PD
-24 W
-5345 2204 PD
-24 W
-5374 2222 PD
-24 W
-5397 2240 PD
-24 W
-5414 2258 PD
-24 W
-5427 2276 PD
-24 W
-5442 2296 PD
-24 W
-5451 2313 PD
-24 W
-5458 2331 PD
-24 W
-5467 2349 PD
-24 W
-5473 2368 PD
-24 W
-5476 2386 PD
-24 W
-5482 2404 PD
-24 W
-5487 2422 PD
-24 W
-5487 2427 PD
-24 W
-5488 2440 PD
-24 W
-5492 2461 PD
-24 W
-5500 2479 PD
-24 W
-5502 2497 PD
-24 W
-5497 2517 PD
-24 W
-5490 2537 PD
-24 W
-5483 2557 PD
-24 W
-5475 2576 PD
-24 W
-5465 2597 PD
-24 W
-5459 2615 PD
-24 W
-5456 2634 PD
-24 W
-5454 2652 PD
-24 W
-5454 2671 PD
-24 W
-5457 2690 PD
-24 W
-5462 2709 PD
-24 W
-5469 2727 PD
-24 W
-5476 2746 PD
-24 W
-5486 2764 PD
-24 W
-5500 2784 PD
-24 W
-5516 2802 PD
-24 W
-5541 2820 PD
-24 W
-5568 2837 PD
-24 W
-5584 2855 PD
-24 W
-5595 2873 PD
-24 W
-5608 2892 PD
-24 W
-5629 2911 PD
-24 W
-5657 2923 PD
-24 W
-5687 2938 PD
-24 W
-5716 2953 PD
-24 W
-5737 2972 PD
-24 W
-5753 2991 PD
-24 W
-5769 3009 PD
-24 W
-5778 3027 PD
-24 W
-5787 3045 PD
-24 W
-5817 3048 PD
-24 W
-5838 3067 PD
-24 W
-5841 3086 PD
-24 W
-5870 3097 PD
-24 W
-5899 3094 PD
-24 W
-5925 3086 PD
-24 W
-5946 3068 PD
-24 W
-5963 3048 PD
-24 W
-5975 3029 PD
-24 W
-5982 3011 PD
-24 W
-5992 2992 PD
-24 W
-6003 2973 PD
-24 W
-6013 2966 PD
-24 W
-6032 2959 PD
-24 W
-6061 2954 PD
-24 W
-6090 2956 PD
-24 W
-6117 2963 PD
-24 W
-6144 2973 PD
-24 W
-6169 2992 PD
-24 W
-6178 3010 PD
-24 W
-6187 3028 PD
-24 W
-6198 3046 PD
-24 W
-6211 3064 PD
-24 W
-6225 3082 PD
-24 W
-6232 3101 PD
-24 W
-6236 3119 PD
-24 W
-6235 3137 PD
-24 W
-6235 3156 PD
-24 W
-6237 3174 PD
-24 W
-6237 3192 PD
-24 W
-6239 3210 PD
-24 W
-6239 3229 PD
-24 W
-6241 3246 PD
-24 W
-6243 3264 PD
-24 W
-6244 3283 PD
-24 W
-6245 3301 PD
-24 W
-6246 3320 PD
-24 W
-6244 3338 PD
-24 W
-6243 3357 PD
-24 W
-6240 3376 PD
-24 W
-6240 3394 PD
-24 W
-6238 3413 PD
-24 W
-6237 3431 PD
-24 W
-6238 3449 PD
-24 W
-6239 3466 PD
-24 W
-6244 3484 PD
-24 W
-6251 3503 PD
-24 W
-1209 3084 PD
-24 W
-1236 3088 PD
-24 W
-1266 3087 PD
-24 W
-1294 3090 PD
-24 W
-1323 3096 PD
-24 W
-1351 3103 PD
-24 W
-1378 3117 PD
-24 W
-1406 3120 PD
-24 W
-1434 3119 PD
-24 W
-1462 3123 PD
-24 W
-1492 3138 PD
-24 W
-1522 3147 PD
-24 W
-1550 3156 PD
-24 W
-1578 3159 PD
-24 W
-1607 3158 PD
-24 W
-1636 3161 PD
-24 W
-1664 3170 PD
-24 W
-1691 3184 PD
-24 W
-1715 3203 PD
-24 W
-1740 3222 PD
-24 W
-1769 3234 PD
-24 W
-1797 3242 PD
-24 W
-1824 3250 PD
-24 W
-1851 3265 PD
-24 W
-1857 3284 PD
-24 W
-1855 3302 PD
-24 W
-1864 3321 PD
-24 W
-1880 3338 PD
-24 W
-1900 3357 PD
-24 W
-1921 3375 PD
-24 W
-1937 3394 PD
-24 W
-1944 3413 PD
-24 W
-1946 3431 PD
-24 W
-1955 3449 PD
-24 W
-1977 3467 PD
-24 W
-1994 3485 PD
-24 W
-2007 3505 PD
-24 W
-2019 3525 PD
-24 W
-2028 3545 PD
-24 W
-2032 3564 PD
-24 W
-2035 3583 PD
-24 W
-2038 3602 PD
-24 W
-2043 3620 PD
-24 W
-2049 3638 PD
-24 W
-2054 3657 PD
-24 W
-2060 3676 PD
-24 W
-2072 3695 PD
-24 W
-2084 3713 PD
-24 W
-2096 3732 PD
-24 W
-2118 3750 PD
-24 W
-2145 3764 PD
-24 W
-2173 3762 PD
-24 W
-2200 3750 PD
-24 W
-2227 3738 PD
-24 W
-2256 3728 PD
-24 W
-2283 3713 PD
-24 W
-2311 3702 PD
-24 W
-2340 3690 PD
-24 W
-2368 3682 PD
-24 W
-2386 3664 PD
-24 W
-2393 3645 PD
-24 W
-2383 3626 PD
-24 W
-2371 3607 PD
-24 W
-2365 3588 PD
-24 W
-2358 3571 PD
-24 W
-2351 3551 PD
-24 W
-2341 3532 PD
-24 W
-2329 3514 PD
-24 W
-2313 3496 PD
-24 W
-2290 3477 PD
-24 W
-2268 3459 PD
-24 W
-2246 3440 PD
-24 W
-2226 3423 PD
-24 W
-2213 3404 PD
-24 W
-2194 3385 PD
-24 W
-2166 3374 PD
-24 W
-2138 3365 PD
-24 W
-2109 3352 PD
-24 W
-2091 3334 PD
-24 W
-2073 3314 PD
-24 W
-2059 3295 PD
-24 W
-2042 3275 PD
-24 W
-2026 3256 PD
-24 W
-2009 3238 PD
-24 W
-1991 3219 PD
-24 W
-1976 3199 PD
-24 W
-1963 3180 PD
-24 W
-1954 3162 PD
-24 W
-1945 3144 PD
-24 W
-1936 3126 PD
-24 W
-1929 3108 PD
-24 W
-1925 3090 PD
-24 W
-1922 3071 PD
-24 W
-1922 3053 PD
-24 W
-1923 3034 PD
-24 W
-1922 3015 PD
-24 W
-1913 2996 PD
-24 W
-1895 2978 PD
-24 W
-1879 2959 PD
-24 W
-1865 2941 PD
-24 W
-1849 2924 PD
-24 W
-1829 2903 PD
-24 W
-1817 2884 PD
-24 W
-1805 2864 PD
-24 W
-1786 2845 PD
-24 W
-1764 2826 PD
-24 W
-1739 2808 PD
-24 W
-1713 2792 PD
-24 W
-1683 2777 PD
-24 W
-1655 2762 PD
-24 W
-1638 2744 PD
-24 W
-1624 2724 PD
-24 W
-1609 2705 PD
-24 W
-1593 2687 PD
-24 W
-1586 2669 PD
-24 W
-1587 2652 PD
-24 W
-1592 2633 PD
-24 W
-1589 2615 PD
-24 W
-1588 2608 PD
-24 W
-1578 2597 PD
-24 W
-1555 2579 PD
-24 W
-1541 2561 PD
-24 W
-1540 2543 PD
-24 W
-1541 2525 PD
-24 W
-1540 2505 PD
-24 W
-1539 2487 PD
-24 W
-1534 2469 PD
-24 W
-1517 2451 PD
-24 W
-1500 2433 PD
-24 W
-1489 2415 PD
-24 W
-1488 2397 PD
-24 W
-1489 2390 PD
-24 W
-1491 2379 PD
-24 W
-1474 2361 PD
-24 W
-1457 2343 PD
-24 W
-1430 2330 PD
-24 W
-1409 2312 PD
-24 W
-1410 2313 PD
-24 W
-1395 2293 PD
-24 W
-1380 2275 PD
-24 W
-1365 2256 PD
-24 W
-1355 2237 PD
-24 W
-1342 2220 PD
-24 W
-1329 2202 PD
-24 W
-1317 2184 PD
-24 W
-1304 2165 PD
-24 W
-1293 2146 PD
-24 W
-1283 2128 PD
-24 W
-1269 2110 PD
-24 W
-1258 2091 PD
-24 W
-1248 2072 PD
-24 W
-1243 2055 PD
-24 W
-1230 2035 PD
-24 W
-1216 2017 PD
-24 W
-1201 1999 PD
-24 W
-1186 1981 PD
-24 W
-1167 1960 PD
-24 W
-1153 1942 PD
-24 W
-1139 1925 PD
-24 W
-1125 1905 PD
-24 W
-1111 1887 PD
-24 W
-1095 1869 PD
-24 W
-1080 1850 PD
-24 W
-1064 1831 PD
-24 W
-1052 1813 PD
-24 W
-1041 1794 PD
-24 W
-1032 1775 PD
-24 W
-1025 1757 PD
-24 W
-1022 1737 PD
-24 W
-1018 1718 PD
-24 W
-1017 1699 PD
-24 W
-1015 1680 PD
-24 W
-1015 1661 PD
-24 W
-1017 1642 PD
-24 W
-1022 1624 PD
-24 W
-1027 1604 PD
-24 W
-1027 1586 PD
-24 W
-1029 1568 PD
-24 W
-1031 1549 PD
-24 W
-1032 1530 PD
-24 W
-1040 1513 PD
-24 W
-1053 1494 PD
-24 W
-1067 1476 PD
-24 W
-1087 1457 PD
-24 W
-1112 1438 PD
-24 W
-1140 1423 PD
-24 W
-1167 1409 PD
-24 W
-1196 1397 PD
-24 W
-1223 1385 PD
-24 W
-1251 1374 PD
-24 W
-1277 1356 PD
-24 W
-1284 1353 PD
-24 W
-1297 1336 PD
-24 W
-1307 1318 PD
-24 W
-1310 1299 PD
-24 W
-1306 1281 PD
-24 W
-1306 1263 PD
-24 W
-1306 1245 PD
-24 W
-1305 1227 PD
-24 W
-1306 1209 PD
-24 W
-1305 1191 PD
-24 W
-1306 1173 PD
-24 W
-1309 1155 PD
-24 W
-1310 1137 PD
-24 W
-1311 1134 PD
-24 W
-1305 1119 PD
-24 W
-1301 1102 PD
-24 W
-1305 1084 PD
-24 W
-1314 1066 PD
-24 W
-1323 1047 PD
-24 W
-1335 1029 PD
-24 W
-1346 1010 PD
-24 W
-1357 992 PD
-24 W
-1372 973 PD
-24 W
-1387 954 PD
-24 W
-1401 935 PD
-24 W
-1412 916 PD
-24 W
-1419 897 PD
-24 W
-1427 878 PD
-24 W
-1437 860 PD
-24 W
-1444 841 PD
-24 W
-1457 821 PD
-24 W
-1470 803 PD
-24 W
-1486 782 PD
-24 W
-1505 763 PD
-24 W
-1525 746 PD
-24 W
-1548 728 PD
-24 W
-1571 709 PD
-24 W
-1598 695 PD
-24 W
-1625 683 PD
-24 W
-1653 680 PD
-24 W
-1682 685 PD
-24 W
-1710 690 PD
-24 W
-1739 691 PD
-24 W
-1769 690 PD
-24 W
-1798 685 PD
-24 W
-1827 675 PD
-24 W
-1854 659 PD
-24 W
-1881 643 PD
-24 W
-1910 632 PD
-24 W
-1938 626 PD
-24 W
-1967 621 PD
-24 W
-1995 614 PD
-24 W
-2024 610 PD
-24 W
-2054 608 PD
-24 W
-2082 605 PD
-24 W
-2110 603 PD
-24 W
-2138 599 PD
-24 W
-2168 592 PD
-24 W
-2195 588 PD
-24 W
-2223 587 PD
-24 W
-2250 586 PD
-24 W
-2278 584 PD
-24 W
-2306 578 PD
-24 W
-2335 572 PD
-24 W
-2363 563 PD
-24 W
-2390 557 PD
-24 W
-2419 548 PD
-24 W
-2447 540 PD
-24 W
-2475 530 PD
-24 W
-2503 525 PD
-24 W
-2529 522 PD
-24 W
-2556 520 PD
-24 W
-2583 517 PD
-24 W
-2610 514 PD
-24 W
-2637 510 PD
-24 W
-2668 506 PD
-24 W
-2697 505 PD
-24 W
-2728 506 PD
-24 W
-2755 504 PD
-24 W
-2784 502 PD
-24 W
-2814 502 PD
-24 W
-2842 502 PD
-24 W
-2870 502 PD
-24 W
-2896 502 PD
-24 W
-2925 504 PD
-24 W
-2954 506 PD
-24 W
-2981 508 PD
-24 W
-3008 514 PD
-24 W
-3036 518 PD
-24 W
-3066 522 PD
-24 W
-3094 527 PD
-24 W
-3123 532 PD
-24 W
-3151 537 PD
-24 W
-3183 542 PD
-24 W
-3213 548 PD
-24 W
-3240 553 PD
-24 W
-3267 558 PD
-24 W
-3296 562 PD
-24 W
-3325 568 PD
-24 W
-3352 576 PD
-24 W
-3381 586 PD
-24 W
-3408 596 PD
-24 W
-3437 613 PD
-24 W
-3464 627 PD
-24 W
-3493 643 PD
-24 W
-3521 659 PD
-24 W
-3549 672 PD
-24 W
-3580 678 PD
-24 W
-3607 681 PD
-24 W
-3639 689 PD
-24 W
-3666 697 PD
-24 W
-3693 709 PD
-24 W
-3719 727 PD
-24 W
-3742 745 PD
-24 W
-3770 762 PD
-24 W
-3799 775 PD
-24 W
-3827 788 PD
-24 W
-3854 799 PD
-24 W
-3881 812 PD
-24 W
-3910 828 PD
-24 W
-3939 844 PD
-24 W
-3966 856 PD
-24 W
-3993 866 PD
-24 W
-4022 875 PD
-24 W
-4048 884 PD
-24 W
-4077 898 PD
-24 W
-4107 916 PD
-24 W
-4135 933 PD
-24 W
-4160 951 PD
-24 W
-4184 969 PD
-24 W
-4212 989 PD
-24 W
-4240 1006 PD
-24 W
-4257 1025 PD
-24 W
-4271 1044 PD
-24 W
-4290 1062 PD
-24 W
-4304 1081 PD
-24 W
-4319 1100 PD
-24 W
-4334 1119 PD
-24 W
-4342 1137 PD
-24 W
-4346 1156 PD
-24 W
-4346 1174 PD
-24 W
-4337 1192 PD
-24 W
-4330 1200 PD
-24 W
-4327 1210 PD
-24 W
-4329 1228 PD
-24 W
-4336 1246 PD
-24 W
-4350 1265 PD
-24 W
-4379 1280 PD
-24 W
-4406 1289 PD
-24 W
-4430 1307 PD
-24 W
-4448 1327 PD
-24 W
-4466 1346 PD
-24 W
-4480 1364 PD
-24 W
-4487 1383 PD
-24 W
-4496 1402 PD
-24 W
-4502 1421 PD
-24 W
-4512 1440 PD
-24 W
-4516 1459 PD
-24 W
-4524 1478 PD
-24 W
-4536 1497 PD
-24 W
-4550 1515 PD
-24 W
-4578 1534 PD
-24 W
-4607 1544 PD
-24 W
-4634 1548 PD
-24 W
-4663 1553 PD
-24 W
-4692 1556 PD
-24 W
-4721 1561 PD
-24 W
-4749 1567 PD
-24 W
-4777 1575 PD
-24 W
-4783 1570 PD
-24 W
-4804 1584 PD
-24 W
-4815 1602 PD
-24 W
-4828 1620 PD
-24 W
-4832 1639 PD
-24 W
-4837 1657 PD
-24 W
-4838 1676 PD
-24 W
-4833 1695 PD
-24 W
-4829 1712 PD
-24 W
-4821 1732 PD
-24 W
-4815 1750 PD
-24 W
-4813 1768 PD
-24 W
-4813 1786 PD
-24 W
-4810 1806 PD
-24 W
-4804 1824 PD
-24 W
-4801 1843 PD
-24 W
-4800 1862 PD
-24 W
-4806 1880 PD
-24 W
-4833 1894 PD
-24 W
-4860 1899 PD
-24 W
-4888 1896 PD
-24 W
-4914 1887 PD
-24 W
-4941 1875 PD
-24 W
-4969 1863 PD
-24 W
-4996 1855 PD
-24 W
-5025 1851 PD
-24 W
-5055 1852 PD
-24 W
-5083 1852 PD
-24 W
-5111 1862 PD
-24 W
-5131 1881 PD
-24 W
-5155 1899 PD
-24 W
-5182 1910 PD
-24 W
-5210 1916 PD
-24 W
-5238 1919 PD
-24 W
-5265 1923 PD
-24 W
-5292 1933 PD
-24 W
-5307 1925 PD
-24 W
-5322 1938 PD
-24 W
-5350 1958 PD
-24 W
-5377 1974 PD
-24 W
-5400 1992 PD
-24 W
-5421 2010 PD
-24 W
-5433 2029 PD
-24 W
-5446 2050 PD
-24 W
-5458 2068 PD
-24 W
-5471 2088 PD
-24 W
-5478 2105 PD
-24 W
-5486 2125 PD
-24 W
-5496 2143 PD
-24 W
-5505 2162 PD
-24 W
-5520 2182 PD
-24 W
-5536 2201 PD
-24 W
-5548 2220 PD
-24 W
-5554 2238 PD
-24 W
-5561 2256 PD
-24 W
-5568 2274 PD
-24 W
-5576 2291 PD
-24 W
-5576 2292 PD
-24 W
-5576 2310 PD
-24 W
-5577 2329 PD
-24 W
-5578 2348 PD
-24 W
-5573 2367 PD
-24 W
-5569 2387 PD
-24 W
-5568 2405 PD
-24 W
-5567 2423 PD
-24 W
-5567 2441 PD
-24 W
-5569 2460 PD
-24 W
-5564 2478 PD
-24 W
-5561 2497 PD
-24 W
-5559 2517 PD
-24 W
-5553 2534 PD
-24 W
-5542 2553 PD
-24 W
-5535 2571 PD
-24 W
-5529 2590 PD
-24 W
-5523 2609 PD
-24 W
-5524 2628 PD
-24 W
-5528 2647 PD
-24 W
-5534 2665 PD
-24 W
-5540 2684 PD
-24 W
-5540 2702 PD
-24 W
-5541 2720 PD
-24 W
-5545 2739 PD
-24 W
-5558 2758 PD
-24 W
-5581 2776 PD
-24 W
-5605 2794 PD
-24 W
-5627 2813 PD
-24 W
-5645 2833 PD
-24 W
-5657 2852 PD
-24 W
-5671 2869 PD
-24 W
-5699 2882 PD
-24 W
-5726 2886 PD
-24 W
-5756 2888 PD
-24 W
-5785 2890 PD
-24 W
-5812 2892 PD
-24 W
-5839 2893 PD
-24 W
-5868 2894 PD
-24 W
-5891 2914 PD
-24 W
-5892 2933 PD
-24 W
-5920 2924 PD
-24 W
-5936 2906 PD
-24 W
-5945 2886 PD
-24 W
-5959 2869 PD
-24 W
-5975 2851 PD
-24 W
-5997 2833 PD
-24 W
-6016 2815 PD
-24 W
-6020 2813 PD
-24 W
-6045 2805 PD
-24 W
-6073 2804 PD
-24 W
-6101 2809 PD
-24 W
-6128 2815 PD
-24 W
-6157 2824 PD
-24 W
-6185 2838 PD
-24 W
-6207 2856 PD
-24 W
-6236 2871 PD
-24 W
-1967 3289 PD
-24 W
-1968 3289 PD
-24 W
-1978 3307 PD
-24 W
-1988 3326 PD
-24 W
-1997 3345 PD
-24 W
-2007 3363 PD
-24 W
-2017 3381 PD
-24 W
-2027 3400 PD
-24 W
-2037 3419 PD
-24 W
-2044 3437 PD
-24 W
-2051 3455 PD
-24 W
-2060 3473 PD
-24 W
-2069 3491 PD
-24 W
-2074 3510 PD
-24 W
-2080 3530 PD
-24 W
-2088 3548 PD
-24 W
-2096 3568 PD
-24 W
-2104 3587 PD
-24 W
-2109 3605 PD
-24 W
-2113 3625 PD
-24 W
-2124 3645 PD
-24 W
-2140 3663 PD
-24 W
-2166 3675 PD
-24 W
-2193 3679 PD
-24 W
-2220 3675 PD
-24 W
-2249 3666 PD
-24 W
-2278 3660 PD
-24 W
-2307 3657 PD
-24 W
-2325 3639 PD
-24 W
-2305 3620 PD
-24 W
-2290 3602 PD
-24 W
-2279 3583 PD
-24 W
-2276 3564 PD
-24 W
-2272 3546 PD
-24 W
-2257 3527 PD
-24 W
-2228 3508 PD
-24 W
-2201 3491 PD
-24 W
-2174 3472 PD
-24 W
-2150 3454 PD
-24 W
-2124 3437 PD
-24 W
-2096 3419 PD
-24 W
-2073 3400 PD
-24 W
-2051 3381 PD
-24 W
-2032 3364 PD
-24 W
-2013 3345 PD
-24 W
-1998 3327 PD
-24 W
-1983 3308 PD
-24 W
-1967 3289 PD
-24 W
-1103 2993 PD
-24 W
-1131 3006 PD
-24 W
-1158 3020 PD
-24 W
-1186 3035 PD
-24 W
-1216 3043 PD
-24 W
-1243 3046 PD
-24 W
-1272 3044 PD
-24 W
-1299 3041 PD
-24 W
-1326 3043 PD
-24 W
-1355 3056 PD
-24 W
-1383 3066 PD
-24 W
-1412 3068 PD
-24 W
-1441 3073 PD
-24 W
-1470 3084 PD
-24 W
-1499 3092 PD
-24 W
-1527 3096 PD
-24 W
-1556 3097 PD
-24 W
-1584 3097 PD
-24 W
-1614 3105 PD
-24 W
-1642 3123 PD
-24 W
-1669 3133 PD
-24 W
-1696 3137 PD
-24 W
-1725 3142 PD
-24 W
-1753 3147 PD
-24 W
-1780 3159 PD
-24 W
-1807 3171 PD
-24 W
-1836 3186 PD
-24 W
-1863 3196 PD
-24 W
-1890 3200 PD
-24 W
-1886 3181 PD
-24 W
-1877 3164 PD
-24 W
-1866 3145 PD
-24 W
-1859 3127 PD
-24 W
-1854 3109 PD
-24 W
-1854 3091 PD
-24 W
-1856 3073 PD
-24 W
-1859 3055 PD
-24 W
-1859 3037 PD
-24 W
-1842 3018 PD
-24 W
-1816 3000 PD
-24 W
-1791 2983 PD
-24 W
-1764 2964 PD
-24 W
-1746 2946 PD
-24 W
-1735 2928 PD
-24 W
-1726 2910 PD
-24 W
-1720 2892 PD
-24 W
-1710 2874 PD
-24 W
-1694 2854 PD
-24 W
-1675 2836 PD
-24 W
-1649 2817 PD
-24 W
-1622 2798 PD
-24 W
-1597 2780 PD
-24 W
-1574 2763 PD
-24 W
-1556 2745 PD
-24 W
-1535 2725 PD
-24 W
-1520 2706 PD
-24 W
-1511 2687 PD
-24 W
-1507 2669 PD
-24 W
-1501 2650 PD
-24 W
-1493 2633 PD
-24 W
-1481 2614 PD
-24 W
-1460 2596 PD
-24 W
-1443 2577 PD
-24 W
-1428 2558 PD
-24 W
-1425 2543 PD
-24 W
-1413 2539 PD
-24 W
-1391 2521 PD
-24 W
-1377 2503 PD
-24 W
-1361 2485 PD
-24 W
-1353 2466 PD
-24 W
-1347 2447 PD
-24 W
-1344 2430 PD
-24 W
-1344 2421 PD
-24 W
-1345 2412 PD
-24 W
-1361 2395 PD
-24 W
-1376 2375 PD
-24 W
-1375 2358 PD
-24 W
-1348 2343 PD
-24 W
-1319 2336 PD
-24 W
-1291 2329 PD
-24 W
-1280 2319 PD
-24 W
-1268 2310 PD
-24 W
-1255 2291 PD
-24 W
-1237 2272 PD
-24 W
-1220 2253 PD
-24 W
-1200 2235 PD
-24 W
-1185 2217 PD
-24 W
-1173 2199 PD
-24 W
-1159 2180 PD
-24 W
-1147 2161 PD
-24 W
-1138 2143 PD
-24 W
-1128 2123 PD
-24 W
-1116 2105 PD
-24 W
-1100 2086 PD
-24 W
-1082 2069 PD
-24 W
-1064 2050 PD
-24 W
-1051 2033 PD
-24 W
-1035 2012 PD
-24 W
-1023 1994 PD
-24 W
-1010 1974 PD
-24 W
-999 1956 PD
-24 W
-986 1936 PD
-24 W
-977 1917 PD
-24 W
-966 1899 PD
-24 W
-956 1881 PD
-24 W
-946 1862 PD
-24 W
-934 1844 PD
-24 W
-921 1827 PD
-24 W
-913 1809 PD
-24 W
-910 1789 PD
-24 W
-909 1771 PD
-24 W
-907 1753 PD
-24 W
-908 1735 PD
-24 W
-906 1717 PD
-24 W
-902 1699 PD
-24 W
-899 1681 PD
-24 W
-917 1662 PD
-24 W
-932 1644 PD
-24 W
-937 1626 PD
-24 W
-942 1608 PD
-24 W
-949 1588 PD
-24 W
-956 1570 PD
-24 W
-960 1551 PD
-24 W
-964 1533 PD
-24 W
-966 1515 PD
-24 W
-970 1497 PD
-24 W
-963 1479 PD
-24 W
-963 1461 PD
-24 W
-966 1443 PD
-24 W
-982 1425 PD
-24 W
-1009 1407 PD
-24 W
-1037 1390 PD
-24 W
-1064 1375 PD
-24 W
-1091 1361 PD
-24 W
-1120 1348 PD
-24 W
-1147 1334 PD
-24 W
-1175 1317 PD
-24 W
-1193 1299 PD
-24 W
-1207 1281 PD
-24 W
-1218 1263 PD
-24 W
-1222 1244 PD
-24 W
-1225 1226 PD
-24 W
-1222 1207 PD
-24 W
-1219 1189 PD
-24 W
-1216 1171 PD
-24 W
-1211 1153 PD
-24 W
-1207 1135 PD
-24 W
-1206 1117 PD
-24 W
-1206 1099 PD
-24 W
-1205 1080 PD
-24 W
-1204 1062 PD
-24 W
-1205 1043 PD
-24 W
-1209 1026 PD
-24 W
-1213 1008 PD
-24 W
-1219 990 PD
-24 W
-1227 971 PD
-24 W
-1240 953 PD
-24 W
-1251 935 PD
-24 W
-1262 916 PD
-24 W
-1274 897 PD
-24 W
-1288 879 PD
-24 W
-1305 860 PD
-24 W
-1322 843 PD
-24 W
-1338 823 PD
-24 W
-1355 804 PD
-24 W
-1368 785 PD
-24 W
-1380 768 PD
-24 W
-1396 749 PD
-24 W
-1413 730 PD
-24 W
-1441 712 PD
-24 W
-1468 694 PD
-24 W
-1486 676 PD
-24 W
-1506 658 PD
-24 W
-1533 643 PD
-24 W
-1560 638 PD
-24 W
-1587 634 PD
-24 W
-1614 631 PD
-24 W
-1640 627 PD
-24 W
-1670 640 PD
-24 W
-1699 651 PD
-24 W
-1727 652 PD
-24 W
-1755 652 PD
-24 W
-1783 642 PD
-24 W
-1811 630 PD
-24 W
-1839 614 PD
-24 W
-1863 595 PD
-24 W
-1887 577 PD
-24 W
-1908 560 PD
-24 W
-1929 542 PD
-24 W
-1958 527 PD
-24 W
-1988 516 PD
-24 W
-2019 515 PD
-24 W
-2050 510 PD
-24 W
-2080 507 PD
-24 W
-2109 504 PD
-24 W
-2139 501 PD
-24 W
-2167 496 PD
-24 W
-2195 494 PD
-24 W
-2222 492 PD
-24 W
-2250 489 PD
-24 W
-2280 485 PD
-24 W
-2309 479 PD
-24 W
-2337 471 PD
-24 W
-2364 463 PD
-24 W
-2393 449 PD
-24 W
-2422 436 PD
-24 W
-2451 423 PD
-24 W
-2477 412 PD
-24 W
-2504 398 PD
-24 W
-2763 395 PD
-24 W
-2763 394 PD
-24 W
-2792 397 PD
-24 W
-2820 402 PD
-24 W
-2847 405 PD
-24 W
-2874 410 PD
-24 W
-2902 415 PD
-24 W
-2929 417 PD
-24 W
-2960 420 PD
-24 W
-2993 425 PD
-24 W
-3021 428 PD
-24 W
-3052 430 PD
-24 W
-3078 430 PD
-24 W
-3105 431 PD
-24 W
-3133 433 PD
-24 W
-3163 435 PD
-24 W
-3191 436 PD
-24 W
-3220 437 PD
-24 W
-3249 439 PD
-24 W
-3280 446 PD
-24 W
-3308 454 PD
-24 W
-3336 462 PD
-24 W
-3364 470 PD
-24 W
-3395 480 PD
-24 W
-3426 489 PD
-24 W
-3455 500 PD
-24 W
-3483 511 PD
-24 W
-3513 526 PD
-24 W
-3543 538 PD
-24 W
-3572 548 PD
-24 W
-3601 559 PD
-24 W
-3631 570 PD
-24 W
-3660 579 PD
-24 W
-3688 588 PD
-24 W
-3716 598 PD
-24 W
-3747 610 PD
-24 W
-3777 622 PD
-24 W
-3808 634 PD
-24 W
-3838 647 PD
-24 W
-3870 659 PD
-24 W
-3897 670 PD
-24 W
-3924 681 PD
-24 W
-3951 692 PD
-24 W
-3980 702 PD
-24 W
-4007 714 PD
-24 W
-4035 728 PD
-24 W
-4066 742 PD
-24 W
-4096 756 PD
-24 W
-4123 773 PD
-24 W
-4149 791 PD
-24 W
-4174 810 PD
-24 W
-4193 828 PD
-24 W
-4214 846 PD
-24 W
-4236 864 PD
-24 W
-4261 883 PD
-24 W
-4282 901 PD
-24 W
-4303 921 PD
-24 W
-4324 940 PD
-24 W
-4342 959 PD
-24 W
-4356 977 PD
-24 W
-4372 996 PD
-24 W
-4387 1015 PD
-24 W
-4398 1033 PD
-24 W
-4408 1051 PD
-24 W
-4419 1069 PD
-24 W
-4430 1088 PD
-24 W
-4440 1107 PD
-24 W
-4448 1127 PD
-24 W
-4454 1145 PD
-24 W
-4457 1163 PD
-24 W
-4457 1183 PD
-24 W
-4464 1202 PD
-24 W
-4467 1220 PD
-24 W
-4466 1238 PD
-24 W
-4427 1276 PD
-24 W
-4459 1263 PD
-24 W
-4477 1281 PD
-24 W
-4496 1299 PD
-24 W
-4510 1319 PD
-24 W
-4526 1338 PD
-24 W
-4540 1356 PD
-24 W
-4553 1374 PD
-24 W
-4564 1392 PD
-24 W
-4567 1411 PD
-24 W
-4571 1429 PD
-24 W
-4599 1438 PD
-24 W
-4598 1455 PD
-24 W
-4595 1473 PD
-24 W
-4623 1491 PD
-24 W
-4652 1493 PD
-24 W
-4681 1496 PD
-24 W
-4709 1497 PD
-24 W
-4737 1500 PD
-24 W
-4765 1504 PD
-24 W
-4792 1505 PD
-24 W
-4819 1508 PD
-24 W
-4846 1512 PD
-24 W
-4847 1520 PD
-24 W
-4873 1522 PD
-24 W
-4896 1541 PD
-24 W
-4912 1560 PD
-24 W
-4929 1579 PD
-24 W
-4927 1596 PD
-24 W
-4926 1597 PD
-24 W
-4930 1615 PD
-24 W
-4936 1633 PD
-24 W
-4929 1651 PD
-24 W
-4918 1669 PD
-24 W
-4905 1688 PD
-24 W
-4907 1706 PD
-24 W
-4901 1725 PD
-24 W
-4886 1744 PD
-24 W
-4873 1762 PD
-24 W
-4860 1781 PD
-24 W
-4851 1799 PD
-24 W
-4866 1817 PD
-24 W
-4893 1816 PD
-24 W
-4921 1812 PD
-24 W
-4952 1806 PD
-24 W
-4979 1800 PD
-24 W
-5007 1794 PD
-24 W
-5034 1791 PD
-24 W
-5063 1787 PD
-24 W
-5091 1786 PD
-24 W
-5122 1786 PD
-24 W
-5151 1784 PD
-24 W
-5181 1784 PD
-24 W
-5211 1786 PD
-24 W
-5239 1796 PD
-24 W
-5261 1815 PD
-24 W
-5284 1833 PD
-24 W
-5311 1845 PD
-24 W
-5338 1851 PD
-24 W
-5368 1857 PD
-24 W
-5395 1866 PD
-24 W
-5402 1868 PD
-24 W
-5414 1885 PD
-24 W
-5430 1905 PD
-24 W
-5446 1924 PD
-24 W
-5465 1942 PD
-24 W
-5483 1962 PD
-24 W
-5504 1980 PD
-24 W
-5526 1998 PD
-24 W
-5543 2018 PD
-24 W
-5554 2038 PD
-24 W
-5565 2058 PD
-24 W
-5576 2077 PD
-24 W
-5589 2095 PD
-24 W
-5602 2113 PD
-24 W
-5610 2131 PD
-24 W
-5620 2149 PD
-24 W
-5626 2168 PD
-24 W
-5630 2186 PD
-24 W
-5636 2204 PD
-24 W
-5640 2223 PD
-24 W
-5644 2241 PD
-24 W
-5651 2257 PD
-24 W
-5651 2260 PD
-24 W
-5652 2278 PD
-24 W
-5653 2297 PD
-24 W
-5651 2315 PD
-24 W
-5647 2334 PD
-24 W
-5640 2352 PD
-24 W
-5625 2370 PD
-24 W
-5615 2389 PD
-24 W
-5625 2408 PD
-24 W
-5626 2426 PD
-24 W
-5615 2445 PD
-24 W
-5609 2462 PD
-24 W
-5620 2481 PD
-24 W
-5627 2500 PD
-24 W
-5622 2518 PD
-24 W
-5613 2536 PD
-24 W
-5605 2556 PD
-24 W
-5600 2574 PD
-24 W
-5591 2593 PD
-24 W
-5583 2612 PD
-24 W
-5583 2630 PD
-24 W
-5597 2648 PD
-24 W
-5611 2667 PD
-24 W
-5618 2686 PD
-24 W
-5616 2704 PD
-24 W
-5622 2722 PD
-24 W
-5635 2741 PD
-24 W
-5654 2760 PD
-24 W
-5668 2777 PD
-24 W
-5684 2796 PD
-24 W
-5712 2814 PD
-24 W
-5741 2817 PD
-24 W
-5769 2813 PD
-24 W
-5796 2806 PD
-24 W
-5823 2798 PD
-24 W
-5851 2791 PD
-24 W
-5881 2786 PD
-24 W
-5909 2778 PD
-24 W
-5936 2770 PD
-24 W
-5963 2759 PD
-24 W
-5985 2742 PD
-24 W
-5990 2739 PD
-24 W
-6016 2732 PD
-24 W
-6045 2721 PD
-24 W
-6072 2719 PD
-24 W
-6101 2720 PD
-24 W
-6129 2726 PD
-24 W
-6157 2730 PD
-24 W
-6184 2734 PD
-24 W
-6211 2742 PD
-24 W
-6238 2751 PD
-24 W
-1014 2912 PD
-24 W
-1014 2913 PD
-24 W
-1042 2922 PD
-24 W
-1071 2931 PD
-24 W
-1098 2935 PD
-24 W
-1125 2942 PD
-24 W
-1154 2952 PD
-24 W
-1166 2971 PD
-24 W
-1192 2989 PD
-24 W
-1219 2995 PD
-24 W
-1248 2999 PD
-24 W
-1277 3003 PD
-24 W
-1307 3006 PD
-24 W
-1337 3005 PD
-24 W
-1367 3006 PD
-24 W
-1394 3007 PD
-24 W
-1424 3011 PD
-24 W
-1454 3019 PD
-24 W
-1484 3028 PD
-24 W
-1511 3036 PD
-24 W
-1540 3047 PD
-24 W
-1568 3055 PD
-24 W
-1595 3062 PD
-24 W
-1622 3065 PD
-24 W
-1652 3071 PD
-24 W
-1678 3075 PD
-24 W
-1709 3082 PD
-24 W
-1736 3088 PD
-24 W
-1764 3095 PD
-24 W
-1772 3076 PD
-24 W
-1756 3056 PD
-24 W
-1735 3037 PD
-24 W
-1712 3017 PD
-24 W
-1689 2998 PD
-24 W
-1668 2980 PD
-24 W
-1645 2960 PD
-24 W
-1631 2941 PD
-24 W
-1622 2921 PD
-24 W
-1611 2904 PD
-24 W
-1602 2886 PD
-24 W
-1589 2867 PD
-24 W
-1570 2848 PD
-24 W
-1549 2829 PD
-24 W
-1523 2810 PD
-24 W
-1502 2792 PD
-24 W
-1482 2772 PD
-24 W
-1464 2753 PD
-24 W
-1454 2735 PD
-24 W
-1448 2716 PD
-24 W
-1442 2698 PD
-24 W
-1437 2678 PD
-24 W
-1427 2658 PD
-24 W
-1419 2640 PD
-24 W
-1406 2620 PD
-24 W
-1390 2602 PD
-24 W
-1365 2584 PD
-24 W
-1334 2569 PD
-24 W
-1304 2558 PD
-24 W
-1276 2543 PD
-24 W
-1259 2525 PD
-24 W
-1255 2505 PD
-24 W
-1255 2487 PD
-24 W
-1258 2467 PD
-24 W
-1262 2449 PD
-24 W
-1266 2430 PD
-24 W
-1272 2411 PD
-24 W
-1275 2392 PD
-24 W
-1279 2374 PD
-24 W
-1252 2371 PD
-24 W
-1222 2365 PD
-24 W
-1194 2357 PD
-24 W
-1167 2348 PD
-24 W
-1151 2340 PD
-24 W
-1139 2329 PD
-24 W
-1111 2310 PD
-24 W
-1090 2293 PD
-24 W
-1067 2274 PD
-24 W
-1049 2255 PD
-24 W
-1030 2236 PD
-24 W
-1012 2219 PD
-24 W
-994 2199 PD
-24 W
-981 2181 PD
-24 W
-966 2162 PD
-24 W
-950 2144 PD
-24 W
-938 2127 PD
-24 W
-928 2108 PD
-24 W
-920 2090 PD
-24 W
-913 2073 PD
-24 W
-906 1382 PD
-24 W
-906 1381 PD
-24 W
-924 1362 PD
-24 W
-939 1344 PD
-24 W
-961 1325 PD
-24 W
-978 1306 PD
-24 W
-991 1288 PD
-24 W
-1001 1271 PD
-24 W
-1009 1253 PD
-24 W
-1017 1235 PD
-24 W
-1025 1217 PD
-24 W
-1035 1199 PD
-24 W
-1046 1181 PD
-24 W
-1059 1162 PD
-24 W
-1074 1144 PD
-24 W
-1096 1126 PD
-24 W
-1109 1109 PD
-24 W
-1114 1091 PD
-24 W
-1114 1073 PD
-24 W
-1112 1054 PD
-24 W
-1110 1034 PD
-24 W
-1110 1014 PD
-24 W
-1116 994 PD
-24 W
-1125 975 PD
-24 W
-1132 956 PD
-24 W
-1144 936 PD
-24 W
-1159 917 PD
-24 W
-1172 899 PD
-24 W
-1188 882 PD
-24 W
-1203 864 PD
-24 W
-1215 845 PD
-24 W
-1227 827 PD
-24 W
-1243 808 PD
-24 W
-1260 789 PD
-24 W
-1276 772 PD
-24 W
-1291 753 PD
-24 W
-1303 735 PD
-24 W
-1317 718 PD
-24 W
-1328 700 PD
-24 W
-1338 681 PD
-24 W
-1348 662 PD
-24 W
-1356 644 PD
-24 W
-1364 626 PD
-24 W
-1366 608 PD
-24 W
-1371 588 PD
-24 W
-1374 570 PD
-24 W
-1384 552 PD
-24 W
-1411 539 PD
-24 W
-1439 532 PD
-24 W
-1467 530 PD
-24 W
-1496 530 PD
-24 W
-1524 532 PD
-24 W
-1552 535 PD
-24 W
-1582 544 PD
-24 W
-1609 554 PD
-24 W
-1633 572 PD
-24 W
-1656 590 PD
-24 W
-1676 608 PD
-24 W
-1702 625 PD
-24 W
-1729 631 PD
-24 W
-1739 613 PD
-24 W
-1766 610 PD
-24 W
-1781 592 PD
-24 W
-1807 574 PD
-24 W
-1835 563 PD
-24 W
-1853 544 PD
-24 W
-1856 527 PD
-24 W
-1861 509 PD
-24 W
-1858 490 PD
-24 W
-1870 471 PD
-24 W
-1891 454 PD
-24 W
-1905 436 PD
-24 W
-1913 417 PD
-24 W
-1926 398 PD
-24 W
-3442 396 PD
-24 W
-3442 394 PD
-24 W
-3471 394 PD
-24 W
-3500 405 PD
-24 W
-3529 420 PD
-24 W
-3551 438 PD
-24 W
-3577 452 PD
-24 W
-3605 469 PD
-24 W
-3633 481 PD
-24 W
-3662 489 PD
-24 W
-3690 494 PD
-24 W
-3719 501 PD
-24 W
-3749 511 PD
-24 W
-3776 522 PD
-24 W
-3806 532 PD
-24 W
-3836 542 PD
-24 W
-3864 549 PD
-24 W
-3891 556 PD
-24 W
-3919 564 PD
-24 W
-3947 577 PD
-24 W
-3976 592 PD
-24 W
-4006 607 PD
-24 W
-4033 620 PD
-24 W
-4063 633 PD
-24 W
-4091 646 PD
-24 W
-4118 660 PD
-24 W
-4148 673 PD
-24 W
-4176 688 PD
-24 W
-4200 706 PD
-24 W
-4228 723 PD
-24 W
-4254 737 PD
-24 W
-4282 752 PD
-24 W
-4308 770 PD
-24 W
-4328 787 PD
-24 W
-4352 805 PD
-24 W
-4375 824 PD
-24 W
-4395 843 PD
-24 W
-4414 861 PD
-24 W
-4433 880 PD
-24 W
-4445 898 PD
-24 W
-4455 918 PD
-24 W
-4467 937 PD
-24 W
-4485 957 PD
-24 W
-4498 976 PD
-24 W
-4512 995 PD
-24 W
-4526 1013 PD
-24 W
-4540 1030 PD
-24 W
-4551 1049 PD
-24 W
-4561 1068 PD
-24 W
-4567 1086 PD
-24 W
-4575 1104 PD
-24 W
-4585 1123 PD
-24 W
-4587 1142 PD
-24 W
-4583 1159 PD
-24 W
-4574 1177 PD
-24 W
-4565 1195 PD
-24 W
-4551 1214 PD
-24 W
-4574 1191 PD
-24 W
-4573 1190 PD
-24 W
-4551 1208 PD
-24 W
-4544 1226 PD
-24 W
-4544 1245 PD
-24 W
-4550 1262 PD
-24 W
-4557 1280 PD
-24 W
-4569 1299 PD
-24 W
-4580 1316 PD
-24 W
-4592 1335 PD
-24 W
-4604 1353 PD
-24 W
-4616 1371 PD
-24 W
-4624 1390 PD
-24 W
-4632 1409 PD
-24 W
-4639 1426 PD
-24 W
-4657 1444 PD
-24 W
-4684 1443 PD
-24 W
-4713 1443 PD
-24 W
-4741 1456 PD
-24 W
-4769 1470 PD
-24 W
-4796 1477 PD
-24 W
-4823 1475 PD
-24 W
-4850 1463 PD
-24 W
-4877 1465 PD
-24 W
-4879 1465 PD
-24 W
-4905 1470 PD
-24 W
-4932 1489 PD
-24 W
-4953 1508 PD
-24 W
-4974 1526 PD
-24 W
-4987 1544 PD
-24 W
-4997 1561 PD
-24 W
-5001 1579 PD
-24 W
-5004 1593 PD
-24 W
-5002 1598 PD
-24 W
-5000 1616 PD
-24 W
-4998 1635 PD
-24 W
-4991 1653 PD
-24 W
-4982 1671 PD
-24 W
-4969 1689 PD
-24 W
-4952 1707 PD
-24 W
-4937 1725 PD
-24 W
-4922 1743 PD
-24 W
-4914 1761 PD
-24 W
-4941 1761 PD
-24 W
-4970 1749 PD
-24 W
-4997 1742 PD
-24 W
-5028 1736 PD
-24 W
-5059 1732 PD
-24 W
-5089 1729 PD
-24 W
-5116 1724 PD
-24 W
-5144 1722 PD
-24 W
-5172 1720 PD
-24 W
-5200 1718 PD
-24 W
-5227 1716 PD
-24 W
-5255 1721 PD
-24 W
-5282 1729 PD
-24 W
-5309 1742 PD
-24 W
-5336 1761 PD
-24 W
-5359 1779 PD
-24 W
-5384 1797 PD
-24 W
-5413 1810 PD
-24 W
-5440 1824 PD
-24 W
-5468 1837 PD
-24 W
-5494 1853 PD
-24 W
-5497 1854 PD
-24 W
-5526 1852 PD
-24 W
-5553 1862 PD
-24 W
-5576 1881 PD
-24 W
-5595 1898 PD
-24 W
-5613 1918 PD
-24 W
-5625 1935 PD
-24 W
-5636 1954 PD
-24 W
-5646 1973 PD
-24 W
-5655 1992 PD
-24 W
-5663 2010 PD
-24 W
-5668 2029 PD
-24 W
-5675 2047 PD
-24 W
-5683 2065 PD
-24 W
-5690 2084 PD
-24 W
-5697 2102 PD
-24 W
-5705 2121 PD
-24 W
-5716 2139 PD
-24 W
-5722 2157 PD
-24 W
-5726 2175 PD
-24 W
-5727 2194 PD
-24 W
-5727 2212 PD
-24 W
-5728 2230 PD
-24 W
-5727 2248 PD
-24 W
-5726 2251 PD
-24 W
-5710 2267 PD
-24 W
-5696 2285 PD
-24 W
-5689 2304 PD
-24 W
-5681 2322 PD
-24 W
-5673 2341 PD
-24 W
-5662 2360 PD
-24 W
-5653 2378 PD
-24 W
-5668 2395 PD
-24 W
-5671 2413 PD
-24 W
-5665 2431 PD
-24 W
-5659 2448 PD
-24 W
-5668 2466 PD
-24 W
-5677 2485 PD
-24 W
-5681 2505 PD
-24 W
-5681 2523 PD
-24 W
-5680 2541 PD
-24 W
-5675 2560 PD
-24 W
-5670 2580 PD
-24 W
-5664 2598 PD
-24 W
-5658 2616 PD
-24 W
-5654 2635 PD
-24 W
-5681 2649 PD
-24 W
-5710 2646 PD
-24 W
-5737 2656 PD
-24 W
-5763 2675 PD
-24 W
-5790 2689 PD
-24 W
-5818 2699 PD
-24 W
-5845 2702 PD
-24 W
-5873 2710 PD
-24 W
-5901 2706 PD
-24 W
-5931 2700 PD
-24 W
-5961 2693 PD
-24 W
-5990 2682 PD
-24 W
-6018 2676 PD
-24 W
-6047 2674 PD
-24 W
-6076 2667 PD
-24 W
-6103 2666 PD
-24 W
-6133 2663 PD
-24 W
-6160 2657 PD
-24 W
-6189 2655 PD
-24 W
-6218 2656 PD
-24 W
-6245 2661 PD
-24 W
-918 2829 PD
-24 W
-946 2846 PD
-24 W
-975 2857 PD
-24 W
-1002 2861 PD
-24 W
-1031 2859 PD
-24 W
-1058 2864 PD
-24 W
-1080 2882 PD
-24 W
-1110 2891 PD
-24 W
-1141 2891 PD
-24 W
-1168 2891 PD
-24 W
-1196 2898 PD
-24 W
-1208 2915 PD
-24 W
-1215 2933 PD
-24 W
-1232 2952 PD
-24 W
-1259 2954 PD
-24 W
-1287 2949 PD
-24 W
-1315 2954 PD
-24 W
-1342 2961 PD
-24 W
-1372 2963 PD
-24 W
-1399 2966 PD
-24 W
-1427 2967 PD
-24 W
-1454 2968 PD
-24 W
-1481 2973 PD
-24 W
-1510 2975 PD
-24 W
-1538 2978 PD
-24 W
-1566 2978 PD
-24 W
-1567 2959 PD
-24 W
-1556 2941 PD
-24 W
-1543 2922 PD
-24 W
-1532 2903 PD
-24 W
-1522 2885 PD
-24 W
-1509 2867 PD
-24 W
-1489 2848 PD
-24 W
-1469 2829 PD
-24 W
-1450 2810 PD
-24 W
-1434 2791 PD
-24 W
-1421 2773 PD
-24 W
-1410 2756 PD
-24 W
-1398 2737 PD
-24 W
-1389 2718 PD
-24 W
-1379 2700 PD
-24 W
-1369 2679 PD
-24 W
-1359 2660 PD
-24 W
-1348 2641 PD
-24 W
-1319 2621 PD
-24 W
-1292 2609 PD
-24 W
-1263 2590 PD
-24 W
-1243 2572 PD
-24 W
-1230 2554 PD
-24 W
-1216 2536 PD
-24 W
-1206 2516 PD
-24 W
-1198 2498 PD
-24 W
-1191 2479 PD
-24 W
-1188 2461 PD
-24 W
-1188 2442 PD
-24 W
-1190 2424 PD
-24 W
-1194 2405 PD
-24 W
-1188 2386 PD
-24 W
-1161 2380 PD
-24 W
-1133 2364 PD
-24 W
-1104 2355 PD
-24 W
-1076 2343 PD
-24 W
-1049 2325 PD
-24 W
-1028 2307 PD
-24 W
-1012 2290 PD
-24 W
-994 2270 PD
-24 W
-978 2252 PD
-24 W
-960 2233 PD
-24 W
-945 2215 PD
-24 W
-927 2197 PD
-24 W
-903 2780 PD
-24 W
-903 2781 PD
-24 W
-931 2785 PD
-24 W
-958 2794 PD
-24 W
-985 2808 PD
-24 W
-1014 2814 PD
-24 W
-1040 2812 PD
-24 W
-1068 2819 PD
-24 W
-1096 2830 PD
-24 W
-1125 2834 PD
-24 W
-1153 2834 PD
-24 W
-1182 2841 PD
-24 W
-1209 2854 PD
-24 W
-1236 2873 PD
-24 W
-1266 2880 PD
-24 W
-1292 2888 PD
-24 W
-1319 2902 PD
-24 W
-1347 2909 PD
-24 W
-1374 2913 PD
-24 W
-1404 2917 PD
-24 W
-1434 2915 PD
-24 W
-1438 2896 PD
-24 W
-1414 2878 PD
-24 W
-1397 2859 PD
-24 W
-1384 2841 PD
-24 W
-1373 2822 PD
-24 W
-1369 2802 PD
-24 W
-1366 2782 PD
-24 W
-1349 2764 PD
-24 W
-1330 2747 PD
-24 W
-1312 2729 PD
-24 W
-1296 2711 PD
-24 W
-1283 2692 PD
-24 W
-1269 2674 PD
-24 W
-1247 2656 PD
-24 W
-1226 2636 PD
-24 W
-1211 2618 PD
-24 W
-1193 2601 PD
-24 W
-1173 2583 PD
-24 W
-1160 2565 PD
-24 W
-1145 2546 PD
-24 W
-1130 2527 PD
-24 W
-1123 2508 PD
-24 W
-1119 2488 PD
-24 W
-1117 2470 PD
-24 W
-1118 2451 PD
-24 W
-1120 2433 PD
-24 W
-1123 2415 PD
-24 W
-1123 2397 PD
-24 W
-1095 2385 PD
-24 W
-1067 2373 PD
-24 W
-1039 2361 PD
-24 W
-1014 2343 PD
-24 W
-1001 2325 PD
-24 W
-973 2316 PD
-24 W
-961 2298 PD
-24 W
-946 2279 PD
-24 W
-925 2262 PD
-24 W
-902 2702 PD
-24 W
-929 2719 PD
-24 W
-957 2732 PD
-24 W
-985 2744 PD
-24 W
-1012 2756 PD
-24 W
-1042 2761 PD
-24 W
-1072 2765 PD
-24 W
-1101 2774 PD
-24 W
-1128 2784 PD
-24 W
-1159 2787 PD
-24 W
-1186 2789 PD
-24 W
-1214 2796 PD
-24 W
-1243 2808 PD
-24 W
-1272 2819 PD
-24 W
-1286 2801 PD
-24 W
-1276 2782 PD
-24 W
-1264 2762 PD
-24 W
-1251 2743 PD
-24 W
-1233 2723 PD
-24 W
-1214 2704 PD
-24 W
-1196 2685 PD
-24 W
-1180 2666 PD
-24 W
-1162 2648 PD
-24 W
-1143 2629 PD
-24 W
-1124 2611 PD
-24 W
-1104 2591 PD
-24 W
-1086 2572 PD
-24 W
-1070 2554 PD
-24 W
-1057 2536 PD
-24 W
-1050 2518 PD
-24 W
-1051 2500 PD
-24 W
-1054 2483 PD
-24 W
-1053 2465 PD
-24 W
-1057 2446 PD
-24 W
-1067 2428 PD
-24 W
-1044 2410 PD
-24 W
-1017 2397 PD
-24 W
-990 2389 PD
-24 W
-965 2371 PD
-24 W
-936 2355 PD
-24 W
-909 2338 PD
-24 W
-905 2612 PD
-24 W
-925 2631 PD
-24 W
-947 2652 PD
-24 W
-961 2670 PD
-24 W
-988 2686 PD
-24 W
-1017 2702 PD
-24 W
-1044 2705 PD
-24 W
-1071 2711 PD
-24 W
-1098 2722 PD
-24 W
-1125 2729 PD
-24 W
-1153 2734 PD
-24 W
-1182 2742 PD
-24 W
-1176 2723 PD
-24 W
-1161 2704 PD
-24 W
-1144 2684 PD
-24 W
-1124 2666 PD
-24 W
-1106 2648 PD
-24 W
-1086 2629 PD
-24 W
-1065 2610 PD
-24 W
-1054 2591 PD
-24 W
-1038 2573 PD
-24 W
-1019 2554 PD
-24 W
-1004 2536 PD
-24 W
-994 2517 PD
-24 W
-991 2498 PD
-24 W
-989 2480 PD
-24 W
-989 2462 PD
-24 W
-984 2442 PD
-24 W
-964 2425 PD
-24 W
-938 2412 PD
-24 W
-911 1183 PD
-24 W
-920 1183 PD
-24 W
-939 1162 PD
-24 W
-959 1142 PD
-24 W
-981 1124 PD
-24 W
-1000 1106 PD
-24 W
-1018 1087 PD
-24 W
-1033 1068 PD
-24 W
-1038 1049 PD
-24 W
-1039 1031 PD
-24 W
-1037 1011 PD
-24 W
-1041 993 PD
-24 W
-1047 975 PD
-24 W
-1050 957 PD
-24 W
-1060 939 PD
-24 W
-1078 921 PD
-24 W
-1102 902 PD
-24 W
-1125 883 PD
-24 W
-1125 865 PD
-24 W
-1140 846 PD
-24 W
-1168 833 PD
-24 W
-1190 815 PD
-24 W
-1196 796 PD
-24 W
-1197 778 PD
-24 W
-1212 759 PD
-24 W
-1240 749 PD
-24 W
-1241 731 PD
-24 W
-1251 713 PD
-24 W
-1279 702 PD
-24 W
-1290 683 PD
-24 W
-1299 664 PD
-24 W
-1316 646 PD
-24 W
-1330 627 PD
-24 W
-1333 608 PD
-24 W
-1329 591 PD
-24 W
-1325 572 PD
-24 W
-1316 554 PD
-24 W
-1308 536 PD
-24 W
-1308 517 PD
-24 W
-1304 500 PD
-24 W
-1277 487 PD
-24 W
-1267 504 PD
-24 W
-1239 510 PD
-24 W
-1212 527 PD
-24 W
-1185 538 PD
-24 W
-1159 549 PD
-24 W
-1155 567 PD
-24 W
-1128 581 PD
-24 W
-1114 599 PD
-24 W
-1116 617 PD
-24 W
-1098 636 PD
-24 W
-1107 655 PD
-24 W
-1113 673 PD
-24 W
-1099 691 PD
-24 W
-1072 706 PD
-24 W
-1044 720 PD
-24 W
-1046 737 PD
-24 W
-1039 755 PD
-24 W
-1011 769 PD
-24 W
-1021 788 PD
-24 W
-1022 806 PD
-24 W
-1006 824 PD
-24 W
-998 842 PD
-24 W
-995 859 PD
-24 W
-989 877 PD
-24 W
-973 896 PD
-24 W
-956 913 PD
-24 W
-927 929 PD
-24 W
-1043 883 PD
-24 W
-1042 883 PD
-24 W
-1070 877 PD
-24 W
-1079 858 PD
-24 W
-1082 840 PD
-24 W
-1082 823 PD
-24 W
-1112 810 PD
-24 W
-1131 792 PD
-24 W
-1134 773 PD
-24 W
-1147 755 PD
-24 W
-1169 736 PD
-24 W
-1189 719 PD
-24 W
-1216 712 PD
-24 W
-1226 693 PD
-24 W
-1238 674 PD
-24 W
-1259 656 PD
-24 W
-1265 638 PD
-24 W
-1266 619 PD
-24 W
-1264 601 PD
-24 W
-1263 584 PD
-24 W
-1268 565 PD
-24 W
-1241 548 PD
-24 W
-1213 560 PD
-24 W
-1201 578 PD
-24 W
-1173 595 PD
-24 W
-1150 613 PD
-24 W
-1148 630 PD
-24 W
-1144 649 PD
-24 W
-1148 667 PD
-24 W
-1161 685 PD
-24 W
-1159 703 PD
-24 W
-1131 710 PD
-24 W
-1109 727 PD
-24 W
-1101 745 PD
-24 W
-1086 765 PD
-24 W
-1058 783 PD
-24 W
-1048 802 PD
-24 W
-1048 821 PD
-24 W
-1044 839 PD
-24 W
-1034 857 PD
-24 W
-905 866 PD
-24 W
-904 866 PD
-24 W
-927 848 PD
-24 W
-947 830 PD
-24 W
-952 812 PD
-24 W
-960 793 PD
-24 W
-952 774 PD
-24 W
-946 757 PD
-24 W
-975 742 PD
-24 W
-992 724 PD
-24 W
-993 706 PD
-24 W
-1021 694 PD
-24 W
-1048 687 PD
-24 W
-1076 669 PD
-24 W
-1086 650 PD
-24 W
-1078 633 PD
-24 W
-1063 615 PD
-24 W
-1065 597 PD
-24 W
-1060 580 PD
-24 W
-1089 570 PD
-24 W
-1116 561 PD
-24 W
-1108 542 PD
-24 W
-1108 524 PD
-24 W
-1137 515 PD
-24 W
-1166 510 PD
-24 W
-1194 502 PD
-24 W
-1212 484 PD
-24 W
-1214 466 PD
-24 W
-1241 458 PD
-24 W
-1269 452 PD
-24 W
-1297 441 PD
-24 W
-1322 424 PD
-24 W
-1340 405 PD
-24 W
-3741 395 PD
-24 W
-3741 394 PD
-24 W
-3762 412 PD
-24 W
-3790 424 PD
-24 W
-3819 428 PD
-24 W
-3848 432 PD
-24 W
-3877 440 PD
-24 W
-3905 452 PD
-24 W
-3930 470 PD
-24 W
-3955 488 PD
-24 W
-3975 505 PD
-24 W
-4002 519 PD
-24 W
-4031 528 PD
-24 W
-4058 534 PD
-24 W
-4086 540 PD
-24 W
-4113 548 PD
-24 W
-4140 559 PD
-24 W
-4170 574 PD
-24 W
-4198 591 PD
-24 W
-4225 607 PD
-24 W
-4253 624 PD
-24 W
-4281 639 PD
-24 W
-4307 653 PD
-24 W
-4336 669 PD
-24 W
-4363 681 PD
-24 W
-4391 696 PD
-24 W
-4419 711 PD
-24 W
-4448 724 PD
-24 W
-4476 742 PD
-24 W
-4497 762 PD
-24 W
-4509 780 PD
-24 W
-4517 798 PD
-24 W
-4529 818 PD
-24 W
-4541 835 PD
-24 W
-4554 853 PD
-24 W
-4563 872 PD
-24 W
-4570 891 PD
-24 W
-4578 910 PD
-24 W
-4589 929 PD
-24 W
-4601 947 PD
-24 W
-4612 966 PD
-24 W
-4624 983 PD
-24 W
-4635 1001 PD
-24 W
-4646 1020 PD
-24 W
-4659 1039 PD
-24 W
-4668 1057 PD
-24 W
-4672 1075 PD
-24 W
-4679 1093 PD
-24 W
-4680 1111 PD
-24 W
-4682 1129 PD
-24 W
-4678 1147 PD
-24 W
-4669 1164 PD
-24 W
-4670 1166 PD
-24 W
-4654 1183 PD
-24 W
-4638 1201 PD
-24 W
-4627 1220 PD
-24 W
-4623 1237 PD
-24 W
-4623 1255 PD
-24 W
-4632 1274 PD
-24 W
-4645 1292 PD
-24 W
-4660 1310 PD
-24 W
-4669 1329 PD
-24 W
-4670 1346 PD
-24 W
-4696 1364 PD
-24 W
-4708 1382 PD
-24 W
-4735 1397 PD
-24 W
-4762 1408 PD
-24 W
-4789 1406 PD
-24 W
-4816 1404 PD
-24 W
-4843 1408 PD
-24 W
-4847 1407 PD
-24 W
-4872 1409 PD
-24 W
-4899 1415 PD
-24 W
-4927 1431 PD
-24 W
-4956 1445 PD
-24 W
-4983 1456 PD
-24 W
-5008 1475 PD
-24 W
-5030 1494 PD
-24 W
-5043 1511 PD
-24 W
-5055 1530 PD
-24 W
-5060 1547 PD
-24 W
-5062 1565 PD
-24 W
-5063 1583 PD
-24 W
-5061 1602 PD
-24 W
-5059 1618 PD
-24 W
-5056 1619 PD
-24 W
-5049 1637 PD
-24 W
-5037 1655 PD
-24 W
-5018 1673 PD
-24 W
-4995 1690 PD
-24 W
-4979 1709 PD
-24 W
-5008 1714 PD
-24 W
-5036 1704 PD
-24 W
-5064 1697 PD
-24 W
-5094 1692 PD
-24 W
-5127 1687 PD
-24 W
-5155 1681 PD
-24 W
-5184 1673 PD
-24 W
-5210 1664 PD
-24 W
-5238 1660 PD
-24 W
-5266 1657 PD
-24 W
-5293 1661 PD
-24 W
-5321 1670 PD
-24 W
-5348 1683 PD
-24 W
-5376 1699 PD
-24 W
-5403 1715 PD
-24 W
-5431 1730 PD
-24 W
-5457 1748 PD
-24 W
-5470 1766 PD
-24 W
-5498 1777 PD
-24 W
-5525 1770 PD
-24 W
-5537 1765 PD
-24 W
-5555 1765 PD
-24 W
-5583 1768 PD
-24 W
-5611 1780 PD
-24 W
-5640 1794 PD
-24 W
-5663 1813 PD
-24 W
-5682 1831 PD
-24 W
-5698 1850 PD
-24 W
-5709 1869 PD
-24 W
-5723 1887 PD
-24 W
-5734 1906 PD
-24 W
-5744 1924 PD
-24 W
-5754 1943 PD
-24 W
-5763 1961 PD
-24 W
-5774 1980 PD
-24 W
-5784 1998 PD
-24 W
-5792 2017 PD
-24 W
-5800 2035 PD
-24 W
-5806 2053 PD
-24 W
-5812 2072 PD
-24 W
-5815 2091 PD
-24 W
-5816 2110 PD
-24 W
-5822 2128 PD
-24 W
-5822 2147 PD
-24 W
-5819 2166 PD
-24 W
-5809 2183 PD
-24 W
-5800 2199 PD
-24 W
-5798 2201 PD
-24 W
-5798 2220 PD
-24 W
-5795 2238 PD
-24 W
-5780 2256 PD
-24 W
-5772 2274 PD
-24 W
-5762 2294 PD
-24 W
-5755 2311 PD
-24 W
-5748 2330 PD
-24 W
-5740 2348 PD
-24 W
-5731 2366 PD
-24 W
-5735 2384 PD
-24 W
-5744 2404 PD
-24 W
-5732 2422 PD
-24 W
-5728 2441 PD
-24 W
-5747 2459 PD
-24 W
-5755 2478 PD
-24 W
-5754 2497 PD
-24 W
-5751 2517 PD
-24 W
-5746 2536 PD
-24 W
-5748 2554 PD
-24 W
-5767 2571 PD
-24 W
-5796 2584 PD
-24 W
-5823 2591 PD
-24 W
-5851 2605 PD
-24 W
-5874 2623 PD
-24 W
-5902 2637 PD
-24 W
-5930 2648 PD
-24 W
-5961 2646 PD
-24 W
-5992 2641 PD
-24 W
-6020 2635 PD
-24 W
-6051 2628 PD
-24 W
-6082 2621 PD
-24 W
-6111 2616 PD
-24 W
-6138 2614 PD
-24 W
-6166 2610 PD
-24 W
-6196 2611 PD
-24 W
-6225 2613 PD
-24 W
-6251 2614 PD
-24 W
-4022 394 PD
-24 W
-4018 397 PD
-24 W
-4048 410 PD
-24 W
-4076 423 PD
-24 W
-4103 435 PD
-24 W
-4131 443 PD
-24 W
-4158 454 PD
-24 W
-4186 464 PD
-24 W
-4214 475 PD
-24 W
-4242 485 PD
-24 W
-4269 496 PD
-24 W
-4296 507 PD
-24 W
-4319 525 PD
-24 W
-4336 546 PD
-24 W
-4349 563 PD
-24 W
-4365 581 PD
-24 W
-4380 599 PD
-24 W
-4399 617 PD
-24 W
-4427 636 PD
-24 W
-4455 653 PD
-24 W
-4483 665 PD
-24 W
-4510 677 PD
-24 W
-4537 685 PD
-24 W
-4564 694 PD
-24 W
-4589 713 PD
-24 W
-4601 732 PD
-24 W
-4609 750 PD
-24 W
-4617 768 PD
-24 W
-4626 786 PD
-24 W
-4635 805 PD
-24 W
-4642 823 PD
-24 W
-4648 841 PD
-24 W
-4660 860 PD
-24 W
-4669 879 PD
-24 W
-4682 898 PD
-24 W
-4697 916 PD
-24 W
-4715 934 PD
-24 W
-4725 953 PD
-24 W
-4740 970 PD
-24 W
-4751 988 PD
-24 W
-4775 1008 PD
-24 W
-4792 1026 PD
-24 W
-4802 1044 PD
-24 W
-4800 1063 PD
-24 W
-4801 1081 PD
-24 W
-4793 1097 PD
-24 W
-4790 1101 PD
-24 W
-4785 1119 PD
-24 W
-4778 1138 PD
-24 W
-4768 1157 PD
-24 W
-4756 1175 PD
-24 W
-4733 1194 PD
-24 W
-4711 1213 PD
-24 W
-4718 1230 PD
-24 W
-4708 1249 PD
-24 W
-4707 1268 PD
-24 W
-4704 1287 PD
-24 W
-4717 1305 PD
-24 W
-4745 1316 PD
-24 W
-4772 1310 PD
-24 W
-4799 1301 PD
-24 W
-4825 1294 PD
-24 W
-4831 1292 PD
-24 W
-4853 1293 PD
-24 W
-4873 1311 PD
-24 W
-4894 1329 PD
-24 W
-4923 1343 PD
-24 W
-4951 1353 PD
-24 W
-4979 1369 PD
-24 W
-5006 1386 PD
-24 W
-5026 1404 PD
-24 W
-5040 1423 PD
-24 W
-5062 1440 PD
-24 W
-5087 1458 PD
-24 W
-5104 1478 PD
-24 W
-5109 1496 PD
-24 W
-5116 1513 PD
-24 W
-5119 1532 PD
-24 W
-5112 1549 PD
-24 W
-5104 1567 PD
-24 W
-5099 1586 PD
-24 W
-5095 1603 PD
-24 W
-5092 1605 PD
-24 W
-5088 1622 PD
-24 W
-5115 1636 PD
-24 W
-5142 1632 PD
-24 W
-5169 1627 PD
-24 W
-5198 1621 PD
-24 W
-5225 1616 PD
-24 W
-5252 1612 PD
-24 W
-5280 1610 PD
-24 W
-5309 1609 PD
-24 W
-5337 1615 PD
-24 W
-5365 1623 PD
-24 W
-5392 1635 PD
-24 W
-5420 1651 PD
-24 W
-5448 1665 PD
-24 W
-5476 1675 PD
-24 W
-5497 1681 PD
-24 W
-5503 1679 PD
-24 W
-5530 1671 PD
-24 W
-5557 1667 PD
-24 W
-5586 1667 PD
-24 W
-5615 1669 PD
-24 W
-5643 1672 PD
-24 W
-5672 1678 PD
-24 W
-5702 1682 PD
-24 W
-5729 1689 PD
-24 W
-5756 1707 PD
-24 W
-5772 1726 PD
-24 W
-5783 1745 PD
-24 W
-5791 1764 PD
-24 W
-5800 1784 PD
-24 W
-5813 1802 PD
-24 W
-5826 1822 PD
-24 W
-5837 1841 PD
-24 W
-5845 1858 PD
-24 W
-5855 1877 PD
-24 W
-5861 1895 PD
-24 W
-5868 1914 PD
-24 W
-5871 1933 PD
-24 W
-5874 1951 PD
-24 W
-5873 1969 PD
-24 W
-5871 1977 PD
-24 W
-5869 1986 PD
-24 W
-5870 2004 PD
-24 W
-5872 2023 PD
-24 W
-5877 2041 PD
-24 W
-5877 2060 PD
-24 W
-5874 2079 PD
-24 W
-5870 2097 PD
-24 W
-5869 2116 PD
-24 W
-5874 2135 PD
-24 W
-5870 2154 PD
-24 W
-5856 2172 PD
-24 W
-5846 2191 PD
-24 W
-5846 2209 PD
-24 W
-5845 2228 PD
-24 W
-5845 2248 PD
-24 W
-5841 2267 PD
-24 W
-5834 2285 PD
-24 W
-5828 2304 PD
-24 W
-5818 2323 PD
-24 W
-5809 2342 PD
-24 W
-5810 2360 PD
-24 W
-5816 2379 PD
-24 W
-5810 2397 PD
-24 W
-5795 2415 PD
-24 W
-5796 2434 PD
-24 W
-5812 2454 PD
-24 W
-5826 2474 PD
-24 W
-5827 2492 PD
-24 W
-5837 2511 PD
-24 W
-5865 2527 PD
-24 W
-5893 2535 PD
-24 W
-5919 2541 PD
-24 W
-5947 2549 PD
-24 W
-5964 2567 PD
-24 W
-5993 2581 PD
-24 W
-6020 2581 PD
-24 W
-6047 2578 PD
-24 W
-6075 2577 PD
-24 W
-6104 2575 PD
-24 W
-6132 2571 PD
-24 W
-6160 2569 PD
-24 W
-6187 2569 PD
-24 W
-6215 2569 PD
-24 W
-6242 2570 PD
-24 W
-4188 394 PD
-24 W
-4217 410 PD
-24 W
-4240 428 PD
-24 W
-4261 446 PD
-24 W
-4288 460 PD
-24 W
-4315 468 PD
-24 W
-4343 477 PD
-24 W
-4365 496 PD
-24 W
-4393 498 PD
-24 W
-4420 509 PD
-24 W
-4448 527 PD
-24 W
-4469 545 PD
-24 W
-4496 560 PD
-24 W
-4524 579 PD
-24 W
-4544 597 PD
-24 W
-4562 614 PD
-24 W
-4570 633 PD
-24 W
-4569 651 PD
-24 W
-4573 669 PD
-24 W
-4585 687 PD
-24 W
-4603 705 PD
-24 W
-4627 723 PD
-24 W
-4654 741 PD
-24 W
-4677 760 PD
-24 W
-4690 779 PD
-24 W
-4710 798 PD
-24 W
-4735 815 PD
-24 W
-4750 833 PD
-24 W
-4770 851 PD
-24 W
-4785 869 PD
-24 W
-4797 887 PD
-24 W
-4806 905 PD
-24 W
-4831 923 PD
-24 W
-4843 942 PD
-24 W
-4858 960 PD
-24 W
-4860 978 PD
-24 W
-4865 997 PD
-24 W
-4866 1016 PD
-24 W
-4863 1033 PD
-24 W
-4862 1051 PD
-24 W
-4861 1070 PD
-24 W
-4862 1088 PD
-24 W
-4861 1107 PD
-24 W
-4858 1125 PD
-24 W
-4866 1143 PD
-24 W
-4873 1160 PD
-24 W
-4888 1178 PD
-24 W
-4903 1197 PD
-24 W
-4919 1215 PD
-24 W
-4939 1233 PD
-24 W
-4963 1251 PD
-24 W
-4986 1269 PD
-24 W
-5012 1287 PD
-24 W
-5039 1306 PD
-24 W
-5066 1322 PD
-24 W
-5094 1340 PD
-24 W
-5117 1358 PD
-24 W
-5136 1376 PD
-24 W
-5149 1394 PD
-24 W
-5163 1412 PD
-24 W
-5173 1430 PD
-24 W
-5188 1448 PD
-24 W
-5210 1465 PD
-24 W
-5222 1483 PD
-24 W
-5227 1501 PD
-24 W
-5233 1520 PD
-24 W
-5233 1537 PD
-24 W
-5232 1538 PD
-24 W
-5261 1544 PD
-24 W
-5288 1546 PD
-24 W
-5316 1550 PD
-24 W
-5345 1553 PD
-24 W
-5374 1555 PD
-24 W
-5401 1556 PD
-24 W
-5415 1557 PD
-24 W
-5428 1556 PD
-24 W
-5456 1552 PD
-24 W
-5485 1556 PD
-24 W
-5512 1566 PD
-24 W
-5539 1571 PD
-24 W
-5566 1573 PD
-24 W
-5598 1571 PD
-24 W
-5628 1569 PD
-24 W
-5657 1569 PD
-24 W
-5686 1570 PD
-24 W
-5713 1567 PD
-24 W
-5741 1566 PD
-24 W
-5770 1566 PD
-24 W
-5798 1568 PD
-24 W
-5826 1578 PD
-24 W
-5855 1595 PD
-24 W
-5872 1614 PD
-24 W
-5884 1634 PD
-24 W
-5892 1654 PD
-24 W
-5902 1671 PD
-24 W
-5911 1689 PD
-24 W
-5919 1710 PD
-24 W
-5927 1730 PD
-24 W
-5938 1749 PD
-24 W
-5946 1767 PD
-24 W
-5956 1786 PD
-24 W
-5967 1803 PD
-24 W
-5968 1821 PD
-24 W
-5970 1840 PD
-24 W
-5968 1859 PD
-24 W
-5964 1879 PD
-24 W
-5962 1896 PD
-24 W
-5955 1915 PD
-24 W
-5950 1934 PD
-24 W
-5949 1952 PD
-24 W
-5942 1970 PD
-24 W
-5927 2004 PD
-24 W
-5926 2004 PD
-24 W
-5920 2022 PD
-24 W
-5936 2040 PD
-24 W
-5938 2057 PD
-24 W
-5928 2076 PD
-24 W
-5923 2093 PD
-24 W
-5921 2112 PD
-24 W
-5925 2130 PD
-24 W
-5927 2148 PD
-24 W
-5919 2166 PD
-24 W
-5909 2185 PD
-24 W
-5900 2204 PD
-24 W
-5897 2223 PD
-24 W
-5894 2241 PD
-24 W
-5887 2259 PD
-24 W
-5891 2277 PD
-24 W
-5884 2296 PD
-24 W
-5880 2315 PD
-24 W
-5873 2333 PD
-24 W
-5860 2353 PD
-24 W
-5857 2371 PD
-24 W
-5860 2389 PD
-24 W
-5857 2407 PD
-24 W
-5886 2423 PD
-24 W
-5914 2431 PD
-24 W
-5944 2440 PD
-24 W
-5972 2445 PD
-24 W
-6000 2460 PD
-24 W
-6025 2479 PD
-24 W
-6045 2497 PD
-24 W
-6072 2510 PD
-24 W
-6101 2517 PD
-24 W
-6129 2520 PD
-24 W
-6157 2523 PD
-24 W
-6186 2524 PD
-24 W
-6215 2526 PD
-24 W
-6242 2531 PD
-24 W
-4372 392 PD
-24 W
-4371 392 PD
-24 W
-4387 410 PD
-24 W
-4404 428 PD
-24 W
-4421 446 PD
-24 W
-4434 464 PD
-24 W
-4455 482 PD
-24 W
-4483 496 PD
-24 W
-4512 507 PD
-24 W
-4541 518 PD
-24 W
-4568 532 PD
-24 W
-4587 550 PD
-24 W
-4597 568 PD
-24 W
-4599 586 PD
-24 W
-4596 605 PD
-24 W
-4593 623 PD
-24 W
-4592 641 PD
-24 W
-4595 659 PD
-24 W
-4603 678 PD
-24 W
-4618 695 PD
-24 W
-4645 709 PD
-24 W
-4671 718 PD
-24 W
-4699 726 PD
-24 W
-4728 733 PD
-24 W
-4753 751 PD
-24 W
-4772 769 PD
-24 W
-4787 787 PD
-24 W
-4806 806 PD
-24 W
-4825 824 PD
-24 W
-4848 842 PD
-24 W
-4869 860 PD
-24 W
-4889 878 PD
-24 W
-4898 896 PD
-24 W
-4898 905 PD
-24 W
-4904 917 PD
-24 W
-4909 935 PD
-24 W
-4912 954 PD
-24 W
-4918 971 PD
-24 W
-4924 989 PD
-24 W
-4936 1007 PD
-24 W
-4963 1022 PD
-24 W
-4966 1022 PD
-24 W
-4980 1040 PD
-24 W
-4998 1059 PD
-24 W
-5007 1079 PD
-24 W
-5020 1097 PD
-24 W
-5037 1116 PD
-24 W
-5055 1136 PD
-24 W
-5071 1155 PD
-24 W
-5088 1175 PD
-24 W
-5105 1195 PD
-24 W
-5125 1213 PD
-24 W
-5144 1233 PD
-24 W
-5163 1250 PD
-24 W
-5185 1268 PD
-24 W
-5203 1286 PD
-24 W
-5221 1305 PD
-24 W
-5237 1324 PD
-24 W
-5254 1343 PD
-24 W
-5282 1352 PD
-24 W
-5310 1359 PD
-24 W
-5327 1378 PD
-24 W
-5329 1385 PD
-24 W
-5332 1395 PD
-24 W
-5330 1414 PD
-24 W
-5322 1433 PD
-24 W
-5312 1450 PD
-24 W
-5302 1469 PD
-24 W
-5300 1487 PD
-24 W
-5328 1503 PD
-24 W
-5355 1505 PD
-24 W
-5383 1502 PD
-24 W
-5409 1495 PD
-24 W
-5437 1486 PD
-24 W
-5464 1478 PD
-24 W
-5493 1472 PD
-24 W
-5521 1468 PD
-24 W
-5521 1440 PD
-24 W
-5521 1439 PD
-24 W
-5549 1440 PD
-24 W
-5579 1444 PD
-24 W
-5606 1447 PD
-24 W
-5635 1447 PD
-24 W
-5663 1451 PD
-24 W
-5691 1454 PD
-24 W
-5719 1454 PD
-24 W
-5749 1456 PD
-24 W
-5777 1463 PD
-24 W
-5804 1470 PD
-24 W
-5835 1480 PD
-24 W
-5863 1493 PD
-24 W
-5892 1511 PD
-24 W
-5920 1527 PD
-24 W
-5942 1545 PD
-24 W
-5967 1564 PD
-24 W
-5985 1583 PD
-24 W
-6002 1602 PD
-24 W
-6013 1621 PD
-24 W
-6018 1640 PD
-24 W
-6021 1658 PD
-24 W
-6028 1677 PD
-24 W
-6038 1696 PD
-24 W
-6039 1716 PD
-24 W
-6044 1735 PD
-24 W
-6047 1755 PD
-24 W
-6051 1773 PD
-24 W
-6053 1793 PD
-24 W
-6053 1811 PD
-24 W
-6053 1828 PD
-24 W
-6053 1847 PD
-24 W
-6053 1865 PD
-24 W
-6049 1883 PD
-24 W
-6043 1903 PD
-24 W
-6037 1921 PD
-24 W
-6025 1940 PD
-24 W
-6017 1959 PD
-24 W
-6018 1977 PD
-24 W
-6007 1995 PD
-24 W
-6001 2013 PD
-24 W
-5996 2032 PD
-24 W
-5992 2051 PD
-24 W
-5994 2069 PD
-24 W
-5993 2069 PD
-24 W
-5980 2087 PD
-24 W
-5977 2104 PD
-24 W
-5993 2124 PD
-24 W
-5998 2142 PD
-24 W
-5995 2161 PD
-24 W
-5988 2180 PD
-24 W
-5990 2198 PD
-24 W
-5983 2217 PD
-24 W
-5973 2236 PD
-24 W
-5946 2245 PD
-24 W
-5947 2263 PD
-24 W
-5963 2280 PD
-24 W
-5958 2298 PD
-24 W
-5930 2311 PD
-24 W
-5918 2329 PD
-24 W
-5916 2348 PD
-24 W
-5926 2367 PD
-24 W
-5950 2385 PD
-24 W
-5978 2392 PD
-24 W
-6007 2404 PD
-24 W
-6037 2405 PD
-24 W
-6067 2410 PD
-24 W
-6096 2420 PD
-24 W
-6124 2436 PD
-24 W
-6153 2444 PD
-24 W
-6181 2456 PD
-24 W
-6209 2472 PD
-24 W
-6236 2482 PD
-24 W
-4494 391 PD
-24 W
-4495 389 PD
-24 W
-4519 406 PD
-24 W
-4535 425 PD
-24 W
-4561 444 PD
-24 W
-4584 462 PD
-24 W
-4601 480 PD
-24 W
-4604 497 PD
-24 W
-4605 515 PD
-24 W
-4602 522 PD
-24 W
-4602 534 PD
-24 W
-4630 550 PD
-24 W
-4639 568 PD
-24 W
-4617 586 PD
-24 W
-4612 604 PD
-24 W
-4612 622 PD
-24 W
-4619 640 PD
-24 W
-4625 658 PD
-24 W
-4641 676 PD
-24 W
-4668 693 PD
-24 W
-4695 702 PD
-24 W
-4722 708 PD
-24 W
-4750 713 PD
-24 W
-4777 721 PD
-24 W
-4802 739 PD
-24 W
-4824 757 PD
-24 W
-4848 775 PD
-24 W
-4874 793 PD
-24 W
-4894 812 PD
-24 W
-4911 831 PD
-24 W
-4924 849 PD
-24 W
-4937 867 PD
-24 W
-4943 885 PD
-24 W
-4954 904 PD
-24 W
-4971 922 PD
-24 W
-4987 940 PD
-24 W
-4993 959 PD
-24 W
-4995 977 PD
-24 W
-5015 994 PD
-24 W
-5043 992 PD
-24 W
-5055 1020 PD
-24 W
-5059 1013 PD
-24 W
-5087 1020 PD
-24 W
-5113 1031 PD
-24 W
-5141 1048 PD
-24 W
-5169 1067 PD
-24 W
-5196 1085 PD
-24 W
-5224 1102 PD
-24 W
-5251 1120 PD
-24 W
-5273 1138 PD
-24 W
-5296 1156 PD
-24 W
-5319 1174 PD
-24 W
-5338 1193 PD
-24 W
-5356 1212 PD
-24 W
-5370 1229 PD
-24 W
-5382 1247 PD
-24 W
-5393 1265 PD
-24 W
-5404 1284 PD
-24 W
-5410 1303 PD
-24 W
-5411 1320 PD
-24 W
-5410 1338 PD
-24 W
-5401 1357 PD
-24 W
-5401 1358 PD
-24 W
-5386 1376 PD
-24 W
-5375 1394 PD
-24 W
-5367 1414 PD
-24 W
-5376 1432 PD
-24 W
-5402 1433 PD
-24 W
-5431 1421 PD
-24 W
-5460 1413 PD
-24 W
-5489 1407 PD
-24 W
-5521 1404 PD
-24 W
-5548 1400 PD
-24 W
-5576 1399 PD
-24 W
-5606 1400 PD
-24 W
-5636 1400 PD
-24 W
-5665 1398 PD
-24 W
-5692 1399 PD
-24 W
-5719 1399 PD
-24 W
-5748 1401 PD
-24 W
-5777 1404 PD
-24 W
-5803 1409 PD
-24 W
-5831 1420 PD
-24 W
-5860 1434 PD
-24 W
-5888 1447 PD
-24 W
-5916 1459 PD
-24 W
-5945 1468 PD
-24 W
-5972 1477 PD
-24 W
-6000 1489 PD
-24 W
-6028 1508 PD
-24 W
-6038 1527 PD
-24 W
-6037 1527 PD
-24 W
-6060 1546 PD
-24 W
-6072 1564 PD
-24 W
-6077 1582 PD
-24 W
-6081 1600 PD
-24 W
-6086 1618 PD
-24 W
-6094 1637 PD
-24 W
-6100 1657 PD
-24 W
-6105 1675 PD
-24 W
-6108 1695 PD
-24 W
-6111 1713 PD
-24 W
-6114 1731 PD
-24 W
-6115 1748 PD
-24 W
-6115 1767 PD
-24 W
-6117 1785 PD
-24 W
-6119 1805 PD
-24 W
-6122 1823 PD
-24 W
-6120 1841 PD
-24 W
-6115 1859 PD
-24 W
-6112 1878 PD
-24 W
-6107 1898 PD
-24 W
-6105 1916 PD
-24 W
-6105 1935 PD
-24 W
-6101 1953 PD
-24 W
-6096 1972 PD
-24 W
-6091 1992 PD
-24 W
-6086 2013 PD
-24 W
-6081 2033 PD
-24 W
-6076 2051 PD
-24 W
-6071 2069 PD
-24 W
-6064 2086 PD
-24 W
-6065 2085 PD
-24 W
-6053 2104 PD
-24 W
-6060 2122 PD
-24 W
-6071 2140 PD
-24 W
-6070 2158 PD
-24 W
-6064 2176 PD
-24 W
-6050 2194 PD
-24 W
-6054 2211 PD
-24 W
-6048 2229 PD
-24 W
-6035 2248 PD
-24 W
-6024 2267 PD
-24 W
-6013 2286 PD
-24 W
-6006 2304 PD
-24 W
-6003 2322 PD
-24 W
-6031 2338 PD
-24 W
-6060 2354 PD
-24 W
-6085 2372 PD
-24 W
-6113 2387 PD
-24 W
-6142 2392 PD
-24 W
-6170 2396 PD
-24 W
-6197 2404 PD
-24 W
-6225 2418 PD
-24 W
-6244 2436 PD
-24 W
-4628 398 PD
-24 W
-4630 396 PD
-24 W
-4639 414 PD
-24 W
-4654 432 PD
-24 W
-4670 450 PD
-24 W
-4673 468 PD
-24 W
-4671 487 PD
-24 W
-4668 495 PD
-24 W
-4665 504 PD
-24 W
-4692 517 PD
-24 W
-4690 535 PD
-24 W
-4697 552 PD
-24 W
-4707 570 PD
-24 W
-4680 585 PD
-24 W
-4658 603 PD
-24 W
-4657 620 PD
-24 W
-4667 638 PD
-24 W
-4684 657 PD
-24 W
-4711 669 PD
-24 W
-4738 670 PD
-24 W
-4766 673 PD
-24 W
-4786 690 PD
-24 W
-4813 702 PD
-24 W
-4833 719 PD
-24 W
-4861 730 PD
-24 W
-4889 739 PD
-24 W
-4907 756 PD
-24 W
-4915 774 PD
-24 W
-4923 793 PD
-24 W
-4935 811 PD
-24 W
-4940 828 PD
-24 W
-4957 846 PD
-24 W
-4976 864 PD
-24 W
-5000 882 PD
-24 W
-5015 899 PD
-24 W
-5025 917 PD
-24 W
-5033 935 PD
-24 W
-5061 950 PD
-24 W
-5088 956 PD
-24 W
-5116 975 PD
-24 W
-5144 979 PD
-24 W
-5172 978 PD
-24 W
-5201 982 PD
-24 W
-5228 990 PD
-24 W
-5255 1000 PD
-24 W
-5283 1012 PD
-24 W
-5309 1024 PD
-24 W
-5336 1039 PD
-24 W
-5361 1058 PD
-24 W
-5382 1076 PD
-24 W
-5399 1095 PD
-24 W
-5411 1112 PD
-24 W
-5422 1130 PD
-24 W
-5439 1148 PD
-24 W
-5444 1165 PD
-24 W
-5447 1183 PD
-24 W
-5449 1201 PD
-24 W
-5448 1219 PD
-24 W
-5446 1236 PD
-24 W
-5444 1255 PD
-24 W
-5451 1273 PD
-24 W
-5457 1291 PD
-24 W
-5454 1309 PD
-24 W
-5447 1327 PD
-24 W
-5451 1345 PD
-24 W
-5478 1356 PD
-24 W
-5505 1353 PD
-24 W
-5533 1348 PD
-24 W
-5562 1346 PD
-24 W
-5592 1342 PD
-24 W
-5621 1343 PD
-24 W
-5650 1344 PD
-24 W
-5679 1346 PD
-24 W
-5709 1351 PD
-24 W
-5737 1352 PD
-24 W
-5767 1353 PD
-24 W
-5794 1362 PD
-24 W
-5822 1373 PD
-24 W
-5849 1383 PD
-24 W
-5878 1395 PD
-24 W
-5906 1404 PD
-24 W
-5933 1415 PD
-24 W
-5961 1431 PD
-24 W
-5985 1449 PD
-24 W
-6011 1466 PD
-24 W
-6038 1477 PD
-24 W
-6065 1492 PD
-24 W
-6078 1510 PD
-24 W
-6092 1527 PD
-24 W
-6111 1545 PD
-24 W
-6134 1564 PD
-24 W
-6145 1581 PD
-24 W
-6144 1582 PD
-24 W
-6149 1600 PD
-24 W
-6154 1618 PD
-24 W
-6161 1638 PD
-24 W
-6169 1656 PD
-24 W
-6179 1675 PD
-24 W
-6180 1694 PD
-24 W
-6183 1713 PD
-24 W
-6189 1731 PD
-24 W
-6184 1748 PD
-24 W
-6177 1767 PD
-24 W
-6172 1785 PD
-24 W
-6169 1804 PD
-24 W
-6171 1822 PD
-24 W
-6169 1839 PD
-24 W
-6158 1859 PD
-24 W
-6154 1877 PD
-24 W
-6164 1895 PD
-24 W
-6169 1915 PD
-24 W
-6169 1933 PD
-24 W
-6167 1952 PD
-24 W
-6164 1971 PD
-24 W
-6158 1990 PD
-24 W
-6154 2008 PD
-24 W
-6146 2027 PD
-24 W
-6140 2045 PD
-24 W
-6139 2064 PD
-24 W
-6146 2082 PD
-24 W
-6147 2100 PD
-24 W
-6136 2118 PD
-24 W
-6129 2136 PD
-24 W
-6136 2154 PD
-24 W
-6133 2173 PD
-24 W
-6127 2191 PD
-24 W
-6120 2209 PD
-24 W
-6110 2230 PD
-24 W
-6110 2229 PD
-24 W
-6083 2232 PD
-24 W
-6065 2253 PD
-24 W
-6063 2271 PD
-24 W
-6072 2289 PD
-24 W
-6096 2308 PD
-24 W
-6123 2322 PD
-24 W
-6151 2334 PD
-24 W
-6178 2345 PD
-24 W
-6206 2360 PD
-24 W
-6234 2374 PD
-24 W
-4743 398 PD
-24 W
-4761 416 PD
-24 W
-4761 433 PD
-24 W
-4762 452 PD
-24 W
-4768 470 PD
-24 W
-4763 488 PD
-24 W
-4753 505 PD
-24 W
-4755 516 PD
-24 W
-4749 523 PD
-24 W
-4758 541 PD
-24 W
-4741 561 PD
-24 W
-4745 580 PD
-24 W
-4724 598 PD
-24 W
-4720 616 PD
-24 W
-4749 629 PD
-24 W
-4776 636 PD
-24 W
-4797 654 PD
-24 W
-4824 670 PD
-24 W
-4851 686 PD
-24 W
-4878 689 PD
-24 W
-4907 696 PD
-24 W
-4920 714 PD
-24 W
-4927 732 PD
-24 W
-4949 749 PD
-24 W
-4965 768 PD
-24 W
-4980 785 PD
-24 W
-4978 804 PD
-24 W
-4972 821 PD
-24 W
-4973 840 PD
-24 W
-4994 858 PD
-24 W
-5021 863 PD
-24 W
-5049 871 PD
-24 W
-5073 890 PD
-24 W
-5089 908 PD
-24 W
-5113 925 PD
-24 W
-5140 937 PD
-24 W
-5167 943 PD
-24 W
-5195 949 PD
-24 W
-5223 959 PD
-24 W
-5251 971 PD
-24 W
-5278 983 PD
-24 W
-5307 992 PD
-24 W
-5334 1003 PD
-24 W
-5363 1016 PD
-24 W
-5375 1033 PD
-24 W
-5391 1051 PD
-24 W
-5418 1067 PD
-24 W
-5446 1079 PD
-24 W
-5462 1097 PD
-24 W
-5470 1115 PD
-24 W
-5480 1132 PD
-24 W
-5488 1151 PD
-24 W
-5493 1171 PD
-24 W
-5497 1190 PD
-24 W
-5500 1209 PD
-24 W
-5504 1228 PD
-24 W
-5505 1247 PD
-24 W
-5501 1265 PD
-24 W
-5504 1285 PD
-24 W
-5517 1302 PD
-24 W
-5544 1306 PD
-24 W
-5573 1306 PD
-24 W
-5601 1304 PD
-24 W
-5629 1303 PD
-24 W
-5656 1304 PD
-24 W
-5684 1305 PD
-24 W
-5712 1308 PD
-24 W
-5742 1312 PD
-24 W
-5771 1316 PD
-24 W
-5798 1319 PD
-24 W
-5828 1323 PD
-24 W
-5856 1328 PD
-24 W
-5885 1336 PD
-24 W
-5913 1346 PD
-24 W
-5940 1365 PD
-24 W
-5961 1383 PD
-24 W
-5984 1402 PD
-24 W
-6007 1421 PD
-24 W
-6033 1439 PD
-24 W
-6061 1457 PD
-24 W
-6086 1475 PD
-24 W
-6109 1494 PD
-24 W
-6128 1512 PD
-24 W
-6144 1531 PD
-24 W
-6160 1549 PD
-24 W
-6176 1567 PD
-24 W
-6194 1585 PD
-24 W
-6208 1604 PD
-24 W
-6219 1622 PD
-24 W
-6227 1640 PD
-24 W
-6235 1657 PD
-24 W
-6255 1697 PD
-24 W
-6252 1698 PD
-24 W
-6251 1717 PD
-24 W
-6249 1735 PD
-24 W
-6246 1753 PD
-24 W
-6241 1772 PD
-24 W
-6237 1791 PD
-24 W
-6234 1809 PD
-24 W
-6232 1827 PD
-24 W
-6230 1845 PD
-24 W
-6228 1863 PD
-24 W
-6229 1882 PD
-24 W
-6236 1900 PD
-24 W
-6242 1918 PD
-24 W
-6246 1937 PD
-24 W
-6244 1955 PD
-24 W
-6241 1972 PD
-24 W
-6236 1990 PD
-24 W
-6228 2011 PD
-24 W
-6219 2030 PD
-24 W
-6212 2048 PD
-24 W
-6204 2066 PD
-24 W
-6200 2084 PD
-24 W
-6202 2102 PD
-24 W
-6205 2120 PD
-24 W
-6205 2138 PD
-24 W
-6205 2157 PD
-24 W
-6200 2178 PD
-24 W
-6194 2196 PD
-24 W
-6183 2214 PD
-24 W
-6168 2232 PD
-24 W
-6151 2250 PD
-24 W
-4838 405 PD
-24 W
-4838 404 PD
-24 W
-4839 423 PD
-24 W
-4838 441 PD
-24 W
-4833 458 PD
-24 W
-4821 482 PD
-24 W
-4821 481 PD
-24 W
-4818 499 PD
-24 W
-4805 516 PD
-24 W
-4799 535 PD
-24 W
-4793 553 PD
-24 W
-4791 571 PD
-24 W
-4809 589 PD
-24 W
-4830 607 PD
-24 W
-4828 624 PD
-24 W
-4839 643 PD
-24 W
-4866 653 PD
-24 W
-4893 646 PD
-24 W
-4921 652 PD
-24 W
-4947 671 PD
-24 W
-4947 690 PD
-24 W
-4947 708 PD
-24 W
-4946 726 PD
-24 W
-4973 744 PD
-24 W
-5000 749 PD
-24 W
-5027 758 PD
-24 W
-5051 776 PD
-24 W
-5028 794 PD
-24 W
-5025 812 PD
-24 W
-5052 820 PD
-24 W
-5066 838 PD
-24 W
-5070 857 PD
-24 W
-5080 876 PD
-24 W
-5109 884 PD
-24 W
-5136 886 PD
-24 W
-5153 904 PD
-24 W
-5181 920 PD
-24 W
-5208 926 PD
-24 W
-5235 927 PD
-24 W
-5262 931 PD
-24 W
-5281 949 PD
-24 W
-5309 956 PD
-24 W
-5337 959 PD
-24 W
-5364 970 PD
-24 W
-5392 987 PD
-24 W
-5419 1000 PD
-24 W
-5446 1013 PD
-24 W
-5474 1030 PD
-24 W
-5500 1049 PD
-24 W
-5521 1067 PD
-24 W
-5533 1086 PD
-24 W
-5544 1104 PD
-24 W
-5554 1122 PD
-24 W
-5560 1140 PD
-24 W
-5561 1159 PD
-24 W
-5565 1179 PD
-24 W
-5566 1198 PD
-24 W
-5567 1216 PD
-24 W
-5568 1234 PD
-24 W
-5573 1252 PD
-24 W
-5600 1244 PD
-24 W
-5629 1239 PD
-24 W
-5658 1240 PD
-24 W
-5687 1244 PD
-24 W
-5714 1250 PD
-24 W
-5742 1254 PD
-24 W
-5770 1256 PD
-24 W
-5771 1238 PD
-24 W
-5744 1220 PD
-24 W
-5722 1202 PD
-24 W
-5705 1183 PD
-24 W
-5694 1164 PD
-24 W
-5681 1146 PD
-24 W
-5651 1129 PD
-24 W
-5624 1119 PD
-24 W
-5600 1100 PD
-24 W
-5587 1082 PD
-24 W
-5575 1064 PD
-24 W
-5562 1046 PD
-24 W
-5546 1028 PD
-24 W
-5529 1009 PD
-24 W
-5514 991 PD
-24 W
-5500 973 PD
-24 W
-5486 954 PD
-24 W
-5476 936 PD
-24 W
-5465 916 PD
-24 W
-5459 898 PD
-24 W
-5457 880 PD
-24 W
-5455 863 PD
-24 W
-5453 844 PD
-24 W
-5448 826 PD
-24 W
-5442 808 PD
-24 W
-5437 789 PD
-24 W
-5433 771 PD
-24 W
-5428 752 PD
-24 W
-5422 733 PD
-24 W
-5420 715 PD
-24 W
-5422 697 PD
-24 W
-5449 680 PD
-24 W
-5058 414 PD
-24 W
-5056 414 PD
-24 W
-5029 425 PD
-24 W
-5023 444 PD
-24 W
-5026 463 PD
-24 W
-5026 482 PD
-24 W
-5004 500 PD
-24 W
-4997 518 PD
-24 W
-5024 532 PD
-24 W
-5029 550 PD
-24 W
-5056 558 PD
-24 W
-5082 573 PD
-24 W
-5110 585 PD
-24 W
-5123 567 PD
-24 W
-5115 549 PD
-24 W
-5112 530 PD
-24 W
-5114 513 PD
-24 W
-5115 495 PD
-24 W
-5119 476 PD
-24 W
-5119 458 PD
-24 W
-5104 440 PD
-24 W
-5076 426 PD
-24 W
-5049 418 PD
-gs 899 389 5357 4227 MR c np
-gr
-
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/glacier2.pdf b/doc/tutorial/images/glacier2.pdf
deleted file mode 100644
index eca23a0..0000000
Binary files a/doc/tutorial/images/glacier2.pdf and /dev/null differ
diff --git a/doc/tutorial/images/interpolation_1d_0.eps b/doc/tutorial/images/interpolation_1d_0.eps
deleted file mode 100755
index b83485c..0000000
--- a/doc/tutorial/images/interpolation_1d_0.eps
+++ /dev/null
@@ -1,359 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: interpolation_1d_0.eps
-%%CreationDate: 09/01/2004 09:49:24
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 59 199 558 583
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 59 199 558 583
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 498 340 5989 4614 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 562 4894 mt
-(-0.5) s
-3577 4615 mt 3577 4561 L
-3577 389 mt 3577 442 L
-3504 4894 mt
-(0) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6072 4894 mt
-(0.5) s
- 899 4262 mt 952 4262 L
-6255 4262 mt 6201 4262 L
- 718 4360 mt
-(0) s
- 899 3558 mt 952 3558 L
-6255 3558 mt 6201 3558 L
- 498 3656 mt
-(0.2) s
- 899 2854 mt 952 2854 L
-6255 2854 mt 6201 2854 L
- 498 2952 mt
-(0.4) s
- 899 2149 mt 952 2149 L
-6255 2149 mt 6201 2149 L
- 498 2247 mt
-(0.6) s
- 899 1445 mt 952 1445 L
-6255 1445 mt 6201 1445 L
- 498 1543 mt
-(0.8) s
- 899 741 mt 952 741 L
-6255 741 mt 6201 741 L
- 718 839 mt
-(1) s
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 388 5357 4228 MR c np
-24 w
-gr
-
-24 w
- 60 60 998 4262 FO
- 60 60 1642 4262 FO
- 60 60 2136 4262 FO
- 60 60 3071 4262 FO
- 60 60 3501 4262 FO
- 60 60 4149 2634 FO
- 60 60 4498 2196 FO
- 60 60 4980 1713 FO
- 60 60 5431 1332 FO
- 60 60 5987 921 FO
-gs 899 388 5357 4228 MR c np
-17 273 17 277 16 275 17 266 17 251 17 229 16 202 17 170
-17 132 17 92 16 50 17 5 17 -40 17 -82 16 -123 17 -160
-17 -193 17 -220 16 -241 17 -255 17 -262 16 -262 17 -255 17 -240
-17 -219 16 -192 17 -161 17 -124 17 -86 16 -46 17 -4 17 35
-17 74 16 109 17 141 17 167 17 188 16 203 17 212 17 214
-16 211 17 201 17 185 17 166 16 142 17 116 17 86 17 57
-16 27 17 -2 17 -28 17 -53 16 -72 17 -89 17 -101 17 -108
-16 -110 17 -107 17 -100 16 -89 17 -75 17 -58 17 -40 16 -19
-17 1 17 20 17 38 16 54 17 67 17 76 17 82 16 84
-17 81 17 76 17 65 16 52 17 36 17 17 16 -2 17 -22
-17 -44 17 -62 16 -81 17 -95 17 -109 17 -117 16 -122 17 -124
-17 -119 17 -113 16 -100 17 -86 17 -66 17 -46 16 -23 17 1
-17 26 17 50 16 72 4581 2797 100 MP stroke
-17 94 17 111 16 127 17 137 17 144 17 147 16 144 17 138
-17 127 17 113 16 93 17 73 17 49 17 23 16 -3 17 -29
-17 -55 17 -81 16 -103 17 -124 17 -142 16 -156 17 -167 17 -174
-17 -179 16 -178 17 -175 17 -169 17 -160 16 -149 17 -136 17 -122
-17 -107 16 -91 17 -77 17 -62 17 -49 16 -38 17 -27 17 -18
-16 -13 17 -7 17 -4 17 -3 16 -3 17 -4 17 -5 17 -9
-16 -11 17 -14 17 -17 17 -19 16 -21 17 -21 17 -21 17 -19
-16 -18 17 -14 17 -11 16 -7 17 -2 17 2 17 8 16 12
-17 15 17 19 17 22 16 23 17 23 17 23 17 22 16 19
-17 16 17 13 17 8 16 3 17 -2 17 -6 17 -10 16 -14
-17 -17 17 -20 16 -21 17 -21 17 -21 17 -19 16 -17 17 -14
-17 -10 17 -7 16 -2 17 2 17 6 17 9 16 13 17 14
-17 16 17 16 16 15 2924 4173 100 MP stroke
-17 13 17 11 16 8 17 4 17 -1 17 -6 16 -11 17 -15
-17 -20 17 -23 16 -26 17 -28 17 -28 17 -29 16 -26 17 -24
-17 -20 17 -15 16 -9 17 -3 17 4 16 11 17 17 17 23
-17 29 16 34 17 37 17 39 17 40 16 39 17 37 17 33
-17 29 16 23 17 16 17 9 17 1 16 -7 17 -13 17 -20
-16 -26 17 -30 17 -33 17 -35 16 -35 17 -33 17 -29 17 -25
-16 -19 17 -12 17 -3 17 5 16 13 17 21 17 29 17 36
-16 41 17 45 17 47 17 47 16 45 17 42 17 36 16 29
-17 21 17 11 17 0 16 -10 17 -21 17 -31 17 -40 16 -48
-17 -53 17 -58 17 -59 16 -59 17 -56 17 -50 17 -43 16 -33
-17 -22 17 -10 16 3 17 17 17 29 17 42 16 53 17 62
-17 68 17 73 16 74 17 73 17 68 17 60 16 51 17 38
-17 24 17 9 16 -8 1267 3709 100 MP stroke
-17 -23 17 -40 16 -53 17 -65 17 -75 17 -80 16 -82 17 -81
-17 -73 17 -63 16 -47 17 -28 17 -5 17 22 16 51 17 81
-17 112 17 144 16 174 17 201 17 226 16 247 899 3166 23 MP stroke
-DA
-17 -11 17 -11 16 -11 17 -11 17 -11 17 -12 16 -11 17 -11
-17 -11 17 -12 16 -11 17 -12 17 -11 17 -12 16 -11 17 -12
-17 -12 17 -11 16 -12 17 -12 17 -12 16 -12 17 -12 17 -11
-17 -12 16 -13 17 -12 17 -12 17 -12 16 -12 17 -12 17 -13
-17 -12 16 -13 17 -12 17 -13 17 -12 16 -13 17 -12 17 -13
-16 -13 17 -13 17 -13 17 -13 16 -13 17 -13 17 -13 17 -13
-16 -13 17 -14 17 -13 17 -13 16 -14 17 -13 17 -14 17 -14
-16 -14 17 -13 17 -14 16 -14 17 -14 17 -14 17 -14 16 -15
-17 -14 17 -14 17 -15 16 -14 17 -15 17 -15 17 -15 16 -14
-17 -15 17 -15 17 -16 16 -15 17 -15 17 -16 16 -15 17 -16
-17 -15 17 -16 16 -16 17 -16 17 -16 17 -17 16 -16 17 -16
-17 -17 17 -17 16 -16 17 -17 17 -18 17 -17 16 -17 17 -18
-17 -17 17 -18 16 -18 4581 2106 100 MP stroke
-17 -18 17 -18 16 -18 17 -19 17 -19 17 -18 16 -19 17 -20
-17 -19 17 -20 16 -19 17 -20 17 -21 17 -20 16 -21 17 -21
-17 -21 17 -21 16 -22 17 -22 17 -22 16 -22 17 -23 17 -23
-17 -23 16 -24 17 -24 17 -24 17 -25 16 -25 17 -26 17 -26
-17 -27 16 -27 17 -27 17 -28 17 -29 16 -29 17 -30 17 -31
-16 -32 17 -32 17 -33 17 -35 16 -35 17 -37 17 -38 17 -39
-16 -41 17 -43 17 -45 17 -48 16 -51 17 -54 17 -60 17 -66
-16 -74 17 -89 17 -115 16 -278 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 2924 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 1267 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 899 4262 23 MP stroke
-SO
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/interpolation_1d_0.pdf b/doc/tutorial/images/interpolation_1d_0.pdf
deleted file mode 100644
index 8a331f9..0000000
Binary files a/doc/tutorial/images/interpolation_1d_0.pdf and /dev/null differ
diff --git a/doc/tutorial/images/interpolation_1d_1.eps b/doc/tutorial/images/interpolation_1d_1.eps
deleted file mode 100755
index f05b9b2..0000000
--- a/doc/tutorial/images/interpolation_1d_1.eps
+++ /dev/null
@@ -1,359 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: interpolation_1d_1.eps
-%%CreationDate: 09/01/2004 09:49:24
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 59 199 558 583
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 59 199 558 583
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 498 340 5989 4614 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 562 4894 mt
-(-0.5) s
-3577 4615 mt 3577 4561 L
-3577 389 mt 3577 442 L
-3504 4894 mt
-(0) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6072 4894 mt
-(0.5) s
- 899 4262 mt 952 4262 L
-6255 4262 mt 6201 4262 L
- 718 4360 mt
-(0) s
- 899 3558 mt 952 3558 L
-6255 3558 mt 6201 3558 L
- 498 3656 mt
-(0.2) s
- 899 2854 mt 952 2854 L
-6255 2854 mt 6201 2854 L
- 498 2952 mt
-(0.4) s
- 899 2149 mt 952 2149 L
-6255 2149 mt 6201 2149 L
- 498 2247 mt
-(0.6) s
- 899 1445 mt 952 1445 L
-6255 1445 mt 6201 1445 L
- 498 1543 mt
-(0.8) s
- 899 741 mt 952 741 L
-6255 741 mt 6201 741 L
- 718 839 mt
-(1) s
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 388 5357 4228 MR c np
-24 w
-gr
-
-24 w
- 60 60 998 4262 FO
- 60 60 1642 4262 FO
- 60 60 2136 4262 FO
- 60 60 3071 4262 FO
- 60 60 3501 4262 FO
- 60 60 4149 2634 FO
- 60 60 4498 2196 FO
- 60 60 4980 1713 FO
- 60 60 5431 1332 FO
- 60 60 5987 921 FO
-gs 899 388 5357 4228 MR c np
-0 2 17 59 17 77 16 94 17 112 17 129 17 145 16 160
-17 173 17 185 16 194 899 3286 12 MP stroke
-17 206 17 208 16 207 17 203 17 196 17 187 16 176 17 162
-17 146 17 128 16 109 17 90 17 69 17 48 16 29 17 9
-17 -10 17 -26 16 -41 17 -55 17 -66 16 -74 17 -81 17 -84
-17 -86 16 -84 17 -81 17 -75 17 -68 16 -60 17 -49 17 -38
-17 -26 16 -15 17 -3 17 9 17 20 16 29 17 38 17 46
-16 51 17 56 17 59 17 60 16 60 17 58 17 55 17 50
-16 46 17 39 17 33 17 25 16 18 17 11 17 4 17 -3
-16 -9 17 -15 17 -20 16 -25 17 -28 17 -30 17 -33 16 -34
-17 -35 17 -35 17 -34 16 -34 17 -33 17 -32 17 -30 16 -30
-17 -28 17 -28 17 -27 16 -27 17 -26 17 -27 16 -26 17 -27
-17 -28 17 -28 16 -28 17 -29 17 -29 17 -29 16 -28 17 -28
-17 -27 17 -26 16 -23 17 -22 17 -18 17 -16 16 -13 17 -10
-17 -6 17 -3 16 0 4581 2233 100 MP stroke
-17 3 17 6 16 8 17 10 17 11 17 12 16 12 17 11
-17 9 17 8 16 5 17 1 17 -2 17 -8 16 -12 17 -17
-17 -23 17 -29 16 -34 17 -41 17 -45 16 -51 17 -56 17 -60
-17 -65 16 -68 17 -70 17 -74 17 -75 16 -76 17 -76 17 -77
-17 -76 16 -75 17 -74 17 -72 17 -69 16 -67 17 -65 17 -61
-16 -58 17 -55 17 -52 17 -48 16 -46 17 -42 17 -38 17 -36
-16 -32 17 -30 17 -27 17 -24 16 -21 17 -19 17 -16 17 -15
-16 -12 17 -10 17 -8 16 -6 17 -5 17 -4 17 -2 16 -1
-17 0 17 0 17 1 16 2 17 2 17 2 17 2 16 2
-17 2 17 1 17 1 16 1 17 0 17 0 17 0 16 -1
-17 -1 17 -2 16 -1 17 -2 17 -2 17 -1 16 -2 17 -2
-17 -1 17 -1 16 -1 17 -1 17 0 17 0 16 0 17 1
-17 1 17 0 16 1 2924 4261 100 MP stroke
-17 1 17 2 16 1 17 1 17 0 17 1 16 1 17 0
-17 1 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 1 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 -1 17 0 17 -1 16 -1 17 -1 17 -2
-17 -1 16 -2 17 -2 17 -1 17 -2 16 -1 17 -2 17 -1
-16 0 17 0 17 0 17 1 16 2 17 2 17 3 17 3
-16 3 17 4 17 4 17 4 16 3 17 4 17 3 17 2
-16 2 17 0 17 0 17 -1 16 -3 17 -3 17 -4 16 -5
-17 -5 17 -6 17 -5 16 -6 17 -5 17 -4 17 -2 16 -2
-17 1 17 2 17 5 16 6 17 9 17 10 17 13 16 14
-17 15 17 15 16 16 17 15 17 13 17 12 16 8 17 5
-17 1 17 -3 16 -9 17 -15 17 -20 17 -25 16 -32 17 -36
-17 -41 17 -45 16 -47 1267 4394 100 MP stroke
-17 -49 17 -49 16 -47 17 -44 14 -33 1186 4616 6 MP stroke
-DA
-17 -11 17 -11 16 -11 17 -11 17 -11 17 -12 16 -11 17 -11
-17 -11 17 -12 16 -11 17 -12 17 -11 17 -12 16 -11 17 -12
-17 -12 17 -11 16 -12 17 -12 17 -12 16 -12 17 -12 17 -11
-17 -12 16 -13 17 -12 17 -12 17 -12 16 -12 17 -12 17 -13
-17 -12 16 -13 17 -12 17 -13 17 -12 16 -13 17 -12 17 -13
-16 -13 17 -13 17 -13 17 -13 16 -13 17 -13 17 -13 17 -13
-16 -13 17 -14 17 -13 17 -13 16 -14 17 -13 17 -14 17 -14
-16 -14 17 -13 17 -14 16 -14 17 -14 17 -14 17 -14 16 -15
-17 -14 17 -14 17 -15 16 -14 17 -15 17 -15 17 -15 16 -14
-17 -15 17 -15 17 -16 16 -15 17 -15 17 -16 16 -15 17 -16
-17 -15 17 -16 16 -16 17 -16 17 -16 17 -17 16 -16 17 -16
-17 -17 17 -17 16 -16 17 -17 17 -18 17 -17 16 -17 17 -18
-17 -17 17 -18 16 -18 4581 2106 100 MP stroke
-17 -18 17 -18 16 -18 17 -19 17 -19 17 -18 16 -19 17 -20
-17 -19 17 -20 16 -19 17 -20 17 -21 17 -20 16 -21 17 -21
-17 -21 17 -21 16 -22 17 -22 17 -22 16 -22 17 -23 17 -23
-17 -23 16 -24 17 -24 17 -24 17 -25 16 -25 17 -26 17 -26
-17 -27 16 -27 17 -27 17 -28 17 -29 16 -29 17 -30 17 -31
-16 -32 17 -32 17 -33 17 -35 16 -35 17 -37 17 -38 17 -39
-16 -41 17 -43 17 -45 17 -48 16 -51 17 -54 17 -60 17 -66
-16 -74 17 -89 17 -115 16 -278 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 2924 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 1267 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 899 4262 23 MP stroke
-SO
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/interpolation_1d_1.pdf b/doc/tutorial/images/interpolation_1d_1.pdf
deleted file mode 100644
index 37007c3..0000000
Binary files a/doc/tutorial/images/interpolation_1d_1.pdf and /dev/null differ
diff --git a/doc/tutorial/images/interpolation_1d_2.eps b/doc/tutorial/images/interpolation_1d_2.eps
deleted file mode 100755
index e39b28e..0000000
--- a/doc/tutorial/images/interpolation_1d_2.eps
+++ /dev/null
@@ -1,357 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: interpolation_1d_2.eps
-%%CreationDate: 09/01/2004 09:49:25
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 59 199 558 583
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 59 199 558 583
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 498 340 5989 4614 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 562 4894 mt
-(-0.5) s
-3577 4615 mt 3577 4561 L
-3577 389 mt 3577 442 L
-3504 4894 mt
-(0) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6072 4894 mt
-(0.5) s
- 899 4262 mt 952 4262 L
-6255 4262 mt 6201 4262 L
- 718 4360 mt
-(0) s
- 899 3558 mt 952 3558 L
-6255 3558 mt 6201 3558 L
- 498 3656 mt
-(0.2) s
- 899 2854 mt 952 2854 L
-6255 2854 mt 6201 2854 L
- 498 2952 mt
-(0.4) s
- 899 2149 mt 952 2149 L
-6255 2149 mt 6201 2149 L
- 498 2247 mt
-(0.6) s
- 899 1445 mt 952 1445 L
-6255 1445 mt 6201 1445 L
- 498 1543 mt
-(0.8) s
- 899 741 mt 952 741 L
-6255 741 mt 6201 741 L
- 718 839 mt
-(1) s
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 388 5357 4228 MR c np
-24 w
-gr
-
-24 w
- 60 60 998 4262 FO
- 60 60 1642 4262 FO
- 60 60 2136 4262 FO
- 60 60 3071 4262 FO
- 60 60 3501 4262 FO
- 60 60 4149 2634 FO
- 60 60 4498 2196 FO
- 60 60 4980 1713 FO
- 60 60 5431 1332 FO
- 60 60 5987 921 FO
-gs 899 388 5357 4228 MR c np
-17 105 16 114 17 124 17 134 17 142 16 150 17 157 17 163
-16 167 899 3360 10 MP stroke
-17 174 17 176 16 177 17 175 17 174 17 170 16 166 17 160
-17 155 17 146 16 139 17 130 17 120 17 110 16 99 17 88
-17 78 17 66 16 56 17 44 17 34 16 24 17 14 17 5
-17 -4 16 -11 17 -19 17 -25 17 -30 16 -35 17 -39 17 -42
-17 -45 16 -46 17 -46 17 -48 17 -46 16 -46 17 -44 17 -43
-16 -40 17 -38 17 -36 17 -33 16 -30 17 -27 17 -25 17 -22
-16 -19 17 -17 17 -16 17 -13 16 -12 17 -10 17 -10 17 -9
-16 -8 17 -9 17 -8 16 -9 17 -9 17 -10 17 -11 16 -11
-17 -13 17 -14 17 -15 16 -16 17 -17 17 -19 17 -19 16 -21
-17 -21 17 -23 17 -23 16 -23 17 -24 17 -24 16 -24 17 -25
-17 -24 17 -23 16 -24 17 -22 17 -23 17 -21 16 -20 17 -20
-17 -19 17 -17 16 -17 17 -15 17 -15 17 -13 16 -13 17 -11
-17 -11 17 -10 16 -9 4581 2157 100 MP stroke
-17 -8 17 -8 16 -8 17 -8 17 -8 17 -7 16 -9 17 -8
-17 -10 17 -10 16 -11 17 -13 17 -14 17 -15 16 -18 17 -19
-17 -21 17 -23 16 -25 17 -28 17 -30 16 -32 17 -35 17 -37
-17 -39 16 -41 17 -44 17 -46 17 -48 16 -49 17 -52 17 -52
-17 -54 16 -55 17 -56 17 -57 17 -57 16 -57 17 -57 17 -57
-16 -56 17 -56 17 -55 17 -53 16 -52 17 -51 17 -49 17 -47
-16 -45 17 -43 17 -41 17 -39 16 -36 17 -34 17 -32 17 -29
-16 -27 17 -25 17 -23 16 -20 17 -18 17 -16 17 -15 16 -12
-17 -11 17 -9 17 -7 16 -6 17 -5 17 -3 17 -2 16 -2
-17 0 17 0 17 1 16 1 17 2 17 2 17 3 16 2
-17 3 17 3 16 3 17 3 17 3 17 3 16 3 17 3
-17 2 17 2 16 2 17 2 17 2 17 2 16 1 17 1
-17 1 17 1 16 0 2924 4251 100 MP stroke
-17 1 17 0 16 0 17 0 17 0 17 -1 16 0 17 0
-17 -1 17 -1 16 0 17 -1 17 -1 17 -1 16 -1 17 -1
-17 -1 17 -1 16 -1 17 -1 17 -2 16 -1 17 -1 17 -1
-17 -1 16 -1 17 -1 17 0 17 -1 16 -1 17 0 17 -1
-17 0 16 0 17 0 17 0 17 0 16 1 17 0 17 1
-16 1 17 0 17 2 17 1 16 1 17 2 17 2 17 2
-16 2 17 2 17 2 17 3 16 3 17 3 17 3 17 4
-16 3 17 4 17 3 17 4 16 3 17 4 17 3 16 3
-17 3 17 1 17 2 16 0 17 -1 17 -2 17 -3 16 -5
-17 -6 17 -9 17 -10 16 -13 17 -15 17 -18 17 -21 16 -23
-17 -26 17 -29 16 -31 17 -34 17 -37 17 -39 16 -41 17 -42
-2 -6 1449 4616 90 MP stroke
-DA
-17 -11 17 -11 16 -11 17 -11 17 -11 17 -12 16 -11 17 -11
-17 -11 17 -12 16 -11 17 -12 17 -11 17 -12 16 -11 17 -12
-17 -12 17 -11 16 -12 17 -12 17 -12 16 -12 17 -12 17 -11
-17 -12 16 -13 17 -12 17 -12 17 -12 16 -12 17 -12 17 -13
-17 -12 16 -13 17 -12 17 -13 17 -12 16 -13 17 -12 17 -13
-16 -13 17 -13 17 -13 17 -13 16 -13 17 -13 17 -13 17 -13
-16 -13 17 -14 17 -13 17 -13 16 -14 17 -13 17 -14 17 -14
-16 -14 17 -13 17 -14 16 -14 17 -14 17 -14 17 -14 16 -15
-17 -14 17 -14 17 -15 16 -14 17 -15 17 -15 17 -15 16 -14
-17 -15 17 -15 17 -16 16 -15 17 -15 17 -16 16 -15 17 -16
-17 -15 17 -16 16 -16 17 -16 17 -16 17 -17 16 -16 17 -16
-17 -17 17 -17 16 -16 17 -17 17 -18 17 -17 16 -17 17 -18
-17 -17 17 -18 16 -18 4581 2106 100 MP stroke
-17 -18 17 -18 16 -18 17 -19 17 -19 17 -18 16 -19 17 -20
-17 -19 17 -20 16 -19 17 -20 17 -21 17 -20 16 -21 17 -21
-17 -21 17 -21 16 -22 17 -22 17 -22 16 -22 17 -23 17 -23
-17 -23 16 -24 17 -24 17 -24 17 -25 16 -25 17 -26 17 -26
-17 -27 16 -27 17 -27 17 -28 17 -29 16 -29 17 -30 17 -31
-16 -32 17 -32 17 -33 17 -35 16 -35 17 -37 17 -38 17 -39
-16 -41 17 -43 17 -45 17 -48 16 -51 17 -54 17 -60 17 -66
-16 -74 17 -89 17 -115 16 -278 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 2924 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 1267 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 899 4262 23 MP stroke
-SO
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/interpolation_1d_2.pdf b/doc/tutorial/images/interpolation_1d_2.pdf
deleted file mode 100644
index 4dae8c5..0000000
Binary files a/doc/tutorial/images/interpolation_1d_2.pdf and /dev/null differ
diff --git a/doc/tutorial/images/interpolation_1d_3.eps b/doc/tutorial/images/interpolation_1d_3.eps
deleted file mode 100755
index 64fffd9..0000000
--- a/doc/tutorial/images/interpolation_1d_3.eps
+++ /dev/null
@@ -1,357 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: interpolation_1d_3.eps
-%%CreationDate: 09/01/2004 09:49:25
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 59 199 558 583
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 59 199 558 583
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 498 340 5989 4614 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 562 4894 mt
-(-0.5) s
-3577 4615 mt 3577 4561 L
-3577 389 mt 3577 442 L
-3504 4894 mt
-(0) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6072 4894 mt
-(0.5) s
- 899 4262 mt 952 4262 L
-6255 4262 mt 6201 4262 L
- 718 4360 mt
-(0) s
- 899 3558 mt 952 3558 L
-6255 3558 mt 6201 3558 L
- 498 3656 mt
-(0.2) s
- 899 2854 mt 952 2854 L
-6255 2854 mt 6201 2854 L
- 498 2952 mt
-(0.4) s
- 899 2149 mt 952 2149 L
-6255 2149 mt 6201 2149 L
- 498 2247 mt
-(0.6) s
- 899 1445 mt 952 1445 L
-6255 1445 mt 6201 1445 L
- 498 1543 mt
-(0.8) s
- 899 741 mt 952 741 L
-6255 741 mt 6201 741 L
- 718 839 mt
-(1) s
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 388 5357 4228 MR c np
-24 w
-gr
-
-24 w
- 60 60 998 4262 FO
- 60 60 1642 4262 FO
- 60 60 2136 4262 FO
- 60 60 3071 4262 FO
- 60 60 3501 4262 FO
- 60 60 4149 2634 FO
- 60 60 4498 2196 FO
- 60 60 4980 1713 FO
- 60 60 5431 1332 FO
- 60 60 5987 921 FO
-gs 899 388 5357 4228 MR c np
-15 97 16 119 17 127 17 136 17 142 16 149 17 155 17 160
-16 164 899 3367 10 MP stroke
-6 -6 16 -27 17 -32 17 -39 17 -43 16 -47 17 -50 17 -53
-17 -55 16 -56 17 -58 17 -57 16 -57 17 -57 17 -55 17 -53
-16 -51 17 -49 17 -47 17 -43 16 -41 17 -37 17 -35 17 -31
-16 -29 17 -25 17 -22 17 -20 16 -17 17 -15 17 -13 16 -11
-17 -9 17 -8 17 -6 16 -6 17 -5 17 -4 17 -5 16 -4
-17 -5 17 -5 17 -5 16 -6 17 -8 17 -7 17 -9 16 -10
-17 -11 17 -12 16 -13 17 -15 17 -15 17 -16 16 -16 17 -18
-17 -18 17 -18 16 -19 17 -20 17 -19 17 -20 16 -20 17 -19
-17 -20 17 -19 16 -18 17 -19 17 -18 17 -17 16 -17 17 -17
-17 -16 16 -16 17 -15 17 -15 17 -15 16 -15 17 -15 17 -15
-17 -15 16 -15 17 -16 17 -16 17 -17 16 -18 17 -19 17 -21
-17 -21 16 -23 17 -24 17 -25 16 -28 17 -29 17 -30 17 -33
-16 -34 17 -36 17 -38 4112 2715 100 MP stroke
-17 -40 16 -41 17 -43 17 -44 17 -46 16 -48 17 -48 17 -50
-17 -50 16 -52 17 -52 17 -52 16 -53 17 -53 17 -53 17 -52
-16 -52 17 -52 17 -50 17 -50 16 -48 17 -47 17 -46 17 -44
-16 -42 17 -41 17 -39 17 -36 16 -35 17 -32 17 -30 16 -28
-17 -26 17 -23 17 -22 16 -19 17 -17 17 -15 17 -13 16 -11
-17 -9 17 -7 17 -6 16 -4 17 -2 17 -1 17 0 16 1
-17 2 17 3 17 4 16 5 17 5 17 6 16 6 17 6
-17 6 17 7 16 6 17 6 17 7 17 6 16 5 17 6
-17 5 17 4 16 5 17 3 17 3 17 3 16 2 17 2
-17 1 16 1 17 0 17 0 17 -1 16 -1 17 -2 17 -2
-17 -2 16 -3 17 -3 17 -4 17 -3 16 -4 17 -4 17 -5
-17 -4 16 -5 17 -4 17 -5 16 -4 17 -5 17 -4 17 -5
-16 -4 17 -3 17 -4 2455 4304 100 MP stroke
-17 -3 16 -3 17 -2 17 -2 17 -2 16 0 17 -1 17 1
-17 1 16 2 17 2 17 4 16 4 17 5 17 5 17 7
-16 7 17 8 17 8 17 10 16 9 17 11 17 11 17 11
-16 11 17 12 17 11 17 12 16 11 17 10 17 10 17 9
-16 8 17 7 17 6 16 3 17 2 17 0 17 -2 16 -4
-17 -8 17 -10 17 -12 16 -16 17 -19 17 -22 17 -25 16 -28
-17 -32 17 -34 17 -38 16 -40 17 -43 17 -46 16 -47 17 -49
-14 -42 1504 4616 58 MP stroke
-17 170 17 171 16 172 17 171 17 170 17 167 16 165 17 160
-17 155 17 149 16 142 17 136 17 127 17 119 16 109 17 101
-17 91 17 80 16 71 17 61 17 50 16 41 17 30 4 4
-5849 388 25 MP stroke
-DA
-17 -11 17 -11 16 -11 17 -11 17 -11 17 -12 16 -11 17 -11
-17 -11 17 -12 16 -11 17 -12 17 -11 17 -12 16 -11 17 -12
-17 -12 17 -11 16 -12 17 -12 17 -12 16 -12 17 -12 17 -11
-17 -12 16 -13 17 -12 17 -12 17 -12 16 -12 17 -12 17 -13
-17 -12 16 -13 17 -12 17 -13 17 -12 16 -13 17 -12 17 -13
-16 -13 17 -13 17 -13 17 -13 16 -13 17 -13 17 -13 17 -13
-16 -13 17 -14 17 -13 17 -13 16 -14 17 -13 17 -14 17 -14
-16 -14 17 -13 17 -14 16 -14 17 -14 17 -14 17 -14 16 -15
-17 -14 17 -14 17 -15 16 -14 17 -15 17 -15 17 -15 16 -14
-17 -15 17 -15 17 -16 16 -15 17 -15 17 -16 16 -15 17 -16
-17 -15 17 -16 16 -16 17 -16 17 -16 17 -17 16 -16 17 -16
-17 -17 17 -17 16 -16 17 -17 17 -18 17 -17 16 -17 17 -18
-17 -17 17 -18 16 -18 4581 2106 100 MP stroke
-17 -18 17 -18 16 -18 17 -19 17 -19 17 -18 16 -19 17 -20
-17 -19 17 -20 16 -19 17 -20 17 -21 17 -20 16 -21 17 -21
-17 -21 17 -21 16 -22 17 -22 17 -22 16 -22 17 -23 17 -23
-17 -23 16 -24 17 -24 17 -24 17 -25 16 -25 17 -26 17 -26
-17 -27 16 -27 17 -27 17 -28 17 -29 16 -29 17 -30 17 -31
-16 -32 17 -32 17 -33 17 -35 16 -35 17 -37 17 -38 17 -39
-16 -41 17 -43 17 -45 17 -48 16 -51 17 -54 17 -60 17 -66
-16 -74 17 -89 17 -115 16 -278 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 2924 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 1267 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 899 4262 23 MP stroke
-SO
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/interpolation_1d_3.pdf b/doc/tutorial/images/interpolation_1d_3.pdf
deleted file mode 100644
index d545f81..0000000
Binary files a/doc/tutorial/images/interpolation_1d_3.pdf and /dev/null differ
diff --git a/doc/tutorial/images/interpolation_1d_4.eps b/doc/tutorial/images/interpolation_1d_4.eps
deleted file mode 100755
index d038dc2..0000000
--- a/doc/tutorial/images/interpolation_1d_4.eps
+++ /dev/null
@@ -1,356 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: interpolation_1d_4.eps
-%%CreationDate: 09/01/2004 09:49:25
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 59 199 558 583
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 59 199 558 583
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 498 340 5989 4614 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 562 4894 mt
-(-0.5) s
-3577 4615 mt 3577 4561 L
-3577 389 mt 3577 442 L
-3504 4894 mt
-(0) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6072 4894 mt
-(0.5) s
- 899 4262 mt 952 4262 L
-6255 4262 mt 6201 4262 L
- 718 4360 mt
-(0) s
- 899 3558 mt 952 3558 L
-6255 3558 mt 6201 3558 L
- 498 3656 mt
-(0.2) s
- 899 2854 mt 952 2854 L
-6255 2854 mt 6201 2854 L
- 498 2952 mt
-(0.4) s
- 899 2149 mt 952 2149 L
-6255 2149 mt 6201 2149 L
- 498 2247 mt
-(0.6) s
- 899 1445 mt 952 1445 L
-6255 1445 mt 6201 1445 L
- 498 1543 mt
-(0.8) s
- 899 741 mt 952 741 L
-6255 741 mt 6201 741 L
- 718 839 mt
-(1) s
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 388 5357 4228 MR c np
-24 w
-gr
-
-24 w
- 60 60 998 4262 FO
- 60 60 1642 4262 FO
- 60 60 2136 4262 FO
- 60 60 3071 4262 FO
- 60 60 3501 4262 FO
- 60 60 4149 2634 FO
- 60 60 4498 2196 FO
- 60 60 4980 1713 FO
- 60 60 5431 1332 FO
- 60 60 5987 921 FO
-gs 899 388 5357 4228 MR c np
-4 23 17 98 16 107 17 116 17 125 17 134 16 142 17 149
-17 155 16 161 899 3406 11 MP stroke
-17 169 17 172 16 174 17 173 17 174 17 171 16 169 17 164
-17 159 17 153 16 147 17 138 17 129 17 121 16 110 17 101
-17 90 17 79 16 68 17 57 17 46 16 37 17 25 17 17
-17 7 16 -2 17 -10 17 -17 17 -24 16 -31 17 -35 17 -40
-17 -44 16 -47 17 -49 17 -51 17 -53 16 -53 17 -54 17 -53
-16 -52 17 -51 17 -50 17 -47 16 -46 17 -44 17 -42 17 -39
-16 -37 17 -34 17 -31 17 -30 16 -26 17 -25 17 -22 17 -20
-16 -17 17 -16 17 -14 16 -13 17 -11 17 -9 17 -9 16 -7
-17 -7 17 -6 17 -6 16 -5 17 -5 17 -5 17 -6 16 -6
-17 -6 17 -7 17 -8 16 -8 17 -9 17 -11 16 -11 17 -13
-17 -13 17 -14 16 -16 17 -16 17 -17 17 -18 16 -19 17 -19
-17 -19 17 -20 16 -20 17 -21 17 -20 17 -20 16 -20 17 -19
-17 -20 17 -19 16 -18 4581 2112 100 MP stroke
-17 -18 17 -17 16 -17 17 -17 17 -16 17 -16 16 -16 17 -16
-17 -15 17 -16 16 -16 17 -17 17 -16 17 -18 16 -18 17 -19
-17 -20 17 -22 16 -22 17 -24 17 -25 16 -26 17 -28 17 -30
-17 -31 16 -33 17 -34 17 -36 17 -37 16 -39 17 -41 17 -42
-17 -43 16 -45 17 -45 17 -47 17 -48 16 -49 17 -49 17 -50
-16 -51 17 -50 17 -51 17 -52 16 -50 17 -51 17 -50 17 -50
-16 -49 17 -48 17 -47 17 -46 16 -44 17 -43 17 -42 17 -39
-16 -38 17 -36 17 -34 16 -31 17 -30 17 -27 17 -25 16 -22
-17 -20 17 -18 17 -16 16 -14 17 -11 17 -9 17 -8 16 -5
-17 -3 17 -2 17 0 16 1 17 3 17 3 17 5 16 6
-17 6 17 7 16 8 17 8 17 8 17 8 16 8 17 8
-17 8 17 7 16 7 17 7 17 6 17 5 16 5 17 4
-17 3 17 3 16 2 2924 4222 100 MP stroke
-17 1 17 1 16 1 17 -1 17 0 17 -2 16 -1 17 -2
-17 -2 17 -3 16 -2 17 -3 17 -3 17 -3 16 -3 17 -2
-17 -3 17 -3 16 -3 17 -3 17 -3 16 -3 17 -2 17 -3
-17 -3 16 -2 17 -3 17 -3 17 -2 16 -3 17 -2 17 -2
-17 -2 16 -1 17 -2 17 -1 17 0 16 0 17 1 17 1
-16 2 17 3 17 3 17 4 16 6 17 6 17 6 17 8
-16 8 17 10 17 9 17 10 16 11 17 11 17 10 17 11
-16 10 17 10 17 9 17 9 16 7 17 6 17 5 16 3
-17 1 17 -1 17 -2 16 -5 17 -7 17 -10 17 -12 16 -14
-17 -17 17 -19 17 -22 16 -24 17 -26 17 -29 17 -31 16 -32
-17 -35 17 -36 16 -37 17 -39 17 -40 17 -40 9 -23 1475 4616 88 MP stroke
-DA
-17 -11 17 -11 16 -11 17 -11 17 -11 17 -12 16 -11 17 -11
-17 -11 17 -12 16 -11 17 -12 17 -11 17 -12 16 -11 17 -12
-17 -12 17 -11 16 -12 17 -12 17 -12 16 -12 17 -12 17 -11
-17 -12 16 -13 17 -12 17 -12 17 -12 16 -12 17 -12 17 -13
-17 -12 16 -13 17 -12 17 -13 17 -12 16 -13 17 -12 17 -13
-16 -13 17 -13 17 -13 17 -13 16 -13 17 -13 17 -13 17 -13
-16 -13 17 -14 17 -13 17 -13 16 -14 17 -13 17 -14 17 -14
-16 -14 17 -13 17 -14 16 -14 17 -14 17 -14 17 -14 16 -15
-17 -14 17 -14 17 -15 16 -14 17 -15 17 -15 17 -15 16 -14
-17 -15 17 -15 17 -16 16 -15 17 -15 17 -16 16 -15 17 -16
-17 -15 17 -16 16 -16 17 -16 17 -16 17 -17 16 -16 17 -16
-17 -17 17 -17 16 -16 17 -17 17 -18 17 -17 16 -17 17 -18
-17 -17 17 -18 16 -18 4581 2106 100 MP stroke
-17 -18 17 -18 16 -18 17 -19 17 -19 17 -18 16 -19 17 -20
-17 -19 17 -20 16 -19 17 -20 17 -21 17 -20 16 -21 17 -21
-17 -21 17 -21 16 -22 17 -22 17 -22 16 -22 17 -23 17 -23
-17 -23 16 -24 17 -24 17 -24 17 -25 16 -25 17 -26 17 -26
-17 -27 16 -27 17 -27 17 -28 17 -29 16 -29 17 -30 17 -31
-16 -32 17 -32 17 -33 17 -35 16 -35 17 -37 17 -38 17 -39
-16 -41 17 -43 17 -45 17 -48 16 -51 17 -54 17 -60 17 -66
-16 -74 17 -89 17 -115 16 -278 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 2924 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 1267 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 899 4262 23 MP stroke
-SO
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/interpolation_1d_4.pdf b/doc/tutorial/images/interpolation_1d_4.pdf
deleted file mode 100644
index 8efa36f..0000000
Binary files a/doc/tutorial/images/interpolation_1d_4.pdf and /dev/null differ
diff --git a/doc/tutorial/images/interpolation_1d_5.eps b/doc/tutorial/images/interpolation_1d_5.eps
deleted file mode 100755
index 19b514c..0000000
--- a/doc/tutorial/images/interpolation_1d_5.eps
+++ /dev/null
@@ -1,357 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: interpolation_1d_5.eps
-%%CreationDate: 09/01/2004 09:49:25
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 59 199 558 583
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 59 199 558 583
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 498 340 5989 4614 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 562 4894 mt
-(-0.5) s
-3577 4615 mt 3577 4561 L
-3577 389 mt 3577 442 L
-3504 4894 mt
-(0) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6072 4894 mt
-(0.5) s
- 899 4262 mt 952 4262 L
-6255 4262 mt 6201 4262 L
- 718 4360 mt
-(0) s
- 899 3558 mt 952 3558 L
-6255 3558 mt 6201 3558 L
- 498 3656 mt
-(0.2) s
- 899 2854 mt 952 2854 L
-6255 2854 mt 6201 2854 L
- 498 2952 mt
-(0.4) s
- 899 2149 mt 952 2149 L
-6255 2149 mt 6201 2149 L
- 498 2247 mt
-(0.6) s
- 899 1445 mt 952 1445 L
-6255 1445 mt 6201 1445 L
- 498 1543 mt
-(0.8) s
- 899 741 mt 952 741 L
-6255 741 mt 6201 741 L
- 718 839 mt
-(1) s
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 388 5357 4228 MR c np
-24 w
-gr
-
-24 w
- 60 60 998 4262 FO
- 60 60 1642 4262 FO
- 60 60 2136 4262 FO
- 60 60 3071 4262 FO
- 60 60 3501 4262 FO
- 60 60 4149 2634 FO
- 60 60 4498 2196 FO
- 60 60 4980 1713 FO
- 60 60 5431 1332 FO
- 60 60 5987 921 FO
-gs 899 388 5357 4228 MR c np
-6 29 17 96 16 105 17 114 17 124 17 133 16 140 17 149
-17 155 16 160 899 3411 11 MP stroke
-17 170 17 172 16 174 17 175 17 174 17 172 16 169 17 165
-17 160 17 153 16 147 17 138 17 130 17 120 16 109 17 100
-17 89 17 77 16 67 17 56 17 45 16 34 17 25 17 14
-17 5 16 -3 17 -11 17 -19 17 -25 16 -31 17 -36 17 -40
-17 -44 16 -46 17 -49 17 -51 17 -52 16 -52 17 -52 17 -51
-16 -51 17 -49 17 -48 17 -46 16 -44 17 -42 17 -40 17 -37
-16 -35 17 -33 17 -31 17 -28 16 -25 17 -24 17 -21 17 -20
-16 -18 17 -15 17 -14 16 -13 17 -11 17 -10 17 -9 16 -8
-17 -7 17 -7 17 -6 16 -6 17 -6 17 -6 17 -6 16 -6
-17 -7 17 -7 17 -9 16 -8 17 -10 17 -11 16 -11 17 -13
-17 -13 17 -15 16 -15 17 -17 17 -17 17 -18 16 -18 17 -19
-17 -20 17 -20 16 -20 17 -20 17 -20 17 -20 16 -20 17 -20
-17 -19 17 -18 16 -19 4581 2113 100 MP stroke
-17 -17 17 -18 16 -17 17 -16 17 -16 17 -16 16 -16 17 -15
-17 -16 17 -16 16 -16 17 -16 17 -17 17 -17 16 -19 17 -19
-17 -20 17 -21 16 -23 17 -23 17 -25 16 -27 17 -28 17 -30
-17 -31 16 -33 17 -34 17 -36 17 -37 16 -39 17 -41 17 -42
-17 -43 16 -44 17 -46 17 -47 17 -47 16 -49 17 -49 17 -50
-16 -51 17 -50 17 -51 17 -52 16 -51 17 -50 17 -51 17 -49
-16 -50 17 -48 17 -47 17 -46 16 -44 17 -43 17 -42 17 -40
-16 -37 17 -36 17 -34 16 -32 17 -29 17 -27 17 -25 16 -22
-17 -20 17 -18 17 -16 16 -13 17 -11 17 -9 17 -7 16 -6
-17 -3 17 -2 17 0 16 2 17 2 17 4 17 5 16 6
-17 6 17 7 16 8 17 7 17 8 17 8 16 8 17 8
-17 7 17 7 16 7 17 6 17 6 17 5 16 4 17 4
-17 3 17 3 16 2 2924 4224 100 MP stroke
-17 1 17 1 16 0 17 0 17 -1 17 -1 16 -1 17 -2
-17 -2 17 -2 16 -2 17 -3 17 -2 17 -3 16 -2 17 -3
-17 -2 17 -3 16 -2 17 -2 17 -3 16 -2 17 -2 17 -2
-17 -2 16 -3 17 -2 17 -2 17 -2 16 -3 17 -2 17 -2
-17 -2 16 -1 17 -2 17 -1 17 -1 16 0 17 0 17 1
-16 1 17 2 17 3 17 4 16 4 17 5 17 6 17 7
-16 8 17 8 17 9 17 9 16 10 17 10 17 10 17 10
-16 9 17 9 17 9 17 8 16 7 17 5 17 5 16 3
-17 1 17 -1 17 -2 16 -5 17 -6 17 -9 17 -11 16 -13
-17 -16 17 -18 17 -20 16 -22 17 -24 17 -27 17 -28 16 -30
-17 -32 17 -34 16 -35 17 -36 17 -37 17 -38 16 -39 3 -7
-1465 4616 89 MP stroke
-DA
-17 -11 17 -11 16 -11 17 -11 17 -11 17 -12 16 -11 17 -11
-17 -11 17 -12 16 -11 17 -12 17 -11 17 -12 16 -11 17 -12
-17 -12 17 -11 16 -12 17 -12 17 -12 16 -12 17 -12 17 -11
-17 -12 16 -13 17 -12 17 -12 17 -12 16 -12 17 -12 17 -13
-17 -12 16 -13 17 -12 17 -13 17 -12 16 -13 17 -12 17 -13
-16 -13 17 -13 17 -13 17 -13 16 -13 17 -13 17 -13 17 -13
-16 -13 17 -14 17 -13 17 -13 16 -14 17 -13 17 -14 17 -14
-16 -14 17 -13 17 -14 16 -14 17 -14 17 -14 17 -14 16 -15
-17 -14 17 -14 17 -15 16 -14 17 -15 17 -15 17 -15 16 -14
-17 -15 17 -15 17 -16 16 -15 17 -15 17 -16 16 -15 17 -16
-17 -15 17 -16 16 -16 17 -16 17 -16 17 -17 16 -16 17 -16
-17 -17 17 -17 16 -16 17 -17 17 -18 17 -17 16 -17 17 -18
-17 -17 17 -18 16 -18 4581 2106 100 MP stroke
-17 -18 17 -18 16 -18 17 -19 17 -19 17 -18 16 -19 17 -20
-17 -19 17 -20 16 -19 17 -20 17 -21 17 -20 16 -21 17 -21
-17 -21 17 -21 16 -22 17 -22 17 -22 16 -22 17 -23 17 -23
-17 -23 16 -24 17 -24 17 -24 17 -25 16 -25 17 -26 17 -26
-17 -27 16 -27 17 -27 17 -28 17 -29 16 -29 17 -30 17 -31
-16 -32 17 -32 17 -33 17 -35 16 -35 17 -37 17 -38 17 -39
-16 -41 17 -43 17 -45 17 -48 16 -51 17 -54 17 -60 17 -66
-16 -74 17 -89 17 -115 16 -278 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 2924 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-17 0 16 0 17 0 17 0 17 0 16 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 17 0
-16 0 17 0 17 0 17 0 16 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 17 0 16 0 17 0 17 0 17 0 16 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 1267 4262 100 MP stroke
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 17 0 16 0 17 0
-17 0 17 0 16 0 17 0 17 0 16 0 899 4262 23 MP stroke
-SO
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/interpolation_1d_5.pdf b/doc/tutorial/images/interpolation_1d_5.pdf
deleted file mode 100644
index ef85ff8..0000000
Binary files a/doc/tutorial/images/interpolation_1d_5.pdf and /dev/null differ
diff --git a/doc/tutorial/images/linogram_grid.eps b/doc/tutorial/images/linogram_grid.eps
deleted file mode 100644
index cf8ddd8..0000000
--- a/doc/tutorial/images/linogram_grid.eps
+++ /dev/null
@@ -1,87 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
%%Title: (paper.dvi)
%%Version: 1 3
%%Creator: Adobe Acrobat 7.0
%%CreationDate: 20/10/06 15:23
%%DocumentData: Clean7Bit
%%LanguageLevel: 2
%ADO_ContainsXMP: MainFirst
%%BoundingBox: 363 364 478 463
%%HiResBoundingBox: 362.994 364.042 477.994 462.625
%%Pages: 0
%%DocumentProcessColors: Cyan Magenta Yellow Black
%%DocumentSuppliedResources:
%%+ procset (Adobe Acrobat - PDF operators) 1.2 0
%%+ procset (Adobe Acrobat - type operators) 1.2 0
%%EndComments
%%BeginProlog
%%EndProlog
%%BeginSetup
%ADOPrintSettings: L2 W0 VM op crd os scsa T h ef bg ucr sf ef r b fa pr seps ttf hb EF t2 irt Printer/PostScript Color Management 0
-
%%BeginResource: procset l2check 6.0 1
%%Copyright: Copyright 1993,2001 Adobe Systems Incorporated. All Rights Reserved.
systemdict /languagelevel known
{ systemdict /languagelevel get 1 eq }
{ true }
ifelse
{
initgraphics /Helvetica findfont 18 scalefont setfont
72 600 moveto (Error: This application does not support) dup show
72 580 moveto (printing to a PostScript Language Level 1 printer.) dup show
exch = =
/Times-Roman findfont 16 scalefont setfont
72 500 moveto (As a workaround, try selecting Print As Image from) show
72 480 moveto (the Advanced Print dialog.) show
showpage
quit
}
if
%%EndResource
%%BeginResource: file Pscript_CFF PSVER
userdict /ct_CffDict 6 dict put
ct_CffDict begin
/F0Subr
{
systemdict /internaldict known
{
1183615869 systemdict /internaldict get exec
/FlxProc known {save true} {false} ifelse
}
{
userdict /internaldict known not
{
userdict /internaldict
{
count 0 eq
{/internaldict errordict /invalidaccess get exec} if
dup type /integertype ne
{/internaldict errordict /invalidaccess get exec} if
dup 1183615869 eq
{pop 0}
{/internaldict errordict /invalidaccess get exec}
ifelse
}
dup 14 get 1 25 dict put
bind executeonly put
} if
1183615869 userdict /internaldict get exec
/FlxProc known {save true} {false} ifelse
} ifelse
[
systemdict /internaldict known not
{ 100 dict /begin cvx /mtx matrix /def cvx } if
systemdict /currentpacking known {currentpacking true setpacking} if
{
systemdict /internaldict known {
1183615869 systemdict /internaldict get exec
dup /$FlxDict known not {
dup dup length exch maxlength eq
{ pop userdict dup /$FlxDict known not
{ 100 dict begin /mtx matrix def
dup /$FlxDict currentdict put end } if }
{ 100 dict begin /mtx matrix def
dup /$FlxDict currentdict put end }
ifelse
} if /$FlxDict get begin } if
grestore
/exdef {exch def} def
/dmin exch abs 100 div def
/epX exdef /epY exdef
/c4y2 exdef /c4x2 exdef /c4y1 exdef /c4x1 exdef /c4y0 exdef /c4x0 exdef
/c3y2 exdef /c3x2 exdef /c3y1 exdef /c3x1 exdef /c3y0 exdef /c3x0 exdef
/c1y2 exdef /c1x2 exdef /c2x2 c4x2 def /c2y2 c4y2 def
/yflag c1y2 c3y2 sub abs c1x2 c3x2 sub abs gt def
/PickCoords {
{c1x0 c1y0 c1x1 c1y1 c1x2 c1y2 c2x0 c2y0 c2x1 c2y1 c2x2 c2y2}
{c3x0 c3y0 c3x1 c3y1 c3x2 c3y2 c4x0 c4y0 c4x1 c4y1 c4x2 c4y2}
ifelse
/y5 exdef /x5 exdef /y4 exdef /x4 exdef /y3 exdef /x3 exdef
/y2 exdef /x2 exdef /y1 exdef /x1 exdef /y0 exdef /x0 exdef
} def
mtx currentmatrix pop
mtx 0 get abs .00001 lt mtx 3 get abs .00001 lt or
{/flipXY -1 def}
{mtx 1 get abs .00001 lt mtx 2 get abs .00001 lt or
{/flipXY 1 def}
{/flipXY 0 def}
ifelse }
ifelse
/erosion 1 def
systemdict /internaldict known {
1183615869 systemdict /internaldict get exec dup
/erosion known
{/erosion get /erosion exch def}
{pop}
ifelse
} if
yflag
{
flipXY 0 eq c3y2 c4y2 eq or
{false PickCoords}
{
/shrink c3y2 c4y2 eq
{0}{c1y2 c4y2 sub c3y2 c4y2 sub div abs} ifelse def
/yshrink {c4y2 sub shrink mul c4y2 add} def
/c1y0 c3y0 yshrink def /c1y1 c3y1 yshrink def
/c2y0 c4y0 yshrink def /c2y1 c4y1 yshrink def
/c1x0 c3x0 def /c1x1 c3x1 def /c2x0 c4x0 def /c2x1 c4x1 def
/dY 0 c3y2 c1y2 sub round
dtransform flipXY 1 eq {exch} if pop abs def
dY dmin lt PickCoords
y2 c1y2 sub abs 0.001 gt {
c1x2 c1y2 transform flipXY 1 eq {exch} if
/cx exch def /cy exch def
/dY 0 y2 c1y2 sub round dtransform flipXY 1 eq {exch}
if pop def
dY round dup 0 ne
{/dY exdef }
{pop dY 0 lt {-1}{1} ifelse /dY exdef}
ifelse
/erode PaintType 2 ne erosion 0.5 ge and def
erode {/cy cy 0.5 sub def} if
/ey cy dY add def
/ey ey ceiling ey sub ey floor add def
erode {/ey ey 0.5 add def} if
ey cx flipXY 1 eq {exch} if itransform exch pop
y2 sub /eShift exch def
/y1 y1 eShift add def /y2 y2 eShift add def /y3 y3
eShift add def
} if
} ifelse
}
{
flipXY 0 eq c3x2 c4x2 eq or
{false PickCoords }
{ /shrink c3x2 c4x2 eq
{0}{c1x2 c4x2 sub c3x2 c4x2 sub div abs} ifelse def
/xshrink {c4x2 sub shrink mul c4x2 add} def
/c1x0 c3x0 xshrink def /c1x1 c3x1 xshrink def
/c2x0 c4x0 xshrink def /c2x1 c4x1 xshrink def
/c1y0 c3y0 def /c1y1 c3y1 def /c2y0 c4y0 def /c2y1 c4y1 def
/dX c3x2 c1x2 sub round 0 dtransform
flipXY -1 eq {exch} if pop abs def
dX dmin lt PickCoords
x2 c1x2 sub abs 0.001 gt {
c1x2 c1y2 transform flipXY -1 eq {exch} if
/cy exch def /cx exch def
/dX x2 c1x2 sub round 0 dtransform flipXY -1 eq {exch} if pop def
dX round dup 0 ne
{/dX exdef}
{pop dX 0 lt {-1}{1} ifelse /dX exdef}
ifelse
/erode PaintType 2 ne erosion .5 ge and def
erode {/cx cx .5 sub def} if
/ex cx dX add def
/ex ex ceiling ex sub ex floor add def
erode {/ex ex .5 add def} if
ex cy flipXY -1 eq {exch} if itransform pop
x2 sub /eShift exch def
/x1 x1 eShift add def /x2 x2 eShift add def /x3 x3 eShift add def
} if
} ifelse
} ifelse
x2 x5 eq y2 y5 eq or
{x5 y5 lineto }
{x0 y0 x1 y1 x2 y2 curveto
x3 y3 x4 y4 x5 y5 curveto}
ifelse
epY epX
}
systemdict /currentpacking known {exch setpacking} if
/exec cvx /end cvx
] cvx
executeonly
exch
{pop true exch restore}
{
systemdict /internaldict known not
{1183615869 userdict /internaldict get exec
exch /FlxProc exch put true}
{1183615869 systemdict /internaldict get exec
dup length exch maxlength eq
{false}
{1183615869 systemdict /internaldict get exec
exch /FlxProc exch put true}
ifelse}
ifelse
} ifelse
{
systemdict /internaldict known
{1183615869 systemdict /internaldict get exec /FlxProc get exec}
{1183615869 userdict /internaldict get exec /FlxProc get exec}
ifelse
} if
} executeonly def
/F1Subr
{gsave currentpoint newpath moveto} bind def
/F2Subr
{currentpoint grestore gsave currentpoint newpath moveto} bind def
/HSSubr
{
systemdict /internaldict known not
{pop 3}
{1183615869 systemdict /internaldict get exec
dup /startlock known
{/startlock get exec}
{dup /strtlck known
{/strtlck get exec}
{pop 3}
ifelse}
ifelse}
ifelse
} bind def
end
%%EndResource
/currentpacking where{pop currentpacking true setpacking}if
%%BeginResource: procset pdfvars 6.0 1
%%Copyright: Copyright 1987-2002 Adobe Systems Incorporated. All Rights Reserved.
%%Title: definition of dictionary of variables used by PDF & PDFText procsets
userdict /PDF 162 dict put
userdict /PDFVars 89 dict dup begin put
/docSetupDone false def
/InitAll 0 def
/TermAll 0 def
/DocInitAll 0 def
/DocTermAll 0 def
/_pdfEncodings 2 array def
/_pdf_str1 1 string def
/_pdf_i 0 def
/_pdf_na 0 def
/_pdf_showproc 0 def
/_italMtx [1 0 .212557 1 0 0] def
/_italMtx_WMode1 [1 -.212557 0 1 0 0] def
/_italMtxType0 [1 0 .1062785 1 0 0] def
/_italMtx_WMode1Type0 [1 -.1062785 0 1 0 0] def
/_basefont 0 def
/_basefonto 0 def
/_pdf_oldCIDInit null def
/_pdf_FontDirectory 30 dict def
/_categories 10 dict def
/_sa? true def
/_ColorSep5044? false def
/nulldict 0 dict def
/_processColors 0 def
/overprintstack null def
/_defaulttransfer currenttransfer def
/_defaultflatness currentflat def
/_defaulthalftone null def
/_defaultcolortransfer null def
/_defaultblackgeneration null def
/_defaultundercolorremoval null def
/_defaultcolortransfer null def
PDF begin
[/c/cs/cm/d/d0/f/h/i/j/J/l/m/M/n/q/Q/re/ri/S/sc/sh/Tf/w/W
/applyInterpFunc/applystitchFunc/domainClip/encodeInput
/initgs/int/limit/rangeClip
/defineRes/undefineRes/findRes/setSA/pl
/? /! /| /: /+ /GetGlyphDirectory
/pdf_flushFilters /pdf_readstring /pdf_dictOp /pdf_image /pdf_maskedImage
/pdf_shfill /pdf_sethalftone
] {null def} bind forall
end
end
%%EndResource
PDFVars begin PDF begin
%%BeginResource: procset pdfutil 6.0 1
%%Copyright: Copyright 1993-2001 Adobe Systems Incorporated. All Rights Reserved.
%%Title: Basic utilities used by other PDF procsets
/bd {bind def} bind def
/ld {load def} bd
/bld {
dup length dict begin
{ null def } forall
bind
end
def
} bd
/dd { PDFVars 3 1 roll put } bd
/xdd { exch dd } bd
/Level2?
systemdict /languagelevel known
{ systemdict /languagelevel get 2 ge } { false } ifelse
def
/Level1? Level2? not def
/Level3?
systemdict /languagelevel known
{systemdict /languagelevel get 3 eq } { false } ifelse
def
/getifknown {
2 copy known { get true } { pop pop false } ifelse
} bd
/here {
currentdict exch getifknown
} bd
/isdefined? { where { pop true } { false } ifelse } bd
%%EndResource
%%BeginResource: procset pdf 6.0 1
%%Copyright: Copyright 1998-2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: General operators for PDF, common to all Language Levels.
/cm { matrix astore concat } bd
/d /setdash ld
/f /fill ld
/h /closepath ld
/i {dup 0 eq {pop _defaultflatness} if setflat} bd
/j /setlinejoin ld
/J /setlinecap ld
/M /setmiterlimit ld
/n /newpath ld
/S /stroke ld
/w /setlinewidth ld
/W /clip ld
/sg /setgray ld
/initgs {
0 setgray
[] 0 d
0 j
0 J
10 M
1 w
false setSA
/_defaulttransfer load settransfer
0 i
/RelativeColorimetric ri
newpath
} bd
/int {
dup 2 index sub 3 index 5 index sub div 6 -2 roll sub mul
exch pop add exch pop
} bd
/limit {
dup 2 index le { exch } if pop
dup 2 index ge { exch } if pop
} bd
/domainClip {
Domain aload pop 3 2 roll
limit
} [/Domain] bld
/applyInterpFunc {
0 1 DimOut 1 sub
{
dup C0 exch get exch
dup C1 exch get exch
3 1 roll
1 index sub
3 index
N exp mul add
exch
currentdict /Range_lo known
{
dup Range_lo exch get exch
Range_hi exch get
3 2 roll limit
}
{
pop
}
ifelse
exch
} for
pop
} [/DimOut /C0 /C1 /N /Range_lo /Range_hi] bld
/encodeInput {
NumParts 1 sub
0 1 2 index
{
dup Bounds exch get
2 index gt
{ exit }
{ dup
3 index eq
{ exit }
{ pop } ifelse
} ifelse
} for
3 2 roll pop
dup Bounds exch get exch
dup 1 add Bounds exch get exch
2 mul
dup Encode exch get exch
1 add Encode exch get
int
} [/NumParts /Bounds /Encode] bld
/rangeClip {
exch dup Range_lo exch get
exch Range_hi exch get
3 2 roll
limit
} [/Range_lo /Range_hi] bld
/applyStitchFunc {
Functions exch get exec
currentdict /Range_lo known {
0 1 DimOut 1 sub {
DimOut 1 add -1 roll
rangeClip
} for
} if
} [/Functions /Range_lo /DimOut] bld
/pdf_flushfilters
{
aload length
{ dup status
1 index currentfile ne and
{ dup flushfile closefile }
{ pop }
ifelse
} repeat
} bd
/pdf_readstring
{
1 index dup length 1 sub get
exch readstring pop
exch pdf_flushfilters
} bind def
/pdf_dictOp
{
3 2 roll
10 dict copy
begin
_Filters dup length 1 sub get def
currentdict exch exec
_Filters pdf_flushfilters
end
} [/_Filters] bld
/pdf_imagemask {{imagemask} /DataSource pdf_dictOp} bd
/pdf_shfill {{sh} /DataSource pdf_dictOp} bd
/pdf_sethalftone {{sethalftone} /Thresholds pdf_dictOp} bd
/masks [ 2#10000000
2#11000000
2#11100000
2#11110000
2#11111000
2#11111100
2#11111110
2#11111111 ] def
/addNBits
{
/numBits exch def
/byte exch def
OutBitOffset numBits add 8 gt
{
byte OutBitOffset 8 sub bitshift
OutBuffer OutByteIndex get or
OutBuffer OutByteIndex 3 -1 roll put
/OutByteIndex OutByteIndex 1 add def
/bitsDoneSoFar OutBitOffset def
/OutBitOffset numBits 8 OutBitOffset sub sub def
OutBitOffset 0 gt
{
byte bitsDoneSoFar bitshift
masks numBits bitsDoneSoFar sub get and
OutBuffer OutByteIndex 3 -1 roll put
} if
}
{
byte masks numBits 1 sub get and
OutBitOffset neg bitshift
OutBuffer OutByteIndex get or
OutBuffer OutByteIndex 3 -1 roll put
/OutBitOffset OutBitOffset numBits add def
OutBitOffset 8 eq
{
/OutBitOffset 0 def
/OutByteIndex OutByteIndex 1 add def
} if
} ifelse
} bind def
/DevNNFilter
{
/InBuffer Width NumComps mul BitsPerComponent mul 7 add 8 idiv string def
AllSource InBuffer readstring pop pop
/outlen Width NewNumComps mul BitsPerComponent mul 7 add 8 idiv def
/OutBuffer outlen string def
0 1 outlen 1 sub { OutBuffer exch 0 put } for
/InByteIndex 0 def
/InBitOffset 0 def
/OutByteIndex 0 def
/OutBitOffset 0 def
/KeepArray NumComps array def
0 1 NumComps 1 sub { KeepArray exch true put } for
DevNNones { KeepArray exch false put } forall
Width {
KeepArray
{
{
/bitsLeft BitsPerComponent def
{
bitsLeft 0 le { exit } if
/bitsToDo 8 InBitOffset sub dup bitsLeft gt { pop bitsLeft } if def
InBuffer InByteIndex get
InBitOffset bitshift
bitsToDo addNBits
/bitsLeft bitsLeft bitsToDo sub def
InBitOffset bitsToDo add
dup 8 mod /InBitOffset exch def
8 idiv InByteIndex add /InByteIndex exch def
} loop
}
{
InBitOffset BitsPerComponent add
dup 8 mod /InBitOffset exch def
8 idiv InByteIndex add /InByteIndex exch def
}
ifelse
}
forall
} repeat
OutBuffer
} bd
/pdf_image
{
20 dict copy
begin
/UnusedNones where { /UnusedNones get}{false} ifelse
{
/NumComps Decode length 2 div cvi def
/OrigDecode Decode def
/NumNones DevNNones length def
/NewNumComps NumComps NumNones sub def
/Decode NewNumComps 2 mul cvi array def
/devNNindx 0 def
/decIndx 0 def
/cmpIndx 0 def
NumComps {
cmpIndx DevNNones devNNindx get eq
{
/devNNindx devNNindx 1 add dup NumNones eq {pop 0} if def
}
{
Decode decIndx OrigDecode cmpIndx 2 mul get put
Decode decIndx 1 add OrigDecode cmpIndx 2 mul 1 add get put
/decIndx decIndx 2 add def
} ifelse
/cmpIndx cmpIndx 1 add def
} repeat
_Filters dup length 1 sub get /AllSource exch def
/DataSource { DevNNFilter } def
}
{ _Filters dup length 1 sub get /DataSource exch def }
ifelse
currentdict image
_Filters pdf_flushfilters
end
} bd
/pdf_maskedImage
{
10 dict copy begin
/miDict currentdict def
/DataDict DataDict 10 dict copy def
DataDict begin
/DataSource
_Filters dup length 1 sub get
def
miDict image
_Filters pdf_flushfilters
end
miDict /InterleaveType get 3 eq
{ MaskDict /DataSource get dup type /filetype eq { closefile } { pop } ifelse }
if
end
} [/miDict /DataDict /_Filters] bld
/RadialShade {
40 dict begin
/background exch def
/ext1 exch def
/ext0 exch def
/BBox exch def
/r2 exch def
/c2y exch def
/c2x exch def
/r1 exch def
/c1y exch def
/c1x exch def
/rampdict exch def
gsave
BBox length 0 gt {
newpath
BBox 0 get BBox 1 get moveto
BBox 2 get BBox 0 get sub 0 rlineto
0 BBox 3 get BBox 1 get sub rlineto
BBox 2 get BBox 0 get sub neg 0 rlineto
closepath
clip
newpath
} if
c1x c2x eq
{
c1y c2y lt {/theta 90 def}{/theta 270 def} ifelse
}
{
/slope c2y c1y sub c2x c1x sub div def
/theta slope 1 atan def
c2x c1x lt c2y c1y ge and { /theta theta 180 sub def} if
c2x c1x lt c2y c1y lt and { /theta theta 180 add def} if
}
ifelse
gsave
clippath
c1x c1y translate
theta rotate
-90 rotate
{ pathbbox } stopped
{ 0 0 0 0 } if
/yMax exch def
/xMax exch def
/yMin exch def
/xMin exch def
grestore
xMax xMin eq yMax yMin eq or
{
grestore
end
}
{
/max { 2 copy gt { pop } {exch pop} ifelse } bind def
/min { 2 copy lt { pop } {exch pop} ifelse } bind def
rampdict begin
40 dict begin
background length 0 gt { background sssetbackground gsave clippath fill grestore } if
gsave
c1x c1y translate
theta rotate
-90 rotate
/c2y c1x c2x sub dup mul c1y c2y sub dup mul add sqrt def
/c1y 0 def
/c1x 0 def
/c2x 0 def
ext0 {
0 getrampcolor
c2y r2 add r1 sub 0.0001 lt
{
c1x c1y r1 360 0 arcn
pathbbox
/aymax exch def
/axmax exch def
/aymin exch def
/axmin exch def
/bxMin xMin axmin min def
/byMin yMin aymin min def
/bxMax xMax axmax max def
/byMax yMax aymax max def
bxMin byMin moveto
bxMax byMin lineto
bxMax byMax lineto
bxMin byMax lineto
bxMin byMin lineto
eofill
}
{
c2y r1 add r2 le
{
c1x c1y r1 0 360 arc
fill
}
{
c2x c2y r2 0 360 arc fill
r1 r2 eq
{
/p1x r1 neg def
/p1y c1y def
/p2x r1 def
/p2y c1y def
p1x p1y moveto p2x p2y lineto p2x yMin lineto p1x yMin lineto
fill
}
{
/AA r2 r1 sub c2y div def
AA -1 eq
{ /theta 89.99 def}
{ /theta AA 1 AA dup mul sub sqrt div 1 atan def}
ifelse
/SS1 90 theta add dup sin exch cos div def
/p1x r1 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
/p1y p1x SS1 div neg def
/SS2 90 theta sub dup sin exch cos div def
/p2x r1 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
/p2y p2x SS2 div neg def
r1 r2 gt
{
/L1maxX p1x yMin p1y sub SS1 div add def
/L2maxX p2x yMin p2y sub SS2 div add def
}
{
/L1maxX 0 def
/L2maxX 0 def
}ifelse
p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
L1maxX L1maxX p1x sub SS1 mul p1y add lineto
fill
}
ifelse
}
ifelse
} ifelse
} if
c1x c2x sub dup mul
c1y c2y sub dup mul
add 0.5 exp
0 dtransform
dup mul exch dup mul add 0.5 exp 72 div
0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
1 index 1 index lt { exch } if pop
/hires exch def
hires mul
/numpix exch def
/numsteps NumSamples def
/rampIndxInc 1 def
/subsampling false def
numpix 0 ne
{
NumSamples numpix div 0.5 gt
{
/numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
/rampIndxInc NumSamples 1 sub numsteps div def
/subsampling true def
} if
} if
/xInc c2x c1x sub numsteps div def
/yInc c2y c1y sub numsteps div def
/rInc r2 r1 sub numsteps div def
/cx c1x def
/cy c1y def
/radius r1 def
newpath
xInc 0 eq yInc 0 eq rInc 0 eq and and
{
0 getrampcolor
cx cy radius 0 360 arc
stroke
NumSamples 1 sub getrampcolor
cx cy radius 72 hires div add 0 360 arc
0 setlinewidth
stroke
}
{
0
numsteps
{
dup
subsampling { round } if
getrampcolor
cx cy radius 0 360 arc
/cx cx xInc add def
/cy cy yInc add def
/radius radius rInc add def
cx cy radius 360 0 arcn
eofill
rampIndxInc add
}
repeat
pop
} ifelse
ext1 {
c2y r2 add r1 lt
{
c2x c2y r2 0 360 arc
fill
}
{
c2y r1 add r2 sub 0.0001 le
{
c2x c2y r2 360 0 arcn
pathbbox
/aymax exch def
/axmax exch def
/aymin exch def
/axmin exch def
/bxMin xMin axmin min def
/byMin yMin aymin min def
/bxMax xMax axmax max def
/byMax yMax aymax max def
bxMin byMin moveto
bxMax byMin lineto
bxMax byMax lineto
bxMin byMax lineto
bxMin byMin lineto
eofill
}
{
c2x c2y r2 0 360 arc fill
r1 r2 eq
{
/p1x r2 neg def
/p1y c2y def
/p2x r2 def
/p2y c2y def
p1x p1y moveto p2x p2y lineto p2x yMax lineto p1x yMax lineto
fill
}
{
/AA r2 r1 sub c2y div def
AA -1 eq
{ /theta 89.99 def}
{ /theta AA 1 AA dup mul sub sqrt div 1 atan def}
ifelse
/SS1 90 theta add dup sin exch cos div def
/p1x r2 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
/p1y c2y p1x SS1 div sub def
/SS2 90 theta sub dup sin exch cos div def
/p2x r2 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
/p2y c2y p2x SS2 div sub def
r1 r2 lt
{
/L1maxX p1x yMax p1y sub SS1 div add def
/L2maxX p2x yMax p2y sub SS2 div add def
}
{
/L1maxX 0 def
/L2maxX 0 def
}ifelse
p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
L1maxX L1maxX p1x sub SS1 mul p1y add lineto
fill
}
ifelse
}
ifelse
} ifelse
} if
grestore
grestore
end
end
end
} ifelse
} bd
/GenStrips {
40 dict begin
/background exch def
/ext1 exch def
/ext0 exch def
/BBox exch def
/y2 exch def
/x2 exch def
/y1 exch def
/x1 exch def
/rampdict exch def
gsave
BBox length 0 gt {
newpath
BBox 0 get BBox 1 get moveto
BBox 2 get BBox 0 get sub 0 rlineto
0 BBox 3 get BBox 1 get sub rlineto
BBox 2 get BBox 0 get sub neg 0 rlineto
closepath
clip
newpath
} if
x1 x2 eq
{
y1 y2 lt {/theta 90 def}{/theta 270 def} ifelse
}
{
/slope y2 y1 sub x2 x1 sub div def
/theta slope 1 atan def
x2 x1 lt y2 y1 ge and { /theta theta 180 sub def} if
x2 x1 lt y2 y1 lt and { /theta theta 180 add def} if
}
ifelse
gsave
clippath
x1 y1 translate
theta rotate
{ pathbbox } stopped
{ 0 0 0 0 } if
/yMax exch def
/xMax exch def
/yMin exch def
/xMin exch def
grestore
xMax xMin eq yMax yMin eq or
{
grestore
end
}
{
rampdict begin
20 dict begin
background length 0 gt { background sssetbackground gsave clippath fill grestore } if
gsave
x1 y1 translate
theta rotate
/xStart 0 def
/xEnd x2 x1 sub dup mul y2 y1 sub dup mul add 0.5 exp def
/ySpan yMax yMin sub def
/numsteps NumSamples def
/rampIndxInc 1 def
/subsampling false def
xStart 0 transform
xEnd 0 transform
3 -1 roll
sub dup mul
3 1 roll
sub dup mul
add 0.5 exp 72 div
0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
1 index 1 index lt { exch } if pop
mul
/numpix exch def
numpix 0 ne
{
NumSamples numpix div 0.5 gt
{
/numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
/rampIndxInc NumSamples 1 sub numsteps div def
/subsampling true def
} if
} if
ext0 {
0 getrampcolor
xMin xStart lt
{ xMin yMin xMin neg ySpan rectfill } if
} if
/xInc xEnd xStart sub numsteps div def
/x xStart def
0
numsteps
{
dup
subsampling { round } if
getrampcolor
x yMin xInc ySpan rectfill
/x x xInc add def
rampIndxInc add
}
repeat
pop
ext1 {
xMax xEnd gt
{ xEnd yMin xMax xEnd sub ySpan rectfill } if
} if
grestore
grestore
end
end
end
} ifelse
} bd
/currentdistillerparams where { pop currentdistillerparams /CoreDistVersion get 5000 lt}{true}ifelse
{
/PDFMark5 {cleartomark} bd
}
{
/PDFMark5 {pdfmark} bd
}ifelse
/ReadByPDFMark5
{
2 dict begin
/makerString exch def string /tmpString exch def
{
currentfile tmpString readline pop
makerString anchorsearch
{
pop pop cleartomark exit
}
{
3 copy /PUT PDFMark5 pop 2 copy (\n) /PUT PDFMark5
} ifelse
}loop
end
}bd
%%EndResource
%%BeginResource: procset pdflev2 6.0 1
%%Copyright: Copyright 1987-2001,2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: PDF operators, with code specific for Level 2
/docinitialize {
PDF begin
/_defaulthalftone currenthalftone dd
/_defaultblackgeneration currentblackgeneration dd
/_defaultundercolorremoval currentundercolorremoval dd
/_defaultcolortransfer [currentcolortransfer] dd
/_defaulttransfer currenttransfer dd
end
PDFVars /docSetupDone true put
} bd
/initialize {
PDFVars /docSetupDone get {
_defaulthalftone sethalftone
/_defaultblackgeneration load setblackgeneration
/_defaultundercolorremoval load setundercolorremoval
_defaultcolortransfer aload pop setcolortransfer
} if
false setoverprint
} bd
/terminate { } bd
/c /curveto ld
/cs /setcolorspace ld
/l /lineto ld
/m /moveto ld
/q /gsave ld
/Q /grestore ld
/sc /setcolor ld
/setSA/setstrokeadjust ld
/re {
4 2 roll m
1 index 0 rlineto
0 exch rlineto
neg 0 rlineto
h
} bd
/concattransferfuncs {
[ 3 1 roll /exec load exch /exec load ] cvx
} bd
/concatandsettransfer {
/_defaulttransfer load concattransferfuncs settransfer
} bd
/concatandsetcolortransfer {
_defaultcolortransfer aload pop
8 -1 roll 5 -1 roll concattransferfuncs 7 1 roll
6 -1 roll 4 -1 roll concattransferfuncs 5 1 roll
4 -1 roll 3 -1 roll concattransferfuncs 3 1 roll
concattransferfuncs
setcolortransfer
} bd
/defineRes/defineresource ld
/undefineRes/undefineresource ld
/findRes/findresource ld
currentglobal
true systemdict /setglobal get exec
[/Function /ExtGState /Form /Shading /FunctionDictionary /MadePattern /PatternPrototype /DataSource /Image]
{ /Generic /Category findresource dup length dict copy /Category defineresource pop }
forall
systemdict /setglobal get exec
/ri
{
/findcolorrendering isdefined?
{
mark exch
findcolorrendering
counttomark 2 eq
{ type /booleantype eq
{ dup type /nametype eq
{ dup /ColorRendering resourcestatus
{ pop pop
dup /DefaultColorRendering ne
{
/ColorRendering findresource
setcolorrendering
} if
} if
} if
} if
} if
cleartomark
}
{ pop
} ifelse
} bd
/knownColorants? {
pop false
} bd
/getrampcolor {
cvi
/indx exch def
0 1 NumComp 1 sub {
dup
Samples exch get
dup type /stringtype eq { indx get } if
exch
Scaling exch get aload pop
3 1 roll
mul add
} for
setcolor
} bd
/sssetbackground { aload pop setcolor } bd
%%EndResource
%%BeginResource: procset pdftext 6.0 1
%%Copyright: Copyright 1987-2001,2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: Text operators for PDF
PDF /PDFText 78 dict dup begin put
/docinitialize
{
/resourcestatus where {
pop
/CIDParams /ProcSet resourcestatus {
pop pop
false /CIDParams /ProcSet findresource /SetBuildCompatible get exec
} if
} if
PDF begin
PDFText /_pdfDefineIdentity-H known
{ PDFText /_pdfDefineIdentity-H get exec}
if
end
} bd
/initialize {
PDFText begin
} bd
/terminate { end } bd
Level2?
{
/_safeput
{
3 -1 roll load 3 1 roll put
}
bd
}
{
/_safeput
{
2 index load dup dup length exch maxlength ge
{ dup length 5 add dict copy
3 index xdd
}
{ pop }
ifelse
3 -1 roll load 3 1 roll put
}
bd
}
ifelse
/pdf_has_composefont? systemdict /composefont known def
/CopyFont {
{
1 index /FID ne 2 index /UniqueID ne and
{ def } { pop pop } ifelse
} forall
} bd
/Type0CopyFont
{
exch
dup length dict
begin
CopyFont
[
exch
FDepVector
{
dup /FontType get 0 eq
{
1 index Type0CopyFont
/_pdfType0 exch definefont
}
{
/_pdfBaseFont exch
2 index exec
}
ifelse
exch
}
forall
pop
]
/FDepVector exch def
currentdict
end
} bd
Level2? {currentglobal true setglobal} if
/cHexEncoding
[/c00/c01/c02/c03/c04/c05/c06/c07/c08/c09/c0A/c0B/c0C/c0D/c0E/c0F/c10/c11/c12
/c13/c14/c15/c16/c17/c18/c19/c1A/c1B/c1C/c1D/c1E/c1F/c20/c21/c22/c23/c24/c25
/c26/c27/c28/c29/c2A/c2B/c2C/c2D/c2E/c2F/c30/c31/c32/c33/c34/c35/c36/c37/c38
/c39/c3A/c3B/c3C/c3D/c3E/c3F/c40/c41/c42/c43/c44/c45/c46/c47/c48/c49/c4A/c4B
/c4C/c4D/c4E/c4F/c50/c51/c52/c53/c54/c55/c56/c57/c58/c59/c5A/c5B/c5C/c5D/c5E
/c5F/c60/c61/c62/c63/c64/c65/c66/c67/c68/c69/c6A/c6B/c6C/c6D/c6E/c6F/c70/c71
/c72/c73/c74/c75/c76/c77/c78/c79/c7A/c7B/c7C/c7D/c7E/c7F/c80/c81/c82/c83/c84
/c85/c86/c87/c88/c89/c8A/c8B/c8C/c8D/c8E/c8F/c90/c91/c92/c93/c94/c95/c96/c97
/c98/c99/c9A/c9B/c9C/c9D/c9E/c9F/cA0/cA1/cA2/cA3/cA4/cA5/cA6/cA7/cA8/cA9/cAA
/cAB/cAC/cAD/cAE/cAF/cB0/cB1/cB2/cB3/cB4/cB5/cB6/cB7/cB8/cB9/cBA/cBB/cBC/cBD
/cBE/cBF/cC0/cC1/cC2/cC3/cC4/cC5/cC6/cC7/cC8/cC9/cCA/cCB/cCC/cCD/cCE/cCF/cD0
/cD1/cD2/cD3/cD4/cD5/cD6/cD7/cD8/cD9/cDA/cDB/cDC/cDD/cDE/cDF/cE0/cE1/cE2/cE3
/cE4/cE5/cE6/cE7/cE8/cE9/cEA/cEB/cEC/cED/cEE/cEF/cF0/cF1/cF2/cF3/cF4/cF5/cF6
/cF7/cF8/cF9/cFA/cFB/cFC/cFD/cFE/cFF] def
Level2? {setglobal} if
/modEnc {
/_enc xdd
/_icode 0 dd
counttomark 1 sub -1 0
{
index
dup type /nametype eq
{
_enc _icode 3 -1 roll put
_icode 1 add
}
if
/_icode xdd
} for
cleartomark
_enc
} bd
/trEnc {
/_enc xdd
255 -1 0 {
exch dup -1 eq
{ pop /.notdef }
{ Encoding exch get }
ifelse
_enc 3 1 roll put
} for
pop
_enc
} bd
/TE {
/_i xdd
StandardEncoding 256 array copy modEnc
_pdfEncodings exch _i exch put
} bd
Level2?
{
/pdfPatchCStrings
{
currentdict /CharStrings known currentdict /FontType known and
{
FontType 1 eq CharStrings type /dicttype eq and
{
CharStrings /mu known CharStrings /mu1 known not and CharStrings wcheck and
{
CharStrings /mu get
type /stringtype eq
{
currentglobal
CharStrings /mu1
CharStrings /mu get
dup gcheck setglobal
dup length string copy
put
setglobal
} if
} if
} if
} if
} bd
}
{ /pdfPatchCStrings {} bd }
ifelse
/TZ
{
/_usePDFEncoding xdd
findfont
dup length 6 add dict
begin
{
1 index /FID ne { def } { pop pop } ifelse
} forall
pdfPatchCStrings
/pdf_origFontName FontName def
/FontName exch def
currentdict /PaintType known
{ PaintType 2 eq {/PaintType 0 def} if }
if
_usePDFEncoding 0 ge
{
/Encoding _pdfEncodings _usePDFEncoding get def
pop
}
{
_usePDFEncoding -1 eq
{
counttomark 0 eq
{ pop }
{
Encoding 256 array copy
modEnc /Encoding exch def
}
ifelse
}
{
256 array
trEnc /Encoding exch def
}
ifelse
}
ifelse
pdf_EuroProcSet pdf_origFontName known
{
pdf_origFontName pdf_AddEuroGlyphProc
} if
Level2?
{
currentdict /pdf_origFontName undef
} if
FontName currentdict
end
definefont pop
}
bd
Level2?
{
/TZG
{
currentglobal true setglobal
2 index _pdfFontStatus
{
2 index findfont
false setglobal
3 index findfont
true setglobal
ne
{
2 index findfont dup rcheck
{
dup length dict begin
{
1 index /FID ne { def } { pop pop } ifelse
} forall
pdfPatchCStrings
currentdict end
}
if
3 index exch definefont pop
}
if
} if
setglobal
TZ
} bd
}
{
/TZG {TZ} bd
} ifelse
Level2?
{
currentglobal false setglobal
userdict /pdftext_data 5 dict put
pdftext_data
begin
/saveStacks
{
pdftext_data
begin
/vmmode currentglobal def
false setglobal
count array astore /os exch def
end
countdictstack array dictstack pdftext_data exch /ds exch put
cleardictstack pdftext_data /dscount countdictstack put
pdftext_data /vmmode get setglobal
} bind def
/restoreStacks
{
pdftext_data /vmmode currentglobal put false setglobal
clear cleardictstack
pdftext_data /ds get dup
pdftext_data /dscount get 1 2 index length 1 sub
{ get begin dup } for
pop pop
pdftext_data /os get aload pop
pdftext_data /vmmode get setglobal
} bind def
/testForClonePrinterBug
{
currentglobal true setglobal
/undefinedCategory /Generic /Category findresource
dup length dict copy /Category defineresource pop
setglobal
pdftext_data /saveStacks get exec
pdftext_data /vmmode currentglobal put false setglobal
/undefined /undefinedCategory { resourcestatus } stopped
pdftext_data exch /bugFound exch put
pdftext_data /vmmode get setglobal
pdftext_data /restoreStacks get exec
pdftext_data /bugFound get
} bind def
end
setglobal
/pdf_resourcestatus
pdftext_data /testForClonePrinterBug get exec
{
{
pdftext_data /saveStacks get exec
pdftext_data /os get dup dup length 1 sub
dup 1 sub dup 0 lt { pop 0 } if
exch 1 exch { get exch dup } for
pop pop
{ resourcestatus }
stopped
{
clear cleardictstack pdftext_data /restoreStacks get exec
{ pop pop } stopped pop false
}
{
count array astore pdftext_data exch /results exch put
pdftext_data /restoreStacks get exec pop pop
pdftext_data /results get aload pop
}
ifelse
}
}
{ { resourcestatus } }
ifelse
bd
}
if
Level2?
{
/_pdfUndefineResource
{
currentglobal 3 1 roll
_pdf_FontDirectory 2 index 2 copy known
{undef}
{pop pop}
ifelse
1 index (pdf) exch _pdfConcatNames 1 index
1 index 1 _pdfConcatNames 1 index
5 index 1 _pdfConcatNames 1 index
4
{
2 copy pdf_resourcestatus
{
pop 2 lt
{2 copy findresource gcheck setglobal undefineresource}
{pop pop}
ifelse
}
{ pop pop}
ifelse
} repeat
setglobal
} bd
}
{
/_pdfUndefineResource { pop pop} bd
}
ifelse
Level2?
{
/_pdfFontStatus
{
currentglobal exch
/Font pdf_resourcestatus
{pop pop true}
{false}
ifelse
exch setglobal
} bd
}
{
/_pdfFontStatusString 50 string def
_pdfFontStatusString 0 (fonts/) putinterval
/_pdfFontStatus
{
FontDirectory 1 index known
{ pop true }
{
_pdfFontStatusString 6 42 getinterval
cvs length 6 add
_pdfFontStatusString exch 0 exch getinterval
{ status } stopped
{pop false}
{
{ pop pop pop pop true}
{ false }
ifelse
}
ifelse
}
ifelse
} bd
}
ifelse
Level2?
{
/_pdfCIDFontStatus
{
/CIDFont /Category pdf_resourcestatus
{
pop pop
/CIDFont pdf_resourcestatus
{pop pop true}
{false}
ifelse
}
{ pop false }
ifelse
} bd
}
if
/_pdfString100 100 string def
/_pdfComposeFontName
{
dup length 1 eq
{
0 get
1 index
type /nametype eq
{
_pdfString100 cvs
length dup dup _pdfString100 exch (-) putinterval
_pdfString100 exch 1 add dup _pdfString100 length exch sub getinterval
2 index exch cvs length
add 1 add _pdfString100 exch 0 exch getinterval
exch pop
true
}
{
pop pop
false
}
ifelse
}
{
false
}
ifelse
dup {exch cvn exch} if
} bd
/_pdfConcatNames
{
exch
_pdfString100 cvs
length dup dup _pdfString100 exch (-) putinterval
_pdfString100 exch 1 add dup _pdfString100 length exch sub getinterval
3 -1 roll exch cvs length
add 1 add _pdfString100 exch 0 exch getinterval
cvn
} bind def
/_pdfTextTempString 50 string def
/_pdfRegOrderingArray [(Adobe-Japan1) (Adobe-CNS1) (Adobe-Korea1) (Adobe-GB1)] def
/_pdf_CheckCIDSystemInfo
{
1 index _pdfTextTempString cvs
(Identity) anchorsearch
{
pop pop pop pop true
}
{
false
_pdfRegOrderingArray
{
2 index exch
anchorsearch
{ pop pop pop true exit}
{ pop }
ifelse
}
forall
exch pop
exch /CIDFont findresource
/CIDSystemInfo get
3 -1 roll /CMap findresource
/CIDSystemInfo get
exch
3 -1 roll
{
2 copy
/Supplement get
exch
dup type /dicttype eq
{/Supplement get}
{pop 0 }
ifelse
ge
}
{ true }
ifelse
{
dup /Registry get
2 index /Registry get eq
{
/Ordering get
exch /Ordering get
dup type /arraytype eq
{
1 index type /arraytype eq
{
true
1 index length 1 sub -1 0
{
dup 2 index exch get exch 3 index exch get ne
{ pop false exit}
if
} for
exch pop exch pop
}
{ pop pop false }
ifelse
}
{
eq
}
ifelse
}
{ pop pop false }
ifelse
}
{ pop pop false }
ifelse
}
ifelse
} bind def
pdf_has_composefont?
{
/_pdfComposeFont
{
2 copy _pdfComposeFontName not
{
2 index
}
if
(pdf) exch _pdfConcatNames
dup _pdfFontStatus
{ dup findfont 5 2 roll pop pop pop true}
{
4 1 roll
1 index /CMap pdf_resourcestatus
{
pop pop
true
}
{false}
ifelse
1 index true exch
{
_pdfCIDFontStatus not
{pop false exit}
if
}
forall
and
{
1 index 1 index 0 get _pdf_CheckCIDSystemInfo
{
3 -1 roll pop
2 index 3 1 roll
composefont true
}
{
pop pop exch pop false
}
ifelse
}
{
_pdfComposeFontName
{
dup _pdfFontStatus
{
exch pop
1 index exch
findfont definefont true
}
{
pop exch pop
false
}
ifelse
}
{
exch pop
false
}
ifelse
}
ifelse
{ true }
{
dup _pdfFontStatus
{ dup findfont true }
{ pop false }
ifelse
}
ifelse
}
ifelse
} bd
}
{
/_pdfComposeFont
{
_pdfComposeFontName not
{
dup
}
if
dup
_pdfFontStatus
{exch pop dup findfont true}
{
1 index
dup type /nametype eq
{pop}
{cvn}
ifelse
eq
{pop false}
{
dup _pdfFontStatus
{dup findfont true}
{pop false}
ifelse
}
ifelse
}
ifelse
} bd
}
ifelse
/_pdfStyleDicts 4 dict dup begin
/Adobe-Japan1 4 dict dup begin
Level2?
{
/Serif
/HeiseiMin-W3-83pv-RKSJ-H _pdfFontStatus
{/HeiseiMin-W3}
{
/HeiseiMin-W3 _pdfCIDFontStatus
{/HeiseiMin-W3}
{/Ryumin-Light}
ifelse
}
ifelse
def
/SansSerif
/HeiseiKakuGo-W5-83pv-RKSJ-H _pdfFontStatus
{/HeiseiKakuGo-W5}
{
/HeiseiKakuGo-W5 _pdfCIDFontStatus
{/HeiseiKakuGo-W5}
{/GothicBBB-Medium}
ifelse
}
ifelse
def
/HeiseiMaruGo-W4-83pv-RKSJ-H _pdfFontStatus
{/HeiseiMaruGo-W4}
{
/HeiseiMaruGo-W4 _pdfCIDFontStatus
{/HeiseiMaruGo-W4}
{
/Jun101-Light-RKSJ-H _pdfFontStatus
{ /Jun101-Light }
{ SansSerif }
ifelse
}
ifelse
}
ifelse
/RoundSansSerif exch def
/Default Serif def
}
{
/Serif /Ryumin-Light def
/SansSerif /GothicBBB-Medium def
{
(fonts/Jun101-Light-83pv-RKSJ-H) status
}stopped
{pop}{
{ pop pop pop pop /Jun101-Light }
{ SansSerif }
ifelse
/RoundSansSerif exch def
}ifelse
/Default Serif def
}
ifelse
end
def
/Adobe-Korea1 4 dict dup begin
/Serif /HYSMyeongJo-Medium def
/SansSerif /HYGoThic-Medium def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
/Adobe-GB1 4 dict dup begin
/Serif /STSong-Light def
/SansSerif /STHeiti-Regular def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
/Adobe-CNS1 4 dict dup begin
/Serif /MKai-Medium def
/SansSerif /MHei-Medium def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
end
def
/TZzero
{
/_wmode xdd
/_styleArr xdd
/_regOrdering xdd
3 copy
_pdfComposeFont
{
5 2 roll pop pop pop
}
{
[
0 1 _styleArr length 1 sub
{
_styleArr exch get
_pdfStyleDicts _regOrdering 2 copy known
{
get
exch 2 copy known not
{ pop /Default }
if
get
}
{
pop pop pop /Unknown
}
ifelse
}
for
]
exch pop
2 index 3 1 roll
_pdfComposeFont
{3 -1 roll pop}
{
findfont dup /FontName get exch
}
ifelse
}
ifelse
dup /WMode 2 copy known
{ get _wmode ne }
{ pop pop _wmode 1 eq}
ifelse
{
exch _wmode _pdfConcatNames
dup _pdfFontStatus
{ exch pop dup findfont false}
{ exch true }
ifelse
}
{
dup /FontType get 0 ne
}
ifelse
{
dup /FontType get 3 eq _wmode 1 eq and
{
_pdfVerticalRomanT3Font dup length 10 add dict copy
begin
/_basefont exch
dup length 3 add dict
begin
{1 index /FID ne {def}{pop pop} ifelse }
forall
/Encoding Encoding dup length array copy
dup 16#27 /quotesingle put
dup 16#60 /grave put
_regOrdering /Adobe-Japan1 eq
{dup 16#5c /yen put dup 16#a5 /yen put dup 16#b4 /yen put}
if
def
FontName
currentdict
end
definefont
def
/Encoding _basefont /Encoding get def
/_fauxfont true def
}
{
dup length 3 add dict
begin
{1 index /FID ne {def}{pop pop} ifelse }
forall
FontType 0 ne
{
/Encoding Encoding dup length array copy
dup 16#27 /quotesingle put
dup 16#60 /grave put
_regOrdering /Adobe-Japan1 eq
{dup 16#5c /yen put}
if
def
/_fauxfont true def
} if
} ifelse
/WMode _wmode def
dup dup /FontName exch def
currentdict
end
definefont pop
}
{
pop
}
ifelse
/_pdf_FontDirectory 3 1 roll _safeput
}
bd
Level2?
{
/Tf {
_pdf_FontDirectory 2 index 2 copy known
{get exch 3 -1 roll pop}
{pop pop}
ifelse
selectfont
} bd
}
{
/Tf {
_pdf_FontDirectory 2 index 2 copy known
{get exch 3 -1 roll pop}
{pop pop}
ifelse
exch findfont exch
dup type /arraytype eq
{makefont}
{scalefont}
ifelse
setfont
} bd
}
ifelse
/cshow where
{
pop /pdf_cshow /cshow load dd
/pdf_remove2 {pop pop} dd
}
{
/pdf_cshow {exch forall} dd
/pdf_remove2 {} dd
} ifelse
/pdf_xshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
_pdf_x _pdf_y moveto
0
rmoveto
}
ifelse
_pdf_i 1 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdf_yshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
_pdf_x _pdf_y moveto
0 exch
rmoveto
}
ifelse
_pdf_i 1 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdf_xyshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
1 pop
{_pdf_na _pdf_i 1 add get} stopped
{ pop pop pop}
{
_pdf_x _pdf_y moveto
rmoveto
}
ifelse
}
ifelse
_pdf_i 2 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdfl1xs {/_pdf_showproc /show load dd pdf_xshow} bd
/pdfl1ys {/_pdf_showproc /show load dd pdf_yshow} bd
/pdfl1xys {/_pdf_showproc /show load dd pdf_xyshow} bd
Level2? _ColorSep5044? not and
{
/pdfxs {{xshow} stopped {pdfl1xs} if} bd
/pdfys {{yshow} stopped {pdfl1ys} if} bd
/pdfxys {{xyshow} stopped {pdfl1xys} if} bd
}
{
/pdfxs /pdfl1xs load dd
/pdfys /pdfl1ys load dd
/pdfxys /pdfl1xys load dd
} ifelse
/pdf_charpath {false charpath} bd
/pdf_xcharpath {/_pdf_showproc /pdf_charpath load dd pdf_xshow} bd
/pdf_ycharpath {/_pdf_showproc /pdf_charpath load dd pdf_yshow} bd
/pdf_xycharpath {/_pdf_showproc /pdf_charpath load dd pdf_xyshow} bd
/pdf_strokepath
{
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 false charpath
currentpoint S moveto
} bind
exch pdf_cshow
} bd
/pdf_xstrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_xshow} bd
/pdf_ystrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_yshow} bd
/pdf_xystrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_xyshow} bd
Level2? {currentglobal true setglobal} if
/d0/setcharwidth ld
/nND {{/.notdef} repeat} bd
/T3Defs {
/BuildChar
{
1 index /Encoding get exch get
1 index /BuildGlyph get exec
}
def
/BuildGlyph {
exch begin
GlyphProcs exch get exec
end
} def
/_pdfT3Font true def
} bd
/_pdfBoldRomanWidthProc
{
stringwidth 1 index 0 ne { exch .03 add exch }if setcharwidth
0 0
} bd
/_pdfType0WidthProc
{
dup stringwidth 0 0 moveto
2 index true charpath pathbbox
0 -1
7 index 2 div .88
setcachedevice2
pop
0 0
} bd
/_pdfType0WMode1WidthProc
{
dup stringwidth
pop 2 div neg -0.88
2 copy
moveto
0 -1
5 -1 roll true charpath pathbbox
setcachedevice
} bd
/_pdfBoldBaseFont
11 dict begin
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/Encoding cHexEncoding def
/_setwidthProc /_pdfBoldRomanWidthProc load def
/_bcstr1 1 string def
/BuildChar
{
exch begin
_basefont setfont
_bcstr1 dup 0 4 -1 roll put
dup
_setwidthProc
3 copy
moveto
show
_basefonto setfont
moveto
show
end
}bd
currentdict
end
def
pdf_has_composefont?
{
/_pdfBoldBaseCIDFont
11 dict begin
/CIDFontType 1 def
/CIDFontName /_pdfBoldBaseCIDFont def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/_setwidthProc /_pdfType0WidthProc load def
/_bcstr2 2 string def
/BuildGlyph
{
exch begin
_basefont setfont
_bcstr2 1 2 index 256 mod put
_bcstr2 0 3 -1 roll 256 idiv put
_bcstr2 dup _setwidthProc
3 copy
moveto
show
_basefonto setfont
moveto
show
end
}bd
currentdict
end
def
/_pdfDefineIdentity-H
{
/Identity-H /CMap PDFText /pdf_resourcestatus get exec
{
pop pop
}
{
/CIDInit/ProcSet findresource begin 12 dict begin
begincmap
/CIDSystemInfo
3 dict begin
/Registry (Adobe) def
/Ordering (Identity) def
/Supplement 0 def
currentdict
end
def
/CMapName /Identity-H def
/CMapVersion 1 def
/CMapType 1 def
1 begincodespacerange
<0000> <ffff>
endcodespacerange
1 begincidrange
<0000> <ffff> 0
endcidrange
endcmap
CMapName currentdict/CMap defineresource pop
end
end
} ifelse
} def
} if
/_pdfVerticalRomanT3Font
10 dict begin
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/_bcstr1 1 string def
/BuildChar
{
exch begin
_basefont setfont
_bcstr1 dup 0 4 -1 roll put
dup
_pdfType0WidthProc
moveto
show
end
}bd
currentdict
end
def
Level2? {setglobal} if
/MakeBoldFont
{
dup /ct_SyntheticBold known
{
dup length 3 add dict begin
CopyFont
/ct_StrokeWidth .03 0 FontMatrix idtransform pop def
/ct_SyntheticBold true def
currentdict
end
definefont
}
{
dup dup length 3 add dict
begin
CopyFont
/PaintType 2 def
/StrokeWidth .03 0 FontMatrix idtransform pop def
/dummybold currentdict
end
definefont
dup /FontType get dup 9 ge exch 11 le and
{
_pdfBoldBaseCIDFont
dup length 3 add dict copy begin
dup /CIDSystemInfo get /CIDSystemInfo exch def
/_Type0Identity /Identity-H 3 -1 roll [ exch ] composefont
/_basefont exch def
/_Type0Identity /Identity-H 3 -1 roll [ exch ] composefont
/_basefonto exch def
currentdict
end
/CIDFont defineresource
}
{
_pdfBoldBaseFont
dup length 3 add dict copy begin
/_basefont exch def
/_basefonto exch def
currentdict
end
definefont
}
ifelse
}
ifelse
} bd
/MakeBold {
1 index
_pdf_FontDirectory 2 index 2 copy known
{get}
{exch pop}
ifelse
findfont
dup
/FontType get 0 eq
{
dup /WMode known {dup /WMode get 1 eq }{false} ifelse
version length 4 ge
and
{version 0 4 getinterval cvi 2015 ge }
{true}
ifelse
{/_pdfType0WidthProc}
{/_pdfType0WMode1WidthProc}
ifelse
_pdfBoldBaseFont /_setwidthProc 3 -1 roll load put
{MakeBoldFont} Type0CopyFont definefont
}
{
dup /_fauxfont known not 1 index /SubstMaster known not and
{
_pdfBoldBaseFont /_setwidthProc /_pdfBoldRomanWidthProc load put
MakeBoldFont
}
{
2 index 2 index eq
{ exch pop }
{
dup length dict begin
CopyFont
currentdict
end
definefont
}
ifelse
}
ifelse
}
ifelse
pop pop
dup /dummybold ne
{/_pdf_FontDirectory exch dup _safeput }
{ pop }
ifelse
}bd
/MakeItalic {
_pdf_FontDirectory exch 2 copy known
{get}
{exch pop}
ifelse
dup findfont
dup /FontInfo 2 copy known
{
get
/ItalicAngle 2 copy known
{get 0 eq }
{ pop pop true}
ifelse
}
{ pop pop true}
ifelse
{
exch pop
dup /FontType get 0 eq Level2? not and
{ dup /FMapType get 6 eq }
{ false }
ifelse
{
dup /WMode 2 copy known
{
get 1 eq
{ _italMtx_WMode1Type0 }
{ _italMtxType0 }
ifelse
}
{ pop pop _italMtxType0 }
ifelse
}
{
dup /WMode 2 copy known
{
get 1 eq
{ _italMtx_WMode1 }
{ _italMtx }
ifelse
}
{ pop pop _italMtx }
ifelse
}
ifelse
makefont
dup /FontType get 42 eq Level2? not or
{
dup length dict begin
CopyFont
currentdict
end
}
if
1 index exch
definefont pop
/_pdf_FontDirectory exch dup _safeput
}
{
pop
2 copy ne
{
/_pdf_FontDirectory 3 1 roll _safeput
}
{ pop pop }
ifelse
}
ifelse
}bd
/MakeBoldItalic {
/dummybold exch
MakeBold
/dummybold
MakeItalic
}bd
Level2?
{
/pdf_CopyDict
{1 index length add dict copy}
def
}
{
/pdf_CopyDict
{
1 index length add dict
1 index wcheck
{ copy }
{ begin
{def} forall
currentdict
end
}
ifelse
}
def
}
ifelse
/pdf_AddEuroGlyphProc
{
currentdict /CharStrings known
{
CharStrings /Euro known not
{
dup
/CharStrings
CharStrings 1 pdf_CopyDict
begin
/Euro pdf_EuroProcSet 4 -1 roll get def
currentdict
end
def
/pdf_PSBuildGlyph /pdf_PSBuildGlyph load def
/pdf_PathOps /pdf_PathOps load def
/Symbol eq Encoding 160 get /.notdef eq and
{
/Encoding Encoding dup length array copy
dup 160 /Euro put def
}
if
}
{ pop
}
ifelse
}
{ pop
}
ifelse
}
def
Level2? {currentglobal true setglobal} if
/pdf_PathOps 4 dict dup begin
/m {moveto} def
/l {lineto} def
/c {curveto} def
/cp {closepath} def
end
def
/pdf_PSBuildGlyph
{
gsave
8 -1 roll pop
7 1 roll
currentdict /PaintType 2 copy known {get 2 eq}{pop pop false} ifelse
dup 9 1 roll
{
currentdict /StrokeWidth 2 copy known
{
get 2 div
5 1 roll
4 -1 roll 4 index sub
4 1 roll
3 -1 roll 4 index sub
3 1 roll
exch 4 index add exch
4 index add
5 -1 roll pop
}
{
pop pop
}
ifelse
}
if
setcachedevice
pdf_PathOps begin
exec
end
{
currentdict /StrokeWidth 2 copy known
{ get }
{ pop pop 0 }
ifelse
setlinewidth stroke
}
{
fill
}
ifelse
grestore
} def
/pdf_EuroProcSet 13 dict def
pdf_EuroProcSet
begin
/Courier-Bold
{
600 0 6 -12 585 612
{
385 274 m
180 274 l
179 283 179 293 179 303 c
179 310 179 316 180 323 c
398 323 l
423 404 l
197 404 l
219 477 273 520 357 520 c
409 520 466 490 487 454 c
487 389 l
579 389 l
579 612 l
487 612 l
487 560 l
449 595 394 612 349 612 c
222 612 130 529 98 404 c
31 404 l
6 323 l
86 323 l
86 304 l
86 294 86 284 87 274 c
31 274 l
6 193 l
99 193 l
129 77 211 -12 359 -12 c
398 -12 509 8 585 77 c
529 145 l
497 123 436 80 356 80 c
285 80 227 122 198 193 c
360 193 l
cp
600 0 m
}
pdf_PSBuildGlyph
} def
/Courier-BoldOblique /Courier-Bold load def
/Courier
{
600 0 17 -12 578 584
{
17 204 m
97 204 l
126 81 214 -12 361 -12 c
440 -12 517 17 578 62 c
554 109 l
501 70 434 43 366 43 c
266 43 184 101 154 204 c
380 204 l
400 259 l
144 259 l
144 270 143 281 143 292 c
143 299 143 307 144 314 c
418 314 l
438 369 l
153 369 l
177 464 249 529 345 529 c
415 529 484 503 522 463 c
522 391 l
576 391 l
576 584 l
522 584 l
522 531 l
473 566 420 584 348 584 c
216 584 122 490 95 369 c
37 369 l
17 314 l
87 314 l
87 297 l
87 284 88 272 89 259 c
37 259 l
cp
600 0 m
}
pdf_PSBuildGlyph
} def
/Courier-Oblique /Courier load def
/Helvetica
{
556 0 24 -19 541 703
{
541 628 m
510 669 442 703 354 703 c
201 703 117 607 101 444 c
50 444 l
25 372 l
97 372 l
97 301 l
49 301 l
24 229 l
103 229 l
124 67 209 -19 350 -19 c
435 -19 501 25 509 32 c
509 131 l
492 105 417 60 343 60 c
267 60 204 127 197 229 c
406 229 l
430 301 l
191 301 l
191 372 l
455 372 l
479 444 l
194 444 l
201 531 245 624 348 624 c
433 624 484 583 509 534 c
cp
556 0 m
}
pdf_PSBuildGlyph
} def
/Helvetica-Oblique /Helvetica load def
/Helvetica-Bold
{
556 0 12 -19 563 710
{
563 621 m
537 659 463 710 363 710 c
216 710 125 620 101 462 c
51 462 l
12 367 l
92 367 l
92 346 l
92 337 93 328 93 319 c
52 319 l
12 224 l
102 224 l
131 58 228 -19 363 -19 c
417 -19 471 -12 517 18 c
517 146 l
481 115 426 93 363 93 c
283 93 254 166 246 224 c
398 224 l
438 319 l
236 319 l
236 367 l
457 367 l
497 462 l
244 462 l
259 552 298 598 363 598 c
425 598 464 570 486 547 c
507 526 513 517 517 509 c
cp
556 0 m
}
pdf_PSBuildGlyph
} def
/Helvetica-BoldOblique /Helvetica-Bold load def
/Symbol
{
750 0 20 -12 714 685
{
714 581 m
650 645 560 685 465 685 c
304 685 165 580 128 432 c
50 432 l
20 369 l
116 369 l
115 356 115 347 115 337 c
115 328 115 319 116 306 c
50 306 l
20 243 l
128 243 l
165 97 300 -12 465 -12 c
560 -12 635 25 685 65 c
685 155 l
633 91 551 51 465 51 c
340 51 238 131 199 243 c
555 243 l
585 306 l
184 306 l
183 317 182 326 182 336 c
182 346 183 356 184 369 c
614 369 l 644 432 l
199 432 l
233 540 340 622 465 622 c
555 622 636 580 685 520 c
cp
750 0 m
}
pdf_PSBuildGlyph
} def
/Times-Bold
{
500 0 16 -14 478 700
{
367 308 m
224 308 l
224 368 l
375 368 l
380 414 l
225 414 l
230 589 257 653 315 653 c
402 653 431 521 444 457 c
473 457 l
473 698 l
444 697 l
441 679 437 662 418 662 c
393 662 365 700 310 700 c
211 700 97 597 73 414 c
21 414 l
16 368 l
69 368 l
69 359 68 350 68 341 c
68 330 68 319 69 308 c
21 308 l
16 262 l
73 262 l
91 119 161 -14 301 -14 c
380 -14 443 50 478 116 c
448 136 l
415 84 382 40 323 40 c
262 40 231 77 225 262 c
362 262 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-BoldItalic
{
500 0 9 -20 542 686
{
542 686 m
518 686 l
513 673 507 660 495 660 c
475 660 457 683 384 683 c
285 683 170 584 122 430 c
58 430 l
34 369 l
105 369 l
101 354 92 328 90 312 c
34 312 l
9 251 l
86 251 l
85 238 84 223 84 207 c
84 112 117 -14 272 -14 c
326 -14 349 9 381 9 c
393 9 393 -10 394 -20 c
420 -20 l
461 148 l
429 148 l
416 109 362 15 292 15 c
227 15 197 55 197 128 c
197 162 204 203 216 251 c
378 251 l
402 312 l
227 312 l
229 325 236 356 241 369 c
425 369 l
450 430 l
255 430 l
257 435 264 458 274 488 c
298 561 337 654 394 654 c
437 654 484 621 484 530 c
484 516 l
516 516 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-Italic
{
500 0 23 -10 595 692
{
399 317 m
196 317 l
199 340 203 363 209 386 c
429 386 l
444 424 l
219 424 l
246 514 307 648 418 648 c
448 648 471 638 492 616 c
529 576 524 529 527 479 c
549 475 l
595 687 l
570 687 l
562 674 558 664 542 664 c
518 664 474 692 423 692 c
275 692 162 551 116 424 c
67 424 l
53 386 l
104 386 l
98 363 93 340 90 317 c
37 317 l
23 279 l
86 279 l
85 266 85 253 85 240 c
85 118 137 -10 277 -10 c
370 -10 436 58 488 128 c
466 149 l
424 101 375 48 307 48 c
212 48 190 160 190 234 c
190 249 191 264 192 279 c
384 279 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-Roman
{
500 0 10 -12 484 692
{
347 298 m
171 298 l
170 310 170 322 170 335 c
170 362 l
362 362 l
374 403 l
172 403 l
184 580 244 642 308 642 c
380 642 434 574 457 457 c
481 462 l
474 691 l
449 691 l
433 670 429 657 410 657 c
394 657 360 692 299 692 c
204 692 94 604 73 403 c
22 403 l
10 362 l
70 362 l
69 352 69 341 69 330 c
69 319 69 308 70 298 c
22 298 l
10 257 l
73 257 l
97 57 216 -12 295 -12 c
364 -12 427 25 484 123 c
458 142 l
425 101 384 37 316 37 c
256 37 189 84 173 257 c
335 257 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
end
Level2? {setglobal} if
currentdict readonly pop end
%%EndResource
PDFText begin
[39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis
/Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute
/egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde
/oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex
/udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls
/registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash
/.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef
/.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash
/questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef
/guillemotleft/guillemotright/ellipsis/space/Agrave/Atilde/Otilde/OE/oe
/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide
/.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright
/fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand
/Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex
/Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex
/Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla
/hungarumlaut/ogonek/caron
0 TE
[1/dotlessi/caron 39/quotesingle 96/grave
127/bullet/Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis
/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE
/bullet/Zcaron/bullet/bullet/quoteleft/quoteright/quotedblleft
/quotedblright/bullet/endash/emdash/tilde/trademark/scaron
/guilsinglright/oe/bullet/zcaron/Ydieresis/space/exclamdown/cent/sterling
/currency/yen/brokenbar/section/dieresis/copyright/ordfeminine
/guillemotleft/logicalnot/hyphen/registered/macron/degree/plusminus
/twosuperior/threesuperior/acute/mu/paragraph/periodcentered/cedilla
/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis
/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply/Oslash
/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave
/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla/egrave/eacute
/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis/eth/ntilde
/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave/uacute
/ucircumflex/udieresis/yacute/thorn/ydieresis
1 TE
end
%%BeginResource: procset pdfasc.prc 6.0 1
%%Copyright: Copyright 1992-2003 Adobe Systems Incorporated. All Rights Reserved.
/ASR {
13 dict begin
/mirV? exch def
/mirH? exch def
/center? exch def
/autorotate? exch def
/angle exch def
/shrink exch def
/Pury exch def
/Purx exch def
/Plly exch def
/Pllx exch def
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
Dury 0 eq Durx 0 eq and Dlly 0 eq Dllx 0 eq and and
{ shrink 0 gt { GClipBBox } { GPageBBox } ifelse }
{ ITransDBBox }
ifelse
/PHt Pury Plly sub def
/PW Purx Pllx sub def
/DHt Dury Dlly sub def
/DW Durx Dllx sub def
angle 90 eq angle 270 eq or
{
PHt /PHt PW def /PW exch def
} if
autorotate? PHt PW ne and DHt DW ne and
{
DHt DW ge
PHt PW ge
ne
{ /angle angle 90 add def
PHt /PHt PW def /PW exch def
}
if
} if
angle 0 ne
{
/angle angle 360 mod def
angle rotate
angle 90 eq
{ 0 DW neg translate }
if
angle 180 eq
{ DW neg DHt neg translate }
if
angle 270 eq
{ DHt neg 0 translate }
if
} if
center?
{
ITransBBox
Durx Dllx add 2 div Dury Dlly add 2 div
Purx Pllx add -2 div Pury Plly add -2 div
3 -1 roll add exch
3 -1 roll add exch
translate
}
{
ITransBBox
angle 0 eq
{Dllx Pllx sub Dury Pury sub}
if
angle 90 eq
{Durx Purx sub Dury Pury sub}
if
angle 180 eq
{Durx Purx sub Dlly Plly sub}
if
angle 270 eq
{Dllx Pllx sub Dlly Plly sub}
if
translate
}
ifelse
mirH? mirV? or
{
ITransBBox
mirH?
{
-1 1 scale
Durx Dllx add neg 0 translate
} if
mirV?
{
1 -1 scale
0 Dury Dlly add neg translate
} if
} if
shrink 0 ne
{
ITransBBox
Dury Dlly sub Pury Plly sub div
Durx Dllx sub Purx Pllx sub div
2 copy gt { exch } if pop
shrink 1 eq
{
Durx Dllx add 2 div Dury Dlly add 2 div translate
dup scale
Purx Pllx add -2 div Pury Plly add -2 div translate
}
{
shrink 2 eq 1 index 1.0 lt and
{
Durx Dllx add 2 div Dury Dlly add 2 div translate
dup scale
Purx Pllx add -2 div Pury Plly add -2 div translate
}
{ pop }
ifelse
}
ifelse
} if
end
} [/autorotate? /shrink? /mirH? /mirV? /angle /Pury /Purx /Plly /Pllx /Durx /Dury /Dllx /Dlly /PW /PHt /DW /DHt
/Devurx /Devury /Devllx /Devlly /pdfHt /pdfW]
bld
/GClipBBox
{
gsave newpath clippath pathbbox newpath grestore
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
ITransDBBox
} [/Durx /Dury /Dllx /Dlly]
bld
/GPageBBox
{
{
currentpagedevice /PageSize get aload pop
/Devury exch def /Devurx exch def
/Devllx 0 def /Devlly 0 def
ITransBBox
}
stopped
{ GClipBBox }
if
} [/Devurx /Devury /Devllx /Devlly ]
bld
/ITransDBBox
{
Durx Dury transform matrix defaultmatrix itransform
/Devury exch def
/Devurx exch def
Dllx Dlly transform matrix defaultmatrix itransform
/Devlly exch def
/Devllx exch def
Devury Devlly lt {/Devlly Devury /Devury Devlly def def} if
Devurx Devllx lt {/Devllx Devurx /Devurx Devllx def def} if
} [/Durx /Dury /Dllx /Dlly /Devurx /Devury /Devllx /Devlly ]
bld
/ITransBBox
{
/um matrix currentmatrix matrix defaultmatrix matrix invertmatrix matrix concatmatrix def
Devllx Devlly um itransform
Devurx Devury um itransform
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
Dury Dlly lt {/Dlly Dury /Dury Dlly def def} if
Durx Dllx lt {/Dllx Durx /Durx Dllx def def} if
} [ /um /Durx /Dury /Dllx /Dlly /Devurx /Devury /Devllx /Devlly ]
bld
%%EndResource
currentdict readonly pop
end end
/currentpacking where {pop setpacking}if
PDFVars/DocInitAll{[PDF PDFText]{/docinitialize get exec}forall }put
-PDFVars/InitAll{[PDF PDFText]{/initialize get exec}forall initgs}put
-PDFVars/TermAll{[PDFText PDF]{/terminate get exec}forall}put
-PDFVars begin PDF begin
PDFVars/DocInitAll get exec PDFVars/InitAll get exec
[/NamespacePush PDFMark5
[/_objdef {Metadata_In_EPS} /type /stream /OBJ PDFMark5
[{Metadata_In_EPS} 3537 (% &end XMP packet& %) ReadByPDFMark5
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
-<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="3.1-701">
- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
- <rdf:Description rdf:about=""
- xmlns:xap="http://ns.adobe.com/xap/1.0/">
- <xap:CreateDate>2006-10-20T15:23:02+02:00</xap:CreateDate>
- <xap:ModifyDate>2006-10-20T15:23:02+02:00</xap:ModifyDate>
- <xap:MetadataDate>2006-10-20T15:23:02+02:00</xap:MetadataDate>
- </rdf:Description>
- <rdf:Description rdf:about=""
- xmlns:xapMM="http://ns.adobe.com/xap/1.0/mm/"
- xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#">
- <xapMM:DocumentID>uuid:34DD0B9161E111DBB7AD8EFAF1591643</xapMM:DocumentID>
- <xapMM:InstanceID>uuid:34DD0B9161E111DBB7AD8EFAF1591643</xapMM:InstanceID>
- <xapMM:DerivedFrom rdf:parseType="Resource">
- <stRef:instanceID>uuid:091de08b-603e-11db-9b35-000a95cd9010</stRef:instanceID>
- <stRef:documentID>uuid:47ed4c00-603c-11db-9960-000a95cd9010</stRef:documentID>
- </xapMM:DerivedFrom>
- </rdf:Description>
- <rdf:Description rdf:about=""
- xmlns:dc="http://purl.org/dc/elements/1.1/">
- <dc:title>
- <rdf:Alt>
- <rdf:li xml:lang="x-default">paper.dvi</rdf:li>
- </rdf:Alt>
- </dc:title>
- <dc:format>application/eps</dc:format>
- </rdf:Description>
- </rdf:RDF>
-</x:xmpmeta>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<?xpacket end="w"?>
% &end XMP packet& %
[{Metadata_In_EPS} 2 dict begin /Type /Metadata def /Subtype /XML def currentdict end /PUT PDFMark5
[/Document 1 dict begin /Metadata {Metadata_In_EPS} def currentdict end /BDC PDFMark5
[/NamespacePop PDFMark5
PDFVars/TermAll get exec end end
PDF /docinitialize get exec
-
%%EndSetup
PDFVars begin PDF begin PDFVars/InitAll get exec
362.994 364.042 115.0 98.583 rectclip
q
362.994 364.042 m
477.994 364.042 l
477.994 462.625 l
362.994 462.625 l
h
W
n
q
0.1 0.0 0.0 0.1 0.0 0.0 cm
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
Q
q
n
1195.62 4688.31 m
2327.9 4688.31 l
2327.9 3620.38 l
1195.62 3620.38 l
h
W
n
4.88755 w
1 j
[4.88755 39.1004 ] 0.0 d
3.25837 w
[] 0.0 d
4.88755 w
Q
q
n
1321.07 4649.21 m
2217.12 4649.21 l
2217.12 3703.47 l
1321.07 3703.47 l
h
W
n
Q
q
n
0.0 0.0 m
W
n
q
951.313 0.0 0.0 -4.69205 243.734 4059.78 cm
Q
Q
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
Q
q
n
2449.61 4685.86 m
3581.89 4685.86 l
3581.89 3620.37 l
2449.61 3620.37 l
h
W
n
4.88755 w
1 j
[4.88755 39.1004 ] 0.0 d
3.25837 w
[] 0.0 d
4.88755 w
Q
q
n
2575.06 4646.76 m
3520.8 4646.76 l
3520.8 3701.02 l
2575.06 3701.02 l
h
W
n
Q
q
n
0.0 0.0 m
W
n
q
951.313 0.0 0.0 -4.69205 1497.72 4059.77 cm
Q
Q
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
[/DeviceCMYK] cs 0.0 0.0 0.0 1.0 sc
%ADOBeginSubsetFont: QZEBAA+CMR10 Initial
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
12 dict dup begin
/FontType 1 def
/FontName /QZEBAA+CMR10 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/ItalicAngle 0 def
/WasEmbedded true def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
def
/FontBBox {-40 -250 1009 750} def
end
systemdict begin
dup /Private
13 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-22 -0 683 705 431 448 666 677] def
/OtherBlues [-206 -194] def
/BlueScale 0.04379 def
/StdHW [31] def
/StdVW [69] def
/StemSnapH [22 31] def
/StemSnapV [69 89] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs [{ct_CffDict/F0Subr get exec} {ct_CffDict/F1Subr get exec}
{ct_CffDict/F2Subr get exec} {ct_CffDict/HSSubr get exec}] def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
1 dict dup begin
/.notdef <1C60D8A8C9B08A959E2F69652E8B8F> |-
end put
end
dup /FontName get exch definefont pop
end
end
-%ADOEndSubsetFont
-[ 1 /dotlessi/caron 11 /ff/fi/fl/ffi
32 /space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus
/comma/hyphen/period/slash/zero/one
/two/three/four/five/six/seven
/eight/nine/colon/semicolon/less/equal
/greater/question/at/A/B/C
/D/E/F/G/H/I
/J/K/L/M/N/O
/P/Q/R/S/T/U
/V/W/X/Y/Z/bracketleft
/backslash/bracketright/circumflex/underscore/quoteleft/a
/b/c/d/e/f/g
/h/i/j/k/l/m
/n/o/p/q/r/s
/t/u/v/w/x/y
/z/endash/bar/braceright/tilde/bullet
/Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis
/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft
/OE/bullet/Zcaron/bullet/bullet/quoteleft
/quoteright/quotedblleft/quotedblright/bullet/endash/emdash
/tilde/trademark/scaron/guilsinglright/oe/bullet
/zcaron/Ydieresis/space/exclamdown/cent/sterling
/currency/yen/brokenbar/section/dieresis/copyright
/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron
/degree/plusminus/twosuperior/threesuperior/acute/mu
/paragraph/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright
/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute
/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute
/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute
/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave
/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls
/agrave/aacute/acircumflex/atilde/adieresis/aring
/ae/ccedilla/egrave/eacute/ecircumflex/edieresis
/igrave/iacute/icircumflex/idieresis/eth/ntilde
/ograve/oacute/ocircumflex/otilde/odieresis/divide
/oslash/ugrave/uacute/ucircumflex/udieresis/yacute
/thorn/ydieresis
/N41 (QZEBAA+CMR10) -1 TZ
347.615 364.327 m
%ADOBeginSubsetFont: QZEBAA+CMR10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/QZEBAA+CMR10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/five <1C60D8A8C9B7A73D3B2B97F19D54A2E00E7DDA8E72064220CB7581D13
CEDF071F346430E40993A6297E3A2A6D6093205222D977AC7F7B65CC82B221D9
B18ADEA5D4AF0261ABF060D3E283C7B3B5EB39FF499721FD51203AE59E3BEA25
7DFD3E472FEF67221488EC8D1F355E2FAD057CA44A8B4BAD6C6C719C164907CB
F9A6CC770DB0C7E58A37D2385E23F576BCFF94FFBFD8ADD4C5E6C32CD83ACEB7
7472D00FE1A4DC66393A99AC6BBD252B04C98B710149EA42B66ACE89D4FC4393
F3A09165DF477ABCB0E8A8DB21E4278CA219EBCC9B067F92619913BDBD1EF3C9
A> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/QZEBAA+CMR10 findfont /Encoding get
dup 53 /five put
pop
end
-%ADOEndSubsetFont
-/N41 10.6637 Tf
(5) show
Q
q
n
3703.6 4688.29 m
4835.88 4688.29 l
4835.88 3620.36 l
3703.6 3620.36 l
h
W
n
n
[/DeviceGray] cs 1.0 sc
3703.600098 3620.360107 1132.279785 1046.750244 rectfill
-
n
3888.520020 3761.290039 828.437988 828.437988 rectfill
-
4.88755 w
1 j
n
3888.52 3761.29 828.438 828.438 re
S
[4.88755 39.1004 ] 0.0 d
3.25837 w
n
3888.52 3761.29 m
3888.52 4589.73 l
0.0 sc
S
n
3888.52 4589.73 m
3888.52 4589.73 l
S
n
3991.97 3761.29 m
3991.97 4589.73 l
S
n
3991.97 4589.73 m
3991.97 4589.73 l
S
n
4096.23 3761.29 m
4096.23 4589.73 l
S
n
4096.23 4589.73 m
4096.23 4589.73 l
S
n
4199.69 3761.29 m
4199.69 4589.73 l
S
n
4199.69 4589.73 m
4199.69 4589.73 l
S
n
4303.14 3761.29 m
4303.14 4589.73 l
S
n
4303.14 4589.73 m
4303.14 4589.73 l
S
n
4406.59 3761.29 m
4406.59 4589.73 l
S
n
4406.59 4589.73 m
4406.59 4589.73 l
S
n
4510.05 3761.29 m
4510.05 4589.73 l
S
n
4510.05 4589.73 m
4510.05 4589.73 l
S
n
4613.5 3761.29 m
4613.5 4589.73 l
S
n
4613.5 4589.73 m
4613.5 4589.73 l
S
n
4716.95 3761.29 m
4716.95 4589.73 l
S
n
4716.95 4589.73 m
4716.95 4589.73 l
S
n
3888.52 3761.29 m
4716.95 3761.29 l
S
n
4716.95 3761.29 m
4716.95 3761.29 l
S
n
3888.52 3864.74 m
4716.95 3864.74 l
S
n
4716.95 3864.74 m
4716.95 3864.74 l
S
n
3888.52 3968.2 m
4716.95 3968.2 l
S
n
4716.95 3968.2 m
4716.95 3968.2 l
S
n
3888.52 4072.46 m
4716.95 4072.46 l
S
n
4716.95 4072.46 m
4716.95 4072.46 l
S
n
3888.52 4175.91 m
4716.95 4175.91 l
S
n
4716.95 4175.91 m
4716.95 4175.91 l
S
n
3888.52 4279.37 m
4716.95 4279.37 l
S
n
4716.95 4279.37 m
4716.95 4279.37 l
S
n
3888.52 4382.82 m
4716.95 4382.82 l
S
n
4716.95 4382.82 m
4716.95 4382.82 l
S
n
3888.52 4486.27 m
4716.95 4486.27 l
S
n
4716.95 4486.27 m
4716.95 4486.27 l
S
n
3888.52 4589.73 m
4716.95 4589.73 l
S
n
4716.95 4589.73 m
4716.95 4589.73 l
S
[] 0.0 d
4.88755 w
n
3888.52 3761.29 m
4716.95 3761.29 l
S
n
3888.52 4589.73 m
4716.95 4589.73 l
S
n
3888.52 3761.29 m
3888.52 4589.73 l
S
n
4716.95 3761.29 m
4716.95 4589.73 l
S
n
3888.52 3761.29 m
4716.95 3761.29 l
S
n
3888.52 3761.29 m
3888.52 4589.73 l
S
n
3888.52 3761.29 m
3888.52 3770.25 l
S
n
3888.52 4589.73 m
3888.52 4580.77 l
S
n
3991.97 3761.29 m
3991.97 3770.25 l
S
n
3991.97 4589.73 m
3991.97 4580.77 l
S
n
4096.23 3761.29 m
4096.23 3770.25 l
S
n
4096.23 4589.73 m
4096.23 4580.77 l
S
n
4199.69 3761.29 m
4199.69 3770.25 l
S
n
4199.69 4589.73 m
4199.69 4580.77 l
S
n
4303.14 3761.29 m
4303.14 3770.25 l
S
n
4303.14 4589.73 m
4303.14 4580.77 l
S
n
4406.59 3761.29 m
4406.59 3770.25 l
S
n
4406.59 4589.73 m
4406.59 4580.77 l
S
n
4510.05 3761.29 m
4510.05 3770.25 l
S
n
4510.05 4589.73 m
4510.05 4580.77 l
S
n
4613.5 3761.29 m
4613.5 3770.25 l
S
n
4613.5 4589.73 m
4613.5 4580.77 l
S
n
4716.95 3761.29 m
4716.95 3770.25 l
S
n
4716.95 4589.73 m
4716.95 4580.77 l
S
n
3888.52 3761.29 m
3897.48 3761.29 l
S
n
4716.95 3761.29 m
4707.99 3761.29 l
S
n
3888.52 3864.74 m
3897.48 3864.74 l
S
n
4716.95 3864.74 m
4707.99 3864.74 l
S
n
3888.52 3968.2 m
3897.48 3968.2 l
S
n
4716.95 3968.2 m
4707.99 3968.2 l
S
n
3888.52 4072.46 m
3897.48 4072.46 l
S
n
4716.95 4072.46 m
4707.99 4072.46 l
S
n
3888.52 4175.91 m
3897.48 4175.91 l
S
n
4716.95 4175.91 m
4707.99 4175.91 l
S
n
3888.52 4279.37 m
3897.48 4279.37 l
S
n
4716.95 4279.37 m
4707.99 4279.37 l
S
n
3888.52 4382.82 m
3897.48 4382.82 l
S
n
4716.95 4382.82 m
4707.99 4382.82 l
S
n
3888.52 4486.27 m
3897.48 4486.27 l
S
n
4716.95 4486.27 m
4707.99 4486.27 l
S
n
3888.52 4589.73 m
3897.48 4589.73 l
S
n
4716.95 4589.73 m
4707.99 4589.73 l
S
n
3888.52 3761.29 m
4716.95 3761.29 l
S
n
3888.52 4589.73 m
4716.95 4589.73 l
S
n
3888.52 3761.29 m
3888.52 4589.73 l
S
n
4716.95 3761.29 m
4716.95 4589.73 l
S
Q
q
n
3829.05 4649.19 m
4725.1 4649.19 l
4725.1 3701.01 l
3829.05 3701.01 l
h
W
n
n
3898.29 4589.73 m
3898.29 4584.33 3893.91 4579.95 3888.52 4579.95 c
3883.12 4579.95 3878.74 4584.33 3878.74 4589.73 c
3878.74 4595.12 3883.12 4599.5 3888.52 4599.5 c
3893.91 4599.5 3898.29 4595.12 3898.29 4589.73 c
[/DeviceRGB] cs 0.0 0.0 1.0 sc
f
n
3950.42 4537.59 m
3950.42 4532.2 3946.05 4527.82 3940.65 4527.82 c
3935.25 4527.82 3930.88 4532.2 3930.88 4537.59 c
3930.88 4542.99 3935.25 4547.37 3940.65 4547.37 c
3946.05 4547.37 3950.42 4542.99 3950.42 4537.59 c
f
n
4001.74 4486.27 m
4001.74 4480.88 3997.37 4476.5 3991.97 4476.5 c
3986.57 4476.5 3982.19 4480.88 3982.19 4486.27 c
3982.19 4491.67 3986.57 4496.05 3991.97 4496.05 c
3997.37 4496.05 4001.74 4491.67 4001.74 4486.27 c
f
n
4053.88 4434.14 m
4053.88 4428.74 4049.5 4424.36 4044.1 4424.36 c
4038.7 4424.36 4034.33 4428.74 4034.33 4434.14 c
4034.33 4439.54 4038.7 4443.91 4044.1 4443.91 c
4049.5 4443.91 4053.88 4439.54 4053.88 4434.14 c
f
n
4106.01 4382.82 m
4106.01 4377.42 4101.63 4373.05 4096.23 4373.05 c
4090.84 4373.05 4086.46 4377.42 4086.46 4382.82 c
4086.46 4388.22 4090.84 4392.6 4096.23 4392.6 c
4101.63 4392.6 4106.01 4388.22 4106.01 4382.82 c
f
n
4157.33 4330.69 m
4157.33 4325.29 4152.95 4320.91 4147.55 4320.91 c
4142.16 4320.91 4137.78 4325.29 4137.78 4330.69 c
4137.78 4336.09 4142.16 4340.46 4147.55 4340.46 c
4152.95 4340.46 4157.33 4336.09 4157.33 4330.69 c
f
n
4209.46 4279.37 m
4209.46 4273.97 4205.09 4269.59 4199.69 4269.59 c
4194.29 4269.59 4189.91 4273.97 4189.91 4279.37 c
4189.91 4284.77 4194.29 4289.14 4199.69 4289.14 c
4205.09 4289.14 4209.46 4284.77 4209.46 4279.37 c
f
n
4260.78 4227.23 m
4260.78 4221.84 4256.41 4217.46 4251.01 4217.46 c
4245.61 4217.46 4241.23 4221.84 4241.23 4227.23 c
4241.23 4232.63 4245.61 4237.01 4251.01 4237.01 c
4256.41 4237.01 4260.78 4232.63 4260.78 4227.23 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4123.78 m
4364.23 4118.38 4359.86 4114.0 4354.46 4114.0 c
4349.06 4114.0 4344.69 4118.38 4344.69 4123.78 c
4344.69 4129.18 4349.06 4133.55 4354.46 4133.55 c
4359.86 4133.55 4364.23 4129.18 4364.23 4123.78 c
f
n
4416.37 4072.46 m
4416.37 4067.06 4411.99 4062.69 4406.59 4062.69 c
4401.2 4062.69 4396.82 4067.06 4396.82 4072.46 c
4396.82 4077.86 4401.2 4082.24 4406.59 4082.24 c
4411.99 4082.24 4416.37 4077.86 4416.37 4072.46 c
f
n
4467.69 4020.33 m
4467.69 4014.93 4463.31 4010.55 4457.91 4010.55 c
4452.52 4010.55 4448.14 4014.93 4448.14 4020.33 c
4448.14 4025.73 4452.52 4030.1 4457.91 4030.1 c
4463.31 4030.1 4467.69 4025.73 4467.69 4020.33 c
f
n
4519.82 3968.2 m
4519.82 3962.8 4515.45 3958.42 4510.05 3958.42 c
4504.65 3958.42 4500.27 3962.8 4500.27 3968.2 c
4500.27 3973.59 4504.65 3977.97 4510.05 3977.97 c
4515.45 3977.97 4519.82 3973.59 4519.82 3968.2 c
f
n
4571.14 3916.88 m
4571.14 3911.48 4566.77 3907.1 4561.37 3907.1 c
4555.97 3907.1 4551.59 3911.48 4551.59 3916.88 c
4551.59 3922.27 4555.97 3926.65 4561.37 3926.65 c
4566.77 3926.65 4571.14 3922.27 4571.14 3916.88 c
f
n
4623.28 3864.74 m
4623.28 3859.34 4618.9 3854.96 4613.5 3854.96 c
4608.1 3854.96 4603.73 3859.34 4603.73 3864.74 c
4603.73 3870.14 4608.1 3874.52 4613.5 3874.52 c
4618.9 3874.52 4623.28 3870.14 4623.28 3864.74 c
f
n
4674.59 3813.42 m
4674.59 3808.02 4670.22 3803.64 4664.82 3803.64 c
4659.42 3803.64 4655.05 3808.02 4655.05 3813.42 c
4655.05 3818.82 4659.42 3823.2 4664.82 3823.2 c
4670.22 3823.2 4674.59 3818.82 4674.59 3813.42 c
f
n
3898.29 4537.59 m
3898.29 4532.2 3893.91 4527.82 3888.52 4527.82 c
3883.12 4527.82 3878.74 4532.2 3878.74 4537.59 c
3878.74 4542.99 3883.12 4547.37 3888.52 4547.37 c
3893.91 4547.37 3898.29 4542.99 3898.29 4537.59 c
f
n
3950.42 4491.98 m
3950.42 4486.58 3946.05 4482.2 3940.65 4482.2 c
3935.25 4482.2 3930.88 4486.58 3930.88 4491.98 c
3930.88 4497.38 3935.25 4501.75 3940.65 4501.75 c
3946.05 4501.75 3950.42 4497.38 3950.42 4491.98 c
f
n
4001.74 4447.17 m
4001.74 4441.77 3997.37 4437.4 3991.97 4437.4 c
3986.57 4437.4 3982.19 4441.77 3982.19 4447.17 c
3982.19 4452.57 3986.57 4456.95 3991.97 4456.95 c
3997.37 4456.95 4001.74 4452.57 4001.74 4447.17 c
f
n
4053.88 4401.55 m
4053.88 4396.16 4049.5 4391.78 4044.1 4391.78 c
4038.7 4391.78 4034.33 4396.16 4034.33 4401.55 c
4034.33 4406.95 4038.7 4411.33 4044.1 4411.33 c
4049.5 4411.33 4053.88 4406.95 4053.88 4401.55 c
f
n
4106.01 4356.75 m
4106.01 4351.36 4101.63 4346.98 4096.23 4346.98 c
4090.84 4346.98 4086.46 4351.36 4086.46 4356.75 c
4086.46 4362.15 4090.84 4366.53 4096.23 4366.53 c
4101.63 4366.53 4106.01 4362.15 4106.01 4356.75 c
f
n
4157.33 4311.14 m
4157.33 4305.74 4152.95 4301.36 4147.55 4301.36 c
4142.16 4301.36 4137.78 4305.74 4137.78 4311.14 c
4137.78 4316.54 4142.16 4320.91 4147.55 4320.91 c
4152.95 4320.91 4157.33 4316.54 4157.33 4311.14 c
f
n
4209.46 4266.34 m
4209.46 4260.94 4205.09 4256.56 4199.69 4256.56 c
4194.29 4256.56 4189.91 4260.94 4189.91 4266.34 c
4189.91 4271.73 4194.29 4276.11 4199.69 4276.11 c
4205.09 4276.11 4209.46 4271.73 4209.46 4266.34 c
f
n
4260.78 4220.72 m
4260.78 4215.32 4256.41 4210.94 4251.01 4210.94 c
4245.61 4210.94 4241.23 4215.32 4241.23 4220.72 c
4241.23 4226.12 4245.61 4230.49 4251.01 4230.49 c
4256.41 4230.49 4260.78 4226.12 4260.78 4220.72 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4130.3 m
4364.23 4124.9 4359.86 4120.52 4354.46 4120.52 c
4349.06 4120.52 4344.69 4124.9 4344.69 4130.3 c
4344.69 4135.7 4349.06 4140.07 4354.46 4140.07 c
4359.86 4140.07 4364.23 4135.7 4364.23 4130.3 c
f
n
4416.37 4084.68 m
4416.37 4079.28 4411.99 4074.91 4406.59 4074.91 c
4401.2 4074.91 4396.82 4079.28 4396.82 4084.68 c
4396.82 4090.08 4401.2 4094.46 4406.59 4094.46 c
4411.99 4094.46 4416.37 4090.08 4416.37 4084.68 c
f
n
4467.69 4039.88 m
4467.69 4034.48 4463.31 4030.1 4457.91 4030.1 c
4452.52 4030.1 4448.14 4034.48 4448.14 4039.88 c
4448.14 4045.28 4452.52 4049.65 4457.91 4049.65 c
4463.31 4049.65 4467.69 4045.28 4467.69 4039.88 c
f
n
4519.82 3994.26 m
4519.82 3988.86 4515.45 3984.48 4510.05 3984.48 c
4504.65 3984.48 4500.27 3988.86 4500.27 3994.26 c
4500.27 3999.66 4504.65 4004.04 4510.05 4004.04 c
4515.45 4004.04 4519.82 3999.66 4519.82 3994.26 c
f
n
4571.14 3949.46 m
4571.14 3944.06 4566.77 3939.68 4561.37 3939.68 c
4555.97 3939.68 4551.59 3944.06 4551.59 3949.46 c
4551.59 3954.86 4555.97 3959.23 4561.37 3959.23 c
4566.77 3959.23 4571.14 3954.86 4571.14 3949.46 c
f
n
4623.28 3903.84 m
4623.28 3898.44 4618.9 3894.07 4613.5 3894.07 c
4608.1 3894.07 4603.73 3898.44 4603.73 3903.84 c
4603.73 3909.24 4608.1 3913.62 4613.5 3913.62 c
4618.9 3913.62 4623.28 3909.24 4623.28 3903.84 c
f
n
4674.59 3859.04 m
4674.59 3853.64 4670.22 3849.26 4664.82 3849.26 c
4659.42 3849.26 4655.05 3853.64 4655.05 3859.04 c
4655.05 3864.44 4659.42 3868.81 4664.82 3868.81 c
4670.22 3868.81 4674.59 3864.44 4674.59 3859.04 c
f
n
3898.29 4486.27 m
3898.29 4480.88 3893.91 4476.5 3888.52 4476.5 c
3883.12 4476.5 3878.74 4480.88 3878.74 4486.27 c
3878.74 4491.67 3883.12 4496.05 3888.52 4496.05 c
3893.91 4496.05 3898.29 4491.67 3898.29 4486.27 c
f
n
3950.42 4447.17 m
3950.42 4441.77 3946.05 4437.4 3940.65 4437.4 c
3935.25 4437.4 3930.88 4441.77 3930.88 4447.17 c
3930.88 4452.57 3935.25 4456.95 3940.65 4456.95 c
3946.05 4456.95 3950.42 4452.57 3950.42 4447.17 c
f
n
4001.74 4408.07 m
4001.74 4402.68 3997.37 4398.3 3991.97 4398.3 c
3986.57 4398.3 3982.19 4402.68 3982.19 4408.07 c
3982.19 4413.47 3986.57 4417.85 3991.97 4417.85 c
3997.37 4417.85 4001.74 4413.47 4001.74 4408.07 c
f
n
4053.88 4369.79 m
4053.88 4364.39 4049.5 4360.01 4044.1 4360.01 c
4038.7 4360.01 4034.33 4364.39 4034.33 4369.79 c
4034.33 4375.19 4038.7 4379.56 4044.1 4379.56 c
4049.5 4379.56 4053.88 4375.19 4053.88 4369.79 c
f
n
4106.01 4330.69 m
4106.01 4325.29 4101.63 4320.91 4096.23 4320.91 c
4090.84 4320.91 4086.46 4325.29 4086.46 4330.69 c
4086.46 4336.09 4090.84 4340.46 4096.23 4340.46 c
4101.63 4340.46 4106.01 4336.09 4106.01 4330.69 c
f
n
4157.33 4291.59 m
4157.33 4286.19 4152.95 4281.81 4147.55 4281.81 c
4142.16 4281.81 4137.78 4286.19 4137.78 4291.59 c
4137.78 4296.98 4142.16 4301.36 4147.55 4301.36 c
4152.95 4301.36 4157.33 4296.98 4157.33 4291.59 c
f
n
4209.46 4253.3 m
4209.46 4247.9 4205.09 4243.53 4199.69 4243.53 c
4194.29 4243.53 4189.91 4247.9 4189.91 4253.3 c
4189.91 4258.7 4194.29 4263.07 4199.69 4263.07 c
4205.09 4263.07 4209.46 4258.7 4209.46 4253.3 c
f
n
4260.78 4214.2 m
4260.78 4208.8 4256.41 4204.43 4251.01 4204.43 c
4245.61 4204.43 4241.23 4208.8 4241.23 4214.2 c
4241.23 4219.6 4245.61 4223.98 4251.01 4223.98 c
4256.41 4223.98 4260.78 4219.6 4260.78 4214.2 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4136.81 m
4364.23 4131.41 4359.86 4127.04 4354.46 4127.04 c
4349.06 4127.04 4344.69 4131.41 4344.69 4136.81 c
4344.69 4142.21 4349.06 4146.59 4354.46 4146.59 c
4359.86 4146.59 4364.23 4142.21 4364.23 4136.81 c
f
n
4416.37 4097.71 m
4416.37 4092.32 4411.99 4087.94 4406.59 4087.94 c
4401.2 4087.94 4396.82 4092.32 4396.82 4097.71 c
4396.82 4103.11 4401.2 4107.49 4406.59 4107.49 c
4411.99 4107.49 4416.37 4103.11 4416.37 4097.71 c
f
n
4467.69 4059.43 m
4467.69 4054.03 4463.31 4049.65 4457.91 4049.65 c
4452.52 4049.65 4448.14 4054.03 4448.14 4059.43 c
4448.14 4064.83 4452.52 4069.2 4457.91 4069.2 c
4463.31 4069.2 4467.69 4064.83 4467.69 4059.43 c
f
n
4519.82 4020.33 m
4519.82 4014.93 4515.45 4010.55 4510.05 4010.55 c
4504.65 4010.55 4500.27 4014.93 4500.27 4020.33 c
4500.27 4025.73 4504.65 4030.1 4510.05 4030.1 c
4515.45 4030.1 4519.82 4025.73 4519.82 4020.33 c
f
n
4571.14 3981.23 m
4571.14 3975.83 4566.77 3971.45 4561.37 3971.45 c
4555.97 3971.45 4551.59 3975.83 4551.59 3981.23 c
4551.59 3986.62 4555.97 3991.0 4561.37 3991.0 c
4566.77 3991.0 4571.14 3986.62 4571.14 3981.23 c
f
n
4623.28 3942.94 m
4623.28 3937.54 4618.9 3933.17 4613.5 3933.17 c
4608.1 3933.17 4603.73 3937.54 4603.73 3942.94 c
4603.73 3948.34 4608.1 3952.71 4613.5 3952.71 c
4618.9 3952.71 4623.28 3948.34 4623.28 3942.94 c
f
n
4674.59 3903.84 m
4674.59 3898.44 4670.22 3894.07 4664.82 3894.07 c
4659.42 3894.07 4655.05 3898.44 4655.05 3903.84 c
4655.05 3909.24 4659.42 3913.62 4664.82 3913.62 c
4670.22 3913.62 4674.59 3909.24 4674.59 3903.84 c
f
n
3898.29 4434.14 m
3898.29 4428.74 3893.91 4424.36 3888.52 4424.36 c
3883.12 4424.36 3878.74 4428.74 3878.74 4434.14 c
3878.74 4439.54 3883.12 4443.91 3888.52 4443.91 c
3893.91 4443.91 3898.29 4439.54 3898.29 4434.14 c
f
n
3950.42 4401.55 m
3950.42 4396.16 3946.05 4391.78 3940.65 4391.78 c
3935.25 4391.78 3930.88 4396.16 3930.88 4401.55 c
3930.88 4406.95 3935.25 4411.33 3940.65 4411.33 c
3946.05 4411.33 3950.42 4406.95 3950.42 4401.55 c
f
n
4001.74 4369.79 m
4001.74 4364.39 3997.37 4360.01 3991.97 4360.01 c
3986.57 4360.01 3982.19 4364.39 3982.19 4369.79 c
3982.19 4375.19 3986.57 4379.56 3991.97 4379.56 c
3997.37 4379.56 4001.74 4375.19 4001.74 4369.79 c
f
n
4053.88 4337.2 m
4053.88 4331.8 4049.5 4327.43 4044.1 4327.43 c
4038.7 4327.43 4034.33 4331.8 4034.33 4337.2 c
4034.33 4342.6 4038.7 4346.98 4044.1 4346.98 c
4049.5 4346.98 4053.88 4342.6 4053.88 4337.2 c
f
n
4106.01 4304.62 m
4106.01 4299.22 4101.63 4294.84 4096.23 4294.84 c
4090.84 4294.84 4086.46 4299.22 4086.46 4304.62 c
4086.46 4310.02 4090.84 4314.39 4096.23 4314.39 c
4101.63 4314.39 4106.01 4310.02 4106.01 4304.62 c
f
n
4157.33 4272.85 m
4157.33 4267.45 4152.95 4263.07 4147.55 4263.07 c
4142.16 4263.07 4137.78 4267.45 4137.78 4272.85 c
4137.78 4278.25 4142.16 4282.62 4147.55 4282.62 c
4152.95 4282.62 4157.33 4278.25 4157.33 4272.85 c
f
n
4209.46 4240.27 m
4209.46 4234.87 4205.09 4230.49 4199.69 4230.49 c
4194.29 4230.49 4189.91 4234.87 4189.91 4240.27 c
4189.91 4245.66 4194.29 4250.04 4199.69 4250.04 c
4205.09 4250.04 4209.46 4245.66 4209.46 4240.27 c
f
n
4260.78 4207.68 m
4260.78 4202.29 4256.41 4197.91 4251.01 4197.91 c
4245.61 4197.91 4241.23 4202.29 4241.23 4207.68 c
4241.23 4213.08 4245.61 4217.46 4251.01 4217.46 c
4256.41 4217.46 4260.78 4213.08 4260.78 4207.68 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4143.33 m
4364.23 4137.93 4359.86 4133.55 4354.46 4133.55 c
4349.06 4133.55 4344.69 4137.93 4344.69 4143.33 c
4344.69 4148.73 4349.06 4153.11 4354.46 4153.11 c
4359.86 4153.11 4364.23 4148.73 4364.23 4143.33 c
f
n
4416.37 4110.75 m
4416.37 4105.35 4411.99 4100.97 4406.59 4100.97 c
4401.2 4100.97 4396.82 4105.35 4396.82 4110.75 c
4396.82 4116.14 4401.2 4120.52 4406.59 4120.52 c
4411.99 4120.52 4416.37 4116.14 4416.37 4110.75 c
f
n
4467.69 4078.16 m
4467.69 4072.77 4463.31 4068.39 4457.91 4068.39 c
4452.52 4068.39 4448.14 4072.77 4448.14 4078.16 c
4448.14 4083.56 4452.52 4087.94 4457.91 4087.94 c
4463.31 4087.94 4467.69 4083.56 4467.69 4078.16 c
f
n
4519.82 4046.39 m
4519.82 4041.0 4515.45 4036.62 4510.05 4036.62 c
4504.65 4036.62 4500.27 4041.0 4500.27 4046.39 c
4500.27 4051.79 4504.65 4056.17 4510.05 4056.17 c
4515.45 4056.17 4519.82 4051.79 4519.82 4046.39 c
f
n
4571.14 4013.81 m
4571.14 4008.41 4566.77 4004.04 4561.37 4004.04 c
4555.97 4004.04 4551.59 4008.41 4551.59 4013.81 c
4551.59 4019.21 4555.97 4023.59 4561.37 4023.59 c
4566.77 4023.59 4571.14 4019.21 4571.14 4013.81 c
f
n
4623.28 3981.23 m
4623.28 3975.83 4618.9 3971.45 4613.5 3971.45 c
4608.1 3971.45 4603.73 3975.83 4603.73 3981.23 c
4603.73 3986.62 4608.1 3991.0 4613.5 3991.0 c
4618.9 3991.0 4623.28 3986.62 4623.28 3981.23 c
f
n
4674.59 3949.46 m
4674.59 3944.06 4670.22 3939.68 4664.82 3939.68 c
4659.42 3939.68 4655.05 3944.06 4655.05 3949.46 c
4655.05 3954.86 4659.42 3959.23 4664.82 3959.23 c
4670.22 3959.23 4674.59 3954.86 4674.59 3949.46 c
f
n
3898.29 4382.82 m
3898.29 4377.42 3893.91 4373.05 3888.52 4373.05 c
3883.12 4373.05 3878.74 4377.42 3878.74 4382.82 c
3878.74 4388.22 3883.12 4392.6 3888.52 4392.6 c
3893.91 4392.6 3898.29 4388.22 3898.29 4382.82 c
f
n
3950.42 4356.75 m
3950.42 4351.36 3946.05 4346.98 3940.65 4346.98 c
3935.25 4346.98 3930.88 4351.36 3930.88 4356.75 c
3930.88 4362.15 3935.25 4366.53 3940.65 4366.53 c
3946.05 4366.53 3950.42 4362.15 3950.42 4356.75 c
f
n
4001.74 4330.69 m
4001.74 4325.29 3997.37 4320.91 3991.97 4320.91 c
3986.57 4320.91 3982.19 4325.29 3982.19 4330.69 c
3982.19 4336.09 3986.57 4340.46 3991.97 4340.46 c
3997.37 4340.46 4001.74 4336.09 4001.74 4330.69 c
f
n
4053.88 4304.62 m
4053.88 4299.22 4049.5 4294.84 4044.1 4294.84 c
4038.7 4294.84 4034.33 4299.22 4034.33 4304.62 c
4034.33 4310.02 4038.7 4314.39 4044.1 4314.39 c
4049.5 4314.39 4053.88 4310.02 4053.88 4304.62 c
f
n
4106.01 4279.37 m
4106.01 4273.97 4101.63 4269.59 4096.23 4269.59 c
4090.84 4269.59 4086.46 4273.97 4086.46 4279.37 c
4086.46 4284.77 4090.84 4289.14 4096.23 4289.14 c
4101.63 4289.14 4106.01 4284.77 4106.01 4279.37 c
f
n
4157.33 4253.3 m
4157.33 4247.9 4152.95 4243.53 4147.55 4243.53 c
4142.16 4243.53 4137.78 4247.9 4137.78 4253.3 c
4137.78 4258.7 4142.16 4263.07 4147.55 4263.07 c
4152.95 4263.07 4157.33 4258.7 4157.33 4253.3 c
f
n
4209.46 4227.23 m
4209.46 4221.84 4205.09 4217.46 4199.69 4217.46 c
4194.29 4217.46 4189.91 4221.84 4189.91 4227.23 c
4189.91 4232.63 4194.29 4237.01 4199.69 4237.01 c
4205.09 4237.01 4209.46 4232.63 4209.46 4227.23 c
f
n
4260.78 4201.17 m
4260.78 4195.77 4256.41 4191.39 4251.01 4191.39 c
4245.61 4191.39 4241.23 4195.77 4241.23 4201.17 c
4241.23 4206.57 4245.61 4210.94 4251.01 4210.94 c
4256.41 4210.94 4260.78 4206.57 4260.78 4201.17 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4149.85 m
4364.23 4144.45 4359.86 4140.07 4354.46 4140.07 c
4349.06 4140.07 4344.69 4144.45 4344.69 4149.85 c
4344.69 4155.25 4349.06 4159.62 4354.46 4159.62 c
4359.86 4159.62 4364.23 4155.25 4364.23 4149.85 c
f
n
4416.37 4123.78 m
4416.37 4118.38 4411.99 4114.0 4406.59 4114.0 c
4401.2 4114.0 4396.82 4118.38 4396.82 4123.78 c
4396.82 4129.18 4401.2 4133.55 4406.59 4133.55 c
4411.99 4133.55 4416.37 4129.18 4416.37 4123.78 c
f
n
4467.69 4097.71 m
4467.69 4092.32 4463.31 4087.94 4457.91 4087.94 c
4452.52 4087.94 4448.14 4092.32 4448.14 4097.71 c
4448.14 4103.11 4452.52 4107.49 4457.91 4107.49 c
4463.31 4107.49 4467.69 4103.11 4467.69 4097.71 c
f
n
4519.82 4072.46 m
4519.82 4067.06 4515.45 4062.69 4510.05 4062.69 c
4504.65 4062.69 4500.27 4067.06 4500.27 4072.46 c
4500.27 4077.86 4504.65 4082.24 4510.05 4082.24 c
4515.45 4082.24 4519.82 4077.86 4519.82 4072.46 c
f
n
4571.14 4046.39 m
4571.14 4041.0 4566.77 4036.62 4561.37 4036.62 c
4555.97 4036.62 4551.59 4041.0 4551.59 4046.39 c
4551.59 4051.79 4555.97 4056.17 4561.37 4056.17 c
4566.77 4056.17 4571.14 4051.79 4571.14 4046.39 c
f
n
4623.28 4020.33 m
4623.28 4014.93 4618.9 4010.55 4613.5 4010.55 c
4608.1 4010.55 4603.73 4014.93 4603.73 4020.33 c
4603.73 4025.73 4608.1 4030.1 4613.5 4030.1 c
4618.9 4030.1 4623.28 4025.73 4623.28 4020.33 c
f
n
4674.59 3994.26 m
4674.59 3988.86 4670.22 3984.48 4664.82 3984.48 c
4659.42 3984.48 4655.05 3988.86 4655.05 3994.26 c
4655.05 3999.66 4659.42 4004.04 4664.82 4004.04 c
4670.22 4004.04 4674.59 3999.66 4674.59 3994.26 c
f
n
3898.29 4330.69 m
3898.29 4325.29 3893.91 4320.91 3888.52 4320.91 c
3883.12 4320.91 3878.74 4325.29 3878.74 4330.69 c
3878.74 4336.09 3883.12 4340.46 3888.52 4340.46 c
3893.91 4340.46 3898.29 4336.09 3898.29 4330.69 c
f
n
3950.42 4311.14 m
3950.42 4305.74 3946.05 4301.36 3940.65 4301.36 c
3935.25 4301.36 3930.88 4305.74 3930.88 4311.14 c
3930.88 4316.54 3935.25 4320.91 3940.65 4320.91 c
3946.05 4320.91 3950.42 4316.54 3950.42 4311.14 c
f
n
4001.74 4291.59 m
4001.74 4286.19 3997.37 4281.81 3991.97 4281.81 c
3986.57 4281.81 3982.19 4286.19 3982.19 4291.59 c
3982.19 4296.98 3986.57 4301.36 3991.97 4301.36 c
3997.37 4301.36 4001.74 4296.98 4001.74 4291.59 c
f
n
4053.88 4272.85 m
4053.88 4267.45 4049.5 4263.07 4044.1 4263.07 c
4038.7 4263.07 4034.33 4267.45 4034.33 4272.85 c
4034.33 4278.25 4038.7 4282.62 4044.1 4282.62 c
4049.5 4282.62 4053.88 4278.25 4053.88 4272.85 c
f
n
4106.01 4253.3 m
4106.01 4247.9 4101.63 4243.53 4096.23 4243.53 c
4090.84 4243.53 4086.46 4247.9 4086.46 4253.3 c
4086.46 4258.7 4090.84 4263.07 4096.23 4263.07 c
4101.63 4263.07 4106.01 4258.7 4106.01 4253.3 c
f
n
4157.33 4233.75 m
4157.33 4228.35 4152.95 4223.98 4147.55 4223.98 c
4142.16 4223.98 4137.78 4228.35 4137.78 4233.75 c
4137.78 4239.15 4142.16 4243.53 4147.55 4243.53 c
4152.95 4243.53 4157.33 4239.15 4157.33 4233.75 c
f
n
4209.46 4214.2 m
4209.46 4208.8 4205.09 4204.43 4199.69 4204.43 c
4194.29 4204.43 4189.91 4208.8 4189.91 4214.2 c
4189.91 4219.6 4194.29 4223.98 4199.69 4223.98 c
4205.09 4223.98 4209.46 4219.6 4209.46 4214.2 c
f
n
4260.78 4194.65 m
4260.78 4189.25 4256.41 4184.88 4251.01 4184.88 c
4245.61 4184.88 4241.23 4189.25 4241.23 4194.65 c
4241.23 4200.05 4245.61 4204.43 4251.01 4204.43 c
4256.41 4204.43 4260.78 4200.05 4260.78 4194.65 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4156.36 m
4364.23 4150.96 4359.86 4146.59 4354.46 4146.59 c
4349.06 4146.59 4344.69 4150.96 4344.69 4156.36 c
4344.69 4161.76 4349.06 4166.14 4354.46 4166.14 c
4359.86 4166.14 4364.23 4161.76 4364.23 4156.36 c
f
n
4416.37 4136.81 m
4416.37 4131.41 4411.99 4127.04 4406.59 4127.04 c
4401.2 4127.04 4396.82 4131.41 4396.82 4136.81 c
4396.82 4142.21 4401.2 4146.59 4406.59 4146.59 c
4411.99 4146.59 4416.37 4142.21 4416.37 4136.81 c
f
n
4467.69 4117.27 m
4467.69 4111.87 4463.31 4107.49 4457.91 4107.49 c
4452.52 4107.49 4448.14 4111.87 4448.14 4117.27 c
4448.14 4122.66 4452.52 4127.04 4457.91 4127.04 c
4463.31 4127.04 4467.69 4122.66 4467.69 4117.27 c
f
n
4519.82 4097.71 m
4519.82 4092.32 4515.45 4087.94 4510.05 4087.94 c
4504.65 4087.94 4500.27 4092.32 4500.27 4097.71 c
4500.27 4103.11 4504.65 4107.49 4510.05 4107.49 c
4515.45 4107.49 4519.82 4103.11 4519.82 4097.71 c
f
n
4571.14 4078.16 m
4571.14 4072.77 4566.77 4068.39 4561.37 4068.39 c
4555.97 4068.39 4551.59 4072.77 4551.59 4078.16 c
4551.59 4083.56 4555.97 4087.94 4561.37 4087.94 c
4566.77 4087.94 4571.14 4083.56 4571.14 4078.16 c
f
n
4623.28 4059.43 m
4623.28 4054.03 4618.9 4049.65 4613.5 4049.65 c
4608.1 4049.65 4603.73 4054.03 4603.73 4059.43 c
4603.73 4064.83 4608.1 4069.2 4613.5 4069.2 c
4618.9 4069.2 4623.28 4064.83 4623.28 4059.43 c
f
n
4674.59 4039.88 m
4674.59 4034.48 4670.22 4030.1 4664.82 4030.1 c
4659.42 4030.1 4655.05 4034.48 4655.05 4039.88 c
4655.05 4045.28 4659.42 4049.65 4664.82 4049.65 c
4670.22 4049.65 4674.59 4045.28 4674.59 4039.88 c
f
n
3898.29 4279.37 m
3898.29 4273.97 3893.91 4269.59 3888.52 4269.59 c
3883.12 4269.59 3878.74 4273.97 3878.74 4279.37 c
3878.74 4284.77 3883.12 4289.14 3888.52 4289.14 c
3893.91 4289.14 3898.29 4284.77 3898.29 4279.37 c
f
n
3950.42 4266.34 m
3950.42 4260.94 3946.05 4256.56 3940.65 4256.56 c
3935.25 4256.56 3930.88 4260.94 3930.88 4266.34 c
3930.88 4271.73 3935.25 4276.11 3940.65 4276.11 c
3946.05 4276.11 3950.42 4271.73 3950.42 4266.34 c
f
n
4001.74 4253.3 m
4001.74 4247.9 3997.37 4243.53 3991.97 4243.53 c
3986.57 4243.53 3982.19 4247.9 3982.19 4253.3 c
3982.19 4258.7 3986.57 4263.07 3991.97 4263.07 c
3997.37 4263.07 4001.74 4258.7 4001.74 4253.3 c
f
n
4053.88 4240.27 m
4053.88 4234.87 4049.5 4230.49 4044.1 4230.49 c
4038.7 4230.49 4034.33 4234.87 4034.33 4240.27 c
4034.33 4245.66 4038.7 4250.04 4044.1 4250.04 c
4049.5 4250.04 4053.88 4245.66 4053.88 4240.27 c
f
n
4106.01 4227.23 m
4106.01 4221.84 4101.63 4217.46 4096.23 4217.46 c
4090.84 4217.46 4086.46 4221.84 4086.46 4227.23 c
4086.46 4232.63 4090.84 4237.01 4096.23 4237.01 c
4101.63 4237.01 4106.01 4232.63 4106.01 4227.23 c
f
n
4157.33 4214.2 m
4157.33 4208.8 4152.95 4204.43 4147.55 4204.43 c
4142.16 4204.43 4137.78 4208.8 4137.78 4214.2 c
4137.78 4219.6 4142.16 4223.98 4147.55 4223.98 c
4152.95 4223.98 4157.33 4219.6 4157.33 4214.2 c
f
n
4209.46 4201.17 m
4209.46 4195.77 4205.09 4191.39 4199.69 4191.39 c
4194.29 4191.39 4189.91 4195.77 4189.91 4201.17 c
4189.91 4206.57 4194.29 4210.94 4199.69 4210.94 c
4205.09 4210.94 4209.46 4206.57 4209.46 4201.17 c
f
n
4260.78 4188.13 m
4260.78 4182.73 4256.41 4178.36 4251.01 4178.36 c
4245.61 4178.36 4241.23 4182.73 4241.23 4188.13 c
4241.23 4193.53 4245.61 4197.91 4251.01 4197.91 c
4256.41 4197.91 4260.78 4193.53 4260.78 4188.13 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4162.88 m
4364.23 4157.48 4359.86 4153.11 4354.46 4153.11 c
4349.06 4153.11 4344.69 4157.48 4344.69 4162.88 c
4344.69 4168.28 4349.06 4172.66 4354.46 4172.66 c
4359.86 4172.66 4364.23 4168.28 4364.23 4162.88 c
f
n
4416.37 4149.85 m
4416.37 4144.45 4411.99 4140.07 4406.59 4140.07 c
4401.2 4140.07 4396.82 4144.45 4396.82 4149.85 c
4396.82 4155.25 4401.2 4159.62 4406.59 4159.62 c
4411.99 4159.62 4416.37 4155.25 4416.37 4149.85 c
f
n
4467.69 4136.81 m
4467.69 4131.41 4463.31 4127.04 4457.91 4127.04 c
4452.52 4127.04 4448.14 4131.41 4448.14 4136.81 c
4448.14 4142.21 4452.52 4146.59 4457.91 4146.59 c
4463.31 4146.59 4467.69 4142.21 4467.69 4136.81 c
f
n
4519.82 4123.78 m
4519.82 4118.38 4515.45 4114.0 4510.05 4114.0 c
4504.65 4114.0 4500.27 4118.38 4500.27 4123.78 c
4500.27 4129.18 4504.65 4133.55 4510.05 4133.55 c
4515.45 4133.55 4519.82 4129.18 4519.82 4123.78 c
f
n
4571.14 4110.75 m
4571.14 4105.35 4566.77 4100.97 4561.37 4100.97 c
4555.97 4100.97 4551.59 4105.35 4551.59 4110.75 c
4551.59 4116.14 4555.97 4120.52 4561.37 4120.52 c
4566.77 4120.52 4571.14 4116.14 4571.14 4110.75 c
f
n
4623.28 4097.71 m
4623.28 4092.32 4618.9 4087.94 4613.5 4087.94 c
4608.1 4087.94 4603.73 4092.32 4603.73 4097.71 c
4603.73 4103.11 4608.1 4107.49 4613.5 4107.49 c
4618.9 4107.49 4623.28 4103.11 4623.28 4097.71 c
f
n
4674.59 4084.68 m
4674.59 4079.28 4670.22 4074.91 4664.82 4074.91 c
4659.42 4074.91 4655.05 4079.28 4655.05 4084.68 c
4655.05 4090.08 4659.42 4094.46 4664.82 4094.46 c
4670.22 4094.46 4674.59 4090.08 4674.59 4084.68 c
f
n
3898.29 4227.23 m
3898.29 4221.84 3893.91 4217.46 3888.52 4217.46 c
3883.12 4217.46 3878.74 4221.84 3878.74 4227.23 c
3878.74 4232.63 3883.12 4237.01 3888.52 4237.01 c
3893.91 4237.01 3898.29 4232.63 3898.29 4227.23 c
f
n
3950.42 4220.72 m
3950.42 4215.32 3946.05 4210.94 3940.65 4210.94 c
3935.25 4210.94 3930.88 4215.32 3930.88 4220.72 c
3930.88 4226.12 3935.25 4230.49 3940.65 4230.49 c
3946.05 4230.49 3950.42 4226.12 3950.42 4220.72 c
f
n
4001.74 4214.2 m
4001.74 4208.8 3997.37 4204.43 3991.97 4204.43 c
3986.57 4204.43 3982.19 4208.8 3982.19 4214.2 c
3982.19 4219.6 3986.57 4223.98 3991.97 4223.98 c
3997.37 4223.98 4001.74 4219.6 4001.74 4214.2 c
f
n
4053.88 4207.68 m
4053.88 4202.29 4049.5 4197.91 4044.1 4197.91 c
4038.7 4197.91 4034.33 4202.29 4034.33 4207.68 c
4034.33 4213.08 4038.7 4217.46 4044.1 4217.46 c
4049.5 4217.46 4053.88 4213.08 4053.88 4207.68 c
f
n
4106.01 4201.17 m
4106.01 4195.77 4101.63 4191.39 4096.23 4191.39 c
4090.84 4191.39 4086.46 4195.77 4086.46 4201.17 c
4086.46 4206.57 4090.84 4210.94 4096.23 4210.94 c
4101.63 4210.94 4106.01 4206.57 4106.01 4201.17 c
f
n
4157.33 4194.65 m
4157.33 4189.25 4152.95 4184.88 4147.55 4184.88 c
4142.16 4184.88 4137.78 4189.25 4137.78 4194.65 c
4137.78 4200.05 4142.16 4204.43 4147.55 4204.43 c
4152.95 4204.43 4157.33 4200.05 4157.33 4194.65 c
f
n
4209.46 4188.13 m
4209.46 4182.73 4205.09 4178.36 4199.69 4178.36 c
4194.29 4178.36 4189.91 4182.73 4189.91 4188.13 c
4189.91 4193.53 4194.29 4197.91 4199.69 4197.91 c
4205.09 4197.91 4209.46 4193.53 4209.46 4188.13 c
f
n
4260.78 4181.62 m
4260.78 4176.22 4256.41 4171.84 4251.01 4171.84 c
4245.61 4171.84 4241.23 4176.22 4241.23 4181.62 c
4241.23 4187.02 4245.61 4191.39 4251.01 4191.39 c
4256.41 4191.39 4260.78 4187.02 4260.78 4181.62 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4169.4 m
4364.23 4164.0 4359.86 4159.62 4354.46 4159.62 c
4349.06 4159.62 4344.69 4164.0 4344.69 4169.4 c
4344.69 4174.8 4349.06 4179.17 4354.46 4179.17 c
4359.86 4179.17 4364.23 4174.8 4364.23 4169.4 c
f
n
4416.37 4162.88 m
4416.37 4157.48 4411.99 4153.11 4406.59 4153.11 c
4401.2 4153.11 4396.82 4157.48 4396.82 4162.88 c
4396.82 4168.28 4401.2 4172.66 4406.59 4172.66 c
4411.99 4172.66 4416.37 4168.28 4416.37 4162.88 c
f
n
4467.69 4156.36 m
4467.69 4150.96 4463.31 4146.59 4457.91 4146.59 c
4452.52 4146.59 4448.14 4150.96 4448.14 4156.36 c
4448.14 4161.76 4452.52 4166.14 4457.91 4166.14 c
4463.31 4166.14 4467.69 4161.76 4467.69 4156.36 c
f
n
4519.82 4149.85 m
4519.82 4144.45 4515.45 4140.07 4510.05 4140.07 c
4504.65 4140.07 4500.27 4144.45 4500.27 4149.85 c
4500.27 4155.25 4504.65 4159.62 4510.05 4159.62 c
4515.45 4159.62 4519.82 4155.25 4519.82 4149.85 c
f
n
4571.14 4143.33 m
4571.14 4137.93 4566.77 4133.55 4561.37 4133.55 c
4555.97 4133.55 4551.59 4137.93 4551.59 4143.33 c
4551.59 4148.73 4555.97 4153.11 4561.37 4153.11 c
4566.77 4153.11 4571.14 4148.73 4571.14 4143.33 c
f
n
4623.28 4136.81 m
4623.28 4131.41 4618.9 4127.04 4613.5 4127.04 c
4608.1 4127.04 4603.73 4131.41 4603.73 4136.81 c
4603.73 4142.21 4608.1 4146.59 4613.5 4146.59 c
4618.9 4146.59 4623.28 4142.21 4623.28 4136.81 c
f
n
4674.59 4130.3 m
4674.59 4124.9 4670.22 4120.52 4664.82 4120.52 c
4659.42 4120.52 4655.05 4124.9 4655.05 4130.3 c
4655.05 4135.7 4659.42 4140.07 4664.82 4140.07 c
4670.22 4140.07 4674.59 4135.7 4674.59 4130.3 c
f
n
3898.29 4175.91 m
3898.29 4170.52 3893.91 4166.14 3888.52 4166.14 c
3883.12 4166.14 3878.74 4170.52 3878.74 4175.91 c
3878.74 4181.31 3883.12 4185.69 3888.52 4185.69 c
3893.91 4185.69 3898.29 4181.31 3898.29 4175.91 c
f
n
3950.42 4175.91 m
3950.42 4170.52 3946.05 4166.14 3940.65 4166.14 c
3935.25 4166.14 3930.88 4170.52 3930.88 4175.91 c
3930.88 4181.31 3935.25 4185.69 3940.65 4185.69 c
3946.05 4185.69 3950.42 4181.31 3950.42 4175.91 c
f
n
4001.74 4175.91 m
4001.74 4170.52 3997.37 4166.14 3991.97 4166.14 c
3986.57 4166.14 3982.19 4170.52 3982.19 4175.91 c
3982.19 4181.31 3986.57 4185.69 3991.97 4185.69 c
3997.37 4185.69 4001.74 4181.31 4001.74 4175.91 c
f
n
4053.88 4175.91 m
4053.88 4170.52 4049.5 4166.14 4044.1 4166.14 c
4038.7 4166.14 4034.33 4170.52 4034.33 4175.91 c
4034.33 4181.31 4038.7 4185.69 4044.1 4185.69 c
4049.5 4185.69 4053.88 4181.31 4053.88 4175.91 c
f
n
4106.01 4175.91 m
4106.01 4170.52 4101.63 4166.14 4096.23 4166.14 c
4090.84 4166.14 4086.46 4170.52 4086.46 4175.91 c
4086.46 4181.31 4090.84 4185.69 4096.23 4185.69 c
4101.63 4185.69 4106.01 4181.31 4106.01 4175.91 c
f
n
4157.33 4175.91 m
4157.33 4170.52 4152.95 4166.14 4147.55 4166.14 c
4142.16 4166.14 4137.78 4170.52 4137.78 4175.91 c
4137.78 4181.31 4142.16 4185.69 4147.55 4185.69 c
4152.95 4185.69 4157.33 4181.31 4157.33 4175.91 c
f
n
4209.46 4175.91 m
4209.46 4170.52 4205.09 4166.14 4199.69 4166.14 c
4194.29 4166.14 4189.91 4170.52 4189.91 4175.91 c
4189.91 4181.31 4194.29 4185.69 4199.69 4185.69 c
4205.09 4185.69 4209.46 4181.31 4209.46 4175.91 c
f
n
4260.78 4175.91 m
4260.78 4170.52 4256.41 4166.14 4251.01 4166.14 c
4245.61 4166.14 4241.23 4170.52 4241.23 4175.91 c
4241.23 4181.31 4245.61 4185.69 4251.01 4185.69 c
4256.41 4185.69 4260.78 4181.31 4260.78 4175.91 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4175.91 m
4364.23 4170.52 4359.86 4166.14 4354.46 4166.14 c
4349.06 4166.14 4344.69 4170.52 4344.69 4175.91 c
4344.69 4181.31 4349.06 4185.69 4354.46 4185.69 c
4359.86 4185.69 4364.23 4181.31 4364.23 4175.91 c
f
n
4416.37 4175.91 m
4416.37 4170.52 4411.99 4166.14 4406.59 4166.14 c
4401.2 4166.14 4396.82 4170.52 4396.82 4175.91 c
4396.82 4181.31 4401.2 4185.69 4406.59 4185.69 c
4411.99 4185.69 4416.37 4181.31 4416.37 4175.91 c
f
n
4467.69 4175.91 m
4467.69 4170.52 4463.31 4166.14 4457.91 4166.14 c
4452.52 4166.14 4448.14 4170.52 4448.14 4175.91 c
4448.14 4181.31 4452.52 4185.69 4457.91 4185.69 c
4463.31 4185.69 4467.69 4181.31 4467.69 4175.91 c
f
n
4519.82 4175.91 m
4519.82 4170.52 4515.45 4166.14 4510.05 4166.14 c
4504.65 4166.14 4500.27 4170.52 4500.27 4175.91 c
4500.27 4181.31 4504.65 4185.69 4510.05 4185.69 c
4515.45 4185.69 4519.82 4181.31 4519.82 4175.91 c
f
n
4571.14 4175.91 m
4571.14 4170.52 4566.77 4166.14 4561.37 4166.14 c
4555.97 4166.14 4551.59 4170.52 4551.59 4175.91 c
4551.59 4181.31 4555.97 4185.69 4561.37 4185.69 c
4566.77 4185.69 4571.14 4181.31 4571.14 4175.91 c
f
n
4623.28 4175.91 m
4623.28 4170.52 4618.9 4166.14 4613.5 4166.14 c
4608.1 4166.14 4603.73 4170.52 4603.73 4175.91 c
4603.73 4181.31 4608.1 4185.69 4613.5 4185.69 c
4618.9 4185.69 4623.28 4181.31 4623.28 4175.91 c
f
n
4674.59 4175.91 m
4674.59 4170.52 4670.22 4166.14 4664.82 4166.14 c
4659.42 4166.14 4655.05 4170.52 4655.05 4175.91 c
4655.05 4181.31 4659.42 4185.69 4664.82 4185.69 c
4670.22 4185.69 4674.59 4181.31 4674.59 4175.91 c
f
n
3898.29 4123.78 m
3898.29 4118.38 3893.91 4114.0 3888.52 4114.0 c
3883.12 4114.0 3878.74 4118.38 3878.74 4123.78 c
3878.74 4129.18 3883.12 4133.55 3888.52 4133.55 c
3893.91 4133.55 3898.29 4129.18 3898.29 4123.78 c
f
n
3950.42 4130.3 m
3950.42 4124.9 3946.05 4120.52 3940.65 4120.52 c
3935.25 4120.52 3930.88 4124.9 3930.88 4130.3 c
3930.88 4135.7 3935.25 4140.07 3940.65 4140.07 c
3946.05 4140.07 3950.42 4135.7 3950.42 4130.3 c
f
n
4001.74 4136.81 m
4001.74 4131.41 3997.37 4127.04 3991.97 4127.04 c
3986.57 4127.04 3982.19 4131.41 3982.19 4136.81 c
3982.19 4142.21 3986.57 4146.59 3991.97 4146.59 c
3997.37 4146.59 4001.74 4142.21 4001.74 4136.81 c
f
n
4053.88 4143.33 m
4053.88 4137.93 4049.5 4133.55 4044.1 4133.55 c
4038.7 4133.55 4034.33 4137.93 4034.33 4143.33 c
4034.33 4148.73 4038.7 4153.11 4044.1 4153.11 c
4049.5 4153.11 4053.88 4148.73 4053.88 4143.33 c
f
n
4106.01 4149.85 m
4106.01 4144.45 4101.63 4140.07 4096.23 4140.07 c
4090.84 4140.07 4086.46 4144.45 4086.46 4149.85 c
4086.46 4155.25 4090.84 4159.62 4096.23 4159.62 c
4101.63 4159.62 4106.01 4155.25 4106.01 4149.85 c
f
n
4157.33 4156.36 m
4157.33 4150.96 4152.95 4146.59 4147.55 4146.59 c
4142.16 4146.59 4137.78 4150.96 4137.78 4156.36 c
4137.78 4161.76 4142.16 4166.14 4147.55 4166.14 c
4152.95 4166.14 4157.33 4161.76 4157.33 4156.36 c
f
n
4209.46 4162.88 m
4209.46 4157.48 4205.09 4153.11 4199.69 4153.11 c
4194.29 4153.11 4189.91 4157.48 4189.91 4162.88 c
4189.91 4168.28 4194.29 4172.66 4199.69 4172.66 c
4205.09 4172.66 4209.46 4168.28 4209.46 4162.88 c
f
n
4260.78 4169.4 m
4260.78 4164.0 4256.41 4159.62 4251.01 4159.62 c
4245.61 4159.62 4241.23 4164.0 4241.23 4169.4 c
4241.23 4174.8 4245.61 4179.17 4251.01 4179.17 c
4256.41 4179.17 4260.78 4174.8 4260.78 4169.4 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4181.62 m
4364.23 4176.22 4359.86 4171.84 4354.46 4171.84 c
4349.06 4171.84 4344.69 4176.22 4344.69 4181.62 c
4344.69 4187.02 4349.06 4191.39 4354.46 4191.39 c
4359.86 4191.39 4364.23 4187.02 4364.23 4181.62 c
f
n
4416.37 4188.13 m
4416.37 4182.73 4411.99 4178.36 4406.59 4178.36 c
4401.2 4178.36 4396.82 4182.73 4396.82 4188.13 c
4396.82 4193.53 4401.2 4197.91 4406.59 4197.91 c
4411.99 4197.91 4416.37 4193.53 4416.37 4188.13 c
f
n
4467.69 4194.65 m
4467.69 4189.25 4463.31 4184.88 4457.91 4184.88 c
4452.52 4184.88 4448.14 4189.25 4448.14 4194.65 c
4448.14 4200.05 4452.52 4204.43 4457.91 4204.43 c
4463.31 4204.43 4467.69 4200.05 4467.69 4194.65 c
f
n
4519.82 4201.17 m
4519.82 4195.77 4515.45 4191.39 4510.05 4191.39 c
4504.65 4191.39 4500.27 4195.77 4500.27 4201.17 c
4500.27 4206.57 4504.65 4210.94 4510.05 4210.94 c
4515.45 4210.94 4519.82 4206.57 4519.82 4201.17 c
f
n
4571.14 4207.68 m
4571.14 4202.29 4566.77 4197.91 4561.37 4197.91 c
4555.97 4197.91 4551.59 4202.29 4551.59 4207.68 c
4551.59 4213.08 4555.97 4217.46 4561.37 4217.46 c
4566.77 4217.46 4571.14 4213.08 4571.14 4207.68 c
f
n
4623.28 4214.2 m
4623.28 4208.8 4618.9 4204.43 4613.5 4204.43 c
4608.1 4204.43 4603.73 4208.8 4603.73 4214.2 c
4603.73 4219.6 4608.1 4223.98 4613.5 4223.98 c
4618.9 4223.98 4623.28 4219.6 4623.28 4214.2 c
f
n
4674.59 4220.72 m
4674.59 4215.32 4670.22 4210.94 4664.82 4210.94 c
4659.42 4210.94 4655.05 4215.32 4655.05 4220.72 c
4655.05 4226.12 4659.42 4230.49 4664.82 4230.49 c
4670.22 4230.49 4674.59 4226.12 4674.59 4220.72 c
f
n
3898.29 4072.46 m
3898.29 4067.06 3893.91 4062.69 3888.52 4062.69 c
3883.12 4062.69 3878.74 4067.06 3878.74 4072.46 c
3878.74 4077.86 3883.12 4082.24 3888.52 4082.24 c
3893.91 4082.24 3898.29 4077.86 3898.29 4072.46 c
f
n
3950.42 4084.68 m
3950.42 4079.28 3946.05 4074.91 3940.65 4074.91 c
3935.25 4074.91 3930.88 4079.28 3930.88 4084.68 c
3930.88 4090.08 3935.25 4094.46 3940.65 4094.46 c
3946.05 4094.46 3950.42 4090.08 3950.42 4084.68 c
f
n
4001.74 4097.71 m
4001.74 4092.32 3997.37 4087.94 3991.97 4087.94 c
3986.57 4087.94 3982.19 4092.32 3982.19 4097.71 c
3982.19 4103.11 3986.57 4107.49 3991.97 4107.49 c
3997.37 4107.49 4001.74 4103.11 4001.74 4097.71 c
f
n
4053.88 4110.75 m
4053.88 4105.35 4049.5 4100.97 4044.1 4100.97 c
4038.7 4100.97 4034.33 4105.35 4034.33 4110.75 c
4034.33 4116.14 4038.7 4120.52 4044.1 4120.52 c
4049.5 4120.52 4053.88 4116.14 4053.88 4110.75 c
f
n
4106.01 4123.78 m
4106.01 4118.38 4101.63 4114.0 4096.23 4114.0 c
4090.84 4114.0 4086.46 4118.38 4086.46 4123.78 c
4086.46 4129.18 4090.84 4133.55 4096.23 4133.55 c
4101.63 4133.55 4106.01 4129.18 4106.01 4123.78 c
f
n
4157.33 4136.81 m
4157.33 4131.41 4152.95 4127.04 4147.55 4127.04 c
4142.16 4127.04 4137.78 4131.41 4137.78 4136.81 c
4137.78 4142.21 4142.16 4146.59 4147.55 4146.59 c
4152.95 4146.59 4157.33 4142.21 4157.33 4136.81 c
f
n
4209.46 4149.85 m
4209.46 4144.45 4205.09 4140.07 4199.69 4140.07 c
4194.29 4140.07 4189.91 4144.45 4189.91 4149.85 c
4189.91 4155.25 4194.29 4159.62 4199.69 4159.62 c
4205.09 4159.62 4209.46 4155.25 4209.46 4149.85 c
f
n
4260.78 4162.88 m
4260.78 4157.48 4256.41 4153.11 4251.01 4153.11 c
4245.61 4153.11 4241.23 4157.48 4241.23 4162.88 c
4241.23 4168.28 4245.61 4172.66 4251.01 4172.66 c
4256.41 4172.66 4260.78 4168.28 4260.78 4162.88 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4188.13 m
4364.23 4182.73 4359.86 4178.36 4354.46 4178.36 c
4349.06 4178.36 4344.69 4182.73 4344.69 4188.13 c
4344.69 4193.53 4349.06 4197.91 4354.46 4197.91 c
4359.86 4197.91 4364.23 4193.53 4364.23 4188.13 c
f
n
4416.37 4201.17 m
4416.37 4195.77 4411.99 4191.39 4406.59 4191.39 c
4401.2 4191.39 4396.82 4195.77 4396.82 4201.17 c
4396.82 4206.57 4401.2 4210.94 4406.59 4210.94 c
4411.99 4210.94 4416.37 4206.57 4416.37 4201.17 c
f
n
4467.69 4214.2 m
4467.69 4208.8 4463.31 4204.43 4457.91 4204.43 c
4452.52 4204.43 4448.14 4208.8 4448.14 4214.2 c
4448.14 4219.6 4452.52 4223.98 4457.91 4223.98 c
4463.31 4223.98 4467.69 4219.6 4467.69 4214.2 c
f
n
4519.82 4227.23 m
4519.82 4221.84 4515.45 4217.46 4510.05 4217.46 c
4504.65 4217.46 4500.27 4221.84 4500.27 4227.23 c
4500.27 4232.63 4504.65 4237.01 4510.05 4237.01 c
4515.45 4237.01 4519.82 4232.63 4519.82 4227.23 c
f
n
4571.14 4240.27 m
4571.14 4234.87 4566.77 4230.49 4561.37 4230.49 c
4555.97 4230.49 4551.59 4234.87 4551.59 4240.27 c
4551.59 4245.66 4555.97 4250.04 4561.37 4250.04 c
4566.77 4250.04 4571.14 4245.66 4571.14 4240.27 c
f
n
4623.28 4253.3 m
4623.28 4247.9 4618.9 4243.53 4613.5 4243.53 c
4608.1 4243.53 4603.73 4247.9 4603.73 4253.3 c
4603.73 4258.7 4608.1 4263.07 4613.5 4263.07 c
4618.9 4263.07 4623.28 4258.7 4623.28 4253.3 c
f
n
4674.59 4266.34 m
4674.59 4260.94 4670.22 4256.56 4664.82 4256.56 c
4659.42 4256.56 4655.05 4260.94 4655.05 4266.34 c
4655.05 4271.73 4659.42 4276.11 4664.82 4276.11 c
4670.22 4276.11 4674.59 4271.73 4674.59 4266.34 c
f
n
3898.29 4020.33 m
3898.29 4014.93 3893.91 4010.55 3888.52 4010.55 c
3883.12 4010.55 3878.74 4014.93 3878.74 4020.33 c
3878.74 4025.73 3883.12 4030.1 3888.52 4030.1 c
3893.91 4030.1 3898.29 4025.73 3898.29 4020.33 c
f
n
3950.42 4039.88 m
3950.42 4034.48 3946.05 4030.1 3940.65 4030.1 c
3935.25 4030.1 3930.88 4034.48 3930.88 4039.88 c
3930.88 4045.28 3935.25 4049.65 3940.65 4049.65 c
3946.05 4049.65 3950.42 4045.28 3950.42 4039.88 c
f
n
4001.74 4059.43 m
4001.74 4054.03 3997.37 4049.65 3991.97 4049.65 c
3986.57 4049.65 3982.19 4054.03 3982.19 4059.43 c
3982.19 4064.83 3986.57 4069.2 3991.97 4069.2 c
3997.37 4069.2 4001.74 4064.83 4001.74 4059.43 c
f
n
4053.88 4078.16 m
4053.88 4072.77 4049.5 4068.39 4044.1 4068.39 c
4038.7 4068.39 4034.33 4072.77 4034.33 4078.16 c
4034.33 4083.56 4038.7 4087.94 4044.1 4087.94 c
4049.5 4087.94 4053.88 4083.56 4053.88 4078.16 c
f
n
4106.01 4097.71 m
4106.01 4092.32 4101.63 4087.94 4096.23 4087.94 c
4090.84 4087.94 4086.46 4092.32 4086.46 4097.71 c
4086.46 4103.11 4090.84 4107.49 4096.23 4107.49 c
4101.63 4107.49 4106.01 4103.11 4106.01 4097.71 c
f
n
4157.33 4117.27 m
4157.33 4111.87 4152.95 4107.49 4147.55 4107.49 c
4142.16 4107.49 4137.78 4111.87 4137.78 4117.27 c
4137.78 4122.66 4142.16 4127.04 4147.55 4127.04 c
4152.95 4127.04 4157.33 4122.66 4157.33 4117.27 c
f
n
4209.46 4136.81 m
4209.46 4131.41 4205.09 4127.04 4199.69 4127.04 c
4194.29 4127.04 4189.91 4131.41 4189.91 4136.81 c
4189.91 4142.21 4194.29 4146.59 4199.69 4146.59 c
4205.09 4146.59 4209.46 4142.21 4209.46 4136.81 c
f
n
4260.78 4156.36 m
4260.78 4150.96 4256.41 4146.59 4251.01 4146.59 c
4245.61 4146.59 4241.23 4150.96 4241.23 4156.36 c
4241.23 4161.76 4245.61 4166.14 4251.01 4166.14 c
4256.41 4166.14 4260.78 4161.76 4260.78 4156.36 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4194.65 m
4364.23 4189.25 4359.86 4184.88 4354.46 4184.88 c
4349.06 4184.88 4344.69 4189.25 4344.69 4194.65 c
4344.69 4200.05 4349.06 4204.43 4354.46 4204.43 c
4359.86 4204.43 4364.23 4200.05 4364.23 4194.65 c
f
n
4416.37 4214.2 m
4416.37 4208.8 4411.99 4204.43 4406.59 4204.43 c
4401.2 4204.43 4396.82 4208.8 4396.82 4214.2 c
4396.82 4219.6 4401.2 4223.98 4406.59 4223.98 c
4411.99 4223.98 4416.37 4219.6 4416.37 4214.2 c
f
n
4467.69 4233.75 m
4467.69 4228.35 4463.31 4223.98 4457.91 4223.98 c
4452.52 4223.98 4448.14 4228.35 4448.14 4233.75 c
4448.14 4239.15 4452.52 4243.53 4457.91 4243.53 c
4463.31 4243.53 4467.69 4239.15 4467.69 4233.75 c
f
n
4519.82 4253.3 m
4519.82 4247.9 4515.45 4243.53 4510.05 4243.53 c
4504.65 4243.53 4500.27 4247.9 4500.27 4253.3 c
4500.27 4258.7 4504.65 4263.07 4510.05 4263.07 c
4515.45 4263.07 4519.82 4258.7 4519.82 4253.3 c
f
n
4571.14 4272.85 m
4571.14 4267.45 4566.77 4263.07 4561.37 4263.07 c
4555.97 4263.07 4551.59 4267.45 4551.59 4272.85 c
4551.59 4278.25 4555.97 4282.62 4561.37 4282.62 c
4566.77 4282.62 4571.14 4278.25 4571.14 4272.85 c
f
n
4623.28 4291.59 m
4623.28 4286.19 4618.9 4281.81 4613.5 4281.81 c
4608.1 4281.81 4603.73 4286.19 4603.73 4291.59 c
4603.73 4296.98 4608.1 4301.36 4613.5 4301.36 c
4618.9 4301.36 4623.28 4296.98 4623.28 4291.59 c
f
n
4674.59 4311.14 m
4674.59 4305.74 4670.22 4301.36 4664.82 4301.36 c
4659.42 4301.36 4655.05 4305.74 4655.05 4311.14 c
4655.05 4316.54 4659.42 4320.91 4664.82 4320.91 c
4670.22 4320.91 4674.59 4316.54 4674.59 4311.14 c
f
n
3898.29 3968.2 m
3898.29 3962.8 3893.91 3958.42 3888.52 3958.42 c
3883.12 3958.42 3878.74 3962.8 3878.74 3968.2 c
3878.74 3973.59 3883.12 3977.97 3888.52 3977.97 c
3893.91 3977.97 3898.29 3973.59 3898.29 3968.2 c
f
n
3950.42 3994.26 m
3950.42 3988.86 3946.05 3984.48 3940.65 3984.48 c
3935.25 3984.48 3930.88 3988.86 3930.88 3994.26 c
3930.88 3999.66 3935.25 4004.04 3940.65 4004.04 c
3946.05 4004.04 3950.42 3999.66 3950.42 3994.26 c
f
n
4001.74 4020.33 m
4001.74 4014.93 3997.37 4010.55 3991.97 4010.55 c
3986.57 4010.55 3982.19 4014.93 3982.19 4020.33 c
3982.19 4025.73 3986.57 4030.1 3991.97 4030.1 c
3997.37 4030.1 4001.74 4025.73 4001.74 4020.33 c
f
n
4053.88 4046.39 m
4053.88 4041.0 4049.5 4036.62 4044.1 4036.62 c
4038.7 4036.62 4034.33 4041.0 4034.33 4046.39 c
4034.33 4051.79 4038.7 4056.17 4044.1 4056.17 c
4049.5 4056.17 4053.88 4051.79 4053.88 4046.39 c
f
n
4106.01 4072.46 m
4106.01 4067.06 4101.63 4062.69 4096.23 4062.69 c
4090.84 4062.69 4086.46 4067.06 4086.46 4072.46 c
4086.46 4077.86 4090.84 4082.24 4096.23 4082.24 c
4101.63 4082.24 4106.01 4077.86 4106.01 4072.46 c
f
n
4157.33 4097.71 m
4157.33 4092.32 4152.95 4087.94 4147.55 4087.94 c
4142.16 4087.94 4137.78 4092.32 4137.78 4097.71 c
4137.78 4103.11 4142.16 4107.49 4147.55 4107.49 c
4152.95 4107.49 4157.33 4103.11 4157.33 4097.71 c
f
n
4209.46 4123.78 m
4209.46 4118.38 4205.09 4114.0 4199.69 4114.0 c
4194.29 4114.0 4189.91 4118.38 4189.91 4123.78 c
4189.91 4129.18 4194.29 4133.55 4199.69 4133.55 c
4205.09 4133.55 4209.46 4129.18 4209.46 4123.78 c
f
n
4260.78 4149.85 m
4260.78 4144.45 4256.41 4140.07 4251.01 4140.07 c
4245.61 4140.07 4241.23 4144.45 4241.23 4149.85 c
4241.23 4155.25 4245.61 4159.62 4251.01 4159.62 c
4256.41 4159.62 4260.78 4155.25 4260.78 4149.85 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4201.17 m
4364.23 4195.77 4359.86 4191.39 4354.46 4191.39 c
4349.06 4191.39 4344.69 4195.77 4344.69 4201.17 c
4344.69 4206.57 4349.06 4210.94 4354.46 4210.94 c
4359.86 4210.94 4364.23 4206.57 4364.23 4201.17 c
f
n
4416.37 4227.23 m
4416.37 4221.84 4411.99 4217.46 4406.59 4217.46 c
4401.2 4217.46 4396.82 4221.84 4396.82 4227.23 c
4396.82 4232.63 4401.2 4237.01 4406.59 4237.01 c
4411.99 4237.01 4416.37 4232.63 4416.37 4227.23 c
f
n
4467.69 4253.3 m
4467.69 4247.9 4463.31 4243.53 4457.91 4243.53 c
4452.52 4243.53 4448.14 4247.9 4448.14 4253.3 c
4448.14 4258.7 4452.52 4263.07 4457.91 4263.07 c
4463.31 4263.07 4467.69 4258.7 4467.69 4253.3 c
f
n
4519.82 4279.37 m
4519.82 4273.97 4515.45 4269.59 4510.05 4269.59 c
4504.65 4269.59 4500.27 4273.97 4500.27 4279.37 c
4500.27 4284.77 4504.65 4289.14 4510.05 4289.14 c
4515.45 4289.14 4519.82 4284.77 4519.82 4279.37 c
f
n
4571.14 4304.62 m
4571.14 4299.22 4566.77 4294.84 4561.37 4294.84 c
4555.97 4294.84 4551.59 4299.22 4551.59 4304.62 c
4551.59 4310.02 4555.97 4314.39 4561.37 4314.39 c
4566.77 4314.39 4571.14 4310.02 4571.14 4304.62 c
f
n
4623.28 4330.69 m
4623.28 4325.29 4618.9 4320.91 4613.5 4320.91 c
4608.1 4320.91 4603.73 4325.29 4603.73 4330.69 c
4603.73 4336.09 4608.1 4340.46 4613.5 4340.46 c
4618.9 4340.46 4623.28 4336.09 4623.28 4330.69 c
f
n
4674.59 4356.75 m
4674.59 4351.36 4670.22 4346.98 4664.82 4346.98 c
4659.42 4346.98 4655.05 4351.36 4655.05 4356.75 c
4655.05 4362.15 4659.42 4366.53 4664.82 4366.53 c
4670.22 4366.53 4674.59 4362.15 4674.59 4356.75 c
f
n
3898.29 3916.88 m
3898.29 3911.48 3893.91 3907.1 3888.52 3907.1 c
3883.12 3907.1 3878.74 3911.48 3878.74 3916.88 c
3878.74 3922.27 3883.12 3926.65 3888.52 3926.65 c
3893.91 3926.65 3898.29 3922.27 3898.29 3916.88 c
f
n
3950.42 3949.46 m
3950.42 3944.06 3946.05 3939.68 3940.65 3939.68 c
3935.25 3939.68 3930.88 3944.06 3930.88 3949.46 c
3930.88 3954.86 3935.25 3959.23 3940.65 3959.23 c
3946.05 3959.23 3950.42 3954.86 3950.42 3949.46 c
f
n
4001.74 3981.23 m
4001.74 3975.83 3997.37 3971.45 3991.97 3971.45 c
3986.57 3971.45 3982.19 3975.83 3982.19 3981.23 c
3982.19 3986.62 3986.57 3991.0 3991.97 3991.0 c
3997.37 3991.0 4001.74 3986.62 4001.74 3981.23 c
f
n
4053.88 4013.81 m
4053.88 4008.41 4049.5 4004.04 4044.1 4004.04 c
4038.7 4004.04 4034.33 4008.41 4034.33 4013.81 c
4034.33 4019.21 4038.7 4023.59 4044.1 4023.59 c
4049.5 4023.59 4053.88 4019.21 4053.88 4013.81 c
f
n
4106.01 4046.39 m
4106.01 4041.0 4101.63 4036.62 4096.23 4036.62 c
4090.84 4036.62 4086.46 4041.0 4086.46 4046.39 c
4086.46 4051.79 4090.84 4056.17 4096.23 4056.17 c
4101.63 4056.17 4106.01 4051.79 4106.01 4046.39 c
f
n
4157.33 4078.16 m
4157.33 4072.77 4152.95 4068.39 4147.55 4068.39 c
4142.16 4068.39 4137.78 4072.77 4137.78 4078.16 c
4137.78 4083.56 4142.16 4087.94 4147.55 4087.94 c
4152.95 4087.94 4157.33 4083.56 4157.33 4078.16 c
f
n
4209.46 4110.75 m
4209.46 4105.35 4205.09 4100.97 4199.69 4100.97 c
4194.29 4100.97 4189.91 4105.35 4189.91 4110.75 c
4189.91 4116.14 4194.29 4120.52 4199.69 4120.52 c
4205.09 4120.52 4209.46 4116.14 4209.46 4110.75 c
f
n
4260.78 4143.33 m
4260.78 4137.93 4256.41 4133.55 4251.01 4133.55 c
4245.61 4133.55 4241.23 4137.93 4241.23 4143.33 c
4241.23 4148.73 4245.61 4153.11 4251.01 4153.11 c
4256.41 4153.11 4260.78 4148.73 4260.78 4143.33 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4207.68 m
4364.23 4202.29 4359.86 4197.91 4354.46 4197.91 c
4349.06 4197.91 4344.69 4202.29 4344.69 4207.68 c
4344.69 4213.08 4349.06 4217.46 4354.46 4217.46 c
4359.86 4217.46 4364.23 4213.08 4364.23 4207.68 c
f
n
4416.37 4240.27 m
4416.37 4234.87 4411.99 4230.49 4406.59 4230.49 c
4401.2 4230.49 4396.82 4234.87 4396.82 4240.27 c
4396.82 4245.66 4401.2 4250.04 4406.59 4250.04 c
4411.99 4250.04 4416.37 4245.66 4416.37 4240.27 c
f
n
4467.69 4272.85 m
4467.69 4267.45 4463.31 4263.07 4457.91 4263.07 c
4452.52 4263.07 4448.14 4267.45 4448.14 4272.85 c
4448.14 4278.25 4452.52 4282.62 4457.91 4282.62 c
4463.31 4282.62 4467.69 4278.25 4467.69 4272.85 c
f
n
4519.82 4304.62 m
4519.82 4299.22 4515.45 4294.84 4510.05 4294.84 c
4504.65 4294.84 4500.27 4299.22 4500.27 4304.62 c
4500.27 4310.02 4504.65 4314.39 4510.05 4314.39 c
4515.45 4314.39 4519.82 4310.02 4519.82 4304.62 c
f
n
4571.14 4337.2 m
4571.14 4331.8 4566.77 4327.43 4561.37 4327.43 c
4555.97 4327.43 4551.59 4331.8 4551.59 4337.2 c
4551.59 4342.6 4555.97 4346.98 4561.37 4346.98 c
4566.77 4346.98 4571.14 4342.6 4571.14 4337.2 c
f
n
4623.28 4369.79 m
4623.28 4364.39 4618.9 4360.01 4613.5 4360.01 c
4608.1 4360.01 4603.73 4364.39 4603.73 4369.79 c
4603.73 4375.19 4608.1 4379.56 4613.5 4379.56 c
4618.9 4379.56 4623.28 4375.19 4623.28 4369.79 c
f
n
4674.59 4401.55 m
4674.59 4396.16 4670.22 4391.78 4664.82 4391.78 c
4659.42 4391.78 4655.05 4396.16 4655.05 4401.55 c
4655.05 4406.95 4659.42 4411.33 4664.82 4411.33 c
4670.22 4411.33 4674.59 4406.95 4674.59 4401.55 c
f
n
3898.29 3864.74 m
3898.29 3859.34 3893.91 3854.96 3888.52 3854.96 c
3883.12 3854.96 3878.74 3859.34 3878.74 3864.74 c
3878.74 3870.14 3883.12 3874.52 3888.52 3874.52 c
3893.91 3874.52 3898.29 3870.14 3898.29 3864.74 c
f
n
3950.42 3903.84 m
3950.42 3898.44 3946.05 3894.07 3940.65 3894.07 c
3935.25 3894.07 3930.88 3898.44 3930.88 3903.84 c
3930.88 3909.24 3935.25 3913.62 3940.65 3913.62 c
3946.05 3913.62 3950.42 3909.24 3950.42 3903.84 c
f
n
4001.74 3942.94 m
4001.74 3937.54 3997.37 3933.17 3991.97 3933.17 c
3986.57 3933.17 3982.19 3937.54 3982.19 3942.94 c
3982.19 3948.34 3986.57 3952.71 3991.97 3952.71 c
3997.37 3952.71 4001.74 3948.34 4001.74 3942.94 c
f
n
4053.88 3981.23 m
4053.88 3975.83 4049.5 3971.45 4044.1 3971.45 c
4038.7 3971.45 4034.33 3975.83 4034.33 3981.23 c
4034.33 3986.62 4038.7 3991.0 4044.1 3991.0 c
4049.5 3991.0 4053.88 3986.62 4053.88 3981.23 c
f
n
4106.01 4020.33 m
4106.01 4014.93 4101.63 4010.55 4096.23 4010.55 c
4090.84 4010.55 4086.46 4014.93 4086.46 4020.33 c
4086.46 4025.73 4090.84 4030.1 4096.23 4030.1 c
4101.63 4030.1 4106.01 4025.73 4106.01 4020.33 c
f
n
4157.33 4059.43 m
4157.33 4054.03 4152.95 4049.65 4147.55 4049.65 c
4142.16 4049.65 4137.78 4054.03 4137.78 4059.43 c
4137.78 4064.83 4142.16 4069.2 4147.55 4069.2 c
4152.95 4069.2 4157.33 4064.83 4157.33 4059.43 c
f
n
4209.46 4097.71 m
4209.46 4092.32 4205.09 4087.94 4199.69 4087.94 c
4194.29 4087.94 4189.91 4092.32 4189.91 4097.71 c
4189.91 4103.11 4194.29 4107.49 4199.69 4107.49 c
4205.09 4107.49 4209.46 4103.11 4209.46 4097.71 c
f
n
4260.78 4136.81 m
4260.78 4131.41 4256.41 4127.04 4251.01 4127.04 c
4245.61 4127.04 4241.23 4131.41 4241.23 4136.81 c
4241.23 4142.21 4245.61 4146.59 4251.01 4146.59 c
4256.41 4146.59 4260.78 4142.21 4260.78 4136.81 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4214.2 m
4364.23 4208.8 4359.86 4204.43 4354.46 4204.43 c
4349.06 4204.43 4344.69 4208.8 4344.69 4214.2 c
4344.69 4219.6 4349.06 4223.98 4354.46 4223.98 c
4359.86 4223.98 4364.23 4219.6 4364.23 4214.2 c
f
n
4416.37 4253.3 m
4416.37 4247.9 4411.99 4243.53 4406.59 4243.53 c
4401.2 4243.53 4396.82 4247.9 4396.82 4253.3 c
4396.82 4258.7 4401.2 4263.07 4406.59 4263.07 c
4411.99 4263.07 4416.37 4258.7 4416.37 4253.3 c
f
n
4467.69 4291.59 m
4467.69 4286.19 4463.31 4281.81 4457.91 4281.81 c
4452.52 4281.81 4448.14 4286.19 4448.14 4291.59 c
4448.14 4296.98 4452.52 4301.36 4457.91 4301.36 c
4463.31 4301.36 4467.69 4296.98 4467.69 4291.59 c
f
n
4519.82 4330.69 m
4519.82 4325.29 4515.45 4320.91 4510.05 4320.91 c
4504.65 4320.91 4500.27 4325.29 4500.27 4330.69 c
4500.27 4336.09 4504.65 4340.46 4510.05 4340.46 c
4515.45 4340.46 4519.82 4336.09 4519.82 4330.69 c
f
n
4571.14 4369.79 m
4571.14 4364.39 4566.77 4360.01 4561.37 4360.01 c
4555.97 4360.01 4551.59 4364.39 4551.59 4369.79 c
4551.59 4375.19 4555.97 4379.56 4561.37 4379.56 c
4566.77 4379.56 4571.14 4375.19 4571.14 4369.79 c
f
n
4623.28 4408.07 m
4623.28 4402.68 4618.9 4398.3 4613.5 4398.3 c
4608.1 4398.3 4603.73 4402.68 4603.73 4408.07 c
4603.73 4413.47 4608.1 4417.85 4613.5 4417.85 c
4618.9 4417.85 4623.28 4413.47 4623.28 4408.07 c
f
n
4674.59 4447.17 m
4674.59 4441.77 4670.22 4437.4 4664.82 4437.4 c
4659.42 4437.4 4655.05 4441.77 4655.05 4447.17 c
4655.05 4452.57 4659.42 4456.95 4664.82 4456.95 c
4670.22 4456.95 4674.59 4452.57 4674.59 4447.17 c
f
n
3898.29 3813.42 m
3898.29 3808.02 3893.91 3803.64 3888.52 3803.64 c
3883.12 3803.64 3878.74 3808.02 3878.74 3813.42 c
3878.74 3818.82 3883.12 3823.2 3888.52 3823.2 c
3893.91 3823.2 3898.29 3818.82 3898.29 3813.42 c
f
n
3950.42 3859.04 m
3950.42 3853.64 3946.05 3849.26 3940.65 3849.26 c
3935.25 3849.26 3930.88 3853.64 3930.88 3859.04 c
3930.88 3864.44 3935.25 3868.81 3940.65 3868.81 c
3946.05 3868.81 3950.42 3864.44 3950.42 3859.04 c
f
n
4001.74 3903.84 m
4001.74 3898.44 3997.37 3894.07 3991.97 3894.07 c
3986.57 3894.07 3982.19 3898.44 3982.19 3903.84 c
3982.19 3909.24 3986.57 3913.62 3991.97 3913.62 c
3997.37 3913.62 4001.74 3909.24 4001.74 3903.84 c
f
n
4053.88 3949.46 m
4053.88 3944.06 4049.5 3939.68 4044.1 3939.68 c
4038.7 3939.68 4034.33 3944.06 4034.33 3949.46 c
4034.33 3954.86 4038.7 3959.23 4044.1 3959.23 c
4049.5 3959.23 4053.88 3954.86 4053.88 3949.46 c
f
n
4106.01 3994.26 m
4106.01 3988.86 4101.63 3984.48 4096.23 3984.48 c
4090.84 3984.48 4086.46 3988.86 4086.46 3994.26 c
4086.46 3999.66 4090.84 4004.04 4096.23 4004.04 c
4101.63 4004.04 4106.01 3999.66 4106.01 3994.26 c
f
n
4157.33 4039.88 m
4157.33 4034.48 4152.95 4030.1 4147.55 4030.1 c
4142.16 4030.1 4137.78 4034.48 4137.78 4039.88 c
4137.78 4045.28 4142.16 4049.65 4147.55 4049.65 c
4152.95 4049.65 4157.33 4045.28 4157.33 4039.88 c
f
n
4209.46 4084.68 m
4209.46 4079.28 4205.09 4074.91 4199.69 4074.91 c
4194.29 4074.91 4189.91 4079.28 4189.91 4084.68 c
4189.91 4090.08 4194.29 4094.46 4199.69 4094.46 c
4205.09 4094.46 4209.46 4090.08 4209.46 4084.68 c
f
n
4260.78 4130.3 m
4260.78 4124.9 4256.41 4120.52 4251.01 4120.52 c
4245.61 4120.52 4241.23 4124.9 4241.23 4130.3 c
4241.23 4135.7 4245.61 4140.07 4251.01 4140.07 c
4256.41 4140.07 4260.78 4135.7 4260.78 4130.3 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4220.72 m
4364.23 4215.32 4359.86 4210.94 4354.46 4210.94 c
4349.06 4210.94 4344.69 4215.32 4344.69 4220.72 c
4344.69 4226.12 4349.06 4230.49 4354.46 4230.49 c
4359.86 4230.49 4364.23 4226.12 4364.23 4220.72 c
f
n
4416.37 4266.34 m
4416.37 4260.94 4411.99 4256.56 4406.59 4256.56 c
4401.2 4256.56 4396.82 4260.94 4396.82 4266.34 c
4396.82 4271.73 4401.2 4276.11 4406.59 4276.11 c
4411.99 4276.11 4416.37 4271.73 4416.37 4266.34 c
f
n
4467.69 4311.14 m
4467.69 4305.74 4463.31 4301.36 4457.91 4301.36 c
4452.52 4301.36 4448.14 4305.74 4448.14 4311.14 c
4448.14 4316.54 4452.52 4320.91 4457.91 4320.91 c
4463.31 4320.91 4467.69 4316.54 4467.69 4311.14 c
f
n
4519.82 4356.75 m
4519.82 4351.36 4515.45 4346.98 4510.05 4346.98 c
4504.65 4346.98 4500.27 4351.36 4500.27 4356.75 c
4500.27 4362.15 4504.65 4366.53 4510.05 4366.53 c
4515.45 4366.53 4519.82 4362.15 4519.82 4356.75 c
f
n
4571.14 4401.55 m
4571.14 4396.16 4566.77 4391.78 4561.37 4391.78 c
4555.97 4391.78 4551.59 4396.16 4551.59 4401.55 c
4551.59 4406.95 4555.97 4411.33 4561.37 4411.33 c
4566.77 4411.33 4571.14 4406.95 4571.14 4401.55 c
f
n
4623.28 4447.17 m
4623.28 4441.77 4618.9 4437.4 4613.5 4437.4 c
4608.1 4437.4 4603.73 4441.77 4603.73 4447.17 c
4603.73 4452.57 4608.1 4456.95 4613.5 4456.95 c
4618.9 4456.95 4623.28 4452.57 4623.28 4447.17 c
f
n
4674.59 4491.98 m
4674.59 4486.58 4670.22 4482.2 4664.82 4482.2 c
4659.42 4482.2 4655.05 4486.58 4655.05 4491.98 c
4655.05 4497.38 4659.42 4501.75 4664.82 4501.75 c
4670.22 4501.75 4674.59 4497.38 4674.59 4491.98 c
f
n
3898.29 3761.29 m
3898.29 3755.89 3893.91 3751.51 3888.52 3751.51 c
3883.12 3751.51 3878.74 3755.89 3878.74 3761.29 c
3878.74 3766.69 3883.12 3771.06 3888.52 3771.06 c
3893.91 3771.06 3898.29 3766.69 3898.29 3761.29 c
f
n
3950.42 3813.42 m
3950.42 3808.02 3946.05 3803.64 3940.65 3803.64 c
3935.25 3803.64 3930.88 3808.02 3930.88 3813.42 c
3930.88 3818.82 3935.25 3823.2 3940.65 3823.2 c
3946.05 3823.2 3950.42 3818.82 3950.42 3813.42 c
f
n
4001.74 3864.74 m
4001.74 3859.34 3997.37 3854.96 3991.97 3854.96 c
3986.57 3854.96 3982.19 3859.34 3982.19 3864.74 c
3982.19 3870.14 3986.57 3874.52 3991.97 3874.52 c
3997.37 3874.52 4001.74 3870.14 4001.74 3864.74 c
f
n
4053.88 3916.88 m
4053.88 3911.48 4049.5 3907.1 4044.1 3907.1 c
4038.7 3907.1 4034.33 3911.48 4034.33 3916.88 c
4034.33 3922.27 4038.7 3926.65 4044.1 3926.65 c
4049.5 3926.65 4053.88 3922.27 4053.88 3916.88 c
f
n
4106.01 3968.2 m
4106.01 3962.8 4101.63 3958.42 4096.23 3958.42 c
4090.84 3958.42 4086.46 3962.8 4086.46 3968.2 c
4086.46 3973.59 4090.84 3977.97 4096.23 3977.97 c
4101.63 3977.97 4106.01 3973.59 4106.01 3968.2 c
f
n
4157.33 4020.33 m
4157.33 4014.93 4152.95 4010.55 4147.55 4010.55 c
4142.16 4010.55 4137.78 4014.93 4137.78 4020.33 c
4137.78 4025.73 4142.16 4030.1 4147.55 4030.1 c
4152.95 4030.1 4157.33 4025.73 4157.33 4020.33 c
f
n
4209.46 4072.46 m
4209.46 4067.06 4205.09 4062.69 4199.69 4062.69 c
4194.29 4062.69 4189.91 4067.06 4189.91 4072.46 c
4189.91 4077.86 4194.29 4082.24 4199.69 4082.24 c
4205.09 4082.24 4209.46 4077.86 4209.46 4072.46 c
f
n
4260.78 4123.78 m
4260.78 4118.38 4256.41 4114.0 4251.01 4114.0 c
4245.61 4114.0 4241.23 4118.38 4241.23 4123.78 c
4241.23 4129.18 4245.61 4133.55 4251.01 4133.55 c
4256.41 4133.55 4260.78 4129.18 4260.78 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4364.23 4227.23 m
4364.23 4221.84 4359.86 4217.46 4354.46 4217.46 c
4349.06 4217.46 4344.69 4221.84 4344.69 4227.23 c
4344.69 4232.63 4349.06 4237.01 4354.46 4237.01 c
4359.86 4237.01 4364.23 4232.63 4364.23 4227.23 c
f
n
4416.37 4279.37 m
4416.37 4273.97 4411.99 4269.59 4406.59 4269.59 c
4401.2 4269.59 4396.82 4273.97 4396.82 4279.37 c
4396.82 4284.77 4401.2 4289.14 4406.59 4289.14 c
4411.99 4289.14 4416.37 4284.77 4416.37 4279.37 c
f
n
4467.69 4330.69 m
4467.69 4325.29 4463.31 4320.91 4457.91 4320.91 c
4452.52 4320.91 4448.14 4325.29 4448.14 4330.69 c
4448.14 4336.09 4452.52 4340.46 4457.91 4340.46 c
4463.31 4340.46 4467.69 4336.09 4467.69 4330.69 c
f
n
4519.82 4382.82 m
4519.82 4377.42 4515.45 4373.05 4510.05 4373.05 c
4504.65 4373.05 4500.27 4377.42 4500.27 4382.82 c
4500.27 4388.22 4504.65 4392.6 4510.05 4392.6 c
4515.45 4392.6 4519.82 4388.22 4519.82 4382.82 c
f
n
4571.14 4434.14 m
4571.14 4428.74 4566.77 4424.36 4561.37 4424.36 c
4555.97 4424.36 4551.59 4428.74 4551.59 4434.14 c
4551.59 4439.54 4555.97 4443.91 4561.37 4443.91 c
4566.77 4443.91 4571.14 4439.54 4571.14 4434.14 c
f
n
4623.28 4486.27 m
4623.28 4480.88 4618.9 4476.5 4613.5 4476.5 c
4608.1 4476.5 4603.73 4480.88 4603.73 4486.27 c
4603.73 4491.67 4608.1 4496.05 4613.5 4496.05 c
4618.9 4496.05 4623.28 4491.67 4623.28 4486.27 c
f
n
4674.59 4537.59 m
4674.59 4532.2 4670.22 4527.82 4664.82 4527.82 c
4659.42 4527.82 4655.05 4532.2 4655.05 4537.59 c
4655.05 4542.99 4659.42 4547.37 4664.82 4547.37 c
4670.22 4547.37 4674.59 4542.99 4674.59 4537.59 c
f
n
3950.42 3761.29 m
3950.42 3755.89 3946.05 3751.51 3940.65 3751.51 c
3935.25 3751.51 3930.88 3755.89 3930.88 3761.29 c
3930.88 3766.69 3935.25 3771.06 3940.65 3771.06 c
3946.05 3771.06 3950.42 3766.69 3950.42 3761.29 c
f
n
3996.04 3813.42 m
3996.04 3808.02 3991.66 3803.64 3986.27 3803.64 c
3980.87 3803.64 3976.49 3808.02 3976.49 3813.42 c
3976.49 3818.82 3980.87 3823.2 3986.27 3823.2 c
3991.66 3823.2 3996.04 3818.82 3996.04 3813.42 c
f
n
4040.84 3864.74 m
4040.84 3859.34 4036.46 3854.96 4031.07 3854.96 c
4025.67 3854.96 4021.29 3859.34 4021.29 3864.74 c
4021.29 3870.14 4025.67 3874.52 4031.07 3874.52 c
4036.46 3874.52 4040.84 3870.14 4040.84 3864.74 c
f
n
4086.46 3916.88 m
4086.46 3911.48 4082.08 3907.1 4076.68 3907.1 c
4071.29 3907.1 4066.91 3911.48 4066.91 3916.88 c
4066.91 3922.27 4071.29 3926.65 4076.68 3926.65 c
4082.08 3926.65 4086.46 3922.27 4086.46 3916.88 c
f
n
4131.26 3968.2 m
4131.26 3962.8 4126.89 3958.42 4121.49 3958.42 c
4116.09 3958.42 4111.71 3962.8 4111.71 3968.2 c
4111.71 3973.59 4116.09 3977.97 4121.49 3977.97 c
4126.89 3977.97 4131.26 3973.59 4131.26 3968.2 c
f
n
4176.88 4020.33 m
4176.88 4014.93 4172.5 4010.55 4167.11 4010.55 c
4161.71 4010.55 4157.33 4014.93 4157.33 4020.33 c
4157.33 4025.73 4161.71 4030.1 4167.11 4030.1 c
4172.5 4030.1 4176.88 4025.73 4176.88 4020.33 c
f
n
4221.68 4072.46 m
4221.68 4067.06 4217.3 4062.69 4211.91 4062.69 c
4206.51 4062.69 4202.13 4067.06 4202.13 4072.46 c
4202.13 4077.86 4206.51 4082.24 4211.91 4082.24 c
4217.3 4082.24 4221.68 4077.86 4221.68 4072.46 c
f
n
4267.3 4123.78 m
4267.3 4118.38 4262.92 4114.0 4257.52 4114.0 c
4252.12 4114.0 4247.75 4118.38 4247.75 4123.78 c
4247.75 4129.18 4252.12 4133.55 4257.52 4133.55 c
4262.92 4133.55 4267.3 4129.18 4267.3 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4357.72 4227.23 m
4357.72 4221.84 4353.34 4217.46 4347.95 4217.46 c
4342.55 4217.46 4338.17 4221.84 4338.17 4227.23 c
4338.17 4232.63 4342.55 4237.01 4347.95 4237.01 c
4353.34 4237.01 4357.72 4232.63 4357.72 4227.23 c
f
n
4403.34 4279.37 m
4403.34 4273.97 4398.96 4269.59 4393.56 4269.59 c
4388.16 4269.59 4383.79 4273.97 4383.79 4279.37 c
4383.79 4284.77 4388.16 4289.14 4393.56 4289.14 c
4398.96 4289.14 4403.34 4284.77 4403.34 4279.37 c
f
n
4448.14 4330.69 m
4448.14 4325.29 4443.76 4320.91 4438.36 4320.91 c
4432.96 4320.91 4428.59 4325.29 4428.59 4330.69 c
4428.59 4336.09 4432.96 4340.46 4438.36 4340.46 c
4443.76 4340.46 4448.14 4336.09 4448.14 4330.69 c
f
n
4493.76 4382.82 m
4493.76 4377.42 4489.38 4373.05 4483.98 4373.05 c
4478.58 4373.05 4474.21 4377.42 4474.21 4382.82 c
4474.21 4388.22 4478.58 4392.6 4483.98 4392.6 c
4489.38 4392.6 4493.76 4388.22 4493.76 4382.82 c
f
n
4538.56 4434.14 m
4538.56 4428.74 4534.18 4424.36 4528.79 4424.36 c
4523.39 4424.36 4519.01 4428.74 4519.01 4434.14 c
4519.01 4439.54 4523.39 4443.91 4528.79 4443.91 c
4534.18 4443.91 4538.56 4439.54 4538.56 4434.14 c
f
n
4584.18 4486.27 m
4584.18 4480.88 4579.8 4476.5 4574.4 4476.5 c
4569.0 4476.5 4564.62 4480.88 4564.62 4486.27 c
4564.62 4491.67 4569.0 4496.05 4574.4 4496.05 c
4579.8 4496.05 4584.18 4491.67 4584.18 4486.27 c
f
n
4628.98 4537.59 m
4628.98 4532.2 4624.6 4527.82 4619.2 4527.82 c
4613.8 4527.82 4609.43 4532.2 4609.43 4537.59 c
4609.43 4542.99 4613.8 4547.37 4619.2 4547.37 c
4624.6 4547.37 4628.98 4542.99 4628.98 4537.59 c
f
n
4001.74 3761.29 m
4001.74 3755.89 3997.37 3751.51 3991.97 3751.51 c
3986.57 3751.51 3982.19 3755.89 3982.19 3761.29 c
3982.19 3766.69 3986.57 3771.06 3991.97 3771.06 c
3997.37 3771.06 4001.74 3766.69 4001.74 3761.29 c
f
n
4040.84 3813.42 m
4040.84 3808.02 4036.46 3803.64 4031.07 3803.64 c
4025.67 3803.64 4021.29 3808.02 4021.29 3813.42 c
4021.29 3818.82 4025.67 3823.2 4031.07 3823.2 c
4036.46 3823.2 4040.84 3818.82 4040.84 3813.42 c
f
n
4079.95 3864.74 m
4079.95 3859.34 4075.57 3854.96 4070.17 3854.96 c
4064.77 3854.96 4060.39 3859.34 4060.39 3864.74 c
4060.39 3870.14 4064.77 3874.52 4070.17 3874.52 c
4075.57 3874.52 4079.95 3870.14 4079.95 3864.74 c
f
n
4118.23 3916.88 m
4118.23 3911.48 4113.85 3907.1 4108.45 3907.1 c
4103.05 3907.1 4098.68 3911.48 4098.68 3916.88 c
4098.68 3922.27 4103.05 3926.65 4108.45 3926.65 c
4113.85 3926.65 4118.23 3922.27 4118.23 3916.88 c
f
n
4157.33 3968.2 m
4157.33 3962.8 4152.95 3958.42 4147.55 3958.42 c
4142.16 3958.42 4137.78 3962.8 4137.78 3968.2 c
4137.78 3973.59 4142.16 3977.97 4147.55 3977.97 c
4152.95 3977.97 4157.33 3973.59 4157.33 3968.2 c
f
n
4196.43 4020.33 m
4196.43 4014.93 4192.05 4010.55 4186.66 4010.55 c
4181.26 4010.55 4176.88 4014.93 4176.88 4020.33 c
4176.88 4025.73 4181.26 4030.1 4186.66 4030.1 c
4192.05 4030.1 4196.43 4025.73 4196.43 4020.33 c
f
n
4234.71 4072.46 m
4234.71 4067.06 4230.34 4062.69 4224.94 4062.69 c
4219.54 4062.69 4215.16 4067.06 4215.16 4072.46 c
4215.16 4077.86 4219.54 4082.24 4224.94 4082.24 c
4230.34 4082.24 4234.71 4077.86 4234.71 4072.46 c
f
n
4273.82 4123.78 m
4273.82 4118.38 4269.44 4114.0 4264.04 4114.0 c
4258.64 4114.0 4254.27 4118.38 4254.27 4123.78 c
4254.27 4129.18 4258.64 4133.55 4264.04 4133.55 c
4269.44 4133.55 4273.82 4129.18 4273.82 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4351.2 4227.23 m
4351.2 4221.84 4346.82 4217.46 4341.43 4217.46 c
4336.03 4217.46 4331.65 4221.84 4331.65 4227.23 c
4331.65 4232.63 4336.03 4237.01 4341.43 4237.01 c
4346.82 4237.01 4351.2 4232.63 4351.2 4227.23 c
f
n
4390.3 4279.37 m
4390.3 4273.97 4385.93 4269.59 4380.53 4269.59 c
4375.13 4269.59 4370.75 4273.97 4370.75 4279.37 c
4370.75 4284.77 4375.13 4289.14 4380.53 4289.14 c
4385.93 4289.14 4390.3 4284.77 4390.3 4279.37 c
f
n
4428.59 4330.69 m
4428.59 4325.29 4424.21 4320.91 4418.81 4320.91 c
4413.41 4320.91 4409.04 4325.29 4409.04 4330.69 c
4409.04 4336.09 4413.41 4340.46 4418.81 4340.46 c
4424.21 4340.46 4428.59 4336.09 4428.59 4330.69 c
f
n
4467.69 4382.82 m
4467.69 4377.42 4463.31 4373.05 4457.91 4373.05 c
4452.52 4373.05 4448.14 4377.42 4448.14 4382.82 c
4448.14 4388.22 4452.52 4392.6 4457.91 4392.6 c
4463.31 4392.6 4467.69 4388.22 4467.69 4382.82 c
f
n
4506.79 4434.14 m
4506.79 4428.74 4502.41 4424.36 4497.02 4424.36 c
4491.62 4424.36 4487.24 4428.74 4487.24 4434.14 c
4487.24 4439.54 4491.62 4443.91 4497.02 4443.91 c
4502.41 4443.91 4506.79 4439.54 4506.79 4434.14 c
f
n
4545.07 4486.27 m
4545.07 4480.88 4540.7 4476.5 4535.3 4476.5 c
4529.9 4476.5 4525.52 4480.88 4525.52 4486.27 c
4525.52 4491.67 4529.9 4496.05 4535.3 4496.05 c
4540.7 4496.05 4545.07 4491.67 4545.07 4486.27 c
f
n
4584.18 4537.59 m
4584.18 4532.2 4579.8 4527.82 4574.4 4527.82 c
4569.0 4527.82 4564.62 4532.2 4564.62 4537.59 c
4564.62 4542.99 4569.0 4547.37 4574.4 4547.37 c
4579.8 4547.37 4584.18 4542.99 4584.18 4537.59 c
f
n
4053.88 3761.29 m
4053.88 3755.89 4049.5 3751.51 4044.1 3751.51 c
4038.7 3751.51 4034.33 3755.89 4034.33 3761.29 c
4034.33 3766.69 4038.7 3771.06 4044.1 3771.06 c
4049.5 3771.06 4053.88 3766.69 4053.88 3761.29 c
f
n
4086.46 3813.42 m
4086.46 3808.02 4082.08 3803.64 4076.68 3803.64 c
4071.29 3803.64 4066.91 3808.02 4066.91 3813.42 c
4066.91 3818.82 4071.29 3823.2 4076.68 3823.2 c
4082.08 3823.2 4086.46 3818.82 4086.46 3813.42 c
f
n
4118.23 3864.74 m
4118.23 3859.34 4113.85 3854.96 4108.45 3854.96 c
4103.05 3854.96 4098.68 3859.34 4098.68 3864.74 c
4098.68 3870.14 4103.05 3874.52 4108.45 3874.52 c
4113.85 3874.52 4118.23 3870.14 4118.23 3864.74 c
f
n
4150.81 3916.88 m
4150.81 3911.48 4146.44 3907.1 4141.04 3907.1 c
4135.64 3907.1 4131.26 3911.48 4131.26 3916.88 c
4131.26 3922.27 4135.64 3926.65 4141.04 3926.65 c
4146.44 3926.65 4150.81 3922.27 4150.81 3916.88 c
f
n
4183.4 3968.2 m
4183.4 3962.8 4179.02 3958.42 4173.62 3958.42 c
4168.22 3958.42 4163.85 3962.8 4163.85 3968.2 c
4163.85 3973.59 4168.22 3977.97 4173.62 3977.97 c
4179.02 3977.97 4183.4 3973.59 4183.4 3968.2 c
f
n
4215.16 4020.33 m
4215.16 4014.93 4210.79 4010.55 4205.39 4010.55 c
4199.99 4010.55 4195.62 4014.93 4195.62 4020.33 c
4195.62 4025.73 4199.99 4030.1 4205.39 4030.1 c
4210.79 4030.1 4215.16 4025.73 4215.16 4020.33 c
f
n
4247.75 4072.46 m
4247.75 4067.06 4243.37 4062.69 4237.97 4062.69 c
4232.57 4062.69 4228.2 4067.06 4228.2 4072.46 c
4228.2 4077.86 4232.57 4082.24 4237.97 4082.24 c
4243.37 4082.24 4247.75 4077.86 4247.75 4072.46 c
f
n
4280.33 4123.78 m
4280.33 4118.38 4275.96 4114.0 4270.56 4114.0 c
4265.16 4114.0 4260.78 4118.38 4260.78 4123.78 c
4260.78 4129.18 4265.16 4133.55 4270.56 4133.55 c
4275.96 4133.55 4280.33 4129.18 4280.33 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4344.69 4227.23 m
4344.69 4221.84 4340.31 4217.46 4334.91 4217.46 c
4329.51 4217.46 4325.14 4221.84 4325.14 4227.23 c
4325.14 4232.63 4329.51 4237.01 4334.91 4237.01 c
4340.31 4237.01 4344.69 4232.63 4344.69 4227.23 c
f
n
4377.27 4279.37 m
4377.27 4273.97 4372.89 4269.59 4367.5 4269.59 c
4362.1 4269.59 4357.72 4273.97 4357.72 4279.37 c
4357.72 4284.77 4362.1 4289.14 4367.5 4289.14 c
4372.89 4289.14 4377.27 4284.77 4377.27 4279.37 c
f
n
4409.85 4330.69 m
4409.85 4325.29 4405.48 4320.91 4400.08 4320.91 c
4394.68 4320.91 4390.3 4325.29 4390.3 4330.69 c
4390.3 4336.09 4394.68 4340.46 4400.08 4340.46 c
4405.48 4340.46 4409.85 4336.09 4409.85 4330.69 c
f
n
4441.62 4382.82 m
4441.62 4377.42 4437.25 4373.05 4431.85 4373.05 c
4426.45 4373.05 4422.07 4377.42 4422.07 4382.82 c
4422.07 4388.22 4426.45 4392.6 4431.85 4392.6 c
4437.25 4392.6 4441.62 4388.22 4441.62 4382.82 c
f
n
4474.21 4434.14 m
4474.21 4428.74 4469.83 4424.36 4464.43 4424.36 c
4459.03 4424.36 4454.66 4428.74 4454.66 4434.14 c
4454.66 4439.54 4459.03 4443.91 4464.43 4443.91 c
4469.83 4443.91 4474.21 4439.54 4474.21 4434.14 c
f
n
4506.79 4486.27 m
4506.79 4480.88 4502.41 4476.5 4497.02 4476.5 c
4491.62 4476.5 4487.24 4480.88 4487.24 4486.27 c
4487.24 4491.67 4491.62 4496.05 4497.02 4496.05 c
4502.41 4496.05 4506.79 4491.67 4506.79 4486.27 c
f
n
4538.56 4537.59 m
4538.56 4532.2 4534.18 4527.82 4528.79 4527.82 c
4523.39 4527.82 4519.01 4532.2 4519.01 4537.59 c
4519.01 4542.99 4523.39 4547.37 4528.79 4547.37 c
4534.18 4547.37 4538.56 4542.99 4538.56 4537.59 c
f
n
4106.01 3761.29 m
4106.01 3755.89 4101.63 3751.51 4096.23 3751.51 c
4090.84 3751.51 4086.46 3755.89 4086.46 3761.29 c
4086.46 3766.69 4090.84 3771.06 4096.23 3771.06 c
4101.63 3771.06 4106.01 3766.69 4106.01 3761.29 c
f
n
4131.26 3813.42 m
4131.26 3808.02 4126.89 3803.64 4121.49 3803.64 c
4116.09 3803.64 4111.71 3808.02 4111.71 3813.42 c
4111.71 3818.82 4116.09 3823.2 4121.49 3823.2 c
4126.89 3823.2 4131.26 3818.82 4131.26 3813.42 c
f
n
4157.33 3864.74 m
4157.33 3859.34 4152.95 3854.96 4147.55 3854.96 c
4142.16 3854.96 4137.78 3859.34 4137.78 3864.74 c
4137.78 3870.14 4142.16 3874.52 4147.55 3874.52 c
4152.95 3874.52 4157.33 3870.14 4157.33 3864.74 c
f
n
4183.4 3916.88 m
4183.4 3911.48 4179.02 3907.1 4173.62 3907.1 c
4168.22 3907.1 4163.85 3911.48 4163.85 3916.88 c
4163.85 3922.27 4168.22 3926.65 4173.62 3926.65 c
4179.02 3926.65 4183.4 3922.27 4183.4 3916.88 c
f
n
4209.46 3968.2 m
4209.46 3962.8 4205.09 3958.42 4199.69 3958.42 c
4194.29 3958.42 4189.91 3962.8 4189.91 3968.2 c
4189.91 3973.59 4194.29 3977.97 4199.69 3977.97 c
4205.09 3977.97 4209.46 3973.59 4209.46 3968.2 c
f
n
4234.71 4020.33 m
4234.71 4014.93 4230.34 4010.55 4224.94 4010.55 c
4219.54 4010.55 4215.16 4014.93 4215.16 4020.33 c
4215.16 4025.73 4219.54 4030.1 4224.94 4030.1 c
4230.34 4030.1 4234.71 4025.73 4234.71 4020.33 c
f
n
4260.78 4072.46 m
4260.78 4067.06 4256.41 4062.69 4251.01 4062.69 c
4245.61 4062.69 4241.23 4067.06 4241.23 4072.46 c
4241.23 4077.86 4245.61 4082.24 4251.01 4082.24 c
4256.41 4082.24 4260.78 4077.86 4260.78 4072.46 c
f
n
4286.85 4123.78 m
4286.85 4118.38 4282.47 4114.0 4277.07 4114.0 c
4271.68 4114.0 4267.3 4118.38 4267.3 4123.78 c
4267.3 4129.18 4271.68 4133.55 4277.07 4133.55 c
4282.47 4133.55 4286.85 4129.18 4286.85 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4338.17 4227.23 m
4338.17 4221.84 4333.79 4217.46 4328.39 4217.46 c
4323.0 4217.46 4318.62 4221.84 4318.62 4227.23 c
4318.62 4232.63 4323.0 4237.01 4328.39 4237.01 c
4333.79 4237.01 4338.17 4232.63 4338.17 4227.23 c
f
n
4364.23 4279.37 m
4364.23 4273.97 4359.86 4269.59 4354.46 4269.59 c
4349.06 4269.59 4344.69 4273.97 4344.69 4279.37 c
4344.69 4284.77 4349.06 4289.14 4354.46 4289.14 c
4359.86 4289.14 4364.23 4284.77 4364.23 4279.37 c
f
n
4390.3 4330.69 m
4390.3 4325.29 4385.93 4320.91 4380.53 4320.91 c
4375.13 4320.91 4370.75 4325.29 4370.75 4330.69 c
4370.75 4336.09 4375.13 4340.46 4380.53 4340.46 c
4385.93 4340.46 4390.3 4336.09 4390.3 4330.69 c
f
n
4416.37 4382.82 m
4416.37 4377.42 4411.99 4373.05 4406.59 4373.05 c
4401.2 4373.05 4396.82 4377.42 4396.82 4382.82 c
4396.82 4388.22 4401.2 4392.6 4406.59 4392.6 c
4411.99 4392.6 4416.37 4388.22 4416.37 4382.82 c
f
n
4441.62 4434.14 m
4441.62 4428.74 4437.25 4424.36 4431.85 4424.36 c
4426.45 4424.36 4422.07 4428.74 4422.07 4434.14 c
4422.07 4439.54 4426.45 4443.91 4431.85 4443.91 c
4437.25 4443.91 4441.62 4439.54 4441.62 4434.14 c
f
n
4467.69 4486.27 m
4467.69 4480.88 4463.31 4476.5 4457.91 4476.5 c
4452.52 4476.5 4448.14 4480.88 4448.14 4486.27 c
4448.14 4491.67 4452.52 4496.05 4457.91 4496.05 c
4463.31 4496.05 4467.69 4491.67 4467.69 4486.27 c
f
n
4493.76 4537.59 m
4493.76 4532.2 4489.38 4527.82 4483.98 4527.82 c
4478.58 4527.82 4474.21 4532.2 4474.21 4537.59 c
4474.21 4542.99 4478.58 4547.37 4483.98 4547.37 c
4489.38 4547.37 4493.76 4542.99 4493.76 4537.59 c
f
n
4157.33 3761.29 m
4157.33 3755.89 4152.95 3751.51 4147.55 3751.51 c
4142.16 3751.51 4137.78 3755.89 4137.78 3761.29 c
4137.78 3766.69 4142.16 3771.06 4147.55 3771.06 c
4152.95 3771.06 4157.33 3766.69 4157.33 3761.29 c
f
n
4176.88 3813.42 m
4176.88 3808.02 4172.5 3803.64 4167.11 3803.64 c
4161.71 3803.64 4157.33 3808.02 4157.33 3813.42 c
4157.33 3818.82 4161.71 3823.2 4167.11 3823.2 c
4172.5 3823.2 4176.88 3818.82 4176.88 3813.42 c
f
n
4196.43 3864.74 m
4196.43 3859.34 4192.05 3854.96 4186.66 3854.96 c
4181.26 3854.96 4176.88 3859.34 4176.88 3864.74 c
4176.88 3870.14 4181.26 3874.52 4186.66 3874.52 c
4192.05 3874.52 4196.43 3870.14 4196.43 3864.74 c
f
n
4215.16 3916.88 m
4215.16 3911.48 4210.79 3907.1 4205.39 3907.1 c
4199.99 3907.1 4195.62 3911.48 4195.62 3916.88 c
4195.62 3922.27 4199.99 3926.65 4205.39 3926.65 c
4210.79 3926.65 4215.16 3922.27 4215.16 3916.88 c
f
n
4234.71 3968.2 m
4234.71 3962.8 4230.34 3958.42 4224.94 3958.42 c
4219.54 3958.42 4215.16 3962.8 4215.16 3968.2 c
4215.16 3973.59 4219.54 3977.97 4224.94 3977.97 c
4230.34 3977.97 4234.71 3973.59 4234.71 3968.2 c
f
n
4254.27 4020.33 m
4254.27 4014.93 4249.89 4010.55 4244.49 4010.55 c
4239.09 4010.55 4234.71 4014.93 4234.71 4020.33 c
4234.71 4025.73 4239.09 4030.1 4244.49 4030.1 c
4249.89 4030.1 4254.27 4025.73 4254.27 4020.33 c
f
n
4273.82 4072.46 m
4273.82 4067.06 4269.44 4062.69 4264.04 4062.69 c
4258.64 4062.69 4254.27 4067.06 4254.27 4072.46 c
4254.27 4077.86 4258.64 4082.24 4264.04 4082.24 c
4269.44 4082.24 4273.82 4077.86 4273.82 4072.46 c
f
n
4293.37 4123.78 m
4293.37 4118.38 4288.99 4114.0 4283.59 4114.0 c
4278.19 4114.0 4273.82 4118.38 4273.82 4123.78 c
4273.82 4129.18 4278.19 4133.55 4283.59 4133.55 c
4288.99 4133.55 4293.37 4129.18 4293.37 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4331.65 4227.23 m
4331.65 4221.84 4327.28 4217.46 4321.88 4217.46 c
4316.48 4217.46 4312.1 4221.84 4312.1 4227.23 c
4312.1 4232.63 4316.48 4237.01 4321.88 4237.01 c
4327.28 4237.01 4331.65 4232.63 4331.65 4227.23 c
f
n
4351.2 4279.37 m
4351.2 4273.97 4346.82 4269.59 4341.43 4269.59 c
4336.03 4269.59 4331.65 4273.97 4331.65 4279.37 c
4331.65 4284.77 4336.03 4289.14 4341.43 4289.14 c
4346.82 4289.14 4351.2 4284.77 4351.2 4279.37 c
f
n
4370.75 4330.69 m
4370.75 4325.29 4366.38 4320.91 4360.98 4320.91 c
4355.58 4320.91 4351.2 4325.29 4351.2 4330.69 c
4351.2 4336.09 4355.58 4340.46 4360.98 4340.46 c
4366.38 4340.46 4370.75 4336.09 4370.75 4330.69 c
f
n
4390.3 4382.82 m
4390.3 4377.42 4385.93 4373.05 4380.53 4373.05 c
4375.13 4373.05 4370.75 4377.42 4370.75 4382.82 c
4370.75 4388.22 4375.13 4392.6 4380.53 4392.6 c
4385.93 4392.6 4390.3 4388.22 4390.3 4382.82 c
f
n
4409.85 4434.14 m
4409.85 4428.74 4405.48 4424.36 4400.08 4424.36 c
4394.68 4424.36 4390.3 4428.74 4390.3 4434.14 c
4390.3 4439.54 4394.68 4443.91 4400.08 4443.91 c
4405.48 4443.91 4409.85 4439.54 4409.85 4434.14 c
f
n
4428.59 4486.27 m
4428.59 4480.88 4424.21 4476.5 4418.81 4476.5 c
4413.41 4476.5 4409.04 4480.88 4409.04 4486.27 c
4409.04 4491.67 4413.41 4496.05 4418.81 4496.05 c
4424.21 4496.05 4428.59 4491.67 4428.59 4486.27 c
f
n
4448.14 4537.59 m
4448.14 4532.2 4443.76 4527.82 4438.36 4527.82 c
4432.96 4527.82 4428.59 4532.2 4428.59 4537.59 c
4428.59 4542.99 4432.96 4547.37 4438.36 4547.37 c
4443.76 4547.37 4448.14 4542.99 4448.14 4537.59 c
f
n
4209.46 3761.29 m
4209.46 3755.89 4205.09 3751.51 4199.69 3751.51 c
4194.29 3751.51 4189.91 3755.89 4189.91 3761.29 c
4189.91 3766.69 4194.29 3771.06 4199.69 3771.06 c
4205.09 3771.06 4209.46 3766.69 4209.46 3761.29 c
f
n
4221.68 3813.42 m
4221.68 3808.02 4217.3 3803.64 4211.91 3803.64 c
4206.51 3803.64 4202.13 3808.02 4202.13 3813.42 c
4202.13 3818.82 4206.51 3823.2 4211.91 3823.2 c
4217.3 3823.2 4221.68 3818.82 4221.68 3813.42 c
f
n
4234.71 3864.74 m
4234.71 3859.34 4230.34 3854.96 4224.94 3854.96 c
4219.54 3854.96 4215.16 3859.34 4215.16 3864.74 c
4215.16 3870.14 4219.54 3874.52 4224.94 3874.52 c
4230.34 3874.52 4234.71 3870.14 4234.71 3864.74 c
f
n
4247.75 3916.88 m
4247.75 3911.48 4243.37 3907.1 4237.97 3907.1 c
4232.57 3907.1 4228.2 3911.48 4228.2 3916.88 c
4228.2 3922.27 4232.57 3926.65 4237.97 3926.65 c
4243.37 3926.65 4247.75 3922.27 4247.75 3916.88 c
f
n
4260.78 3968.2 m
4260.78 3962.8 4256.41 3958.42 4251.01 3958.42 c
4245.61 3958.42 4241.23 3962.8 4241.23 3968.2 c
4241.23 3973.59 4245.61 3977.97 4251.01 3977.97 c
4256.41 3977.97 4260.78 3973.59 4260.78 3968.2 c
f
n
4273.82 4020.33 m
4273.82 4014.93 4269.44 4010.55 4264.04 4010.55 c
4258.64 4010.55 4254.27 4014.93 4254.27 4020.33 c
4254.27 4025.73 4258.64 4030.1 4264.04 4030.1 c
4269.44 4030.1 4273.82 4025.73 4273.82 4020.33 c
f
n
4286.85 4072.46 m
4286.85 4067.06 4282.47 4062.69 4277.07 4062.69 c
4271.68 4062.69 4267.3 4067.06 4267.3 4072.46 c
4267.3 4077.86 4271.68 4082.24 4277.07 4082.24 c
4282.47 4082.24 4286.85 4077.86 4286.85 4072.46 c
f
n
4299.88 4123.78 m
4299.88 4118.38 4295.51 4114.0 4290.11 4114.0 c
4284.71 4114.0 4280.33 4118.38 4280.33 4123.78 c
4280.33 4129.18 4284.71 4133.55 4290.11 4133.55 c
4295.51 4133.55 4299.88 4129.18 4299.88 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4325.14 4227.23 m
4325.14 4221.84 4320.76 4217.46 4315.36 4217.46 c
4309.96 4217.46 4305.59 4221.84 4305.59 4227.23 c
4305.59 4232.63 4309.96 4237.01 4315.36 4237.01 c
4320.76 4237.01 4325.14 4232.63 4325.14 4227.23 c
f
n
4338.17 4279.37 m
4338.17 4273.97 4333.79 4269.59 4328.39 4269.59 c
4323.0 4269.59 4318.62 4273.97 4318.62 4279.37 c
4318.62 4284.77 4323.0 4289.14 4328.39 4289.14 c
4333.79 4289.14 4338.17 4284.77 4338.17 4279.37 c
f
n
4351.2 4330.69 m
4351.2 4325.29 4346.82 4320.91 4341.43 4320.91 c
4336.03 4320.91 4331.65 4325.29 4331.65 4330.69 c
4331.65 4336.09 4336.03 4340.46 4341.43 4340.46 c
4346.82 4340.46 4351.2 4336.09 4351.2 4330.69 c
f
n
4364.23 4382.82 m
4364.23 4377.42 4359.86 4373.05 4354.46 4373.05 c
4349.06 4373.05 4344.69 4377.42 4344.69 4382.82 c
4344.69 4388.22 4349.06 4392.6 4354.46 4392.6 c
4359.86 4392.6 4364.23 4388.22 4364.23 4382.82 c
f
n
4377.27 4434.14 m
4377.27 4428.74 4372.89 4424.36 4367.5 4424.36 c
4362.1 4424.36 4357.72 4428.74 4357.72 4434.14 c
4357.72 4439.54 4362.1 4443.91 4367.5 4443.91 c
4372.89 4443.91 4377.27 4439.54 4377.27 4434.14 c
f
n
4390.3 4486.27 m
4390.3 4480.88 4385.93 4476.5 4380.53 4476.5 c
4375.13 4476.5 4370.75 4480.88 4370.75 4486.27 c
4370.75 4491.67 4375.13 4496.05 4380.53 4496.05 c
4385.93 4496.05 4390.3 4491.67 4390.3 4486.27 c
f
n
4403.34 4537.59 m
4403.34 4532.2 4398.96 4527.82 4393.56 4527.82 c
4388.16 4527.82 4383.79 4532.2 4383.79 4537.59 c
4383.79 4542.99 4388.16 4547.37 4393.56 4547.37 c
4398.96 4547.37 4403.34 4542.99 4403.34 4537.59 c
f
n
4260.78 3761.29 m
4260.78 3755.89 4256.41 3751.51 4251.01 3751.51 c
4245.61 3751.51 4241.23 3755.89 4241.23 3761.29 c
4241.23 3766.69 4245.61 3771.06 4251.01 3771.06 c
4256.41 3771.06 4260.78 3766.69 4260.78 3761.29 c
f
n
4267.3 3813.42 m
4267.3 3808.02 4262.92 3803.64 4257.52 3803.64 c
4252.12 3803.64 4247.75 3808.02 4247.75 3813.42 c
4247.75 3818.82 4252.12 3823.2 4257.52 3823.2 c
4262.92 3823.2 4267.3 3818.82 4267.3 3813.42 c
f
n
4273.82 3864.74 m
4273.82 3859.34 4269.44 3854.96 4264.04 3854.96 c
4258.64 3854.96 4254.27 3859.34 4254.27 3864.74 c
4254.27 3870.14 4258.64 3874.52 4264.04 3874.52 c
4269.44 3874.52 4273.82 3870.14 4273.82 3864.74 c
f
n
4280.33 3916.88 m
4280.33 3911.48 4275.96 3907.1 4270.56 3907.1 c
4265.16 3907.1 4260.78 3911.48 4260.78 3916.88 c
4260.78 3922.27 4265.16 3926.65 4270.56 3926.65 c
4275.96 3926.65 4280.33 3922.27 4280.33 3916.88 c
f
n
4286.85 3968.2 m
4286.85 3962.8 4282.47 3958.42 4277.07 3958.42 c
4271.68 3958.42 4267.3 3962.8 4267.3 3968.2 c
4267.3 3973.59 4271.68 3977.97 4277.07 3977.97 c
4282.47 3977.97 4286.85 3973.59 4286.85 3968.2 c
f
n
4293.37 4020.33 m
4293.37 4014.93 4288.99 4010.55 4283.59 4010.55 c
4278.19 4010.55 4273.82 4014.93 4273.82 4020.33 c
4273.82 4025.73 4278.19 4030.1 4283.59 4030.1 c
4288.99 4030.1 4293.37 4025.73 4293.37 4020.33 c
f
n
4299.88 4072.46 m
4299.88 4067.06 4295.51 4062.69 4290.11 4062.69 c
4284.71 4062.69 4280.33 4067.06 4280.33 4072.46 c
4280.33 4077.86 4284.71 4082.24 4290.11 4082.24 c
4295.51 4082.24 4299.88 4077.86 4299.88 4072.46 c
f
n
4306.4 4123.78 m
4306.4 4118.38 4302.02 4114.0 4296.62 4114.0 c
4291.23 4114.0 4286.85 4118.38 4286.85 4123.78 c
4286.85 4129.18 4291.23 4133.55 4296.62 4133.55 c
4302.02 4133.55 4306.4 4129.18 4306.4 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4318.62 4227.23 m
4318.62 4221.84 4314.24 4217.46 4308.84 4217.46 c
4303.45 4217.46 4299.07 4221.84 4299.07 4227.23 c
4299.07 4232.63 4303.45 4237.01 4308.84 4237.01 c
4314.24 4237.01 4318.62 4232.63 4318.62 4227.23 c
f
n
4325.14 4279.37 m
4325.14 4273.97 4320.76 4269.59 4315.36 4269.59 c
4309.96 4269.59 4305.59 4273.97 4305.59 4279.37 c
4305.59 4284.77 4309.96 4289.14 4315.36 4289.14 c
4320.76 4289.14 4325.14 4284.77 4325.14 4279.37 c
f
n
4331.65 4330.69 m
4331.65 4325.29 4327.28 4320.91 4321.88 4320.91 c
4316.48 4320.91 4312.1 4325.29 4312.1 4330.69 c
4312.1 4336.09 4316.48 4340.46 4321.88 4340.46 c
4327.28 4340.46 4331.65 4336.09 4331.65 4330.69 c
f
n
4338.17 4382.82 m
4338.17 4377.42 4333.79 4373.05 4328.39 4373.05 c
4323.0 4373.05 4318.62 4377.42 4318.62 4382.82 c
4318.62 4388.22 4323.0 4392.6 4328.39 4392.6 c
4333.79 4392.6 4338.17 4388.22 4338.17 4382.82 c
f
n
4344.69 4434.14 m
4344.69 4428.74 4340.31 4424.36 4334.91 4424.36 c
4329.51 4424.36 4325.14 4428.74 4325.14 4434.14 c
4325.14 4439.54 4329.51 4443.91 4334.91 4443.91 c
4340.31 4443.91 4344.69 4439.54 4344.69 4434.14 c
f
n
4351.2 4486.27 m
4351.2 4480.88 4346.82 4476.5 4341.43 4476.5 c
4336.03 4476.5 4331.65 4480.88 4331.65 4486.27 c
4331.65 4491.67 4336.03 4496.05 4341.43 4496.05 c
4346.82 4496.05 4351.2 4491.67 4351.2 4486.27 c
f
n
4357.72 4537.59 m
4357.72 4532.2 4353.34 4527.82 4347.95 4527.82 c
4342.55 4527.82 4338.17 4532.2 4338.17 4537.59 c
4338.17 4542.99 4342.55 4547.37 4347.95 4547.37 c
4353.34 4547.37 4357.72 4542.99 4357.72 4537.59 c
f
n
4312.92 3761.29 m
4312.92 3755.89 4308.54 3751.51 4303.14 3751.51 c
4297.74 3751.51 4293.37 3755.89 4293.37 3761.29 c
4293.37 3766.69 4297.74 3771.06 4303.14 3771.06 c
4308.54 3771.06 4312.92 3766.69 4312.92 3761.29 c
f
n
4312.92 3813.42 m
4312.92 3808.02 4308.54 3803.64 4303.14 3803.64 c
4297.74 3803.64 4293.37 3808.02 4293.37 3813.42 c
4293.37 3818.82 4297.74 3823.2 4303.14 3823.2 c
4308.54 3823.2 4312.92 3818.82 4312.92 3813.42 c
f
n
4312.92 3864.74 m
4312.92 3859.34 4308.54 3854.96 4303.14 3854.96 c
4297.74 3854.96 4293.37 3859.34 4293.37 3864.74 c
4293.37 3870.14 4297.74 3874.52 4303.14 3874.52 c
4308.54 3874.52 4312.92 3870.14 4312.92 3864.74 c
f
n
4312.92 3916.88 m
4312.92 3911.48 4308.54 3907.1 4303.14 3907.1 c
4297.74 3907.1 4293.37 3911.48 4293.37 3916.88 c
4293.37 3922.27 4297.74 3926.65 4303.14 3926.65 c
4308.54 3926.65 4312.92 3922.27 4312.92 3916.88 c
f
n
4312.92 3968.2 m
4312.92 3962.8 4308.54 3958.42 4303.14 3958.42 c
4297.74 3958.42 4293.37 3962.8 4293.37 3968.2 c
4293.37 3973.59 4297.74 3977.97 4303.14 3977.97 c
4308.54 3977.97 4312.92 3973.59 4312.92 3968.2 c
f
n
4312.92 4020.33 m
4312.92 4014.93 4308.54 4010.55 4303.14 4010.55 c
4297.74 4010.55 4293.37 4014.93 4293.37 4020.33 c
4293.37 4025.73 4297.74 4030.1 4303.14 4030.1 c
4308.54 4030.1 4312.92 4025.73 4312.92 4020.33 c
f
n
4312.92 4072.46 m
4312.92 4067.06 4308.54 4062.69 4303.14 4062.69 c
4297.74 4062.69 4293.37 4067.06 4293.37 4072.46 c
4293.37 4077.86 4297.74 4082.24 4303.14 4082.24 c
4308.54 4082.24 4312.92 4077.86 4312.92 4072.46 c
f
n
4312.92 4123.78 m
4312.92 4118.38 4308.54 4114.0 4303.14 4114.0 c
4297.74 4114.0 4293.37 4118.38 4293.37 4123.78 c
4293.37 4129.18 4297.74 4133.55 4303.14 4133.55 c
4308.54 4133.55 4312.92 4129.18 4312.92 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4312.92 4227.23 m
4312.92 4221.84 4308.54 4217.46 4303.14 4217.46 c
4297.74 4217.46 4293.37 4221.84 4293.37 4227.23 c
4293.37 4232.63 4297.74 4237.01 4303.14 4237.01 c
4308.54 4237.01 4312.92 4232.63 4312.92 4227.23 c
f
n
4312.92 4279.37 m
4312.92 4273.97 4308.54 4269.59 4303.14 4269.59 c
4297.74 4269.59 4293.37 4273.97 4293.37 4279.37 c
4293.37 4284.77 4297.74 4289.14 4303.14 4289.14 c
4308.54 4289.14 4312.92 4284.77 4312.92 4279.37 c
f
n
4312.92 4330.69 m
4312.92 4325.29 4308.54 4320.91 4303.14 4320.91 c
4297.74 4320.91 4293.37 4325.29 4293.37 4330.69 c
4293.37 4336.09 4297.74 4340.46 4303.14 4340.46 c
4308.54 4340.46 4312.92 4336.09 4312.92 4330.69 c
f
n
4312.92 4382.82 m
4312.92 4377.42 4308.54 4373.05 4303.14 4373.05 c
4297.74 4373.05 4293.37 4377.42 4293.37 4382.82 c
4293.37 4388.22 4297.74 4392.6 4303.14 4392.6 c
4308.54 4392.6 4312.92 4388.22 4312.92 4382.82 c
f
n
4312.92 4434.14 m
4312.92 4428.74 4308.54 4424.36 4303.14 4424.36 c
4297.74 4424.36 4293.37 4428.74 4293.37 4434.14 c
4293.37 4439.54 4297.74 4443.91 4303.14 4443.91 c
4308.54 4443.91 4312.92 4439.54 4312.92 4434.14 c
f
n
4312.92 4486.27 m
4312.92 4480.88 4308.54 4476.5 4303.14 4476.5 c
4297.74 4476.5 4293.37 4480.88 4293.37 4486.27 c
4293.37 4491.67 4297.74 4496.05 4303.14 4496.05 c
4308.54 4496.05 4312.92 4491.67 4312.92 4486.27 c
f
n
4312.92 4537.59 m
4312.92 4532.2 4308.54 4527.82 4303.14 4527.82 c
4297.74 4527.82 4293.37 4532.2 4293.37 4537.59 c
4293.37 4542.99 4297.74 4547.37 4303.14 4547.37 c
4308.54 4547.37 4312.92 4542.99 4312.92 4537.59 c
f
n
4364.23 3761.29 m
4364.23 3755.89 4359.86 3751.51 4354.46 3751.51 c
4349.06 3751.51 4344.69 3755.89 4344.69 3761.29 c
4344.69 3766.69 4349.06 3771.06 4354.46 3771.06 c
4359.86 3771.06 4364.23 3766.69 4364.23 3761.29 c
f
n
4357.72 3813.42 m
4357.72 3808.02 4353.34 3803.64 4347.95 3803.64 c
4342.55 3803.64 4338.17 3808.02 4338.17 3813.42 c
4338.17 3818.82 4342.55 3823.2 4347.95 3823.2 c
4353.34 3823.2 4357.72 3818.82 4357.72 3813.42 c
f
n
4351.2 3864.74 m
4351.2 3859.34 4346.82 3854.96 4341.43 3854.96 c
4336.03 3854.96 4331.65 3859.34 4331.65 3864.74 c
4331.65 3870.14 4336.03 3874.52 4341.43 3874.52 c
4346.82 3874.52 4351.2 3870.14 4351.2 3864.74 c
f
n
4344.69 3916.88 m
4344.69 3911.48 4340.31 3907.1 4334.91 3907.1 c
4329.51 3907.1 4325.14 3911.48 4325.14 3916.88 c
4325.14 3922.27 4329.51 3926.65 4334.91 3926.65 c
4340.31 3926.65 4344.69 3922.27 4344.69 3916.88 c
f
n
4338.17 3968.2 m
4338.17 3962.8 4333.79 3958.42 4328.39 3958.42 c
4323.0 3958.42 4318.62 3962.8 4318.62 3968.2 c
4318.62 3973.59 4323.0 3977.97 4328.39 3977.97 c
4333.79 3977.97 4338.17 3973.59 4338.17 3968.2 c
f
n
4331.65 4020.33 m
4331.65 4014.93 4327.28 4010.55 4321.88 4010.55 c
4316.48 4010.55 4312.1 4014.93 4312.1 4020.33 c
4312.1 4025.73 4316.48 4030.1 4321.88 4030.1 c
4327.28 4030.1 4331.65 4025.73 4331.65 4020.33 c
f
n
4325.14 4072.46 m
4325.14 4067.06 4320.76 4062.69 4315.36 4062.69 c
4309.96 4062.69 4305.59 4067.06 4305.59 4072.46 c
4305.59 4077.86 4309.96 4082.24 4315.36 4082.24 c
4320.76 4082.24 4325.14 4077.86 4325.14 4072.46 c
f
n
4318.62 4123.78 m
4318.62 4118.38 4314.24 4114.0 4308.84 4114.0 c
4303.45 4114.0 4299.07 4118.38 4299.07 4123.78 c
4299.07 4129.18 4303.45 4133.55 4308.84 4133.55 c
4314.24 4133.55 4318.62 4129.18 4318.62 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4306.4 4227.23 m
4306.4 4221.84 4302.02 4217.46 4296.62 4217.46 c
4291.23 4217.46 4286.85 4221.84 4286.85 4227.23 c
4286.85 4232.63 4291.23 4237.01 4296.62 4237.01 c
4302.02 4237.01 4306.4 4232.63 4306.4 4227.23 c
f
n
4299.88 4279.37 m
4299.88 4273.97 4295.51 4269.59 4290.11 4269.59 c
4284.71 4269.59 4280.33 4273.97 4280.33 4279.37 c
4280.33 4284.77 4284.71 4289.14 4290.11 4289.14 c
4295.51 4289.14 4299.88 4284.77 4299.88 4279.37 c
f
n
4293.37 4330.69 m
4293.37 4325.29 4288.99 4320.91 4283.59 4320.91 c
4278.19 4320.91 4273.82 4325.29 4273.82 4330.69 c
4273.82 4336.09 4278.19 4340.46 4283.59 4340.46 c
4288.99 4340.46 4293.37 4336.09 4293.37 4330.69 c
f
n
4286.85 4382.82 m
4286.85 4377.42 4282.47 4373.05 4277.07 4373.05 c
4271.68 4373.05 4267.3 4377.42 4267.3 4382.82 c
4267.3 4388.22 4271.68 4392.6 4277.07 4392.6 c
4282.47 4392.6 4286.85 4388.22 4286.85 4382.82 c
f
n
4280.33 4434.14 m
4280.33 4428.74 4275.96 4424.36 4270.56 4424.36 c
4265.16 4424.36 4260.78 4428.74 4260.78 4434.14 c
4260.78 4439.54 4265.16 4443.91 4270.56 4443.91 c
4275.96 4443.91 4280.33 4439.54 4280.33 4434.14 c
f
n
4273.82 4486.27 m
4273.82 4480.88 4269.44 4476.5 4264.04 4476.5 c
4258.64 4476.5 4254.27 4480.88 4254.27 4486.27 c
4254.27 4491.67 4258.64 4496.05 4264.04 4496.05 c
4269.44 4496.05 4273.82 4491.67 4273.82 4486.27 c
f
n
4267.3 4537.59 m
4267.3 4532.2 4262.92 4527.82 4257.52 4527.82 c
4252.12 4527.82 4247.75 4532.2 4247.75 4537.59 c
4247.75 4542.99 4252.12 4547.37 4257.52 4547.37 c
4262.92 4547.37 4267.3 4542.99 4267.3 4537.59 c
f
n
4416.37 3761.29 m
4416.37 3755.89 4411.99 3751.51 4406.59 3751.51 c
4401.2 3751.51 4396.82 3755.89 4396.82 3761.29 c
4396.82 3766.69 4401.2 3771.06 4406.59 3771.06 c
4411.99 3771.06 4416.37 3766.69 4416.37 3761.29 c
f
n
4403.34 3813.42 m
4403.34 3808.02 4398.96 3803.64 4393.56 3803.64 c
4388.16 3803.64 4383.79 3808.02 4383.79 3813.42 c
4383.79 3818.82 4388.16 3823.2 4393.56 3823.2 c
4398.96 3823.2 4403.34 3818.82 4403.34 3813.42 c
f
n
4390.3 3864.74 m
4390.3 3859.34 4385.93 3854.96 4380.53 3854.96 c
4375.13 3854.96 4370.75 3859.34 4370.75 3864.74 c
4370.75 3870.14 4375.13 3874.52 4380.53 3874.52 c
4385.93 3874.52 4390.3 3870.14 4390.3 3864.74 c
f
n
4377.27 3916.88 m
4377.27 3911.48 4372.89 3907.1 4367.5 3907.1 c
4362.1 3907.1 4357.72 3911.48 4357.72 3916.88 c
4357.72 3922.27 4362.1 3926.65 4367.5 3926.65 c
4372.89 3926.65 4377.27 3922.27 4377.27 3916.88 c
f
n
4364.23 3968.2 m
4364.23 3962.8 4359.86 3958.42 4354.46 3958.42 c
4349.06 3958.42 4344.69 3962.8 4344.69 3968.2 c
4344.69 3973.59 4349.06 3977.97 4354.46 3977.97 c
4359.86 3977.97 4364.23 3973.59 4364.23 3968.2 c
f
n
4351.2 4020.33 m
4351.2 4014.93 4346.82 4010.55 4341.43 4010.55 c
4336.03 4010.55 4331.65 4014.93 4331.65 4020.33 c
4331.65 4025.73 4336.03 4030.1 4341.43 4030.1 c
4346.82 4030.1 4351.2 4025.73 4351.2 4020.33 c
f
n
4338.17 4072.46 m
4338.17 4067.06 4333.79 4062.69 4328.39 4062.69 c
4323.0 4062.69 4318.62 4067.06 4318.62 4072.46 c
4318.62 4077.86 4323.0 4082.24 4328.39 4082.24 c
4333.79 4082.24 4338.17 4077.86 4338.17 4072.46 c
f
n
4325.14 4123.78 m
4325.14 4118.38 4320.76 4114.0 4315.36 4114.0 c
4309.96 4114.0 4305.59 4118.38 4305.59 4123.78 c
4305.59 4129.18 4309.96 4133.55 4315.36 4133.55 c
4320.76 4133.55 4325.14 4129.18 4325.14 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4299.88 4227.23 m
4299.88 4221.84 4295.51 4217.46 4290.11 4217.46 c
4284.71 4217.46 4280.33 4221.84 4280.33 4227.23 c
4280.33 4232.63 4284.71 4237.01 4290.11 4237.01 c
4295.51 4237.01 4299.88 4232.63 4299.88 4227.23 c
f
n
4286.85 4279.37 m
4286.85 4273.97 4282.47 4269.59 4277.07 4269.59 c
4271.68 4269.59 4267.3 4273.97 4267.3 4279.37 c
4267.3 4284.77 4271.68 4289.14 4277.07 4289.14 c
4282.47 4289.14 4286.85 4284.77 4286.85 4279.37 c
f
n
4273.82 4330.69 m
4273.82 4325.29 4269.44 4320.91 4264.04 4320.91 c
4258.64 4320.91 4254.27 4325.29 4254.27 4330.69 c
4254.27 4336.09 4258.64 4340.46 4264.04 4340.46 c
4269.44 4340.46 4273.82 4336.09 4273.82 4330.69 c
f
n
4260.78 4382.82 m
4260.78 4377.42 4256.41 4373.05 4251.01 4373.05 c
4245.61 4373.05 4241.23 4377.42 4241.23 4382.82 c
4241.23 4388.22 4245.61 4392.6 4251.01 4392.6 c
4256.41 4392.6 4260.78 4388.22 4260.78 4382.82 c
f
n
4247.75 4434.14 m
4247.75 4428.74 4243.37 4424.36 4237.97 4424.36 c
4232.57 4424.36 4228.2 4428.74 4228.2 4434.14 c
4228.2 4439.54 4232.57 4443.91 4237.97 4443.91 c
4243.37 4443.91 4247.75 4439.54 4247.75 4434.14 c
f
n
4234.71 4486.27 m
4234.71 4480.88 4230.34 4476.5 4224.94 4476.5 c
4219.54 4476.5 4215.16 4480.88 4215.16 4486.27 c
4215.16 4491.67 4219.54 4496.05 4224.94 4496.05 c
4230.34 4496.05 4234.71 4491.67 4234.71 4486.27 c
f
n
4221.68 4537.59 m
4221.68 4532.2 4217.3 4527.82 4211.91 4527.82 c
4206.51 4527.82 4202.13 4532.2 4202.13 4537.59 c
4202.13 4542.99 4206.51 4547.37 4211.91 4547.37 c
4217.3 4547.37 4221.68 4542.99 4221.68 4537.59 c
f
n
4467.69 3761.29 m
4467.69 3755.89 4463.31 3751.51 4457.91 3751.51 c
4452.52 3751.51 4448.14 3755.89 4448.14 3761.29 c
4448.14 3766.69 4452.52 3771.06 4457.91 3771.06 c
4463.31 3771.06 4467.69 3766.69 4467.69 3761.29 c
f
n
4448.14 3813.42 m
4448.14 3808.02 4443.76 3803.64 4438.36 3803.64 c
4432.96 3803.64 4428.59 3808.02 4428.59 3813.42 c
4428.59 3818.82 4432.96 3823.2 4438.36 3823.2 c
4443.76 3823.2 4448.14 3818.82 4448.14 3813.42 c
f
n
4428.59 3864.74 m
4428.59 3859.34 4424.21 3854.96 4418.81 3854.96 c
4413.41 3854.96 4409.04 3859.34 4409.04 3864.74 c
4409.04 3870.14 4413.41 3874.52 4418.81 3874.52 c
4424.21 3874.52 4428.59 3870.14 4428.59 3864.74 c
f
n
4409.85 3916.88 m
4409.85 3911.48 4405.48 3907.1 4400.08 3907.1 c
4394.68 3907.1 4390.3 3911.48 4390.3 3916.88 c
4390.3 3922.27 4394.68 3926.65 4400.08 3926.65 c
4405.48 3926.65 4409.85 3922.27 4409.85 3916.88 c
f
n
4390.3 3968.2 m
4390.3 3962.8 4385.93 3958.42 4380.53 3958.42 c
4375.13 3958.42 4370.75 3962.8 4370.75 3968.2 c
4370.75 3973.59 4375.13 3977.97 4380.53 3977.97 c
4385.93 3977.97 4390.3 3973.59 4390.3 3968.2 c
f
n
4370.75 4020.33 m
4370.75 4014.93 4366.38 4010.55 4360.98 4010.55 c
4355.58 4010.55 4351.2 4014.93 4351.2 4020.33 c
4351.2 4025.73 4355.58 4030.1 4360.98 4030.1 c
4366.38 4030.1 4370.75 4025.73 4370.75 4020.33 c
f
n
4351.2 4072.46 m
4351.2 4067.06 4346.82 4062.69 4341.43 4062.69 c
4336.03 4062.69 4331.65 4067.06 4331.65 4072.46 c
4331.65 4077.86 4336.03 4082.24 4341.43 4082.24 c
4346.82 4082.24 4351.2 4077.86 4351.2 4072.46 c
f
n
4331.65 4123.78 m
4331.65 4118.38 4327.28 4114.0 4321.88 4114.0 c
4316.48 4114.0 4312.1 4118.38 4312.1 4123.78 c
4312.1 4129.18 4316.48 4133.55 4321.88 4133.55 c
4327.28 4133.55 4331.65 4129.18 4331.65 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4293.37 4227.23 m
4293.37 4221.84 4288.99 4217.46 4283.59 4217.46 c
4278.19 4217.46 4273.82 4221.84 4273.82 4227.23 c
4273.82 4232.63 4278.19 4237.01 4283.59 4237.01 c
4288.99 4237.01 4293.37 4232.63 4293.37 4227.23 c
f
n
4273.82 4279.37 m
4273.82 4273.97 4269.44 4269.59 4264.04 4269.59 c
4258.64 4269.59 4254.27 4273.97 4254.27 4279.37 c
4254.27 4284.77 4258.64 4289.14 4264.04 4289.14 c
4269.44 4289.14 4273.82 4284.77 4273.82 4279.37 c
f
n
4254.27 4330.69 m
4254.27 4325.29 4249.89 4320.91 4244.49 4320.91 c
4239.09 4320.91 4234.71 4325.29 4234.71 4330.69 c
4234.71 4336.09 4239.09 4340.46 4244.49 4340.46 c
4249.89 4340.46 4254.27 4336.09 4254.27 4330.69 c
f
n
4234.71 4382.82 m
4234.71 4377.42 4230.34 4373.05 4224.94 4373.05 c
4219.54 4373.05 4215.16 4377.42 4215.16 4382.82 c
4215.16 4388.22 4219.54 4392.6 4224.94 4392.6 c
4230.34 4392.6 4234.71 4388.22 4234.71 4382.82 c
f
n
4215.16 4434.14 m
4215.16 4428.74 4210.79 4424.36 4205.39 4424.36 c
4199.99 4424.36 4195.62 4428.74 4195.62 4434.14 c
4195.62 4439.54 4199.99 4443.91 4205.39 4443.91 c
4210.79 4443.91 4215.16 4439.54 4215.16 4434.14 c
f
n
4196.43 4486.27 m
4196.43 4480.88 4192.05 4476.5 4186.66 4476.5 c
4181.26 4476.5 4176.88 4480.88 4176.88 4486.27 c
4176.88 4491.67 4181.26 4496.05 4186.66 4496.05 c
4192.05 4496.05 4196.43 4491.67 4196.43 4486.27 c
f
n
4176.88 4537.59 m
4176.88 4532.2 4172.5 4527.82 4167.11 4527.82 c
4161.71 4527.82 4157.33 4532.2 4157.33 4537.59 c
4157.33 4542.99 4161.71 4547.37 4167.11 4547.37 c
4172.5 4547.37 4176.88 4542.99 4176.88 4537.59 c
f
n
4519.82 3761.29 m
4519.82 3755.89 4515.45 3751.51 4510.05 3751.51 c
4504.65 3751.51 4500.27 3755.89 4500.27 3761.29 c
4500.27 3766.69 4504.65 3771.06 4510.05 3771.06 c
4515.45 3771.06 4519.82 3766.69 4519.82 3761.29 c
f
n
4493.76 3813.42 m
4493.76 3808.02 4489.38 3803.64 4483.98 3803.64 c
4478.58 3803.64 4474.21 3808.02 4474.21 3813.42 c
4474.21 3818.82 4478.58 3823.2 4483.98 3823.2 c
4489.38 3823.2 4493.76 3818.82 4493.76 3813.42 c
f
n
4467.69 3864.74 m
4467.69 3859.34 4463.31 3854.96 4457.91 3854.96 c
4452.52 3854.96 4448.14 3859.34 4448.14 3864.74 c
4448.14 3870.14 4452.52 3874.52 4457.91 3874.52 c
4463.31 3874.52 4467.69 3870.14 4467.69 3864.74 c
f
n
4441.62 3916.88 m
4441.62 3911.48 4437.25 3907.1 4431.85 3907.1 c
4426.45 3907.1 4422.07 3911.48 4422.07 3916.88 c
4422.07 3922.27 4426.45 3926.65 4431.85 3926.65 c
4437.25 3926.65 4441.62 3922.27 4441.62 3916.88 c
f
n
4416.37 3968.2 m
4416.37 3962.8 4411.99 3958.42 4406.59 3958.42 c
4401.2 3958.42 4396.82 3962.8 4396.82 3968.2 c
4396.82 3973.59 4401.2 3977.97 4406.59 3977.97 c
4411.99 3977.97 4416.37 3973.59 4416.37 3968.2 c
f
n
4390.3 4020.33 m
4390.3 4014.93 4385.93 4010.55 4380.53 4010.55 c
4375.13 4010.55 4370.75 4014.93 4370.75 4020.33 c
4370.75 4025.73 4375.13 4030.1 4380.53 4030.1 c
4385.93 4030.1 4390.3 4025.73 4390.3 4020.33 c
f
n
4364.23 4072.46 m
4364.23 4067.06 4359.86 4062.69 4354.46 4062.69 c
4349.06 4062.69 4344.69 4067.06 4344.69 4072.46 c
4344.69 4077.86 4349.06 4082.24 4354.46 4082.24 c
4359.86 4082.24 4364.23 4077.86 4364.23 4072.46 c
f
n
4338.17 4123.78 m
4338.17 4118.38 4333.79 4114.0 4328.39 4114.0 c
4323.0 4114.0 4318.62 4118.38 4318.62 4123.78 c
4318.62 4129.18 4323.0 4133.55 4328.39 4133.55 c
4333.79 4133.55 4338.17 4129.18 4338.17 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4286.85 4227.23 m
4286.85 4221.84 4282.47 4217.46 4277.07 4217.46 c
4271.68 4217.46 4267.3 4221.84 4267.3 4227.23 c
4267.3 4232.63 4271.68 4237.01 4277.07 4237.01 c
4282.47 4237.01 4286.85 4232.63 4286.85 4227.23 c
f
n
4260.78 4279.37 m
4260.78 4273.97 4256.41 4269.59 4251.01 4269.59 c
4245.61 4269.59 4241.23 4273.97 4241.23 4279.37 c
4241.23 4284.77 4245.61 4289.14 4251.01 4289.14 c
4256.41 4289.14 4260.78 4284.77 4260.78 4279.37 c
f
n
4234.71 4330.69 m
4234.71 4325.29 4230.34 4320.91 4224.94 4320.91 c
4219.54 4320.91 4215.16 4325.29 4215.16 4330.69 c
4215.16 4336.09 4219.54 4340.46 4224.94 4340.46 c
4230.34 4340.46 4234.71 4336.09 4234.71 4330.69 c
f
n
4209.46 4382.82 m
4209.46 4377.42 4205.09 4373.05 4199.69 4373.05 c
4194.29 4373.05 4189.91 4377.42 4189.91 4382.82 c
4189.91 4388.22 4194.29 4392.6 4199.69 4392.6 c
4205.09 4392.6 4209.46 4388.22 4209.46 4382.82 c
f
n
4183.4 4434.14 m
4183.4 4428.74 4179.02 4424.36 4173.62 4424.36 c
4168.22 4424.36 4163.85 4428.74 4163.85 4434.14 c
4163.85 4439.54 4168.22 4443.91 4173.62 4443.91 c
4179.02 4443.91 4183.4 4439.54 4183.4 4434.14 c
f
n
4157.33 4486.27 m
4157.33 4480.88 4152.95 4476.5 4147.55 4476.5 c
4142.16 4476.5 4137.78 4480.88 4137.78 4486.27 c
4137.78 4491.67 4142.16 4496.05 4147.55 4496.05 c
4152.95 4496.05 4157.33 4491.67 4157.33 4486.27 c
f
n
4131.26 4537.59 m
4131.26 4532.2 4126.89 4527.82 4121.49 4527.82 c
4116.09 4527.82 4111.71 4532.2 4111.71 4537.59 c
4111.71 4542.99 4116.09 4547.37 4121.49 4547.37 c
4126.89 4547.37 4131.26 4542.99 4131.26 4537.59 c
f
n
4571.14 3761.29 m
4571.14 3755.89 4566.77 3751.51 4561.37 3751.51 c
4555.97 3751.51 4551.59 3755.89 4551.59 3761.29 c
4551.59 3766.69 4555.97 3771.06 4561.37 3771.06 c
4566.77 3771.06 4571.14 3766.69 4571.14 3761.29 c
f
n
4538.56 3813.42 m
4538.56 3808.02 4534.18 3803.64 4528.79 3803.64 c
4523.39 3803.64 4519.01 3808.02 4519.01 3813.42 c
4519.01 3818.82 4523.39 3823.2 4528.79 3823.2 c
4534.18 3823.2 4538.56 3818.82 4538.56 3813.42 c
f
n
4506.79 3864.74 m
4506.79 3859.34 4502.41 3854.96 4497.02 3854.96 c
4491.62 3854.96 4487.24 3859.34 4487.24 3864.74 c
4487.24 3870.14 4491.62 3874.52 4497.02 3874.52 c
4502.41 3874.52 4506.79 3870.14 4506.79 3864.74 c
f
n
4474.21 3916.88 m
4474.21 3911.48 4469.83 3907.1 4464.43 3907.1 c
4459.03 3907.1 4454.66 3911.48 4454.66 3916.88 c
4454.66 3922.27 4459.03 3926.65 4464.43 3926.65 c
4469.83 3926.65 4474.21 3922.27 4474.21 3916.88 c
f
n
4441.62 3968.2 m
4441.62 3962.8 4437.25 3958.42 4431.85 3958.42 c
4426.45 3958.42 4422.07 3962.8 4422.07 3968.2 c
4422.07 3973.59 4426.45 3977.97 4431.85 3977.97 c
4437.25 3977.97 4441.62 3973.59 4441.62 3968.2 c
f
n
4409.85 4020.33 m
4409.85 4014.93 4405.48 4010.55 4400.08 4010.55 c
4394.68 4010.55 4390.3 4014.93 4390.3 4020.33 c
4390.3 4025.73 4394.68 4030.1 4400.08 4030.1 c
4405.48 4030.1 4409.85 4025.73 4409.85 4020.33 c
f
n
4377.27 4072.46 m
4377.27 4067.06 4372.89 4062.69 4367.5 4062.69 c
4362.1 4062.69 4357.72 4067.06 4357.72 4072.46 c
4357.72 4077.86 4362.1 4082.24 4367.5 4082.24 c
4372.89 4082.24 4377.27 4077.86 4377.27 4072.46 c
f
n
4344.69 4123.78 m
4344.69 4118.38 4340.31 4114.0 4334.91 4114.0 c
4329.51 4114.0 4325.14 4118.38 4325.14 4123.78 c
4325.14 4129.18 4329.51 4133.55 4334.91 4133.55 c
4340.31 4133.55 4344.69 4129.18 4344.69 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4280.33 4227.23 m
4280.33 4221.84 4275.96 4217.46 4270.56 4217.46 c
4265.16 4217.46 4260.78 4221.84 4260.78 4227.23 c
4260.78 4232.63 4265.16 4237.01 4270.56 4237.01 c
4275.96 4237.01 4280.33 4232.63 4280.33 4227.23 c
f
n
4247.75 4279.37 m
4247.75 4273.97 4243.37 4269.59 4237.97 4269.59 c
4232.57 4269.59 4228.2 4273.97 4228.2 4279.37 c
4228.2 4284.77 4232.57 4289.14 4237.97 4289.14 c
4243.37 4289.14 4247.75 4284.77 4247.75 4279.37 c
f
n
4215.16 4330.69 m
4215.16 4325.29 4210.79 4320.91 4205.39 4320.91 c
4199.99 4320.91 4195.62 4325.29 4195.62 4330.69 c
4195.62 4336.09 4199.99 4340.46 4205.39 4340.46 c
4210.79 4340.46 4215.16 4336.09 4215.16 4330.69 c
f
n
4183.4 4382.82 m
4183.4 4377.42 4179.02 4373.05 4173.62 4373.05 c
4168.22 4373.05 4163.85 4377.42 4163.85 4382.82 c
4163.85 4388.22 4168.22 4392.6 4173.62 4392.6 c
4179.02 4392.6 4183.4 4388.22 4183.4 4382.82 c
f
n
4150.81 4434.14 m
4150.81 4428.74 4146.44 4424.36 4141.04 4424.36 c
4135.64 4424.36 4131.26 4428.74 4131.26 4434.14 c
4131.26 4439.54 4135.64 4443.91 4141.04 4443.91 c
4146.44 4443.91 4150.81 4439.54 4150.81 4434.14 c
f
n
4118.23 4486.27 m
4118.23 4480.88 4113.85 4476.5 4108.45 4476.5 c
4103.05 4476.5 4098.68 4480.88 4098.68 4486.27 c
4098.68 4491.67 4103.05 4496.05 4108.45 4496.05 c
4113.85 4496.05 4118.23 4491.67 4118.23 4486.27 c
f
n
4086.46 4537.59 m
4086.46 4532.2 4082.08 4527.82 4076.68 4527.82 c
4071.29 4527.82 4066.91 4532.2 4066.91 4537.59 c
4066.91 4542.99 4071.29 4547.37 4076.68 4547.37 c
4082.08 4547.37 4086.46 4542.99 4086.46 4537.59 c
f
n
4623.28 3761.29 m
4623.28 3755.89 4618.9 3751.51 4613.5 3751.51 c
4608.1 3751.51 4603.73 3755.89 4603.73 3761.29 c
4603.73 3766.69 4608.1 3771.06 4613.5 3771.06 c
4618.9 3771.06 4623.28 3766.69 4623.28 3761.29 c
f
n
4584.18 3813.42 m
4584.18 3808.02 4579.8 3803.64 4574.4 3803.64 c
4569.0 3803.64 4564.62 3808.02 4564.62 3813.42 c
4564.62 3818.82 4569.0 3823.2 4574.4 3823.2 c
4579.8 3823.2 4584.18 3818.82 4584.18 3813.42 c
f
n
4545.07 3864.74 m
4545.07 3859.34 4540.7 3854.96 4535.3 3854.96 c
4529.9 3854.96 4525.52 3859.34 4525.52 3864.74 c
4525.52 3870.14 4529.9 3874.52 4535.3 3874.52 c
4540.7 3874.52 4545.07 3870.14 4545.07 3864.74 c
f
n
4506.79 3916.88 m
4506.79 3911.48 4502.41 3907.1 4497.02 3907.1 c
4491.62 3907.1 4487.24 3911.48 4487.24 3916.88 c
4487.24 3922.27 4491.62 3926.65 4497.02 3926.65 c
4502.41 3926.65 4506.79 3922.27 4506.79 3916.88 c
f
n
4467.69 3968.2 m
4467.69 3962.8 4463.31 3958.42 4457.91 3958.42 c
4452.52 3958.42 4448.14 3962.8 4448.14 3968.2 c
4448.14 3973.59 4452.52 3977.97 4457.91 3977.97 c
4463.31 3977.97 4467.69 3973.59 4467.69 3968.2 c
f
n
4428.59 4020.33 m
4428.59 4014.93 4424.21 4010.55 4418.81 4010.55 c
4413.41 4010.55 4409.04 4014.93 4409.04 4020.33 c
4409.04 4025.73 4413.41 4030.1 4418.81 4030.1 c
4424.21 4030.1 4428.59 4025.73 4428.59 4020.33 c
f
n
4390.3 4072.46 m
4390.3 4067.06 4385.93 4062.69 4380.53 4062.69 c
4375.13 4062.69 4370.75 4067.06 4370.75 4072.46 c
4370.75 4077.86 4375.13 4082.24 4380.53 4082.24 c
4385.93 4082.24 4390.3 4077.86 4390.3 4072.46 c
f
n
4351.2 4123.78 m
4351.2 4118.38 4346.82 4114.0 4341.43 4114.0 c
4336.03 4114.0 4331.65 4118.38 4331.65 4123.78 c
4331.65 4129.18 4336.03 4133.55 4341.43 4133.55 c
4346.82 4133.55 4351.2 4129.18 4351.2 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4273.82 4227.23 m
4273.82 4221.84 4269.44 4217.46 4264.04 4217.46 c
4258.64 4217.46 4254.27 4221.84 4254.27 4227.23 c
4254.27 4232.63 4258.64 4237.01 4264.04 4237.01 c
4269.44 4237.01 4273.82 4232.63 4273.82 4227.23 c
f
n
4234.71 4279.37 m
4234.71 4273.97 4230.34 4269.59 4224.94 4269.59 c
4219.54 4269.59 4215.16 4273.97 4215.16 4279.37 c
4215.16 4284.77 4219.54 4289.14 4224.94 4289.14 c
4230.34 4289.14 4234.71 4284.77 4234.71 4279.37 c
f
n
4196.43 4330.69 m
4196.43 4325.29 4192.05 4320.91 4186.66 4320.91 c
4181.26 4320.91 4176.88 4325.29 4176.88 4330.69 c
4176.88 4336.09 4181.26 4340.46 4186.66 4340.46 c
4192.05 4340.46 4196.43 4336.09 4196.43 4330.69 c
f
n
4157.33 4382.82 m
4157.33 4377.42 4152.95 4373.05 4147.55 4373.05 c
4142.16 4373.05 4137.78 4377.42 4137.78 4382.82 c
4137.78 4388.22 4142.16 4392.6 4147.55 4392.6 c
4152.95 4392.6 4157.33 4388.22 4157.33 4382.82 c
f
n
4118.23 4434.14 m
4118.23 4428.74 4113.85 4424.36 4108.45 4424.36 c
4103.05 4424.36 4098.68 4428.74 4098.68 4434.14 c
4098.68 4439.54 4103.05 4443.91 4108.45 4443.91 c
4113.85 4443.91 4118.23 4439.54 4118.23 4434.14 c
f
n
4079.95 4486.27 m
4079.95 4480.88 4075.57 4476.5 4070.17 4476.5 c
4064.77 4476.5 4060.39 4480.88 4060.39 4486.27 c
4060.39 4491.67 4064.77 4496.05 4070.17 4496.05 c
4075.57 4496.05 4079.95 4491.67 4079.95 4486.27 c
f
n
4040.84 4537.59 m
4040.84 4532.2 4036.46 4527.82 4031.07 4527.82 c
4025.67 4527.82 4021.29 4532.2 4021.29 4537.59 c
4021.29 4542.99 4025.67 4547.37 4031.07 4547.37 c
4036.46 4547.37 4040.84 4542.99 4040.84 4537.59 c
f
n
4674.59 3761.29 m
4674.59 3755.89 4670.22 3751.51 4664.82 3751.51 c
4659.42 3751.51 4655.05 3755.89 4655.05 3761.29 c
4655.05 3766.69 4659.42 3771.06 4664.82 3771.06 c
4670.22 3771.06 4674.59 3766.69 4674.59 3761.29 c
f
n
4628.98 3813.42 m
4628.98 3808.02 4624.6 3803.64 4619.2 3803.64 c
4613.8 3803.64 4609.43 3808.02 4609.43 3813.42 c
4609.43 3818.82 4613.8 3823.2 4619.2 3823.2 c
4624.6 3823.2 4628.98 3818.82 4628.98 3813.42 c
f
n
4584.18 3864.74 m
4584.18 3859.34 4579.8 3854.96 4574.4 3854.96 c
4569.0 3854.96 4564.62 3859.34 4564.62 3864.74 c
4564.62 3870.14 4569.0 3874.52 4574.4 3874.52 c
4579.8 3874.52 4584.18 3870.14 4584.18 3864.74 c
f
n
4538.56 3916.88 m
4538.56 3911.48 4534.18 3907.1 4528.79 3907.1 c
4523.39 3907.1 4519.01 3911.48 4519.01 3916.88 c
4519.01 3922.27 4523.39 3926.65 4528.79 3926.65 c
4534.18 3926.65 4538.56 3922.27 4538.56 3916.88 c
f
n
4493.76 3968.2 m
4493.76 3962.8 4489.38 3958.42 4483.98 3958.42 c
4478.58 3958.42 4474.21 3962.8 4474.21 3968.2 c
4474.21 3973.59 4478.58 3977.97 4483.98 3977.97 c
4489.38 3977.97 4493.76 3973.59 4493.76 3968.2 c
f
n
4448.14 4020.33 m
4448.14 4014.93 4443.76 4010.55 4438.36 4010.55 c
4432.96 4010.55 4428.59 4014.93 4428.59 4020.33 c
4428.59 4025.73 4432.96 4030.1 4438.36 4030.1 c
4443.76 4030.1 4448.14 4025.73 4448.14 4020.33 c
f
n
4403.34 4072.46 m
4403.34 4067.06 4398.96 4062.69 4393.56 4062.69 c
4388.16 4062.69 4383.79 4067.06 4383.79 4072.46 c
4383.79 4077.86 4388.16 4082.24 4393.56 4082.24 c
4398.96 4082.24 4403.34 4077.86 4403.34 4072.46 c
f
n
4357.72 4123.78 m
4357.72 4118.38 4353.34 4114.0 4347.95 4114.0 c
4342.55 4114.0 4338.17 4118.38 4338.17 4123.78 c
4338.17 4129.18 4342.55 4133.55 4347.95 4133.55 c
4353.34 4133.55 4357.72 4129.18 4357.72 4123.78 c
f
n
4312.92 4175.91 m
4312.92 4170.52 4308.54 4166.14 4303.14 4166.14 c
4297.74 4166.14 4293.37 4170.52 4293.37 4175.91 c
4293.37 4181.31 4297.74 4185.69 4303.14 4185.69 c
4308.54 4185.69 4312.92 4181.31 4312.92 4175.91 c
f
n
4267.3 4227.23 m
4267.3 4221.84 4262.92 4217.46 4257.52 4217.46 c
4252.12 4217.46 4247.75 4221.84 4247.75 4227.23 c
4247.75 4232.63 4252.12 4237.01 4257.52 4237.01 c
4262.92 4237.01 4267.3 4232.63 4267.3 4227.23 c
f
n
4221.68 4279.37 m
4221.68 4273.97 4217.3 4269.59 4211.91 4269.59 c
4206.51 4269.59 4202.13 4273.97 4202.13 4279.37 c
4202.13 4284.77 4206.51 4289.14 4211.91 4289.14 c
4217.3 4289.14 4221.68 4284.77 4221.68 4279.37 c
f
n
4176.88 4330.69 m
4176.88 4325.29 4172.5 4320.91 4167.11 4320.91 c
4161.71 4320.91 4157.33 4325.29 4157.33 4330.69 c
4157.33 4336.09 4161.71 4340.46 4167.11 4340.46 c
4172.5 4340.46 4176.88 4336.09 4176.88 4330.69 c
f
n
4131.26 4382.82 m
4131.26 4377.42 4126.89 4373.05 4121.49 4373.05 c
4116.09 4373.05 4111.71 4377.42 4111.71 4382.82 c
4111.71 4388.22 4116.09 4392.6 4121.49 4392.6 c
4126.89 4392.6 4131.26 4388.22 4131.26 4382.82 c
f
n
4086.46 4434.14 m
4086.46 4428.74 4082.08 4424.36 4076.68 4424.36 c
4071.29 4424.36 4066.91 4428.74 4066.91 4434.14 c
4066.91 4439.54 4071.29 4443.91 4076.68 4443.91 c
4082.08 4443.91 4086.46 4439.54 4086.46 4434.14 c
f
n
4040.84 4486.27 m
4040.84 4480.88 4036.46 4476.5 4031.07 4476.5 c
4025.67 4476.5 4021.29 4480.88 4021.29 4486.27 c
4021.29 4491.67 4025.67 4496.05 4031.07 4496.05 c
4036.46 4496.05 4040.84 4491.67 4040.84 4486.27 c
f
n
3996.04 4537.59 m
3996.04 4532.2 3991.66 4527.82 3986.27 4527.82 c
3980.87 4527.82 3976.49 4532.2 3976.49 4537.59 c
3976.49 4542.99 3980.87 4547.37 3986.27 4547.37 c
3991.66 4547.37 3996.04 4542.99 3996.04 4537.59 c
f
Q
q
n
0.0 0.0 m
W
n
q
951.313 0.0 0.0 -4.69205 2750.54 4059.77 cm
Q
Q
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
[/DeviceCMYK] cs 0.0 0.0 0.0 1.0 sc
%ADOBeginSubsetFont: UUPBAA+CMSY10 Initial
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
12 dict dup begin
/FontType 1 def
/FontName /UUPBAA+CMSY10 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/ItalicAngle 0 def
/WasEmbedded true def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
def
/FontBBox {-0 -960 943 750} def
end
systemdict begin
dup /Private
12 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-22 -0 683 705] def
/OtherBlues [-124 -119] def
/BlueScale 0.04379 def
/StdHW [40] def
/StdVW [85] def
/StemSnapH [40 55] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs [{ct_CffDict/F0Subr get exec} {ct_CffDict/F1Subr get exec}
{ct_CffDict/F2Subr get exec} {ct_CffDict/HSSubr get exec}] def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
1 dict dup begin
/.notdef <1C60D8A8C9C4A637> |-
end put
end
dup /FontName get exch definefont pop
end
end
-%ADOEndSubsetFont
-[ 0 /minus/periodcentered/multiply/asteriskmath 12 /circledot 15 /bullet
20 /lessequal/greaterequal 24 /similar/approxequal 28 /lessmuch 32 /space
/arrowright/quotedbl/numbersign/dollar/percent/ampersand
/quotesingle/parenleft/parenright/asterisk/plus/comma
/hyphen/period/slash/zero/one/element
/three/four/five/six/seven/eight
/nine/colon/semicolon/less/equal/greater
/question/at/A/B/C/D
/E/F/G/H/I/J
/K/L/M/N/O/P
/Q/R/S/T/U/V
/W/X/Y/Z/bracketleft/backslash
/bracketright/asciicircum/underscore/grave/a/b
/c/d/e/braceleft/braceright/angbracketleft
/angbracketright/bar/bardbl/l/m/backslash
/o/radical/q/r/s/t
/u/v/w/x/dagger/daggerdbl
/braceleft/bar/braceright/asciitilde/bullet/Euro
/bullet/quotesinglbase/florin/quotedblbase/ellipsis/dagger
/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE
/bullet/Zcaron/bullet/bullet/quoteleft/quoteright
/quotedblleft/quotedblright/bullet/endash/emdash/tilde
/trademark/scaron/guilsinglright/oe/bullet/zcaron
/Ydieresis/space/exclamdown/cent/sterling/currency
/yen/brokenbar/section/dieresis/copyright/ordfeminine
/guillemotleft/logicalnot/hyphen/registered/macron/degree
/plusminus/twosuperior/threesuperior/acute/mu/paragraph
/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright/onequarter
/onehalf/threequarters/questiondown/Agrave/Aacute/Acircumflex
/Atilde/Adieresis/Aring/AE/Ccedilla/Egrave
/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex
/Otilde/Odieresis/multiply/Oslash/Ugrave/Uacute
/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave
/aacute/acircumflex/atilde/adieresis/aring/ae
/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
/iacute/icircumflex/idieresis/eth/ntilde/ograve
/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn
/ydieresis
/N33 (UUPBAA+CMSY10) -1 TZ
377.062 364.327 m
%ADOBeginSubsetFont: UUPBAA+CMSY10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/UUPBAA+CMSY10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/minus <1C60D8A8C9B08A946182837629008DF7702985522C1BEB432204C2EF
9CAB07AB654895DD8804EF7ED97DE3E2616CBB2FB21BE3D9> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/UUPBAA+CMSY10 findfont /Encoding get
dup 0 /minus put
pop
end
-%ADOEndSubsetFont
-/N33 10.6637 Tf
(\000) show
385.391 364.327 m
%ADOBeginSubsetFont: QZEBAA+CMR10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/QZEBAA+CMR10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/zero <1C60D8A8C9B7A73D3B2D32309B1F5D5A32FC3614834F8BC61B6EB92C1
2484BD76628737DA40CF9DA1C97CCDAFB1D1B732C642F74A7C41B7D3AC6DAF8D
1E760692B6EBD2417EF1893A4AA0B1CF049D4C54D830CEC073A9153D451FAD42
892B0930AEE4FE18588336BFDAD60D8A4F4CFFED76F103FB9BBD8A33EFBA3F18
232B88D88FE54E17260FA3E2CC29DEC0CB72B88DC816FF5> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/QZEBAA+CMR10 findfont /Encoding get
dup 48 /zero put
pop
end
-%ADOEndSubsetFont
-/N41 10.6637 Tf
(0) show
%ADOBeginSubsetFont: ARHAAA+CMMI10 Initial
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
12 dict dup begin
/FontType 1 def
/FontName /ARHAAA+CMMI10 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/ItalicAngle 0 def
/WasEmbedded true def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
def
/FontBBox {-13 -250 1044 750} def
end
systemdict begin
dup /Private
12 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-22 -0 683 705 431 442 453 466] def
/OtherBlues [-205 -194] def
/BlueScale 0.04379 def
/StdHW [31] def
/StdVW [72] def
/StemSnapH [25 31] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs [{ct_CffDict/F0Subr get exec} {ct_CffDict/F1Subr get exec}
{ct_CffDict/F2Subr get exec} {ct_CffDict/HSSubr get exec}] def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
1 dict dup begin
/.notdef <1C60D8A8C9B08A959E2F69652E8B8F> |-
end put
end
dup /FontName get exch definefont pop
end
end
-%ADOEndSubsetFont
-[ 1 /dotlessi/caron 11 /alpha/beta 14 /delta 21 /lambda
/mu 24 /xi/pi 27 /sigma 30 /phi/chi
/psi/exclam/epsilon/theta1/dollar/percent
/ampersand/phi1/parenleft/parenright/asterisk/plus
/comma/hyphen/period/slash/zero/one
/two/three/four/five/six/seven
/eight/nine/period/comma/less/slash
/greater/question/at/A/B/C
/D/E/F/G/H/I
/J/K/L/M/N/O
/P/Q/R/S/T/U
/V/W/X/Y/Z/bracketleft
/backslash/bracketright/asciicircum/underscore/grave/a
/b/c/d/e/f/g
/h/i/j/k/l/m
/n/o/p/q/r/s
/t/u/v/w/x/y
/z/braceleft/bar/braceright/asciitilde/bullet
/Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis
/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft
/OE/bullet/Zcaron/bullet/bullet/quoteleft
/quoteright/quotedblleft/quotedblright/bullet/endash/emdash
/tilde/trademark/scaron/guilsinglright/oe/bullet
/zcaron/Ydieresis/space/exclamdown/cent/sterling
/currency/yen/brokenbar/section/dieresis/copyright
/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron
/degree/plusminus/twosuperior/threesuperior/acute/mu
/paragraph/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright
/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute
/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute
/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute
/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave
/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls
/agrave/aacute/acircumflex/atilde/adieresis/aring
/ae/ccedilla/egrave/eacute/ecircumflex/edieresis
/igrave/iacute/icircumflex/idieresis/eth/ntilde
/ograve/oacute/ocircumflex/otilde/odieresis/divide
/oslash/ugrave/uacute/ucircumflex/udieresis/yacute
/thorn/ydieresis
/N21 (ARHAAA+CMMI10) -1 TZ
390.669 364.327 m
%ADOBeginSubsetFont: ARHAAA+CMMI10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/ARHAAA+CMMI10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/period <1C60D8A8C9B08A9570810981675968F2C907C696DFE9BE69433F613
9DF6C45B8165ACC43B6E0B309859F778ABCF0> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/ARHAAA+CMMI10 findfont /Encoding get
dup 58 /period put
pop
end
-%ADOEndSubsetFont
-/N21 10.6637 Tf
(:) show
393.602 364.327 m
/N41 10.6637 Tf
(500)
[33.9455 37.2557 5.27853 ] pdfxs
470.082 364.327 m
/N21 10.6637 Tf
(:) show
473.014 364.327 m
/N41 10.6637 Tf
(5) show
362.138 372.965 m
/N33 10.6637 Tf
(\000) show
370.467 372.965 m
/N41 10.6637 Tf
(0) show
375.745 372.965 m
/N21 10.6637 Tf
(:) show
378.678 372.965 m
/N41 10.6637 Tf
(5) show
380.417 413.959 m
(0) show
371.933 455.34 m
(0) show
377.211 455.34 m
/N21 10.6637 Tf
(:) show
380.144 455.34 m
/N41 10.6637 Tf
(5) show
Q
Q
Q
/ARHAAA+CMMI10 /Font _pdfUndefineResource
/N21 /Font _pdfUndefineResource
/UUPBAA+CMSY10 /Font _pdfUndefineResource
/N33 /Font _pdfUndefineResource
/QZEBAA+CMR10 /Font _pdfUndefineResource
/N41 /Font _pdfUndefineResource
[/EMC PDFMark5
PDFVars/TermAll get exec end end
%%PageTrailer
%%Trailer
%%EOF
\ No newline at end of file
diff --git a/doc/tutorial/images/linogram_grid.pdf b/doc/tutorial/images/linogram_grid.pdf
deleted file mode 100644
index fa4ba3e..0000000
Binary files a/doc/tutorial/images/linogram_grid.pdf and /dev/null differ
diff --git a/doc/tutorial/images/modified_polar_grid.eps b/doc/tutorial/images/modified_polar_grid.eps
deleted file mode 100644
index a28ea5f..0000000
--- a/doc/tutorial/images/modified_polar_grid.eps
+++ /dev/null
@@ -1,87 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
%%Title: (paper.dvi)
%%Version: 1 3
%%Creator: Adobe Acrobat 7.0
%%CreationDate: 20/10/06 15:23
%%DocumentData: Clean7Bit
%%LanguageLevel: 2
%ADO_ContainsXMP: MainFirst
%%BoundingBox: 237 364 352 463
%%HiResBoundingBox: 237.407 364.169 352.491 462.502
%%Pages: 0
%%DocumentProcessColors: Cyan Magenta Yellow Black
%%DocumentSuppliedResources:
%%+ procset (Adobe Acrobat - PDF operators) 1.2 0
%%+ procset (Adobe Acrobat - type operators) 1.2 0
%%EndComments
%%BeginProlog
%%EndProlog
%%BeginSetup
%ADOPrintSettings: L2 W0 VM op crd os scsa T h ef bg ucr sf ef r b fa pr seps ttf hb EF t2 irt Printer/PostScript Color Management 0
-
%%BeginResource: procset l2check 6.0 1
%%Copyright: Copyright 1993,2001 Adobe Systems Incorporated. All Rights Reserved.
systemdict /languagelevel known
{ systemdict /languagelevel get 1 eq }
{ true }
ifelse
{
initgraphics /Helvetica findfont 18 scalefont setfont
72 600 moveto (Error: This application does not support) dup show
72 580 moveto (printing to a PostScript Language Level 1 printer.) dup show
exch = =
/Times-Roman findfont 16 scalefont setfont
72 500 moveto (As a workaround, try selecting Print As Image from) show
72 480 moveto (the Advanced Print dialog.) show
showpage
quit
}
if
%%EndResource
%%BeginResource: file Pscript_CFF PSVER
userdict /ct_CffDict 6 dict put
ct_CffDict begin
/F0Subr
{
systemdict /internaldict known
{
1183615869 systemdict /internaldict get exec
/FlxProc known {save true} {false} ifelse
}
{
userdict /internaldict known not
{
userdict /internaldict
{
count 0 eq
{/internaldict errordict /invalidaccess get exec} if
dup type /integertype ne
{/internaldict errordict /invalidaccess get exec} if
dup 1183615869 eq
{pop 0}
{/internaldict errordict /invalidaccess get exec}
ifelse
}
dup 14 get 1 25 dict put
bind executeonly put
} if
1183615869 userdict /internaldict get exec
/FlxProc known {save true} {false} ifelse
} ifelse
[
systemdict /internaldict known not
{ 100 dict /begin cvx /mtx matrix /def cvx } if
systemdict /currentpacking known {currentpacking true setpacking} if
{
systemdict /internaldict known {
1183615869 systemdict /internaldict get exec
dup /$FlxDict known not {
dup dup length exch maxlength eq
{ pop userdict dup /$FlxDict known not
{ 100 dict begin /mtx matrix def
dup /$FlxDict currentdict put end } if }
{ 100 dict begin /mtx matrix def
dup /$FlxDict currentdict put end }
ifelse
} if /$FlxDict get begin } if
grestore
/exdef {exch def} def
/dmin exch abs 100 div def
/epX exdef /epY exdef
/c4y2 exdef /c4x2 exdef /c4y1 exdef /c4x1 exdef /c4y0 exdef /c4x0 exdef
/c3y2 exdef /c3x2 exdef /c3y1 exdef /c3x1 exdef /c3y0 exdef /c3x0 exdef
/c1y2 exdef /c1x2 exdef /c2x2 c4x2 def /c2y2 c4y2 def
/yflag c1y2 c3y2 sub abs c1x2 c3x2 sub abs gt def
/PickCoords {
{c1x0 c1y0 c1x1 c1y1 c1x2 c1y2 c2x0 c2y0 c2x1 c2y1 c2x2 c2y2}
{c3x0 c3y0 c3x1 c3y1 c3x2 c3y2 c4x0 c4y0 c4x1 c4y1 c4x2 c4y2}
ifelse
/y5 exdef /x5 exdef /y4 exdef /x4 exdef /y3 exdef /x3 exdef
/y2 exdef /x2 exdef /y1 exdef /x1 exdef /y0 exdef /x0 exdef
} def
mtx currentmatrix pop
mtx 0 get abs .00001 lt mtx 3 get abs .00001 lt or
{/flipXY -1 def}
{mtx 1 get abs .00001 lt mtx 2 get abs .00001 lt or
{/flipXY 1 def}
{/flipXY 0 def}
ifelse }
ifelse
/erosion 1 def
systemdict /internaldict known {
1183615869 systemdict /internaldict get exec dup
/erosion known
{/erosion get /erosion exch def}
{pop}
ifelse
} if
yflag
{
flipXY 0 eq c3y2 c4y2 eq or
{false PickCoords}
{
/shrink c3y2 c4y2 eq
{0}{c1y2 c4y2 sub c3y2 c4y2 sub div abs} ifelse def
/yshrink {c4y2 sub shrink mul c4y2 add} def
/c1y0 c3y0 yshrink def /c1y1 c3y1 yshrink def
/c2y0 c4y0 yshrink def /c2y1 c4y1 yshrink def
/c1x0 c3x0 def /c1x1 c3x1 def /c2x0 c4x0 def /c2x1 c4x1 def
/dY 0 c3y2 c1y2 sub round
dtransform flipXY 1 eq {exch} if pop abs def
dY dmin lt PickCoords
y2 c1y2 sub abs 0.001 gt {
c1x2 c1y2 transform flipXY 1 eq {exch} if
/cx exch def /cy exch def
/dY 0 y2 c1y2 sub round dtransform flipXY 1 eq {exch}
if pop def
dY round dup 0 ne
{/dY exdef }
{pop dY 0 lt {-1}{1} ifelse /dY exdef}
ifelse
/erode PaintType 2 ne erosion 0.5 ge and def
erode {/cy cy 0.5 sub def} if
/ey cy dY add def
/ey ey ceiling ey sub ey floor add def
erode {/ey ey 0.5 add def} if
ey cx flipXY 1 eq {exch} if itransform exch pop
y2 sub /eShift exch def
/y1 y1 eShift add def /y2 y2 eShift add def /y3 y3
eShift add def
} if
} ifelse
}
{
flipXY 0 eq c3x2 c4x2 eq or
{false PickCoords }
{ /shrink c3x2 c4x2 eq
{0}{c1x2 c4x2 sub c3x2 c4x2 sub div abs} ifelse def
/xshrink {c4x2 sub shrink mul c4x2 add} def
/c1x0 c3x0 xshrink def /c1x1 c3x1 xshrink def
/c2x0 c4x0 xshrink def /c2x1 c4x1 xshrink def
/c1y0 c3y0 def /c1y1 c3y1 def /c2y0 c4y0 def /c2y1 c4y1 def
/dX c3x2 c1x2 sub round 0 dtransform
flipXY -1 eq {exch} if pop abs def
dX dmin lt PickCoords
x2 c1x2 sub abs 0.001 gt {
c1x2 c1y2 transform flipXY -1 eq {exch} if
/cy exch def /cx exch def
/dX x2 c1x2 sub round 0 dtransform flipXY -1 eq {exch} if pop def
dX round dup 0 ne
{/dX exdef}
{pop dX 0 lt {-1}{1} ifelse /dX exdef}
ifelse
/erode PaintType 2 ne erosion .5 ge and def
erode {/cx cx .5 sub def} if
/ex cx dX add def
/ex ex ceiling ex sub ex floor add def
erode {/ex ex .5 add def} if
ex cy flipXY -1 eq {exch} if itransform pop
x2 sub /eShift exch def
/x1 x1 eShift add def /x2 x2 eShift add def /x3 x3 eShift add def
} if
} ifelse
} ifelse
x2 x5 eq y2 y5 eq or
{x5 y5 lineto }
{x0 y0 x1 y1 x2 y2 curveto
x3 y3 x4 y4 x5 y5 curveto}
ifelse
epY epX
}
systemdict /currentpacking known {exch setpacking} if
/exec cvx /end cvx
] cvx
executeonly
exch
{pop true exch restore}
{
systemdict /internaldict known not
{1183615869 userdict /internaldict get exec
exch /FlxProc exch put true}
{1183615869 systemdict /internaldict get exec
dup length exch maxlength eq
{false}
{1183615869 systemdict /internaldict get exec
exch /FlxProc exch put true}
ifelse}
ifelse
} ifelse
{
systemdict /internaldict known
{1183615869 systemdict /internaldict get exec /FlxProc get exec}
{1183615869 userdict /internaldict get exec /FlxProc get exec}
ifelse
} if
} executeonly def
/F1Subr
{gsave currentpoint newpath moveto} bind def
/F2Subr
{currentpoint grestore gsave currentpoint newpath moveto} bind def
/HSSubr
{
systemdict /internaldict known not
{pop 3}
{1183615869 systemdict /internaldict get exec
dup /startlock known
{/startlock get exec}
{dup /strtlck known
{/strtlck get exec}
{pop 3}
ifelse}
ifelse}
ifelse
} bind def
end
%%EndResource
/currentpacking where{pop currentpacking true setpacking}if
%%BeginResource: procset pdfvars 6.0 1
%%Copyright: Copyright 1987-2002 Adobe Systems Incorporated. All Rights Reserved.
%%Title: definition of dictionary of variables used by PDF & PDFText procsets
userdict /PDF 162 dict put
userdict /PDFVars 89 dict dup begin put
/docSetupDone false def
/InitAll 0 def
/TermAll 0 def
/DocInitAll 0 def
/DocTermAll 0 def
/_pdfEncodings 2 array def
/_pdf_str1 1 string def
/_pdf_i 0 def
/_pdf_na 0 def
/_pdf_showproc 0 def
/_italMtx [1 0 .212557 1 0 0] def
/_italMtx_WMode1 [1 -.212557 0 1 0 0] def
/_italMtxType0 [1 0 .1062785 1 0 0] def
/_italMtx_WMode1Type0 [1 -.1062785 0 1 0 0] def
/_basefont 0 def
/_basefonto 0 def
/_pdf_oldCIDInit null def
/_pdf_FontDirectory 30 dict def
/_categories 10 dict def
/_sa? true def
/_ColorSep5044? false def
/nulldict 0 dict def
/_processColors 0 def
/overprintstack null def
/_defaulttransfer currenttransfer def
/_defaultflatness currentflat def
/_defaulthalftone null def
/_defaultcolortransfer null def
/_defaultblackgeneration null def
/_defaultundercolorremoval null def
/_defaultcolortransfer null def
PDF begin
[/c/cs/cm/d/d0/f/h/i/j/J/l/m/M/n/q/Q/re/ri/S/sc/sh/Tf/w/W
/applyInterpFunc/applystitchFunc/domainClip/encodeInput
/initgs/int/limit/rangeClip
/defineRes/undefineRes/findRes/setSA/pl
/? /! /| /: /+ /GetGlyphDirectory
/pdf_flushFilters /pdf_readstring /pdf_dictOp /pdf_image /pdf_maskedImage
/pdf_shfill /pdf_sethalftone
] {null def} bind forall
end
end
%%EndResource
PDFVars begin PDF begin
%%BeginResource: procset pdfutil 6.0 1
%%Copyright: Copyright 1993-2001 Adobe Systems Incorporated. All Rights Reserved.
%%Title: Basic utilities used by other PDF procsets
/bd {bind def} bind def
/ld {load def} bd
/bld {
dup length dict begin
{ null def } forall
bind
end
def
} bd
/dd { PDFVars 3 1 roll put } bd
/xdd { exch dd } bd
/Level2?
systemdict /languagelevel known
{ systemdict /languagelevel get 2 ge } { false } ifelse
def
/Level1? Level2? not def
/Level3?
systemdict /languagelevel known
{systemdict /languagelevel get 3 eq } { false } ifelse
def
/getifknown {
2 copy known { get true } { pop pop false } ifelse
} bd
/here {
currentdict exch getifknown
} bd
/isdefined? { where { pop true } { false } ifelse } bd
%%EndResource
%%BeginResource: procset pdf 6.0 1
%%Copyright: Copyright 1998-2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: General operators for PDF, common to all Language Levels.
/cm { matrix astore concat } bd
/d /setdash ld
/f /fill ld
/h /closepath ld
/i {dup 0 eq {pop _defaultflatness} if setflat} bd
/j /setlinejoin ld
/J /setlinecap ld
/M /setmiterlimit ld
/n /newpath ld
/S /stroke ld
/w /setlinewidth ld
/W /clip ld
/sg /setgray ld
/initgs {
0 setgray
[] 0 d
0 j
0 J
10 M
1 w
false setSA
/_defaulttransfer load settransfer
0 i
/RelativeColorimetric ri
newpath
} bd
/int {
dup 2 index sub 3 index 5 index sub div 6 -2 roll sub mul
exch pop add exch pop
} bd
/limit {
dup 2 index le { exch } if pop
dup 2 index ge { exch } if pop
} bd
/domainClip {
Domain aload pop 3 2 roll
limit
} [/Domain] bld
/applyInterpFunc {
0 1 DimOut 1 sub
{
dup C0 exch get exch
dup C1 exch get exch
3 1 roll
1 index sub
3 index
N exp mul add
exch
currentdict /Range_lo known
{
dup Range_lo exch get exch
Range_hi exch get
3 2 roll limit
}
{
pop
}
ifelse
exch
} for
pop
} [/DimOut /C0 /C1 /N /Range_lo /Range_hi] bld
/encodeInput {
NumParts 1 sub
0 1 2 index
{
dup Bounds exch get
2 index gt
{ exit }
{ dup
3 index eq
{ exit }
{ pop } ifelse
} ifelse
} for
3 2 roll pop
dup Bounds exch get exch
dup 1 add Bounds exch get exch
2 mul
dup Encode exch get exch
1 add Encode exch get
int
} [/NumParts /Bounds /Encode] bld
/rangeClip {
exch dup Range_lo exch get
exch Range_hi exch get
3 2 roll
limit
} [/Range_lo /Range_hi] bld
/applyStitchFunc {
Functions exch get exec
currentdict /Range_lo known {
0 1 DimOut 1 sub {
DimOut 1 add -1 roll
rangeClip
} for
} if
} [/Functions /Range_lo /DimOut] bld
/pdf_flushfilters
{
aload length
{ dup status
1 index currentfile ne and
{ dup flushfile closefile }
{ pop }
ifelse
} repeat
} bd
/pdf_readstring
{
1 index dup length 1 sub get
exch readstring pop
exch pdf_flushfilters
} bind def
/pdf_dictOp
{
3 2 roll
10 dict copy
begin
_Filters dup length 1 sub get def
currentdict exch exec
_Filters pdf_flushfilters
end
} [/_Filters] bld
/pdf_imagemask {{imagemask} /DataSource pdf_dictOp} bd
/pdf_shfill {{sh} /DataSource pdf_dictOp} bd
/pdf_sethalftone {{sethalftone} /Thresholds pdf_dictOp} bd
/masks [ 2#10000000
2#11000000
2#11100000
2#11110000
2#11111000
2#11111100
2#11111110
2#11111111 ] def
/addNBits
{
/numBits exch def
/byte exch def
OutBitOffset numBits add 8 gt
{
byte OutBitOffset 8 sub bitshift
OutBuffer OutByteIndex get or
OutBuffer OutByteIndex 3 -1 roll put
/OutByteIndex OutByteIndex 1 add def
/bitsDoneSoFar OutBitOffset def
/OutBitOffset numBits 8 OutBitOffset sub sub def
OutBitOffset 0 gt
{
byte bitsDoneSoFar bitshift
masks numBits bitsDoneSoFar sub get and
OutBuffer OutByteIndex 3 -1 roll put
} if
}
{
byte masks numBits 1 sub get and
OutBitOffset neg bitshift
OutBuffer OutByteIndex get or
OutBuffer OutByteIndex 3 -1 roll put
/OutBitOffset OutBitOffset numBits add def
OutBitOffset 8 eq
{
/OutBitOffset 0 def
/OutByteIndex OutByteIndex 1 add def
} if
} ifelse
} bind def
/DevNNFilter
{
/InBuffer Width NumComps mul BitsPerComponent mul 7 add 8 idiv string def
AllSource InBuffer readstring pop pop
/outlen Width NewNumComps mul BitsPerComponent mul 7 add 8 idiv def
/OutBuffer outlen string def
0 1 outlen 1 sub { OutBuffer exch 0 put } for
/InByteIndex 0 def
/InBitOffset 0 def
/OutByteIndex 0 def
/OutBitOffset 0 def
/KeepArray NumComps array def
0 1 NumComps 1 sub { KeepArray exch true put } for
DevNNones { KeepArray exch false put } forall
Width {
KeepArray
{
{
/bitsLeft BitsPerComponent def
{
bitsLeft 0 le { exit } if
/bitsToDo 8 InBitOffset sub dup bitsLeft gt { pop bitsLeft } if def
InBuffer InByteIndex get
InBitOffset bitshift
bitsToDo addNBits
/bitsLeft bitsLeft bitsToDo sub def
InBitOffset bitsToDo add
dup 8 mod /InBitOffset exch def
8 idiv InByteIndex add /InByteIndex exch def
} loop
}
{
InBitOffset BitsPerComponent add
dup 8 mod /InBitOffset exch def
8 idiv InByteIndex add /InByteIndex exch def
}
ifelse
}
forall
} repeat
OutBuffer
} bd
/pdf_image
{
20 dict copy
begin
/UnusedNones where { /UnusedNones get}{false} ifelse
{
/NumComps Decode length 2 div cvi def
/OrigDecode Decode def
/NumNones DevNNones length def
/NewNumComps NumComps NumNones sub def
/Decode NewNumComps 2 mul cvi array def
/devNNindx 0 def
/decIndx 0 def
/cmpIndx 0 def
NumComps {
cmpIndx DevNNones devNNindx get eq
{
/devNNindx devNNindx 1 add dup NumNones eq {pop 0} if def
}
{
Decode decIndx OrigDecode cmpIndx 2 mul get put
Decode decIndx 1 add OrigDecode cmpIndx 2 mul 1 add get put
/decIndx decIndx 2 add def
} ifelse
/cmpIndx cmpIndx 1 add def
} repeat
_Filters dup length 1 sub get /AllSource exch def
/DataSource { DevNNFilter } def
}
{ _Filters dup length 1 sub get /DataSource exch def }
ifelse
currentdict image
_Filters pdf_flushfilters
end
} bd
/pdf_maskedImage
{
10 dict copy begin
/miDict currentdict def
/DataDict DataDict 10 dict copy def
DataDict begin
/DataSource
_Filters dup length 1 sub get
def
miDict image
_Filters pdf_flushfilters
end
miDict /InterleaveType get 3 eq
{ MaskDict /DataSource get dup type /filetype eq { closefile } { pop } ifelse }
if
end
} [/miDict /DataDict /_Filters] bld
/RadialShade {
40 dict begin
/background exch def
/ext1 exch def
/ext0 exch def
/BBox exch def
/r2 exch def
/c2y exch def
/c2x exch def
/r1 exch def
/c1y exch def
/c1x exch def
/rampdict exch def
gsave
BBox length 0 gt {
newpath
BBox 0 get BBox 1 get moveto
BBox 2 get BBox 0 get sub 0 rlineto
0 BBox 3 get BBox 1 get sub rlineto
BBox 2 get BBox 0 get sub neg 0 rlineto
closepath
clip
newpath
} if
c1x c2x eq
{
c1y c2y lt {/theta 90 def}{/theta 270 def} ifelse
}
{
/slope c2y c1y sub c2x c1x sub div def
/theta slope 1 atan def
c2x c1x lt c2y c1y ge and { /theta theta 180 sub def} if
c2x c1x lt c2y c1y lt and { /theta theta 180 add def} if
}
ifelse
gsave
clippath
c1x c1y translate
theta rotate
-90 rotate
{ pathbbox } stopped
{ 0 0 0 0 } if
/yMax exch def
/xMax exch def
/yMin exch def
/xMin exch def
grestore
xMax xMin eq yMax yMin eq or
{
grestore
end
}
{
/max { 2 copy gt { pop } {exch pop} ifelse } bind def
/min { 2 copy lt { pop } {exch pop} ifelse } bind def
rampdict begin
40 dict begin
background length 0 gt { background sssetbackground gsave clippath fill grestore } if
gsave
c1x c1y translate
theta rotate
-90 rotate
/c2y c1x c2x sub dup mul c1y c2y sub dup mul add sqrt def
/c1y 0 def
/c1x 0 def
/c2x 0 def
ext0 {
0 getrampcolor
c2y r2 add r1 sub 0.0001 lt
{
c1x c1y r1 360 0 arcn
pathbbox
/aymax exch def
/axmax exch def
/aymin exch def
/axmin exch def
/bxMin xMin axmin min def
/byMin yMin aymin min def
/bxMax xMax axmax max def
/byMax yMax aymax max def
bxMin byMin moveto
bxMax byMin lineto
bxMax byMax lineto
bxMin byMax lineto
bxMin byMin lineto
eofill
}
{
c2y r1 add r2 le
{
c1x c1y r1 0 360 arc
fill
}
{
c2x c2y r2 0 360 arc fill
r1 r2 eq
{
/p1x r1 neg def
/p1y c1y def
/p2x r1 def
/p2y c1y def
p1x p1y moveto p2x p2y lineto p2x yMin lineto p1x yMin lineto
fill
}
{
/AA r2 r1 sub c2y div def
AA -1 eq
{ /theta 89.99 def}
{ /theta AA 1 AA dup mul sub sqrt div 1 atan def}
ifelse
/SS1 90 theta add dup sin exch cos div def
/p1x r1 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
/p1y p1x SS1 div neg def
/SS2 90 theta sub dup sin exch cos div def
/p2x r1 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
/p2y p2x SS2 div neg def
r1 r2 gt
{
/L1maxX p1x yMin p1y sub SS1 div add def
/L2maxX p2x yMin p2y sub SS2 div add def
}
{
/L1maxX 0 def
/L2maxX 0 def
}ifelse
p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
L1maxX L1maxX p1x sub SS1 mul p1y add lineto
fill
}
ifelse
}
ifelse
} ifelse
} if
c1x c2x sub dup mul
c1y c2y sub dup mul
add 0.5 exp
0 dtransform
dup mul exch dup mul add 0.5 exp 72 div
0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
1 index 1 index lt { exch } if pop
/hires exch def
hires mul
/numpix exch def
/numsteps NumSamples def
/rampIndxInc 1 def
/subsampling false def
numpix 0 ne
{
NumSamples numpix div 0.5 gt
{
/numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
/rampIndxInc NumSamples 1 sub numsteps div def
/subsampling true def
} if
} if
/xInc c2x c1x sub numsteps div def
/yInc c2y c1y sub numsteps div def
/rInc r2 r1 sub numsteps div def
/cx c1x def
/cy c1y def
/radius r1 def
newpath
xInc 0 eq yInc 0 eq rInc 0 eq and and
{
0 getrampcolor
cx cy radius 0 360 arc
stroke
NumSamples 1 sub getrampcolor
cx cy radius 72 hires div add 0 360 arc
0 setlinewidth
stroke
}
{
0
numsteps
{
dup
subsampling { round } if
getrampcolor
cx cy radius 0 360 arc
/cx cx xInc add def
/cy cy yInc add def
/radius radius rInc add def
cx cy radius 360 0 arcn
eofill
rampIndxInc add
}
repeat
pop
} ifelse
ext1 {
c2y r2 add r1 lt
{
c2x c2y r2 0 360 arc
fill
}
{
c2y r1 add r2 sub 0.0001 le
{
c2x c2y r2 360 0 arcn
pathbbox
/aymax exch def
/axmax exch def
/aymin exch def
/axmin exch def
/bxMin xMin axmin min def
/byMin yMin aymin min def
/bxMax xMax axmax max def
/byMax yMax aymax max def
bxMin byMin moveto
bxMax byMin lineto
bxMax byMax lineto
bxMin byMax lineto
bxMin byMin lineto
eofill
}
{
c2x c2y r2 0 360 arc fill
r1 r2 eq
{
/p1x r2 neg def
/p1y c2y def
/p2x r2 def
/p2y c2y def
p1x p1y moveto p2x p2y lineto p2x yMax lineto p1x yMax lineto
fill
}
{
/AA r2 r1 sub c2y div def
AA -1 eq
{ /theta 89.99 def}
{ /theta AA 1 AA dup mul sub sqrt div 1 atan def}
ifelse
/SS1 90 theta add dup sin exch cos div def
/p1x r2 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
/p1y c2y p1x SS1 div sub def
/SS2 90 theta sub dup sin exch cos div def
/p2x r2 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
/p2y c2y p2x SS2 div sub def
r1 r2 lt
{
/L1maxX p1x yMax p1y sub SS1 div add def
/L2maxX p2x yMax p2y sub SS2 div add def
}
{
/L1maxX 0 def
/L2maxX 0 def
}ifelse
p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
L1maxX L1maxX p1x sub SS1 mul p1y add lineto
fill
}
ifelse
}
ifelse
} ifelse
} if
grestore
grestore
end
end
end
} ifelse
} bd
/GenStrips {
40 dict begin
/background exch def
/ext1 exch def
/ext0 exch def
/BBox exch def
/y2 exch def
/x2 exch def
/y1 exch def
/x1 exch def
/rampdict exch def
gsave
BBox length 0 gt {
newpath
BBox 0 get BBox 1 get moveto
BBox 2 get BBox 0 get sub 0 rlineto
0 BBox 3 get BBox 1 get sub rlineto
BBox 2 get BBox 0 get sub neg 0 rlineto
closepath
clip
newpath
} if
x1 x2 eq
{
y1 y2 lt {/theta 90 def}{/theta 270 def} ifelse
}
{
/slope y2 y1 sub x2 x1 sub div def
/theta slope 1 atan def
x2 x1 lt y2 y1 ge and { /theta theta 180 sub def} if
x2 x1 lt y2 y1 lt and { /theta theta 180 add def} if
}
ifelse
gsave
clippath
x1 y1 translate
theta rotate
{ pathbbox } stopped
{ 0 0 0 0 } if
/yMax exch def
/xMax exch def
/yMin exch def
/xMin exch def
grestore
xMax xMin eq yMax yMin eq or
{
grestore
end
}
{
rampdict begin
20 dict begin
background length 0 gt { background sssetbackground gsave clippath fill grestore } if
gsave
x1 y1 translate
theta rotate
/xStart 0 def
/xEnd x2 x1 sub dup mul y2 y1 sub dup mul add 0.5 exp def
/ySpan yMax yMin sub def
/numsteps NumSamples def
/rampIndxInc 1 def
/subsampling false def
xStart 0 transform
xEnd 0 transform
3 -1 roll
sub dup mul
3 1 roll
sub dup mul
add 0.5 exp 72 div
0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
1 index 1 index lt { exch } if pop
mul
/numpix exch def
numpix 0 ne
{
NumSamples numpix div 0.5 gt
{
/numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
/rampIndxInc NumSamples 1 sub numsteps div def
/subsampling true def
} if
} if
ext0 {
0 getrampcolor
xMin xStart lt
{ xMin yMin xMin neg ySpan rectfill } if
} if
/xInc xEnd xStart sub numsteps div def
/x xStart def
0
numsteps
{
dup
subsampling { round } if
getrampcolor
x yMin xInc ySpan rectfill
/x x xInc add def
rampIndxInc add
}
repeat
pop
ext1 {
xMax xEnd gt
{ xEnd yMin xMax xEnd sub ySpan rectfill } if
} if
grestore
grestore
end
end
end
} ifelse
} bd
/currentdistillerparams where { pop currentdistillerparams /CoreDistVersion get 5000 lt}{true}ifelse
{
/PDFMark5 {cleartomark} bd
}
{
/PDFMark5 {pdfmark} bd
}ifelse
/ReadByPDFMark5
{
2 dict begin
/makerString exch def string /tmpString exch def
{
currentfile tmpString readline pop
makerString anchorsearch
{
pop pop cleartomark exit
}
{
3 copy /PUT PDFMark5 pop 2 copy (\n) /PUT PDFMark5
} ifelse
}loop
end
}bd
%%EndResource
%%BeginResource: procset pdflev2 6.0 1
%%Copyright: Copyright 1987-2001,2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: PDF operators, with code specific for Level 2
/docinitialize {
PDF begin
/_defaulthalftone currenthalftone dd
/_defaultblackgeneration currentblackgeneration dd
/_defaultundercolorremoval currentundercolorremoval dd
/_defaultcolortransfer [currentcolortransfer] dd
/_defaulttransfer currenttransfer dd
end
PDFVars /docSetupDone true put
} bd
/initialize {
PDFVars /docSetupDone get {
_defaulthalftone sethalftone
/_defaultblackgeneration load setblackgeneration
/_defaultundercolorremoval load setundercolorremoval
_defaultcolortransfer aload pop setcolortransfer
} if
false setoverprint
} bd
/terminate { } bd
/c /curveto ld
/cs /setcolorspace ld
/l /lineto ld
/m /moveto ld
/q /gsave ld
/Q /grestore ld
/sc /setcolor ld
/setSA/setstrokeadjust ld
/re {
4 2 roll m
1 index 0 rlineto
0 exch rlineto
neg 0 rlineto
h
} bd
/concattransferfuncs {
[ 3 1 roll /exec load exch /exec load ] cvx
} bd
/concatandsettransfer {
/_defaulttransfer load concattransferfuncs settransfer
} bd
/concatandsetcolortransfer {
_defaultcolortransfer aload pop
8 -1 roll 5 -1 roll concattransferfuncs 7 1 roll
6 -1 roll 4 -1 roll concattransferfuncs 5 1 roll
4 -1 roll 3 -1 roll concattransferfuncs 3 1 roll
concattransferfuncs
setcolortransfer
} bd
/defineRes/defineresource ld
/undefineRes/undefineresource ld
/findRes/findresource ld
currentglobal
true systemdict /setglobal get exec
[/Function /ExtGState /Form /Shading /FunctionDictionary /MadePattern /PatternPrototype /DataSource /Image]
{ /Generic /Category findresource dup length dict copy /Category defineresource pop }
forall
systemdict /setglobal get exec
/ri
{
/findcolorrendering isdefined?
{
mark exch
findcolorrendering
counttomark 2 eq
{ type /booleantype eq
{ dup type /nametype eq
{ dup /ColorRendering resourcestatus
{ pop pop
dup /DefaultColorRendering ne
{
/ColorRendering findresource
setcolorrendering
} if
} if
} if
} if
} if
cleartomark
}
{ pop
} ifelse
} bd
/knownColorants? {
pop false
} bd
/getrampcolor {
cvi
/indx exch def
0 1 NumComp 1 sub {
dup
Samples exch get
dup type /stringtype eq { indx get } if
exch
Scaling exch get aload pop
3 1 roll
mul add
} for
setcolor
} bd
/sssetbackground { aload pop setcolor } bd
%%EndResource
%%BeginResource: procset pdftext 6.0 1
%%Copyright: Copyright 1987-2001,2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: Text operators for PDF
PDF /PDFText 78 dict dup begin put
/docinitialize
{
/resourcestatus where {
pop
/CIDParams /ProcSet resourcestatus {
pop pop
false /CIDParams /ProcSet findresource /SetBuildCompatible get exec
} if
} if
PDF begin
PDFText /_pdfDefineIdentity-H known
{ PDFText /_pdfDefineIdentity-H get exec}
if
end
} bd
/initialize {
PDFText begin
} bd
/terminate { end } bd
Level2?
{
/_safeput
{
3 -1 roll load 3 1 roll put
}
bd
}
{
/_safeput
{
2 index load dup dup length exch maxlength ge
{ dup length 5 add dict copy
3 index xdd
}
{ pop }
ifelse
3 -1 roll load 3 1 roll put
}
bd
}
ifelse
/pdf_has_composefont? systemdict /composefont known def
/CopyFont {
{
1 index /FID ne 2 index /UniqueID ne and
{ def } { pop pop } ifelse
} forall
} bd
/Type0CopyFont
{
exch
dup length dict
begin
CopyFont
[
exch
FDepVector
{
dup /FontType get 0 eq
{
1 index Type0CopyFont
/_pdfType0 exch definefont
}
{
/_pdfBaseFont exch
2 index exec
}
ifelse
exch
}
forall
pop
]
/FDepVector exch def
currentdict
end
} bd
Level2? {currentglobal true setglobal} if
/cHexEncoding
[/c00/c01/c02/c03/c04/c05/c06/c07/c08/c09/c0A/c0B/c0C/c0D/c0E/c0F/c10/c11/c12
/c13/c14/c15/c16/c17/c18/c19/c1A/c1B/c1C/c1D/c1E/c1F/c20/c21/c22/c23/c24/c25
/c26/c27/c28/c29/c2A/c2B/c2C/c2D/c2E/c2F/c30/c31/c32/c33/c34/c35/c36/c37/c38
/c39/c3A/c3B/c3C/c3D/c3E/c3F/c40/c41/c42/c43/c44/c45/c46/c47/c48/c49/c4A/c4B
/c4C/c4D/c4E/c4F/c50/c51/c52/c53/c54/c55/c56/c57/c58/c59/c5A/c5B/c5C/c5D/c5E
/c5F/c60/c61/c62/c63/c64/c65/c66/c67/c68/c69/c6A/c6B/c6C/c6D/c6E/c6F/c70/c71
/c72/c73/c74/c75/c76/c77/c78/c79/c7A/c7B/c7C/c7D/c7E/c7F/c80/c81/c82/c83/c84
/c85/c86/c87/c88/c89/c8A/c8B/c8C/c8D/c8E/c8F/c90/c91/c92/c93/c94/c95/c96/c97
/c98/c99/c9A/c9B/c9C/c9D/c9E/c9F/cA0/cA1/cA2/cA3/cA4/cA5/cA6/cA7/cA8/cA9/cAA
/cAB/cAC/cAD/cAE/cAF/cB0/cB1/cB2/cB3/cB4/cB5/cB6/cB7/cB8/cB9/cBA/cBB/cBC/cBD
/cBE/cBF/cC0/cC1/cC2/cC3/cC4/cC5/cC6/cC7/cC8/cC9/cCA/cCB/cCC/cCD/cCE/cCF/cD0
/cD1/cD2/cD3/cD4/cD5/cD6/cD7/cD8/cD9/cDA/cDB/cDC/cDD/cDE/cDF/cE0/cE1/cE2/cE3
/cE4/cE5/cE6/cE7/cE8/cE9/cEA/cEB/cEC/cED/cEE/cEF/cF0/cF1/cF2/cF3/cF4/cF5/cF6
/cF7/cF8/cF9/cFA/cFB/cFC/cFD/cFE/cFF] def
Level2? {setglobal} if
/modEnc {
/_enc xdd
/_icode 0 dd
counttomark 1 sub -1 0
{
index
dup type /nametype eq
{
_enc _icode 3 -1 roll put
_icode 1 add
}
if
/_icode xdd
} for
cleartomark
_enc
} bd
/trEnc {
/_enc xdd
255 -1 0 {
exch dup -1 eq
{ pop /.notdef }
{ Encoding exch get }
ifelse
_enc 3 1 roll put
} for
pop
_enc
} bd
/TE {
/_i xdd
StandardEncoding 256 array copy modEnc
_pdfEncodings exch _i exch put
} bd
Level2?
{
/pdfPatchCStrings
{
currentdict /CharStrings known currentdict /FontType known and
{
FontType 1 eq CharStrings type /dicttype eq and
{
CharStrings /mu known CharStrings /mu1 known not and CharStrings wcheck and
{
CharStrings /mu get
type /stringtype eq
{
currentglobal
CharStrings /mu1
CharStrings /mu get
dup gcheck setglobal
dup length string copy
put
setglobal
} if
} if
} if
} if
} bd
}
{ /pdfPatchCStrings {} bd }
ifelse
/TZ
{
/_usePDFEncoding xdd
findfont
dup length 6 add dict
begin
{
1 index /FID ne { def } { pop pop } ifelse
} forall
pdfPatchCStrings
/pdf_origFontName FontName def
/FontName exch def
currentdict /PaintType known
{ PaintType 2 eq {/PaintType 0 def} if }
if
_usePDFEncoding 0 ge
{
/Encoding _pdfEncodings _usePDFEncoding get def
pop
}
{
_usePDFEncoding -1 eq
{
counttomark 0 eq
{ pop }
{
Encoding 256 array copy
modEnc /Encoding exch def
}
ifelse
}
{
256 array
trEnc /Encoding exch def
}
ifelse
}
ifelse
pdf_EuroProcSet pdf_origFontName known
{
pdf_origFontName pdf_AddEuroGlyphProc
} if
Level2?
{
currentdict /pdf_origFontName undef
} if
FontName currentdict
end
definefont pop
}
bd
Level2?
{
/TZG
{
currentglobal true setglobal
2 index _pdfFontStatus
{
2 index findfont
false setglobal
3 index findfont
true setglobal
ne
{
2 index findfont dup rcheck
{
dup length dict begin
{
1 index /FID ne { def } { pop pop } ifelse
} forall
pdfPatchCStrings
currentdict end
}
if
3 index exch definefont pop
}
if
} if
setglobal
TZ
} bd
}
{
/TZG {TZ} bd
} ifelse
Level2?
{
currentglobal false setglobal
userdict /pdftext_data 5 dict put
pdftext_data
begin
/saveStacks
{
pdftext_data
begin
/vmmode currentglobal def
false setglobal
count array astore /os exch def
end
countdictstack array dictstack pdftext_data exch /ds exch put
cleardictstack pdftext_data /dscount countdictstack put
pdftext_data /vmmode get setglobal
} bind def
/restoreStacks
{
pdftext_data /vmmode currentglobal put false setglobal
clear cleardictstack
pdftext_data /ds get dup
pdftext_data /dscount get 1 2 index length 1 sub
{ get begin dup } for
pop pop
pdftext_data /os get aload pop
pdftext_data /vmmode get setglobal
} bind def
/testForClonePrinterBug
{
currentglobal true setglobal
/undefinedCategory /Generic /Category findresource
dup length dict copy /Category defineresource pop
setglobal
pdftext_data /saveStacks get exec
pdftext_data /vmmode currentglobal put false setglobal
/undefined /undefinedCategory { resourcestatus } stopped
pdftext_data exch /bugFound exch put
pdftext_data /vmmode get setglobal
pdftext_data /restoreStacks get exec
pdftext_data /bugFound get
} bind def
end
setglobal
/pdf_resourcestatus
pdftext_data /testForClonePrinterBug get exec
{
{
pdftext_data /saveStacks get exec
pdftext_data /os get dup dup length 1 sub
dup 1 sub dup 0 lt { pop 0 } if
exch 1 exch { get exch dup } for
pop pop
{ resourcestatus }
stopped
{
clear cleardictstack pdftext_data /restoreStacks get exec
{ pop pop } stopped pop false
}
{
count array astore pdftext_data exch /results exch put
pdftext_data /restoreStacks get exec pop pop
pdftext_data /results get aload pop
}
ifelse
}
}
{ { resourcestatus } }
ifelse
bd
}
if
Level2?
{
/_pdfUndefineResource
{
currentglobal 3 1 roll
_pdf_FontDirectory 2 index 2 copy known
{undef}
{pop pop}
ifelse
1 index (pdf) exch _pdfConcatNames 1 index
1 index 1 _pdfConcatNames 1 index
5 index 1 _pdfConcatNames 1 index
4
{
2 copy pdf_resourcestatus
{
pop 2 lt
{2 copy findresource gcheck setglobal undefineresource}
{pop pop}
ifelse
}
{ pop pop}
ifelse
} repeat
setglobal
} bd
}
{
/_pdfUndefineResource { pop pop} bd
}
ifelse
Level2?
{
/_pdfFontStatus
{
currentglobal exch
/Font pdf_resourcestatus
{pop pop true}
{false}
ifelse
exch setglobal
} bd
}
{
/_pdfFontStatusString 50 string def
_pdfFontStatusString 0 (fonts/) putinterval
/_pdfFontStatus
{
FontDirectory 1 index known
{ pop true }
{
_pdfFontStatusString 6 42 getinterval
cvs length 6 add
_pdfFontStatusString exch 0 exch getinterval
{ status } stopped
{pop false}
{
{ pop pop pop pop true}
{ false }
ifelse
}
ifelse
}
ifelse
} bd
}
ifelse
Level2?
{
/_pdfCIDFontStatus
{
/CIDFont /Category pdf_resourcestatus
{
pop pop
/CIDFont pdf_resourcestatus
{pop pop true}
{false}
ifelse
}
{ pop false }
ifelse
} bd
}
if
/_pdfString100 100 string def
/_pdfComposeFontName
{
dup length 1 eq
{
0 get
1 index
type /nametype eq
{
_pdfString100 cvs
length dup dup _pdfString100 exch (-) putinterval
_pdfString100 exch 1 add dup _pdfString100 length exch sub getinterval
2 index exch cvs length
add 1 add _pdfString100 exch 0 exch getinterval
exch pop
true
}
{
pop pop
false
}
ifelse
}
{
false
}
ifelse
dup {exch cvn exch} if
} bd
/_pdfConcatNames
{
exch
_pdfString100 cvs
length dup dup _pdfString100 exch (-) putinterval
_pdfString100 exch 1 add dup _pdfString100 length exch sub getinterval
3 -1 roll exch cvs length
add 1 add _pdfString100 exch 0 exch getinterval
cvn
} bind def
/_pdfTextTempString 50 string def
/_pdfRegOrderingArray [(Adobe-Japan1) (Adobe-CNS1) (Adobe-Korea1) (Adobe-GB1)] def
/_pdf_CheckCIDSystemInfo
{
1 index _pdfTextTempString cvs
(Identity) anchorsearch
{
pop pop pop pop true
}
{
false
_pdfRegOrderingArray
{
2 index exch
anchorsearch
{ pop pop pop true exit}
{ pop }
ifelse
}
forall
exch pop
exch /CIDFont findresource
/CIDSystemInfo get
3 -1 roll /CMap findresource
/CIDSystemInfo get
exch
3 -1 roll
{
2 copy
/Supplement get
exch
dup type /dicttype eq
{/Supplement get}
{pop 0 }
ifelse
ge
}
{ true }
ifelse
{
dup /Registry get
2 index /Registry get eq
{
/Ordering get
exch /Ordering get
dup type /arraytype eq
{
1 index type /arraytype eq
{
true
1 index length 1 sub -1 0
{
dup 2 index exch get exch 3 index exch get ne
{ pop false exit}
if
} for
exch pop exch pop
}
{ pop pop false }
ifelse
}
{
eq
}
ifelse
}
{ pop pop false }
ifelse
}
{ pop pop false }
ifelse
}
ifelse
} bind def
pdf_has_composefont?
{
/_pdfComposeFont
{
2 copy _pdfComposeFontName not
{
2 index
}
if
(pdf) exch _pdfConcatNames
dup _pdfFontStatus
{ dup findfont 5 2 roll pop pop pop true}
{
4 1 roll
1 index /CMap pdf_resourcestatus
{
pop pop
true
}
{false}
ifelse
1 index true exch
{
_pdfCIDFontStatus not
{pop false exit}
if
}
forall
and
{
1 index 1 index 0 get _pdf_CheckCIDSystemInfo
{
3 -1 roll pop
2 index 3 1 roll
composefont true
}
{
pop pop exch pop false
}
ifelse
}
{
_pdfComposeFontName
{
dup _pdfFontStatus
{
exch pop
1 index exch
findfont definefont true
}
{
pop exch pop
false
}
ifelse
}
{
exch pop
false
}
ifelse
}
ifelse
{ true }
{
dup _pdfFontStatus
{ dup findfont true }
{ pop false }
ifelse
}
ifelse
}
ifelse
} bd
}
{
/_pdfComposeFont
{
_pdfComposeFontName not
{
dup
}
if
dup
_pdfFontStatus
{exch pop dup findfont true}
{
1 index
dup type /nametype eq
{pop}
{cvn}
ifelse
eq
{pop false}
{
dup _pdfFontStatus
{dup findfont true}
{pop false}
ifelse
}
ifelse
}
ifelse
} bd
}
ifelse
/_pdfStyleDicts 4 dict dup begin
/Adobe-Japan1 4 dict dup begin
Level2?
{
/Serif
/HeiseiMin-W3-83pv-RKSJ-H _pdfFontStatus
{/HeiseiMin-W3}
{
/HeiseiMin-W3 _pdfCIDFontStatus
{/HeiseiMin-W3}
{/Ryumin-Light}
ifelse
}
ifelse
def
/SansSerif
/HeiseiKakuGo-W5-83pv-RKSJ-H _pdfFontStatus
{/HeiseiKakuGo-W5}
{
/HeiseiKakuGo-W5 _pdfCIDFontStatus
{/HeiseiKakuGo-W5}
{/GothicBBB-Medium}
ifelse
}
ifelse
def
/HeiseiMaruGo-W4-83pv-RKSJ-H _pdfFontStatus
{/HeiseiMaruGo-W4}
{
/HeiseiMaruGo-W4 _pdfCIDFontStatus
{/HeiseiMaruGo-W4}
{
/Jun101-Light-RKSJ-H _pdfFontStatus
{ /Jun101-Light }
{ SansSerif }
ifelse
}
ifelse
}
ifelse
/RoundSansSerif exch def
/Default Serif def
}
{
/Serif /Ryumin-Light def
/SansSerif /GothicBBB-Medium def
{
(fonts/Jun101-Light-83pv-RKSJ-H) status
}stopped
{pop}{
{ pop pop pop pop /Jun101-Light }
{ SansSerif }
ifelse
/RoundSansSerif exch def
}ifelse
/Default Serif def
}
ifelse
end
def
/Adobe-Korea1 4 dict dup begin
/Serif /HYSMyeongJo-Medium def
/SansSerif /HYGoThic-Medium def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
/Adobe-GB1 4 dict dup begin
/Serif /STSong-Light def
/SansSerif /STHeiti-Regular def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
/Adobe-CNS1 4 dict dup begin
/Serif /MKai-Medium def
/SansSerif /MHei-Medium def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
end
def
/TZzero
{
/_wmode xdd
/_styleArr xdd
/_regOrdering xdd
3 copy
_pdfComposeFont
{
5 2 roll pop pop pop
}
{
[
0 1 _styleArr length 1 sub
{
_styleArr exch get
_pdfStyleDicts _regOrdering 2 copy known
{
get
exch 2 copy known not
{ pop /Default }
if
get
}
{
pop pop pop /Unknown
}
ifelse
}
for
]
exch pop
2 index 3 1 roll
_pdfComposeFont
{3 -1 roll pop}
{
findfont dup /FontName get exch
}
ifelse
}
ifelse
dup /WMode 2 copy known
{ get _wmode ne }
{ pop pop _wmode 1 eq}
ifelse
{
exch _wmode _pdfConcatNames
dup _pdfFontStatus
{ exch pop dup findfont false}
{ exch true }
ifelse
}
{
dup /FontType get 0 ne
}
ifelse
{
dup /FontType get 3 eq _wmode 1 eq and
{
_pdfVerticalRomanT3Font dup length 10 add dict copy
begin
/_basefont exch
dup length 3 add dict
begin
{1 index /FID ne {def}{pop pop} ifelse }
forall
/Encoding Encoding dup length array copy
dup 16#27 /quotesingle put
dup 16#60 /grave put
_regOrdering /Adobe-Japan1 eq
{dup 16#5c /yen put dup 16#a5 /yen put dup 16#b4 /yen put}
if
def
FontName
currentdict
end
definefont
def
/Encoding _basefont /Encoding get def
/_fauxfont true def
}
{
dup length 3 add dict
begin
{1 index /FID ne {def}{pop pop} ifelse }
forall
FontType 0 ne
{
/Encoding Encoding dup length array copy
dup 16#27 /quotesingle put
dup 16#60 /grave put
_regOrdering /Adobe-Japan1 eq
{dup 16#5c /yen put}
if
def
/_fauxfont true def
} if
} ifelse
/WMode _wmode def
dup dup /FontName exch def
currentdict
end
definefont pop
}
{
pop
}
ifelse
/_pdf_FontDirectory 3 1 roll _safeput
}
bd
Level2?
{
/Tf {
_pdf_FontDirectory 2 index 2 copy known
{get exch 3 -1 roll pop}
{pop pop}
ifelse
selectfont
} bd
}
{
/Tf {
_pdf_FontDirectory 2 index 2 copy known
{get exch 3 -1 roll pop}
{pop pop}
ifelse
exch findfont exch
dup type /arraytype eq
{makefont}
{scalefont}
ifelse
setfont
} bd
}
ifelse
/cshow where
{
pop /pdf_cshow /cshow load dd
/pdf_remove2 {pop pop} dd
}
{
/pdf_cshow {exch forall} dd
/pdf_remove2 {} dd
} ifelse
/pdf_xshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
_pdf_x _pdf_y moveto
0
rmoveto
}
ifelse
_pdf_i 1 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdf_yshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
_pdf_x _pdf_y moveto
0 exch
rmoveto
}
ifelse
_pdf_i 1 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdf_xyshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
1 pop
{_pdf_na _pdf_i 1 add get} stopped
{ pop pop pop}
{
_pdf_x _pdf_y moveto
rmoveto
}
ifelse
}
ifelse
_pdf_i 2 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdfl1xs {/_pdf_showproc /show load dd pdf_xshow} bd
/pdfl1ys {/_pdf_showproc /show load dd pdf_yshow} bd
/pdfl1xys {/_pdf_showproc /show load dd pdf_xyshow} bd
Level2? _ColorSep5044? not and
{
/pdfxs {{xshow} stopped {pdfl1xs} if} bd
/pdfys {{yshow} stopped {pdfl1ys} if} bd
/pdfxys {{xyshow} stopped {pdfl1xys} if} bd
}
{
/pdfxs /pdfl1xs load dd
/pdfys /pdfl1ys load dd
/pdfxys /pdfl1xys load dd
} ifelse
/pdf_charpath {false charpath} bd
/pdf_xcharpath {/_pdf_showproc /pdf_charpath load dd pdf_xshow} bd
/pdf_ycharpath {/_pdf_showproc /pdf_charpath load dd pdf_yshow} bd
/pdf_xycharpath {/_pdf_showproc /pdf_charpath load dd pdf_xyshow} bd
/pdf_strokepath
{
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 false charpath
currentpoint S moveto
} bind
exch pdf_cshow
} bd
/pdf_xstrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_xshow} bd
/pdf_ystrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_yshow} bd
/pdf_xystrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_xyshow} bd
Level2? {currentglobal true setglobal} if
/d0/setcharwidth ld
/nND {{/.notdef} repeat} bd
/T3Defs {
/BuildChar
{
1 index /Encoding get exch get
1 index /BuildGlyph get exec
}
def
/BuildGlyph {
exch begin
GlyphProcs exch get exec
end
} def
/_pdfT3Font true def
} bd
/_pdfBoldRomanWidthProc
{
stringwidth 1 index 0 ne { exch .03 add exch }if setcharwidth
0 0
} bd
/_pdfType0WidthProc
{
dup stringwidth 0 0 moveto
2 index true charpath pathbbox
0 -1
7 index 2 div .88
setcachedevice2
pop
0 0
} bd
/_pdfType0WMode1WidthProc
{
dup stringwidth
pop 2 div neg -0.88
2 copy
moveto
0 -1
5 -1 roll true charpath pathbbox
setcachedevice
} bd
/_pdfBoldBaseFont
11 dict begin
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/Encoding cHexEncoding def
/_setwidthProc /_pdfBoldRomanWidthProc load def
/_bcstr1 1 string def
/BuildChar
{
exch begin
_basefont setfont
_bcstr1 dup 0 4 -1 roll put
dup
_setwidthProc
3 copy
moveto
show
_basefonto setfont
moveto
show
end
}bd
currentdict
end
def
pdf_has_composefont?
{
/_pdfBoldBaseCIDFont
11 dict begin
/CIDFontType 1 def
/CIDFontName /_pdfBoldBaseCIDFont def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/_setwidthProc /_pdfType0WidthProc load def
/_bcstr2 2 string def
/BuildGlyph
{
exch begin
_basefont setfont
_bcstr2 1 2 index 256 mod put
_bcstr2 0 3 -1 roll 256 idiv put
_bcstr2 dup _setwidthProc
3 copy
moveto
show
_basefonto setfont
moveto
show
end
}bd
currentdict
end
def
/_pdfDefineIdentity-H
{
/Identity-H /CMap PDFText /pdf_resourcestatus get exec
{
pop pop
}
{
/CIDInit/ProcSet findresource begin 12 dict begin
begincmap
/CIDSystemInfo
3 dict begin
/Registry (Adobe) def
/Ordering (Identity) def
/Supplement 0 def
currentdict
end
def
/CMapName /Identity-H def
/CMapVersion 1 def
/CMapType 1 def
1 begincodespacerange
<0000> <ffff>
endcodespacerange
1 begincidrange
<0000> <ffff> 0
endcidrange
endcmap
CMapName currentdict/CMap defineresource pop
end
end
} ifelse
} def
} if
/_pdfVerticalRomanT3Font
10 dict begin
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/_bcstr1 1 string def
/BuildChar
{
exch begin
_basefont setfont
_bcstr1 dup 0 4 -1 roll put
dup
_pdfType0WidthProc
moveto
show
end
}bd
currentdict
end
def
Level2? {setglobal} if
/MakeBoldFont
{
dup /ct_SyntheticBold known
{
dup length 3 add dict begin
CopyFont
/ct_StrokeWidth .03 0 FontMatrix idtransform pop def
/ct_SyntheticBold true def
currentdict
end
definefont
}
{
dup dup length 3 add dict
begin
CopyFont
/PaintType 2 def
/StrokeWidth .03 0 FontMatrix idtransform pop def
/dummybold currentdict
end
definefont
dup /FontType get dup 9 ge exch 11 le and
{
_pdfBoldBaseCIDFont
dup length 3 add dict copy begin
dup /CIDSystemInfo get /CIDSystemInfo exch def
/_Type0Identity /Identity-H 3 -1 roll [ exch ] composefont
/_basefont exch def
/_Type0Identity /Identity-H 3 -1 roll [ exch ] composefont
/_basefonto exch def
currentdict
end
/CIDFont defineresource
}
{
_pdfBoldBaseFont
dup length 3 add dict copy begin
/_basefont exch def
/_basefonto exch def
currentdict
end
definefont
}
ifelse
}
ifelse
} bd
/MakeBold {
1 index
_pdf_FontDirectory 2 index 2 copy known
{get}
{exch pop}
ifelse
findfont
dup
/FontType get 0 eq
{
dup /WMode known {dup /WMode get 1 eq }{false} ifelse
version length 4 ge
and
{version 0 4 getinterval cvi 2015 ge }
{true}
ifelse
{/_pdfType0WidthProc}
{/_pdfType0WMode1WidthProc}
ifelse
_pdfBoldBaseFont /_setwidthProc 3 -1 roll load put
{MakeBoldFont} Type0CopyFont definefont
}
{
dup /_fauxfont known not 1 index /SubstMaster known not and
{
_pdfBoldBaseFont /_setwidthProc /_pdfBoldRomanWidthProc load put
MakeBoldFont
}
{
2 index 2 index eq
{ exch pop }
{
dup length dict begin
CopyFont
currentdict
end
definefont
}
ifelse
}
ifelse
}
ifelse
pop pop
dup /dummybold ne
{/_pdf_FontDirectory exch dup _safeput }
{ pop }
ifelse
}bd
/MakeItalic {
_pdf_FontDirectory exch 2 copy known
{get}
{exch pop}
ifelse
dup findfont
dup /FontInfo 2 copy known
{
get
/ItalicAngle 2 copy known
{get 0 eq }
{ pop pop true}
ifelse
}
{ pop pop true}
ifelse
{
exch pop
dup /FontType get 0 eq Level2? not and
{ dup /FMapType get 6 eq }
{ false }
ifelse
{
dup /WMode 2 copy known
{
get 1 eq
{ _italMtx_WMode1Type0 }
{ _italMtxType0 }
ifelse
}
{ pop pop _italMtxType0 }
ifelse
}
{
dup /WMode 2 copy known
{
get 1 eq
{ _italMtx_WMode1 }
{ _italMtx }
ifelse
}
{ pop pop _italMtx }
ifelse
}
ifelse
makefont
dup /FontType get 42 eq Level2? not or
{
dup length dict begin
CopyFont
currentdict
end
}
if
1 index exch
definefont pop
/_pdf_FontDirectory exch dup _safeput
}
{
pop
2 copy ne
{
/_pdf_FontDirectory 3 1 roll _safeput
}
{ pop pop }
ifelse
}
ifelse
}bd
/MakeBoldItalic {
/dummybold exch
MakeBold
/dummybold
MakeItalic
}bd
Level2?
{
/pdf_CopyDict
{1 index length add dict copy}
def
}
{
/pdf_CopyDict
{
1 index length add dict
1 index wcheck
{ copy }
{ begin
{def} forall
currentdict
end
}
ifelse
}
def
}
ifelse
/pdf_AddEuroGlyphProc
{
currentdict /CharStrings known
{
CharStrings /Euro known not
{
dup
/CharStrings
CharStrings 1 pdf_CopyDict
begin
/Euro pdf_EuroProcSet 4 -1 roll get def
currentdict
end
def
/pdf_PSBuildGlyph /pdf_PSBuildGlyph load def
/pdf_PathOps /pdf_PathOps load def
/Symbol eq Encoding 160 get /.notdef eq and
{
/Encoding Encoding dup length array copy
dup 160 /Euro put def
}
if
}
{ pop
}
ifelse
}
{ pop
}
ifelse
}
def
Level2? {currentglobal true setglobal} if
/pdf_PathOps 4 dict dup begin
/m {moveto} def
/l {lineto} def
/c {curveto} def
/cp {closepath} def
end
def
/pdf_PSBuildGlyph
{
gsave
8 -1 roll pop
7 1 roll
currentdict /PaintType 2 copy known {get 2 eq}{pop pop false} ifelse
dup 9 1 roll
{
currentdict /StrokeWidth 2 copy known
{
get 2 div
5 1 roll
4 -1 roll 4 index sub
4 1 roll
3 -1 roll 4 index sub
3 1 roll
exch 4 index add exch
4 index add
5 -1 roll pop
}
{
pop pop
}
ifelse
}
if
setcachedevice
pdf_PathOps begin
exec
end
{
currentdict /StrokeWidth 2 copy known
{ get }
{ pop pop 0 }
ifelse
setlinewidth stroke
}
{
fill
}
ifelse
grestore
} def
/pdf_EuroProcSet 13 dict def
pdf_EuroProcSet
begin
/Courier-Bold
{
600 0 6 -12 585 612
{
385 274 m
180 274 l
179 283 179 293 179 303 c
179 310 179 316 180 323 c
398 323 l
423 404 l
197 404 l
219 477 273 520 357 520 c
409 520 466 490 487 454 c
487 389 l
579 389 l
579 612 l
487 612 l
487 560 l
449 595 394 612 349 612 c
222 612 130 529 98 404 c
31 404 l
6 323 l
86 323 l
86 304 l
86 294 86 284 87 274 c
31 274 l
6 193 l
99 193 l
129 77 211 -12 359 -12 c
398 -12 509 8 585 77 c
529 145 l
497 123 436 80 356 80 c
285 80 227 122 198 193 c
360 193 l
cp
600 0 m
}
pdf_PSBuildGlyph
} def
/Courier-BoldOblique /Courier-Bold load def
/Courier
{
600 0 17 -12 578 584
{
17 204 m
97 204 l
126 81 214 -12 361 -12 c
440 -12 517 17 578 62 c
554 109 l
501 70 434 43 366 43 c
266 43 184 101 154 204 c
380 204 l
400 259 l
144 259 l
144 270 143 281 143 292 c
143 299 143 307 144 314 c
418 314 l
438 369 l
153 369 l
177 464 249 529 345 529 c
415 529 484 503 522 463 c
522 391 l
576 391 l
576 584 l
522 584 l
522 531 l
473 566 420 584 348 584 c
216 584 122 490 95 369 c
37 369 l
17 314 l
87 314 l
87 297 l
87 284 88 272 89 259 c
37 259 l
cp
600 0 m
}
pdf_PSBuildGlyph
} def
/Courier-Oblique /Courier load def
/Helvetica
{
556 0 24 -19 541 703
{
541 628 m
510 669 442 703 354 703 c
201 703 117 607 101 444 c
50 444 l
25 372 l
97 372 l
97 301 l
49 301 l
24 229 l
103 229 l
124 67 209 -19 350 -19 c
435 -19 501 25 509 32 c
509 131 l
492 105 417 60 343 60 c
267 60 204 127 197 229 c
406 229 l
430 301 l
191 301 l
191 372 l
455 372 l
479 444 l
194 444 l
201 531 245 624 348 624 c
433 624 484 583 509 534 c
cp
556 0 m
}
pdf_PSBuildGlyph
} def
/Helvetica-Oblique /Helvetica load def
/Helvetica-Bold
{
556 0 12 -19 563 710
{
563 621 m
537 659 463 710 363 710 c
216 710 125 620 101 462 c
51 462 l
12 367 l
92 367 l
92 346 l
92 337 93 328 93 319 c
52 319 l
12 224 l
102 224 l
131 58 228 -19 363 -19 c
417 -19 471 -12 517 18 c
517 146 l
481 115 426 93 363 93 c
283 93 254 166 246 224 c
398 224 l
438 319 l
236 319 l
236 367 l
457 367 l
497 462 l
244 462 l
259 552 298 598 363 598 c
425 598 464 570 486 547 c
507 526 513 517 517 509 c
cp
556 0 m
}
pdf_PSBuildGlyph
} def
/Helvetica-BoldOblique /Helvetica-Bold load def
/Symbol
{
750 0 20 -12 714 685
{
714 581 m
650 645 560 685 465 685 c
304 685 165 580 128 432 c
50 432 l
20 369 l
116 369 l
115 356 115 347 115 337 c
115 328 115 319 116 306 c
50 306 l
20 243 l
128 243 l
165 97 300 -12 465 -12 c
560 -12 635 25 685 65 c
685 155 l
633 91 551 51 465 51 c
340 51 238 131 199 243 c
555 243 l
585 306 l
184 306 l
183 317 182 326 182 336 c
182 346 183 356 184 369 c
614 369 l 644 432 l
199 432 l
233 540 340 622 465 622 c
555 622 636 580 685 520 c
cp
750 0 m
}
pdf_PSBuildGlyph
} def
/Times-Bold
{
500 0 16 -14 478 700
{
367 308 m
224 308 l
224 368 l
375 368 l
380 414 l
225 414 l
230 589 257 653 315 653 c
402 653 431 521 444 457 c
473 457 l
473 698 l
444 697 l
441 679 437 662 418 662 c
393 662 365 700 310 700 c
211 700 97 597 73 414 c
21 414 l
16 368 l
69 368 l
69 359 68 350 68 341 c
68 330 68 319 69 308 c
21 308 l
16 262 l
73 262 l
91 119 161 -14 301 -14 c
380 -14 443 50 478 116 c
448 136 l
415 84 382 40 323 40 c
262 40 231 77 225 262 c
362 262 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-BoldItalic
{
500 0 9 -20 542 686
{
542 686 m
518 686 l
513 673 507 660 495 660 c
475 660 457 683 384 683 c
285 683 170 584 122 430 c
58 430 l
34 369 l
105 369 l
101 354 92 328 90 312 c
34 312 l
9 251 l
86 251 l
85 238 84 223 84 207 c
84 112 117 -14 272 -14 c
326 -14 349 9 381 9 c
393 9 393 -10 394 -20 c
420 -20 l
461 148 l
429 148 l
416 109 362 15 292 15 c
227 15 197 55 197 128 c
197 162 204 203 216 251 c
378 251 l
402 312 l
227 312 l
229 325 236 356 241 369 c
425 369 l
450 430 l
255 430 l
257 435 264 458 274 488 c
298 561 337 654 394 654 c
437 654 484 621 484 530 c
484 516 l
516 516 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-Italic
{
500 0 23 -10 595 692
{
399 317 m
196 317 l
199 340 203 363 209 386 c
429 386 l
444 424 l
219 424 l
246 514 307 648 418 648 c
448 648 471 638 492 616 c
529 576 524 529 527 479 c
549 475 l
595 687 l
570 687 l
562 674 558 664 542 664 c
518 664 474 692 423 692 c
275 692 162 551 116 424 c
67 424 l
53 386 l
104 386 l
98 363 93 340 90 317 c
37 317 l
23 279 l
86 279 l
85 266 85 253 85 240 c
85 118 137 -10 277 -10 c
370 -10 436 58 488 128 c
466 149 l
424 101 375 48 307 48 c
212 48 190 160 190 234 c
190 249 191 264 192 279 c
384 279 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-Roman
{
500 0 10 -12 484 692
{
347 298 m
171 298 l
170 310 170 322 170 335 c
170 362 l
362 362 l
374 403 l
172 403 l
184 580 244 642 308 642 c
380 642 434 574 457 457 c
481 462 l
474 691 l
449 691 l
433 670 429 657 410 657 c
394 657 360 692 299 692 c
204 692 94 604 73 403 c
22 403 l
10 362 l
70 362 l
69 352 69 341 69 330 c
69 319 69 308 70 298 c
22 298 l
10 257 l
73 257 l
97 57 216 -12 295 -12 c
364 -12 427 25 484 123 c
458 142 l
425 101 384 37 316 37 c
256 37 189 84 173 257 c
335 257 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
end
Level2? {setglobal} if
currentdict readonly pop end
%%EndResource
PDFText begin
[39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis
/Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute
/egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde
/oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex
/udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls
/registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash
/.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef
/.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash
/questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef
/guillemotleft/guillemotright/ellipsis/space/Agrave/Atilde/Otilde/OE/oe
/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide
/.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright
/fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand
/Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex
/Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex
/Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla
/hungarumlaut/ogonek/caron
0 TE
[1/dotlessi/caron 39/quotesingle 96/grave
127/bullet/Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis
/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE
/bullet/Zcaron/bullet/bullet/quoteleft/quoteright/quotedblleft
/quotedblright/bullet/endash/emdash/tilde/trademark/scaron
/guilsinglright/oe/bullet/zcaron/Ydieresis/space/exclamdown/cent/sterling
/currency/yen/brokenbar/section/dieresis/copyright/ordfeminine
/guillemotleft/logicalnot/hyphen/registered/macron/degree/plusminus
/twosuperior/threesuperior/acute/mu/paragraph/periodcentered/cedilla
/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis
/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply/Oslash
/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave
/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla/egrave/eacute
/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis/eth/ntilde
/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave/uacute
/ucircumflex/udieresis/yacute/thorn/ydieresis
1 TE
end
%%BeginResource: procset pdfasc.prc 6.0 1
%%Copyright: Copyright 1992-2003 Adobe Systems Incorporated. All Rights Reserved.
/ASR {
13 dict begin
/mirV? exch def
/mirH? exch def
/center? exch def
/autorotate? exch def
/angle exch def
/shrink exch def
/Pury exch def
/Purx exch def
/Plly exch def
/Pllx exch def
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
Dury 0 eq Durx 0 eq and Dlly 0 eq Dllx 0 eq and and
{ shrink 0 gt { GClipBBox } { GPageBBox } ifelse }
{ ITransDBBox }
ifelse
/PHt Pury Plly sub def
/PW Purx Pllx sub def
/DHt Dury Dlly sub def
/DW Durx Dllx sub def
angle 90 eq angle 270 eq or
{
PHt /PHt PW def /PW exch def
} if
autorotate? PHt PW ne and DHt DW ne and
{
DHt DW ge
PHt PW ge
ne
{ /angle angle 90 add def
PHt /PHt PW def /PW exch def
}
if
} if
angle 0 ne
{
/angle angle 360 mod def
angle rotate
angle 90 eq
{ 0 DW neg translate }
if
angle 180 eq
{ DW neg DHt neg translate }
if
angle 270 eq
{ DHt neg 0 translate }
if
} if
center?
{
ITransBBox
Durx Dllx add 2 div Dury Dlly add 2 div
Purx Pllx add -2 div Pury Plly add -2 div
3 -1 roll add exch
3 -1 roll add exch
translate
}
{
ITransBBox
angle 0 eq
{Dllx Pllx sub Dury Pury sub}
if
angle 90 eq
{Durx Purx sub Dury Pury sub}
if
angle 180 eq
{Durx Purx sub Dlly Plly sub}
if
angle 270 eq
{Dllx Pllx sub Dlly Plly sub}
if
translate
}
ifelse
mirH? mirV? or
{
ITransBBox
mirH?
{
-1 1 scale
Durx Dllx add neg 0 translate
} if
mirV?
{
1 -1 scale
0 Dury Dlly add neg translate
} if
} if
shrink 0 ne
{
ITransBBox
Dury Dlly sub Pury Plly sub div
Durx Dllx sub Purx Pllx sub div
2 copy gt { exch } if pop
shrink 1 eq
{
Durx Dllx add 2 div Dury Dlly add 2 div translate
dup scale
Purx Pllx add -2 div Pury Plly add -2 div translate
}
{
shrink 2 eq 1 index 1.0 lt and
{
Durx Dllx add 2 div Dury Dlly add 2 div translate
dup scale
Purx Pllx add -2 div Pury Plly add -2 div translate
}
{ pop }
ifelse
}
ifelse
} if
end
} [/autorotate? /shrink? /mirH? /mirV? /angle /Pury /Purx /Plly /Pllx /Durx /Dury /Dllx /Dlly /PW /PHt /DW /DHt
/Devurx /Devury /Devllx /Devlly /pdfHt /pdfW]
bld
/GClipBBox
{
gsave newpath clippath pathbbox newpath grestore
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
ITransDBBox
} [/Durx /Dury /Dllx /Dlly]
bld
/GPageBBox
{
{
currentpagedevice /PageSize get aload pop
/Devury exch def /Devurx exch def
/Devllx 0 def /Devlly 0 def
ITransBBox
}
stopped
{ GClipBBox }
if
} [/Devurx /Devury /Devllx /Devlly ]
bld
/ITransDBBox
{
Durx Dury transform matrix defaultmatrix itransform
/Devury exch def
/Devurx exch def
Dllx Dlly transform matrix defaultmatrix itransform
/Devlly exch def
/Devllx exch def
Devury Devlly lt {/Devlly Devury /Devury Devlly def def} if
Devurx Devllx lt {/Devllx Devurx /Devurx Devllx def def} if
} [/Durx /Dury /Dllx /Dlly /Devurx /Devury /Devllx /Devlly ]
bld
/ITransBBox
{
/um matrix currentmatrix matrix defaultmatrix matrix invertmatrix matrix concatmatrix def
Devllx Devlly um itransform
Devurx Devury um itransform
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
Dury Dlly lt {/Dlly Dury /Dury Dlly def def} if
Durx Dllx lt {/Dllx Durx /Durx Dllx def def} if
} [ /um /Durx /Dury /Dllx /Dlly /Devurx /Devury /Devllx /Devlly ]
bld
%%EndResource
currentdict readonly pop
end end
/currentpacking where {pop setpacking}if
PDFVars/DocInitAll{[PDF PDFText]{/docinitialize get exec}forall }put
-PDFVars/InitAll{[PDF PDFText]{/initialize get exec}forall initgs}put
-PDFVars/TermAll{[PDFText PDF]{/terminate get exec}forall}put
-PDFVars begin PDF begin
PDFVars/DocInitAll get exec PDFVars/InitAll get exec
[/NamespacePush PDFMark5
[/_objdef {Metadata_In_EPS} /type /stream /OBJ PDFMark5
[{Metadata_In_EPS} 3537 (% &end XMP packet& %) ReadByPDFMark5
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
-<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="3.1-701">
- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
- <rdf:Description rdf:about=""
- xmlns:xap="http://ns.adobe.com/xap/1.0/">
- <xap:CreateDate>2006-10-20T15:23:31+02:00</xap:CreateDate>
- <xap:ModifyDate>2006-10-20T15:23:31+02:00</xap:ModifyDate>
- <xap:MetadataDate>2006-10-20T15:23:31+02:00</xap:MetadataDate>
- </rdf:Description>
- <rdf:Description rdf:about=""
- xmlns:xapMM="http://ns.adobe.com/xap/1.0/mm/"
- xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#">
- <xapMM:DocumentID>uuid:34DD0B9361E111DBB7AD8EFAF1591643</xapMM:DocumentID>
- <xapMM:InstanceID>uuid:34DD0B9361E111DBB7AD8EFAF1591643</xapMM:InstanceID>
- <xapMM:DerivedFrom rdf:parseType="Resource">
- <stRef:instanceID>uuid:f3014e74-603d-11db-9b35-000a95cd9010</stRef:instanceID>
- <stRef:documentID>uuid:1ed1776c-603c-11db-9960-000a95cd9010</stRef:documentID>
- </xapMM:DerivedFrom>
- </rdf:Description>
- <rdf:Description rdf:about=""
- xmlns:dc="http://purl.org/dc/elements/1.1/">
- <dc:title>
- <rdf:Alt>
- <rdf:li xml:lang="x-default">paper.dvi</rdf:li>
- </rdf:Alt>
- </dc:title>
- <dc:format>application/eps</dc:format>
- </rdf:Description>
- </rdf:RDF>
-</x:xmpmeta>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<?xpacket end="w"?>
% &end XMP packet& %
[{Metadata_In_EPS} 2 dict begin /Type /Metadata def /Subtype /XML def currentdict end /PUT PDFMark5
[/Document 1 dict begin /Metadata {Metadata_In_EPS} def currentdict end /BDC PDFMark5
[/NamespacePop PDFMark5
PDFVars/TermAll get exec end end
PDF /docinitialize get exec
-
%%EndSetup
PDFVars begin PDF begin PDFVars/InitAll get exec
237.407 364.169 115.084 98.333 rectclip
q
237.407 364.169 m
352.491 364.169 l
352.491 462.502 l
237.407 462.502 l
h
W
n
q
0.1 0.0 0.0 0.1 0.0 0.0 cm
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
Q
q
n
1195.62 4688.31 m
2327.9 4688.31 l
2327.9 3620.38 l
1195.62 3620.38 l
h
W
n
4.88755 w
1 j
[4.88755 39.1004 ] 0.0 d
3.25837 w
[] 0.0 d
4.88755 w
Q
q
n
1321.07 4649.21 m
2217.12 4649.21 l
2217.12 3703.47 l
1321.07 3703.47 l
h
W
n
Q
q
n
0.0 0.0 m
W
n
q
951.313 0.0 0.0 -4.69205 243.734 4059.78 cm
Q
Q
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
[/DeviceCMYK] cs 0.0 0.0 0.0 1.0 sc
%ADOBeginSubsetFont: UPIBAA+CMR10 Initial
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
12 dict dup begin
/FontType 1 def
/FontName /UPIBAA+CMR10 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/ItalicAngle 0 def
/WasEmbedded true def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
def
/FontBBox {-40 -250 1009 750} def
end
systemdict begin
dup /Private
13 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-22 -0 683 705 431 448 666 677] def
/OtherBlues [-206 -194] def
/BlueScale 0.04379 def
/StdHW [31] def
/StdVW [69] def
/StemSnapH [22 31] def
/StemSnapV [69 89] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs [{ct_CffDict/F0Subr get exec} {ct_CffDict/F1Subr get exec}
{ct_CffDict/F2Subr get exec} {ct_CffDict/HSSubr get exec}] def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
1 dict dup begin
/.notdef <1C60D8A8C9B08A959E2F69652E8B8F> |-
end put
end
dup /FontName get exch definefont pop
end
end
-%ADOEndSubsetFont
-[ 1 /dotlessi/caron 11 /ff/fi/fl/ffi
32 /space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus
/comma/hyphen/period/slash/zero/one
/two/three/four/five/six/seven
/eight/nine/colon/semicolon/less/equal
/greater/question/at/A/B/C
/D/E/F/G/H/I
/J/K/L/M/N/O
/P/Q/R/S/T/U
/V/W/X/Y/Z/bracketleft
/backslash/bracketright/circumflex/underscore/quoteleft/a
/b/c/d/e/f/g
/h/i/j/k/l/m
/n/o/p/q/r/s
/t/u/v/w/x/y
/z/endash/bar/braceright/tilde/bullet
/Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis
/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft
/OE/bullet/Zcaron/bullet/bullet/quoteleft
/quoteright/quotedblleft/quotedblright/bullet/endash/emdash
/tilde/trademark/scaron/guilsinglright/oe/bullet
/zcaron/Ydieresis/space/exclamdown/cent/sterling
/currency/yen/brokenbar/section/dieresis/copyright
/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron
/degree/plusminus/twosuperior/threesuperior/acute/mu
/paragraph/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright
/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute
/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute
/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute
/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave
/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls
/agrave/aacute/acircumflex/atilde/adieresis/aring
/ae/ccedilla/egrave/eacute/ecircumflex/edieresis
/igrave/iacute/icircumflex/idieresis/eth/ntilde
/ograve/oacute/ocircumflex/otilde/odieresis/divide
/oslash/ugrave/uacute/ucircumflex/udieresis/yacute
/thorn/ydieresis
/N41 (UPIBAA+CMR10) -1 TZ
222.215 364.328 m
%ADOBeginSubsetFont: UPIBAA+CMR10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/UPIBAA+CMR10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/five <1C60D8A8C9B7A73D3B2B97F19D54A2E00E7DDA8E72064220CB7581D13
CEDF071F346430E40993A6297E3A2A6D6093205222D977AC7F7B65CC82B221D9
B18ADEA5D4AF0261ABF060D3E283C7B3B5EB39FF499721FD51203AE59E3BEA25
7DFD3E472FEF67221488EC8D1F355E2FAD057CA44A8B4BAD6C6C719C164907CB
F9A6CC770DB0C7E58A37D2385E23F576BCFF94FFBFD8ADD4C5E6C32CD83ACEB7
7472D00FE1A4DC66393A99AC6BBD252B04C98B710149EA42B66ACE89D4FC4393
F3A09165DF477ABCB0E8A8DB21E4278CA219EBCC9B067F92619913BDBD1EF3C9
A> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/UPIBAA+CMR10 findfont /Encoding get
dup 53 /five put
pop
end
-%ADOEndSubsetFont
-/N41 10.6637 Tf
(5) show
Q
q
n
2449.61 4685.86 m
3581.89 4685.86 l
3581.89 3620.37 l
2449.61 3620.37 l
h
W
n
n
[/DeviceGray] cs 1.0 sc
2449.610107 3620.370117 1132.280029 1046.750000 rectfill
-
n
2634.520020 3761.300049 828.437988 828.438232 rectfill
-
4.88755 w
1 j
n
2634.52 3761.3 828.438 828.438 re
S
[4.88755 39.1004 ] 0.0 d
3.25837 w
n
2634.52 3761.3 m
2634.52 4589.73 l
0.0 sc
S
n
2634.52 4589.73 m
2634.52 4589.73 l
S
n
2737.98 3761.3 m
2737.98 4589.73 l
S
n
2737.98 4589.73 m
2737.98 4589.73 l
S
n
2842.24 3761.3 m
2842.24 4589.73 l
S
n
2842.24 4589.73 m
2842.24 4589.73 l
S
n
2945.7 3761.3 m
2945.7 4589.73 l
S
n
2945.7 4589.73 m
2945.7 4589.73 l
S
n
3049.15 3761.3 m
3049.15 4589.73 l
S
n
3049.15 4589.73 m
3049.15 4589.73 l
S
n
3152.6 3761.3 m
3152.6 4589.73 l
S
n
3152.6 4589.73 m
3152.6 4589.73 l
S
n
3256.05 3761.3 m
3256.05 4589.73 l
S
n
3256.05 4589.73 m
3256.05 4589.73 l
S
n
3359.51 3761.3 m
3359.51 4589.73 l
S
n
3359.51 4589.73 m
3359.51 4589.73 l
S
n
3462.96 3761.3 m
3462.96 4589.73 l
S
n
3462.96 4589.73 m
3462.96 4589.73 l
S
n
2634.52 3761.3 m
3462.96 3761.3 l
S
n
3462.96 3761.3 m
3462.96 3761.3 l
S
n
2634.52 3864.75 m
3462.96 3864.75 l
S
n
3462.96 3864.75 m
3462.96 3864.75 l
S
n
2634.52 3968.2 m
3462.96 3968.2 l
S
n
3462.96 3968.2 m
3462.96 3968.2 l
S
n
2634.52 4072.47 m
3462.96 4072.47 l
S
n
3462.96 4072.47 m
3462.96 4072.47 l
S
n
2634.52 4175.92 m
3462.96 4175.92 l
S
n
3462.96 4175.92 m
3462.96 4175.92 l
S
n
2634.52 4279.38 m
3462.96 4279.38 l
S
n
3462.96 4279.38 m
3462.96 4279.38 l
S
n
2634.52 4382.83 m
3462.96 4382.83 l
S
n
3462.96 4382.83 m
3462.96 4382.83 l
S
n
2634.52 4486.28 m
3462.96 4486.28 l
S
n
3462.96 4486.28 m
3462.96 4486.28 l
S
n
2634.52 4589.73 m
3462.96 4589.73 l
S
n
3462.96 4589.73 m
3462.96 4589.73 l
S
[] 0.0 d
4.88755 w
n
2634.52 3761.3 m
3462.96 3761.3 l
S
n
2634.52 4589.73 m
3462.96 4589.73 l
S
n
2634.52 3761.3 m
2634.52 4589.73 l
S
n
3462.96 3761.3 m
3462.96 4589.73 l
S
n
2634.52 3761.3 m
3462.96 3761.3 l
S
n
2634.52 3761.3 m
2634.52 4589.73 l
S
n
2634.52 3761.3 m
2634.52 3770.25 l
S
n
2634.52 4589.73 m
2634.52 4580.77 l
S
n
2737.98 3761.3 m
2737.98 3770.25 l
S
n
2737.98 4589.73 m
2737.98 4580.77 l
S
n
2842.24 3761.3 m
2842.24 3770.25 l
S
n
2842.24 4589.73 m
2842.24 4580.77 l
S
n
2945.7 3761.3 m
2945.7 3770.25 l
S
n
2945.7 4589.73 m
2945.7 4580.77 l
S
n
3049.15 3761.3 m
3049.15 3770.25 l
S
n
3049.15 4589.73 m
3049.15 4580.77 l
S
n
3152.6 3761.3 m
3152.6 3770.25 l
S
n
3152.6 4589.73 m
3152.6 4580.77 l
S
n
3256.05 3761.3 m
3256.05 3770.25 l
S
n
3256.05 4589.73 m
3256.05 4580.77 l
S
n
3359.51 3761.3 m
3359.51 3770.25 l
S
n
3359.51 4589.73 m
3359.51 4580.77 l
S
n
3462.96 3761.3 m
3462.96 3770.25 l
S
n
3462.96 4589.73 m
3462.96 4580.77 l
S
n
2634.52 3761.3 m
2643.48 3761.3 l
S
n
3462.96 3761.3 m
3454.0 3761.3 l
S
n
2634.52 3864.75 m
2643.48 3864.75 l
S
n
3462.96 3864.75 m
3454.0 3864.75 l
S
n
2634.52 3968.2 m
2643.48 3968.2 l
S
n
3462.96 3968.2 m
3454.0 3968.2 l
S
n
2634.52 4072.47 m
2643.48 4072.47 l
S
n
3462.96 4072.47 m
3454.0 4072.47 l
S
n
2634.52 4175.92 m
2643.48 4175.92 l
S
n
3462.96 4175.92 m
3454.0 4175.92 l
S
n
2634.52 4279.38 m
2643.48 4279.38 l
S
n
3462.96 4279.38 m
3454.0 4279.38 l
S
n
2634.52 4382.83 m
2643.48 4382.83 l
S
n
3462.96 4382.83 m
3454.0 4382.83 l
S
n
2634.52 4486.28 m
2643.48 4486.28 l
S
n
3462.96 4486.28 m
3454.0 4486.28 l
S
n
2634.52 4589.73 m
2643.48 4589.73 l
S
n
3462.96 4589.73 m
3454.0 4589.73 l
S
n
2634.52 3761.3 m
3462.96 3761.3 l
S
n
2634.52 4589.73 m
3462.96 4589.73 l
S
n
2634.52 3761.3 m
2634.52 4589.73 l
S
n
3462.96 3761.3 m
3462.96 4589.73 l
S
Q
q
n
2575.06 4646.76 m
3520.8 4646.76 l
3520.8 3701.02 l
2575.06 3701.02 l
h
W
n
n
3058.93 4537.6 m
3058.93 4532.2 3054.55 4527.82 3049.15 4527.82 c
3043.75 4527.82 3039.38 4532.2 3039.38 4537.6 c
3039.38 4543.0 3043.75 4547.38 3049.15 4547.38 c
3054.55 4547.38 3058.93 4543.0 3058.93 4537.6 c
[/DeviceRGB] cs 0.0 0.0 1.0 sc
f
n
3058.93 4486.28 m
3058.93 4480.88 3054.55 4476.51 3049.15 4476.51 c
3043.75 4476.51 3039.38 4480.88 3039.38 4486.28 c
3039.38 4491.68 3043.75 4496.06 3049.15 4496.06 c
3054.55 4496.06 3058.93 4491.68 3058.93 4486.28 c
f
n
3058.93 4434.15 m
3058.93 4428.75 3054.55 4424.37 3049.15 4424.37 c
3043.75 4424.37 3039.38 4428.75 3039.38 4434.15 c
3039.38 4439.55 3043.75 4443.92 3049.15 4443.92 c
3054.55 4443.92 3058.93 4439.55 3058.93 4434.15 c
f
n
3058.93 4382.83 m
3058.93 4377.43 3054.55 4373.05 3049.15 4373.05 c
3043.75 4373.05 3039.38 4377.43 3039.38 4382.83 c
3039.38 4388.23 3043.75 4392.61 3049.15 4392.61 c
3054.55 4392.61 3058.93 4388.23 3058.93 4382.83 c
f
n
3058.93 4330.7 m
3058.93 4325.3 3054.55 4320.92 3049.15 4320.92 c
3043.75 4320.92 3039.38 4325.3 3039.38 4330.7 c
3039.38 4336.09 3043.75 4340.47 3049.15 4340.47 c
3054.55 4340.47 3058.93 4336.09 3058.93 4330.7 c
f
n
3058.93 4279.38 m
3058.93 4273.98 3054.55 4269.6 3049.15 4269.6 c
3043.75 4269.6 3039.38 4273.98 3039.38 4279.38 c
3039.38 4284.77 3043.75 4289.15 3049.15 4289.15 c
3054.55 4289.15 3058.93 4284.77 3058.93 4279.38 c
f
n
3058.93 4227.24 m
3058.93 4221.84 3054.55 4217.46 3049.15 4217.46 c
3043.75 4217.46 3039.38 4221.84 3039.38 4227.24 c
3039.38 4232.64 3043.75 4237.02 3049.15 4237.02 c
3054.55 4237.02 3058.93 4232.64 3058.93 4227.24 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3058.93 4123.79 m
3058.93 4118.39 3054.55 4114.01 3049.15 4114.01 c
3043.75 4114.01 3039.38 4118.39 3039.38 4123.79 c
3039.38 4129.19 3043.75 4133.56 3049.15 4133.56 c
3054.55 4133.56 3058.93 4129.19 3058.93 4123.79 c
f
n
3058.93 4072.47 m
3058.93 4067.07 3054.55 4062.7 3049.15 4062.7 c
3043.75 4062.7 3039.38 4067.07 3039.38 4072.47 c
3039.38 4077.87 3043.75 4082.25 3049.15 4082.25 c
3054.55 4082.25 3058.93 4077.87 3058.93 4072.47 c
f
n
3058.93 4020.34 m
3058.93 4014.94 3054.55 4010.56 3049.15 4010.56 c
3043.75 4010.56 3039.38 4014.94 3039.38 4020.34 c
3039.38 4025.73 3043.75 4030.11 3049.15 4030.11 c
3054.55 4030.11 3058.93 4025.73 3058.93 4020.34 c
f
n
3058.93 3968.2 m
3058.93 3962.8 3054.55 3958.43 3049.15 3958.43 c
3043.75 3958.43 3039.38 3962.8 3039.38 3968.2 c
3039.38 3973.6 3043.75 3977.98 3049.15 3977.98 c
3054.55 3977.98 3058.93 3973.6 3058.93 3968.2 c
f
n
3058.93 3916.88 m
3058.93 3911.48 3054.55 3907.11 3049.15 3907.11 c
3043.75 3907.11 3039.38 3911.48 3039.38 3916.88 c
3039.38 3922.28 3043.75 3926.66 3049.15 3926.66 c
3054.55 3926.66 3058.93 3922.28 3058.93 3916.88 c
f
n
3058.93 3864.75 m
3058.93 3859.35 3054.55 3854.97 3049.15 3854.97 c
3043.75 3854.97 3039.38 3859.35 3039.38 3864.75 c
3039.38 3870.15 3043.75 3874.52 3049.15 3874.52 c
3054.55 3874.52 3058.93 3870.15 3058.93 3864.75 c
f
n
3058.93 3813.43 m
3058.93 3808.03 3054.55 3803.65 3049.15 3803.65 c
3043.75 3803.65 3039.38 3808.03 3039.38 3813.43 c
3039.38 3818.83 3043.75 3823.2 3049.15 3823.2 c
3054.55 3823.2 3058.93 3818.83 3058.93 3813.43 c
f
n
3058.93 3761.3 m
3058.93 3755.9 3054.55 3751.52 3049.15 3751.52 c
3043.75 3751.52 3039.38 3755.9 3039.38 3761.3 c
3039.38 3766.7 3043.75 3771.07 3049.15 3771.07 c
3054.55 3771.07 3058.93 3766.7 3058.93 3761.3 c
f
n
3018.2 4587.29 m
3018.2 4581.89 3013.82 4577.52 3008.42 4577.52 c
3003.02 4577.52 2998.64 4581.89 2998.64 4587.29 c
2998.64 4592.69 3003.02 4597.07 3008.42 4597.07 c
3013.82 4597.07 3018.2 4592.69 3018.2 4587.29 c
f
n
3023.08 4535.97 m
3023.08 4530.57 3018.71 4526.2 3013.31 4526.2 c
3007.91 4526.2 3003.53 4530.57 3003.53 4535.97 c
3003.53 4541.37 3007.91 4545.75 3013.31 4545.75 c
3018.71 4545.75 3023.08 4541.37 3023.08 4535.97 c
f
n
3027.97 4484.65 m
3027.97 4479.25 3023.59 4474.88 3018.2 4474.88 c
3012.8 4474.88 3008.42 4479.25 3008.42 4484.65 c
3008.42 4490.05 3012.8 4494.43 3018.2 4494.43 c
3023.59 4494.43 3027.97 4490.05 3027.97 4484.65 c
f
n
3032.86 4432.52 m
3032.86 4427.12 3028.48 4422.74 3023.08 4422.74 c
3017.68 4422.74 3013.31 4427.12 3013.31 4432.52 c
3013.31 4437.92 3017.68 4442.29 3023.08 4442.29 c
3028.48 4442.29 3032.86 4437.92 3032.86 4432.52 c
f
n
3038.56 4381.2 m
3038.56 4375.8 3034.18 4371.43 3028.79 4371.43 c
3023.39 4371.43 3019.01 4375.8 3019.01 4381.2 c
3019.01 4386.6 3023.39 4390.97 3028.79 4390.97 c
3034.18 4390.97 3038.56 4386.6 3038.56 4381.2 c
f
n
3043.45 4329.88 m
3043.45 4324.48 3039.07 4320.11 3033.67 4320.11 c
3028.27 4320.11 3023.9 4324.48 3023.9 4329.88 c
3023.9 4335.28 3028.27 4339.66 3033.67 4339.66 c
3039.07 4339.66 3043.45 4335.28 3043.45 4329.88 c
f
n
3048.34 4278.56 m
3048.34 4273.16 3043.96 4268.79 3038.56 4268.79 c
3033.16 4268.79 3028.79 4273.16 3028.79 4278.56 c
3028.79 4283.96 3033.16 4288.34 3038.56 4288.34 c
3043.96 4288.34 3048.34 4283.96 3048.34 4278.56 c
f
n
3053.22 4227.24 m
3053.22 4221.84 3048.85 4217.46 3043.45 4217.46 c
3038.05 4217.46 3033.67 4221.84 3033.67 4227.24 c
3033.67 4232.64 3038.05 4237.02 3043.45 4237.02 c
3048.85 4237.02 3053.22 4232.64 3053.22 4227.24 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3063.81 4123.79 m
3063.81 4118.39 3059.43 4114.01 3054.04 4114.01 c
3048.64 4114.01 3044.26 4118.39 3044.26 4123.79 c
3044.26 4129.19 3048.64 4133.56 3054.04 4133.56 c
3059.43 4133.56 3063.81 4129.19 3063.81 4123.79 c
f
n
3068.7 4072.47 m
3068.7 4067.07 3064.32 4062.7 3058.93 4062.7 c
3053.53 4062.7 3049.15 4067.07 3049.15 4072.47 c
3049.15 4077.87 3053.53 4082.25 3058.93 4082.25 c
3064.32 4082.25 3068.7 4077.87 3068.7 4072.47 c
f
n
3073.59 4021.15 m
3073.59 4015.75 3069.21 4011.38 3063.81 4011.38 c
3058.41 4011.38 3054.04 4015.75 3054.04 4021.15 c
3054.04 4026.55 3058.41 4030.93 3063.81 4030.93 c
3069.21 4030.93 3073.59 4026.55 3073.59 4021.15 c
f
n
3078.48 3969.83 m
3078.48 3964.43 3074.1 3960.05 3068.7 3960.05 c
3063.3 3960.05 3058.93 3964.43 3058.93 3969.83 c
3058.93 3975.23 3063.3 3979.61 3068.7 3979.61 c
3074.1 3979.61 3078.48 3975.23 3078.48 3969.83 c
f
n
3084.18 3918.51 m
3084.18 3913.11 3079.8 3908.73 3074.4 3908.73 c
3069.0 3908.73 3064.62 3913.11 3064.62 3918.51 c
3064.62 3923.91 3069.0 3928.29 3074.4 3928.29 c
3079.8 3928.29 3084.18 3923.91 3084.18 3918.51 c
f
n
3089.07 3866.38 m
3089.07 3860.98 3084.69 3856.6 3079.29 3856.6 c
3073.89 3856.6 3069.52 3860.98 3069.52 3866.38 c
3069.52 3871.78 3073.89 3876.15 3079.29 3876.15 c
3084.69 3876.15 3089.07 3871.78 3089.07 3866.38 c
f
n
3093.95 3815.06 m
3093.95 3809.66 3089.57 3805.28 3084.18 3805.28 c
3078.78 3805.28 3074.4 3809.66 3074.4 3815.06 c
3074.4 3820.46 3078.78 3824.83 3084.18 3824.83 c
3089.57 3824.83 3093.95 3820.46 3093.95 3815.06 c
f
n
3098.84 3763.74 m
3098.84 3758.34 3094.46 3753.96 3089.07 3753.96 c
3083.67 3753.96 3079.29 3758.34 3079.29 3763.74 c
3079.29 3769.14 3083.67 3773.52 3089.07 3773.52 c
3094.46 3773.52 3098.84 3769.14 3098.84 3763.74 c
f
n
2977.46 4581.59 m
2977.46 4576.19 2973.09 4571.81 2967.69 4571.81 c
2962.29 4571.81 2957.91 4576.19 2957.91 4581.59 c
2957.91 4586.99 2962.29 4591.36 2967.69 4591.36 c
2973.09 4591.36 2977.46 4586.99 2977.46 4581.59 c
f
n
2988.05 4530.27 m
2988.05 4524.87 2983.68 4520.5 2978.28 4520.5 c
2972.88 4520.5 2968.5 4524.87 2968.5 4530.27 c
2968.5 4535.67 2972.88 4540.04 2978.28 4540.04 c
2983.68 4540.04 2988.05 4535.67 2988.05 4530.27 c
f
n
2997.83 4479.77 m
2997.83 4474.37 2993.45 4469.99 2988.05 4469.99 c
2982.66 4469.99 2978.28 4474.37 2978.28 4479.77 c
2978.28 4485.16 2982.66 4489.54 2988.05 4489.54 c
2993.45 4489.54 2997.83 4485.16 2997.83 4479.77 c
f
n
3008.42 4429.26 m
3008.42 4423.86 3004.04 4419.48 2998.64 4419.48 c
2993.25 4419.48 2988.87 4423.86 2988.87 4429.26 c
2988.87 4434.66 2993.25 4439.04 2998.64 4439.04 c
3004.04 4439.04 3008.42 4434.66 3008.42 4429.26 c
f
n
3018.2 4378.75 m
3018.2 4373.36 3013.82 4368.98 3008.42 4368.98 c
3003.02 4368.98 2998.64 4373.36 2998.64 4378.75 c
2998.64 4384.15 3003.02 4388.53 3008.42 4388.53 c
3013.82 4388.53 3018.2 4384.15 3018.2 4378.75 c
f
n
3027.97 4327.44 m
3027.97 4322.04 3023.59 4317.66 3018.2 4317.66 c
3012.8 4317.66 3008.42 4322.04 3008.42 4327.44 c
3008.42 4332.84 3012.8 4337.21 3018.2 4337.21 c
3023.59 4337.21 3027.97 4332.84 3027.97 4327.44 c
f
n
3038.56 4276.93 m
3038.56 4271.54 3034.18 4267.16 3028.79 4267.16 c
3023.39 4267.16 3019.01 4271.54 3019.01 4276.93 c
3019.01 4282.33 3023.39 4286.71 3028.79 4286.71 c
3034.18 4286.71 3038.56 4282.33 3038.56 4276.93 c
f
n
3048.34 4226.43 m
3048.34 4221.03 3043.96 4216.65 3038.56 4216.65 c
3033.16 4216.65 3028.79 4221.03 3028.79 4226.43 c
3028.79 4231.82 3033.16 4236.2 3038.56 4236.2 c
3043.96 4236.2 3048.34 4231.82 3048.34 4226.43 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3068.7 4124.6 m
3068.7 4119.2 3064.32 4114.83 3058.93 4114.83 c
3053.53 4114.83 3049.15 4119.2 3049.15 4124.6 c
3049.15 4130.0 3053.53 4134.38 3058.93 4134.38 c
3064.32 4134.38 3068.7 4130.0 3068.7 4124.6 c
f
n
3078.48 4074.1 m
3078.48 4068.7 3074.1 4064.32 3068.7 4064.32 c
3063.3 4064.32 3058.93 4068.7 3058.93 4074.1 c
3058.93 4079.5 3063.3 4083.88 3068.7 4083.88 c
3074.1 4083.88 3078.48 4079.5 3078.48 4074.1 c
f
n
3089.07 4023.59 m
3089.07 4018.2 3084.69 4013.82 3079.29 4013.82 c
3073.89 4013.82 3069.52 4018.2 3069.52 4023.59 c
3069.52 4028.99 3073.89 4033.37 3079.29 4033.37 c
3084.69 4033.37 3089.07 4028.99 3089.07 4023.59 c
f
n
3098.84 3972.27 m
3098.84 3966.88 3094.46 3962.5 3089.07 3962.5 c
3083.67 3962.5 3079.29 3966.88 3079.29 3972.27 c
3079.29 3977.67 3083.67 3982.05 3089.07 3982.05 c
3094.46 3982.05 3098.84 3977.67 3098.84 3972.27 c
f
n
3108.61 3921.77 m
3108.61 3916.37 3104.24 3912.0 3098.84 3912.0 c
3093.44 3912.0 3089.07 3916.37 3089.07 3921.77 c
3089.07 3927.17 3093.44 3931.54 3098.84 3931.54 c
3104.24 3931.54 3108.61 3927.17 3108.61 3921.77 c
f
n
3119.2 3871.27 m
3119.2 3865.87 3114.83 3861.49 3109.43 3861.49 c
3104.03 3861.49 3099.65 3865.87 3099.65 3871.27 c
3099.65 3876.66 3104.03 3881.04 3109.43 3881.04 c
3114.83 3881.04 3119.2 3876.66 3119.2 3871.27 c
f
n
3128.98 3820.76 m
3128.98 3815.36 3124.6 3810.98 3119.2 3810.98 c
3113.8 3810.98 3109.43 3815.36 3109.43 3820.76 c
3109.43 3826.16 3113.8 3830.54 3119.2 3830.54 c
3124.6 3830.54 3128.98 3826.16 3128.98 3820.76 c
f
n
3139.57 3769.44 m
3139.57 3764.04 3135.19 3759.67 3129.79 3759.67 c
3124.39 3759.67 3120.02 3764.04 3120.02 3769.44 c
3120.02 3774.84 3124.39 3779.21 3129.79 3779.21 c
3135.19 3779.21 3139.57 3774.84 3139.57 3769.44 c
f
n
2938.36 4571.81 m
2938.36 4566.41 2933.99 4562.04 2928.59 4562.04 c
2923.19 4562.04 2918.82 4566.41 2918.82 4571.81 c
2918.82 4577.21 2923.19 4581.59 2928.59 4581.59 c
2933.99 4581.59 2938.36 4577.21 2938.36 4571.81 c
f
n
2953.03 4522.12 m
2953.03 4516.73 2948.65 4512.35 2943.25 4512.35 c
2937.86 4512.35 2933.48 4516.73 2933.48 4522.12 c
2933.48 4527.52 2937.86 4531.9 2943.25 4531.9 c
2948.65 4531.9 2953.03 4527.52 2953.03 4522.12 c
f
n
2968.5 4472.43 m
2968.5 4467.04 2964.13 4462.66 2958.73 4462.66 c
2953.33 4462.66 2948.95 4467.04 2948.95 4472.43 c
2948.95 4477.83 2953.33 4482.21 2958.73 4482.21 c
2964.13 4482.21 2968.5 4477.83 2968.5 4472.43 c
f
n
2983.17 4422.74 m
2983.17 4417.34 2978.79 4412.97 2973.39 4412.97 c
2967.99 4412.97 2963.62 4417.34 2963.62 4422.74 c
2963.62 4428.14 2967.99 4432.52 2973.39 4432.52 c
2978.79 4432.52 2983.17 4428.14 2983.17 4422.74 c
f
n
2998.64 4373.87 m
2998.64 4368.47 2994.27 4364.09 2988.87 4364.09 c
2983.47 4364.09 2979.09 4368.47 2979.09 4373.87 c
2979.09 4379.27 2983.47 4383.64 2988.87 4383.64 c
2994.27 4383.64 2998.64 4379.27 2998.64 4373.87 c
f
n
3013.31 4324.18 m
3013.31 4318.78 3008.93 4314.4 3003.53 4314.4 c
2998.13 4314.4 2993.76 4318.78 2993.76 4324.18 c
2993.76 4329.58 2998.13 4333.95 3003.53 4333.95 c
3008.93 4333.95 3013.31 4329.58 3013.31 4324.18 c
f
n
3028.79 4274.49 m
3028.79 4269.09 3024.41 4264.71 3019.01 4264.71 c
3013.61 4264.71 3009.23 4269.09 3009.23 4274.49 c
3009.23 4279.89 3013.61 4284.26 3019.01 4284.26 c
3024.41 4284.26 3028.79 4279.89 3028.79 4274.49 c
f
n
3043.45 4224.8 m
3043.45 4219.4 3039.07 4215.02 3033.67 4215.02 c
3028.27 4215.02 3023.9 4219.4 3023.9 4224.8 c
3023.9 4230.2 3028.27 4234.57 3033.67 4234.57 c
3039.07 4234.57 3043.45 4230.2 3043.45 4224.8 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3073.59 4126.23 m
3073.59 4120.83 3069.21 4116.46 3063.81 4116.46 c
3058.41 4116.46 3054.04 4120.83 3054.04 4126.23 c
3054.04 4131.63 3058.41 4136.01 3063.81 4136.01 c
3069.21 4136.01 3073.59 4131.63 3073.59 4126.23 c
f
n
3088.25 4076.54 m
3088.25 4071.14 3083.88 4066.77 3078.48 4066.77 c
3073.08 4066.77 3068.7 4071.14 3068.7 4076.54 c
3068.7 4081.94 3073.08 4086.32 3078.48 4086.32 c
3083.88 4086.32 3088.25 4081.94 3088.25 4076.54 c
f
n
3103.73 4026.85 m
3103.73 4021.45 3099.35 4017.08 3093.95 4017.08 c
3088.55 4017.08 3084.18 4021.45 3084.18 4026.85 c
3084.18 4032.25 3088.55 4036.63 3093.95 4036.63 c
3099.35 4036.63 3103.73 4032.25 3103.73 4026.85 c
f
n
3118.39 3977.16 m
3118.39 3971.76 3114.01 3967.39 3108.61 3967.39 c
3103.21 3967.39 3098.84 3971.76 3098.84 3977.16 c
3098.84 3982.56 3103.21 3986.94 3108.61 3986.94 c
3114.01 3986.94 3118.39 3982.56 3118.39 3977.16 c
f
n
3133.87 3928.29 m
3133.87 3922.89 3129.49 3918.51 3124.09 3918.51 c
3118.7 3918.51 3114.32 3922.89 3114.32 3928.29 c
3114.32 3933.68 3118.7 3938.06 3124.09 3938.06 c
3129.49 3938.06 3133.87 3933.68 3133.87 3928.29 c
f
n
3148.53 3878.6 m
3148.53 3873.2 3144.15 3868.82 3138.75 3868.82 c
3133.36 3868.82 3128.98 3873.2 3128.98 3878.6 c
3128.98 3884.0 3133.36 3888.37 3138.75 3888.37 c
3144.15 3888.37 3148.53 3884.0 3148.53 3878.6 c
f
n
3164.01 3828.91 m
3164.01 3823.51 3159.63 3819.13 3154.23 3819.13 c
3148.83 3819.13 3144.46 3823.51 3144.46 3828.91 c
3144.46 3834.3 3148.83 3838.68 3154.23 3838.68 c
3159.63 3838.68 3164.01 3834.3 3164.01 3828.91 c
f
n
3178.67 3779.21 m
3178.67 3773.82 3174.29 3769.44 3168.89 3769.44 c
3163.5 3769.44 3159.12 3773.82 3159.12 3779.21 c
3159.12 3784.61 3163.5 3788.99 3168.89 3788.99 c
3174.29 3788.99 3178.67 3784.61 3178.67 3779.21 c
f
n
2900.08 4557.96 m
2900.08 4552.57 2895.7 4548.19 2890.3 4548.19 c
2884.91 4548.19 2880.53 4552.57 2880.53 4557.96 c
2880.53 4563.36 2884.91 4567.74 2890.3 4567.74 c
2895.7 4567.74 2900.08 4563.36 2900.08 4557.96 c
f
n
2919.63 4509.91 m
2919.63 4504.51 2915.25 4500.13 2909.86 4500.13 c
2904.46 4500.13 2900.08 4504.51 2900.08 4509.91 c
2900.08 4515.3 2904.46 4519.68 2909.86 4519.68 c
2915.25 4519.68 2919.63 4515.3 2919.63 4509.91 c
f
n
2940.0 4461.84 m
2940.0 4456.45 2935.62 4452.07 2930.22 4452.07 c
2924.82 4452.07 2920.45 4456.45 2920.45 4461.84 c
2920.45 4467.24 2924.82 4471.62 2930.22 4471.62 c
2935.62 4471.62 2940.0 4467.24 2940.0 4461.84 c
f
n
2959.54 4414.6 m
2959.54 4409.2 2955.17 4404.82 2949.77 4404.82 c
2944.37 4404.82 2940.0 4409.2 2940.0 4414.6 c
2940.0 4420.0 2944.37 4424.37 2949.77 4424.37 c
2955.17 4424.37 2959.54 4420.0 2959.54 4414.6 c
f
n
2979.09 4366.54 m
2979.09 4361.14 2974.72 4356.76 2969.32 4356.76 c
2963.92 4356.76 2959.54 4361.14 2959.54 4366.54 c
2959.54 4371.93 2963.92 4376.31 2969.32 4376.31 c
2974.72 4376.31 2979.09 4371.93 2979.09 4366.54 c
f
n
2999.46 4318.48 m
2999.46 4313.08 2995.08 4308.7 2989.68 4308.7 c
2984.29 4308.7 2979.91 4313.08 2979.91 4318.48 c
2979.91 4323.88 2984.29 4328.25 2989.68 4328.25 c
2995.08 4328.25 2999.46 4323.88 2999.46 4318.48 c
f
n
3019.01 4271.23 m
3019.01 4265.83 3014.63 4261.45 3009.23 4261.45 c
3003.84 4261.45 2999.46 4265.83 2999.46 4271.23 c
2999.46 4276.63 3003.84 4281.0 3009.23 4281.0 c
3014.63 4281.0 3019.01 4276.63 3019.01 4271.23 c
f
n
3038.56 4223.17 m
3038.56 4217.77 3034.18 4213.39 3028.79 4213.39 c
3023.39 4213.39 3019.01 4217.77 3019.01 4223.17 c
3019.01 4228.57 3023.39 4232.95 3028.79 4232.95 c
3034.18 4232.95 3038.56 4228.57 3038.56 4223.17 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3078.48 4127.86 m
3078.48 4122.46 3074.1 4118.09 3068.7 4118.09 c
3063.3 4118.09 3058.93 4122.46 3058.93 4127.86 c
3058.93 4133.26 3063.3 4137.64 3068.7 4137.64 c
3074.1 4137.64 3078.48 4133.26 3078.48 4127.86 c
f
n
3098.02 4079.8 m
3098.02 4074.4 3093.65 4070.03 3088.25 4070.03 c
3082.85 4070.03 3078.48 4074.4 3078.48 4079.8 c
3078.48 4085.2 3082.85 4089.57 3088.25 4089.57 c
3093.65 4089.57 3098.02 4085.2 3098.02 4079.8 c
f
n
3117.57 4032.55 m
3117.57 4027.16 3113.2 4022.78 3107.8 4022.78 c
3102.4 4022.78 3098.02 4027.16 3098.02 4032.55 c
3098.02 4037.95 3102.4 4042.33 3107.8 4042.33 c
3113.2 4042.33 3117.57 4037.95 3117.57 4032.55 c
f
n
3137.94 3984.49 m
3137.94 3979.09 3133.56 3974.72 3128.16 3974.72 c
3122.77 3974.72 3118.39 3979.09 3118.39 3984.49 c
3118.39 3989.89 3122.77 3994.27 3128.16 3994.27 c
3133.56 3994.27 3137.94 3989.89 3137.94 3984.49 c
f
n
3157.49 3936.43 m
3157.49 3931.04 3153.11 3926.66 3147.71 3926.66 c
3142.32 3926.66 3137.94 3931.04 3137.94 3936.43 c
3137.94 3941.83 3142.32 3946.21 3147.71 3946.21 c
3153.11 3946.21 3157.49 3941.83 3157.49 3936.43 c
f
n
3177.04 3889.19 m
3177.04 3883.79 3172.66 3879.41 3167.27 3879.41 c
3161.87 3879.41 3157.49 3883.79 3157.49 3889.19 c
3157.49 3894.59 3161.87 3898.96 3167.27 3898.96 c
3172.66 3898.96 3177.04 3894.59 3177.04 3889.19 c
f
n
3197.41 3841.12 m
3197.41 3835.73 3193.03 3831.35 3187.63 3831.35 c
3182.23 3831.35 3177.86 3835.73 3177.86 3841.12 c
3177.86 3846.52 3182.23 3850.9 3187.63 3850.9 c
3193.03 3850.9 3197.41 3846.52 3197.41 3841.12 c
f
n
3216.96 3793.06 m
3216.96 3787.66 3212.58 3783.29 3207.18 3783.29 c
3201.78 3783.29 3197.41 3787.66 3197.41 3793.06 c
3197.41 3798.46 3201.78 3802.84 3207.18 3802.84 c
3212.58 3802.84 3216.96 3798.46 3216.96 3793.06 c
f
n
2838.98 4586.48 m
2838.98 4581.08 2834.61 4576.7 2829.21 4576.7 c
2823.81 4576.7 2819.43 4581.08 2819.43 4586.48 c
2819.43 4591.88 2823.81 4596.25 2829.21 4596.25 c
2834.61 4596.25 2838.98 4591.88 2838.98 4586.48 c
f
n
2863.42 4540.86 m
2863.42 4535.46 2859.05 4531.09 2853.65 4531.09 c
2848.25 4531.09 2843.87 4535.46 2843.87 4540.86 c
2843.87 4546.26 2848.25 4550.63 2853.65 4550.63 c
2859.05 4550.63 2863.42 4546.26 2863.42 4540.86 c
f
n
2887.86 4495.24 m
2887.86 4489.84 2883.48 4485.47 2878.09 4485.47 c
2872.69 4485.47 2868.31 4489.84 2868.31 4495.24 c
2868.31 4500.64 2872.69 4505.02 2878.09 4505.02 c
2883.48 4505.02 2887.86 4500.64 2887.86 4495.24 c
f
n
2912.3 4449.62 m
2912.3 4444.23 2907.92 4439.85 2902.52 4439.85 c
2897.12 4439.85 2892.75 4444.23 2892.75 4449.62 c
2892.75 4455.02 2897.12 4459.4 2902.52 4459.4 c
2907.92 4459.4 2912.3 4455.02 2912.3 4449.62 c
f
n
2936.73 4404.01 m
2936.73 4398.61 2932.36 4394.23 2926.96 4394.23 c
2921.56 4394.23 2917.19 4398.61 2917.19 4404.01 c
2917.19 4409.41 2921.56 4413.78 2926.96 4413.78 c
2932.36 4413.78 2936.73 4409.41 2936.73 4404.01 c
f
n
2961.17 4358.39 m
2961.17 4352.99 2956.8 4348.62 2951.4 4348.62 c
2946.0 4348.62 2941.62 4352.99 2941.62 4358.39 c
2941.62 4363.79 2946.0 4368.16 2951.4 4368.16 c
2956.8 4368.16 2961.17 4363.79 2961.17 4358.39 c
f
n
2985.61 4312.77 m
2985.61 4307.38 2981.23 4303.0 2975.84 4303.0 c
2970.44 4303.0 2966.06 4307.38 2966.06 4312.77 c
2966.06 4318.17 2970.44 4322.55 2975.84 4322.55 c
2981.23 4322.55 2985.61 4318.17 2985.61 4312.77 c
f
n
3010.05 4267.16 m
3010.05 4261.76 3005.67 4257.38 3000.27 4257.38 c
2994.88 4257.38 2990.5 4261.76 2990.5 4267.16 c
2990.5 4272.55 2994.88 4276.93 3000.27 4276.93 c
3005.67 4276.93 3010.05 4272.55 3010.05 4267.16 c
f
n
3034.49 4221.54 m
3034.49 4216.14 3030.11 4211.77 3024.71 4211.77 c
3019.31 4211.77 3014.94 4216.14 3014.94 4221.54 c
3014.94 4226.94 3019.31 4231.32 3024.71 4231.32 c
3030.11 4231.32 3034.49 4226.94 3034.49 4221.54 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3082.55 4129.49 m
3082.55 4124.09 3078.17 4119.71 3072.77 4119.71 c
3067.38 4119.71 3063.0 4124.09 3063.0 4129.49 c
3063.0 4134.89 3067.38 4139.27 3072.77 4139.27 c
3078.17 4139.27 3082.55 4134.89 3082.55 4129.49 c
f
n
3106.98 4083.88 m
3106.98 4078.48 3102.61 4074.1 3097.21 4074.1 c
3091.81 4074.1 3087.43 4078.48 3087.43 4083.88 c
3087.43 4089.27 3091.81 4093.65 3097.21 4093.65 c
3102.61 4093.65 3106.98 4089.27 3106.98 4083.88 c
f
n
3131.42 4038.26 m
3131.42 4032.86 3127.05 4028.48 3121.65 4028.48 c
3116.25 4028.48 3111.87 4032.86 3111.87 4038.26 c
3111.87 4043.66 3116.25 4048.03 3121.65 4048.03 c
3127.05 4048.03 3131.42 4043.66 3131.42 4038.26 c
f
n
3155.86 3992.64 m
3155.86 3987.24 3151.48 3982.86 3146.09 3982.86 c
3140.69 3982.86 3136.31 3987.24 3136.31 3992.64 c
3136.31 3998.04 3140.69 4002.41 3146.09 4002.41 c
3151.48 4002.41 3155.86 3998.04 3155.86 3992.64 c
f
n
3180.3 3947.02 m
3180.3 3941.62 3175.92 3937.25 3170.52 3937.25 c
3165.12 3937.25 3160.75 3941.62 3160.75 3947.02 c
3160.75 3952.42 3165.12 3956.8 3170.52 3956.8 c
3175.92 3956.8 3180.3 3952.42 3180.3 3947.02 c
f
n
3204.74 3901.41 m
3204.74 3896.01 3200.36 3891.63 3194.96 3891.63 c
3189.56 3891.63 3185.19 3896.01 3185.19 3901.41 c
3185.19 3906.8 3189.56 3911.18 3194.96 3911.18 c
3200.36 3911.18 3204.74 3906.8 3204.74 3901.41 c
f
n
3229.18 3855.79 m
3229.18 3850.39 3224.8 3846.01 3219.4 3846.01 c
3214.0 3846.01 3209.62 3850.39 3209.62 3855.79 c
3209.62 3861.19 3214.0 3865.56 3219.4 3865.56 c
3224.8 3865.56 3229.18 3861.19 3229.18 3855.79 c
f
n
3253.61 3810.17 m
3253.61 3804.77 3249.23 3800.39 3243.84 3800.39 c
3238.44 3800.39 3234.06 3804.77 3234.06 3810.17 c
3234.06 3815.57 3238.44 3819.95 3243.84 3819.95 c
3249.23 3819.95 3253.61 3815.57 3253.61 3810.17 c
f
n
3278.05 3764.55 m
3278.05 3759.16 3273.67 3754.78 3268.27 3754.78 c
3262.88 3754.78 3258.5 3759.16 3258.5 3764.55 c
3258.5 3769.95 3262.88 3774.33 3268.27 3774.33 c
3273.67 3774.33 3278.05 3769.95 3278.05 3764.55 c
f
n
2799.88 4562.85 m
2799.88 4557.45 2795.51 4553.08 2790.11 4553.08 c
2784.71 4553.08 2780.34 4557.45 2780.34 4562.85 c
2780.34 4568.25 2784.71 4572.63 2790.11 4572.63 c
2795.51 4572.63 2799.88 4568.25 2799.88 4562.85 c
f
n
2828.39 4519.68 m
2828.39 4514.28 2824.02 4509.91 2818.62 4509.91 c
2813.22 4509.91 2808.84 4514.28 2808.84 4519.68 c
2808.84 4525.08 2813.22 4529.46 2818.62 4529.46 c
2824.02 4529.46 2828.39 4525.08 2828.39 4519.68 c
f
n
2857.72 4476.51 m
2857.72 4471.11 2853.34 4466.73 2847.95 4466.73 c
2842.55 4466.73 2838.17 4471.11 2838.17 4476.51 c
2838.17 4481.91 2842.55 4486.28 2847.95 4486.28 c
2853.34 4486.28 2857.72 4481.91 2857.72 4476.51 c
f
n
2886.23 4433.33 m
2886.23 4427.93 2881.86 4423.56 2876.46 4423.56 c
2871.06 4423.56 2866.68 4427.93 2866.68 4433.33 c
2866.68 4438.73 2871.06 4443.11 2876.46 4443.11 c
2881.86 4443.11 2886.23 4438.73 2886.23 4433.33 c
f
n
2914.74 4390.16 m
2914.74 4384.76 2910.36 4380.39 2904.96 4380.39 c
2899.57 4380.39 2895.19 4384.76 2895.19 4390.16 c
2895.19 4395.56 2899.57 4399.93 2904.96 4399.93 c
2910.36 4399.93 2914.74 4395.56 2914.74 4390.16 c
f
n
2943.25 4347.8 m
2943.25 4342.4 2938.88 4338.03 2933.48 4338.03 c
2928.08 4338.03 2923.7 4342.4 2923.7 4347.8 c
2923.7 4353.2 2928.08 4357.58 2933.48 4357.58 c
2938.88 4357.58 2943.25 4353.2 2943.25 4347.8 c
f
n
2972.58 4304.63 m
2972.58 4299.23 2968.2 4294.85 2962.8 4294.85 c
2957.41 4294.85 2953.03 4299.23 2953.03 4304.63 c
2953.03 4310.03 2957.41 4314.4 2962.8 4314.4 c
2968.2 4314.4 2972.58 4310.03 2972.58 4304.63 c
f
n
3001.09 4261.45 m
3001.09 4256.05 2996.71 4251.68 2991.31 4251.68 c
2985.91 4251.68 2981.54 4256.05 2981.54 4261.45 c
2981.54 4266.85 2985.91 4271.23 2991.31 4271.23 c
2996.71 4271.23 3001.09 4266.85 3001.09 4261.45 c
f
n
3029.6 4218.28 m
3029.6 4212.88 3025.22 4208.51 3019.82 4208.51 c
3014.43 4208.51 3010.05 4212.88 3010.05 4218.28 c
3010.05 4223.68 3014.43 4228.05 3019.82 4228.05 c
3025.22 4228.05 3029.6 4223.68 3029.6 4218.28 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3087.43 4132.75 m
3087.43 4127.35 3083.06 4122.97 3077.66 4122.97 c
3072.26 4122.97 3067.89 4127.35 3067.89 4132.75 c
3067.89 4138.15 3072.26 4142.52 3077.66 4142.52 c
3083.06 4142.52 3087.43 4138.15 3087.43 4132.75 c
f
n
3115.95 4089.57 m
3115.95 4084.18 3111.57 4079.8 3106.17 4079.8 c
3100.77 4079.8 3096.39 4084.18 3096.39 4089.57 c
3096.39 4094.97 3100.77 4099.35 3106.17 4099.35 c
3111.57 4099.35 3115.95 4094.97 3115.95 4089.57 c
f
n
3144.46 4046.4 m
3144.46 4041.0 3140.08 4036.63 3134.68 4036.63 c
3129.28 4036.63 3124.91 4041.0 3124.91 4046.4 c
3124.91 4051.8 3129.28 4056.18 3134.68 4056.18 c
3140.08 4056.18 3144.46 4051.8 3144.46 4046.4 c
f
n
3173.78 4003.23 m
3173.78 3997.83 3169.41 3993.45 3164.01 3993.45 c
3158.61 3993.45 3154.23 3997.83 3154.23 4003.23 c
3154.23 4008.63 3158.61 4013.0 3164.01 4013.0 c
3169.41 4013.0 3173.78 4008.63 3173.78 4003.23 c
f
n
3202.29 3960.87 m
3202.29 3955.47 3197.92 3951.09 3192.52 3951.09 c
3187.12 3951.09 3182.74 3955.47 3182.74 3960.87 c
3182.74 3966.27 3187.12 3970.64 3192.52 3970.64 c
3197.92 3970.64 3202.29 3966.27 3202.29 3960.87 c
f
n
3230.8 3917.7 m
3230.8 3912.3 3226.43 3907.92 3221.03 3907.92 c
3215.63 3907.92 3211.25 3912.3 3211.25 3917.7 c
3211.25 3923.09 3215.63 3927.47 3221.03 3927.47 c
3226.43 3927.47 3230.8 3923.09 3230.8 3917.7 c
f
n
3259.31 3874.52 m
3259.31 3869.12 3254.94 3864.75 3249.54 3864.75 c
3244.14 3864.75 3239.77 3869.12 3239.77 3874.52 c
3239.77 3879.92 3244.14 3884.3 3249.54 3884.3 c
3254.94 3884.3 3259.31 3879.92 3259.31 3874.52 c
f
n
3288.64 3831.35 m
3288.64 3825.95 3284.26 3821.57 3278.86 3821.57 c
3273.46 3821.57 3269.09 3825.95 3269.09 3831.35 c
3269.09 3836.75 3273.46 3841.12 3278.86 3841.12 c
3284.26 3841.12 3288.64 3836.75 3288.64 3831.35 c
f
n
3317.15 3788.18 m
3317.15 3782.78 3312.77 3778.4 3307.38 3778.4 c
3301.98 3778.4 3297.6 3782.78 3297.6 3788.18 c
3297.6 3793.57 3301.98 3797.95 3307.38 3797.95 c
3312.77 3797.95 3317.15 3793.57 3317.15 3788.18 c
f
n
2730.64 4575.07 m
2730.64 4569.67 2726.27 4565.3 2720.87 4565.3 c
2715.47 4565.3 2711.09 4569.67 2711.09 4575.07 c
2711.09 4580.47 2715.47 4584.85 2720.87 4584.85 c
2726.27 4584.85 2730.64 4580.47 2730.64 4575.07 c
f
n
2763.23 4535.16 m
2763.23 4529.76 2758.85 4525.38 2753.45 4525.38 c
2748.05 4525.38 2743.68 4529.76 2743.68 4535.16 c
2743.68 4540.55 2748.05 4544.93 2753.45 4544.93 c
2758.85 4544.93 2763.23 4540.55 2763.23 4535.16 c
f
n
2795.81 4495.24 m
2795.81 4489.84 2791.43 4485.47 2786.04 4485.47 c
2780.64 4485.47 2776.26 4489.84 2776.26 4495.24 c
2776.26 4500.64 2780.64 4505.02 2786.04 4505.02 c
2791.43 4505.02 2795.81 4500.64 2795.81 4495.24 c
f
n
2829.21 4455.33 m
2829.21 4449.93 2824.83 4445.55 2819.43 4445.55 c
2814.04 4445.55 2809.66 4449.93 2809.66 4455.33 c
2809.66 4460.73 2814.04 4465.1 2819.43 4465.1 c
2824.83 4465.1 2829.21 4460.73 2829.21 4455.33 c
f
n
2861.79 4415.41 m
2861.79 4410.02 2857.42 4405.64 2852.02 4405.64 c
2846.62 4405.64 2842.24 4410.02 2842.24 4415.41 c
2842.24 4420.81 2846.62 4425.19 2852.02 4425.19 c
2857.42 4425.19 2861.79 4420.81 2861.79 4415.41 c
f
n
2894.38 4375.5 m
2894.38 4370.1 2890.0 4365.72 2884.6 4365.72 c
2879.2 4365.72 2874.83 4370.1 2874.83 4375.5 c
2874.83 4380.89 2879.2 4385.27 2884.6 4385.27 c
2890.0 4385.27 2894.38 4380.89 2894.38 4375.5 c
f
n
2926.96 4335.58 m
2926.96 4330.18 2922.59 4325.81 2917.19 4325.81 c
2911.79 4325.81 2907.41 4330.18 2907.41 4335.58 c
2907.41 4340.98 2911.79 4345.36 2917.19 4345.36 c
2922.59 4345.36 2926.96 4340.98 2926.96 4335.58 c
f
n
2960.36 4295.67 m
2960.36 4290.27 2955.98 4285.89 2950.58 4285.89 c
2945.18 4285.89 2940.81 4290.27 2940.81 4295.67 c
2940.81 4301.07 2945.18 4305.44 2950.58 4305.44 c
2955.98 4305.44 2960.36 4301.07 2960.36 4295.67 c
f
n
2992.94 4255.75 m
2992.94 4250.36 2988.57 4245.98 2983.17 4245.98 c
2977.77 4245.98 2973.39 4250.36 2973.39 4255.75 c
2973.39 4261.15 2977.77 4265.53 2983.17 4265.53 c
2988.57 4265.53 2992.94 4261.15 2992.94 4255.75 c
f
n
3025.53 4215.84 m
3025.53 4210.44 3021.15 4206.06 3015.75 4206.06 c
3010.35 4206.06 3005.98 4210.44 3005.98 4215.84 c
3005.98 4221.23 3010.35 4225.61 3015.75 4225.61 c
3021.15 4225.61 3025.53 4221.23 3025.53 4215.84 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3091.51 4135.19 m
3091.51 4129.79 3087.13 4125.42 3081.73 4125.42 c
3076.34 4125.42 3071.96 4129.79 3071.96 4135.19 c
3071.96 4140.59 3076.34 4144.97 3081.73 4144.97 c
3087.13 4144.97 3091.51 4140.59 3091.51 4135.19 c
f
n
3124.09 4095.28 m
3124.09 4089.88 3119.71 4085.5 3114.32 4085.5 c
3108.92 4085.5 3104.54 4089.88 3104.54 4095.28 c
3104.54 4100.68 3108.92 4105.05 3114.32 4105.05 c
3119.71 4105.05 3124.09 4100.68 3124.09 4095.28 c
f
n
3156.68 4055.36 m
3156.68 4049.96 3152.3 4045.59 3146.9 4045.59 c
3141.5 4045.59 3137.12 4049.96 3137.12 4055.36 c
3137.12 4060.76 3141.5 4065.14 3146.9 4065.14 c
3152.3 4065.14 3156.68 4060.76 3156.68 4055.36 c
f
n
3190.07 4015.45 m
3190.07 4010.05 3185.7 4005.67 3180.3 4005.67 c
3174.9 4005.67 3170.52 4010.05 3170.52 4015.45 c
3170.52 4020.85 3174.9 4025.22 3180.3 4025.22 c
3185.7 4025.22 3190.07 4020.85 3190.07 4015.45 c
f
n
3222.66 3975.53 m
3222.66 3970.13 3218.28 3965.76 3212.88 3965.76 c
3207.48 3965.76 3203.11 3970.13 3203.11 3975.53 c
3203.11 3980.93 3207.48 3985.31 3212.88 3985.31 c
3218.28 3985.31 3222.66 3980.93 3222.66 3975.53 c
f
n
3255.24 3935.62 m
3255.24 3930.22 3250.86 3925.84 3245.46 3925.84 c
3240.07 3925.84 3235.69 3930.22 3235.69 3935.62 c
3235.69 3941.02 3240.07 3945.39 3245.46 3945.39 c
3250.86 3945.39 3255.24 3941.02 3255.24 3935.62 c
f
n
3287.82 3895.7 m
3287.82 3890.3 3283.45 3885.93 3278.05 3885.93 c
3272.65 3885.93 3268.27 3890.3 3268.27 3895.7 c
3268.27 3901.1 3272.65 3905.48 3278.05 3905.48 c
3283.45 3905.48 3287.82 3901.1 3287.82 3895.7 c
f
n
3321.22 3855.79 m
3321.22 3850.39 3316.85 3846.01 3311.45 3846.01 c
3306.05 3846.01 3301.67 3850.39 3301.67 3855.79 c
3301.67 3861.19 3306.05 3865.56 3311.45 3865.56 c
3316.85 3865.56 3321.22 3861.19 3321.22 3855.79 c
f
n
3353.81 3815.87 m
3353.81 3810.47 3349.43 3806.1 3344.03 3806.1 c
3338.63 3806.1 3334.26 3810.47 3334.26 3815.87 c
3334.26 3821.27 3338.63 3825.65 3344.03 3825.65 c
3349.43 3825.65 3353.81 3821.27 3353.81 3815.87 c
f
n
3386.39 3775.96 m
3386.39 3770.56 3382.02 3766.18 3376.62 3766.18 c
3371.22 3766.18 3366.84 3770.56 3366.84 3775.96 c
3366.84 3781.36 3371.22 3785.73 3376.62 3785.73 c
3382.02 3785.73 3386.39 3781.36 3386.39 3775.96 c
f
n
2656.52 4577.52 m
2656.52 4572.12 2652.14 4567.74 2646.74 4567.74 c
2641.34 4567.74 2636.96 4572.12 2636.96 4577.52 c
2636.96 4582.91 2641.34 4587.29 2646.74 4587.29 c
2652.14 4587.29 2656.52 4582.91 2656.52 4577.52 c
f
n
2692.36 4541.68 m
2692.36 4536.28 2687.98 4531.9 2682.58 4531.9 c
2677.18 4531.9 2672.81 4536.28 2672.81 4541.68 c
2672.81 4547.07 2677.18 4551.45 2682.58 4551.45 c
2687.98 4551.45 2692.36 4547.07 2692.36 4541.68 c
f
n
2729.02 4505.02 m
2729.02 4499.62 2724.64 4495.24 2719.24 4495.24 c
2713.84 4495.24 2709.46 4499.62 2709.46 4505.02 c
2709.46 4510.41 2713.84 4514.79 2719.24 4514.79 c
2724.64 4514.79 2729.02 4510.41 2729.02 4505.02 c
f
n
2765.67 4468.36 m
2765.67 4462.96 2761.3 4458.59 2755.9 4458.59 c
2750.5 4458.59 2746.12 4462.96 2746.12 4468.36 c
2746.12 4473.76 2750.5 4478.14 2755.9 4478.14 c
2761.3 4478.14 2765.67 4473.76 2765.67 4468.36 c
f
n
2802.33 4431.7 m
2802.33 4426.3 2797.95 4421.93 2792.55 4421.93 c
2787.16 4421.93 2782.78 4426.3 2782.78 4431.7 c
2782.78 4437.1 2787.16 4441.48 2792.55 4441.48 c
2797.95 4441.48 2802.33 4437.1 2802.33 4431.7 c
f
n
2838.98 4395.05 m
2838.98 4389.65 2834.61 4385.27 2829.21 4385.27 c
2823.81 4385.27 2819.43 4389.65 2819.43 4395.05 c
2819.43 4400.45 2823.81 4404.82 2829.21 4404.82 c
2834.61 4404.82 2838.98 4400.45 2838.98 4395.05 c
f
n
2875.64 4358.39 m
2875.64 4352.99 2871.27 4348.62 2865.87 4348.62 c
2860.47 4348.62 2856.09 4352.99 2856.09 4358.39 c
2856.09 4363.79 2860.47 4368.16 2865.87 4368.16 c
2871.27 4368.16 2875.64 4363.79 2875.64 4358.39 c
f
n
2912.3 4321.73 m
2912.3 4316.34 2907.92 4311.96 2902.52 4311.96 c
2897.12 4311.96 2892.75 4316.34 2892.75 4321.73 c
2892.75 4327.13 2897.12 4331.51 2902.52 4331.51 c
2907.92 4331.51 2912.3 4327.13 2912.3 4321.73 c
f
n
2948.95 4285.08 m
2948.95 4279.68 2944.58 4275.3 2939.18 4275.3 c
2933.78 4275.3 2929.41 4279.68 2929.41 4285.08 c
2929.41 4290.48 2933.78 4294.85 2939.18 4294.85 c
2944.58 4294.85 2948.95 4290.48 2948.95 4285.08 c
f
n
2985.61 4248.42 m
2985.61 4243.02 2981.23 4238.64 2975.84 4238.64 c
2970.44 4238.64 2966.06 4243.02 2966.06 4248.42 c
2966.06 4253.82 2970.44 4258.2 2975.84 4258.2 c
2981.23 4258.2 2985.61 4253.82 2985.61 4248.42 c
f
n
3022.27 4211.77 m
3022.27 4206.37 3017.89 4201.99 3012.49 4201.99 c
3007.09 4201.99 3002.72 4206.37 3002.72 4211.77 c
3002.72 4217.16 3007.09 4221.54 3012.49 4221.54 c
3017.89 4221.54 3022.27 4217.16 3022.27 4211.77 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3094.77 4139.27 m
3094.77 4133.87 3090.39 4129.49 3084.99 4129.49 c
3079.59 4129.49 3075.21 4133.87 3075.21 4139.27 c
3075.21 4144.66 3079.59 4149.04 3084.99 4149.04 c
3090.39 4149.04 3094.77 4144.66 3094.77 4139.27 c
f
n
3131.42 4102.61 m
3131.42 4097.21 3127.05 4092.84 3121.65 4092.84 c
3116.25 4092.84 3111.87 4097.21 3111.87 4102.61 c
3111.87 4108.01 3116.25 4112.38 3121.65 4112.38 c
3127.05 4112.38 3131.42 4108.01 3131.42 4102.61 c
f
n
3168.08 4065.95 m
3168.08 4060.55 3163.7 4056.18 3158.3 4056.18 c
3152.91 4056.18 3148.53 4060.55 3148.53 4065.95 c
3148.53 4071.35 3152.91 4075.73 3158.3 4075.73 c
3163.7 4075.73 3168.08 4071.35 3168.08 4065.95 c
f
n
3204.74 4029.3 m
3204.74 4023.9 3200.36 4019.52 3194.96 4019.52 c
3189.56 4019.52 3185.19 4023.9 3185.19 4029.3 c
3185.19 4034.7 3189.56 4039.07 3194.96 4039.07 c
3200.36 4039.07 3204.74 4034.7 3204.74 4029.3 c
f
n
3241.39 3992.64 m
3241.39 3987.24 3237.02 3982.86 3231.62 3982.86 c
3226.22 3982.86 3221.84 3987.24 3221.84 3992.64 c
3221.84 3998.04 3226.22 4002.41 3231.62 4002.41 c
3237.02 4002.41 3241.39 3998.04 3241.39 3992.64 c
f
n
3278.05 3955.98 m
3278.05 3950.59 3273.67 3946.21 3268.27 3946.21 c
3262.88 3946.21 3258.5 3950.59 3258.5 3955.98 c
3258.5 3961.38 3262.88 3965.76 3268.27 3965.76 c
3273.67 3965.76 3278.05 3961.38 3278.05 3955.98 c
f
n
3314.71 3919.32 m
3314.71 3913.93 3310.33 3909.55 3304.93 3909.55 c
3299.53 3909.55 3295.16 3913.93 3295.16 3919.32 c
3295.16 3924.72 3299.53 3929.1 3304.93 3929.1 c
3310.33 3929.1 3314.71 3924.72 3314.71 3919.32 c
f
n
3351.36 3882.67 m
3351.36 3877.27 3346.98 3872.89 3341.59 3872.89 c
3336.19 3872.89 3331.81 3877.27 3331.81 3882.67 c
3331.81 3888.07 3336.19 3892.45 3341.59 3892.45 c
3346.98 3892.45 3351.36 3888.07 3351.36 3882.67 c
f
n
3388.02 3846.01 m
3388.02 3840.61 3383.64 3836.24 3378.25 3836.24 c
3372.85 3836.24 3368.47 3840.61 3368.47 3846.01 c
3368.47 3851.41 3372.85 3855.79 3378.25 3855.79 c
3383.64 3855.79 3388.02 3851.41 3388.02 3846.01 c
f
n
3424.68 3809.36 m
3424.68 3803.96 3420.3 3799.58 3414.9 3799.58 c
3409.5 3799.58 3405.12 3803.96 3405.12 3809.36 c
3405.12 3814.75 3409.5 3819.13 3414.9 3819.13 c
3420.3 3819.13 3424.68 3814.75 3424.68 3809.36 c
f
n
3460.52 3773.52 m
3460.52 3768.12 3456.14 3763.74 3450.74 3763.74 c
3445.34 3763.74 3440.97 3768.12 3440.97 3773.52 c
3440.97 3778.91 3445.34 3783.29 3450.74 3783.29 c
3456.14 3783.29 3460.52 3778.91 3460.52 3773.52 c
f
n
2658.96 4503.39 m
2658.96 4497.99 2654.58 4493.61 2649.18 4493.61 c
2643.79 4493.61 2639.41 4497.99 2639.41 4503.39 c
2639.41 4508.79 2643.79 4513.16 2649.18 4513.16 c
2654.58 4513.16 2658.96 4508.79 2658.96 4503.39 c
f
n
2698.88 4470.8 m
2698.88 4465.41 2694.5 4461.03 2689.1 4461.03 c
2683.7 4461.03 2679.32 4465.41 2679.32 4470.8 c
2679.32 4476.2 2683.7 4480.58 2689.1 4480.58 c
2694.5 4480.58 2698.88 4476.2 2698.88 4470.8 c
f
n
2738.79 4438.22 m
2738.79 4432.82 2734.41 4428.45 2729.02 4428.45 c
2723.62 4428.45 2719.24 4432.82 2719.24 4438.22 c
2719.24 4443.62 2723.62 4448.0 2729.02 4448.0 c
2734.41 4448.0 2738.79 4443.62 2738.79 4438.22 c
f
n
2778.7 4404.82 m
2778.7 4399.43 2774.33 4395.05 2768.93 4395.05 c
2763.53 4395.05 2759.16 4399.43 2759.16 4404.82 c
2759.16 4410.22 2763.53 4414.6 2768.93 4414.6 c
2774.33 4414.6 2778.7 4410.22 2778.7 4404.82 c
f
n
2818.62 4372.24 m
2818.62 4366.84 2814.24 4362.46 2808.84 4362.46 c
2803.45 4362.46 2799.07 4366.84 2799.07 4372.24 c
2799.07 4377.64 2803.45 4382.02 2808.84 4382.02 c
2814.24 4382.02 2818.62 4377.64 2818.62 4372.24 c
f
n
2858.54 4339.66 m
2858.54 4334.26 2854.16 4329.88 2848.76 4329.88 c
2843.36 4329.88 2838.98 4334.26 2838.98 4339.66 c
2838.98 4345.05 2843.36 4349.43 2848.76 4349.43 c
2854.16 4349.43 2858.54 4345.05 2858.54 4339.66 c
f
n
2898.45 4307.07 m
2898.45 4301.67 2894.07 4297.3 2888.68 4297.3 c
2883.28 4297.3 2878.9 4301.67 2878.9 4307.07 c
2878.9 4312.47 2883.28 4316.85 2888.68 4316.85 c
2894.07 4316.85 2898.45 4312.47 2898.45 4307.07 c
f
n
2938.36 4273.67 m
2938.36 4268.27 2933.99 4263.9 2928.59 4263.9 c
2923.19 4263.9 2918.82 4268.27 2918.82 4273.67 c
2918.82 4279.07 2923.19 4283.45 2928.59 4283.45 c
2933.99 4283.45 2938.36 4279.07 2938.36 4273.67 c
f
n
2978.28 4241.09 m
2978.28 4235.69 2973.9 4231.32 2968.5 4231.32 c
2963.11 4231.32 2958.73 4235.69 2958.73 4241.09 c
2958.73 4246.49 2963.11 4250.86 2968.5 4250.86 c
2973.9 4250.86 2978.28 4246.49 2978.28 4241.09 c
f
n
3018.2 4208.51 m
3018.2 4203.11 3013.82 4198.73 3008.42 4198.73 c
3003.02 4198.73 2998.64 4203.11 2998.64 4208.51 c
2998.64 4213.91 3003.02 4218.28 3008.42 4218.28 c
3013.82 4218.28 3018.2 4213.91 3018.2 4208.51 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3098.84 4142.52 m
3098.84 4137.12 3094.46 4132.75 3089.07 4132.75 c
3083.67 4132.75 3079.29 4137.12 3079.29 4142.52 c
3079.29 4147.92 3083.67 4152.3 3089.07 4152.3 c
3094.46 4152.3 3098.84 4147.92 3098.84 4142.52 c
f
n
3138.75 4109.94 m
3138.75 4104.54 3134.38 4100.16 3128.98 4100.16 c
3123.58 4100.16 3119.2 4104.54 3119.2 4109.94 c
3119.2 4115.34 3123.58 4119.71 3128.98 4119.71 c
3134.38 4119.71 3138.75 4115.34 3138.75 4109.94 c
f
n
3178.67 4077.36 m
3178.67 4071.96 3174.29 4067.58 3168.89 4067.58 c
3163.5 4067.58 3159.12 4071.96 3159.12 4077.36 c
3159.12 4082.75 3163.5 4087.13 3168.89 4087.13 c
3174.29 4087.13 3178.67 4082.75 3178.67 4077.36 c
f
n
3218.59 4043.96 m
3218.59 4038.56 3214.21 4034.18 3208.81 4034.18 c
3203.41 4034.18 3199.04 4038.56 3199.04 4043.96 c
3199.04 4049.36 3203.41 4053.73 3208.81 4053.73 c
3214.21 4053.73 3218.59 4049.36 3218.59 4043.96 c
f
n
3258.5 4011.38 m
3258.5 4005.98 3254.12 4001.6 3248.72 4001.6 c
3243.32 4001.6 3238.95 4005.98 3238.95 4011.38 c
3238.95 4016.77 3243.32 4021.15 3248.72 4021.15 c
3254.12 4021.15 3258.5 4016.77 3258.5 4011.38 c
f
n
3298.41 3978.79 m
3298.41 3973.39 3294.04 3969.02 3288.64 3969.02 c
3283.24 3969.02 3278.86 3973.39 3278.86 3978.79 c
3278.86 3984.19 3283.24 3988.57 3288.64 3988.57 c
3294.04 3988.57 3298.41 3984.19 3298.41 3978.79 c
f
n
3338.33 3946.21 m
3338.33 3940.81 3333.95 3936.43 3328.55 3936.43 c
3323.16 3936.43 3318.78 3940.81 3318.78 3946.21 c
3318.78 3951.61 3323.16 3955.98 3328.55 3955.98 c
3333.95 3955.98 3338.33 3951.61 3338.33 3946.21 c
f
n
3378.25 3912.81 m
3378.25 3907.41 3373.87 3903.04 3368.47 3903.04 c
3363.07 3903.04 3358.7 3907.41 3358.7 3912.81 c
3358.7 3918.21 3363.07 3922.59 3368.47 3922.59 c
3373.87 3922.59 3378.25 3918.21 3378.25 3912.81 c
f
n
3418.16 3880.23 m
3418.16 3874.83 3413.78 3870.45 3408.38 3870.45 c
3402.98 3870.45 3398.61 3874.83 3398.61 3880.23 c
3398.61 3885.62 3402.98 3890.0 3408.38 3890.0 c
3413.78 3890.0 3418.16 3885.62 3418.16 3880.23 c
f
n
3458.07 3847.64 m
3458.07 3842.24 3453.7 3837.87 3448.3 3837.87 c
3442.9 3837.87 3438.52 3842.24 3438.52 3847.64 c
3438.52 3853.04 3442.9 3857.42 3448.3 3857.42 c
3453.7 3857.42 3458.07 3853.04 3458.07 3847.64 c
f
n
2671.18 4434.15 m
2671.18 4428.75 2666.8 4424.37 2661.4 4424.37 c
2656.0 4424.37 2651.63 4428.75 2651.63 4434.15 c
2651.63 4439.55 2656.0 4443.92 2661.4 4443.92 c
2666.8 4443.92 2671.18 4439.55 2671.18 4434.15 c
f
n
2714.35 4405.64 m
2714.35 4400.24 2709.98 4395.86 2704.58 4395.86 c
2699.18 4395.86 2694.8 4400.24 2694.8 4405.64 c
2694.8 4411.04 2699.18 4415.41 2704.58 4415.41 c
2709.98 4415.41 2714.35 4411.04 2714.35 4405.64 c
f
n
2757.53 4376.31 m
2757.53 4370.91 2753.15 4366.54 2747.75 4366.54 c
2742.35 4366.54 2737.98 4370.91 2737.98 4376.31 c
2737.98 4381.71 2742.35 4386.09 2747.75 4386.09 c
2753.15 4386.09 2757.53 4381.71 2757.53 4376.31 c
f
n
2800.7 4347.8 m
2800.7 4342.4 2796.32 4338.03 2790.93 4338.03 c
2785.53 4338.03 2781.15 4342.4 2781.15 4347.8 c
2781.15 4353.2 2785.53 4357.58 2790.93 4357.58 c
2796.32 4357.58 2800.7 4353.2 2800.7 4347.8 c
f
n
2843.87 4319.29 m
2843.87 4313.89 2839.5 4309.52 2834.1 4309.52 c
2828.7 4309.52 2824.32 4313.89 2824.32 4319.29 c
2824.32 4324.69 2828.7 4329.07 2834.1 4329.07 c
2839.5 4329.07 2843.87 4324.69 2843.87 4319.29 c
f
n
2886.23 4290.78 m
2886.23 4285.38 2881.86 4281.0 2876.46 4281.0 c
2871.06 4281.0 2866.68 4285.38 2866.68 4290.78 c
2866.68 4296.18 2871.06 4300.55 2876.46 4300.55 c
2881.86 4300.55 2886.23 4296.18 2886.23 4290.78 c
f
n
2929.41 4261.45 m
2929.41 4256.05 2925.03 4251.68 2919.63 4251.68 c
2914.23 4251.68 2909.86 4256.05 2909.86 4261.45 c
2909.86 4266.85 2914.23 4271.23 2919.63 4271.23 c
2925.03 4271.23 2929.41 4266.85 2929.41 4261.45 c
f
n
2972.58 4232.95 m
2972.58 4227.55 2968.2 4223.17 2962.8 4223.17 c
2957.41 4223.17 2953.03 4227.55 2953.03 4232.95 c
2953.03 4238.34 2957.41 4242.72 2962.8 4242.72 c
2968.2 4242.72 2972.58 4238.34 2972.58 4232.95 c
f
n
3015.75 4204.43 m
3015.75 4199.04 3011.38 4194.66 3005.98 4194.66 c
3000.58 4194.66 2996.2 4199.04 2996.2 4204.43 c
2996.2 4209.83 3000.58 4214.21 3005.98 4214.21 c
3011.38 4214.21 3015.75 4209.83 3015.75 4204.43 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3101.29 4146.6 m
3101.29 4141.2 3096.91 4136.82 3091.51 4136.82 c
3086.11 4136.82 3081.73 4141.2 3081.73 4146.6 c
3081.73 4152.0 3086.11 4156.37 3091.51 4156.37 c
3096.91 4156.37 3101.29 4152.0 3101.29 4146.6 c
f
n
3144.46 4118.09 m
3144.46 4112.69 3140.08 4108.31 3134.68 4108.31 c
3129.28 4108.31 3124.91 4112.69 3124.91 4118.09 c
3124.91 4123.48 3129.28 4127.86 3134.68 4127.86 c
3140.08 4127.86 3144.46 4123.48 3144.46 4118.09 c
f
n
3187.63 4089.57 m
3187.63 4084.18 3183.25 4079.8 3177.86 4079.8 c
3172.46 4079.8 3168.08 4084.18 3168.08 4089.57 c
3168.08 4094.97 3172.46 4099.35 3177.86 4099.35 c
3183.25 4099.35 3187.63 4094.97 3187.63 4089.57 c
f
n
3230.8 4060.25 m
3230.8 4054.85 3226.43 4050.48 3221.03 4050.48 c
3215.63 4050.48 3211.25 4054.85 3211.25 4060.25 c
3211.25 4065.65 3215.63 4070.03 3221.03 4070.03 c
3226.43 4070.03 3230.8 4065.65 3230.8 4060.25 c
f
n
3273.16 4031.74 m
3273.16 4026.34 3268.79 4021.96 3263.39 4021.96 c
3257.99 4021.96 3253.61 4026.34 3253.61 4031.74 c
3253.61 4037.14 3257.99 4041.52 3263.39 4041.52 c
3268.79 4041.52 3273.16 4037.14 3273.16 4031.74 c
f
n
3316.34 4003.23 m
3316.34 3997.83 3311.96 3993.45 3306.56 3993.45 c
3301.16 3993.45 3296.79 3997.83 3296.79 4003.23 c
3296.79 4008.63 3301.16 4013.0 3306.56 4013.0 c
3311.96 4013.0 3316.34 4008.63 3316.34 4003.23 c
f
n
3359.51 3974.72 m
3359.51 3969.32 3355.13 3964.94 3349.73 3964.94 c
3344.34 3964.94 3339.96 3969.32 3339.96 3974.72 c
3339.96 3980.12 3344.34 3984.49 3349.73 3984.49 c
3355.13 3984.49 3359.51 3980.12 3359.51 3974.72 c
f
n
3402.68 3945.39 m
3402.68 3940.0 3398.3 3935.62 3392.91 3935.62 c
3387.51 3935.62 3383.13 3940.0 3383.13 3945.39 c
3383.13 3950.79 3387.51 3955.17 3392.91 3955.17 c
3398.3 3955.17 3402.68 3950.79 3402.68 3945.39 c
f
n
3445.86 3916.88 m
3445.86 3911.48 3441.48 3907.11 3436.08 3907.11 c
3430.68 3907.11 3426.3 3911.48 3426.3 3916.88 c
3426.3 3922.28 3430.68 3926.66 3436.08 3926.66 c
3441.48 3926.66 3445.86 3922.28 3445.86 3916.88 c
f
n
2647.55 4395.05 m
2647.55 4389.65 2643.18 4385.27 2637.78 4385.27 c
2632.38 4385.27 2628.0 4389.65 2628.0 4395.05 c
2628.0 4400.45 2632.38 4404.82 2637.78 4404.82 c
2643.18 4404.82 2647.55 4400.45 2647.55 4395.05 c
f
n
2693.17 4370.61 m
2693.17 4365.21 2688.8 4360.84 2683.4 4360.84 c
2678.0 4360.84 2673.62 4365.21 2673.62 4370.61 c
2673.62 4376.01 2678.0 4380.39 2683.4 4380.39 c
2688.8 4380.39 2693.17 4376.01 2693.17 4370.61 c
f
n
2738.79 4346.17 m
2738.79 4340.77 2734.41 4336.4 2729.02 4336.4 c
2723.62 4336.4 2719.24 4340.77 2719.24 4346.17 c
2719.24 4351.57 2723.62 4355.95 2729.02 4355.95 c
2734.41 4355.95 2738.79 4351.57 2738.79 4346.17 c
f
n
2784.41 4321.73 m
2784.41 4316.34 2780.03 4311.96 2774.63 4311.96 c
2769.23 4311.96 2764.86 4316.34 2764.86 4321.73 c
2764.86 4327.13 2769.23 4331.51 2774.63 4331.51 c
2780.03 4331.51 2784.41 4327.13 2784.41 4321.73 c
f
n
2830.02 4297.3 m
2830.02 4291.9 2825.65 4287.52 2820.25 4287.52 c
2814.85 4287.52 2810.47 4291.9 2810.47 4297.3 c
2810.47 4302.7 2814.85 4307.07 2820.25 4307.07 c
2825.65 4307.07 2830.02 4302.7 2830.02 4297.3 c
f
n
2875.64 4272.86 m
2875.64 4267.46 2871.27 4263.08 2865.87 4263.08 c
2860.47 4263.08 2856.09 4267.46 2856.09 4272.86 c
2856.09 4278.26 2860.47 4282.63 2865.87 4282.63 c
2871.27 4282.63 2875.64 4278.26 2875.64 4272.86 c
f
n
2921.26 4248.42 m
2921.26 4243.02 2916.88 4238.64 2911.48 4238.64 c
2906.09 4238.64 2901.71 4243.02 2901.71 4248.42 c
2901.71 4253.82 2906.09 4258.2 2911.48 4258.2 c
2916.88 4258.2 2921.26 4253.82 2921.26 4248.42 c
f
n
2966.88 4223.98 m
2966.88 4218.59 2962.5 4214.21 2957.1 4214.21 c
2951.7 4214.21 2947.32 4218.59 2947.32 4223.98 c
2947.32 4229.38 2951.7 4233.76 2957.1 4233.76 c
2962.5 4233.76 2966.88 4229.38 2966.88 4223.98 c
f
n
3012.49 4199.55 m
3012.49 4194.15 3008.12 4189.77 3002.72 4189.77 c
2997.32 4189.77 2992.94 4194.15 2992.94 4199.55 c
2992.94 4204.95 2997.32 4209.32 3002.72 4209.32 c
3008.12 4209.32 3012.49 4204.95 3012.49 4199.55 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3104.54 4151.48 m
3104.54 4146.09 3100.16 4141.71 3094.77 4141.71 c
3089.37 4141.71 3084.99 4146.09 3084.99 4151.48 c
3084.99 4156.88 3089.37 4161.26 3094.77 4161.26 c
3100.16 4161.26 3104.54 4156.88 3104.54 4151.48 c
f
n
3150.16 4127.05 m
3150.16 4121.65 3145.78 4117.27 3140.38 4117.27 c
3134.98 4117.27 3130.61 4121.65 3130.61 4127.05 c
3130.61 4132.45 3134.98 4136.82 3140.38 4136.82 c
3145.78 4136.82 3150.16 4132.45 3150.16 4127.05 c
f
n
3195.78 4102.61 m
3195.78 4097.21 3191.4 4092.84 3186.0 4092.84 c
3180.6 4092.84 3176.23 4097.21 3176.23 4102.61 c
3176.23 4108.01 3180.6 4112.38 3186.0 4112.38 c
3191.4 4112.38 3195.78 4108.01 3195.78 4102.61 c
f
n
3241.39 4078.17 m
3241.39 4072.77 3237.02 4068.39 3231.62 4068.39 c
3226.22 4068.39 3221.84 4072.77 3221.84 4078.17 c
3221.84 4083.57 3226.22 4087.95 3231.62 4087.95 c
3237.02 4087.95 3241.39 4083.57 3241.39 4078.17 c
f
n
3287.01 4053.73 m
3287.01 4048.34 3282.63 4043.96 3277.23 4043.96 c
3271.84 4043.96 3267.46 4048.34 3267.46 4053.73 c
3267.46 4059.13 3271.84 4063.51 3277.23 4063.51 c
3282.63 4063.51 3287.01 4059.13 3287.01 4053.73 c
f
n
3332.63 4029.3 m
3332.63 4023.9 3328.25 4019.52 3322.85 4019.52 c
3317.45 4019.52 3313.08 4023.9 3313.08 4029.3 c
3313.08 4034.7 3317.45 4039.07 3322.85 4039.07 c
3328.25 4039.07 3332.63 4034.7 3332.63 4029.3 c
f
n
3378.25 4004.86 m
3378.25 3999.46 3373.87 3995.08 3368.47 3995.08 c
3363.07 3995.08 3358.7 3999.46 3358.7 4004.86 c
3358.7 4010.26 3363.07 4014.63 3368.47 4014.63 c
3373.87 4014.63 3378.25 4010.26 3378.25 4004.86 c
f
n
3423.86 3980.42 m
3423.86 3975.02 3419.48 3970.64 3414.09 3970.64 c
3408.69 3970.64 3404.31 3975.02 3404.31 3980.42 c
3404.31 3985.82 3408.69 3990.2 3414.09 3990.2 c
3419.48 3990.2 3423.86 3985.82 3423.86 3980.42 c
f
n
3469.48 3955.98 m
3469.48 3950.59 3465.1 3946.21 3459.7 3946.21 c
3454.3 3946.21 3449.93 3950.59 3449.93 3955.98 c
3449.93 3961.38 3454.3 3965.76 3459.7 3965.76 c
3465.1 3965.76 3469.48 3961.38 3469.48 3955.98 c
f
n
2676.07 4333.95 m
2676.07 4328.55 2671.69 4324.18 2666.29 4324.18 c
2660.89 4324.18 2656.52 4328.55 2656.52 4333.95 c
2656.52 4339.35 2660.89 4343.73 2666.29 4343.73 c
2671.69 4343.73 2676.07 4339.35 2676.07 4333.95 c
f
n
2724.13 4314.4 m
2724.13 4309.0 2719.75 4304.63 2714.35 4304.63 c
2708.95 4304.63 2704.58 4309.0 2704.58 4314.4 c
2704.58 4319.8 2708.95 4324.18 2714.35 4324.18 c
2719.75 4324.18 2724.13 4319.8 2724.13 4314.4 c
f
n
2772.19 4294.04 m
2772.19 4288.64 2767.81 4284.26 2762.41 4284.26 c
2757.02 4284.26 2752.64 4288.64 2752.64 4294.04 c
2752.64 4299.44 2757.02 4303.81 2762.41 4303.81 c
2767.81 4303.81 2772.19 4299.44 2772.19 4294.04 c
f
n
2819.43 4274.49 m
2819.43 4269.09 2815.06 4264.71 2809.66 4264.71 c
2804.26 4264.71 2799.88 4269.09 2799.88 4274.49 c
2799.88 4279.89 2804.26 4284.26 2809.66 4284.26 c
2815.06 4284.26 2819.43 4279.89 2819.43 4274.49 c
f
n
2867.5 4254.94 m
2867.5 4249.54 2863.12 4245.16 2857.72 4245.16 c
2852.32 4245.16 2847.95 4249.54 2847.95 4254.94 c
2847.95 4260.34 2852.32 4264.71 2857.72 4264.71 c
2863.12 4264.71 2867.5 4260.34 2867.5 4254.94 c
f
n
2915.55 4234.57 m
2915.55 4229.18 2911.18 4224.8 2905.78 4224.8 c
2900.38 4224.8 2896.01 4229.18 2896.01 4234.57 c
2896.01 4239.97 2900.38 4244.35 2905.78 4244.35 c
2911.18 4244.35 2915.55 4239.97 2915.55 4234.57 c
f
n
2962.8 4215.02 m
2962.8 4209.62 2958.43 4205.25 2953.03 4205.25 c
2947.63 4205.25 2943.25 4209.62 2943.25 4215.02 c
2943.25 4220.42 2947.63 4224.8 2953.03 4224.8 c
2958.43 4224.8 2962.8 4220.42 2962.8 4215.02 c
f
n
3010.86 4195.47 m
3010.86 4190.07 3006.49 4185.7 3001.09 4185.7 c
2995.69 4185.7 2991.31 4190.07 2991.31 4195.47 c
2991.31 4200.87 2995.69 4205.25 3001.09 4205.25 c
3006.49 4205.25 3010.86 4200.87 3010.86 4195.47 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3106.17 4155.56 m
3106.17 4150.16 3101.79 4145.78 3096.39 4145.78 c
3091.0 4145.78 3086.62 4150.16 3086.62 4155.56 c
3086.62 4160.96 3091.0 4165.33 3096.39 4165.33 c
3101.79 4165.33 3106.17 4160.96 3106.17 4155.56 c
f
n
3154.23 4136.01 m
3154.23 4130.61 3149.86 4126.23 3144.46 4126.23 c
3139.06 4126.23 3134.68 4130.61 3134.68 4136.01 c
3134.68 4141.41 3139.06 4145.78 3144.46 4145.78 c
3149.86 4145.78 3154.23 4141.41 3154.23 4136.01 c
f
n
3201.48 4116.46 m
3201.48 4111.06 3197.1 4106.68 3191.7 4106.68 c
3186.3 4106.68 3181.93 4111.06 3181.93 4116.46 c
3181.93 4121.86 3186.3 4126.23 3191.7 4126.23 c
3197.1 4126.23 3201.48 4121.86 3201.48 4116.46 c
f
n
3249.54 4096.09 m
3249.54 4090.7 3245.16 4086.32 3239.77 4086.32 c
3234.37 4086.32 3229.99 4090.7 3229.99 4096.09 c
3229.99 4101.49 3234.37 4105.87 3239.77 4105.87 c
3245.16 4105.87 3249.54 4101.49 3249.54 4096.09 c
f
n
3297.6 4076.54 m
3297.6 4071.14 3293.22 4066.77 3287.82 4066.77 c
3282.43 4066.77 3278.05 4071.14 3278.05 4076.54 c
3278.05 4081.94 3282.43 4086.32 3287.82 4086.32 c
3293.22 4086.32 3297.6 4081.94 3297.6 4076.54 c
f
n
3344.85 4056.99 m
3344.85 4051.59 3340.47 4047.22 3335.07 4047.22 c
3329.67 4047.22 3325.3 4051.59 3325.3 4056.99 c
3325.3 4062.39 3329.67 4066.77 3335.07 4066.77 c
3340.47 4066.77 3344.85 4062.39 3344.85 4056.99 c
f
n
3392.91 4036.63 m
3392.91 4031.23 3388.53 4026.85 3383.13 4026.85 c
3377.73 4026.85 3373.36 4031.23 3373.36 4036.63 c
3373.36 4042.03 3377.73 4046.4 3383.13 4046.4 c
3388.53 4046.4 3392.91 4042.03 3392.91 4036.63 c
f
n
3440.97 4017.08 m
3440.97 4011.68 3436.59 4007.3 3431.19 4007.3 c
3425.79 4007.3 3421.42 4011.68 3421.42 4017.08 c
3421.42 4022.48 3425.79 4026.85 3431.19 4026.85 c
3436.59 4026.85 3440.97 4022.48 3440.97 4017.08 c
f
n
2662.22 4295.67 m
2662.22 4290.27 2657.84 4285.89 2652.45 4285.89 c
2647.05 4285.89 2642.67 4290.27 2642.67 4295.67 c
2642.67 4301.07 2647.05 4305.44 2652.45 4305.44 c
2657.84 4305.44 2662.22 4301.07 2662.22 4295.67 c
f
n
2711.91 4281.0 m
2711.91 4275.61 2707.53 4271.23 2702.13 4271.23 c
2696.73 4271.23 2692.36 4275.61 2692.36 4281.0 c
2692.36 4286.4 2696.73 4290.78 2702.13 4290.78 c
2707.53 4290.78 2711.91 4286.4 2711.91 4281.0 c
f
n
2761.6 4265.53 m
2761.6 4260.13 2757.22 4255.75 2751.82 4255.75 c
2746.43 4255.75 2742.05 4260.13 2742.05 4265.53 c
2742.05 4270.93 2746.43 4275.3 2751.82 4275.3 c
2757.22 4275.3 2761.6 4270.93 2761.6 4265.53 c
f
n
2811.29 4250.86 m
2811.29 4245.46 2806.91 4241.09 2801.51 4241.09 c
2796.11 4241.09 2791.74 4245.46 2791.74 4250.86 c
2791.74 4256.26 2796.11 4260.64 2801.51 4260.64 c
2806.91 4260.64 2811.29 4256.26 2811.29 4250.86 c
f
n
2860.16 4235.39 m
2860.16 4229.99 2855.79 4225.61 2850.39 4225.61 c
2844.99 4225.61 2840.61 4229.99 2840.61 4235.39 c
2840.61 4240.79 2844.99 4245.16 2850.39 4245.16 c
2855.79 4245.16 2860.16 4240.79 2860.16 4235.39 c
f
n
2909.86 4220.73 m
2909.86 4215.33 2905.48 4210.95 2900.08 4210.95 c
2894.68 4210.95 2890.3 4215.33 2890.3 4220.73 c
2890.3 4226.12 2894.68 4230.5 2900.08 4230.5 c
2905.48 4230.5 2909.86 4226.12 2909.86 4220.73 c
f
n
2959.54 4205.25 m
2959.54 4199.85 2955.17 4195.47 2949.77 4195.47 c
2944.37 4195.47 2940.0 4199.85 2940.0 4205.25 c
2940.0 4210.64 2944.37 4215.02 2949.77 4215.02 c
2955.17 4215.02 2959.54 4210.64 2959.54 4205.25 c
f
n
3009.23 4190.59 m
3009.23 4185.19 3004.86 4180.81 2999.46 4180.81 c
2994.06 4180.81 2989.68 4185.19 2989.68 4190.59 c
2989.68 4195.98 2994.06 4200.36 2999.46 4200.36 c
3004.86 4200.36 3009.23 4195.98 3009.23 4190.59 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3107.8 4160.45 m
3107.8 4155.05 3103.42 4150.67 3098.02 4150.67 c
3092.62 4150.67 3088.25 4155.05 3088.25 4160.45 c
3088.25 4165.84 3092.62 4170.22 3098.02 4170.22 c
3103.42 4170.22 3107.8 4165.84 3107.8 4160.45 c
f
n
3157.49 4145.78 m
3157.49 4140.38 3153.11 4136.01 3147.71 4136.01 c
3142.32 4136.01 3137.94 4140.38 3137.94 4145.78 c
3137.94 4151.18 3142.32 4155.56 3147.71 4155.56 c
3153.11 4155.56 3157.49 4151.18 3157.49 4145.78 c
f
n
3207.18 4130.3 m
3207.18 4124.91 3202.8 4120.53 3197.41 4120.53 c
3192.01 4120.53 3187.63 4124.91 3187.63 4130.3 c
3187.63 4135.7 3192.01 4140.08 3197.41 4140.08 c
3202.8 4140.08 3207.18 4135.7 3207.18 4130.3 c
f
n
3256.87 4115.64 m
3256.87 4110.25 3252.49 4105.87 3247.09 4105.87 c
3241.7 4105.87 3237.32 4110.25 3237.32 4115.64 c
3237.32 4121.04 3241.7 4125.42 3247.09 4125.42 c
3252.49 4125.42 3256.87 4121.04 3256.87 4115.64 c
f
n
3305.75 4100.16 m
3305.75 4094.77 3301.37 4090.39 3295.97 4090.39 c
3290.57 4090.39 3286.2 4094.77 3286.2 4100.16 c
3286.2 4105.56 3290.57 4109.94 3295.97 4109.94 c
3301.37 4109.94 3305.75 4105.56 3305.75 4100.16 c
f
n
3355.44 4085.5 m
3355.44 4080.11 3351.06 4075.73 3345.66 4075.73 c
3340.26 4075.73 3335.89 4080.11 3335.89 4085.5 c
3335.89 4090.9 3340.26 4095.28 3345.66 4095.28 c
3351.06 4095.28 3355.44 4090.9 3355.44 4085.5 c
f
n
3405.12 4070.03 m
3405.12 4064.63 3400.75 4060.25 3395.35 4060.25 c
3389.95 4060.25 3385.57 4064.63 3385.57 4070.03 c
3385.57 4075.43 3389.95 4079.8 3395.35 4079.8 c
3400.75 4079.8 3405.12 4075.43 3405.12 4070.03 c
f
n
3454.82 4055.36 m
3454.82 4049.96 3450.44 4045.59 3445.04 4045.59 c
3439.64 4045.59 3435.27 4049.96 3435.27 4055.36 c
3435.27 4060.76 3439.64 4065.14 3445.04 4065.14 c
3450.44 4065.14 3454.82 4060.76 3454.82 4055.36 c
f
n
2652.45 4256.57 m
2652.45 4251.17 2648.07 4246.79 2642.67 4246.79 c
2637.27 4246.79 2632.89 4251.17 2632.89 4256.57 c
2632.89 4261.96 2637.27 4266.34 2642.67 4266.34 c
2648.07 4266.34 2652.45 4261.96 2652.45 4256.57 c
f
n
2703.76 4245.98 m
2703.76 4240.58 2699.39 4236.2 2693.99 4236.2 c
2688.59 4236.2 2684.21 4240.58 2684.21 4245.98 c
2684.21 4251.38 2688.59 4255.75 2693.99 4255.75 c
2699.39 4255.75 2703.76 4251.38 2703.76 4245.98 c
f
n
2754.27 4236.2 m
2754.27 4230.8 2749.89 4226.43 2744.49 4226.43 c
2739.09 4226.43 2734.72 4230.8 2734.72 4236.2 c
2734.72 4241.6 2739.09 4245.98 2744.49 4245.98 c
2749.89 4245.98 2754.27 4241.6 2754.27 4236.2 c
f
n
2804.77 4225.61 m
2804.77 4220.21 2800.39 4215.84 2795.0 4215.84 c
2789.6 4215.84 2785.22 4220.21 2785.22 4225.61 c
2785.22 4231.01 2789.6 4235.39 2795.0 4235.39 c
2800.39 4235.39 2804.77 4231.01 2804.77 4225.61 c
f
n
2855.28 4215.84 m
2855.28 4210.44 2850.9 4206.06 2845.5 4206.06 c
2840.1 4206.06 2835.73 4210.44 2835.73 4215.84 c
2835.73 4221.23 2840.1 4225.61 2845.5 4225.61 c
2850.9 4225.61 2855.28 4221.23 2855.28 4215.84 c
f
n
2906.6 4206.06 m
2906.6 4200.66 2902.22 4196.29 2896.82 4196.29 c
2891.42 4196.29 2887.05 4200.66 2887.05 4206.06 c
2887.05 4211.46 2891.42 4215.84 2896.82 4215.84 c
2902.22 4215.84 2906.6 4211.46 2906.6 4206.06 c
f
n
2957.1 4195.47 m
2957.1 4190.07 2952.72 4185.7 2947.32 4185.7 c
2941.93 4185.7 2937.55 4190.07 2937.55 4195.47 c
2937.55 4200.87 2941.93 4205.25 2947.32 4205.25 c
2952.72 4205.25 2957.1 4200.87 2957.1 4195.47 c
f
n
3007.61 4185.7 m
3007.61 4180.3 3003.23 4175.92 2997.83 4175.92 c
2992.43 4175.92 2988.05 4180.3 2988.05 4185.7 c
2988.05 4191.1 2992.43 4195.47 2997.83 4195.47 c
3003.23 4195.47 3007.61 4191.1 3007.61 4185.7 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3109.43 4165.33 m
3109.43 4159.93 3105.05 4155.56 3099.65 4155.56 c
3094.25 4155.56 3089.88 4159.93 3089.88 4165.33 c
3089.88 4170.73 3094.25 4175.11 3099.65 4175.11 c
3105.05 4175.11 3109.43 4170.73 3109.43 4165.33 c
f
n
3159.93 4155.56 m
3159.93 4150.16 3155.56 4145.78 3150.16 4145.78 c
3144.76 4145.78 3140.38 4150.16 3140.38 4155.56 c
3140.38 4160.96 3144.76 4165.33 3150.16 4165.33 c
3155.56 4165.33 3159.93 4160.96 3159.93 4155.56 c
f
n
3210.44 4144.97 m
3210.44 4139.57 3206.06 4135.19 3200.66 4135.19 c
3195.27 4135.19 3190.89 4139.57 3190.89 4144.97 c
3190.89 4150.37 3195.27 4154.74 3200.66 4154.74 c
3206.06 4154.74 3210.44 4150.37 3210.44 4144.97 c
f
n
3261.76 4135.19 m
3261.76 4129.79 3257.38 4125.42 3251.98 4125.42 c
3246.59 4125.42 3242.21 4129.79 3242.21 4135.19 c
3242.21 4140.59 3246.59 4144.97 3251.98 4144.97 c
3257.38 4144.97 3261.76 4140.59 3261.76 4135.19 c
f
n
3312.26 4125.42 m
3312.26 4120.02 3307.89 4115.64 3302.49 4115.64 c
3297.09 4115.64 3292.71 4120.02 3292.71 4125.42 c
3292.71 4130.82 3297.09 4135.19 3302.49 4135.19 c
3307.89 4135.19 3312.26 4130.82 3312.26 4125.42 c
f
n
3362.77 4114.83 m
3362.77 4109.43 3358.39 4105.05 3352.99 4105.05 c
3347.59 4105.05 3343.22 4109.43 3343.22 4114.83 c
3343.22 4120.23 3347.59 4124.6 3352.99 4124.6 c
3358.39 4124.6 3362.77 4120.23 3362.77 4114.83 c
f
n
3413.27 4105.05 m
3413.27 4099.66 3408.89 4095.28 3403.5 4095.28 c
3398.1 4095.28 3393.72 4099.66 3393.72 4105.05 c
3393.72 4110.45 3398.1 4114.83 3403.5 4114.83 c
3408.89 4114.83 3413.27 4110.45 3413.27 4105.05 c
f
n
3464.59 4094.46 m
3464.59 4089.07 3460.21 4084.69 3454.82 4084.69 c
3449.42 4084.69 3445.04 4089.07 3445.04 4094.46 c
3445.04 4099.86 3449.42 4104.24 3454.82 4104.24 c
3460.21 4104.24 3464.59 4099.86 3464.59 4094.46 c
f
n
2646.74 4215.84 m
2646.74 4210.44 2642.36 4206.06 2636.96 4206.06 c
2631.57 4206.06 2627.19 4210.44 2627.19 4215.84 c
2627.19 4221.23 2631.57 4225.61 2636.96 4225.61 c
2642.36 4225.61 2646.74 4221.23 2646.74 4215.84 c
f
n
2698.06 4210.95 m
2698.06 4205.55 2693.68 4201.18 2688.29 4201.18 c
2682.89 4201.18 2678.51 4205.55 2678.51 4210.95 c
2678.51 4216.35 2682.89 4220.73 2688.29 4220.73 c
2693.68 4220.73 2698.06 4216.35 2698.06 4210.95 c
f
n
2749.38 4206.06 m
2749.38 4200.66 2745.0 4196.29 2739.61 4196.29 c
2734.21 4196.29 2729.83 4200.66 2729.83 4206.06 c
2729.83 4211.46 2734.21 4215.84 2739.61 4215.84 c
2745.0 4215.84 2749.38 4211.46 2749.38 4206.06 c
f
n
2801.51 4201.18 m
2801.51 4195.78 2797.14 4191.4 2791.74 4191.4 c
2786.34 4191.4 2781.96 4195.78 2781.96 4201.18 c
2781.96 4206.57 2786.34 4210.95 2791.74 4210.95 c
2797.14 4210.95 2801.51 4206.57 2801.51 4201.18 c
f
n
2852.83 4195.47 m
2852.83 4190.07 2848.46 4185.7 2843.06 4185.7 c
2837.66 4185.7 2833.28 4190.07 2833.28 4195.47 c
2833.28 4200.87 2837.66 4205.25 2843.06 4205.25 c
2848.46 4205.25 2852.83 4200.87 2852.83 4195.47 c
f
n
2904.15 4190.59 m
2904.15 4185.19 2899.78 4180.81 2894.38 4180.81 c
2888.98 4180.81 2884.6 4185.19 2884.6 4190.59 c
2884.6 4195.98 2888.98 4200.36 2894.38 4200.36 c
2899.78 4200.36 2904.15 4195.98 2904.15 4190.59 c
f
n
2955.47 4185.7 m
2955.47 4180.3 2951.09 4175.92 2945.7 4175.92 c
2940.3 4175.92 2935.92 4180.3 2935.92 4185.7 c
2935.92 4191.1 2940.3 4195.47 2945.7 4195.47 c
2951.09 4195.47 2955.47 4191.1 2955.47 4185.7 c
f
n
3006.79 4180.81 m
3006.79 4175.41 3002.41 4171.04 2997.02 4171.04 c
2991.62 4171.04 2987.24 4175.41 2987.24 4180.81 c
2987.24 4186.21 2991.62 4190.59 2997.02 4190.59 c
3002.41 4190.59 3006.79 4186.21 3006.79 4180.81 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3110.24 4170.22 m
3110.24 4164.82 3105.87 4160.45 3100.47 4160.45 c
3095.07 4160.45 3090.7 4164.82 3090.7 4170.22 c
3090.7 4175.62 3095.07 4180.0 3100.47 4180.0 c
3105.87 4180.0 3110.24 4175.62 3110.24 4170.22 c
f
n
3161.56 4165.33 m
3161.56 4159.93 3157.19 4155.56 3151.79 4155.56 c
3146.39 4155.56 3142.01 4159.93 3142.01 4165.33 c
3142.01 4170.73 3146.39 4175.11 3151.79 4175.11 c
3157.19 4175.11 3161.56 4170.73 3161.56 4165.33 c
f
n
3212.88 4160.45 m
3212.88 4155.05 3208.5 4150.67 3203.11 4150.67 c
3197.71 4150.67 3193.33 4155.05 3193.33 4160.45 c
3193.33 4165.84 3197.71 4170.22 3203.11 4170.22 c
3208.5 4170.22 3212.88 4165.84 3212.88 4160.45 c
f
n
3264.2 4155.56 m
3264.2 4150.16 3259.82 4145.78 3254.43 4145.78 c
3249.03 4145.78 3244.65 4150.16 3244.65 4155.56 c
3244.65 4160.96 3249.03 4165.33 3254.43 4165.33 c
3259.82 4165.33 3264.2 4160.96 3264.2 4155.56 c
f
n
3315.52 4149.86 m
3315.52 4144.46 3311.14 4140.08 3305.75 4140.08 c
3300.35 4140.08 3295.97 4144.46 3295.97 4149.86 c
3295.97 4155.25 3300.35 4159.63 3305.75 4159.63 c
3311.14 4159.63 3315.52 4155.25 3315.52 4149.86 c
f
n
3367.66 4144.97 m
3367.66 4139.57 3363.28 4135.19 3357.88 4135.19 c
3352.48 4135.19 3348.11 4139.57 3348.11 4144.97 c
3348.11 4150.37 3352.48 4154.74 3357.88 4154.74 c
3363.28 4154.74 3367.66 4150.37 3367.66 4144.97 c
f
n
3418.97 4140.08 m
3418.97 4134.68 3414.6 4130.3 3409.2 4130.3 c
3403.8 4130.3 3399.43 4134.68 3399.43 4140.08 c
3399.43 4145.48 3403.8 4149.86 3409.2 4149.86 c
3414.6 4149.86 3418.97 4145.48 3418.97 4140.08 c
f
n
3470.29 4135.19 m
3470.29 4129.79 3465.92 4125.42 3460.52 4125.42 c
3455.12 4125.42 3450.74 4129.79 3450.74 4135.19 c
3450.74 4140.59 3455.12 4144.97 3460.52 4144.97 c
3465.92 4144.97 3470.29 4140.59 3470.29 4135.19 c
f
n
2644.3 4175.92 m
2644.3 4170.52 2639.92 4166.15 2634.52 4166.15 c
2629.12 4166.15 2624.75 4170.52 2624.75 4175.92 c
2624.75 4181.32 2629.12 4185.7 2634.52 4185.7 c
2639.92 4185.7 2644.3 4181.32 2644.3 4175.92 c
f
n
2696.43 4175.92 m
2696.43 4170.52 2692.05 4166.15 2686.66 4166.15 c
2681.26 4166.15 2676.88 4170.52 2676.88 4175.92 c
2676.88 4181.32 2681.26 4185.7 2686.66 4185.7 c
2692.05 4185.7 2696.43 4181.32 2696.43 4175.92 c
f
n
2747.75 4175.92 m
2747.75 4170.52 2743.38 4166.15 2737.98 4166.15 c
2732.58 4166.15 2728.2 4170.52 2728.2 4175.92 c
2728.2 4181.32 2732.58 4185.7 2737.98 4185.7 c
2743.38 4185.7 2747.75 4181.32 2747.75 4175.92 c
f
n
2799.88 4175.92 m
2799.88 4170.52 2795.51 4166.15 2790.11 4166.15 c
2784.71 4166.15 2780.34 4170.52 2780.34 4175.92 c
2780.34 4181.32 2784.71 4185.7 2790.11 4185.7 c
2795.51 4185.7 2799.88 4181.32 2799.88 4175.92 c
f
n
2852.02 4175.92 m
2852.02 4170.52 2847.64 4166.15 2842.24 4166.15 c
2836.84 4166.15 2832.47 4170.52 2832.47 4175.92 c
2832.47 4181.32 2836.84 4185.7 2842.24 4185.7 c
2847.64 4185.7 2852.02 4181.32 2852.02 4175.92 c
f
n
2903.34 4175.92 m
2903.34 4170.52 2898.96 4166.15 2893.56 4166.15 c
2888.16 4166.15 2883.79 4170.52 2883.79 4175.92 c
2883.79 4181.32 2888.16 4185.7 2893.56 4185.7 c
2898.96 4185.7 2903.34 4181.32 2903.34 4175.92 c
f
n
2955.47 4175.92 m
2955.47 4170.52 2951.09 4166.15 2945.7 4166.15 c
2940.3 4166.15 2935.92 4170.52 2935.92 4175.92 c
2935.92 4181.32 2940.3 4185.7 2945.7 4185.7 c
2951.09 4185.7 2955.47 4181.32 2955.47 4175.92 c
f
n
3006.79 4175.92 m
3006.79 4170.52 3002.41 4166.15 2997.02 4166.15 c
2991.62 4166.15 2987.24 4170.52 2987.24 4175.92 c
2987.24 4181.32 2991.62 4185.7 2997.02 4185.7 c
3002.41 4185.7 3006.79 4181.32 3006.79 4175.92 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3110.24 4175.92 m
3110.24 4170.52 3105.87 4166.15 3100.47 4166.15 c
3095.07 4166.15 3090.7 4170.52 3090.7 4175.92 c
3090.7 4181.32 3095.07 4185.7 3100.47 4185.7 c
3105.87 4185.7 3110.24 4181.32 3110.24 4175.92 c
f
n
3162.38 4175.92 m
3162.38 4170.52 3158.0 4166.15 3152.6 4166.15 c
3147.2 4166.15 3142.83 4170.52 3142.83 4175.92 c
3142.83 4181.32 3147.2 4185.7 3152.6 4185.7 c
3158.0 4185.7 3162.38 4181.32 3162.38 4175.92 c
f
n
3213.7 4175.92 m
3213.7 4170.52 3209.32 4166.15 3203.92 4166.15 c
3198.52 4166.15 3194.15 4170.52 3194.15 4175.92 c
3194.15 4181.32 3198.52 4185.7 3203.92 4185.7 c
3209.32 4185.7 3213.7 4181.32 3213.7 4175.92 c
f
n
3265.83 4175.92 m
3265.83 4170.52 3261.45 4166.15 3256.05 4166.15 c
3250.66 4166.15 3246.28 4170.52 3246.28 4175.92 c
3246.28 4181.32 3250.66 4185.7 3256.05 4185.7 c
3261.45 4185.7 3265.83 4181.32 3265.83 4175.92 c
f
n
3317.15 4175.92 m
3317.15 4170.52 3312.77 4166.15 3307.38 4166.15 c
3301.98 4166.15 3297.6 4170.52 3297.6 4175.92 c
3297.6 4181.32 3301.98 4185.7 3307.38 4185.7 c
3312.77 4185.7 3317.15 4181.32 3317.15 4175.92 c
f
n
3369.29 4175.92 m
3369.29 4170.52 3364.91 4166.15 3359.51 4166.15 c
3354.11 4166.15 3349.73 4170.52 3349.73 4175.92 c
3349.73 4181.32 3354.11 4185.7 3359.51 4185.7 c
3364.91 4185.7 3369.29 4181.32 3369.29 4175.92 c
f
n
3420.6 4175.92 m
3420.6 4170.52 3416.23 4166.15 3410.83 4166.15 c
3405.43 4166.15 3401.05 4170.52 3401.05 4175.92 c
3401.05 4181.32 3405.43 4185.7 3410.83 4185.7 c
3416.23 4185.7 3420.6 4181.32 3420.6 4175.92 c
f
n
2646.74 4135.19 m
2646.74 4129.79 2642.36 4125.42 2636.96 4125.42 c
2631.57 4125.42 2627.19 4129.79 2627.19 4135.19 c
2627.19 4140.59 2631.57 4144.97 2636.96 4144.97 c
2642.36 4144.97 2646.74 4140.59 2646.74 4135.19 c
f
n
2698.06 4140.08 m
2698.06 4134.68 2693.68 4130.3 2688.29 4130.3 c
2682.89 4130.3 2678.51 4134.68 2678.51 4140.08 c
2678.51 4145.48 2682.89 4149.86 2688.29 4149.86 c
2693.68 4149.86 2698.06 4145.48 2698.06 4140.08 c
f
n
2749.38 4144.97 m
2749.38 4139.57 2745.0 4135.19 2739.61 4135.19 c
2734.21 4135.19 2729.83 4139.57 2729.83 4144.97 c
2729.83 4150.37 2734.21 4154.74 2739.61 4154.74 c
2745.0 4154.74 2749.38 4150.37 2749.38 4144.97 c
f
n
2801.51 4149.86 m
2801.51 4144.46 2797.14 4140.08 2791.74 4140.08 c
2786.34 4140.08 2781.96 4144.46 2781.96 4149.86 c
2781.96 4155.25 2786.34 4159.63 2791.74 4159.63 c
2797.14 4159.63 2801.51 4155.25 2801.51 4149.86 c
f
n
2852.83 4155.56 m
2852.83 4150.16 2848.46 4145.78 2843.06 4145.78 c
2837.66 4145.78 2833.28 4150.16 2833.28 4155.56 c
2833.28 4160.96 2837.66 4165.33 2843.06 4165.33 c
2848.46 4165.33 2852.83 4160.96 2852.83 4155.56 c
f
n
2904.15 4160.45 m
2904.15 4155.05 2899.78 4150.67 2894.38 4150.67 c
2888.98 4150.67 2884.6 4155.05 2884.6 4160.45 c
2884.6 4165.84 2888.98 4170.22 2894.38 4170.22 c
2899.78 4170.22 2904.15 4165.84 2904.15 4160.45 c
f
n
2955.47 4165.33 m
2955.47 4159.93 2951.09 4155.56 2945.7 4155.56 c
2940.3 4155.56 2935.92 4159.93 2935.92 4165.33 c
2935.92 4170.73 2940.3 4175.11 2945.7 4175.11 c
2951.09 4175.11 2955.47 4170.73 2955.47 4165.33 c
f
n
3006.79 4170.22 m
3006.79 4164.82 3002.41 4160.45 2997.02 4160.45 c
2991.62 4160.45 2987.24 4164.82 2987.24 4170.22 c
2987.24 4175.62 2991.62 4180.0 2997.02 4180.0 c
3002.41 4180.0 3006.79 4175.62 3006.79 4170.22 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3110.24 4180.81 m
3110.24 4175.41 3105.87 4171.04 3100.47 4171.04 c
3095.07 4171.04 3090.7 4175.41 3090.7 4180.81 c
3090.7 4186.21 3095.07 4190.59 3100.47 4190.59 c
3105.87 4190.59 3110.24 4186.21 3110.24 4180.81 c
f
n
3161.56 4185.7 m
3161.56 4180.3 3157.19 4175.92 3151.79 4175.92 c
3146.39 4175.92 3142.01 4180.3 3142.01 4185.7 c
3142.01 4191.1 3146.39 4195.47 3151.79 4195.47 c
3157.19 4195.47 3161.56 4191.1 3161.56 4185.7 c
f
n
3212.88 4190.59 m
3212.88 4185.19 3208.5 4180.81 3203.11 4180.81 c
3197.71 4180.81 3193.33 4185.19 3193.33 4190.59 c
3193.33 4195.98 3197.71 4200.36 3203.11 4200.36 c
3208.5 4200.36 3212.88 4195.98 3212.88 4190.59 c
f
n
3264.2 4195.47 m
3264.2 4190.07 3259.82 4185.7 3254.43 4185.7 c
3249.03 4185.7 3244.65 4190.07 3244.65 4195.47 c
3244.65 4200.87 3249.03 4205.25 3254.43 4205.25 c
3259.82 4205.25 3264.2 4200.87 3264.2 4195.47 c
f
n
3315.52 4201.18 m
3315.52 4195.78 3311.14 4191.4 3305.75 4191.4 c
3300.35 4191.4 3295.97 4195.78 3295.97 4201.18 c
3295.97 4206.57 3300.35 4210.95 3305.75 4210.95 c
3311.14 4210.95 3315.52 4206.57 3315.52 4201.18 c
f
n
3367.66 4206.06 m
3367.66 4200.66 3363.28 4196.29 3357.88 4196.29 c
3352.48 4196.29 3348.11 4200.66 3348.11 4206.06 c
3348.11 4211.46 3352.48 4215.84 3357.88 4215.84 c
3363.28 4215.84 3367.66 4211.46 3367.66 4206.06 c
f
n
3418.97 4210.95 m
3418.97 4205.55 3414.6 4201.18 3409.2 4201.18 c
3403.8 4201.18 3399.43 4205.55 3399.43 4210.95 c
3399.43 4216.35 3403.8 4220.73 3409.2 4220.73 c
3414.6 4220.73 3418.97 4216.35 3418.97 4210.95 c
f
n
3470.29 4215.84 m
3470.29 4210.44 3465.92 4206.06 3460.52 4206.06 c
3455.12 4206.06 3450.74 4210.44 3450.74 4215.84 c
3450.74 4221.23 3455.12 4225.61 3460.52 4225.61 c
3465.92 4225.61 3470.29 4221.23 3470.29 4215.84 c
f
n
2652.45 4094.46 m
2652.45 4089.07 2648.07 4084.69 2642.67 4084.69 c
2637.27 4084.69 2632.89 4089.07 2632.89 4094.46 c
2632.89 4099.86 2637.27 4104.24 2642.67 4104.24 c
2648.07 4104.24 2652.45 4099.86 2652.45 4094.46 c
f
n
2703.76 4105.05 m
2703.76 4099.66 2699.39 4095.28 2693.99 4095.28 c
2688.59 4095.28 2684.21 4099.66 2684.21 4105.05 c
2684.21 4110.45 2688.59 4114.83 2693.99 4114.83 c
2699.39 4114.83 2703.76 4110.45 2703.76 4105.05 c
f
n
2754.27 4114.83 m
2754.27 4109.43 2749.89 4105.05 2744.49 4105.05 c
2739.09 4105.05 2734.72 4109.43 2734.72 4114.83 c
2734.72 4120.23 2739.09 4124.6 2744.49 4124.6 c
2749.89 4124.6 2754.27 4120.23 2754.27 4114.83 c
f
n
2804.77 4125.42 m
2804.77 4120.02 2800.39 4115.64 2795.0 4115.64 c
2789.6 4115.64 2785.22 4120.02 2785.22 4125.42 c
2785.22 4130.82 2789.6 4135.19 2795.0 4135.19 c
2800.39 4135.19 2804.77 4130.82 2804.77 4125.42 c
f
n
2855.28 4135.19 m
2855.28 4129.79 2850.9 4125.42 2845.5 4125.42 c
2840.1 4125.42 2835.73 4129.79 2835.73 4135.19 c
2835.73 4140.59 2840.1 4144.97 2845.5 4144.97 c
2850.9 4144.97 2855.28 4140.59 2855.28 4135.19 c
f
n
2906.6 4144.97 m
2906.6 4139.57 2902.22 4135.19 2896.82 4135.19 c
2891.42 4135.19 2887.05 4139.57 2887.05 4144.97 c
2887.05 4150.37 2891.42 4154.74 2896.82 4154.74 c
2902.22 4154.74 2906.6 4150.37 2906.6 4144.97 c
f
n
2957.1 4155.56 m
2957.1 4150.16 2952.72 4145.78 2947.32 4145.78 c
2941.93 4145.78 2937.55 4150.16 2937.55 4155.56 c
2937.55 4160.96 2941.93 4165.33 2947.32 4165.33 c
2952.72 4165.33 2957.1 4160.96 2957.1 4155.56 c
f
n
3007.61 4165.33 m
3007.61 4159.93 3003.23 4155.56 2997.83 4155.56 c
2992.43 4155.56 2988.05 4159.93 2988.05 4165.33 c
2988.05 4170.73 2992.43 4175.11 2997.83 4175.11 c
3003.23 4175.11 3007.61 4170.73 3007.61 4165.33 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3109.43 4185.7 m
3109.43 4180.3 3105.05 4175.92 3099.65 4175.92 c
3094.25 4175.92 3089.88 4180.3 3089.88 4185.7 c
3089.88 4191.1 3094.25 4195.47 3099.65 4195.47 c
3105.05 4195.47 3109.43 4191.1 3109.43 4185.7 c
f
n
3159.93 4195.47 m
3159.93 4190.07 3155.56 4185.7 3150.16 4185.7 c
3144.76 4185.7 3140.38 4190.07 3140.38 4195.47 c
3140.38 4200.87 3144.76 4205.25 3150.16 4205.25 c
3155.56 4205.25 3159.93 4200.87 3159.93 4195.47 c
f
n
3210.44 4206.06 m
3210.44 4200.66 3206.06 4196.29 3200.66 4196.29 c
3195.27 4196.29 3190.89 4200.66 3190.89 4206.06 c
3190.89 4211.46 3195.27 4215.84 3200.66 4215.84 c
3206.06 4215.84 3210.44 4211.46 3210.44 4206.06 c
f
n
3261.76 4215.84 m
3261.76 4210.44 3257.38 4206.06 3251.98 4206.06 c
3246.59 4206.06 3242.21 4210.44 3242.21 4215.84 c
3242.21 4221.23 3246.59 4225.61 3251.98 4225.61 c
3257.38 4225.61 3261.76 4221.23 3261.76 4215.84 c
f
n
3312.26 4225.61 m
3312.26 4220.21 3307.89 4215.84 3302.49 4215.84 c
3297.09 4215.84 3292.71 4220.21 3292.71 4225.61 c
3292.71 4231.01 3297.09 4235.39 3302.49 4235.39 c
3307.89 4235.39 3312.26 4231.01 3312.26 4225.61 c
f
n
3362.77 4236.2 m
3362.77 4230.8 3358.39 4226.43 3352.99 4226.43 c
3347.59 4226.43 3343.22 4230.8 3343.22 4236.2 c
3343.22 4241.6 3347.59 4245.98 3352.99 4245.98 c
3358.39 4245.98 3362.77 4241.6 3362.77 4236.2 c
f
n
3413.27 4245.98 m
3413.27 4240.58 3408.89 4236.2 3403.5 4236.2 c
3398.1 4236.2 3393.72 4240.58 3393.72 4245.98 c
3393.72 4251.38 3398.1 4255.75 3403.5 4255.75 c
3408.89 4255.75 3413.27 4251.38 3413.27 4245.98 c
f
n
3464.59 4256.57 m
3464.59 4251.17 3460.21 4246.79 3454.82 4246.79 c
3449.42 4246.79 3445.04 4251.17 3445.04 4256.57 c
3445.04 4261.96 3449.42 4266.34 3454.82 4266.34 c
3460.21 4266.34 3464.59 4261.96 3464.59 4256.57 c
f
n
2662.22 4055.36 m
2662.22 4049.96 2657.84 4045.59 2652.45 4045.59 c
2647.05 4045.59 2642.67 4049.96 2642.67 4055.36 c
2642.67 4060.76 2647.05 4065.14 2652.45 4065.14 c
2657.84 4065.14 2662.22 4060.76 2662.22 4055.36 c
f
n
2711.91 4070.03 m
2711.91 4064.63 2707.53 4060.25 2702.13 4060.25 c
2696.73 4060.25 2692.36 4064.63 2692.36 4070.03 c
2692.36 4075.43 2696.73 4079.8 2702.13 4079.8 c
2707.53 4079.8 2711.91 4075.43 2711.91 4070.03 c
f
n
2761.6 4085.5 m
2761.6 4080.11 2757.22 4075.73 2751.82 4075.73 c
2746.43 4075.73 2742.05 4080.11 2742.05 4085.5 c
2742.05 4090.9 2746.43 4095.28 2751.82 4095.28 c
2757.22 4095.28 2761.6 4090.9 2761.6 4085.5 c
f
n
2811.29 4100.16 m
2811.29 4094.77 2806.91 4090.39 2801.51 4090.39 c
2796.11 4090.39 2791.74 4094.77 2791.74 4100.16 c
2791.74 4105.56 2796.11 4109.94 2801.51 4109.94 c
2806.91 4109.94 2811.29 4105.56 2811.29 4100.16 c
f
n
2860.16 4115.64 m
2860.16 4110.25 2855.79 4105.87 2850.39 4105.87 c
2844.99 4105.87 2840.61 4110.25 2840.61 4115.64 c
2840.61 4121.04 2844.99 4125.42 2850.39 4125.42 c
2855.79 4125.42 2860.16 4121.04 2860.16 4115.64 c
f
n
2909.86 4130.3 m
2909.86 4124.91 2905.48 4120.53 2900.08 4120.53 c
2894.68 4120.53 2890.3 4124.91 2890.3 4130.3 c
2890.3 4135.7 2894.68 4140.08 2900.08 4140.08 c
2905.48 4140.08 2909.86 4135.7 2909.86 4130.3 c
f
n
2959.54 4145.78 m
2959.54 4140.38 2955.17 4136.01 2949.77 4136.01 c
2944.37 4136.01 2940.0 4140.38 2940.0 4145.78 c
2940.0 4151.18 2944.37 4155.56 2949.77 4155.56 c
2955.17 4155.56 2959.54 4151.18 2959.54 4145.78 c
f
n
3009.23 4160.45 m
3009.23 4155.05 3004.86 4150.67 2999.46 4150.67 c
2994.06 4150.67 2989.68 4155.05 2989.68 4160.45 c
2989.68 4165.84 2994.06 4170.22 2999.46 4170.22 c
3004.86 4170.22 3009.23 4165.84 3009.23 4160.45 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3107.8 4190.59 m
3107.8 4185.19 3103.42 4180.81 3098.02 4180.81 c
3092.62 4180.81 3088.25 4185.19 3088.25 4190.59 c
3088.25 4195.98 3092.62 4200.36 3098.02 4200.36 c
3103.42 4200.36 3107.8 4195.98 3107.8 4190.59 c
f
n
3157.49 4205.25 m
3157.49 4199.85 3153.11 4195.47 3147.71 4195.47 c
3142.32 4195.47 3137.94 4199.85 3137.94 4205.25 c
3137.94 4210.64 3142.32 4215.02 3147.71 4215.02 c
3153.11 4215.02 3157.49 4210.64 3157.49 4205.25 c
f
n
3207.18 4220.73 m
3207.18 4215.33 3202.8 4210.95 3197.41 4210.95 c
3192.01 4210.95 3187.63 4215.33 3187.63 4220.73 c
3187.63 4226.12 3192.01 4230.5 3197.41 4230.5 c
3202.8 4230.5 3207.18 4226.12 3207.18 4220.73 c
f
n
3256.87 4235.39 m
3256.87 4229.99 3252.49 4225.61 3247.09 4225.61 c
3241.7 4225.61 3237.32 4229.99 3237.32 4235.39 c
3237.32 4240.79 3241.7 4245.16 3247.09 4245.16 c
3252.49 4245.16 3256.87 4240.79 3256.87 4235.39 c
f
n
3305.75 4250.86 m
3305.75 4245.46 3301.37 4241.09 3295.97 4241.09 c
3290.57 4241.09 3286.2 4245.46 3286.2 4250.86 c
3286.2 4256.26 3290.57 4260.64 3295.97 4260.64 c
3301.37 4260.64 3305.75 4256.26 3305.75 4250.86 c
f
n
3355.44 4265.53 m
3355.44 4260.13 3351.06 4255.75 3345.66 4255.75 c
3340.26 4255.75 3335.89 4260.13 3335.89 4265.53 c
3335.89 4270.93 3340.26 4275.3 3345.66 4275.3 c
3351.06 4275.3 3355.44 4270.93 3355.44 4265.53 c
f
n
3405.12 4281.0 m
3405.12 4275.61 3400.75 4271.23 3395.35 4271.23 c
3389.95 4271.23 3385.57 4275.61 3385.57 4281.0 c
3385.57 4286.4 3389.95 4290.78 3395.35 4290.78 c
3400.75 4290.78 3405.12 4286.4 3405.12 4281.0 c
f
n
3454.82 4295.67 m
3454.82 4290.27 3450.44 4285.89 3445.04 4285.89 c
3439.64 4285.89 3435.27 4290.27 3435.27 4295.67 c
3435.27 4301.07 3439.64 4305.44 3445.04 4305.44 c
3450.44 4305.44 3454.82 4301.07 3454.82 4295.67 c
f
n
2676.07 4017.08 m
2676.07 4011.68 2671.69 4007.3 2666.29 4007.3 c
2660.89 4007.3 2656.52 4011.68 2656.52 4017.08 c
2656.52 4022.48 2660.89 4026.85 2666.29 4026.85 c
2671.69 4026.85 2676.07 4022.48 2676.07 4017.08 c
f
n
2724.13 4036.63 m
2724.13 4031.23 2719.75 4026.85 2714.35 4026.85 c
2708.95 4026.85 2704.58 4031.23 2704.58 4036.63 c
2704.58 4042.03 2708.95 4046.4 2714.35 4046.4 c
2719.75 4046.4 2724.13 4042.03 2724.13 4036.63 c
f
n
2772.19 4056.99 m
2772.19 4051.59 2767.81 4047.22 2762.41 4047.22 c
2757.02 4047.22 2752.64 4051.59 2752.64 4056.99 c
2752.64 4062.39 2757.02 4066.77 2762.41 4066.77 c
2767.81 4066.77 2772.19 4062.39 2772.19 4056.99 c
f
n
2819.43 4076.54 m
2819.43 4071.14 2815.06 4066.77 2809.66 4066.77 c
2804.26 4066.77 2799.88 4071.14 2799.88 4076.54 c
2799.88 4081.94 2804.26 4086.32 2809.66 4086.32 c
2815.06 4086.32 2819.43 4081.94 2819.43 4076.54 c
f
n
2867.5 4096.09 m
2867.5 4090.7 2863.12 4086.32 2857.72 4086.32 c
2852.32 4086.32 2847.95 4090.7 2847.95 4096.09 c
2847.95 4101.49 2852.32 4105.87 2857.72 4105.87 c
2863.12 4105.87 2867.5 4101.49 2867.5 4096.09 c
f
n
2915.55 4116.46 m
2915.55 4111.06 2911.18 4106.68 2905.78 4106.68 c
2900.38 4106.68 2896.01 4111.06 2896.01 4116.46 c
2896.01 4121.86 2900.38 4126.23 2905.78 4126.23 c
2911.18 4126.23 2915.55 4121.86 2915.55 4116.46 c
f
n
2962.8 4136.01 m
2962.8 4130.61 2958.43 4126.23 2953.03 4126.23 c
2947.63 4126.23 2943.25 4130.61 2943.25 4136.01 c
2943.25 4141.41 2947.63 4145.78 2953.03 4145.78 c
2958.43 4145.78 2962.8 4141.41 2962.8 4136.01 c
f
n
3010.86 4155.56 m
3010.86 4150.16 3006.49 4145.78 3001.09 4145.78 c
2995.69 4145.78 2991.31 4150.16 2991.31 4155.56 c
2991.31 4160.96 2995.69 4165.33 3001.09 4165.33 c
3006.49 4165.33 3010.86 4160.96 3010.86 4155.56 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3106.17 4195.47 m
3106.17 4190.07 3101.79 4185.7 3096.39 4185.7 c
3091.0 4185.7 3086.62 4190.07 3086.62 4195.47 c
3086.62 4200.87 3091.0 4205.25 3096.39 4205.25 c
3101.79 4205.25 3106.17 4200.87 3106.17 4195.47 c
f
n
3154.23 4215.02 m
3154.23 4209.62 3149.86 4205.25 3144.46 4205.25 c
3139.06 4205.25 3134.68 4209.62 3134.68 4215.02 c
3134.68 4220.42 3139.06 4224.8 3144.46 4224.8 c
3149.86 4224.8 3154.23 4220.42 3154.23 4215.02 c
f
n
3201.48 4234.57 m
3201.48 4229.18 3197.1 4224.8 3191.7 4224.8 c
3186.3 4224.8 3181.93 4229.18 3181.93 4234.57 c
3181.93 4239.97 3186.3 4244.35 3191.7 4244.35 c
3197.1 4244.35 3201.48 4239.97 3201.48 4234.57 c
f
n
3249.54 4254.94 m
3249.54 4249.54 3245.16 4245.16 3239.77 4245.16 c
3234.37 4245.16 3229.99 4249.54 3229.99 4254.94 c
3229.99 4260.34 3234.37 4264.71 3239.77 4264.71 c
3245.16 4264.71 3249.54 4260.34 3249.54 4254.94 c
f
n
3297.6 4274.49 m
3297.6 4269.09 3293.22 4264.71 3287.82 4264.71 c
3282.43 4264.71 3278.05 4269.09 3278.05 4274.49 c
3278.05 4279.89 3282.43 4284.26 3287.82 4284.26 c
3293.22 4284.26 3297.6 4279.89 3297.6 4274.49 c
f
n
3344.85 4294.04 m
3344.85 4288.64 3340.47 4284.26 3335.07 4284.26 c
3329.67 4284.26 3325.3 4288.64 3325.3 4294.04 c
3325.3 4299.44 3329.67 4303.81 3335.07 4303.81 c
3340.47 4303.81 3344.85 4299.44 3344.85 4294.04 c
f
n
3392.91 4314.4 m
3392.91 4309.0 3388.53 4304.63 3383.13 4304.63 c
3377.73 4304.63 3373.36 4309.0 3373.36 4314.4 c
3373.36 4319.8 3377.73 4324.18 3383.13 4324.18 c
3388.53 4324.18 3392.91 4319.8 3392.91 4314.4 c
f
n
3440.97 4333.95 m
3440.97 4328.55 3436.59 4324.18 3431.19 4324.18 c
3425.79 4324.18 3421.42 4328.55 3421.42 4333.95 c
3421.42 4339.35 3425.79 4343.73 3431.19 4343.73 c
3436.59 4343.73 3440.97 4339.35 3440.97 4333.95 c
f
n
2647.55 3955.98 m
2647.55 3950.59 2643.18 3946.21 2637.78 3946.21 c
2632.38 3946.21 2628.0 3950.59 2628.0 3955.98 c
2628.0 3961.38 2632.38 3965.76 2637.78 3965.76 c
2643.18 3965.76 2647.55 3961.38 2647.55 3955.98 c
f
n
2693.17 3980.42 m
2693.17 3975.02 2688.8 3970.64 2683.4 3970.64 c
2678.0 3970.64 2673.62 3975.02 2673.62 3980.42 c
2673.62 3985.82 2678.0 3990.2 2683.4 3990.2 c
2688.8 3990.2 2693.17 3985.82 2693.17 3980.42 c
f
n
2738.79 4004.86 m
2738.79 3999.46 2734.41 3995.08 2729.02 3995.08 c
2723.62 3995.08 2719.24 3999.46 2719.24 4004.86 c
2719.24 4010.26 2723.62 4014.63 2729.02 4014.63 c
2734.41 4014.63 2738.79 4010.26 2738.79 4004.86 c
f
n
2784.41 4029.3 m
2784.41 4023.9 2780.03 4019.52 2774.63 4019.52 c
2769.23 4019.52 2764.86 4023.9 2764.86 4029.3 c
2764.86 4034.7 2769.23 4039.07 2774.63 4039.07 c
2780.03 4039.07 2784.41 4034.7 2784.41 4029.3 c
f
n
2830.02 4053.73 m
2830.02 4048.34 2825.65 4043.96 2820.25 4043.96 c
2814.85 4043.96 2810.47 4048.34 2810.47 4053.73 c
2810.47 4059.13 2814.85 4063.51 2820.25 4063.51 c
2825.65 4063.51 2830.02 4059.13 2830.02 4053.73 c
f
n
2875.64 4078.17 m
2875.64 4072.77 2871.27 4068.39 2865.87 4068.39 c
2860.47 4068.39 2856.09 4072.77 2856.09 4078.17 c
2856.09 4083.57 2860.47 4087.95 2865.87 4087.95 c
2871.27 4087.95 2875.64 4083.57 2875.64 4078.17 c
f
n
2921.26 4102.61 m
2921.26 4097.21 2916.88 4092.84 2911.48 4092.84 c
2906.09 4092.84 2901.71 4097.21 2901.71 4102.61 c
2901.71 4108.01 2906.09 4112.38 2911.48 4112.38 c
2916.88 4112.38 2921.26 4108.01 2921.26 4102.61 c
f
n
2966.88 4127.05 m
2966.88 4121.65 2962.5 4117.27 2957.1 4117.27 c
2951.7 4117.27 2947.32 4121.65 2947.32 4127.05 c
2947.32 4132.45 2951.7 4136.82 2957.1 4136.82 c
2962.5 4136.82 2966.88 4132.45 2966.88 4127.05 c
f
n
3012.49 4151.48 m
3012.49 4146.09 3008.12 4141.71 3002.72 4141.71 c
2997.32 4141.71 2992.94 4146.09 2992.94 4151.48 c
2992.94 4156.88 2997.32 4161.26 3002.72 4161.26 c
3008.12 4161.26 3012.49 4156.88 3012.49 4151.48 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3104.54 4199.55 m
3104.54 4194.15 3100.16 4189.77 3094.77 4189.77 c
3089.37 4189.77 3084.99 4194.15 3084.99 4199.55 c
3084.99 4204.95 3089.37 4209.32 3094.77 4209.32 c
3100.16 4209.32 3104.54 4204.95 3104.54 4199.55 c
f
n
3150.16 4223.98 m
3150.16 4218.59 3145.78 4214.21 3140.38 4214.21 c
3134.98 4214.21 3130.61 4218.59 3130.61 4223.98 c
3130.61 4229.38 3134.98 4233.76 3140.38 4233.76 c
3145.78 4233.76 3150.16 4229.38 3150.16 4223.98 c
f
n
3195.78 4248.42 m
3195.78 4243.02 3191.4 4238.64 3186.0 4238.64 c
3180.6 4238.64 3176.23 4243.02 3176.23 4248.42 c
3176.23 4253.82 3180.6 4258.2 3186.0 4258.2 c
3191.4 4258.2 3195.78 4253.82 3195.78 4248.42 c
f
n
3241.39 4272.86 m
3241.39 4267.46 3237.02 4263.08 3231.62 4263.08 c
3226.22 4263.08 3221.84 4267.46 3221.84 4272.86 c
3221.84 4278.26 3226.22 4282.63 3231.62 4282.63 c
3237.02 4282.63 3241.39 4278.26 3241.39 4272.86 c
f
n
3287.01 4297.3 m
3287.01 4291.9 3282.63 4287.52 3277.23 4287.52 c
3271.84 4287.52 3267.46 4291.9 3267.46 4297.3 c
3267.46 4302.7 3271.84 4307.07 3277.23 4307.07 c
3282.63 4307.07 3287.01 4302.7 3287.01 4297.3 c
f
n
3332.63 4321.73 m
3332.63 4316.34 3328.25 4311.96 3322.85 4311.96 c
3317.45 4311.96 3313.08 4316.34 3313.08 4321.73 c
3313.08 4327.13 3317.45 4331.51 3322.85 4331.51 c
3328.25 4331.51 3332.63 4327.13 3332.63 4321.73 c
f
n
3378.25 4346.17 m
3378.25 4340.77 3373.87 4336.4 3368.47 4336.4 c
3363.07 4336.4 3358.7 4340.77 3358.7 4346.17 c
3358.7 4351.57 3363.07 4355.95 3368.47 4355.95 c
3373.87 4355.95 3378.25 4351.57 3378.25 4346.17 c
f
n
3423.86 4370.61 m
3423.86 4365.21 3419.48 4360.84 3414.09 4360.84 c
3408.69 4360.84 3404.31 4365.21 3404.31 4370.61 c
3404.31 4376.01 3408.69 4380.39 3414.09 4380.39 c
3419.48 4380.39 3423.86 4376.01 3423.86 4370.61 c
f
n
3469.48 4395.05 m
3469.48 4389.65 3465.1 4385.27 3459.7 4385.27 c
3454.3 4385.27 3449.93 4389.65 3449.93 4395.05 c
3449.93 4400.45 3454.3 4404.82 3459.7 4404.82 c
3465.1 4404.82 3469.48 4400.45 3469.48 4395.05 c
f
n
2671.18 3916.88 m
2671.18 3911.48 2666.8 3907.11 2661.4 3907.11 c
2656.0 3907.11 2651.63 3911.48 2651.63 3916.88 c
2651.63 3922.28 2656.0 3926.66 2661.4 3926.66 c
2666.8 3926.66 2671.18 3922.28 2671.18 3916.88 c
f
n
2714.35 3945.39 m
2714.35 3940.0 2709.98 3935.62 2704.58 3935.62 c
2699.18 3935.62 2694.8 3940.0 2694.8 3945.39 c
2694.8 3950.79 2699.18 3955.17 2704.58 3955.17 c
2709.98 3955.17 2714.35 3950.79 2714.35 3945.39 c
f
n
2757.53 3974.72 m
2757.53 3969.32 2753.15 3964.94 2747.75 3964.94 c
2742.35 3964.94 2737.98 3969.32 2737.98 3974.72 c
2737.98 3980.12 2742.35 3984.49 2747.75 3984.49 c
2753.15 3984.49 2757.53 3980.12 2757.53 3974.72 c
f
n
2800.7 4003.23 m
2800.7 3997.83 2796.32 3993.45 2790.93 3993.45 c
2785.53 3993.45 2781.15 3997.83 2781.15 4003.23 c
2781.15 4008.63 2785.53 4013.0 2790.93 4013.0 c
2796.32 4013.0 2800.7 4008.63 2800.7 4003.23 c
f
n
2843.87 4031.74 m
2843.87 4026.34 2839.5 4021.96 2834.1 4021.96 c
2828.7 4021.96 2824.32 4026.34 2824.32 4031.74 c
2824.32 4037.14 2828.7 4041.52 2834.1 4041.52 c
2839.5 4041.52 2843.87 4037.14 2843.87 4031.74 c
f
n
2886.23 4060.25 m
2886.23 4054.85 2881.86 4050.48 2876.46 4050.48 c
2871.06 4050.48 2866.68 4054.85 2866.68 4060.25 c
2866.68 4065.65 2871.06 4070.03 2876.46 4070.03 c
2881.86 4070.03 2886.23 4065.65 2886.23 4060.25 c
f
n
2929.41 4089.57 m
2929.41 4084.18 2925.03 4079.8 2919.63 4079.8 c
2914.23 4079.8 2909.86 4084.18 2909.86 4089.57 c
2909.86 4094.97 2914.23 4099.35 2919.63 4099.35 c
2925.03 4099.35 2929.41 4094.97 2929.41 4089.57 c
f
n
2972.58 4118.09 m
2972.58 4112.69 2968.2 4108.31 2962.8 4108.31 c
2957.41 4108.31 2953.03 4112.69 2953.03 4118.09 c
2953.03 4123.48 2957.41 4127.86 2962.8 4127.86 c
2968.2 4127.86 2972.58 4123.48 2972.58 4118.09 c
f
n
3015.75 4146.6 m
3015.75 4141.2 3011.38 4136.82 3005.98 4136.82 c
3000.58 4136.82 2996.2 4141.2 2996.2 4146.6 c
2996.2 4152.0 3000.58 4156.37 3005.98 4156.37 c
3011.38 4156.37 3015.75 4152.0 3015.75 4146.6 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3101.29 4204.43 m
3101.29 4199.04 3096.91 4194.66 3091.51 4194.66 c
3086.11 4194.66 3081.73 4199.04 3081.73 4204.43 c
3081.73 4209.83 3086.11 4214.21 3091.51 4214.21 c
3096.91 4214.21 3101.29 4209.83 3101.29 4204.43 c
f
n
3144.46 4232.95 m
3144.46 4227.55 3140.08 4223.17 3134.68 4223.17 c
3129.28 4223.17 3124.91 4227.55 3124.91 4232.95 c
3124.91 4238.34 3129.28 4242.72 3134.68 4242.72 c
3140.08 4242.72 3144.46 4238.34 3144.46 4232.95 c
f
n
3187.63 4261.45 m
3187.63 4256.05 3183.25 4251.68 3177.86 4251.68 c
3172.46 4251.68 3168.08 4256.05 3168.08 4261.45 c
3168.08 4266.85 3172.46 4271.23 3177.86 4271.23 c
3183.25 4271.23 3187.63 4266.85 3187.63 4261.45 c
f
n
3230.8 4290.78 m
3230.8 4285.38 3226.43 4281.0 3221.03 4281.0 c
3215.63 4281.0 3211.25 4285.38 3211.25 4290.78 c
3211.25 4296.18 3215.63 4300.55 3221.03 4300.55 c
3226.43 4300.55 3230.8 4296.18 3230.8 4290.78 c
f
n
3273.16 4319.29 m
3273.16 4313.89 3268.79 4309.52 3263.39 4309.52 c
3257.99 4309.52 3253.61 4313.89 3253.61 4319.29 c
3253.61 4324.69 3257.99 4329.07 3263.39 4329.07 c
3268.79 4329.07 3273.16 4324.69 3273.16 4319.29 c
f
n
3316.34 4347.8 m
3316.34 4342.4 3311.96 4338.03 3306.56 4338.03 c
3301.16 4338.03 3296.79 4342.4 3296.79 4347.8 c
3296.79 4353.2 3301.16 4357.58 3306.56 4357.58 c
3311.96 4357.58 3316.34 4353.2 3316.34 4347.8 c
f
n
3359.51 4376.31 m
3359.51 4370.91 3355.13 4366.54 3349.73 4366.54 c
3344.34 4366.54 3339.96 4370.91 3339.96 4376.31 c
3339.96 4381.71 3344.34 4386.09 3349.73 4386.09 c
3355.13 4386.09 3359.51 4381.71 3359.51 4376.31 c
f
n
3402.68 4405.64 m
3402.68 4400.24 3398.3 4395.86 3392.91 4395.86 c
3387.51 4395.86 3383.13 4400.24 3383.13 4405.64 c
3383.13 4411.04 3387.51 4415.41 3392.91 4415.41 c
3398.3 4415.41 3402.68 4411.04 3402.68 4405.64 c
f
n
3445.86 4434.15 m
3445.86 4428.75 3441.48 4424.37 3436.08 4424.37 c
3430.68 4424.37 3426.3 4428.75 3426.3 4434.15 c
3426.3 4439.55 3430.68 4443.92 3436.08 4443.92 c
3441.48 4443.92 3445.86 4439.55 3445.86 4434.15 c
f
n
2658.96 3847.64 m
2658.96 3842.24 2654.58 3837.87 2649.18 3837.87 c
2643.79 3837.87 2639.41 3842.24 2639.41 3847.64 c
2639.41 3853.04 2643.79 3857.42 2649.18 3857.42 c
2654.58 3857.42 2658.96 3853.04 2658.96 3847.64 c
f
n
2698.88 3880.23 m
2698.88 3874.83 2694.5 3870.45 2689.1 3870.45 c
2683.7 3870.45 2679.32 3874.83 2679.32 3880.23 c
2679.32 3885.62 2683.7 3890.0 2689.1 3890.0 c
2694.5 3890.0 2698.88 3885.62 2698.88 3880.23 c
f
n
2738.79 3912.81 m
2738.79 3907.41 2734.41 3903.04 2729.02 3903.04 c
2723.62 3903.04 2719.24 3907.41 2719.24 3912.81 c
2719.24 3918.21 2723.62 3922.59 2729.02 3922.59 c
2734.41 3922.59 2738.79 3918.21 2738.79 3912.81 c
f
n
2778.7 3946.21 m
2778.7 3940.81 2774.33 3936.43 2768.93 3936.43 c
2763.53 3936.43 2759.16 3940.81 2759.16 3946.21 c
2759.16 3951.61 2763.53 3955.98 2768.93 3955.98 c
2774.33 3955.98 2778.7 3951.61 2778.7 3946.21 c
f
n
2818.62 3978.79 m
2818.62 3973.39 2814.24 3969.02 2808.84 3969.02 c
2803.45 3969.02 2799.07 3973.39 2799.07 3978.79 c
2799.07 3984.19 2803.45 3988.57 2808.84 3988.57 c
2814.24 3988.57 2818.62 3984.19 2818.62 3978.79 c
f
n
2858.54 4011.38 m
2858.54 4005.98 2854.16 4001.6 2848.76 4001.6 c
2843.36 4001.6 2838.98 4005.98 2838.98 4011.38 c
2838.98 4016.77 2843.36 4021.15 2848.76 4021.15 c
2854.16 4021.15 2858.54 4016.77 2858.54 4011.38 c
f
n
2898.45 4043.96 m
2898.45 4038.56 2894.07 4034.18 2888.68 4034.18 c
2883.28 4034.18 2878.9 4038.56 2878.9 4043.96 c
2878.9 4049.36 2883.28 4053.73 2888.68 4053.73 c
2894.07 4053.73 2898.45 4049.36 2898.45 4043.96 c
f
n
2938.36 4077.36 m
2938.36 4071.96 2933.99 4067.58 2928.59 4067.58 c
2923.19 4067.58 2918.82 4071.96 2918.82 4077.36 c
2918.82 4082.75 2923.19 4087.13 2928.59 4087.13 c
2933.99 4087.13 2938.36 4082.75 2938.36 4077.36 c
f
n
2978.28 4109.94 m
2978.28 4104.54 2973.9 4100.16 2968.5 4100.16 c
2963.11 4100.16 2958.73 4104.54 2958.73 4109.94 c
2958.73 4115.34 2963.11 4119.71 2968.5 4119.71 c
2973.9 4119.71 2978.28 4115.34 2978.28 4109.94 c
f
n
3018.2 4142.52 m
3018.2 4137.12 3013.82 4132.75 3008.42 4132.75 c
3003.02 4132.75 2998.64 4137.12 2998.64 4142.52 c
2998.64 4147.92 3003.02 4152.3 3008.42 4152.3 c
3013.82 4152.3 3018.2 4147.92 3018.2 4142.52 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3098.84 4208.51 m
3098.84 4203.11 3094.46 4198.73 3089.07 4198.73 c
3083.67 4198.73 3079.29 4203.11 3079.29 4208.51 c
3079.29 4213.91 3083.67 4218.28 3089.07 4218.28 c
3094.46 4218.28 3098.84 4213.91 3098.84 4208.51 c
f
n
3138.75 4241.09 m
3138.75 4235.69 3134.38 4231.32 3128.98 4231.32 c
3123.58 4231.32 3119.2 4235.69 3119.2 4241.09 c
3119.2 4246.49 3123.58 4250.86 3128.98 4250.86 c
3134.38 4250.86 3138.75 4246.49 3138.75 4241.09 c
f
n
3178.67 4273.67 m
3178.67 4268.27 3174.29 4263.9 3168.89 4263.9 c
3163.5 4263.9 3159.12 4268.27 3159.12 4273.67 c
3159.12 4279.07 3163.5 4283.45 3168.89 4283.45 c
3174.29 4283.45 3178.67 4279.07 3178.67 4273.67 c
f
n
3218.59 4307.07 m
3218.59 4301.67 3214.21 4297.3 3208.81 4297.3 c
3203.41 4297.3 3199.04 4301.67 3199.04 4307.07 c
3199.04 4312.47 3203.41 4316.85 3208.81 4316.85 c
3214.21 4316.85 3218.59 4312.47 3218.59 4307.07 c
f
n
3258.5 4339.66 m
3258.5 4334.26 3254.12 4329.88 3248.72 4329.88 c
3243.32 4329.88 3238.95 4334.26 3238.95 4339.66 c
3238.95 4345.05 3243.32 4349.43 3248.72 4349.43 c
3254.12 4349.43 3258.5 4345.05 3258.5 4339.66 c
f
n
3298.41 4372.24 m
3298.41 4366.84 3294.04 4362.46 3288.64 4362.46 c
3283.24 4362.46 3278.86 4366.84 3278.86 4372.24 c
3278.86 4377.64 3283.24 4382.02 3288.64 4382.02 c
3294.04 4382.02 3298.41 4377.64 3298.41 4372.24 c
f
n
3338.33 4404.82 m
3338.33 4399.43 3333.95 4395.05 3328.55 4395.05 c
3323.16 4395.05 3318.78 4399.43 3318.78 4404.82 c
3318.78 4410.22 3323.16 4414.6 3328.55 4414.6 c
3333.95 4414.6 3338.33 4410.22 3338.33 4404.82 c
f
n
3378.25 4438.22 m
3378.25 4432.82 3373.87 4428.45 3368.47 4428.45 c
3363.07 4428.45 3358.7 4432.82 3358.7 4438.22 c
3358.7 4443.62 3363.07 4448.0 3368.47 4448.0 c
3373.87 4448.0 3378.25 4443.62 3378.25 4438.22 c
f
n
3418.16 4470.8 m
3418.16 4465.41 3413.78 4461.03 3408.38 4461.03 c
3402.98 4461.03 3398.61 4465.41 3398.61 4470.8 c
3398.61 4476.2 3402.98 4480.58 3408.38 4480.58 c
3413.78 4480.58 3418.16 4476.2 3418.16 4470.8 c
f
n
3458.07 4503.39 m
3458.07 4497.99 3453.7 4493.61 3448.3 4493.61 c
3442.9 4493.61 3438.52 4497.99 3438.52 4503.39 c
3438.52 4508.79 3442.9 4513.16 3448.3 4513.16 c
3453.7 4513.16 3458.07 4508.79 3458.07 4503.39 c
f
n
2656.52 3773.52 m
2656.52 3768.12 2652.14 3763.74 2646.74 3763.74 c
2641.34 3763.74 2636.96 3768.12 2636.96 3773.52 c
2636.96 3778.91 2641.34 3783.29 2646.74 3783.29 c
2652.14 3783.29 2656.52 3778.91 2656.52 3773.52 c
f
n
2692.36 3809.36 m
2692.36 3803.96 2687.98 3799.58 2682.58 3799.58 c
2677.18 3799.58 2672.81 3803.96 2672.81 3809.36 c
2672.81 3814.75 2677.18 3819.13 2682.58 3819.13 c
2687.98 3819.13 2692.36 3814.75 2692.36 3809.36 c
f
n
2729.02 3846.01 m
2729.02 3840.61 2724.64 3836.24 2719.24 3836.24 c
2713.84 3836.24 2709.46 3840.61 2709.46 3846.01 c
2709.46 3851.41 2713.84 3855.79 2719.24 3855.79 c
2724.64 3855.79 2729.02 3851.41 2729.02 3846.01 c
f
n
2765.67 3882.67 m
2765.67 3877.27 2761.3 3872.89 2755.9 3872.89 c
2750.5 3872.89 2746.12 3877.27 2746.12 3882.67 c
2746.12 3888.07 2750.5 3892.45 2755.9 3892.45 c
2761.3 3892.45 2765.67 3888.07 2765.67 3882.67 c
f
n
2802.33 3919.32 m
2802.33 3913.93 2797.95 3909.55 2792.55 3909.55 c
2787.16 3909.55 2782.78 3913.93 2782.78 3919.32 c
2782.78 3924.72 2787.16 3929.1 2792.55 3929.1 c
2797.95 3929.1 2802.33 3924.72 2802.33 3919.32 c
f
n
2838.98 3955.98 m
2838.98 3950.59 2834.61 3946.21 2829.21 3946.21 c
2823.81 3946.21 2819.43 3950.59 2819.43 3955.98 c
2819.43 3961.38 2823.81 3965.76 2829.21 3965.76 c
2834.61 3965.76 2838.98 3961.38 2838.98 3955.98 c
f
n
2875.64 3992.64 m
2875.64 3987.24 2871.27 3982.86 2865.87 3982.86 c
2860.47 3982.86 2856.09 3987.24 2856.09 3992.64 c
2856.09 3998.04 2860.47 4002.41 2865.87 4002.41 c
2871.27 4002.41 2875.64 3998.04 2875.64 3992.64 c
f
n
2912.3 4029.3 m
2912.3 4023.9 2907.92 4019.52 2902.52 4019.52 c
2897.12 4019.52 2892.75 4023.9 2892.75 4029.3 c
2892.75 4034.7 2897.12 4039.07 2902.52 4039.07 c
2907.92 4039.07 2912.3 4034.7 2912.3 4029.3 c
f
n
2948.95 4065.95 m
2948.95 4060.55 2944.58 4056.18 2939.18 4056.18 c
2933.78 4056.18 2929.41 4060.55 2929.41 4065.95 c
2929.41 4071.35 2933.78 4075.73 2939.18 4075.73 c
2944.58 4075.73 2948.95 4071.35 2948.95 4065.95 c
f
n
2985.61 4102.61 m
2985.61 4097.21 2981.23 4092.84 2975.84 4092.84 c
2970.44 4092.84 2966.06 4097.21 2966.06 4102.61 c
2966.06 4108.01 2970.44 4112.38 2975.84 4112.38 c
2981.23 4112.38 2985.61 4108.01 2985.61 4102.61 c
f
n
3022.27 4139.27 m
3022.27 4133.87 3017.89 4129.49 3012.49 4129.49 c
3007.09 4129.49 3002.72 4133.87 3002.72 4139.27 c
3002.72 4144.66 3007.09 4149.04 3012.49 4149.04 c
3017.89 4149.04 3022.27 4144.66 3022.27 4139.27 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3094.77 4211.77 m
3094.77 4206.37 3090.39 4201.99 3084.99 4201.99 c
3079.59 4201.99 3075.21 4206.37 3075.21 4211.77 c
3075.21 4217.16 3079.59 4221.54 3084.99 4221.54 c
3090.39 4221.54 3094.77 4217.16 3094.77 4211.77 c
f
n
3131.42 4248.42 m
3131.42 4243.02 3127.05 4238.64 3121.65 4238.64 c
3116.25 4238.64 3111.87 4243.02 3111.87 4248.42 c
3111.87 4253.82 3116.25 4258.2 3121.65 4258.2 c
3127.05 4258.2 3131.42 4253.82 3131.42 4248.42 c
f
n
3168.08 4285.08 m
3168.08 4279.68 3163.7 4275.3 3158.3 4275.3 c
3152.91 4275.3 3148.53 4279.68 3148.53 4285.08 c
3148.53 4290.48 3152.91 4294.85 3158.3 4294.85 c
3163.7 4294.85 3168.08 4290.48 3168.08 4285.08 c
f
n
3204.74 4321.73 m
3204.74 4316.34 3200.36 4311.96 3194.96 4311.96 c
3189.56 4311.96 3185.19 4316.34 3185.19 4321.73 c
3185.19 4327.13 3189.56 4331.51 3194.96 4331.51 c
3200.36 4331.51 3204.74 4327.13 3204.74 4321.73 c
f
n
3241.39 4358.39 m
3241.39 4352.99 3237.02 4348.62 3231.62 4348.62 c
3226.22 4348.62 3221.84 4352.99 3221.84 4358.39 c
3221.84 4363.79 3226.22 4368.16 3231.62 4368.16 c
3237.02 4368.16 3241.39 4363.79 3241.39 4358.39 c
f
n
3278.05 4395.05 m
3278.05 4389.65 3273.67 4385.27 3268.27 4385.27 c
3262.88 4385.27 3258.5 4389.65 3258.5 4395.05 c
3258.5 4400.45 3262.88 4404.82 3268.27 4404.82 c
3273.67 4404.82 3278.05 4400.45 3278.05 4395.05 c
f
n
3314.71 4431.7 m
3314.71 4426.3 3310.33 4421.93 3304.93 4421.93 c
3299.53 4421.93 3295.16 4426.3 3295.16 4431.7 c
3295.16 4437.1 3299.53 4441.48 3304.93 4441.48 c
3310.33 4441.48 3314.71 4437.1 3314.71 4431.7 c
f
n
3351.36 4468.36 m
3351.36 4462.96 3346.98 4458.59 3341.59 4458.59 c
3336.19 4458.59 3331.81 4462.96 3331.81 4468.36 c
3331.81 4473.76 3336.19 4478.14 3341.59 4478.14 c
3346.98 4478.14 3351.36 4473.76 3351.36 4468.36 c
f
n
3388.02 4505.02 m
3388.02 4499.62 3383.64 4495.24 3378.25 4495.24 c
3372.85 4495.24 3368.47 4499.62 3368.47 4505.02 c
3368.47 4510.41 3372.85 4514.79 3378.25 4514.79 c
3383.64 4514.79 3388.02 4510.41 3388.02 4505.02 c
f
n
3424.68 4541.68 m
3424.68 4536.28 3420.3 4531.9 3414.9 4531.9 c
3409.5 4531.9 3405.12 4536.28 3405.12 4541.68 c
3405.12 4547.07 3409.5 4551.45 3414.9 4551.45 c
3420.3 4551.45 3424.68 4547.07 3424.68 4541.68 c
f
n
3460.52 4577.52 m
3460.52 4572.12 3456.14 4567.74 3450.74 4567.74 c
3445.34 4567.74 3440.97 4572.12 3440.97 4577.52 c
3440.97 4582.91 3445.34 4587.29 3450.74 4587.29 c
3456.14 4587.29 3460.52 4582.91 3460.52 4577.52 c
f
n
2730.64 3775.96 m
2730.64 3770.56 2726.27 3766.18 2720.87 3766.18 c
2715.47 3766.18 2711.09 3770.56 2711.09 3775.96 c
2711.09 3781.36 2715.47 3785.73 2720.87 3785.73 c
2726.27 3785.73 2730.64 3781.36 2730.64 3775.96 c
f
n
2763.23 3815.87 m
2763.23 3810.47 2758.85 3806.1 2753.45 3806.1 c
2748.05 3806.1 2743.68 3810.47 2743.68 3815.87 c
2743.68 3821.27 2748.05 3825.65 2753.45 3825.65 c
2758.85 3825.65 2763.23 3821.27 2763.23 3815.87 c
f
n
2795.81 3855.79 m
2795.81 3850.39 2791.43 3846.01 2786.04 3846.01 c
2780.64 3846.01 2776.26 3850.39 2776.26 3855.79 c
2776.26 3861.19 2780.64 3865.56 2786.04 3865.56 c
2791.43 3865.56 2795.81 3861.19 2795.81 3855.79 c
f
n
2829.21 3895.7 m
2829.21 3890.3 2824.83 3885.93 2819.43 3885.93 c
2814.04 3885.93 2809.66 3890.3 2809.66 3895.7 c
2809.66 3901.1 2814.04 3905.48 2819.43 3905.48 c
2824.83 3905.48 2829.21 3901.1 2829.21 3895.7 c
f
n
2861.79 3935.62 m
2861.79 3930.22 2857.42 3925.84 2852.02 3925.84 c
2846.62 3925.84 2842.24 3930.22 2842.24 3935.62 c
2842.24 3941.02 2846.62 3945.39 2852.02 3945.39 c
2857.42 3945.39 2861.79 3941.02 2861.79 3935.62 c
f
n
2894.38 3975.53 m
2894.38 3970.13 2890.0 3965.76 2884.6 3965.76 c
2879.2 3965.76 2874.83 3970.13 2874.83 3975.53 c
2874.83 3980.93 2879.2 3985.31 2884.6 3985.31 c
2890.0 3985.31 2894.38 3980.93 2894.38 3975.53 c
f
n
2926.96 4015.45 m
2926.96 4010.05 2922.59 4005.67 2917.19 4005.67 c
2911.79 4005.67 2907.41 4010.05 2907.41 4015.45 c
2907.41 4020.85 2911.79 4025.22 2917.19 4025.22 c
2922.59 4025.22 2926.96 4020.85 2926.96 4015.45 c
f
n
2960.36 4055.36 m
2960.36 4049.96 2955.98 4045.59 2950.58 4045.59 c
2945.18 4045.59 2940.81 4049.96 2940.81 4055.36 c
2940.81 4060.76 2945.18 4065.14 2950.58 4065.14 c
2955.98 4065.14 2960.36 4060.76 2960.36 4055.36 c
f
n
2992.94 4095.28 m
2992.94 4089.88 2988.57 4085.5 2983.17 4085.5 c
2977.77 4085.5 2973.39 4089.88 2973.39 4095.28 c
2973.39 4100.68 2977.77 4105.05 2983.17 4105.05 c
2988.57 4105.05 2992.94 4100.68 2992.94 4095.28 c
f
n
3025.53 4135.19 m
3025.53 4129.79 3021.15 4125.42 3015.75 4125.42 c
3010.35 4125.42 3005.98 4129.79 3005.98 4135.19 c
3005.98 4140.59 3010.35 4144.97 3015.75 4144.97 c
3021.15 4144.97 3025.53 4140.59 3025.53 4135.19 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3091.51 4215.84 m
3091.51 4210.44 3087.13 4206.06 3081.73 4206.06 c
3076.34 4206.06 3071.96 4210.44 3071.96 4215.84 c
3071.96 4221.23 3076.34 4225.61 3081.73 4225.61 c
3087.13 4225.61 3091.51 4221.23 3091.51 4215.84 c
f
n
3124.09 4255.75 m
3124.09 4250.36 3119.71 4245.98 3114.32 4245.98 c
3108.92 4245.98 3104.54 4250.36 3104.54 4255.75 c
3104.54 4261.15 3108.92 4265.53 3114.32 4265.53 c
3119.71 4265.53 3124.09 4261.15 3124.09 4255.75 c
f
n
3156.68 4295.67 m
3156.68 4290.27 3152.3 4285.89 3146.9 4285.89 c
3141.5 4285.89 3137.12 4290.27 3137.12 4295.67 c
3137.12 4301.07 3141.5 4305.44 3146.9 4305.44 c
3152.3 4305.44 3156.68 4301.07 3156.68 4295.67 c
f
n
3190.07 4335.58 m
3190.07 4330.18 3185.7 4325.81 3180.3 4325.81 c
3174.9 4325.81 3170.52 4330.18 3170.52 4335.58 c
3170.52 4340.98 3174.9 4345.36 3180.3 4345.36 c
3185.7 4345.36 3190.07 4340.98 3190.07 4335.58 c
f
n
3222.66 4375.5 m
3222.66 4370.1 3218.28 4365.72 3212.88 4365.72 c
3207.48 4365.72 3203.11 4370.1 3203.11 4375.5 c
3203.11 4380.89 3207.48 4385.27 3212.88 4385.27 c
3218.28 4385.27 3222.66 4380.89 3222.66 4375.5 c
f
n
3255.24 4415.41 m
3255.24 4410.02 3250.86 4405.64 3245.46 4405.64 c
3240.07 4405.64 3235.69 4410.02 3235.69 4415.41 c
3235.69 4420.81 3240.07 4425.19 3245.46 4425.19 c
3250.86 4425.19 3255.24 4420.81 3255.24 4415.41 c
f
n
3287.82 4455.33 m
3287.82 4449.93 3283.45 4445.55 3278.05 4445.55 c
3272.65 4445.55 3268.27 4449.93 3268.27 4455.33 c
3268.27 4460.73 3272.65 4465.1 3278.05 4465.1 c
3283.45 4465.1 3287.82 4460.73 3287.82 4455.33 c
f
n
3321.22 4495.24 m
3321.22 4489.84 3316.85 4485.47 3311.45 4485.47 c
3306.05 4485.47 3301.67 4489.84 3301.67 4495.24 c
3301.67 4500.64 3306.05 4505.02 3311.45 4505.02 c
3316.85 4505.02 3321.22 4500.64 3321.22 4495.24 c
f
n
3353.81 4535.16 m
3353.81 4529.76 3349.43 4525.38 3344.03 4525.38 c
3338.63 4525.38 3334.26 4529.76 3334.26 4535.16 c
3334.26 4540.55 3338.63 4544.93 3344.03 4544.93 c
3349.43 4544.93 3353.81 4540.55 3353.81 4535.16 c
f
n
3386.39 4575.07 m
3386.39 4569.67 3382.02 4565.3 3376.62 4565.3 c
3371.22 4565.3 3366.84 4569.67 3366.84 4575.07 c
3366.84 4580.47 3371.22 4584.85 3376.62 4584.85 c
3382.02 4584.85 3386.39 4580.47 3386.39 4575.07 c
f
n
2799.88 3788.18 m
2799.88 3782.78 2795.51 3778.4 2790.11 3778.4 c
2784.71 3778.4 2780.34 3782.78 2780.34 3788.18 c
2780.34 3793.57 2784.71 3797.95 2790.11 3797.95 c
2795.51 3797.95 2799.88 3793.57 2799.88 3788.18 c
f
n
2828.39 3831.35 m
2828.39 3825.95 2824.02 3821.57 2818.62 3821.57 c
2813.22 3821.57 2808.84 3825.95 2808.84 3831.35 c
2808.84 3836.75 2813.22 3841.12 2818.62 3841.12 c
2824.02 3841.12 2828.39 3836.75 2828.39 3831.35 c
f
n
2857.72 3874.52 m
2857.72 3869.12 2853.34 3864.75 2847.95 3864.75 c
2842.55 3864.75 2838.17 3869.12 2838.17 3874.52 c
2838.17 3879.92 2842.55 3884.3 2847.95 3884.3 c
2853.34 3884.3 2857.72 3879.92 2857.72 3874.52 c
f
n
2886.23 3917.7 m
2886.23 3912.3 2881.86 3907.92 2876.46 3907.92 c
2871.06 3907.92 2866.68 3912.3 2866.68 3917.7 c
2866.68 3923.09 2871.06 3927.47 2876.46 3927.47 c
2881.86 3927.47 2886.23 3923.09 2886.23 3917.7 c
f
n
2914.74 3960.87 m
2914.74 3955.47 2910.36 3951.09 2904.96 3951.09 c
2899.57 3951.09 2895.19 3955.47 2895.19 3960.87 c
2895.19 3966.27 2899.57 3970.64 2904.96 3970.64 c
2910.36 3970.64 2914.74 3966.27 2914.74 3960.87 c
f
n
2943.25 4003.23 m
2943.25 3997.83 2938.88 3993.45 2933.48 3993.45 c
2928.08 3993.45 2923.7 3997.83 2923.7 4003.23 c
2923.7 4008.63 2928.08 4013.0 2933.48 4013.0 c
2938.88 4013.0 2943.25 4008.63 2943.25 4003.23 c
f
n
2972.58 4046.4 m
2972.58 4041.0 2968.2 4036.63 2962.8 4036.63 c
2957.41 4036.63 2953.03 4041.0 2953.03 4046.4 c
2953.03 4051.8 2957.41 4056.18 2962.8 4056.18 c
2968.2 4056.18 2972.58 4051.8 2972.58 4046.4 c
f
n
3001.09 4089.57 m
3001.09 4084.18 2996.71 4079.8 2991.31 4079.8 c
2985.91 4079.8 2981.54 4084.18 2981.54 4089.57 c
2981.54 4094.97 2985.91 4099.35 2991.31 4099.35 c
2996.71 4099.35 3001.09 4094.97 3001.09 4089.57 c
f
n
3029.6 4132.75 m
3029.6 4127.35 3025.22 4122.97 3019.82 4122.97 c
3014.43 4122.97 3010.05 4127.35 3010.05 4132.75 c
3010.05 4138.15 3014.43 4142.52 3019.82 4142.52 c
3025.22 4142.52 3029.6 4138.15 3029.6 4132.75 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3087.43 4218.28 m
3087.43 4212.88 3083.06 4208.51 3077.66 4208.51 c
3072.26 4208.51 3067.89 4212.88 3067.89 4218.28 c
3067.89 4223.68 3072.26 4228.05 3077.66 4228.05 c
3083.06 4228.05 3087.43 4223.68 3087.43 4218.28 c
f
n
3115.95 4261.45 m
3115.95 4256.05 3111.57 4251.68 3106.17 4251.68 c
3100.77 4251.68 3096.39 4256.05 3096.39 4261.45 c
3096.39 4266.85 3100.77 4271.23 3106.17 4271.23 c
3111.57 4271.23 3115.95 4266.85 3115.95 4261.45 c
f
n
3144.46 4304.63 m
3144.46 4299.23 3140.08 4294.85 3134.68 4294.85 c
3129.28 4294.85 3124.91 4299.23 3124.91 4304.63 c
3124.91 4310.03 3129.28 4314.4 3134.68 4314.4 c
3140.08 4314.4 3144.46 4310.03 3144.46 4304.63 c
f
n
3173.78 4347.8 m
3173.78 4342.4 3169.41 4338.03 3164.01 4338.03 c
3158.61 4338.03 3154.23 4342.4 3154.23 4347.8 c
3154.23 4353.2 3158.61 4357.58 3164.01 4357.58 c
3169.41 4357.58 3173.78 4353.2 3173.78 4347.8 c
f
n
3202.29 4390.16 m
3202.29 4384.76 3197.92 4380.39 3192.52 4380.39 c
3187.12 4380.39 3182.74 4384.76 3182.74 4390.16 c
3182.74 4395.56 3187.12 4399.93 3192.52 4399.93 c
3197.92 4399.93 3202.29 4395.56 3202.29 4390.16 c
f
n
3230.8 4433.33 m
3230.8 4427.93 3226.43 4423.56 3221.03 4423.56 c
3215.63 4423.56 3211.25 4427.93 3211.25 4433.33 c
3211.25 4438.73 3215.63 4443.11 3221.03 4443.11 c
3226.43 4443.11 3230.8 4438.73 3230.8 4433.33 c
f
n
3259.31 4476.51 m
3259.31 4471.11 3254.94 4466.73 3249.54 4466.73 c
3244.14 4466.73 3239.77 4471.11 3239.77 4476.51 c
3239.77 4481.91 3244.14 4486.28 3249.54 4486.28 c
3254.94 4486.28 3259.31 4481.91 3259.31 4476.51 c
f
n
3288.64 4519.68 m
3288.64 4514.28 3284.26 4509.91 3278.86 4509.91 c
3273.46 4509.91 3269.09 4514.28 3269.09 4519.68 c
3269.09 4525.08 3273.46 4529.46 3278.86 4529.46 c
3284.26 4529.46 3288.64 4525.08 3288.64 4519.68 c
f
n
3317.15 4562.85 m
3317.15 4557.45 3312.77 4553.08 3307.38 4553.08 c
3301.98 4553.08 3297.6 4557.45 3297.6 4562.85 c
3297.6 4568.25 3301.98 4572.63 3307.38 4572.63 c
3312.77 4572.63 3317.15 4568.25 3317.15 4562.85 c
f
n
2838.98 3764.55 m
2838.98 3759.16 2834.61 3754.78 2829.21 3754.78 c
2823.81 3754.78 2819.43 3759.16 2819.43 3764.55 c
2819.43 3769.95 2823.81 3774.33 2829.21 3774.33 c
2834.61 3774.33 2838.98 3769.95 2838.98 3764.55 c
f
n
2863.42 3810.17 m
2863.42 3804.77 2859.05 3800.39 2853.65 3800.39 c
2848.25 3800.39 2843.87 3804.77 2843.87 3810.17 c
2843.87 3815.57 2848.25 3819.95 2853.65 3819.95 c
2859.05 3819.95 2863.42 3815.57 2863.42 3810.17 c
f
n
2887.86 3855.79 m
2887.86 3850.39 2883.48 3846.01 2878.09 3846.01 c
2872.69 3846.01 2868.31 3850.39 2868.31 3855.79 c
2868.31 3861.19 2872.69 3865.56 2878.09 3865.56 c
2883.48 3865.56 2887.86 3861.19 2887.86 3855.79 c
f
n
2912.3 3901.41 m
2912.3 3896.01 2907.92 3891.63 2902.52 3891.63 c
2897.12 3891.63 2892.75 3896.01 2892.75 3901.41 c
2892.75 3906.8 2897.12 3911.18 2902.52 3911.18 c
2907.92 3911.18 2912.3 3906.8 2912.3 3901.41 c
f
n
2936.73 3947.02 m
2936.73 3941.62 2932.36 3937.25 2926.96 3937.25 c
2921.56 3937.25 2917.19 3941.62 2917.19 3947.02 c
2917.19 3952.42 2921.56 3956.8 2926.96 3956.8 c
2932.36 3956.8 2936.73 3952.42 2936.73 3947.02 c
f
n
2961.17 3992.64 m
2961.17 3987.24 2956.8 3982.86 2951.4 3982.86 c
2946.0 3982.86 2941.62 3987.24 2941.62 3992.64 c
2941.62 3998.04 2946.0 4002.41 2951.4 4002.41 c
2956.8 4002.41 2961.17 3998.04 2961.17 3992.64 c
f
n
2985.61 4038.26 m
2985.61 4032.86 2981.23 4028.48 2975.84 4028.48 c
2970.44 4028.48 2966.06 4032.86 2966.06 4038.26 c
2966.06 4043.66 2970.44 4048.03 2975.84 4048.03 c
2981.23 4048.03 2985.61 4043.66 2985.61 4038.26 c
f
n
3010.05 4083.88 m
3010.05 4078.48 3005.67 4074.1 3000.27 4074.1 c
2994.88 4074.1 2990.5 4078.48 2990.5 4083.88 c
2990.5 4089.27 2994.88 4093.65 3000.27 4093.65 c
3005.67 4093.65 3010.05 4089.27 3010.05 4083.88 c
f
n
3034.49 4129.49 m
3034.49 4124.09 3030.11 4119.71 3024.71 4119.71 c
3019.31 4119.71 3014.94 4124.09 3014.94 4129.49 c
3014.94 4134.89 3019.31 4139.27 3024.71 4139.27 c
3030.11 4139.27 3034.49 4134.89 3034.49 4129.49 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3082.55 4221.54 m
3082.55 4216.14 3078.17 4211.77 3072.77 4211.77 c
3067.38 4211.77 3063.0 4216.14 3063.0 4221.54 c
3063.0 4226.94 3067.38 4231.32 3072.77 4231.32 c
3078.17 4231.32 3082.55 4226.94 3082.55 4221.54 c
f
n
3106.98 4267.16 m
3106.98 4261.76 3102.61 4257.38 3097.21 4257.38 c
3091.81 4257.38 3087.43 4261.76 3087.43 4267.16 c
3087.43 4272.55 3091.81 4276.93 3097.21 4276.93 c
3102.61 4276.93 3106.98 4272.55 3106.98 4267.16 c
f
n
3131.42 4312.77 m
3131.42 4307.38 3127.05 4303.0 3121.65 4303.0 c
3116.25 4303.0 3111.87 4307.38 3111.87 4312.77 c
3111.87 4318.17 3116.25 4322.55 3121.65 4322.55 c
3127.05 4322.55 3131.42 4318.17 3131.42 4312.77 c
f
n
3155.86 4358.39 m
3155.86 4352.99 3151.48 4348.62 3146.09 4348.62 c
3140.69 4348.62 3136.31 4352.99 3136.31 4358.39 c
3136.31 4363.79 3140.69 4368.16 3146.09 4368.16 c
3151.48 4368.16 3155.86 4363.79 3155.86 4358.39 c
f
n
3180.3 4404.01 m
3180.3 4398.61 3175.92 4394.23 3170.52 4394.23 c
3165.12 4394.23 3160.75 4398.61 3160.75 4404.01 c
3160.75 4409.41 3165.12 4413.78 3170.52 4413.78 c
3175.92 4413.78 3180.3 4409.41 3180.3 4404.01 c
f
n
3204.74 4449.62 m
3204.74 4444.23 3200.36 4439.85 3194.96 4439.85 c
3189.56 4439.85 3185.19 4444.23 3185.19 4449.62 c
3185.19 4455.02 3189.56 4459.4 3194.96 4459.4 c
3200.36 4459.4 3204.74 4455.02 3204.74 4449.62 c
f
n
3229.18 4495.24 m
3229.18 4489.84 3224.8 4485.47 3219.4 4485.47 c
3214.0 4485.47 3209.62 4489.84 3209.62 4495.24 c
3209.62 4500.64 3214.0 4505.02 3219.4 4505.02 c
3224.8 4505.02 3229.18 4500.64 3229.18 4495.24 c
f
n
3253.61 4540.86 m
3253.61 4535.46 3249.23 4531.09 3243.84 4531.09 c
3238.44 4531.09 3234.06 4535.46 3234.06 4540.86 c
3234.06 4546.26 3238.44 4550.63 3243.84 4550.63 c
3249.23 4550.63 3253.61 4546.26 3253.61 4540.86 c
f
n
3278.05 4586.48 m
3278.05 4581.08 3273.67 4576.7 3268.27 4576.7 c
3262.88 4576.7 3258.5 4581.08 3258.5 4586.48 c
3258.5 4591.88 3262.88 4596.25 3268.27 4596.25 c
3273.67 4596.25 3278.05 4591.88 3278.05 4586.48 c
f
n
2900.08 3793.06 m
2900.08 3787.66 2895.7 3783.29 2890.3 3783.29 c
2884.91 3783.29 2880.53 3787.66 2880.53 3793.06 c
2880.53 3798.46 2884.91 3802.84 2890.3 3802.84 c
2895.7 3802.84 2900.08 3798.46 2900.08 3793.06 c
f
n
2919.63 3841.12 m
2919.63 3835.73 2915.25 3831.35 2909.86 3831.35 c
2904.46 3831.35 2900.08 3835.73 2900.08 3841.12 c
2900.08 3846.52 2904.46 3850.9 2909.86 3850.9 c
2915.25 3850.9 2919.63 3846.52 2919.63 3841.12 c
f
n
2940.0 3889.19 m
2940.0 3883.79 2935.62 3879.41 2930.22 3879.41 c
2924.82 3879.41 2920.45 3883.79 2920.45 3889.19 c
2920.45 3894.59 2924.82 3898.96 2930.22 3898.96 c
2935.62 3898.96 2940.0 3894.59 2940.0 3889.19 c
f
n
2959.54 3936.43 m
2959.54 3931.04 2955.17 3926.66 2949.77 3926.66 c
2944.37 3926.66 2940.0 3931.04 2940.0 3936.43 c
2940.0 3941.83 2944.37 3946.21 2949.77 3946.21 c
2955.17 3946.21 2959.54 3941.83 2959.54 3936.43 c
f
n
2979.09 3984.49 m
2979.09 3979.09 2974.72 3974.72 2969.32 3974.72 c
2963.92 3974.72 2959.54 3979.09 2959.54 3984.49 c
2959.54 3989.89 2963.92 3994.27 2969.32 3994.27 c
2974.72 3994.27 2979.09 3989.89 2979.09 3984.49 c
f
n
2999.46 4032.55 m
2999.46 4027.16 2995.08 4022.78 2989.68 4022.78 c
2984.29 4022.78 2979.91 4027.16 2979.91 4032.55 c
2979.91 4037.95 2984.29 4042.33 2989.68 4042.33 c
2995.08 4042.33 2999.46 4037.95 2999.46 4032.55 c
f
n
3019.01 4079.8 m
3019.01 4074.4 3014.63 4070.03 3009.23 4070.03 c
3003.84 4070.03 2999.46 4074.4 2999.46 4079.8 c
2999.46 4085.2 3003.84 4089.57 3009.23 4089.57 c
3014.63 4089.57 3019.01 4085.2 3019.01 4079.8 c
f
n
3038.56 4127.86 m
3038.56 4122.46 3034.18 4118.09 3028.79 4118.09 c
3023.39 4118.09 3019.01 4122.46 3019.01 4127.86 c
3019.01 4133.26 3023.39 4137.64 3028.79 4137.64 c
3034.18 4137.64 3038.56 4133.26 3038.56 4127.86 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3078.48 4223.17 m
3078.48 4217.77 3074.1 4213.39 3068.7 4213.39 c
3063.3 4213.39 3058.93 4217.77 3058.93 4223.17 c
3058.93 4228.57 3063.3 4232.95 3068.7 4232.95 c
3074.1 4232.95 3078.48 4228.57 3078.48 4223.17 c
f
n
3098.02 4271.23 m
3098.02 4265.83 3093.65 4261.45 3088.25 4261.45 c
3082.85 4261.45 3078.48 4265.83 3078.48 4271.23 c
3078.48 4276.63 3082.85 4281.0 3088.25 4281.0 c
3093.65 4281.0 3098.02 4276.63 3098.02 4271.23 c
f
n
3117.57 4318.48 m
3117.57 4313.08 3113.2 4308.7 3107.8 4308.7 c
3102.4 4308.7 3098.02 4313.08 3098.02 4318.48 c
3098.02 4323.88 3102.4 4328.25 3107.8 4328.25 c
3113.2 4328.25 3117.57 4323.88 3117.57 4318.48 c
f
n
3137.94 4366.54 m
3137.94 4361.14 3133.56 4356.76 3128.16 4356.76 c
3122.77 4356.76 3118.39 4361.14 3118.39 4366.54 c
3118.39 4371.93 3122.77 4376.31 3128.16 4376.31 c
3133.56 4376.31 3137.94 4371.93 3137.94 4366.54 c
f
n
3157.49 4414.6 m
3157.49 4409.2 3153.11 4404.82 3147.71 4404.82 c
3142.32 4404.82 3137.94 4409.2 3137.94 4414.6 c
3137.94 4420.0 3142.32 4424.37 3147.71 4424.37 c
3153.11 4424.37 3157.49 4420.0 3157.49 4414.6 c
f
n
3177.04 4461.84 m
3177.04 4456.45 3172.66 4452.07 3167.27 4452.07 c
3161.87 4452.07 3157.49 4456.45 3157.49 4461.84 c
3157.49 4467.24 3161.87 4471.62 3167.27 4471.62 c
3172.66 4471.62 3177.04 4467.24 3177.04 4461.84 c
f
n
3197.41 4509.91 m
3197.41 4504.51 3193.03 4500.13 3187.63 4500.13 c
3182.23 4500.13 3177.86 4504.51 3177.86 4509.91 c
3177.86 4515.3 3182.23 4519.68 3187.63 4519.68 c
3193.03 4519.68 3197.41 4515.3 3197.41 4509.91 c
f
n
3216.96 4557.96 m
3216.96 4552.57 3212.58 4548.19 3207.18 4548.19 c
3201.78 4548.19 3197.41 4552.57 3197.41 4557.96 c
3197.41 4563.36 3201.78 4567.74 3207.18 4567.74 c
3212.58 4567.74 3216.96 4563.36 3216.96 4557.96 c
f
n
2938.36 3779.21 m
2938.36 3773.82 2933.99 3769.44 2928.59 3769.44 c
2923.19 3769.44 2918.82 3773.82 2918.82 3779.21 c
2918.82 3784.61 2923.19 3788.99 2928.59 3788.99 c
2933.99 3788.99 2938.36 3784.61 2938.36 3779.21 c
f
n
2953.03 3828.91 m
2953.03 3823.51 2948.65 3819.13 2943.25 3819.13 c
2937.86 3819.13 2933.48 3823.51 2933.48 3828.91 c
2933.48 3834.3 2937.86 3838.68 2943.25 3838.68 c
2948.65 3838.68 2953.03 3834.3 2953.03 3828.91 c
f
n
2968.5 3878.6 m
2968.5 3873.2 2964.13 3868.82 2958.73 3868.82 c
2953.33 3868.82 2948.95 3873.2 2948.95 3878.6 c
2948.95 3884.0 2953.33 3888.37 2958.73 3888.37 c
2964.13 3888.37 2968.5 3884.0 2968.5 3878.6 c
f
n
2983.17 3928.29 m
2983.17 3922.89 2978.79 3918.51 2973.39 3918.51 c
2967.99 3918.51 2963.62 3922.89 2963.62 3928.29 c
2963.62 3933.68 2967.99 3938.06 2973.39 3938.06 c
2978.79 3938.06 2983.17 3933.68 2983.17 3928.29 c
f
n
2998.64 3977.16 m
2998.64 3971.76 2994.27 3967.39 2988.87 3967.39 c
2983.47 3967.39 2979.09 3971.76 2979.09 3977.16 c
2979.09 3982.56 2983.47 3986.94 2988.87 3986.94 c
2994.27 3986.94 2998.64 3982.56 2998.64 3977.16 c
f
n
3013.31 4026.85 m
3013.31 4021.45 3008.93 4017.08 3003.53 4017.08 c
2998.13 4017.08 2993.76 4021.45 2993.76 4026.85 c
2993.76 4032.25 2998.13 4036.63 3003.53 4036.63 c
3008.93 4036.63 3013.31 4032.25 3013.31 4026.85 c
f
n
3028.79 4076.54 m
3028.79 4071.14 3024.41 4066.77 3019.01 4066.77 c
3013.61 4066.77 3009.23 4071.14 3009.23 4076.54 c
3009.23 4081.94 3013.61 4086.32 3019.01 4086.32 c
3024.41 4086.32 3028.79 4081.94 3028.79 4076.54 c
f
n
3043.45 4126.23 m
3043.45 4120.83 3039.07 4116.46 3033.67 4116.46 c
3028.27 4116.46 3023.9 4120.83 3023.9 4126.23 c
3023.9 4131.63 3028.27 4136.01 3033.67 4136.01 c
3039.07 4136.01 3043.45 4131.63 3043.45 4126.23 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3073.59 4224.8 m
3073.59 4219.4 3069.21 4215.02 3063.81 4215.02 c
3058.41 4215.02 3054.04 4219.4 3054.04 4224.8 c
3054.04 4230.2 3058.41 4234.57 3063.81 4234.57 c
3069.21 4234.57 3073.59 4230.2 3073.59 4224.8 c
f
n
3088.25 4274.49 m
3088.25 4269.09 3083.88 4264.71 3078.48 4264.71 c
3073.08 4264.71 3068.7 4269.09 3068.7 4274.49 c
3068.7 4279.89 3073.08 4284.26 3078.48 4284.26 c
3083.88 4284.26 3088.25 4279.89 3088.25 4274.49 c
f
n
3103.73 4324.18 m
3103.73 4318.78 3099.35 4314.4 3093.95 4314.4 c
3088.55 4314.4 3084.18 4318.78 3084.18 4324.18 c
3084.18 4329.58 3088.55 4333.95 3093.95 4333.95 c
3099.35 4333.95 3103.73 4329.58 3103.73 4324.18 c
f
n
3118.39 4373.87 m
3118.39 4368.47 3114.01 4364.09 3108.61 4364.09 c
3103.21 4364.09 3098.84 4368.47 3098.84 4373.87 c
3098.84 4379.27 3103.21 4383.64 3108.61 4383.64 c
3114.01 4383.64 3118.39 4379.27 3118.39 4373.87 c
f
n
3133.87 4422.74 m
3133.87 4417.34 3129.49 4412.97 3124.09 4412.97 c
3118.7 4412.97 3114.32 4417.34 3114.32 4422.74 c
3114.32 4428.14 3118.7 4432.52 3124.09 4432.52 c
3129.49 4432.52 3133.87 4428.14 3133.87 4422.74 c
f
n
3148.53 4472.43 m
3148.53 4467.04 3144.15 4462.66 3138.75 4462.66 c
3133.36 4462.66 3128.98 4467.04 3128.98 4472.43 c
3128.98 4477.83 3133.36 4482.21 3138.75 4482.21 c
3144.15 4482.21 3148.53 4477.83 3148.53 4472.43 c
f
n
3164.01 4522.12 m
3164.01 4516.73 3159.63 4512.35 3154.23 4512.35 c
3148.83 4512.35 3144.46 4516.73 3144.46 4522.12 c
3144.46 4527.52 3148.83 4531.9 3154.23 4531.9 c
3159.63 4531.9 3164.01 4527.52 3164.01 4522.12 c
f
n
3178.67 4571.81 m
3178.67 4566.41 3174.29 4562.04 3168.89 4562.04 c
3163.5 4562.04 3159.12 4566.41 3159.12 4571.81 c
3159.12 4577.21 3163.5 4581.59 3168.89 4581.59 c
3174.29 4581.59 3178.67 4577.21 3178.67 4571.81 c
f
n
2977.46 3769.44 m
2977.46 3764.04 2973.09 3759.67 2967.69 3759.67 c
2962.29 3759.67 2957.91 3764.04 2957.91 3769.44 c
2957.91 3774.84 2962.29 3779.21 2967.69 3779.21 c
2973.09 3779.21 2977.46 3774.84 2977.46 3769.44 c
f
n
2988.05 3820.76 m
2988.05 3815.36 2983.68 3810.98 2978.28 3810.98 c
2972.88 3810.98 2968.5 3815.36 2968.5 3820.76 c
2968.5 3826.16 2972.88 3830.54 2978.28 3830.54 c
2983.68 3830.54 2988.05 3826.16 2988.05 3820.76 c
f
n
2997.83 3871.27 m
2997.83 3865.87 2993.45 3861.49 2988.05 3861.49 c
2982.66 3861.49 2978.28 3865.87 2978.28 3871.27 c
2978.28 3876.66 2982.66 3881.04 2988.05 3881.04 c
2993.45 3881.04 2997.83 3876.66 2997.83 3871.27 c
f
n
3008.42 3921.77 m
3008.42 3916.37 3004.04 3912.0 2998.64 3912.0 c
2993.25 3912.0 2988.87 3916.37 2988.87 3921.77 c
2988.87 3927.17 2993.25 3931.54 2998.64 3931.54 c
3004.04 3931.54 3008.42 3927.17 3008.42 3921.77 c
f
n
3018.2 3972.27 m
3018.2 3966.88 3013.82 3962.5 3008.42 3962.5 c
3003.02 3962.5 2998.64 3966.88 2998.64 3972.27 c
2998.64 3977.67 3003.02 3982.05 3008.42 3982.05 c
3013.82 3982.05 3018.2 3977.67 3018.2 3972.27 c
f
n
3027.97 4023.59 m
3027.97 4018.2 3023.59 4013.82 3018.2 4013.82 c
3012.8 4013.82 3008.42 4018.2 3008.42 4023.59 c
3008.42 4028.99 3012.8 4033.37 3018.2 4033.37 c
3023.59 4033.37 3027.97 4028.99 3027.97 4023.59 c
f
n
3038.56 4074.1 m
3038.56 4068.7 3034.18 4064.32 3028.79 4064.32 c
3023.39 4064.32 3019.01 4068.7 3019.01 4074.1 c
3019.01 4079.5 3023.39 4083.88 3028.79 4083.88 c
3034.18 4083.88 3038.56 4079.5 3038.56 4074.1 c
f
n
3048.34 4124.6 m
3048.34 4119.2 3043.96 4114.83 3038.56 4114.83 c
3033.16 4114.83 3028.79 4119.2 3028.79 4124.6 c
3028.79 4130.0 3033.16 4134.38 3038.56 4134.38 c
3043.96 4134.38 3048.34 4130.0 3048.34 4124.6 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3068.7 4226.43 m
3068.7 4221.03 3064.32 4216.65 3058.93 4216.65 c
3053.53 4216.65 3049.15 4221.03 3049.15 4226.43 c
3049.15 4231.82 3053.53 4236.2 3058.93 4236.2 c
3064.32 4236.2 3068.7 4231.82 3068.7 4226.43 c
f
n
3078.48 4276.93 m
3078.48 4271.54 3074.1 4267.16 3068.7 4267.16 c
3063.3 4267.16 3058.93 4271.54 3058.93 4276.93 c
3058.93 4282.33 3063.3 4286.71 3068.7 4286.71 c
3074.1 4286.71 3078.48 4282.33 3078.48 4276.93 c
f
n
3089.07 4327.44 m
3089.07 4322.04 3084.69 4317.66 3079.29 4317.66 c
3073.89 4317.66 3069.52 4322.04 3069.52 4327.44 c
3069.52 4332.84 3073.89 4337.21 3079.29 4337.21 c
3084.69 4337.21 3089.07 4332.84 3089.07 4327.44 c
f
n
3098.84 4378.75 m
3098.84 4373.36 3094.46 4368.98 3089.07 4368.98 c
3083.67 4368.98 3079.29 4373.36 3079.29 4378.75 c
3079.29 4384.15 3083.67 4388.53 3089.07 4388.53 c
3094.46 4388.53 3098.84 4384.15 3098.84 4378.75 c
f
n
3108.61 4429.26 m
3108.61 4423.86 3104.24 4419.48 3098.84 4419.48 c
3093.44 4419.48 3089.07 4423.86 3089.07 4429.26 c
3089.07 4434.66 3093.44 4439.04 3098.84 4439.04 c
3104.24 4439.04 3108.61 4434.66 3108.61 4429.26 c
f
n
3119.2 4479.77 m
3119.2 4474.37 3114.83 4469.99 3109.43 4469.99 c
3104.03 4469.99 3099.65 4474.37 3099.65 4479.77 c
3099.65 4485.16 3104.03 4489.54 3109.43 4489.54 c
3114.83 4489.54 3119.2 4485.16 3119.2 4479.77 c
f
n
3128.98 4530.27 m
3128.98 4524.87 3124.6 4520.5 3119.2 4520.5 c
3113.8 4520.5 3109.43 4524.87 3109.43 4530.27 c
3109.43 4535.67 3113.8 4540.04 3119.2 4540.04 c
3124.6 4540.04 3128.98 4535.67 3128.98 4530.27 c
f
n
3139.57 4581.59 m
3139.57 4576.19 3135.19 4571.81 3129.79 4571.81 c
3124.39 4571.81 3120.02 4576.19 3120.02 4581.59 c
3120.02 4586.99 3124.39 4591.36 3129.79 4591.36 c
3135.19 4591.36 3139.57 4586.99 3139.57 4581.59 c
f
n
3018.2 3763.74 m
3018.2 3758.34 3013.82 3753.96 3008.42 3753.96 c
3003.02 3753.96 2998.64 3758.34 2998.64 3763.74 c
2998.64 3769.14 3003.02 3773.52 3008.42 3773.52 c
3013.82 3773.52 3018.2 3769.14 3018.2 3763.74 c
f
n
3023.08 3815.06 m
3023.08 3809.66 3018.71 3805.28 3013.31 3805.28 c
3007.91 3805.28 3003.53 3809.66 3003.53 3815.06 c
3003.53 3820.46 3007.91 3824.83 3013.31 3824.83 c
3018.71 3824.83 3023.08 3820.46 3023.08 3815.06 c
f
n
3027.97 3866.38 m
3027.97 3860.98 3023.59 3856.6 3018.2 3856.6 c
3012.8 3856.6 3008.42 3860.98 3008.42 3866.38 c
3008.42 3871.78 3012.8 3876.15 3018.2 3876.15 c
3023.59 3876.15 3027.97 3871.78 3027.97 3866.38 c
f
n
3032.86 3918.51 m
3032.86 3913.11 3028.48 3908.73 3023.08 3908.73 c
3017.68 3908.73 3013.31 3913.11 3013.31 3918.51 c
3013.31 3923.91 3017.68 3928.29 3023.08 3928.29 c
3028.48 3928.29 3032.86 3923.91 3032.86 3918.51 c
f
n
3038.56 3969.83 m
3038.56 3964.43 3034.18 3960.05 3028.79 3960.05 c
3023.39 3960.05 3019.01 3964.43 3019.01 3969.83 c
3019.01 3975.23 3023.39 3979.61 3028.79 3979.61 c
3034.18 3979.61 3038.56 3975.23 3038.56 3969.83 c
f
n
3043.45 4021.15 m
3043.45 4015.75 3039.07 4011.38 3033.67 4011.38 c
3028.27 4011.38 3023.9 4015.75 3023.9 4021.15 c
3023.9 4026.55 3028.27 4030.93 3033.67 4030.93 c
3039.07 4030.93 3043.45 4026.55 3043.45 4021.15 c
f
n
3048.34 4072.47 m
3048.34 4067.07 3043.96 4062.7 3038.56 4062.7 c
3033.16 4062.7 3028.79 4067.07 3028.79 4072.47 c
3028.79 4077.87 3033.16 4082.25 3038.56 4082.25 c
3043.96 4082.25 3048.34 4077.87 3048.34 4072.47 c
f
n
3053.22 4123.79 m
3053.22 4118.39 3048.85 4114.01 3043.45 4114.01 c
3038.05 4114.01 3033.67 4118.39 3033.67 4123.79 c
3033.67 4129.19 3038.05 4133.56 3043.45 4133.56 c
3048.85 4133.56 3053.22 4129.19 3053.22 4123.79 c
f
n
3058.93 4175.92 m
3058.93 4170.52 3054.55 4166.15 3049.15 4166.15 c
3043.75 4166.15 3039.38 4170.52 3039.38 4175.92 c
3039.38 4181.32 3043.75 4185.7 3049.15 4185.7 c
3054.55 4185.7 3058.93 4181.32 3058.93 4175.92 c
f
n
3063.81 4227.24 m
3063.81 4221.84 3059.43 4217.46 3054.04 4217.46 c
3048.64 4217.46 3044.26 4221.84 3044.26 4227.24 c
3044.26 4232.64 3048.64 4237.02 3054.04 4237.02 c
3059.43 4237.02 3063.81 4232.64 3063.81 4227.24 c
f
n
3068.7 4278.56 m
3068.7 4273.16 3064.32 4268.79 3058.93 4268.79 c
3053.53 4268.79 3049.15 4273.16 3049.15 4278.56 c
3049.15 4283.96 3053.53 4288.34 3058.93 4288.34 c
3064.32 4288.34 3068.7 4283.96 3068.7 4278.56 c
f
n
3073.59 4329.88 m
3073.59 4324.48 3069.21 4320.11 3063.81 4320.11 c
3058.41 4320.11 3054.04 4324.48 3054.04 4329.88 c
3054.04 4335.28 3058.41 4339.66 3063.81 4339.66 c
3069.21 4339.66 3073.59 4335.28 3073.59 4329.88 c
f
n
3078.48 4381.2 m
3078.48 4375.8 3074.1 4371.43 3068.7 4371.43 c
3063.3 4371.43 3058.93 4375.8 3058.93 4381.2 c
3058.93 4386.6 3063.3 4390.97 3068.7 4390.97 c
3074.1 4390.97 3078.48 4386.6 3078.48 4381.2 c
f
n
3084.18 4432.52 m
3084.18 4427.12 3079.8 4422.74 3074.4 4422.74 c
3069.0 4422.74 3064.62 4427.12 3064.62 4432.52 c
3064.62 4437.92 3069.0 4442.29 3074.4 4442.29 c
3079.8 4442.29 3084.18 4437.92 3084.18 4432.52 c
f
n
3089.07 4484.65 m
3089.07 4479.25 3084.69 4474.88 3079.29 4474.88 c
3073.89 4474.88 3069.52 4479.25 3069.52 4484.65 c
3069.52 4490.05 3073.89 4494.43 3079.29 4494.43 c
3084.69 4494.43 3089.07 4490.05 3089.07 4484.65 c
f
n
3093.95 4535.97 m
3093.95 4530.57 3089.57 4526.2 3084.18 4526.2 c
3078.78 4526.2 3074.4 4530.57 3074.4 4535.97 c
3074.4 4541.37 3078.78 4545.75 3084.18 4545.75 c
3089.57 4545.75 3093.95 4541.37 3093.95 4535.97 c
f
n
3098.84 4587.29 m
3098.84 4581.89 3094.46 4577.52 3089.07 4577.52 c
3083.67 4577.52 3079.29 4581.89 3079.29 4587.29 c
3079.29 4592.69 3083.67 4597.07 3089.07 4597.07 c
3094.46 4597.07 3098.84 4592.69 3098.84 4587.29 c
f
Q
q
n
0.0 0.0 m
W
n
q
951.313 0.0 0.0 -4.69205 1497.72 4059.77 cm
Q
Q
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
[/DeviceCMYK] cs 0.0 0.0 0.0 1.0 sc
%ADOBeginSubsetFont: LKKAAA+CMSY10 Initial
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
12 dict dup begin
/FontType 1 def
/FontName /LKKAAA+CMSY10 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/ItalicAngle 0 def
/WasEmbedded true def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
def
/FontBBox {-0 -960 943 750} def
end
systemdict begin
dup /Private
12 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-22 -0 683 705] def
/OtherBlues [-124 -119] def
/BlueScale 0.04379 def
/StdHW [40] def
/StdVW [85] def
/StemSnapH [40 55] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs [{ct_CffDict/F0Subr get exec} {ct_CffDict/F1Subr get exec}
{ct_CffDict/F2Subr get exec} {ct_CffDict/HSSubr get exec}] def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
1 dict dup begin
/.notdef <1C60D8A8C9C4A637> |-
end put
end
dup /FontName get exch definefont pop
end
end
-%ADOEndSubsetFont
-[ 0 /minus/periodcentered/multiply/asteriskmath 12 /circledot 15 /bullet
20 /lessequal/greaterequal 24 /similar/approxequal 28 /lessmuch 32 /space
/arrowright/quotedbl/numbersign/dollar/percent/ampersand
/quotesingle/parenleft/parenright/asterisk/plus/comma
/hyphen/period/slash/zero/one/element
/three/four/five/six/seven/eight
/nine/colon/semicolon/less/equal/greater
/question/at/A/B/C/D
/E/F/G/H/I/J
/K/L/M/N/O/P
/Q/R/S/T/U/V
/W/X/Y/Z/bracketleft/backslash
/bracketright/asciicircum/underscore/grave/a/b
/c/d/e/braceleft/braceright/angbracketleft
/angbracketright/bar/bardbl/l/m/backslash
/o/radical/q/r/s/t
/u/v/w/x/dagger/daggerdbl
/braceleft/bar/braceright/asciitilde/bullet/Euro
/bullet/quotesinglbase/florin/quotedblbase/ellipsis/dagger
/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE
/bullet/Zcaron/bullet/bullet/quoteleft/quoteright
/quotedblleft/quotedblright/bullet/endash/emdash/tilde
/trademark/scaron/guilsinglright/oe/bullet/zcaron
/Ydieresis/space/exclamdown/cent/sterling/currency
/yen/brokenbar/section/dieresis/copyright/ordfeminine
/guillemotleft/logicalnot/hyphen/registered/macron/degree
/plusminus/twosuperior/threesuperior/acute/mu/paragraph
/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright/onequarter
/onehalf/threequarters/questiondown/Agrave/Aacute/Acircumflex
/Atilde/Adieresis/Aring/AE/Ccedilla/Egrave
/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex
/Otilde/Odieresis/multiply/Oslash/Ugrave/Uacute
/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave
/aacute/acircumflex/atilde/adieresis/aring/ae
/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
/iacute/icircumflex/idieresis/eth/ntilde/ograve
/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn
/ydieresis
/N33 (LKKAAA+CMSY10) -1 TZ
251.545 364.327 m
%ADOBeginSubsetFont: LKKAAA+CMSY10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/LKKAAA+CMSY10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/minus <1C60D8A8C9B08A946182837629008DF7702985522C1BEB432204C2EF
9CAB07AB654895DD8804EF7ED97DE3E2616CBB2FB21BE3D9> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/LKKAAA+CMSY10 findfont /Encoding get
dup 0 /minus put
pop
end
-%ADOEndSubsetFont
-/N33 10.6637 Tf
(\000) show
259.874 364.327 m
%ADOBeginSubsetFont: UPIBAA+CMR10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/UPIBAA+CMR10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/zero <1C60D8A8C9B7A73D3B2D32309B1F5D5A32FC3614834F8BC61B6EB92C1
2484BD76628737DA40CF9DA1C97CCDAFB1D1B732C642F74A7C41B7D3AC6DAF8D
1E760692B6EBD2417EF1893A4AA0B1CF049D4C54D830CEC073A9153D451FAD42
892B0930AEE4FE18588336BFDAD60D8A4F4CFFED76F103FB9BBD8A33EFBA3F18
232B88D88FE54E17260FA3E2CC29DEC0CB72B88DC816FF5> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/UPIBAA+CMR10 findfont /Encoding get
dup 48 /zero put
pop
end
-%ADOEndSubsetFont
-/N41 10.6637 Tf
(0) show
%ADOBeginSubsetFont: ERNAAA+CMMI10 Initial
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
12 dict dup begin
/FontType 1 def
/FontName /ERNAAA+CMMI10 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/ItalicAngle 0 def
/WasEmbedded true def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
def
/FontBBox {-13 -250 1044 750} def
end
systemdict begin
dup /Private
12 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-22 -0 683 705 431 442 453 466] def
/OtherBlues [-205 -194] def
/BlueScale 0.04379 def
/StdHW [31] def
/StdVW [72] def
/StemSnapH [25 31] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs [{ct_CffDict/F0Subr get exec} {ct_CffDict/F1Subr get exec}
{ct_CffDict/F2Subr get exec} {ct_CffDict/HSSubr get exec}] def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
1 dict dup begin
/.notdef <1C60D8A8C9B08A959E2F69652E8B8F> |-
end put
end
dup /FontName get exch definefont pop
end
end
-%ADOEndSubsetFont
-[ 1 /dotlessi/caron 11 /alpha/beta 14 /delta 21 /lambda
/mu 24 /xi/pi 27 /sigma 30 /phi/chi
/psi/exclam/epsilon/theta1/dollar/percent
/ampersand/phi1/parenleft/parenright/asterisk/plus
/comma/hyphen/period/slash/zero/one
/two/three/four/five/six/seven
/eight/nine/period/comma/less/slash
/greater/question/at/A/B/C
/D/E/F/G/H/I
/J/K/L/M/N/O
/P/Q/R/S/T/U
/V/W/X/Y/Z/bracketleft
/backslash/bracketright/asciicircum/underscore/grave/a
/b/c/d/e/f/g
/h/i/j/k/l/m
/n/o/p/q/r/s
/t/u/v/w/x/y
/z/braceleft/bar/braceright/asciitilde/bullet
/Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis
/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft
/OE/bullet/Zcaron/bullet/bullet/quoteleft
/quoteright/quotedblleft/quotedblright/bullet/endash/emdash
/tilde/trademark/scaron/guilsinglright/oe/bullet
/zcaron/Ydieresis/space/exclamdown/cent/sterling
/currency/yen/brokenbar/section/dieresis/copyright
/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron
/degree/plusminus/twosuperior/threesuperior/acute/mu
/paragraph/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright
/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute
/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute
/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute
/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave
/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls
/agrave/aacute/acircumflex/atilde/adieresis/aring
/ae/ccedilla/egrave/eacute/ecircumflex/edieresis
/igrave/iacute/icircumflex/idieresis/eth/ntilde
/ograve/oacute/ocircumflex/otilde/odieresis/divide
/oslash/ugrave/uacute/ucircumflex/udieresis/yacute
/thorn/ydieresis
/N21 (ERNAAA+CMMI10) -1 TZ
265.152 364.327 m
%ADOBeginSubsetFont: ERNAAA+CMMI10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/ERNAAA+CMMI10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/period <1C60D8A8C9B08A9570810981675968F2C907C696DFE9BE69433F613
9DF6C45B8165ACC43B6E0B309859F778ABCF0> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/ERNAAA+CMMI10 findfont /Encoding get
dup 58 /period put
pop
end
-%ADOEndSubsetFont
-/N21 10.6637 Tf
(:) show
268.084 364.327 m
/N41 10.6637 Tf
(500)
[34.0627 37.2561 5.27853 ] pdfxs
344.682 364.327 m
/N21 10.6637 Tf
(:) show
347.615 364.327 m
/N41 10.6637 Tf
(5) show
236.739 372.965 m
/N33 10.6637 Tf
(\000) show
245.067 372.965 m
/N41 10.6637 Tf
(0) show
250.346 372.965 m
/N21 10.6637 Tf
(:) show
253.278 372.965 m
/N41 10.6637 Tf
(5) show
255.018 413.958 m
(0) show
246.65 455.339 m
(0) show
251.929 455.339 m
/N21 10.6637 Tf
(:) show
254.861 455.339 m
/N41 10.6637 Tf
(5) show
Q
q
n
3703.6 4688.29 m
4835.88 4688.29 l
4835.88 3620.36 l
3703.6 3620.36 l
h
W
n
4.88755 w
1 j
[4.88755 39.1004 ] 0.0 d
3.25837 w
[] 0.0 d
4.88755 w
Q
q
n
3829.05 4649.19 m
4725.1 4649.19 l
4725.1 3701.01 l
3829.05 3701.01 l
h
W
n
Q
q
n
0.0 0.0 m
W
n
q
951.313 0.0 0.0 -4.69205 2750.54 4059.77 cm
Q
Q
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
Q
Q
Q
/LKKAAA+CMSY10 /Font _pdfUndefineResource
/N33 /Font _pdfUndefineResource
/UPIBAA+CMR10 /Font _pdfUndefineResource
/N41 /Font _pdfUndefineResource
/ERNAAA+CMMI10 /Font _pdfUndefineResource
/N21 /Font _pdfUndefineResource
[/EMC PDFMark5
PDFVars/TermAll get exec end end
%%PageTrailer
%%Trailer
%%EOF
\ No newline at end of file
diff --git a/doc/tutorial/images/modified_polar_grid.pdf b/doc/tutorial/images/modified_polar_grid.pdf
deleted file mode 100644
index 883c3a2..0000000
Binary files a/doc/tutorial/images/modified_polar_grid.pdf and /dev/null differ
diff --git a/doc/tutorial/images/nfft_times_flops.eps b/doc/tutorial/images/nfft_times_flops.eps
deleted file mode 100644
index 044d8fb..0000000
--- a/doc/tutorial/images/nfft_times_flops.eps
+++ /dev/null
@@ -1,511 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc. Version 7.6.0.324 (R2008a). Operating System: Linux 2.6.22.12-0.1-default #1 SMP 2007/11/06 23:05:18 UTC i686.
-%%Title: ./nfft_times_flops.eps
-%%CreationDate: 10/10/2008 08:49:54
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 75 338 547 463
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 75 338 547 463
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 687 1783 5665 1498 MR c np
-85 dict begin %Colortable dictionary
-/c0 { 0.000000 0.000000 0.000000 sr} bdef
-/c1 { 1.000000 1.000000 1.000000 sr} bdef
-/c2 { 0.900000 0.000000 0.000000 sr} bdef
-/c3 { 0.000000 0.820000 0.000000 sr} bdef
-/c4 { 0.000000 0.000000 0.800000 sr} bdef
-/c5 { 0.910000 0.820000 0.320000 sr} bdef
-/c6 { 1.000000 0.260000 0.820000 sr} bdef
-/c7 { 0.000000 0.820000 0.820000 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6917 5186 PR
-6 w
-0 1340 5360 0 0 -1340 899 3172 4 MP
-PP
--5360 0 0 1340 5360 0 0 -1340 899 3172 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 3172 mt 6259 3172 L
- 899 1832 mt 6259 1832 L
- 899 3172 mt 899 1832 L
-6259 3172 mt 6259 1832 L
- 899 3172 mt 6259 3172 L
- 899 3172 mt 899 1832 L
-1181 3172 mt 1181 3118 L
-1181 1832 mt 1181 1885 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 80 FMSR
-
-1159 3280 mt
-(4) s
-1745 3172 mt 1745 3118 L
-1745 1832 mt 1745 1885 L
-1723 3280 mt
-(6) s
-2309 3172 mt 2309 3118 L
-2309 1832 mt 2309 1885 L
-2287 3280 mt
-(8) s
-2873 3172 mt 2873 3118 L
-2873 1832 mt 2873 1885 L
-2829 3280 mt
-(10) s
-3437 3172 mt 3437 3118 L
-3437 1832 mt 3437 1885 L
-3393 3280 mt
-(12) s
-4002 3172 mt 4002 3118 L
-4002 1832 mt 4002 1885 L
-3958 3280 mt
-(14) s
-4566 3172 mt 4566 3118 L
-4566 1832 mt 4566 1885 L
-4522 3280 mt
-(16) s
-5130 3172 mt 5130 3118 L
-5130 1832 mt 5130 1885 L
-5086 3280 mt
-(18) s
-5694 3172 mt 5694 3118 L
-5694 1832 mt 5694 1885 L
-5650 3280 mt
-(20) s
-6259 3172 mt 6259 3118 L
-6259 1832 mt 6259 1885 L
-6215 3280 mt
-(22) s
- 899 3172 mt 952 3172 L
-6259 3172 mt 6205 3172 L
- 820 3201 mt
-(0) s
- 899 2892 mt 952 2892 L
-6259 2892 mt 6205 2892 L
- 731 2921 mt
-(500) s
- 899 2613 mt 952 2613 L
-6259 2613 mt 6205 2613 L
- 687 2642 mt
-(1000) s
- 899 2334 mt 952 2334 L
-6259 2334 mt 6205 2334 L
- 687 2363 mt
-(1500) s
- 899 2055 mt 952 2055 L
-6259 2055 mt 6205 2055 L
- 687 2084 mt
-(2000) s
- 899 3172 mt 6259 3172 L
- 899 1832 mt 6259 1832 L
- 899 3172 mt 899 1832 L
-6259 3172 mt 6259 1832 L
-gs 899 1832 5361 1341 MR c np
-7.2 w
-283 28 282 -7 282 14 282 -6 282 25 282 37 282 -5 282 33
-282 164 283 374 282 134 282 95 282 26 282 -91 282 58 282 29
-282 -102 282 -213 282 -335 899 2656 20 MP stroke
-gr
-
-7.2 w
- 20 20 899 2656 FO
- 20 20 1181 2321 FO
- 20 20 1463 2108 FO
- 20 20 1745 2006 FO
- 20 20 2027 2035 FO
- 20 20 2309 2093 FO
- 20 20 2591 2002 FO
- 20 20 2873 2028 FO
- 20 20 3155 2123 FO
- 20 20 3437 2257 FO
- 20 20 3720 2631 FO
- 20 20 4002 2795 FO
- 20 20 4284 2828 FO
- 20 20 4566 2823 FO
- 20 20 4848 2860 FO
- 20 20 5130 2885 FO
- 20 20 5412 2879 FO
- 20 20 5694 2893 FO
- 20 20 5976 2886 FO
- 20 20 6259 2914 FO
-gs 899 1832 5361 1341 MR c np
-283 5 282 9 282 7 282 -9 282 4 282 11 282 3 282 -6
-282 12 283 23 282 22 282 144 282 -21 282 13 282 -14 282 -51
-282 -14 282 -46 282 -23 899 2907 20 MP stroke
-gr
-
- 885 2893 mt 913 2921 L
- 913 2893 mt 885 2921 L
-1167 2870 mt 1195 2898 L
-1195 2870 mt 1167 2898 L
-1449 2824 mt 1477 2852 L
-1477 2824 mt 1449 2852 L
-1731 2810 mt 1759 2838 L
-1759 2810 mt 1731 2838 L
-2013 2759 mt 2041 2787 L
-2041 2759 mt 2013 2787 L
-2295 2745 mt 2323 2773 L
-2323 2745 mt 2295 2773 L
-2577 2758 mt 2605 2786 L
-2605 2758 mt 2577 2786 L
-2859 2737 mt 2887 2765 L
-2887 2737 mt 2859 2765 L
-3141 2881 mt 3169 2909 L
-3169 2881 mt 3141 2909 L
-3423 2903 mt 3451 2931 L
-3451 2903 mt 3423 2931 L
-3706 2926 mt 3734 2954 L
-3734 2926 mt 3706 2954 L
-3988 2938 mt 4016 2966 L
-4016 2938 mt 3988 2966 L
-4270 2932 mt 4298 2960 L
-4298 2932 mt 4270 2960 L
-4552 2935 mt 4580 2963 L
-4580 2935 mt 4552 2963 L
-4834 2946 mt 4862 2974 L
-4862 2946 mt 4834 2974 L
-5116 2950 mt 5144 2978 L
-5144 2950 mt 5116 2978 L
-5398 2941 mt 5426 2969 L
-5426 2941 mt 5398 2969 L
-5680 2948 mt 5708 2976 L
-5708 2948 mt 5680 2976 L
-5962 2957 mt 5990 2985 L
-5990 2957 mt 5962 2985 L
-6245 2962 mt 6273 2990 L
-6273 2962 mt 6245 2990 L
-gs 899 1832 5361 1341 MR c np
-283 6 282 10 282 4 282 -10 282 -1 282 14 282 2 282 0
-282 3 283 23 282 52 282 118 282 0 282 -10 282 -27 282 -22
-282 -13 282 -56 282 -41 899 2924 20 MP stroke
-gr
-
- 879 2924 mt 919 2924 L
- 899 2904 mt 899 2944 L
-1161 2883 mt 1201 2883 L
-1181 2863 mt 1181 2903 L
-1443 2827 mt 1483 2827 L
-1463 2807 mt 1463 2847 L
-1725 2814 mt 1765 2814 L
-1745 2794 mt 1745 2834 L
-2007 2792 mt 2047 2792 L
-2027 2772 mt 2027 2812 L
-2289 2765 mt 2329 2765 L
-2309 2745 mt 2309 2785 L
-2571 2755 mt 2611 2755 L
-2591 2735 mt 2591 2775 L
-2853 2755 mt 2893 2755 L
-2873 2735 mt 2873 2775 L
-3135 2873 mt 3175 2873 L
-3155 2853 mt 3155 2893 L
-3417 2925 mt 3457 2925 L
-3437 2905 mt 3437 2945 L
-3700 2948 mt 3740 2948 L
-3720 2928 mt 3720 2968 L
-3982 2951 mt 4022 2951 L
-4002 2931 mt 4002 2971 L
-4264 2951 mt 4304 2951 L
-4284 2931 mt 4284 2971 L
-4546 2953 mt 4586 2953 L
-4566 2933 mt 4566 2973 L
-4828 2967 mt 4868 2967 L
-4848 2947 mt 4848 2987 L
-5110 2966 mt 5150 2966 L
-5130 2946 mt 5130 2986 L
-5392 2956 mt 5432 2956 L
-5412 2936 mt 5412 2976 L
-5674 2960 mt 5714 2960 L
-5694 2940 mt 5694 2980 L
-5956 2970 mt 5996 2970 L
-5976 2950 mt 5976 2990 L
-6239 2976 mt 6279 2976 L
-6259 2956 mt 6259 2996 L
-gs 899 1832 5361 1341 MR c np
-DO
-565 -7 564 -26 564 -18 564 243 565 767 564 156 564 0 564 -108
-1745 1980 9 MP stroke
-SO
-gr
-
- 20 20 1745 1980 FO
- 20 20 2309 1872 FO
- 20 20 2873 1872 FO
- 20 20 3437 2028 FO
- 20 20 4002 2795 FO
- 20 20 4566 3038 FO
- 20 20 5130 3020 FO
- 20 20 5694 2994 FO
- 20 20 6259 2987 FO
-gs 899 1832 5361 1341 MR c np
-DO
-565 15 564 9 564 -11 564 0 565 69 564 53 564 31 564 -25
-1745 2896 9 MP stroke
-SO
-gr
-
-1731 2882 mt 1759 2910 L
-1759 2882 mt 1731 2910 L
-2295 2857 mt 2323 2885 L
-2323 2857 mt 2295 2885 L
-2859 2888 mt 2887 2916 L
-2887 2888 mt 2859 2916 L
-3423 2941 mt 3451 2969 L
-3451 2941 mt 3423 2969 L
-3988 3010 mt 4016 3038 L
-4016 3010 mt 3988 3038 L
-4552 3010 mt 4580 3038 L
-4580 3010 mt 4552 3038 L
-5116 2999 mt 5144 3027 L
-5144 2999 mt 5116 3027 L
-5680 3008 mt 5708 3036 L
-5708 3008 mt 5680 3036 L
-6245 3023 mt 6273 3051 L
-6273 3023 mt 6245 3051 L
-gs 899 1832 5361 1341 MR c np
-DO
-565 27 564 -4 564 -17 564 -5 565 93 564 107 564 6 564 -39
-1745 2880 9 MP stroke
-SO
-gr
-
-1725 2880 mt 1765 2880 L
-1745 2860 mt 1745 2900 L
-2289 2841 mt 2329 2841 L
-2309 2821 mt 2309 2861 L
-2853 2847 mt 2893 2847 L
-2873 2827 mt 2873 2867 L
-3417 2954 mt 3457 2954 L
-3437 2934 mt 3437 2974 L
-3982 3047 mt 4022 3047 L
-4002 3027 mt 4002 3067 L
-4546 3042 mt 4586 3042 L
-4566 3022 mt 4566 3062 L
-5110 3025 mt 5150 3025 L
-5130 3005 mt 5130 3045 L
-5674 3021 mt 5714 3021 L
-5694 3001 mt 5694 3041 L
-6239 3048 mt 6279 3048 L
-6259 3028 mt 6259 3068 L
-gs 899 1832 5361 1341 MR c np
-DA
-846 207 846 55 847 855 846 39 2591 1885 5 MP stroke
-SO
-gr
-
- 20 20 2591 1885 FO
- 20 20 3437 1924 FO
- 20 20 4284 2779 FO
- 20 20 5130 2834 FO
- 20 20 5976 3041 FO
-gs 899 1832 5361 1341 MR c np
-DA
-846 86 846 30 847 21 846 29 2591 2951 5 MP stroke
-SO
-gr
-
-2577 2937 mt 2605 2965 L
-2605 2937 mt 2577 2965 L
-3423 2966 mt 3451 2994 L
-3451 2966 mt 3423 2994 L
-4270 2987 mt 4298 3015 L
-4298 2987 mt 4270 3015 L
-5116 3017 mt 5144 3045 L
-5144 3017 mt 5116 3045 L
-5962 3103 mt 5990 3131 L
-5990 3103 mt 5962 3131 L
-gs 899 1832 5361 1341 MR c np
-DA
-846 20 846 33 847 31 846 75 2591 2917 5 MP stroke
-SO
-gr
-
-2571 2917 mt 2611 2917 L
-2591 2897 mt 2591 2937 L
-3417 2992 mt 3457 2992 L
-3437 2972 mt 3437 3012 L
-4264 3023 mt 4304 3023 L
-4284 3003 mt 4284 3043 L
-5110 3056 mt 5150 3056 L
-5130 3036 mt 5130 3076 L
-5956 3076 mt 5996 3076 L
-5976 3056 mt 5976 3096 L
-gs 899 1832 5361 1341 MR c np
-6 w
-gr
-
-6 w
-
-end %%Color Dict
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/nfft_times_flops.pdf b/doc/tutorial/images/nfft_times_flops.pdf
deleted file mode 100644
index c8b92a7..0000000
Binary files a/doc/tutorial/images/nfft_times_flops.pdf and /dev/null differ
diff --git a/doc/tutorial/images/nfft_times_frodo.txt b/doc/tutorial/images/nfft_times_frodo.txt
deleted file mode 100644
index 9e25808..0000000
--- a/doc/tutorial/images/nfft_times_frodo.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-\hline $l_N$ & FFT & NDFT & NFFT & NFFT/FFT\\
-\hline \hline \multicolumn{5}{|c|}{$d=1$} \\ \hline
-\verb+3+& \verb+1.3e-07+ & \verb+8.6e-06+ & \verb+1.3e-06+ & \verb+(10.0)+\\
-\verb+4+& \verb+2.1e-07+ & \verb+3.5e-05+ & \verb+2.7e-06+ & \verb+(12.9)+\\
-\verb+5+& \verb+4.2e-07+ & \verb+1.4e-04+ & \verb+5.2e-06+ & \verb+(12.3)+\\
-\verb+6+& \verb+9.2e-07+ & \verb+5.7e-04+ & \verb+1.1e-05+ & \verb+(11.5)+\\
-\verb+7+& \verb+2.2e-06+ & \verb+2.3e-03+ & \verb+2.1e-05+ & \verb+(9.5)+\\
-\verb+8+& \verb+5.3e-06+ & \verb+9.2e-03+ & \verb+4.4e-05+ & \verb+(8.3)+\\
-\verb+9+& \verb+1.1e-05+ & \verb+3.7e-02+ & \verb+9.8e-05+ & \verb+(8.8)+\\
-\verb+10+& \verb+2.5e-05+ & \verb+1.5e-01+ & \verb+2.0e-04+ & \verb+(8.1)+\\
-\verb+11+& \verb+6.0e-05+ & \verb+6.0e-01+ & \verb+6.5e-04+ & \verb+(10.8)+\\
-\verb+12+& \verb+1.5e-04+ & \verb+2.4e+00+ & \verb+1.5e-03+ & \verb+(9.8)+\\
-\verb+13+& \verb+5.5e-04+ & \verb+9.6e+00+ & \verb+3.5e-03+ & \verb+(6.4)+\\
-\verb+14+& \verb+1.7e-03+ & \verb+4.0e+01+ & \verb+7.8e-03+ & \verb+(4.6)+\\
-\verb+15+& \verb+4.0e-03+ & \verb+1.6e+02+ & \verb+1.6e-02+ & \verb+(4.1)+\\
-\verb+16+& \verb+8.4e-03+ & \verb+*+ & \verb+3.4e-02+ & \verb+(4.1)+\\
-\verb+17+& \verb+2.0e-02+ & \verb+*+ & \verb+7.5e-02+ & \verb+(3.8)+\\
-\verb+18+& \verb+4.6e-02+ & \verb+*+ & \verb+1.6e-01+ & \verb+(3.4)+\\
-\verb+19+& \verb+9.5e-02+ & \verb+*+ & \verb+3.2e-01+ & \verb+(3.4)+\\
-\verb+20+& \verb+2.1e-01+ & \verb+*+ & \verb+6.9e-01+ & \verb+(3.3)+\\
-\verb+21+& \verb+4.3e-01+ & \verb+*+ & \verb+1.5e+00+ & \verb+(3.5)+\\
-\verb+22+& \verb+1.0e+00+ & \verb+*+ & \verb+3.2e+00+ & \verb+(3.1)+\\
-\hline $l_N$ & FFT & NDFT & NFFT & NFFT/FFT\\
-\hline \hline \multicolumn{5}{|c|}{$d=2$} \\ \hline
-\verb+6+& \verb+9.0e-07+ & \verb+6.0e-04+ & \verb+6.3e-05+ & \verb+(70.4)+\\
-\verb+8+& \verb+4.4e-06+ & \verb+9.5e-03+ & \verb+2.5e-04+ & \verb+(58.0)+\\
-\verb+10+& \verb+2.2e-05+ & \verb+1.5e-01+ & \verb+1.2e-03+ & \verb+(55.0)+\\
-\verb+12+& \verb+1.2e-04+ & \verb+2.4e+00+ & \verb+6.4e-03+ & \verb+(52.5)+\\
-\verb+14+& \verb+1.7e-03+ & \verb+4.0e+01+ & \verb+4.0e-02+ & \verb+(23.4)+\\
-\verb+16+& \verb+2.2e-02+ & \verb+*+ & \verb+1.7e-01+ & \verb+(7.8)+\\
-\verb+18+& \verb+8.7e-02+ & \verb+*+ & \verb+6.7e-01+ & \verb+(7.7)+\\
-\verb+20+& \verb+3.3e-01+ & \verb+*+ & \verb+3.0e+00+ & \verb+(9.1)+\\
-\verb+22+& \verb+1.4e+00+ & \verb+*+ & \verb+1.4e+01+ & \verb+(10.1)+\\
-\hline \hline \multicolumn{5}{|c|}{$d=3$} \\ \hline
-\verb+9+& \verb+1.0e-05+ & \verb+3.8e-02+ & \verb+4.4e-03+ & \verb+(423.4)+\\
-\verb+12+& \verb+1.1e-04+ & \verb+2.4e+00+ & \verb+4.2e-02+ & \verb+(369.1)+\\
-\verb+15+& \verb+3.5e-03+ & \verb+1.6e+02+ & \verb+3.9e-01+ & \verb+(110.8)+\\
-\verb+18+& \verb+3.9e-02+ & \verb+*+ & \verb+3.9e+00+ & \verb+(99.3)+\\
-\verb+21+& \verb+9.4e-01+ & \verb+*+ & \verb+8.4e+01+ & \verb+(89.0)+\\
diff --git a/doc/tutorial/images/nfft_times_frodo_flops.m b/doc/tutorial/images/nfft_times_frodo_flops.m
deleted file mode 100644
index eb40343..0000000
--- a/doc/tutorial/images/nfft_times_frodo_flops.m
+++ /dev/null
@@ -1,36 +0,0 @@
-3 1.3e-07 8.6e-06 1.3e-06 10.0
-4 2.1e-07 3.5e-05 2.7e-06 12.9
-5 4.2e-07 1.4e-04 5.2e-06 12.3
-6 9.2e-07 5.7e-04 1.1e-05 11.5
-7 2.2e-06 2.3e-03 2.1e-05 9.5
-8 5.3e-06 9.2e-03 4.4e-05 8.3
-9 1.1e-05 3.7e-02 9.8e-05 8.8
-10 2.5e-05 1.5e-01 2.0e-04 8.1
-11 6.0e-05 6.0e-01 6.5e-04 10.8
-12 1.5e-04 2.4e+00 1.5e-03 9.8
-13 5.5e-04 9.6e+00 3.5e-03 6.4
-14 1.7e-03 4.0e+01 7.8e-03 4.6
-15 4.0e-03 1.6e+02 1.6e-02 4.1
-16 8.4e-03 nan 3.4e-02 4.1
-17 2.0e-02 nan 7.5e-02 3.8
-18 4.6e-02 nan 1.6e-01 3.4
-19 9.5e-02 nan 3.2e-01 3.4
-20 2.1e-01 nan 6.9e-01 3.3
-21 4.3e-01 nan 1.5e+00 3.5
-22 1.0e+00 nan 3.2e+00 3.1
-
-6 9.0e-07 6.0e-04 6.3e-05 70.4
-8 4.4e-06 9.5e-03 2.5e-04 58.0
-10 2.2e-05 1.5e-01 1.2e-03 55.0
-12 1.2e-04 2.4e+00 6.4e-03 52.5
-14 1.7e-03 4.0e+01 4.0e-02 23.4
-16 2.2e-02 nan 1.7e-01 7.8
-18 8.7e-02 nan 6.7e-01 7.7
-20 3.3e-01 nan 3.0e+00 9.1
-22 1.4e+00 nan 1.4e+01 10.1
-
-9 1.0e-05 3.8e-02 4.4e-03 423.4
-12 1.1e-04 2.4e+00 4.2e-02 369.1
-15 3.5e-03 1.6e+02 3.9e-01 110.8
-18 3.9e-02 nan 3.9e+00 99.3
-21 9.4e-01 nan 8.4e+01 89.0
diff --git a/doc/tutorial/images/nfft_times_frodo_m_2.txt b/doc/tutorial/images/nfft_times_frodo_m_2.txt
deleted file mode 100644
index c2a226b..0000000
--- a/doc/tutorial/images/nfft_times_frodo_m_2.txt
+++ /dev/null
@@ -1,39 +0,0 @@
-\hline $l_N$ & FFT & NDFT & NFFT & NFFT/FFT\\
-\hline \hline \multicolumn{5}{|c|}{$d=1$} \\ \hline
-\verb+3+& \verb+1.3e-07+ & \verb+8.6e-06+ & \verb+1.1e-06+ & \verb+(8.6)+\\
-\verb+4+& \verb+2.1e-07+ & \verb+3.5e-05+ & \verb+2.2e-06+ & \verb+(10.5)+\\
-\verb+5+& \verb+3.7e-07+ & \verb+1.4e-04+ & \verb+4.2e-06+ & \verb+(11.4)+\\
-\verb+6+& \verb+9.4e-07+ & \verb+5.7e-04+ & \verb+9.1e-06+ & \verb+(9.8)+\\
-\verb+7+& \verb+2.1e-06+ & \verb+2.3e-03+ & \verb+1.9e-05+ & \verb+(9.0)+\\
-\verb+8+& \verb+5.1e-06+ & \verb+9.2e-03+ & \verb+3.9e-05+ & \verb+(7.7)+\\
-\verb+9+& \verb+1.1e-05+ & \verb+3.7e-02+ & \verb+8.3e-05+ & \verb+(7.4)+\\
-\verb+10+& \verb+2.5e-05+ & \verb+1.5e-01+ & \verb+1.8e-04+ & \verb+(7.1)+\\
-\verb+11+& \verb+6.1e-05+ & \verb+6.0e-01+ & \verb+5.4e-04+ & \verb+(8.9)+\\
-\verb+12+& \verb+1.6e-04+ & \verb+2.4e+00+ & \verb+1.4e-03+ & \verb+(8.9)+\\
-\verb+13+& \verb+5.8e-04+ & \verb+9.6e+00+ & \verb+3.3e-03+ & \verb+(5.6)+\\
-\verb+14+& \verb+1.6e-03+ & \verb+3.9e+01+ & \verb+7.1e-03+ & \verb+(4.3)+\\
-\verb+15+& \verb+4.0e-03+ & \verb+1.6e+02+ & \verb+1.5e-02+ & \verb+(3.7)+\\
-\verb+16+& \verb+8.5e-03+ & \verb+*+ & \verb+3.2e-02+ & \verb+(3.8)+\\
-\verb+17+& \verb+2.0e-02+ & \verb+*+ & \verb+7.2e-02+ & \verb+(3.6)+\\
-\verb+18+& \verb+4.6e-02+ & \verb+*+ & \verb+1.5e-01+ & \verb+(3.2)+\\
-\verb+19+& \verb+9.5e-02+ & \verb+*+ & \verb+3.0e-01+ & \verb+(3.1)+\\
-\verb+20+& \verb+2.0e-01+ & \verb+*+ & \verb+6.4e-01+ & \verb+(3.3)+\\
-\verb+21+& \verb+4.5e-01+ & \verb+*+ & \verb+1.4e+00+ & \verb+(3.2)+\\
-\verb+22+& \verb+1.0e+00+ & \verb+*+ & \verb+3.0e+00+ & \verb+(2.9)+\\
-\hline $l_N$ & FFT & NDFT & NFFT & NFFT/FFT\\
-\hline \hline \multicolumn{5}{|c|}{$d=2$} \\ \hline
-\verb+6+& \verb+9.6e-07+ & \verb+6.0e-04+ & \verb+3.2e-05+ & \verb+(33.2)+\\
-\verb+8+& \verb+4.5e-06+ & \verb+9.5e-03+ & \verb+1.3e-04+ & \verb+(29.0)+\\
-\verb+10+& \verb+2.2e-05+ & \verb+1.5e-01+ & \verb+6.0e-04+ & \verb+(27.4)+\\
-\verb+12+& \verb+1.2e-04+ & \verb+2.4e+00+ & \verb+4.0e-03+ & \verb+(32.2)+\\
-\verb+14+& \verb+1.7e-03+ & \verb+4.0e+01+ & \verb+3.1e-02+ & \verb+(18.1)+\\
-\verb+16+& \verb+2.1e-02+ & \verb+*+ & \verb+1.3e-01+ & \verb+(6.1)+\\
-\verb+18+& \verb+8.5e-02+ & \verb+*+ & \verb+5.0e-01+ & \verb+(5.8)+\\
-\verb+20+& \verb+3.2e-01+ & \verb+*+ & \verb+2.1e+00+ & \verb+(6.4)+\\
-\verb+22+& \verb+1.4e+00+ & \verb+*+ & \verb+1.1e+01+ & \verb+(7.9)+\\
-\hline \hline \multicolumn{5}{|c|}{$d=3$} \\ \hline
-\verb+9+& \verb+1.0e-05+ & \verb+3.9e-02+ & \verb+1.1e-03+ & \verb+(109.5)+\\
-\verb+12+& \verb+1.2e-04+ & \verb+2.4e+00+ & \verb+1.4e-02+ & \verb+(115.8)+\\
-\verb+15+& \verb+3.5e-03+ & \verb+1.6e+02+ & \verb+1.5e-01+ & \verb+(41.8)+\\
-\verb+18+& \verb+3.9e-02+ & \verb+*+ & \verb+1.7e+00+ & \verb+(42.4)+\\
-\verb+21+& \verb+9.0e-01+ & \verb+*+ & \verb+1.8e+01+ & \verb+(19.6)+\\
diff --git a/doc/tutorial/images/nfft_times_frodo_m_2_flops.m b/doc/tutorial/images/nfft_times_frodo_m_2_flops.m
deleted file mode 100644
index 62501da..0000000
--- a/doc/tutorial/images/nfft_times_frodo_m_2_flops.m
+++ /dev/null
@@ -1,36 +0,0 @@
-3 1.3e-07 8.6e-06 1.1e-06 8.6
-4 2.1e-07 3.5e-05 2.2e-06 10.5
-5 3.7e-07 1.4e-04 4.2e-06 11.4
-6 9.4e-07 5.7e-04 9.1e-06 9.8
-7 2.1e-06 2.3e-03 1.9e-05 9.0
-8 5.1e-06 9.2e-03 3.9e-05 7.7
-9 1.1e-05 3.7e-02 8.3e-05 7.4
-10 2.5e-05 1.5e-01 1.8e-04 7.1
-11 6.1e-05 6.0e-01 5.4e-04 8.9
-12 1.6e-04 2.4e+00 1.4e-03 8.9
-13 5.8e-04 9.6e+00 3.3e-03 5.6
-14 1.6e-03 3.9e+01 7.1e-03 4.3
-15 4.0e-03 1.6e+02 1.5e-02 3.7
-16 8.5e-03 nan 3.2e-02 3.8
-17 2.0e-02 nan 7.2e-02 3.6
-18 4.6e-02 nan 1.5e-01 3.2
-19 9.5e-02 nan 3.0e-01 3.1
-20 2.0e-01 nan 6.4e-01 3.3
-21 4.5e-01 nan 1.4e+00 3.2
-22 1.0e+00 nan 3.0e+00 2.9
-
-6 9.6e-07 6.0e-04 3.2e-05 33.2
-8 4.5e-06 9.5e-03 1.3e-04 29.0
-10 2.2e-05 1.5e-01 6.0e-04 27.4
-12 1.2e-04 2.4e+00 4.0e-03 32.2
-14 1.7e-03 4.0e+01 3.1e-02 18.1
-16 2.1e-02 nan 1.3e-01 6.1
-18 8.5e-02 nan 5.0e-01 5.8
-20 3.2e-01 nan 2.1e+00 6.4
-22 1.4e+00 nan 1.1e+01 7.9
-
-9 1.0e-05 3.9e-02 1.1e-03 109.5
-12 1.2e-04 2.4e+00 1.4e-02 115.8
-15 3.5e-03 1.6e+02 1.5e-01 41.8
-18 3.9e-02 nan 1.7e+00 42.4
-21 9.0e-01 nan 1.8e+01 19.6
diff --git a/doc/tutorial/images/nfft_times_frodo_show.m b/doc/tutorial/images/nfft_times_frodo_show.m
deleted file mode 100644
index aaf8d1f..0000000
--- a/doc/tutorial/images/nfft_times_frodo_show.m
+++ /dev/null
@@ -1,47 +0,0 @@
-load nfft_times_frodo_m_2_flops.m
-load nfft_times_frodo_flops.m
-
-A=nfft_times_frodo_flops;
-B=nfft_times_frodo_m_2_flops;
-n1=A(1:20,1);
-r1=A(1:20,2);
-s1=A(1:20,4);
-t1=B(1:20,4);
-
-n2=A(21:29,1);
-r2=A(21:29,2);
-s2=A(21:29,4);
-t2=B(21:29,4);
-
-n3=A(30:34,1);
-r3=A(30:34,2);
-s3=A(30:34,4);
-t3=B(30:34,4);
-
-h=plot(n1,5*2.^n1.*n1 ./ r1*10^-6, 'k-', ...
- n1,5*2.^n1.*n1 ./ r1*10^-6, 'ko', ...
- n1,(2.^n1 + 5*2.^(n1+1).*(n1+1) + (4*9+0)*2.^n1) ./ s1*10^-6, 'k-', ...
- n1,(2.^n1 + 5*2.^(n1+1).*(n1+1) + (4*9+0)*2.^n1) ./ s1*10^-6, 'kx', ...
- n1,(2.^n1 + 5*2.^(n1+1).*(n1+1) + (4*5+0)*2.^n1) ./ t1*10^-6, 'k-', ...
- n1,(2.^n1 + 5*2.^(n1+1).*(n1+1) + (4*5+0)*2.^n1) ./ t1*10^-6, 'k+', ...
- n2,5*2.^n2.*n2 ./ r2*10^-6, 'k:', ...
- n2,5*2.^n2.*n2 ./ r2*10^-6, 'ko', ...
- n2,(2.^n2 + 5*2.^(n2+2).*(n2+2) + (4*9^2+0)*2.^n2) ./ s2*10^-6, 'k:', ...
- n2,(2.^n2 + 5*2.^(n2+2).*(n2+2) + (4*9^2+0)*2.^n2) ./ s2*10^-6, 'kx', ...
- n2,(2.^n2 + 5*2.^(n2+2).*(n2+2) + (4*5^2+0)*2.^n2) ./ t2*10^-6, 'k:', ...
- n2,(2.^n2 + 5*2.^(n2+2).*(n2+2) + (4*5^2+0)*2.^n2) ./ t2*10^-6, 'k+', ...
- n3,5*2.^n3.*n3 ./ r3*10^-6, 'k--', ...
- n3,5*2.^n3.*n3 ./ r3*10^-6, 'ko', ...
- n3,(2.^n3 + 5*2.^(n3+3).*(n3+3) + (4*9^3+0)*2.^n3) ./ s3*10^-6, 'k--', ...
- n3,(2.^n3 + 5*2.^(n3+3).*(n3+3) + (4*9^3+0)*2.^n3) ./ s3*10^-6, 'kx', ...
- n3,(2.^n3 + 5*2.^(n3+3).*(n3+3) + (4*5^3+0)*2.^n3) ./ t3*10^-6, 'k--', ...
- n3,(2.^n3 + 5*2.^(n3+3).*(n3+3) + (4*5^3+0)*2.^n3) ./ t3*10^-6, 'k+');
-
-axis([3,22,0,2400]);
-set(gcf,'Position',[100,100,1000,333]);
-set(h,'LineWidth',1.8/3); set(h,'Markersize',10/3); set(gca,'FontSize',20/3);
-set(gca,'DataAspectRatio',[0.25*9.5 1200 1]);
-%set(gca,'XTickLabel',[-n,-n+N/2,-N/2,0,N/2-1,n-N/2-1,n]);
-%set(gca,'YTick',[10^-15,10^-10,10^-5,1]);
-print nfft_times_flops.eps -deps
-!epstopdf nfft_times_flops.eps
diff --git a/doc/tutorial/images/polar_grid.eps b/doc/tutorial/images/polar_grid.eps
deleted file mode 100644
index 1193200..0000000
--- a/doc/tutorial/images/polar_grid.eps
+++ /dev/null
@@ -1,87 +0,0 @@
-%!PS-Adobe-3.0 EPSF-3.0
%%Title: (paper.dvi)
%%Version: 1 3
%%Creator: Adobe Acrobat 7.0
%%CreationDate: 20/10/06 15:23
%%DocumentData: Clean7Bit
%%LanguageLevel: 2
%ADO_ContainsXMP: MainFirst
%%BoundingBox: 112 364 227 463
%%HiResBoundingBox: 112.247 364.03 227.117 462.543
%%Pages: 0
%%DocumentProcessColors: Cyan Magenta Yellow Black
%%DocumentSuppliedResources:
%%+ procset (Adobe Acrobat - PDF operators) 1.2 0
%%+ procset (Adobe Acrobat - type operators) 1.2 0
%%EndComments
%%BeginProlog
%%EndProlog
%%BeginSetup
%ADOPrintSettings: L2 W0 VM op crd os scsa T h ef bg ucr sf ef r b fa pr seps ttf hb EF t2 irt Printer/PostScript Color Management 0
-
%%BeginResource: procset l2check 6.0 1
%%Copyright: Copyright 1993,2001 Adobe Systems Incorporated. All Rights Reserved.
systemdict /languagelevel known
{ systemdict /languagelevel get 1 eq }
{ true }
ifelse
{
initgraphics /Helvetica findfont 18 scalefont setfont
72 600 moveto (Error: This application does not support) dup show
72 580 moveto (printing to a PostScript Language Level 1 printer.) dup show
exch = =
/Times-Roman findfont 16 scalefont setfont
72 500 moveto (As a workaround, try selecting Print As Image from) show
72 480 moveto (the Advanced Print dialog.) show
showpage
quit
}
if
%%EndResource
%%BeginResource: file Pscript_CFF PSVER
userdict /ct_CffDict 6 dict put
ct_CffDict begin
/F0Subr
{
systemdict /internaldict known
{
1183615869 systemdict /internaldict get exec
/FlxProc known {save true} {false} ifelse
}
{
userdict /internaldict known not
{
userdict /internaldict
{
count 0 eq
{/internaldict errordict /invalidaccess get exec} if
dup type /integertype ne
{/internaldict errordict /invalidaccess get exec} if
dup 1183615869 eq
{pop 0}
{/internaldict errordict /invalidaccess get exec}
ifelse
}
dup 14 get 1 25 dict put
bind executeonly put
} if
1183615869 userdict /internaldict get exec
/FlxProc known {save true} {false} ifelse
} ifelse
[
systemdict /internaldict known not
{ 100 dict /begin cvx /mtx matrix /def cvx } if
systemdict /currentpacking known {currentpacking true setpacking} if
{
systemdict /internaldict known {
1183615869 systemdict /internaldict get exec
dup /$FlxDict known not {
dup dup length exch maxlength eq
{ pop userdict dup /$FlxDict known not
{ 100 dict begin /mtx matrix def
dup /$FlxDict currentdict put end } if }
{ 100 dict begin /mtx matrix def
dup /$FlxDict currentdict put end }
ifelse
} if /$FlxDict get begin } if
grestore
/exdef {exch def} def
/dmin exch abs 100 div def
/epX exdef /epY exdef
/c4y2 exdef /c4x2 exdef /c4y1 exdef /c4x1 exdef /c4y0 exdef /c4x0 exdef
/c3y2 exdef /c3x2 exdef /c3y1 exdef /c3x1 exdef /c3y0 exdef /c3x0 exdef
/c1y2 exdef /c1x2 exdef /c2x2 c4x2 def /c2y2 c4y2 def
/yflag c1y2 c3y2 sub abs c1x2 c3x2 sub abs gt def
/PickCoords {
{c1x0 c1y0 c1x1 c1y1 c1x2 c1y2 c2x0 c2y0 c2x1 c2y1 c2x2 c2y2}
{c3x0 c3y0 c3x1 c3y1 c3x2 c3y2 c4x0 c4y0 c4x1 c4y1 c4x2 c4y2}
ifelse
/y5 exdef /x5 exdef /y4 exdef /x4 exdef /y3 exdef /x3 exdef
/y2 exdef /x2 exdef /y1 exdef /x1 exdef /y0 exdef /x0 exdef
} def
mtx currentmatrix pop
mtx 0 get abs .00001 lt mtx 3 get abs .00001 lt or
{/flipXY -1 def}
{mtx 1 get abs .00001 lt mtx 2 get abs .00001 lt or
{/flipXY 1 def}
{/flipXY 0 def}
ifelse }
ifelse
/erosion 1 def
systemdict /internaldict known {
1183615869 systemdict /internaldict get exec dup
/erosion known
{/erosion get /erosion exch def}
{pop}
ifelse
} if
yflag
{
flipXY 0 eq c3y2 c4y2 eq or
{false PickCoords}
{
/shrink c3y2 c4y2 eq
{0}{c1y2 c4y2 sub c3y2 c4y2 sub div abs} ifelse def
/yshrink {c4y2 sub shrink mul c4y2 add} def
/c1y0 c3y0 yshrink def /c1y1 c3y1 yshrink def
/c2y0 c4y0 yshrink def /c2y1 c4y1 yshrink def
/c1x0 c3x0 def /c1x1 c3x1 def /c2x0 c4x0 def /c2x1 c4x1 def
/dY 0 c3y2 c1y2 sub round
dtransform flipXY 1 eq {exch} if pop abs def
dY dmin lt PickCoords
y2 c1y2 sub abs 0.001 gt {
c1x2 c1y2 transform flipXY 1 eq {exch} if
/cx exch def /cy exch def
/dY 0 y2 c1y2 sub round dtransform flipXY 1 eq {exch}
if pop def
dY round dup 0 ne
{/dY exdef }
{pop dY 0 lt {-1}{1} ifelse /dY exdef}
ifelse
/erode PaintType 2 ne erosion 0.5 ge and def
erode {/cy cy 0.5 sub def} if
/ey cy dY add def
/ey ey ceiling ey sub ey floor add def
erode {/ey ey 0.5 add def} if
ey cx flipXY 1 eq {exch} if itransform exch pop
y2 sub /eShift exch def
/y1 y1 eShift add def /y2 y2 eShift add def /y3 y3
eShift add def
} if
} ifelse
}
{
flipXY 0 eq c3x2 c4x2 eq or
{false PickCoords }
{ /shrink c3x2 c4x2 eq
{0}{c1x2 c4x2 sub c3x2 c4x2 sub div abs} ifelse def
/xshrink {c4x2 sub shrink mul c4x2 add} def
/c1x0 c3x0 xshrink def /c1x1 c3x1 xshrink def
/c2x0 c4x0 xshrink def /c2x1 c4x1 xshrink def
/c1y0 c3y0 def /c1y1 c3y1 def /c2y0 c4y0 def /c2y1 c4y1 def
/dX c3x2 c1x2 sub round 0 dtransform
flipXY -1 eq {exch} if pop abs def
dX dmin lt PickCoords
x2 c1x2 sub abs 0.001 gt {
c1x2 c1y2 transform flipXY -1 eq {exch} if
/cy exch def /cx exch def
/dX x2 c1x2 sub round 0 dtransform flipXY -1 eq {exch} if pop def
dX round dup 0 ne
{/dX exdef}
{pop dX 0 lt {-1}{1} ifelse /dX exdef}
ifelse
/erode PaintType 2 ne erosion .5 ge and def
erode {/cx cx .5 sub def} if
/ex cx dX add def
/ex ex ceiling ex sub ex floor add def
erode {/ex ex .5 add def} if
ex cy flipXY -1 eq {exch} if itransform pop
x2 sub /eShift exch def
/x1 x1 eShift add def /x2 x2 eShift add def /x3 x3 eShift add def
} if
} ifelse
} ifelse
x2 x5 eq y2 y5 eq or
{x5 y5 lineto }
{x0 y0 x1 y1 x2 y2 curveto
x3 y3 x4 y4 x5 y5 curveto}
ifelse
epY epX
}
systemdict /currentpacking known {exch setpacking} if
/exec cvx /end cvx
] cvx
executeonly
exch
{pop true exch restore}
{
systemdict /internaldict known not
{1183615869 userdict /internaldict get exec
exch /FlxProc exch put true}
{1183615869 systemdict /internaldict get exec
dup length exch maxlength eq
{false}
{1183615869 systemdict /internaldict get exec
exch /FlxProc exch put true}
ifelse}
ifelse
} ifelse
{
systemdict /internaldict known
{1183615869 systemdict /internaldict get exec /FlxProc get exec}
{1183615869 userdict /internaldict get exec /FlxProc get exec}
ifelse
} if
} executeonly def
/F1Subr
{gsave currentpoint newpath moveto} bind def
/F2Subr
{currentpoint grestore gsave currentpoint newpath moveto} bind def
/HSSubr
{
systemdict /internaldict known not
{pop 3}
{1183615869 systemdict /internaldict get exec
dup /startlock known
{/startlock get exec}
{dup /strtlck known
{/strtlck get exec}
{pop 3}
ifelse}
ifelse}
ifelse
} bind def
end
%%EndResource
/currentpacking where{pop currentpacking true setpacking}if
%%BeginResource: procset pdfvars 6.0 1
%%Copyright: Copyright 1987-2002 Adobe Systems Incorporated. All Rights Reserved.
%%Title: definition of dictionary of variables used by PDF & PDFText procsets
userdict /PDF 162 dict put
userdict /PDFVars 89 dict dup begin put
/docSetupDone false def
/InitAll 0 def
/TermAll 0 def
/DocInitAll 0 def
/DocTermAll 0 def
/_pdfEncodings 2 array def
/_pdf_str1 1 string def
/_pdf_i 0 def
/_pdf_na 0 def
/_pdf_showproc 0 def
/_italMtx [1 0 .212557 1 0 0] def
/_italMtx_WMode1 [1 -.212557 0 1 0 0] def
/_italMtxType0 [1 0 .1062785 1 0 0] def
/_italMtx_WMode1Type0 [1 -.1062785 0 1 0 0] def
/_basefont 0 def
/_basefonto 0 def
/_pdf_oldCIDInit null def
/_pdf_FontDirectory 30 dict def
/_categories 10 dict def
/_sa? true def
/_ColorSep5044? false def
/nulldict 0 dict def
/_processColors 0 def
/overprintstack null def
/_defaulttransfer currenttransfer def
/_defaultflatness currentflat def
/_defaulthalftone null def
/_defaultcolortransfer null def
/_defaultblackgeneration null def
/_defaultundercolorremoval null def
/_defaultcolortransfer null def
PDF begin
[/c/cs/cm/d/d0/f/h/i/j/J/l/m/M/n/q/Q/re/ri/S/sc/sh/Tf/w/W
/applyInterpFunc/applystitchFunc/domainClip/encodeInput
/initgs/int/limit/rangeClip
/defineRes/undefineRes/findRes/setSA/pl
/? /! /| /: /+ /GetGlyphDirectory
/pdf_flushFilters /pdf_readstring /pdf_dictOp /pdf_image /pdf_maskedImage
/pdf_shfill /pdf_sethalftone
] {null def} bind forall
end
end
%%EndResource
PDFVars begin PDF begin
%%BeginResource: procset pdfutil 6.0 1
%%Copyright: Copyright 1993-2001 Adobe Systems Incorporated. All Rights Reserved.
%%Title: Basic utilities used by other PDF procsets
/bd {bind def} bind def
/ld {load def} bd
/bld {
dup length dict begin
{ null def } forall
bind
end
def
} bd
/dd { PDFVars 3 1 roll put } bd
/xdd { exch dd } bd
/Level2?
systemdict /languagelevel known
{ systemdict /languagelevel get 2 ge } { false } ifelse
def
/Level1? Level2? not def
/Level3?
systemdict /languagelevel known
{systemdict /languagelevel get 3 eq } { false } ifelse
def
/getifknown {
2 copy known { get true } { pop pop false } ifelse
} bd
/here {
currentdict exch getifknown
} bd
/isdefined? { where { pop true } { false } ifelse } bd
%%EndResource
%%BeginResource: procset pdf 6.0 1
%%Copyright: Copyright 1998-2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: General operators for PDF, common to all Language Levels.
/cm { matrix astore concat } bd
/d /setdash ld
/f /fill ld
/h /closepath ld
/i {dup 0 eq {pop _defaultflatness} if setflat} bd
/j /setlinejoin ld
/J /setlinecap ld
/M /setmiterlimit ld
/n /newpath ld
/S /stroke ld
/w /setlinewidth ld
/W /clip ld
/sg /setgray ld
/initgs {
0 setgray
[] 0 d
0 j
0 J
10 M
1 w
false setSA
/_defaulttransfer load settransfer
0 i
/RelativeColorimetric ri
newpath
} bd
/int {
dup 2 index sub 3 index 5 index sub div 6 -2 roll sub mul
exch pop add exch pop
} bd
/limit {
dup 2 index le { exch } if pop
dup 2 index ge { exch } if pop
} bd
/domainClip {
Domain aload pop 3 2 roll
limit
} [/Domain] bld
/applyInterpFunc {
0 1 DimOut 1 sub
{
dup C0 exch get exch
dup C1 exch get exch
3 1 roll
1 index sub
3 index
N exp mul add
exch
currentdict /Range_lo known
{
dup Range_lo exch get exch
Range_hi exch get
3 2 roll limit
}
{
pop
}
ifelse
exch
} for
pop
} [/DimOut /C0 /C1 /N /Range_lo /Range_hi] bld
/encodeInput {
NumParts 1 sub
0 1 2 index
{
dup Bounds exch get
2 index gt
{ exit }
{ dup
3 index eq
{ exit }
{ pop } ifelse
} ifelse
} for
3 2 roll pop
dup Bounds exch get exch
dup 1 add Bounds exch get exch
2 mul
dup Encode exch get exch
1 add Encode exch get
int
} [/NumParts /Bounds /Encode] bld
/rangeClip {
exch dup Range_lo exch get
exch Range_hi exch get
3 2 roll
limit
} [/Range_lo /Range_hi] bld
/applyStitchFunc {
Functions exch get exec
currentdict /Range_lo known {
0 1 DimOut 1 sub {
DimOut 1 add -1 roll
rangeClip
} for
} if
} [/Functions /Range_lo /DimOut] bld
/pdf_flushfilters
{
aload length
{ dup status
1 index currentfile ne and
{ dup flushfile closefile }
{ pop }
ifelse
} repeat
} bd
/pdf_readstring
{
1 index dup length 1 sub get
exch readstring pop
exch pdf_flushfilters
} bind def
/pdf_dictOp
{
3 2 roll
10 dict copy
begin
_Filters dup length 1 sub get def
currentdict exch exec
_Filters pdf_flushfilters
end
} [/_Filters] bld
/pdf_imagemask {{imagemask} /DataSource pdf_dictOp} bd
/pdf_shfill {{sh} /DataSource pdf_dictOp} bd
/pdf_sethalftone {{sethalftone} /Thresholds pdf_dictOp} bd
/masks [ 2#10000000
2#11000000
2#11100000
2#11110000
2#11111000
2#11111100
2#11111110
2#11111111 ] def
/addNBits
{
/numBits exch def
/byte exch def
OutBitOffset numBits add 8 gt
{
byte OutBitOffset 8 sub bitshift
OutBuffer OutByteIndex get or
OutBuffer OutByteIndex 3 -1 roll put
/OutByteIndex OutByteIndex 1 add def
/bitsDoneSoFar OutBitOffset def
/OutBitOffset numBits 8 OutBitOffset sub sub def
OutBitOffset 0 gt
{
byte bitsDoneSoFar bitshift
masks numBits bitsDoneSoFar sub get and
OutBuffer OutByteIndex 3 -1 roll put
} if
}
{
byte masks numBits 1 sub get and
OutBitOffset neg bitshift
OutBuffer OutByteIndex get or
OutBuffer OutByteIndex 3 -1 roll put
/OutBitOffset OutBitOffset numBits add def
OutBitOffset 8 eq
{
/OutBitOffset 0 def
/OutByteIndex OutByteIndex 1 add def
} if
} ifelse
} bind def
/DevNNFilter
{
/InBuffer Width NumComps mul BitsPerComponent mul 7 add 8 idiv string def
AllSource InBuffer readstring pop pop
/outlen Width NewNumComps mul BitsPerComponent mul 7 add 8 idiv def
/OutBuffer outlen string def
0 1 outlen 1 sub { OutBuffer exch 0 put } for
/InByteIndex 0 def
/InBitOffset 0 def
/OutByteIndex 0 def
/OutBitOffset 0 def
/KeepArray NumComps array def
0 1 NumComps 1 sub { KeepArray exch true put } for
DevNNones { KeepArray exch false put } forall
Width {
KeepArray
{
{
/bitsLeft BitsPerComponent def
{
bitsLeft 0 le { exit } if
/bitsToDo 8 InBitOffset sub dup bitsLeft gt { pop bitsLeft } if def
InBuffer InByteIndex get
InBitOffset bitshift
bitsToDo addNBits
/bitsLeft bitsLeft bitsToDo sub def
InBitOffset bitsToDo add
dup 8 mod /InBitOffset exch def
8 idiv InByteIndex add /InByteIndex exch def
} loop
}
{
InBitOffset BitsPerComponent add
dup 8 mod /InBitOffset exch def
8 idiv InByteIndex add /InByteIndex exch def
}
ifelse
}
forall
} repeat
OutBuffer
} bd
/pdf_image
{
20 dict copy
begin
/UnusedNones where { /UnusedNones get}{false} ifelse
{
/NumComps Decode length 2 div cvi def
/OrigDecode Decode def
/NumNones DevNNones length def
/NewNumComps NumComps NumNones sub def
/Decode NewNumComps 2 mul cvi array def
/devNNindx 0 def
/decIndx 0 def
/cmpIndx 0 def
NumComps {
cmpIndx DevNNones devNNindx get eq
{
/devNNindx devNNindx 1 add dup NumNones eq {pop 0} if def
}
{
Decode decIndx OrigDecode cmpIndx 2 mul get put
Decode decIndx 1 add OrigDecode cmpIndx 2 mul 1 add get put
/decIndx decIndx 2 add def
} ifelse
/cmpIndx cmpIndx 1 add def
} repeat
_Filters dup length 1 sub get /AllSource exch def
/DataSource { DevNNFilter } def
}
{ _Filters dup length 1 sub get /DataSource exch def }
ifelse
currentdict image
_Filters pdf_flushfilters
end
} bd
/pdf_maskedImage
{
10 dict copy begin
/miDict currentdict def
/DataDict DataDict 10 dict copy def
DataDict begin
/DataSource
_Filters dup length 1 sub get
def
miDict image
_Filters pdf_flushfilters
end
miDict /InterleaveType get 3 eq
{ MaskDict /DataSource get dup type /filetype eq { closefile } { pop } ifelse }
if
end
} [/miDict /DataDict /_Filters] bld
/RadialShade {
40 dict begin
/background exch def
/ext1 exch def
/ext0 exch def
/BBox exch def
/r2 exch def
/c2y exch def
/c2x exch def
/r1 exch def
/c1y exch def
/c1x exch def
/rampdict exch def
gsave
BBox length 0 gt {
newpath
BBox 0 get BBox 1 get moveto
BBox 2 get BBox 0 get sub 0 rlineto
0 BBox 3 get BBox 1 get sub rlineto
BBox 2 get BBox 0 get sub neg 0 rlineto
closepath
clip
newpath
} if
c1x c2x eq
{
c1y c2y lt {/theta 90 def}{/theta 270 def} ifelse
}
{
/slope c2y c1y sub c2x c1x sub div def
/theta slope 1 atan def
c2x c1x lt c2y c1y ge and { /theta theta 180 sub def} if
c2x c1x lt c2y c1y lt and { /theta theta 180 add def} if
}
ifelse
gsave
clippath
c1x c1y translate
theta rotate
-90 rotate
{ pathbbox } stopped
{ 0 0 0 0 } if
/yMax exch def
/xMax exch def
/yMin exch def
/xMin exch def
grestore
xMax xMin eq yMax yMin eq or
{
grestore
end
}
{
/max { 2 copy gt { pop } {exch pop} ifelse } bind def
/min { 2 copy lt { pop } {exch pop} ifelse } bind def
rampdict begin
40 dict begin
background length 0 gt { background sssetbackground gsave clippath fill grestore } if
gsave
c1x c1y translate
theta rotate
-90 rotate
/c2y c1x c2x sub dup mul c1y c2y sub dup mul add sqrt def
/c1y 0 def
/c1x 0 def
/c2x 0 def
ext0 {
0 getrampcolor
c2y r2 add r1 sub 0.0001 lt
{
c1x c1y r1 360 0 arcn
pathbbox
/aymax exch def
/axmax exch def
/aymin exch def
/axmin exch def
/bxMin xMin axmin min def
/byMin yMin aymin min def
/bxMax xMax axmax max def
/byMax yMax aymax max def
bxMin byMin moveto
bxMax byMin lineto
bxMax byMax lineto
bxMin byMax lineto
bxMin byMin lineto
eofill
}
{
c2y r1 add r2 le
{
c1x c1y r1 0 360 arc
fill
}
{
c2x c2y r2 0 360 arc fill
r1 r2 eq
{
/p1x r1 neg def
/p1y c1y def
/p2x r1 def
/p2y c1y def
p1x p1y moveto p2x p2y lineto p2x yMin lineto p1x yMin lineto
fill
}
{
/AA r2 r1 sub c2y div def
AA -1 eq
{ /theta 89.99 def}
{ /theta AA 1 AA dup mul sub sqrt div 1 atan def}
ifelse
/SS1 90 theta add dup sin exch cos div def
/p1x r1 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
/p1y p1x SS1 div neg def
/SS2 90 theta sub dup sin exch cos div def
/p2x r1 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
/p2y p2x SS2 div neg def
r1 r2 gt
{
/L1maxX p1x yMin p1y sub SS1 div add def
/L2maxX p2x yMin p2y sub SS2 div add def
}
{
/L1maxX 0 def
/L2maxX 0 def
}ifelse
p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
L1maxX L1maxX p1x sub SS1 mul p1y add lineto
fill
}
ifelse
}
ifelse
} ifelse
} if
c1x c2x sub dup mul
c1y c2y sub dup mul
add 0.5 exp
0 dtransform
dup mul exch dup mul add 0.5 exp 72 div
0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
1 index 1 index lt { exch } if pop
/hires exch def
hires mul
/numpix exch def
/numsteps NumSamples def
/rampIndxInc 1 def
/subsampling false def
numpix 0 ne
{
NumSamples numpix div 0.5 gt
{
/numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
/rampIndxInc NumSamples 1 sub numsteps div def
/subsampling true def
} if
} if
/xInc c2x c1x sub numsteps div def
/yInc c2y c1y sub numsteps div def
/rInc r2 r1 sub numsteps div def
/cx c1x def
/cy c1y def
/radius r1 def
newpath
xInc 0 eq yInc 0 eq rInc 0 eq and and
{
0 getrampcolor
cx cy radius 0 360 arc
stroke
NumSamples 1 sub getrampcolor
cx cy radius 72 hires div add 0 360 arc
0 setlinewidth
stroke
}
{
0
numsteps
{
dup
subsampling { round } if
getrampcolor
cx cy radius 0 360 arc
/cx cx xInc add def
/cy cy yInc add def
/radius radius rInc add def
cx cy radius 360 0 arcn
eofill
rampIndxInc add
}
repeat
pop
} ifelse
ext1 {
c2y r2 add r1 lt
{
c2x c2y r2 0 360 arc
fill
}
{
c2y r1 add r2 sub 0.0001 le
{
c2x c2y r2 360 0 arcn
pathbbox
/aymax exch def
/axmax exch def
/aymin exch def
/axmin exch def
/bxMin xMin axmin min def
/byMin yMin aymin min def
/bxMax xMax axmax max def
/byMax yMax aymax max def
bxMin byMin moveto
bxMax byMin lineto
bxMax byMax lineto
bxMin byMax lineto
bxMin byMin lineto
eofill
}
{
c2x c2y r2 0 360 arc fill
r1 r2 eq
{
/p1x r2 neg def
/p1y c2y def
/p2x r2 def
/p2y c2y def
p1x p1y moveto p2x p2y lineto p2x yMax lineto p1x yMax lineto
fill
}
{
/AA r2 r1 sub c2y div def
AA -1 eq
{ /theta 89.99 def}
{ /theta AA 1 AA dup mul sub sqrt div 1 atan def}
ifelse
/SS1 90 theta add dup sin exch cos div def
/p1x r2 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
/p1y c2y p1x SS1 div sub def
/SS2 90 theta sub dup sin exch cos div def
/p2x r2 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
/p2y c2y p2x SS2 div sub def
r1 r2 lt
{
/L1maxX p1x yMax p1y sub SS1 div add def
/L2maxX p2x yMax p2y sub SS2 div add def
}
{
/L1maxX 0 def
/L2maxX 0 def
}ifelse
p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
L1maxX L1maxX p1x sub SS1 mul p1y add lineto
fill
}
ifelse
}
ifelse
} ifelse
} if
grestore
grestore
end
end
end
} ifelse
} bd
/GenStrips {
40 dict begin
/background exch def
/ext1 exch def
/ext0 exch def
/BBox exch def
/y2 exch def
/x2 exch def
/y1 exch def
/x1 exch def
/rampdict exch def
gsave
BBox length 0 gt {
newpath
BBox 0 get BBox 1 get moveto
BBox 2 get BBox 0 get sub 0 rlineto
0 BBox 3 get BBox 1 get sub rlineto
BBox 2 get BBox 0 get sub neg 0 rlineto
closepath
clip
newpath
} if
x1 x2 eq
{
y1 y2 lt {/theta 90 def}{/theta 270 def} ifelse
}
{
/slope y2 y1 sub x2 x1 sub div def
/theta slope 1 atan def
x2 x1 lt y2 y1 ge and { /theta theta 180 sub def} if
x2 x1 lt y2 y1 lt and { /theta theta 180 add def} if
}
ifelse
gsave
clippath
x1 y1 translate
theta rotate
{ pathbbox } stopped
{ 0 0 0 0 } if
/yMax exch def
/xMax exch def
/yMin exch def
/xMin exch def
grestore
xMax xMin eq yMax yMin eq or
{
grestore
end
}
{
rampdict begin
20 dict begin
background length 0 gt { background sssetbackground gsave clippath fill grestore } if
gsave
x1 y1 translate
theta rotate
/xStart 0 def
/xEnd x2 x1 sub dup mul y2 y1 sub dup mul add 0.5 exp def
/ySpan yMax yMin sub def
/numsteps NumSamples def
/rampIndxInc 1 def
/subsampling false def
xStart 0 transform
xEnd 0 transform
3 -1 roll
sub dup mul
3 1 roll
sub dup mul
add 0.5 exp 72 div
0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
1 index 1 index lt { exch } if pop
mul
/numpix exch def
numpix 0 ne
{
NumSamples numpix div 0.5 gt
{
/numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
/rampIndxInc NumSamples 1 sub numsteps div def
/subsampling true def
} if
} if
ext0 {
0 getrampcolor
xMin xStart lt
{ xMin yMin xMin neg ySpan rectfill } if
} if
/xInc xEnd xStart sub numsteps div def
/x xStart def
0
numsteps
{
dup
subsampling { round } if
getrampcolor
x yMin xInc ySpan rectfill
/x x xInc add def
rampIndxInc add
}
repeat
pop
ext1 {
xMax xEnd gt
{ xEnd yMin xMax xEnd sub ySpan rectfill } if
} if
grestore
grestore
end
end
end
} ifelse
} bd
/currentdistillerparams where { pop currentdistillerparams /CoreDistVersion get 5000 lt}{true}ifelse
{
/PDFMark5 {cleartomark} bd
}
{
/PDFMark5 {pdfmark} bd
}ifelse
/ReadByPDFMark5
{
2 dict begin
/makerString exch def string /tmpString exch def
{
currentfile tmpString readline pop
makerString anchorsearch
{
pop pop cleartomark exit
}
{
3 copy /PUT PDFMark5 pop 2 copy (\n) /PUT PDFMark5
} ifelse
}loop
end
}bd
%%EndResource
%%BeginResource: procset pdflev2 6.0 1
%%Copyright: Copyright 1987-2001,2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: PDF operators, with code specific for Level 2
/docinitialize {
PDF begin
/_defaulthalftone currenthalftone dd
/_defaultblackgeneration currentblackgeneration dd
/_defaultundercolorremoval currentundercolorremoval dd
/_defaultcolortransfer [currentcolortransfer] dd
/_defaulttransfer currenttransfer dd
end
PDFVars /docSetupDone true put
} bd
/initialize {
PDFVars /docSetupDone get {
_defaulthalftone sethalftone
/_defaultblackgeneration load setblackgeneration
/_defaultundercolorremoval load setundercolorremoval
_defaultcolortransfer aload pop setcolortransfer
} if
false setoverprint
} bd
/terminate { } bd
/c /curveto ld
/cs /setcolorspace ld
/l /lineto ld
/m /moveto ld
/q /gsave ld
/Q /grestore ld
/sc /setcolor ld
/setSA/setstrokeadjust ld
/re {
4 2 roll m
1 index 0 rlineto
0 exch rlineto
neg 0 rlineto
h
} bd
/concattransferfuncs {
[ 3 1 roll /exec load exch /exec load ] cvx
} bd
/concatandsettransfer {
/_defaulttransfer load concattransferfuncs settransfer
} bd
/concatandsetcolortransfer {
_defaultcolortransfer aload pop
8 -1 roll 5 -1 roll concattransferfuncs 7 1 roll
6 -1 roll 4 -1 roll concattransferfuncs 5 1 roll
4 -1 roll 3 -1 roll concattransferfuncs 3 1 roll
concattransferfuncs
setcolortransfer
} bd
/defineRes/defineresource ld
/undefineRes/undefineresource ld
/findRes/findresource ld
currentglobal
true systemdict /setglobal get exec
[/Function /ExtGState /Form /Shading /FunctionDictionary /MadePattern /PatternPrototype /DataSource /Image]
{ /Generic /Category findresource dup length dict copy /Category defineresource pop }
forall
systemdict /setglobal get exec
/ri
{
/findcolorrendering isdefined?
{
mark exch
findcolorrendering
counttomark 2 eq
{ type /booleantype eq
{ dup type /nametype eq
{ dup /ColorRendering resourcestatus
{ pop pop
dup /DefaultColorRendering ne
{
/ColorRendering findresource
setcolorrendering
} if
} if
} if
} if
} if
cleartomark
}
{ pop
} ifelse
} bd
/knownColorants? {
pop false
} bd
/getrampcolor {
cvi
/indx exch def
0 1 NumComp 1 sub {
dup
Samples exch get
dup type /stringtype eq { indx get } if
exch
Scaling exch get aload pop
3 1 roll
mul add
} for
setcolor
} bd
/sssetbackground { aload pop setcolor } bd
%%EndResource
%%BeginResource: procset pdftext 6.0 1
%%Copyright: Copyright 1987-2001,2003 Adobe Systems Incorporated. All Rights Reserved.
%%Title: Text operators for PDF
PDF /PDFText 78 dict dup begin put
/docinitialize
{
/resourcestatus where {
pop
/CIDParams /ProcSet resourcestatus {
pop pop
false /CIDParams /ProcSet findresource /SetBuildCompatible get exec
} if
} if
PDF begin
PDFText /_pdfDefineIdentity-H known
{ PDFText /_pdfDefineIdentity-H get exec}
if
end
} bd
/initialize {
PDFText begin
} bd
/terminate { end } bd
Level2?
{
/_safeput
{
3 -1 roll load 3 1 roll put
}
bd
}
{
/_safeput
{
2 index load dup dup length exch maxlength ge
{ dup length 5 add dict copy
3 index xdd
}
{ pop }
ifelse
3 -1 roll load 3 1 roll put
}
bd
}
ifelse
/pdf_has_composefont? systemdict /composefont known def
/CopyFont {
{
1 index /FID ne 2 index /UniqueID ne and
{ def } { pop pop } ifelse
} forall
} bd
/Type0CopyFont
{
exch
dup length dict
begin
CopyFont
[
exch
FDepVector
{
dup /FontType get 0 eq
{
1 index Type0CopyFont
/_pdfType0 exch definefont
}
{
/_pdfBaseFont exch
2 index exec
}
ifelse
exch
}
forall
pop
]
/FDepVector exch def
currentdict
end
} bd
Level2? {currentglobal true setglobal} if
/cHexEncoding
[/c00/c01/c02/c03/c04/c05/c06/c07/c08/c09/c0A/c0B/c0C/c0D/c0E/c0F/c10/c11/c12
/c13/c14/c15/c16/c17/c18/c19/c1A/c1B/c1C/c1D/c1E/c1F/c20/c21/c22/c23/c24/c25
/c26/c27/c28/c29/c2A/c2B/c2C/c2D/c2E/c2F/c30/c31/c32/c33/c34/c35/c36/c37/c38
/c39/c3A/c3B/c3C/c3D/c3E/c3F/c40/c41/c42/c43/c44/c45/c46/c47/c48/c49/c4A/c4B
/c4C/c4D/c4E/c4F/c50/c51/c52/c53/c54/c55/c56/c57/c58/c59/c5A/c5B/c5C/c5D/c5E
/c5F/c60/c61/c62/c63/c64/c65/c66/c67/c68/c69/c6A/c6B/c6C/c6D/c6E/c6F/c70/c71
/c72/c73/c74/c75/c76/c77/c78/c79/c7A/c7B/c7C/c7D/c7E/c7F/c80/c81/c82/c83/c84
/c85/c86/c87/c88/c89/c8A/c8B/c8C/c8D/c8E/c8F/c90/c91/c92/c93/c94/c95/c96/c97
/c98/c99/c9A/c9B/c9C/c9D/c9E/c9F/cA0/cA1/cA2/cA3/cA4/cA5/cA6/cA7/cA8/cA9/cAA
/cAB/cAC/cAD/cAE/cAF/cB0/cB1/cB2/cB3/cB4/cB5/cB6/cB7/cB8/cB9/cBA/cBB/cBC/cBD
/cBE/cBF/cC0/cC1/cC2/cC3/cC4/cC5/cC6/cC7/cC8/cC9/cCA/cCB/cCC/cCD/cCE/cCF/cD0
/cD1/cD2/cD3/cD4/cD5/cD6/cD7/cD8/cD9/cDA/cDB/cDC/cDD/cDE/cDF/cE0/cE1/cE2/cE3
/cE4/cE5/cE6/cE7/cE8/cE9/cEA/cEB/cEC/cED/cEE/cEF/cF0/cF1/cF2/cF3/cF4/cF5/cF6
/cF7/cF8/cF9/cFA/cFB/cFC/cFD/cFE/cFF] def
Level2? {setglobal} if
/modEnc {
/_enc xdd
/_icode 0 dd
counttomark 1 sub -1 0
{
index
dup type /nametype eq
{
_enc _icode 3 -1 roll put
_icode 1 add
}
if
/_icode xdd
} for
cleartomark
_enc
} bd
/trEnc {
/_enc xdd
255 -1 0 {
exch dup -1 eq
{ pop /.notdef }
{ Encoding exch get }
ifelse
_enc 3 1 roll put
} for
pop
_enc
} bd
/TE {
/_i xdd
StandardEncoding 256 array copy modEnc
_pdfEncodings exch _i exch put
} bd
Level2?
{
/pdfPatchCStrings
{
currentdict /CharStrings known currentdict /FontType known and
{
FontType 1 eq CharStrings type /dicttype eq and
{
CharStrings /mu known CharStrings /mu1 known not and CharStrings wcheck and
{
CharStrings /mu get
type /stringtype eq
{
currentglobal
CharStrings /mu1
CharStrings /mu get
dup gcheck setglobal
dup length string copy
put
setglobal
} if
} if
} if
} if
} bd
}
{ /pdfPatchCStrings {} bd }
ifelse
/TZ
{
/_usePDFEncoding xdd
findfont
dup length 6 add dict
begin
{
1 index /FID ne { def } { pop pop } ifelse
} forall
pdfPatchCStrings
/pdf_origFontName FontName def
/FontName exch def
currentdict /PaintType known
{ PaintType 2 eq {/PaintType 0 def} if }
if
_usePDFEncoding 0 ge
{
/Encoding _pdfEncodings _usePDFEncoding get def
pop
}
{
_usePDFEncoding -1 eq
{
counttomark 0 eq
{ pop }
{
Encoding 256 array copy
modEnc /Encoding exch def
}
ifelse
}
{
256 array
trEnc /Encoding exch def
}
ifelse
}
ifelse
pdf_EuroProcSet pdf_origFontName known
{
pdf_origFontName pdf_AddEuroGlyphProc
} if
Level2?
{
currentdict /pdf_origFontName undef
} if
FontName currentdict
end
definefont pop
}
bd
Level2?
{
/TZG
{
currentglobal true setglobal
2 index _pdfFontStatus
{
2 index findfont
false setglobal
3 index findfont
true setglobal
ne
{
2 index findfont dup rcheck
{
dup length dict begin
{
1 index /FID ne { def } { pop pop } ifelse
} forall
pdfPatchCStrings
currentdict end
}
if
3 index exch definefont pop
}
if
} if
setglobal
TZ
} bd
}
{
/TZG {TZ} bd
} ifelse
Level2?
{
currentglobal false setglobal
userdict /pdftext_data 5 dict put
pdftext_data
begin
/saveStacks
{
pdftext_data
begin
/vmmode currentglobal def
false setglobal
count array astore /os exch def
end
countdictstack array dictstack pdftext_data exch /ds exch put
cleardictstack pdftext_data /dscount countdictstack put
pdftext_data /vmmode get setglobal
} bind def
/restoreStacks
{
pdftext_data /vmmode currentglobal put false setglobal
clear cleardictstack
pdftext_data /ds get dup
pdftext_data /dscount get 1 2 index length 1 sub
{ get begin dup } for
pop pop
pdftext_data /os get aload pop
pdftext_data /vmmode get setglobal
} bind def
/testForClonePrinterBug
{
currentglobal true setglobal
/undefinedCategory /Generic /Category findresource
dup length dict copy /Category defineresource pop
setglobal
pdftext_data /saveStacks get exec
pdftext_data /vmmode currentglobal put false setglobal
/undefined /undefinedCategory { resourcestatus } stopped
pdftext_data exch /bugFound exch put
pdftext_data /vmmode get setglobal
pdftext_data /restoreStacks get exec
pdftext_data /bugFound get
} bind def
end
setglobal
/pdf_resourcestatus
pdftext_data /testForClonePrinterBug get exec
{
{
pdftext_data /saveStacks get exec
pdftext_data /os get dup dup length 1 sub
dup 1 sub dup 0 lt { pop 0 } if
exch 1 exch { get exch dup } for
pop pop
{ resourcestatus }
stopped
{
clear cleardictstack pdftext_data /restoreStacks get exec
{ pop pop } stopped pop false
}
{
count array astore pdftext_data exch /results exch put
pdftext_data /restoreStacks get exec pop pop
pdftext_data /results get aload pop
}
ifelse
}
}
{ { resourcestatus } }
ifelse
bd
}
if
Level2?
{
/_pdfUndefineResource
{
currentglobal 3 1 roll
_pdf_FontDirectory 2 index 2 copy known
{undef}
{pop pop}
ifelse
1 index (pdf) exch _pdfConcatNames 1 index
1 index 1 _pdfConcatNames 1 index
5 index 1 _pdfConcatNames 1 index
4
{
2 copy pdf_resourcestatus
{
pop 2 lt
{2 copy findresource gcheck setglobal undefineresource}
{pop pop}
ifelse
}
{ pop pop}
ifelse
} repeat
setglobal
} bd
}
{
/_pdfUndefineResource { pop pop} bd
}
ifelse
Level2?
{
/_pdfFontStatus
{
currentglobal exch
/Font pdf_resourcestatus
{pop pop true}
{false}
ifelse
exch setglobal
} bd
}
{
/_pdfFontStatusString 50 string def
_pdfFontStatusString 0 (fonts/) putinterval
/_pdfFontStatus
{
FontDirectory 1 index known
{ pop true }
{
_pdfFontStatusString 6 42 getinterval
cvs length 6 add
_pdfFontStatusString exch 0 exch getinterval
{ status } stopped
{pop false}
{
{ pop pop pop pop true}
{ false }
ifelse
}
ifelse
}
ifelse
} bd
}
ifelse
Level2?
{
/_pdfCIDFontStatus
{
/CIDFont /Category pdf_resourcestatus
{
pop pop
/CIDFont pdf_resourcestatus
{pop pop true}
{false}
ifelse
}
{ pop false }
ifelse
} bd
}
if
/_pdfString100 100 string def
/_pdfComposeFontName
{
dup length 1 eq
{
0 get
1 index
type /nametype eq
{
_pdfString100 cvs
length dup dup _pdfString100 exch (-) putinterval
_pdfString100 exch 1 add dup _pdfString100 length exch sub getinterval
2 index exch cvs length
add 1 add _pdfString100 exch 0 exch getinterval
exch pop
true
}
{
pop pop
false
}
ifelse
}
{
false
}
ifelse
dup {exch cvn exch} if
} bd
/_pdfConcatNames
{
exch
_pdfString100 cvs
length dup dup _pdfString100 exch (-) putinterval
_pdfString100 exch 1 add dup _pdfString100 length exch sub getinterval
3 -1 roll exch cvs length
add 1 add _pdfString100 exch 0 exch getinterval
cvn
} bind def
/_pdfTextTempString 50 string def
/_pdfRegOrderingArray [(Adobe-Japan1) (Adobe-CNS1) (Adobe-Korea1) (Adobe-GB1)] def
/_pdf_CheckCIDSystemInfo
{
1 index _pdfTextTempString cvs
(Identity) anchorsearch
{
pop pop pop pop true
}
{
false
_pdfRegOrderingArray
{
2 index exch
anchorsearch
{ pop pop pop true exit}
{ pop }
ifelse
}
forall
exch pop
exch /CIDFont findresource
/CIDSystemInfo get
3 -1 roll /CMap findresource
/CIDSystemInfo get
exch
3 -1 roll
{
2 copy
/Supplement get
exch
dup type /dicttype eq
{/Supplement get}
{pop 0 }
ifelse
ge
}
{ true }
ifelse
{
dup /Registry get
2 index /Registry get eq
{
/Ordering get
exch /Ordering get
dup type /arraytype eq
{
1 index type /arraytype eq
{
true
1 index length 1 sub -1 0
{
dup 2 index exch get exch 3 index exch get ne
{ pop false exit}
if
} for
exch pop exch pop
}
{ pop pop false }
ifelse
}
{
eq
}
ifelse
}
{ pop pop false }
ifelse
}
{ pop pop false }
ifelse
}
ifelse
} bind def
pdf_has_composefont?
{
/_pdfComposeFont
{
2 copy _pdfComposeFontName not
{
2 index
}
if
(pdf) exch _pdfConcatNames
dup _pdfFontStatus
{ dup findfont 5 2 roll pop pop pop true}
{
4 1 roll
1 index /CMap pdf_resourcestatus
{
pop pop
true
}
{false}
ifelse
1 index true exch
{
_pdfCIDFontStatus not
{pop false exit}
if
}
forall
and
{
1 index 1 index 0 get _pdf_CheckCIDSystemInfo
{
3 -1 roll pop
2 index 3 1 roll
composefont true
}
{
pop pop exch pop false
}
ifelse
}
{
_pdfComposeFontName
{
dup _pdfFontStatus
{
exch pop
1 index exch
findfont definefont true
}
{
pop exch pop
false
}
ifelse
}
{
exch pop
false
}
ifelse
}
ifelse
{ true }
{
dup _pdfFontStatus
{ dup findfont true }
{ pop false }
ifelse
}
ifelse
}
ifelse
} bd
}
{
/_pdfComposeFont
{
_pdfComposeFontName not
{
dup
}
if
dup
_pdfFontStatus
{exch pop dup findfont true}
{
1 index
dup type /nametype eq
{pop}
{cvn}
ifelse
eq
{pop false}
{
dup _pdfFontStatus
{dup findfont true}
{pop false}
ifelse
}
ifelse
}
ifelse
} bd
}
ifelse
/_pdfStyleDicts 4 dict dup begin
/Adobe-Japan1 4 dict dup begin
Level2?
{
/Serif
/HeiseiMin-W3-83pv-RKSJ-H _pdfFontStatus
{/HeiseiMin-W3}
{
/HeiseiMin-W3 _pdfCIDFontStatus
{/HeiseiMin-W3}
{/Ryumin-Light}
ifelse
}
ifelse
def
/SansSerif
/HeiseiKakuGo-W5-83pv-RKSJ-H _pdfFontStatus
{/HeiseiKakuGo-W5}
{
/HeiseiKakuGo-W5 _pdfCIDFontStatus
{/HeiseiKakuGo-W5}
{/GothicBBB-Medium}
ifelse
}
ifelse
def
/HeiseiMaruGo-W4-83pv-RKSJ-H _pdfFontStatus
{/HeiseiMaruGo-W4}
{
/HeiseiMaruGo-W4 _pdfCIDFontStatus
{/HeiseiMaruGo-W4}
{
/Jun101-Light-RKSJ-H _pdfFontStatus
{ /Jun101-Light }
{ SansSerif }
ifelse
}
ifelse
}
ifelse
/RoundSansSerif exch def
/Default Serif def
}
{
/Serif /Ryumin-Light def
/SansSerif /GothicBBB-Medium def
{
(fonts/Jun101-Light-83pv-RKSJ-H) status
}stopped
{pop}{
{ pop pop pop pop /Jun101-Light }
{ SansSerif }
ifelse
/RoundSansSerif exch def
}ifelse
/Default Serif def
}
ifelse
end
def
/Adobe-Korea1 4 dict dup begin
/Serif /HYSMyeongJo-Medium def
/SansSerif /HYGoThic-Medium def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
/Adobe-GB1 4 dict dup begin
/Serif /STSong-Light def
/SansSerif /STHeiti-Regular def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
/Adobe-CNS1 4 dict dup begin
/Serif /MKai-Medium def
/SansSerif /MHei-Medium def
/RoundSansSerif SansSerif def
/Default Serif def
end
def
end
def
/TZzero
{
/_wmode xdd
/_styleArr xdd
/_regOrdering xdd
3 copy
_pdfComposeFont
{
5 2 roll pop pop pop
}
{
[
0 1 _styleArr length 1 sub
{
_styleArr exch get
_pdfStyleDicts _regOrdering 2 copy known
{
get
exch 2 copy known not
{ pop /Default }
if
get
}
{
pop pop pop /Unknown
}
ifelse
}
for
]
exch pop
2 index 3 1 roll
_pdfComposeFont
{3 -1 roll pop}
{
findfont dup /FontName get exch
}
ifelse
}
ifelse
dup /WMode 2 copy known
{ get _wmode ne }
{ pop pop _wmode 1 eq}
ifelse
{
exch _wmode _pdfConcatNames
dup _pdfFontStatus
{ exch pop dup findfont false}
{ exch true }
ifelse
}
{
dup /FontType get 0 ne
}
ifelse
{
dup /FontType get 3 eq _wmode 1 eq and
{
_pdfVerticalRomanT3Font dup length 10 add dict copy
begin
/_basefont exch
dup length 3 add dict
begin
{1 index /FID ne {def}{pop pop} ifelse }
forall
/Encoding Encoding dup length array copy
dup 16#27 /quotesingle put
dup 16#60 /grave put
_regOrdering /Adobe-Japan1 eq
{dup 16#5c /yen put dup 16#a5 /yen put dup 16#b4 /yen put}
if
def
FontName
currentdict
end
definefont
def
/Encoding _basefont /Encoding get def
/_fauxfont true def
}
{
dup length 3 add dict
begin
{1 index /FID ne {def}{pop pop} ifelse }
forall
FontType 0 ne
{
/Encoding Encoding dup length array copy
dup 16#27 /quotesingle put
dup 16#60 /grave put
_regOrdering /Adobe-Japan1 eq
{dup 16#5c /yen put}
if
def
/_fauxfont true def
} if
} ifelse
/WMode _wmode def
dup dup /FontName exch def
currentdict
end
definefont pop
}
{
pop
}
ifelse
/_pdf_FontDirectory 3 1 roll _safeput
}
bd
Level2?
{
/Tf {
_pdf_FontDirectory 2 index 2 copy known
{get exch 3 -1 roll pop}
{pop pop}
ifelse
selectfont
} bd
}
{
/Tf {
_pdf_FontDirectory 2 index 2 copy known
{get exch 3 -1 roll pop}
{pop pop}
ifelse
exch findfont exch
dup type /arraytype eq
{makefont}
{scalefont}
ifelse
setfont
} bd
}
ifelse
/cshow where
{
pop /pdf_cshow /cshow load dd
/pdf_remove2 {pop pop} dd
}
{
/pdf_cshow {exch forall} dd
/pdf_remove2 {} dd
} ifelse
/pdf_xshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
_pdf_x _pdf_y moveto
0
rmoveto
}
ifelse
_pdf_i 1 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdf_yshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
_pdf_x _pdf_y moveto
0 exch
rmoveto
}
ifelse
_pdf_i 1 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdf_xyshow
{
/_pdf_na xdd
/_pdf_i 0 dd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 /_pdf_showproc load exec
{_pdf_na _pdf_i get} stopped
{ pop pop }
{
1 pop
{_pdf_na _pdf_i 1 add get} stopped
{ pop pop pop}
{
_pdf_x _pdf_y moveto
rmoveto
}
ifelse
}
ifelse
_pdf_i 2 add /_pdf_i xdd
currentpoint
/_pdf_y xdd
/_pdf_x xdd
}
exch
pdf_cshow
} bd
/pdfl1xs {/_pdf_showproc /show load dd pdf_xshow} bd
/pdfl1ys {/_pdf_showproc /show load dd pdf_yshow} bd
/pdfl1xys {/_pdf_showproc /show load dd pdf_xyshow} bd
Level2? _ColorSep5044? not and
{
/pdfxs {{xshow} stopped {pdfl1xs} if} bd
/pdfys {{yshow} stopped {pdfl1ys} if} bd
/pdfxys {{xyshow} stopped {pdfl1xys} if} bd
}
{
/pdfxs /pdfl1xs load dd
/pdfys /pdfl1ys load dd
/pdfxys /pdfl1xys load dd
} ifelse
/pdf_charpath {false charpath} bd
/pdf_xcharpath {/_pdf_showproc /pdf_charpath load dd pdf_xshow} bd
/pdf_ycharpath {/_pdf_showproc /pdf_charpath load dd pdf_yshow} bd
/pdf_xycharpath {/_pdf_showproc /pdf_charpath load dd pdf_xyshow} bd
/pdf_strokepath
{
{
pdf_remove2
_pdf_str1 exch 0 exch put
_pdf_str1 false charpath
currentpoint S moveto
} bind
exch pdf_cshow
} bd
/pdf_xstrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_xshow} bd
/pdf_ystrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_yshow} bd
/pdf_xystrokepath {/_pdf_showproc {pdf_charpath S} dd pdf_xyshow} bd
Level2? {currentglobal true setglobal} if
/d0/setcharwidth ld
/nND {{/.notdef} repeat} bd
/T3Defs {
/BuildChar
{
1 index /Encoding get exch get
1 index /BuildGlyph get exec
}
def
/BuildGlyph {
exch begin
GlyphProcs exch get exec
end
} def
/_pdfT3Font true def
} bd
/_pdfBoldRomanWidthProc
{
stringwidth 1 index 0 ne { exch .03 add exch }if setcharwidth
0 0
} bd
/_pdfType0WidthProc
{
dup stringwidth 0 0 moveto
2 index true charpath pathbbox
0 -1
7 index 2 div .88
setcachedevice2
pop
0 0
} bd
/_pdfType0WMode1WidthProc
{
dup stringwidth
pop 2 div neg -0.88
2 copy
moveto
0 -1
5 -1 roll true charpath pathbbox
setcachedevice
} bd
/_pdfBoldBaseFont
11 dict begin
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/Encoding cHexEncoding def
/_setwidthProc /_pdfBoldRomanWidthProc load def
/_bcstr1 1 string def
/BuildChar
{
exch begin
_basefont setfont
_bcstr1 dup 0 4 -1 roll put
dup
_setwidthProc
3 copy
moveto
show
_basefonto setfont
moveto
show
end
}bd
currentdict
end
def
pdf_has_composefont?
{
/_pdfBoldBaseCIDFont
11 dict begin
/CIDFontType 1 def
/CIDFontName /_pdfBoldBaseCIDFont def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/_setwidthProc /_pdfType0WidthProc load def
/_bcstr2 2 string def
/BuildGlyph
{
exch begin
_basefont setfont
_bcstr2 1 2 index 256 mod put
_bcstr2 0 3 -1 roll 256 idiv put
_bcstr2 dup _setwidthProc
3 copy
moveto
show
_basefonto setfont
moveto
show
end
}bd
currentdict
end
def
/_pdfDefineIdentity-H
{
/Identity-H /CMap PDFText /pdf_resourcestatus get exec
{
pop pop
}
{
/CIDInit/ProcSet findresource begin 12 dict begin
begincmap
/CIDSystemInfo
3 dict begin
/Registry (Adobe) def
/Ordering (Identity) def
/Supplement 0 def
currentdict
end
def
/CMapName /Identity-H def
/CMapVersion 1 def
/CMapType 1 def
1 begincodespacerange
<0000> <ffff>
endcodespacerange
1 begincidrange
<0000> <ffff> 0
endcidrange
endcmap
CMapName currentdict/CMap defineresource pop
end
end
} ifelse
} def
} if
/_pdfVerticalRomanT3Font
10 dict begin
/FontType 3 def
/FontMatrix[1 0 0 1 0 0]def
/FontBBox[0 0 1 1]def
/_bcstr1 1 string def
/BuildChar
{
exch begin
_basefont setfont
_bcstr1 dup 0 4 -1 roll put
dup
_pdfType0WidthProc
moveto
show
end
}bd
currentdict
end
def
Level2? {setglobal} if
/MakeBoldFont
{
dup /ct_SyntheticBold known
{
dup length 3 add dict begin
CopyFont
/ct_StrokeWidth .03 0 FontMatrix idtransform pop def
/ct_SyntheticBold true def
currentdict
end
definefont
}
{
dup dup length 3 add dict
begin
CopyFont
/PaintType 2 def
/StrokeWidth .03 0 FontMatrix idtransform pop def
/dummybold currentdict
end
definefont
dup /FontType get dup 9 ge exch 11 le and
{
_pdfBoldBaseCIDFont
dup length 3 add dict copy begin
dup /CIDSystemInfo get /CIDSystemInfo exch def
/_Type0Identity /Identity-H 3 -1 roll [ exch ] composefont
/_basefont exch def
/_Type0Identity /Identity-H 3 -1 roll [ exch ] composefont
/_basefonto exch def
currentdict
end
/CIDFont defineresource
}
{
_pdfBoldBaseFont
dup length 3 add dict copy begin
/_basefont exch def
/_basefonto exch def
currentdict
end
definefont
}
ifelse
}
ifelse
} bd
/MakeBold {
1 index
_pdf_FontDirectory 2 index 2 copy known
{get}
{exch pop}
ifelse
findfont
dup
/FontType get 0 eq
{
dup /WMode known {dup /WMode get 1 eq }{false} ifelse
version length 4 ge
and
{version 0 4 getinterval cvi 2015 ge }
{true}
ifelse
{/_pdfType0WidthProc}
{/_pdfType0WMode1WidthProc}
ifelse
_pdfBoldBaseFont /_setwidthProc 3 -1 roll load put
{MakeBoldFont} Type0CopyFont definefont
}
{
dup /_fauxfont known not 1 index /SubstMaster known not and
{
_pdfBoldBaseFont /_setwidthProc /_pdfBoldRomanWidthProc load put
MakeBoldFont
}
{
2 index 2 index eq
{ exch pop }
{
dup length dict begin
CopyFont
currentdict
end
definefont
}
ifelse
}
ifelse
}
ifelse
pop pop
dup /dummybold ne
{/_pdf_FontDirectory exch dup _safeput }
{ pop }
ifelse
}bd
/MakeItalic {
_pdf_FontDirectory exch 2 copy known
{get}
{exch pop}
ifelse
dup findfont
dup /FontInfo 2 copy known
{
get
/ItalicAngle 2 copy known
{get 0 eq }
{ pop pop true}
ifelse
}
{ pop pop true}
ifelse
{
exch pop
dup /FontType get 0 eq Level2? not and
{ dup /FMapType get 6 eq }
{ false }
ifelse
{
dup /WMode 2 copy known
{
get 1 eq
{ _italMtx_WMode1Type0 }
{ _italMtxType0 }
ifelse
}
{ pop pop _italMtxType0 }
ifelse
}
{
dup /WMode 2 copy known
{
get 1 eq
{ _italMtx_WMode1 }
{ _italMtx }
ifelse
}
{ pop pop _italMtx }
ifelse
}
ifelse
makefont
dup /FontType get 42 eq Level2? not or
{
dup length dict begin
CopyFont
currentdict
end
}
if
1 index exch
definefont pop
/_pdf_FontDirectory exch dup _safeput
}
{
pop
2 copy ne
{
/_pdf_FontDirectory 3 1 roll _safeput
}
{ pop pop }
ifelse
}
ifelse
}bd
/MakeBoldItalic {
/dummybold exch
MakeBold
/dummybold
MakeItalic
}bd
Level2?
{
/pdf_CopyDict
{1 index length add dict copy}
def
}
{
/pdf_CopyDict
{
1 index length add dict
1 index wcheck
{ copy }
{ begin
{def} forall
currentdict
end
}
ifelse
}
def
}
ifelse
/pdf_AddEuroGlyphProc
{
currentdict /CharStrings known
{
CharStrings /Euro known not
{
dup
/CharStrings
CharStrings 1 pdf_CopyDict
begin
/Euro pdf_EuroProcSet 4 -1 roll get def
currentdict
end
def
/pdf_PSBuildGlyph /pdf_PSBuildGlyph load def
/pdf_PathOps /pdf_PathOps load def
/Symbol eq Encoding 160 get /.notdef eq and
{
/Encoding Encoding dup length array copy
dup 160 /Euro put def
}
if
}
{ pop
}
ifelse
}
{ pop
}
ifelse
}
def
Level2? {currentglobal true setglobal} if
/pdf_PathOps 4 dict dup begin
/m {moveto} def
/l {lineto} def
/c {curveto} def
/cp {closepath} def
end
def
/pdf_PSBuildGlyph
{
gsave
8 -1 roll pop
7 1 roll
currentdict /PaintType 2 copy known {get 2 eq}{pop pop false} ifelse
dup 9 1 roll
{
currentdict /StrokeWidth 2 copy known
{
get 2 div
5 1 roll
4 -1 roll 4 index sub
4 1 roll
3 -1 roll 4 index sub
3 1 roll
exch 4 index add exch
4 index add
5 -1 roll pop
}
{
pop pop
}
ifelse
}
if
setcachedevice
pdf_PathOps begin
exec
end
{
currentdict /StrokeWidth 2 copy known
{ get }
{ pop pop 0 }
ifelse
setlinewidth stroke
}
{
fill
}
ifelse
grestore
} def
/pdf_EuroProcSet 13 dict def
pdf_EuroProcSet
begin
/Courier-Bold
{
600 0 6 -12 585 612
{
385 274 m
180 274 l
179 283 179 293 179 303 c
179 310 179 316 180 323 c
398 323 l
423 404 l
197 404 l
219 477 273 520 357 520 c
409 520 466 490 487 454 c
487 389 l
579 389 l
579 612 l
487 612 l
487 560 l
449 595 394 612 349 612 c
222 612 130 529 98 404 c
31 404 l
6 323 l
86 323 l
86 304 l
86 294 86 284 87 274 c
31 274 l
6 193 l
99 193 l
129 77 211 -12 359 -12 c
398 -12 509 8 585 77 c
529 145 l
497 123 436 80 356 80 c
285 80 227 122 198 193 c
360 193 l
cp
600 0 m
}
pdf_PSBuildGlyph
} def
/Courier-BoldOblique /Courier-Bold load def
/Courier
{
600 0 17 -12 578 584
{
17 204 m
97 204 l
126 81 214 -12 361 -12 c
440 -12 517 17 578 62 c
554 109 l
501 70 434 43 366 43 c
266 43 184 101 154 204 c
380 204 l
400 259 l
144 259 l
144 270 143 281 143 292 c
143 299 143 307 144 314 c
418 314 l
438 369 l
153 369 l
177 464 249 529 345 529 c
415 529 484 503 522 463 c
522 391 l
576 391 l
576 584 l
522 584 l
522 531 l
473 566 420 584 348 584 c
216 584 122 490 95 369 c
37 369 l
17 314 l
87 314 l
87 297 l
87 284 88 272 89 259 c
37 259 l
cp
600 0 m
}
pdf_PSBuildGlyph
} def
/Courier-Oblique /Courier load def
/Helvetica
{
556 0 24 -19 541 703
{
541 628 m
510 669 442 703 354 703 c
201 703 117 607 101 444 c
50 444 l
25 372 l
97 372 l
97 301 l
49 301 l
24 229 l
103 229 l
124 67 209 -19 350 -19 c
435 -19 501 25 509 32 c
509 131 l
492 105 417 60 343 60 c
267 60 204 127 197 229 c
406 229 l
430 301 l
191 301 l
191 372 l
455 372 l
479 444 l
194 444 l
201 531 245 624 348 624 c
433 624 484 583 509 534 c
cp
556 0 m
}
pdf_PSBuildGlyph
} def
/Helvetica-Oblique /Helvetica load def
/Helvetica-Bold
{
556 0 12 -19 563 710
{
563 621 m
537 659 463 710 363 710 c
216 710 125 620 101 462 c
51 462 l
12 367 l
92 367 l
92 346 l
92 337 93 328 93 319 c
52 319 l
12 224 l
102 224 l
131 58 228 -19 363 -19 c
417 -19 471 -12 517 18 c
517 146 l
481 115 426 93 363 93 c
283 93 254 166 246 224 c
398 224 l
438 319 l
236 319 l
236 367 l
457 367 l
497 462 l
244 462 l
259 552 298 598 363 598 c
425 598 464 570 486 547 c
507 526 513 517 517 509 c
cp
556 0 m
}
pdf_PSBuildGlyph
} def
/Helvetica-BoldOblique /Helvetica-Bold load def
/Symbol
{
750 0 20 -12 714 685
{
714 581 m
650 645 560 685 465 685 c
304 685 165 580 128 432 c
50 432 l
20 369 l
116 369 l
115 356 115 347 115 337 c
115 328 115 319 116 306 c
50 306 l
20 243 l
128 243 l
165 97 300 -12 465 -12 c
560 -12 635 25 685 65 c
685 155 l
633 91 551 51 465 51 c
340 51 238 131 199 243 c
555 243 l
585 306 l
184 306 l
183 317 182 326 182 336 c
182 346 183 356 184 369 c
614 369 l 644 432 l
199 432 l
233 540 340 622 465 622 c
555 622 636 580 685 520 c
cp
750 0 m
}
pdf_PSBuildGlyph
} def
/Times-Bold
{
500 0 16 -14 478 700
{
367 308 m
224 308 l
224 368 l
375 368 l
380 414 l
225 414 l
230 589 257 653 315 653 c
402 653 431 521 444 457 c
473 457 l
473 698 l
444 697 l
441 679 437 662 418 662 c
393 662 365 700 310 700 c
211 700 97 597 73 414 c
21 414 l
16 368 l
69 368 l
69 359 68 350 68 341 c
68 330 68 319 69 308 c
21 308 l
16 262 l
73 262 l
91 119 161 -14 301 -14 c
380 -14 443 50 478 116 c
448 136 l
415 84 382 40 323 40 c
262 40 231 77 225 262 c
362 262 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-BoldItalic
{
500 0 9 -20 542 686
{
542 686 m
518 686 l
513 673 507 660 495 660 c
475 660 457 683 384 683 c
285 683 170 584 122 430 c
58 430 l
34 369 l
105 369 l
101 354 92 328 90 312 c
34 312 l
9 251 l
86 251 l
85 238 84 223 84 207 c
84 112 117 -14 272 -14 c
326 -14 349 9 381 9 c
393 9 393 -10 394 -20 c
420 -20 l
461 148 l
429 148 l
416 109 362 15 292 15 c
227 15 197 55 197 128 c
197 162 204 203 216 251 c
378 251 l
402 312 l
227 312 l
229 325 236 356 241 369 c
425 369 l
450 430 l
255 430 l
257 435 264 458 274 488 c
298 561 337 654 394 654 c
437 654 484 621 484 530 c
484 516 l
516 516 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-Italic
{
500 0 23 -10 595 692
{
399 317 m
196 317 l
199 340 203 363 209 386 c
429 386 l
444 424 l
219 424 l
246 514 307 648 418 648 c
448 648 471 638 492 616 c
529 576 524 529 527 479 c
549 475 l
595 687 l
570 687 l
562 674 558 664 542 664 c
518 664 474 692 423 692 c
275 692 162 551 116 424 c
67 424 l
53 386 l
104 386 l
98 363 93 340 90 317 c
37 317 l
23 279 l
86 279 l
85 266 85 253 85 240 c
85 118 137 -10 277 -10 c
370 -10 436 58 488 128 c
466 149 l
424 101 375 48 307 48 c
212 48 190 160 190 234 c
190 249 191 264 192 279 c
384 279 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
/Times-Roman
{
500 0 10 -12 484 692
{
347 298 m
171 298 l
170 310 170 322 170 335 c
170 362 l
362 362 l
374 403 l
172 403 l
184 580 244 642 308 642 c
380 642 434 574 457 457 c
481 462 l
474 691 l
449 691 l
433 670 429 657 410 657 c
394 657 360 692 299 692 c
204 692 94 604 73 403 c
22 403 l
10 362 l
70 362 l
69 352 69 341 69 330 c
69 319 69 308 70 298 c
22 298 l
10 257 l
73 257 l
97 57 216 -12 295 -12 c
364 -12 427 25 484 123 c
458 142 l
425 101 384 37 316 37 c
256 37 189 84 173 257 c
335 257 l
cp
500 0 m
}
pdf_PSBuildGlyph
} def
end
Level2? {setglobal} if
currentdict readonly pop end
%%EndResource
PDFText begin
[39/quotesingle 96/grave 128/Adieresis/Aring/Ccedilla/Eacute/Ntilde/Odieresis
/Udieresis/aacute/agrave/acircumflex/adieresis/atilde/aring/ccedilla/eacute
/egrave/ecircumflex/edieresis/iacute/igrave/icircumflex/idieresis/ntilde
/oacute/ograve/ocircumflex/odieresis/otilde/uacute/ugrave/ucircumflex
/udieresis/dagger/degree/cent/sterling/section/bullet/paragraph/germandbls
/registered/copyright/trademark/acute/dieresis/.notdef/AE/Oslash
/.notdef/plusminus/.notdef/.notdef/yen/mu/.notdef/.notdef
/.notdef/.notdef/.notdef/ordfeminine/ordmasculine/.notdef/ae/oslash
/questiondown/exclamdown/logicalnot/.notdef/florin/.notdef/.notdef
/guillemotleft/guillemotright/ellipsis/space/Agrave/Atilde/Otilde/OE/oe
/endash/emdash/quotedblleft/quotedblright/quoteleft/quoteright/divide
/.notdef/ydieresis/Ydieresis/fraction/currency/guilsinglleft/guilsinglright
/fi/fl/daggerdbl/periodcentered/quotesinglbase/quotedblbase/perthousand
/Acircumflex/Ecircumflex/Aacute/Edieresis/Egrave/Iacute/Icircumflex
/Idieresis/Igrave/Oacute/Ocircumflex/.notdef/Ograve/Uacute/Ucircumflex
/Ugrave/dotlessi/circumflex/tilde/macron/breve/dotaccent/ring/cedilla
/hungarumlaut/ogonek/caron
0 TE
[1/dotlessi/caron 39/quotesingle 96/grave
127/bullet/Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis
/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE
/bullet/Zcaron/bullet/bullet/quoteleft/quoteright/quotedblleft
/quotedblright/bullet/endash/emdash/tilde/trademark/scaron
/guilsinglright/oe/bullet/zcaron/Ydieresis/space/exclamdown/cent/sterling
/currency/yen/brokenbar/section/dieresis/copyright/ordfeminine
/guillemotleft/logicalnot/hyphen/registered/macron/degree/plusminus
/twosuperior/threesuperior/acute/mu/paragraph/periodcentered/cedilla
/onesuperior/ordmasculine/guillemotright/onequarter/onehalf/threequarters
/questiondown/Agrave/Aacute/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex/Idieresis
/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis/multiply/Oslash
/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave
/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla/egrave/eacute
/ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis/eth/ntilde
/ograve/oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave/uacute
/ucircumflex/udieresis/yacute/thorn/ydieresis
1 TE
end
%%BeginResource: procset pdfasc.prc 6.0 1
%%Copyright: Copyright 1992-2003 Adobe Systems Incorporated. All Rights Reserved.
/ASR {
13 dict begin
/mirV? exch def
/mirH? exch def
/center? exch def
/autorotate? exch def
/angle exch def
/shrink exch def
/Pury exch def
/Purx exch def
/Plly exch def
/Pllx exch def
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
Dury 0 eq Durx 0 eq and Dlly 0 eq Dllx 0 eq and and
{ shrink 0 gt { GClipBBox } { GPageBBox } ifelse }
{ ITransDBBox }
ifelse
/PHt Pury Plly sub def
/PW Purx Pllx sub def
/DHt Dury Dlly sub def
/DW Durx Dllx sub def
angle 90 eq angle 270 eq or
{
PHt /PHt PW def /PW exch def
} if
autorotate? PHt PW ne and DHt DW ne and
{
DHt DW ge
PHt PW ge
ne
{ /angle angle 90 add def
PHt /PHt PW def /PW exch def
}
if
} if
angle 0 ne
{
/angle angle 360 mod def
angle rotate
angle 90 eq
{ 0 DW neg translate }
if
angle 180 eq
{ DW neg DHt neg translate }
if
angle 270 eq
{ DHt neg 0 translate }
if
} if
center?
{
ITransBBox
Durx Dllx add 2 div Dury Dlly add 2 div
Purx Pllx add -2 div Pury Plly add -2 div
3 -1 roll add exch
3 -1 roll add exch
translate
}
{
ITransBBox
angle 0 eq
{Dllx Pllx sub Dury Pury sub}
if
angle 90 eq
{Durx Purx sub Dury Pury sub}
if
angle 180 eq
{Durx Purx sub Dlly Plly sub}
if
angle 270 eq
{Dllx Pllx sub Dlly Plly sub}
if
translate
}
ifelse
mirH? mirV? or
{
ITransBBox
mirH?
{
-1 1 scale
Durx Dllx add neg 0 translate
} if
mirV?
{
1 -1 scale
0 Dury Dlly add neg translate
} if
} if
shrink 0 ne
{
ITransBBox
Dury Dlly sub Pury Plly sub div
Durx Dllx sub Purx Pllx sub div
2 copy gt { exch } if pop
shrink 1 eq
{
Durx Dllx add 2 div Dury Dlly add 2 div translate
dup scale
Purx Pllx add -2 div Pury Plly add -2 div translate
}
{
shrink 2 eq 1 index 1.0 lt and
{
Durx Dllx add 2 div Dury Dlly add 2 div translate
dup scale
Purx Pllx add -2 div Pury Plly add -2 div translate
}
{ pop }
ifelse
}
ifelse
} if
end
} [/autorotate? /shrink? /mirH? /mirV? /angle /Pury /Purx /Plly /Pllx /Durx /Dury /Dllx /Dlly /PW /PHt /DW /DHt
/Devurx /Devury /Devllx /Devlly /pdfHt /pdfW]
bld
/GClipBBox
{
gsave newpath clippath pathbbox newpath grestore
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
ITransDBBox
} [/Durx /Dury /Dllx /Dlly]
bld
/GPageBBox
{
{
currentpagedevice /PageSize get aload pop
/Devury exch def /Devurx exch def
/Devllx 0 def /Devlly 0 def
ITransBBox
}
stopped
{ GClipBBox }
if
} [/Devurx /Devury /Devllx /Devlly ]
bld
/ITransDBBox
{
Durx Dury transform matrix defaultmatrix itransform
/Devury exch def
/Devurx exch def
Dllx Dlly transform matrix defaultmatrix itransform
/Devlly exch def
/Devllx exch def
Devury Devlly lt {/Devlly Devury /Devury Devlly def def} if
Devurx Devllx lt {/Devllx Devurx /Devurx Devllx def def} if
} [/Durx /Dury /Dllx /Dlly /Devurx /Devury /Devllx /Devlly ]
bld
/ITransBBox
{
/um matrix currentmatrix matrix defaultmatrix matrix invertmatrix matrix concatmatrix def
Devllx Devlly um itransform
Devurx Devury um itransform
/Dury exch def
/Durx exch def
/Dlly exch def
/Dllx exch def
Dury Dlly lt {/Dlly Dury /Dury Dlly def def} if
Durx Dllx lt {/Dllx Durx /Durx Dllx def def} if
} [ /um /Durx /Dury /Dllx /Dlly /Devurx /Devury /Devllx /Devlly ]
bld
%%EndResource
currentdict readonly pop
end end
/currentpacking where {pop setpacking}if
PDFVars/DocInitAll{[PDF PDFText]{/docinitialize get exec}forall }put
-PDFVars/InitAll{[PDF PDFText]{/initialize get exec}forall initgs}put
-PDFVars/TermAll{[PDFText PDF]{/terminate get exec}forall}put
-PDFVars begin PDF begin
PDFVars/DocInitAll get exec PDFVars/InitAll get exec
[/NamespacePush PDFMark5
[/_objdef {Metadata_In_EPS} /type /stream /OBJ PDFMark5
[{Metadata_In_EPS} 3537 (% &end XMP packet& %) ReadByPDFMark5
<?xpacket begin="" id="W5M0MpCehiHzreSzNTczkc9d"?>
-<x:xmpmeta xmlns:x="adobe:ns:meta/" x:xmptk="3.1-701">
- <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
- <rdf:Description rdf:about=""
- xmlns:xap="http://ns.adobe.com/xap/1.0/">
- <xap:CreateDate>2006-10-20T15:23:17+02:00</xap:CreateDate>
- <xap:ModifyDate>2006-10-20T15:23:17+02:00</xap:ModifyDate>
- <xap:MetadataDate>2006-10-20T15:23:17+02:00</xap:MetadataDate>
- </rdf:Description>
- <rdf:Description rdf:about=""
- xmlns:xapMM="http://ns.adobe.com/xap/1.0/mm/"
- xmlns:stRef="http://ns.adobe.com/xap/1.0/sType/ResourceRef#">
- <xapMM:DocumentID>uuid:34DD0B9261E111DBB7AD8EFAF1591643</xapMM:DocumentID>
- <xapMM:InstanceID>uuid:34DD0B9261E111DBB7AD8EFAF1591643</xapMM:InstanceID>
- <xapMM:DerivedFrom rdf:parseType="Resource">
- <stRef:instanceID>uuid:fcba86c4-603d-11db-9b35-000a95cd9010</stRef:instanceID>
- <stRef:documentID>uuid:2144a3e0-603d-11db-9b35-000a95cd9010</stRef:documentID>
- </xapMM:DerivedFrom>
- </rdf:Description>
- <rdf:Description rdf:about=""
- xmlns:dc="http://purl.org/dc/elements/1.1/">
- <dc:title>
- <rdf:Alt>
- <rdf:li xml:lang="x-default">paper.dvi</rdf:li>
- </rdf:Alt>
- </dc:title>
- <dc:format>application/eps</dc:format>
- </rdf:Description>
- </rdf:RDF>
-</x:xmpmeta>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<?xpacket end="w"?>
% &end XMP packet& %
[{Metadata_In_EPS} 2 dict begin /Type /Metadata def /Subtype /XML def currentdict end /PUT PDFMark5
[/Document 1 dict begin /Metadata {Metadata_In_EPS} def currentdict end /BDC PDFMark5
[/NamespacePop PDFMark5
PDFVars/TermAll get exec end end
PDF /docinitialize get exec
-
%%EndSetup
PDFVars begin PDF begin PDFVars/InitAll get exec
112.247 364.03 114.87 98.513 rectclip
q
112.247 364.03 m
227.117 364.03 l
227.117 462.543 l
112.247 462.543 l
h
W
n
q
0.1 0.0 0.0 0.1 0.0 0.0 cm
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
Q
q
n
1195.62 4688.31 m
2327.9 4688.31 l
2327.9 3620.38 l
1195.62 3620.38 l
h
W
n
n
[/DeviceGray] cs 1.0 sc
1195.619995 3620.379883 1132.279907 1046.750000 rectfill
-
n
1380.530029 3761.300049 828.437988 828.438232 rectfill
-
4.88755 w
1 j
n
1380.53 3761.3 828.438 828.438 re
S
[4.88755 39.1004 ] 0.0 d
3.25837 w
n
1380.53 3761.3 m
1380.53 4589.74 l
0.0 sc
S
n
1380.53 4589.74 m
1380.53 4589.74 l
S
n
1483.98 3761.3 m
1483.98 4589.74 l
S
n
1483.98 4589.74 m
1483.98 4589.74 l
S
n
1588.25 3761.3 m
1588.25 4589.74 l
S
n
1588.25 4589.74 m
1588.25 4589.74 l
S
n
1691.7 3761.3 m
1691.7 4589.74 l
S
n
1691.7 4589.74 m
1691.7 4589.74 l
S
n
1795.16 3761.3 m
1795.16 4589.74 l
S
n
1795.16 4589.74 m
1795.16 4589.74 l
S
n
1898.61 3761.3 m
1898.61 4589.74 l
S
n
1898.61 4589.74 m
1898.61 4589.74 l
S
n
2002.06 3761.3 m
2002.06 4589.74 l
S
n
2002.06 4589.74 m
2002.06 4589.74 l
S
n
2105.52 3761.3 m
2105.52 4589.74 l
S
n
2105.52 4589.74 m
2105.52 4589.74 l
S
n
2208.97 3761.3 m
2208.97 4589.74 l
S
n
2208.97 4589.74 m
2208.97 4589.74 l
S
n
1380.53 3761.3 m
2208.97 3761.3 l
S
n
2208.97 3761.3 m
2208.97 3761.3 l
S
n
1380.53 3864.76 m
2208.97 3864.76 l
S
n
2208.97 3864.76 m
2208.97 3864.76 l
S
n
1380.53 3968.21 m
2208.97 3968.21 l
S
n
2208.97 3968.21 m
2208.97 3968.21 l
S
n
1380.53 4072.48 m
2208.97 4072.48 l
S
n
2208.97 4072.48 m
2208.97 4072.48 l
S
n
1380.53 4175.93 m
2208.97 4175.93 l
S
n
2208.97 4175.93 m
2208.97 4175.93 l
S
n
1380.53 4279.38 m
2208.97 4279.38 l
S
n
2208.97 4279.38 m
2208.97 4279.38 l
S
n
1380.53 4382.84 m
2208.97 4382.84 l
S
n
2208.97 4382.84 m
2208.97 4382.84 l
S
n
1380.53 4486.29 m
2208.97 4486.29 l
S
n
2208.97 4486.29 m
2208.97 4486.29 l
S
n
1380.53 4589.74 m
2208.97 4589.74 l
S
n
2208.97 4589.74 m
2208.97 4589.74 l
S
[] 0.0 d
4.88755 w
n
1380.53 3761.3 m
2208.97 3761.3 l
S
n
1380.53 4589.74 m
2208.97 4589.74 l
S
n
1380.53 3761.3 m
1380.53 4589.74 l
S
n
2208.97 3761.3 m
2208.97 4589.74 l
S
n
1380.53 3761.3 m
2208.97 3761.3 l
S
n
1380.53 3761.3 m
1380.53 4589.74 l
S
n
1380.53 3761.3 m
1380.53 3770.26 l
S
n
1380.53 4589.74 m
1380.53 4580.78 l
S
n
1483.98 3761.3 m
1483.98 3770.26 l
S
n
1483.98 4589.74 m
1483.98 4580.78 l
S
n
1588.25 3761.3 m
1588.25 3770.26 l
S
n
1588.25 4589.74 m
1588.25 4580.78 l
S
n
1691.7 3761.3 m
1691.7 3770.26 l
S
n
1691.7 4589.74 m
1691.7 4580.78 l
S
n
1795.16 3761.3 m
1795.16 3770.26 l
S
n
1795.16 4589.74 m
1795.16 4580.78 l
S
n
1898.61 3761.3 m
1898.61 3770.26 l
S
n
1898.61 4589.74 m
1898.61 4580.78 l
S
n
2002.06 3761.3 m
2002.06 3770.26 l
S
n
2002.06 4589.74 m
2002.06 4580.78 l
S
n
2105.52 3761.3 m
2105.52 3770.26 l
S
n
2105.52 4589.74 m
2105.52 4580.78 l
S
n
2208.97 3761.3 m
2208.97 3770.26 l
S
n
2208.97 4589.74 m
2208.97 4580.78 l
S
n
1380.53 3761.3 m
1389.49 3761.3 l
S
n
2208.97 3761.3 m
2200.01 3761.3 l
S
n
1380.53 3864.76 m
1389.49 3864.76 l
S
n
2208.97 3864.76 m
2200.01 3864.76 l
S
n
1380.53 3968.21 m
1389.49 3968.21 l
S
n
2208.97 3968.21 m
2200.01 3968.21 l
S
n
1380.53 4072.48 m
1389.49 4072.48 l
S
n
2208.97 4072.48 m
2200.01 4072.48 l
S
n
1380.53 4175.93 m
1389.49 4175.93 l
S
n
2208.97 4175.93 m
2200.01 4175.93 l
S
n
1380.53 4279.38 m
1389.49 4279.38 l
S
n
2208.97 4279.38 m
2200.01 4279.38 l
S
n
1380.53 4382.84 m
1389.49 4382.84 l
S
n
2208.97 4382.84 m
2200.01 4382.84 l
S
n
1380.53 4486.29 m
1389.49 4486.29 l
S
n
2208.97 4486.29 m
2200.01 4486.29 l
S
n
1380.53 4589.74 m
1389.49 4589.74 l
S
n
2208.97 4589.74 m
2200.01 4589.74 l
S
n
1380.53 3761.3 m
2208.97 3761.3 l
S
n
1380.53 4589.74 m
2208.97 4589.74 l
S
n
1380.53 3761.3 m
1380.53 4589.74 l
S
n
2208.97 3761.3 m
2208.97 4589.74 l
S
Q
q
n
1321.07 4649.21 m
2217.12 4649.21 l
2217.12 3703.47 l
1321.07 3703.47 l
h
W
n
n
1804.93 4589.74 m
1804.93 4584.34 1800.55 4579.97 1795.16 4579.97 c
1789.76 4579.97 1785.38 4584.34 1785.38 4589.74 c
1785.38 4595.14 1789.76 4599.52 1795.16 4599.52 c
1800.55 4599.52 1804.93 4595.14 1804.93 4589.74 c
[/DeviceRGB] cs 0.0 0.0 1.0 sc
f
n
1804.93 4537.61 m
1804.93 4532.21 1800.55 4527.83 1795.16 4527.83 c
1789.76 4527.83 1785.38 4532.21 1785.38 4537.61 c
1785.38 4543.01 1789.76 4547.38 1795.16 4547.38 c
1800.55 4547.38 1804.93 4543.01 1804.93 4537.61 c
f
n
1804.93 4486.29 m
1804.93 4480.89 1800.55 4476.52 1795.16 4476.52 c
1789.76 4476.52 1785.38 4480.89 1785.38 4486.29 c
1785.38 4491.69 1789.76 4496.07 1795.16 4496.07 c
1800.55 4496.07 1804.93 4491.69 1804.93 4486.29 c
f
n
1804.93 4434.16 m
1804.93 4428.76 1800.55 4424.38 1795.16 4424.38 c
1789.76 4424.38 1785.38 4428.76 1785.38 4434.16 c
1785.38 4439.55 1789.76 4443.93 1795.16 4443.93 c
1800.55 4443.93 1804.93 4439.55 1804.93 4434.16 c
f
n
1804.93 4382.84 m
1804.93 4377.44 1800.55 4373.06 1795.16 4373.06 c
1789.76 4373.06 1785.38 4377.44 1785.38 4382.84 c
1785.38 4388.23 1789.76 4392.61 1795.16 4392.61 c
1800.55 4392.61 1804.93 4388.23 1804.93 4382.84 c
f
n
1804.93 4330.7 m
1804.93 4325.3 1800.55 4320.93 1795.16 4320.93 c
1789.76 4320.93 1785.38 4325.3 1785.38 4330.7 c
1785.38 4336.1 1789.76 4340.48 1795.16 4340.48 c
1800.55 4340.48 1804.93 4336.1 1804.93 4330.7 c
f
n
1804.93 4279.38 m
1804.93 4273.98 1800.55 4269.61 1795.16 4269.61 c
1789.76 4269.61 1785.38 4273.98 1785.38 4279.38 c
1785.38 4284.78 1789.76 4289.16 1795.16 4289.16 c
1800.55 4289.16 1804.93 4284.78 1804.93 4279.38 c
f
n
1804.93 4227.25 m
1804.93 4221.85 1800.55 4217.47 1795.16 4217.47 c
1789.76 4217.47 1785.38 4221.85 1785.38 4227.25 c
1785.38 4232.65 1789.76 4237.02 1795.16 4237.02 c
1800.55 4237.02 1804.93 4232.65 1804.93 4227.25 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1804.93 4123.8 m
1804.93 4118.4 1800.55 4114.02 1795.16 4114.02 c
1789.76 4114.02 1785.38 4118.4 1785.38 4123.8 c
1785.38 4129.2 1789.76 4133.57 1795.16 4133.57 c
1800.55 4133.57 1804.93 4129.2 1804.93 4123.8 c
f
n
1804.93 4072.48 m
1804.93 4067.08 1800.55 4062.7 1795.16 4062.7 c
1789.76 4062.7 1785.38 4067.08 1785.38 4072.48 c
1785.38 4077.88 1789.76 4082.25 1795.16 4082.25 c
1800.55 4082.25 1804.93 4077.88 1804.93 4072.48 c
f
n
1804.93 4020.34 m
1804.93 4014.95 1800.55 4010.57 1795.16 4010.57 c
1789.76 4010.57 1785.38 4014.95 1785.38 4020.34 c
1785.38 4025.74 1789.76 4030.12 1795.16 4030.12 c
1800.55 4030.12 1804.93 4025.74 1804.93 4020.34 c
f
n
1804.93 3968.21 m
1804.93 3962.81 1800.55 3958.43 1795.16 3958.43 c
1789.76 3958.43 1785.38 3962.81 1785.38 3968.21 c
1785.38 3973.61 1789.76 3977.98 1795.16 3977.98 c
1800.55 3977.98 1804.93 3973.61 1804.93 3968.21 c
f
n
1804.93 3916.89 m
1804.93 3911.49 1800.55 3907.11 1795.16 3907.11 c
1789.76 3907.11 1785.38 3911.49 1785.38 3916.89 c
1785.38 3922.29 1789.76 3926.66 1795.16 3926.66 c
1800.55 3926.66 1804.93 3922.29 1804.93 3916.89 c
f
n
1804.93 3864.76 m
1804.93 3859.36 1800.55 3854.98 1795.16 3854.98 c
1789.76 3854.98 1785.38 3859.36 1785.38 3864.76 c
1785.38 3870.16 1789.76 3874.53 1795.16 3874.53 c
1800.55 3874.53 1804.93 3870.16 1804.93 3864.76 c
f
n
1804.93 3813.44 m
1804.93 3808.04 1800.55 3803.66 1795.16 3803.66 c
1789.76 3803.66 1785.38 3808.04 1785.38 3813.44 c
1785.38 3818.84 1789.76 3823.21 1795.16 3823.21 c
1800.55 3823.21 1804.93 3818.84 1804.93 3813.44 c
f
n
1764.2 4587.3 m
1764.2 4581.9 1759.82 4577.52 1754.43 4577.52 c
1749.03 4577.52 1744.65 4581.9 1744.65 4587.3 c
1744.65 4592.7 1749.03 4597.07 1754.43 4597.07 c
1759.82 4597.07 1764.2 4592.7 1764.2 4587.3 c
f
n
1769.09 4535.98 m
1769.09 4530.58 1764.71 4526.2 1759.32 4526.2 c
1753.92 4526.2 1749.54 4530.58 1749.54 4535.98 c
1749.54 4541.38 1753.92 4545.75 1759.32 4545.75 c
1764.71 4545.75 1769.09 4541.38 1769.09 4535.98 c
f
n
1773.98 4484.66 m
1773.98 4479.26 1769.6 4474.89 1764.2 4474.89 c
1758.8 4474.89 1754.43 4479.26 1754.43 4484.66 c
1754.43 4490.06 1758.8 4494.43 1764.2 4494.43 c
1769.6 4494.43 1773.98 4490.06 1773.98 4484.66 c
f
n
1778.87 4432.53 m
1778.87 4427.13 1774.49 4422.75 1769.09 4422.75 c
1763.69 4422.75 1759.32 4427.13 1759.32 4432.53 c
1759.32 4437.93 1763.69 4442.3 1769.09 4442.3 c
1774.49 4442.3 1778.87 4437.93 1778.87 4432.53 c
f
n
1784.57 4381.21 m
1784.57 4375.81 1780.19 4371.43 1774.79 4371.43 c
1769.39 4371.43 1765.02 4375.81 1765.02 4381.21 c
1765.02 4386.61 1769.39 4390.98 1774.79 4390.98 c
1780.19 4390.98 1784.57 4386.61 1784.57 4381.21 c
f
n
1789.46 4329.89 m
1789.46 4324.49 1785.08 4320.11 1779.68 4320.11 c
1774.28 4320.11 1769.91 4324.49 1769.91 4329.89 c
1769.91 4335.29 1774.28 4339.66 1779.68 4339.66 c
1785.08 4339.66 1789.46 4335.29 1789.46 4329.89 c
f
n
1794.34 4278.57 m
1794.34 4273.17 1789.96 4268.79 1784.57 4268.79 c
1779.17 4268.79 1774.79 4273.17 1774.79 4278.57 c
1774.79 4283.97 1779.17 4288.34 1784.57 4288.34 c
1789.96 4288.34 1794.34 4283.97 1794.34 4278.57 c
f
n
1799.23 4227.25 m
1799.23 4221.85 1794.86 4217.47 1789.46 4217.47 c
1784.06 4217.47 1779.68 4221.85 1779.68 4227.25 c
1779.68 4232.65 1784.06 4237.02 1789.46 4237.02 c
1794.86 4237.02 1799.23 4232.65 1799.23 4227.25 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1809.82 4123.8 m
1809.82 4118.4 1805.44 4114.02 1800.04 4114.02 c
1794.64 4114.02 1790.27 4118.4 1790.27 4123.8 c
1790.27 4129.2 1794.64 4133.57 1800.04 4133.57 c
1805.44 4133.57 1809.82 4129.2 1809.82 4123.8 c
f
n
1814.71 4072.48 m
1814.71 4067.08 1810.33 4062.7 1804.93 4062.7 c
1799.54 4062.7 1795.16 4067.08 1795.16 4072.48 c
1795.16 4077.88 1799.54 4082.25 1804.93 4082.25 c
1810.33 4082.25 1814.71 4077.88 1814.71 4072.48 c
f
n
1819.59 4021.16 m
1819.59 4015.76 1815.22 4011.38 1809.82 4011.38 c
1804.42 4011.38 1800.04 4015.76 1800.04 4021.16 c
1800.04 4026.55 1804.42 4030.93 1809.82 4030.93 c
1815.22 4030.93 1819.59 4026.55 1819.59 4021.16 c
f
n
1824.48 3969.84 m
1824.48 3964.44 1820.11 3960.06 1814.71 3960.06 c
1809.31 3960.06 1804.93 3964.44 1804.93 3969.84 c
1804.93 3975.24 1809.31 3979.61 1814.71 3979.61 c
1820.11 3979.61 1824.48 3975.24 1824.48 3969.84 c
f
n
1830.18 3918.52 m
1830.18 3913.12 1825.81 3908.74 1820.41 3908.74 c
1815.01 3908.74 1810.63 3913.12 1810.63 3918.52 c
1810.63 3923.92 1815.01 3928.29 1820.41 3928.29 c
1825.81 3928.29 1830.18 3923.92 1830.18 3918.52 c
f
n
1835.07 3866.39 m
1835.07 3860.99 1830.7 3856.61 1825.3 3856.61 c
1819.9 3856.61 1815.52 3860.99 1815.52 3866.39 c
1815.52 3871.79 1819.9 3876.16 1825.3 3876.16 c
1830.7 3876.16 1835.07 3871.79 1835.07 3866.39 c
f
n
1839.96 3815.07 m
1839.96 3809.67 1835.58 3805.29 1830.18 3805.29 c
1824.79 3805.29 1820.41 3809.67 1820.41 3815.07 c
1820.41 3820.46 1824.79 3824.84 1830.18 3824.84 c
1835.58 3824.84 1839.96 3820.46 1839.96 3815.07 c
f
n
1723.47 4581.6 m
1723.47 4576.2 1719.1 4571.82 1713.7 4571.82 c
1708.3 4571.82 1703.92 4576.2 1703.92 4581.6 c
1703.92 4587.0 1708.3 4591.37 1713.7 4591.37 c
1719.1 4591.37 1723.47 4587.0 1723.47 4581.6 c
f
n
1734.06 4530.28 m
1734.06 4524.88 1729.69 4520.5 1724.29 4520.5 c
1718.89 4520.5 1714.51 4524.88 1714.51 4530.28 c
1714.51 4535.68 1718.89 4540.05 1724.29 4540.05 c
1729.69 4540.05 1734.06 4535.68 1734.06 4530.28 c
f
n
1743.84 4479.77 m
1743.84 4474.38 1739.46 4470.0 1734.06 4470.0 c
1728.66 4470.0 1724.29 4474.38 1724.29 4479.77 c
1724.29 4485.17 1728.66 4489.55 1734.06 4489.55 c
1739.46 4489.55 1743.84 4485.17 1743.84 4479.77 c
f
n
1754.43 4429.27 m
1754.43 4423.87 1750.05 4419.49 1744.65 4419.49 c
1739.25 4419.49 1734.88 4423.87 1734.88 4429.27 c
1734.88 4434.67 1739.25 4439.04 1744.65 4439.04 c
1750.05 4439.04 1754.43 4434.67 1754.43 4429.27 c
f
n
1764.2 4378.76 m
1764.2 4373.36 1759.82 4368.99 1754.43 4368.99 c
1749.03 4368.99 1744.65 4373.36 1744.65 4378.76 c
1744.65 4384.16 1749.03 4388.54 1754.43 4388.54 c
1759.82 4388.54 1764.2 4384.16 1764.2 4378.76 c
f
n
1773.98 4327.45 m
1773.98 4322.05 1769.6 4317.67 1764.2 4317.67 c
1758.8 4317.67 1754.43 4322.05 1754.43 4327.45 c
1754.43 4332.84 1758.8 4337.22 1764.2 4337.22 c
1769.6 4337.22 1773.98 4332.84 1773.98 4327.45 c
f
n
1784.57 4276.94 m
1784.57 4271.54 1780.19 4267.16 1774.79 4267.16 c
1769.39 4267.16 1765.02 4271.54 1765.02 4276.94 c
1765.02 4282.34 1769.39 4286.71 1774.79 4286.71 c
1780.19 4286.71 1784.57 4282.34 1784.57 4276.94 c
f
n
1794.34 4226.43 m
1794.34 4221.04 1789.96 4216.66 1784.57 4216.66 c
1779.17 4216.66 1774.79 4221.04 1774.79 4226.43 c
1774.79 4231.83 1779.17 4236.21 1784.57 4236.21 c
1789.96 4236.21 1794.34 4231.83 1794.34 4226.43 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1814.71 4124.61 m
1814.71 4119.21 1810.33 4114.84 1804.93 4114.84 c
1799.54 4114.84 1795.16 4119.21 1795.16 4124.61 c
1795.16 4130.01 1799.54 4134.39 1804.93 4134.39 c
1810.33 4134.39 1814.71 4130.01 1814.71 4124.61 c
f
n
1824.48 4074.11 m
1824.48 4068.71 1820.11 4064.33 1814.71 4064.33 c
1809.31 4064.33 1804.93 4068.71 1804.93 4074.11 c
1804.93 4079.5 1809.31 4083.88 1814.71 4083.88 c
1820.11 4083.88 1824.48 4079.5 1824.48 4074.11 c
f
n
1835.07 4023.6 m
1835.07 4018.2 1830.7 4013.83 1825.3 4013.83 c
1819.9 4013.83 1815.52 4018.2 1815.52 4023.6 c
1815.52 4029.0 1819.9 4033.38 1825.3 4033.38 c
1830.7 4033.38 1835.07 4029.0 1835.07 4023.6 c
f
n
1844.85 3972.28 m
1844.85 3966.88 1840.47 3962.51 1835.07 3962.51 c
1829.68 3962.51 1825.3 3966.88 1825.3 3972.28 c
1825.3 3977.68 1829.68 3982.06 1835.07 3982.06 c
1840.47 3982.06 1844.85 3977.68 1844.85 3972.28 c
f
n
1854.62 3921.78 m
1854.62 3916.38 1850.25 3912.0 1844.85 3912.0 c
1839.45 3912.0 1835.07 3916.38 1835.07 3921.78 c
1835.07 3927.18 1839.45 3931.55 1844.85 3931.55 c
1850.25 3931.55 1854.62 3927.18 1854.62 3921.78 c
f
n
1865.21 3871.27 m
1865.21 3865.88 1860.84 3861.5 1855.44 3861.5 c
1850.04 3861.5 1845.66 3865.88 1845.66 3871.27 c
1845.66 3876.67 1850.04 3881.05 1855.44 3881.05 c
1860.84 3881.05 1865.21 3876.67 1865.21 3871.27 c
f
n
1874.99 3820.77 m
1874.99 3815.37 1870.61 3810.99 1865.21 3810.99 c
1859.81 3810.99 1855.44 3815.37 1855.44 3820.77 c
1855.44 3826.17 1859.81 3830.54 1865.21 3830.54 c
1870.61 3830.54 1874.99 3826.17 1874.99 3820.77 c
f
n
1684.37 4571.82 m
1684.37 4566.42 1680.0 4562.05 1674.6 4562.05 c
1669.2 4562.05 1664.82 4566.42 1664.82 4571.82 c
1664.82 4577.22 1669.2 4581.6 1674.6 4581.6 c
1680.0 4581.6 1684.37 4577.22 1684.37 4571.82 c
f
n
1699.04 4522.13 m
1699.04 4516.73 1694.66 4512.36 1689.26 4512.36 c
1683.86 4512.36 1679.48 4516.73 1679.48 4522.13 c
1679.48 4527.53 1683.86 4531.91 1689.26 4531.91 c
1694.66 4531.91 1699.04 4527.53 1699.04 4522.13 c
f
n
1714.51 4472.44 m
1714.51 4467.04 1710.14 4462.67 1704.74 4462.67 c
1699.34 4462.67 1694.96 4467.04 1694.96 4472.44 c
1694.96 4477.84 1699.34 4482.21 1704.74 4482.21 c
1710.14 4482.21 1714.51 4477.84 1714.51 4472.44 c
f
n
1729.18 4422.75 m
1729.18 4417.35 1724.8 4412.98 1719.4 4412.98 c
1714.0 4412.98 1709.62 4417.35 1709.62 4422.75 c
1709.62 4428.15 1714.0 4432.53 1719.4 4432.53 c
1724.8 4432.53 1729.18 4428.15 1729.18 4422.75 c
f
n
1744.65 4373.88 m
1744.65 4368.48 1740.28 4364.1 1734.88 4364.1 c
1729.48 4364.1 1725.1 4368.48 1725.1 4373.88 c
1725.1 4379.27 1729.48 4383.65 1734.88 4383.65 c
1740.28 4383.65 1744.65 4379.27 1744.65 4373.88 c
f
n
1759.32 4324.19 m
1759.32 4318.79 1754.94 4314.41 1749.54 4314.41 c
1744.14 4314.41 1739.77 4318.79 1739.77 4324.19 c
1739.77 4329.59 1744.14 4333.96 1749.54 4333.96 c
1754.94 4333.96 1759.32 4329.59 1759.32 4324.19 c
f
n
1774.79 4274.5 m
1774.79 4269.1 1770.41 4264.72 1765.02 4264.72 c
1759.62 4264.72 1755.24 4269.1 1755.24 4274.5 c
1755.24 4279.89 1759.62 4284.27 1765.02 4284.27 c
1770.41 4284.27 1774.79 4279.89 1774.79 4274.5 c
f
n
1789.46 4224.8 m
1789.46 4219.41 1785.08 4215.03 1779.68 4215.03 c
1774.28 4215.03 1769.91 4219.41 1769.91 4224.8 c
1769.91 4230.2 1774.28 4234.58 1779.68 4234.58 c
1785.08 4234.58 1789.46 4230.2 1789.46 4224.8 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1819.59 4126.24 m
1819.59 4120.84 1815.22 4116.46 1809.82 4116.46 c
1804.42 4116.46 1800.04 4120.84 1800.04 4126.24 c
1800.04 4131.64 1804.42 4136.02 1809.82 4136.02 c
1815.22 4136.02 1819.59 4131.64 1819.59 4126.24 c
f
n
1834.26 4076.55 m
1834.26 4071.15 1829.88 4066.77 1824.48 4066.77 c
1819.09 4066.77 1814.71 4071.15 1814.71 4076.55 c
1814.71 4081.95 1819.09 4086.32 1824.48 4086.32 c
1829.88 4086.32 1834.26 4081.95 1834.26 4076.55 c
f
n
1849.73 4026.86 m
1849.73 4021.46 1845.36 4017.09 1839.96 4017.09 c
1834.56 4017.09 1830.18 4021.46 1830.18 4026.86 c
1830.18 4032.26 1834.56 4036.64 1839.96 4036.64 c
1845.36 4036.64 1849.73 4032.26 1849.73 4026.86 c
f
n
1864.4 3977.17 m
1864.4 3971.77 1860.02 3967.39 1854.62 3967.39 c
1849.22 3967.39 1844.85 3971.77 1844.85 3977.17 c
1844.85 3982.57 1849.22 3986.95 1854.62 3986.95 c
1860.02 3986.95 1864.4 3982.57 1864.4 3977.17 c
f
n
1879.88 3928.29 m
1879.88 3922.89 1875.5 3918.52 1870.1 3918.52 c
1864.7 3918.52 1860.32 3922.89 1860.32 3928.29 c
1860.32 3933.69 1864.7 3938.07 1870.1 3938.07 c
1875.5 3938.07 1879.88 3933.69 1879.88 3928.29 c
f
n
1894.54 3878.61 m
1894.54 3873.21 1890.16 3868.83 1884.76 3868.83 c
1879.36 3868.83 1874.99 3873.21 1874.99 3878.61 c
1874.99 3884.0 1879.36 3888.38 1884.76 3888.38 c
1890.16 3888.38 1894.54 3884.0 1894.54 3878.61 c
f
n
1910.02 3828.91 m
1910.02 3823.52 1905.64 3819.14 1900.24 3819.14 c
1894.84 3819.14 1890.46 3823.52 1890.46 3828.91 c
1890.46 3834.31 1894.84 3838.69 1900.24 3838.69 c
1905.64 3838.69 1910.02 3834.31 1910.02 3828.91 c
f
n
1646.09 4557.97 m
1646.09 4552.57 1641.71 4548.2 1636.31 4548.2 c
1630.91 4548.2 1626.54 4552.57 1626.54 4557.97 c
1626.54 4563.37 1630.91 4567.75 1636.31 4567.75 c
1641.71 4567.75 1646.09 4563.37 1646.09 4557.97 c
f
n
1665.64 4509.91 m
1665.64 4504.52 1661.26 4500.14 1655.86 4500.14 c
1650.46 4500.14 1646.09 4504.52 1646.09 4509.91 c
1646.09 4515.31 1650.46 4519.69 1655.86 4519.69 c
1661.26 4519.69 1665.64 4515.31 1665.64 4509.91 c
f
n
1686.0 4461.85 m
1686.0 4456.45 1681.62 4452.08 1676.23 4452.08 c
1670.83 4452.08 1666.45 4456.45 1666.45 4461.85 c
1666.45 4467.25 1670.83 4471.62 1676.23 4471.62 c
1681.62 4471.62 1686.0 4467.25 1686.0 4461.85 c
f
n
1705.55 4414.61 m
1705.55 4409.21 1701.18 4404.83 1695.78 4404.83 c
1690.38 4404.83 1686.0 4409.21 1686.0 4414.61 c
1686.0 4420.0 1690.38 4424.38 1695.78 4424.38 c
1701.18 4424.38 1705.55 4420.0 1705.55 4414.61 c
f
n
1725.1 4366.54 m
1725.1 4361.14 1720.73 4356.77 1715.33 4356.77 c
1709.93 4356.77 1705.55 4361.14 1705.55 4366.54 c
1705.55 4371.94 1709.93 4376.32 1715.33 4376.32 c
1720.73 4376.32 1725.1 4371.94 1725.1 4366.54 c
f
n
1745.47 4318.48 m
1745.47 4313.09 1741.09 4308.71 1735.69 4308.71 c
1730.29 4308.71 1725.92 4313.09 1725.92 4318.48 c
1725.92 4323.88 1730.29 4328.26 1735.69 4328.26 c
1741.09 4328.26 1745.47 4323.88 1745.47 4318.48 c
f
n
1765.02 4271.24 m
1765.02 4265.84 1760.64 4261.46 1755.24 4261.46 c
1749.84 4261.46 1745.47 4265.84 1745.47 4271.24 c
1745.47 4276.64 1749.84 4281.01 1755.24 4281.01 c
1760.64 4281.01 1765.02 4276.64 1765.02 4271.24 c
f
n
1784.57 4223.18 m
1784.57 4217.78 1780.19 4213.4 1774.79 4213.4 c
1769.39 4213.4 1765.02 4217.78 1765.02 4223.18 c
1765.02 4228.57 1769.39 4232.95 1774.79 4232.95 c
1780.19 4232.95 1784.57 4228.57 1784.57 4223.18 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1824.48 4127.87 m
1824.48 4122.47 1820.11 4118.09 1814.71 4118.09 c
1809.31 4118.09 1804.93 4122.47 1804.93 4127.87 c
1804.93 4133.27 1809.31 4137.64 1814.71 4137.64 c
1820.11 4137.64 1824.48 4133.27 1824.48 4127.87 c
f
n
1844.03 4079.81 m
1844.03 4074.41 1839.66 4070.04 1834.26 4070.04 c
1828.86 4070.04 1824.48 4074.41 1824.48 4079.81 c
1824.48 4085.21 1828.86 4089.58 1834.26 4089.58 c
1839.66 4089.58 1844.03 4085.21 1844.03 4079.81 c
f
n
1863.58 4032.56 m
1863.58 4027.16 1859.21 4022.79 1853.81 4022.79 c
1848.41 4022.79 1844.03 4027.16 1844.03 4032.56 c
1844.03 4037.96 1848.41 4042.34 1853.81 4042.34 c
1859.21 4042.34 1863.58 4037.96 1863.58 4032.56 c
f
n
1883.95 3984.5 m
1883.95 3979.1 1879.57 3974.73 1874.17 3974.73 c
1868.77 3974.73 1864.4 3979.1 1864.4 3984.5 c
1864.4 3989.9 1868.77 3994.28 1874.17 3994.28 c
1879.57 3994.28 1883.95 3989.9 1883.95 3984.5 c
f
n
1903.5 3936.44 m
1903.5 3931.04 1899.12 3926.66 1893.72 3926.66 c
1888.32 3926.66 1883.95 3931.04 1883.95 3936.44 c
1883.95 3941.84 1888.32 3946.21 1893.72 3946.21 c
1899.12 3946.21 1903.5 3941.84 1903.5 3936.44 c
f
n
1923.05 3889.2 m
1923.05 3883.8 1918.67 3879.42 1913.27 3879.42 c
1907.88 3879.42 1903.5 3883.8 1903.5 3889.2 c
1903.5 3894.59 1907.88 3898.97 1913.27 3898.97 c
1918.67 3898.97 1923.05 3894.59 1923.05 3889.2 c
f
n
1943.41 3841.13 m
1943.41 3835.73 1939.04 3831.36 1933.64 3831.36 c
1928.24 3831.36 1923.86 3835.73 1923.86 3841.13 c
1923.86 3846.53 1928.24 3850.91 1933.64 3850.91 c
1939.04 3850.91 1943.41 3846.53 1943.41 3841.13 c
f
n
1609.43 4540.87 m
1609.43 4535.47 1605.05 4531.09 1599.66 4531.09 c
1594.26 4531.09 1589.88 4535.47 1589.88 4540.87 c
1589.88 4546.27 1594.26 4550.64 1599.66 4550.64 c
1605.05 4550.64 1609.43 4546.27 1609.43 4540.87 c
f
n
1633.87 4495.25 m
1633.87 4489.85 1629.49 4485.48 1624.09 4485.48 c
1618.7 4485.48 1614.32 4489.85 1614.32 4495.25 c
1614.32 4500.65 1618.7 4505.02 1624.09 4505.02 c
1629.49 4505.02 1633.87 4500.65 1633.87 4495.25 c
f
n
1658.3 4449.63 m
1658.3 4444.23 1653.93 4439.86 1648.53 4439.86 c
1643.13 4439.86 1638.75 4444.23 1638.75 4449.63 c
1638.75 4455.03 1643.13 4459.41 1648.53 4459.41 c
1653.93 4459.41 1658.3 4455.03 1658.3 4449.63 c
f
n
1682.74 4404.02 m
1682.74 4398.62 1678.37 4394.24 1672.97 4394.24 c
1667.57 4394.24 1663.2 4398.62 1663.2 4404.02 c
1663.2 4409.41 1667.57 4413.79 1672.97 4413.79 c
1678.37 4413.79 1682.74 4409.41 1682.74 4404.02 c
f
n
1707.18 4358.4 m
1707.18 4353.0 1702.8 4348.62 1697.41 4348.62 c
1692.01 4348.62 1687.63 4353.0 1687.63 4358.4 c
1687.63 4363.8 1692.01 4368.17 1697.41 4368.17 c
1702.8 4368.17 1707.18 4363.8 1707.18 4358.4 c
f
n
1731.62 4312.78 m
1731.62 4307.38 1727.24 4303.01 1721.84 4303.01 c
1716.45 4303.01 1712.07 4307.38 1712.07 4312.78 c
1712.07 4318.18 1716.45 4322.56 1721.84 4322.56 c
1727.24 4322.56 1731.62 4318.18 1731.62 4312.78 c
f
n
1756.06 4267.16 m
1756.06 4261.77 1751.68 4257.39 1746.28 4257.39 c
1740.88 4257.39 1736.51 4261.77 1736.51 4267.16 c
1736.51 4272.56 1740.88 4276.94 1746.28 4276.94 c
1751.68 4276.94 1756.06 4272.56 1756.06 4267.16 c
f
n
1780.5 4221.55 m
1780.5 4216.15 1776.12 4211.77 1770.72 4211.77 c
1765.32 4211.77 1760.95 4216.15 1760.95 4221.55 c
1760.95 4226.95 1765.32 4231.32 1770.72 4231.32 c
1776.12 4231.32 1780.5 4226.95 1780.5 4221.55 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1828.55 4129.5 m
1828.55 4124.1 1824.18 4119.72 1818.78 4119.72 c
1813.38 4119.72 1809.0 4124.1 1809.0 4129.5 c
1809.0 4134.9 1813.38 4139.27 1818.78 4139.27 c
1824.18 4139.27 1828.55 4134.9 1828.55 4129.5 c
f
n
1852.99 4083.88 m
1852.99 4078.48 1848.62 4074.11 1843.22 4074.11 c
1837.82 4074.11 1833.44 4078.48 1833.44 4083.88 c
1833.44 4089.28 1837.82 4093.66 1843.22 4093.66 c
1848.62 4093.66 1852.99 4089.28 1852.99 4083.88 c
f
n
1877.43 4038.27 m
1877.43 4032.87 1873.05 4028.49 1867.66 4028.49 c
1862.26 4028.49 1857.88 4032.87 1857.88 4038.27 c
1857.88 4043.66 1862.26 4048.04 1867.66 4048.04 c
1873.05 4048.04 1877.43 4043.66 1877.43 4038.27 c
f
n
1901.87 3992.65 m
1901.87 3987.25 1897.49 3982.87 1892.09 3982.87 c
1886.7 3982.87 1882.32 3987.25 1882.32 3992.65 c
1882.32 3998.05 1886.7 4002.42 1892.09 4002.42 c
1897.49 4002.42 1901.87 3998.05 1901.87 3992.65 c
f
n
1926.3 3947.03 m
1926.3 3941.63 1921.93 3937.25 1916.53 3937.25 c
1911.13 3937.25 1906.76 3941.63 1906.76 3947.03 c
1906.76 3952.43 1911.13 3956.8 1916.53 3956.8 c
1921.93 3956.8 1926.3 3952.43 1926.3 3947.03 c
f
n
1950.75 3901.41 m
1950.75 3896.02 1946.37 3891.64 1940.97 3891.64 c
1935.57 3891.64 1931.2 3896.02 1931.2 3901.41 c
1931.2 3906.81 1935.57 3911.19 1940.97 3911.19 c
1946.37 3911.19 1950.75 3906.81 1950.75 3901.41 c
f
n
1975.18 3855.8 m
1975.18 3850.4 1970.8 3846.02 1965.41 3846.02 c
1960.01 3846.02 1955.63 3850.4 1955.63 3855.8 c
1955.63 3861.2 1960.01 3865.57 1965.41 3865.57 c
1970.8 3865.57 1975.18 3861.2 1975.18 3855.8 c
f
n
1574.4 4519.69 m
1574.4 4514.29 1570.03 4509.91 1564.63 4509.91 c
1559.23 4509.91 1554.85 4514.29 1554.85 4519.69 c
1554.85 4525.09 1559.23 4529.46 1564.63 4529.46 c
1570.03 4529.46 1574.4 4525.09 1574.4 4519.69 c
f
n
1603.73 4476.52 m
1603.73 4471.12 1599.35 4466.74 1593.95 4466.74 c
1588.55 4466.74 1584.18 4471.12 1584.18 4476.52 c
1584.18 4481.91 1588.55 4486.29 1593.95 4486.29 c
1599.35 4486.29 1603.73 4481.91 1603.73 4476.52 c
f
n
1632.24 4433.34 m
1632.24 4427.94 1627.86 4423.57 1622.46 4423.57 c
1617.07 4423.57 1612.69 4427.94 1612.69 4433.34 c
1612.69 4438.74 1617.07 4443.12 1622.46 4443.12 c
1627.86 4443.12 1632.24 4438.74 1632.24 4433.34 c
f
n
1660.75 4390.17 m
1660.75 4384.77 1656.37 4380.39 1650.97 4380.39 c
1645.57 4380.39 1641.2 4384.77 1641.2 4390.17 c
1641.2 4395.57 1645.57 4399.94 1650.97 4399.94 c
1656.37 4399.94 1660.75 4395.57 1660.75 4390.17 c
f
n
1689.26 4347.81 m
1689.26 4342.41 1684.88 4338.04 1679.48 4338.04 c
1674.09 4338.04 1669.71 4342.41 1669.71 4347.81 c
1669.71 4353.21 1674.09 4357.59 1679.48 4357.59 c
1684.88 4357.59 1689.26 4353.21 1689.26 4347.81 c
f
n
1718.59 4304.64 m
1718.59 4299.24 1714.21 4294.86 1708.81 4294.86 c
1703.41 4294.86 1699.04 4299.24 1699.04 4304.64 c
1699.04 4310.04 1703.41 4314.41 1708.81 4314.41 c
1714.21 4314.41 1718.59 4310.04 1718.59 4304.64 c
f
n
1747.1 4261.46 m
1747.1 4256.06 1742.72 4251.69 1737.32 4251.69 c
1731.92 4251.69 1727.55 4256.06 1727.55 4261.46 c
1727.55 4266.86 1731.92 4271.24 1737.32 4271.24 c
1742.72 4271.24 1747.1 4266.86 1747.1 4261.46 c
f
n
1775.61 4218.29 m
1775.61 4212.89 1771.23 4208.52 1765.83 4208.52 c
1760.43 4208.52 1756.06 4212.89 1756.06 4218.29 c
1756.06 4223.69 1760.43 4228.06 1765.83 4228.06 c
1771.23 4228.06 1775.61 4223.69 1775.61 4218.29 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1833.44 4132.76 m
1833.44 4127.36 1829.07 4122.98 1823.67 4122.98 c
1818.27 4122.98 1813.89 4127.36 1813.89 4132.76 c
1813.89 4138.16 1818.27 4142.53 1823.67 4142.53 c
1829.07 4142.53 1833.44 4138.16 1833.44 4132.76 c
f
n
1861.95 4089.58 m
1861.95 4084.18 1857.58 4079.81 1852.18 4079.81 c
1846.78 4079.81 1842.4 4084.18 1842.4 4089.58 c
1842.4 4094.98 1846.78 4099.36 1852.18 4099.36 c
1857.58 4099.36 1861.95 4094.98 1861.95 4089.58 c
f
n
1890.46 4046.41 m
1890.46 4041.01 1886.09 4036.64 1880.69 4036.64 c
1875.29 4036.64 1870.91 4041.01 1870.91 4046.41 c
1870.91 4051.81 1875.29 4056.18 1880.69 4056.18 c
1886.09 4056.18 1890.46 4051.81 1890.46 4046.41 c
f
n
1919.79 4003.24 m
1919.79 3997.84 1915.41 3993.46 1910.02 3993.46 c
1904.62 3993.46 1900.24 3997.84 1900.24 4003.24 c
1900.24 4008.64 1904.62 4013.01 1910.02 4013.01 c
1915.41 4013.01 1919.79 4008.64 1919.79 4003.24 c
f
n
1948.3 3960.88 m
1948.3 3955.48 1943.93 3951.1 1938.53 3951.1 c
1933.13 3951.1 1928.75 3955.48 1928.75 3960.88 c
1928.75 3966.28 1933.13 3970.65 1938.53 3970.65 c
1943.93 3970.65 1948.3 3966.28 1948.3 3960.88 c
f
n
1976.81 3917.7 m
1976.81 3912.3 1972.43 3907.93 1967.04 3907.93 c
1961.64 3907.93 1957.26 3912.3 1957.26 3917.7 c
1957.26 3923.1 1961.64 3927.48 1967.04 3927.48 c
1972.43 3927.48 1976.81 3923.1 1976.81 3917.7 c
f
n
2005.32 3874.53 m
2005.32 3869.13 2000.95 3864.76 1995.55 3864.76 c
1990.15 3864.76 1985.77 3869.13 1985.77 3874.53 c
1985.77 3879.93 1990.15 3884.3 1995.55 3884.3 c
2000.95 3884.3 2005.32 3879.93 2005.32 3874.53 c
f
n
1541.82 4495.25 m
1541.82 4489.85 1537.44 4485.48 1532.04 4485.48 c
1526.64 4485.48 1522.27 4489.85 1522.27 4495.25 c
1522.27 4500.65 1526.64 4505.02 1532.04 4505.02 c
1537.44 4505.02 1541.82 4500.65 1541.82 4495.25 c
f
n
1575.22 4455.34 m
1575.22 4449.94 1570.84 4445.56 1565.44 4445.56 c
1560.04 4445.56 1555.67 4449.94 1555.67 4455.34 c
1555.67 4460.73 1560.04 4465.11 1565.44 4465.11 c
1570.84 4465.11 1575.22 4460.73 1575.22 4455.34 c
f
n
1607.8 4415.42 m
1607.8 4410.02 1603.43 4405.64 1598.03 4405.64 c
1592.63 4405.64 1588.25 4410.02 1588.25 4415.42 c
1588.25 4420.82 1592.63 4425.2 1598.03 4425.2 c
1603.43 4425.2 1607.8 4420.82 1607.8 4415.42 c
f
n
1640.39 4375.5 m
1640.39 4370.11 1636.01 4365.73 1630.61 4365.73 c
1625.21 4365.73 1620.84 4370.11 1620.84 4375.5 c
1620.84 4380.9 1625.21 4385.28 1630.61 4385.28 c
1636.01 4385.28 1640.39 4380.9 1640.39 4375.5 c
f
n
1672.97 4335.59 m
1672.97 4330.19 1668.59 4325.82 1663.2 4325.82 c
1657.8 4325.82 1653.42 4330.19 1653.42 4335.59 c
1653.42 4340.99 1657.8 4345.36 1663.2 4345.36 c
1668.59 4345.36 1672.97 4340.99 1672.97 4335.59 c
f
n
1706.37 4295.68 m
1706.37 4290.28 1701.99 4285.9 1696.59 4285.9 c
1691.19 4285.9 1686.82 4290.28 1686.82 4295.68 c
1686.82 4301.07 1691.19 4305.45 1696.59 4305.45 c
1701.99 4305.45 1706.37 4301.07 1706.37 4295.68 c
f
n
1738.95 4255.76 m
1738.95 4250.36 1734.57 4245.98 1729.18 4245.98 c
1723.78 4245.98 1719.4 4250.36 1719.4 4255.76 c
1719.4 4261.16 1723.78 4265.54 1729.18 4265.54 c
1734.57 4265.54 1738.95 4261.16 1738.95 4255.76 c
f
n
1771.54 4215.84 m
1771.54 4210.45 1767.16 4206.07 1761.76 4206.07 c
1756.36 4206.07 1751.98 4210.45 1751.98 4215.84 c
1751.98 4221.24 1756.36 4225.62 1761.76 4225.62 c
1767.16 4225.62 1771.54 4221.24 1771.54 4215.84 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1837.52 4135.2 m
1837.52 4129.8 1833.14 4125.43 1827.74 4125.43 c
1822.34 4125.43 1817.96 4129.8 1817.96 4135.2 c
1817.96 4140.6 1822.34 4144.98 1827.74 4144.98 c
1833.14 4144.98 1837.52 4140.6 1837.52 4135.2 c
f
n
1870.1 4095.29 m
1870.1 4089.89 1865.72 4085.51 1860.32 4085.51 c
1854.93 4085.51 1850.55 4089.89 1850.55 4095.29 c
1850.55 4100.68 1854.93 4105.06 1860.32 4105.06 c
1865.72 4105.06 1870.1 4100.68 1870.1 4095.29 c
f
n
1902.68 4055.37 m
1902.68 4049.97 1898.31 4045.59 1892.91 4045.59 c
1887.51 4045.59 1883.13 4049.97 1883.13 4055.37 c
1883.13 4060.77 1887.51 4065.14 1892.91 4065.14 c
1898.31 4065.14 1902.68 4060.77 1902.68 4055.37 c
f
n
1936.08 4015.46 m
1936.08 4010.06 1931.7 4005.68 1926.3 4005.68 c
1920.91 4005.68 1916.53 4010.06 1916.53 4015.46 c
1916.53 4020.86 1920.91 4025.23 1926.3 4025.23 c
1931.7 4025.23 1936.08 4020.86 1936.08 4015.46 c
f
n
1968.66 3975.54 m
1968.66 3970.14 1964.29 3965.77 1958.89 3965.77 c
1953.49 3965.77 1949.11 3970.14 1949.11 3975.54 c
1949.11 3980.94 1953.49 3985.32 1958.89 3985.32 c
1964.29 3985.32 1968.66 3980.94 1968.66 3975.54 c
f
n
2001.25 3935.62 m
2001.25 3930.23 1996.87 3925.85 1991.47 3925.85 c
1986.07 3925.85 1981.7 3930.23 1981.7 3935.62 c
1981.7 3941.02 1986.07 3945.4 1991.47 3945.4 c
1996.87 3945.4 2001.25 3941.02 2001.25 3935.62 c
f
n
2033.83 3895.71 m
2033.83 3890.31 2029.46 3885.94 2024.06 3885.94 c
2018.66 3885.94 2014.28 3890.31 2014.28 3895.71 c
2014.28 3901.11 2018.66 3905.48 2024.06 3905.48 c
2029.46 3905.48 2033.83 3901.11 2033.83 3895.71 c
f
n
1511.68 4468.37 m
1511.68 4462.97 1507.3 4458.59 1501.91 4458.59 c
1496.51 4458.59 1492.13 4462.97 1492.13 4468.37 c
1492.13 4473.77 1496.51 4478.14 1501.91 4478.14 c
1507.3 4478.14 1511.68 4473.77 1511.68 4468.37 c
f
n
1548.34 4431.71 m
1548.34 4426.31 1543.96 4421.94 1538.56 4421.94 c
1533.16 4421.94 1528.79 4426.31 1528.79 4431.71 c
1528.79 4437.11 1533.16 4441.49 1538.56 4441.49 c
1543.96 4441.49 1548.34 4437.11 1548.34 4431.71 c
f
n
1584.99 4395.05 m
1584.99 4389.66 1580.62 4385.28 1575.22 4385.28 c
1569.82 4385.28 1565.44 4389.66 1565.44 4395.05 c
1565.44 4400.45 1569.82 4404.83 1575.22 4404.83 c
1580.62 4404.83 1584.99 4400.45 1584.99 4395.05 c
f
n
1621.65 4358.4 m
1621.65 4353.0 1617.27 4348.62 1611.88 4348.62 c
1606.48 4348.62 1602.1 4353.0 1602.1 4358.4 c
1602.1 4363.8 1606.48 4368.17 1611.88 4368.17 c
1617.27 4368.17 1621.65 4363.8 1621.65 4358.4 c
f
n
1658.3 4321.74 m
1658.3 4316.34 1653.93 4311.97 1648.53 4311.97 c
1643.13 4311.97 1638.75 4316.34 1638.75 4321.74 c
1638.75 4327.14 1643.13 4331.52 1648.53 4331.52 c
1653.93 4331.52 1658.3 4327.14 1658.3 4321.74 c
f
n
1694.96 4285.09 m
1694.96 4279.69 1690.59 4275.31 1685.19 4275.31 c
1679.79 4275.31 1675.41 4279.69 1675.41 4285.09 c
1675.41 4290.48 1679.79 4294.86 1685.19 4294.86 c
1690.59 4294.86 1694.96 4290.48 1694.96 4285.09 c
f
n
1731.62 4248.43 m
1731.62 4243.03 1727.24 4238.65 1721.84 4238.65 c
1716.45 4238.65 1712.07 4243.03 1712.07 4248.43 c
1712.07 4253.83 1716.45 4258.2 1721.84 4258.2 c
1727.24 4258.2 1731.62 4253.83 1731.62 4248.43 c
f
n
1768.28 4211.77 m
1768.28 4206.38 1763.9 4202.0 1758.5 4202.0 c
1753.1 4202.0 1748.73 4206.38 1748.73 4211.77 c
1748.73 4217.17 1753.1 4221.55 1758.5 4221.55 c
1763.9 4221.55 1768.28 4217.17 1768.28 4211.77 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1840.77 4139.27 m
1840.77 4133.88 1836.4 4129.5 1831.0 4129.5 c
1825.6 4129.5 1821.22 4133.88 1821.22 4139.27 c
1821.22 4144.67 1825.6 4149.05 1831.0 4149.05 c
1836.4 4149.05 1840.77 4144.67 1840.77 4139.27 c
f
n
1877.43 4102.62 m
1877.43 4097.22 1873.05 4092.84 1867.66 4092.84 c
1862.26 4092.84 1857.88 4097.22 1857.88 4102.62 c
1857.88 4108.02 1862.26 4112.39 1867.66 4112.39 c
1873.05 4112.39 1877.43 4108.02 1877.43 4102.62 c
f
n
1914.09 4065.96 m
1914.09 4060.56 1909.71 4056.18 1904.31 4056.18 c
1898.91 4056.18 1894.54 4060.56 1894.54 4065.96 c
1894.54 4071.36 1898.91 4075.73 1904.31 4075.73 c
1909.71 4075.73 1914.09 4071.36 1914.09 4065.96 c
f
n
1950.75 4029.3 m
1950.75 4023.91 1946.37 4019.53 1940.97 4019.53 c
1935.57 4019.53 1931.2 4023.91 1931.2 4029.3 c
1931.2 4034.7 1935.57 4039.08 1940.97 4039.08 c
1946.37 4039.08 1950.75 4034.7 1950.75 4029.3 c
f
n
1987.4 3992.65 m
1987.4 3987.25 1983.02 3982.87 1977.62 3982.87 c
1972.23 3982.87 1967.85 3987.25 1967.85 3992.65 c
1967.85 3998.05 1972.23 4002.42 1977.62 4002.42 c
1983.02 4002.42 1987.4 3998.05 1987.4 3992.65 c
f
n
2024.06 3955.99 m
2024.06 3950.59 2019.68 3946.21 2014.28 3946.21 c
2008.88 3946.21 2004.51 3950.59 2004.51 3955.99 c
2004.51 3961.39 2008.88 3965.77 2014.28 3965.77 c
2019.68 3965.77 2024.06 3961.39 2024.06 3955.99 c
f
n
2060.71 3919.33 m
2060.71 3913.93 2056.34 3909.56 2050.94 3909.56 c
2045.54 3909.56 2041.16 3913.93 2041.16 3919.33 c
2041.16 3924.73 2045.54 3929.11 2050.94 3929.11 c
2056.34 3929.11 2060.71 3924.73 2060.71 3919.33 c
f
n
1484.8 4438.23 m
1484.8 4432.83 1480.42 4428.45 1475.02 4428.45 c
1469.62 4428.45 1465.25 4432.83 1465.25 4438.23 c
1465.25 4443.63 1469.62 4448.0 1475.02 4448.0 c
1480.42 4448.0 1484.8 4443.63 1484.8 4438.23 c
f
n
1524.71 4404.83 m
1524.71 4399.43 1520.34 4395.05 1514.94 4395.05 c
1509.54 4395.05 1505.16 4399.43 1505.16 4404.83 c
1505.16 4410.23 1509.54 4414.61 1514.94 4414.61 c
1520.34 4414.61 1524.71 4410.23 1524.71 4404.83 c
f
n
1564.63 4372.25 m
1564.63 4366.85 1560.25 4362.47 1554.85 4362.47 c
1549.45 4362.47 1545.08 4366.85 1545.08 4372.25 c
1545.08 4377.64 1549.45 4382.02 1554.85 4382.02 c
1560.25 4382.02 1564.63 4377.64 1564.63 4372.25 c
f
n
1604.54 4339.66 m
1604.54 4334.27 1600.17 4329.89 1594.77 4329.89 c
1589.37 4329.89 1584.99 4334.27 1584.99 4339.66 c
1584.99 4345.06 1589.37 4349.44 1594.77 4349.44 c
1600.17 4349.44 1604.54 4345.06 1604.54 4339.66 c
f
n
1644.46 4307.08 m
1644.46 4301.68 1640.08 4297.3 1634.68 4297.3 c
1629.29 4297.3 1624.91 4301.68 1624.91 4307.08 c
1624.91 4312.48 1629.29 4316.86 1634.68 4316.86 c
1640.08 4316.86 1644.46 4312.48 1644.46 4307.08 c
f
n
1684.37 4273.68 m
1684.37 4268.28 1680.0 4263.91 1674.6 4263.91 c
1669.2 4263.91 1664.82 4268.28 1664.82 4273.68 c
1664.82 4279.08 1669.2 4283.46 1674.6 4283.46 c
1680.0 4283.46 1684.37 4279.08 1684.37 4273.68 c
f
n
1724.29 4241.1 m
1724.29 4235.7 1719.91 4231.32 1714.51 4231.32 c
1709.11 4231.32 1704.74 4235.7 1704.74 4241.1 c
1704.74 4246.5 1709.11 4250.87 1714.51 4250.87 c
1719.91 4250.87 1724.29 4246.5 1724.29 4241.1 c
f
n
1764.2 4208.52 m
1764.2 4203.12 1759.82 4198.74 1754.43 4198.74 c
1749.03 4198.74 1744.65 4203.12 1744.65 4208.52 c
1744.65 4213.91 1749.03 4218.29 1754.43 4218.29 c
1759.82 4218.29 1764.2 4213.91 1764.2 4208.52 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1844.85 4142.53 m
1844.85 4137.13 1840.47 4132.76 1835.07 4132.76 c
1829.68 4132.76 1825.3 4137.13 1825.3 4142.53 c
1825.3 4147.93 1829.68 4152.31 1835.07 4152.31 c
1840.47 4152.31 1844.85 4147.93 1844.85 4142.53 c
f
n
1884.76 4109.95 m
1884.76 4104.55 1880.39 4100.17 1874.99 4100.17 c
1869.59 4100.17 1865.21 4104.55 1865.21 4109.95 c
1865.21 4115.35 1869.59 4119.72 1874.99 4119.72 c
1880.39 4119.72 1884.76 4115.35 1884.76 4109.95 c
f
n
1924.68 4077.36 m
1924.68 4071.96 1920.3 4067.59 1914.9 4067.59 c
1909.5 4067.59 1905.13 4071.96 1905.13 4077.36 c
1905.13 4082.76 1909.5 4087.14 1914.9 4087.14 c
1920.3 4087.14 1924.68 4082.76 1924.68 4077.36 c
f
n
1964.59 4043.96 m
1964.59 4038.57 1960.21 4034.19 1954.82 4034.19 c
1949.42 4034.19 1945.04 4038.57 1945.04 4043.96 c
1945.04 4049.36 1949.42 4053.74 1954.82 4053.74 c
1960.21 4053.74 1964.59 4049.36 1964.59 4043.96 c
f
n
2004.51 4011.38 m
2004.51 4005.98 2000.13 4001.61 1994.73 4001.61 c
1989.33 4001.61 1984.96 4005.98 1984.96 4011.38 c
1984.96 4016.78 1989.33 4021.16 1994.73 4021.16 c
2000.13 4021.16 2004.51 4016.78 2004.51 4011.38 c
f
n
2044.42 3978.8 m
2044.42 3973.4 2040.05 3969.02 2034.65 3969.02 c
2029.25 3969.02 2024.87 3973.4 2024.87 3978.8 c
2024.87 3984.2 2029.25 3988.57 2034.65 3988.57 c
2040.05 3988.57 2044.42 3984.2 2044.42 3978.8 c
f
n
2084.34 3946.21 m
2084.34 3940.82 2079.96 3936.44 2074.56 3936.44 c
2069.16 3936.44 2064.79 3940.82 2064.79 3946.21 c
2064.79 3951.61 2069.16 3955.99 2074.56 3955.99 c
2079.96 3955.99 2084.34 3951.61 2084.34 3946.21 c
f
n
1460.36 4405.64 m
1460.36 4400.25 1455.98 4395.87 1450.59 4395.87 c
1445.19 4395.87 1440.81 4400.25 1440.81 4405.64 c
1440.81 4411.04 1445.19 4415.42 1450.59 4415.42 c
1455.98 4415.42 1460.36 4411.04 1460.36 4405.64 c
f
n
1503.54 4376.32 m
1503.54 4370.92 1499.16 4366.54 1493.76 4366.54 c
1488.36 4366.54 1483.98 4370.92 1483.98 4376.32 c
1483.98 4381.72 1488.36 4386.09 1493.76 4386.09 c
1499.16 4386.09 1503.54 4381.72 1503.54 4376.32 c
f
n
1546.71 4347.81 m
1546.71 4342.41 1542.33 4338.04 1536.93 4338.04 c
1531.54 4338.04 1527.16 4342.41 1527.16 4347.81 c
1527.16 4353.21 1531.54 4357.59 1536.93 4357.59 c
1542.33 4357.59 1546.71 4353.21 1546.71 4347.81 c
f
n
1589.88 4319.3 m
1589.88 4313.9 1585.5 4309.52 1580.11 4309.52 c
1574.71 4309.52 1570.33 4313.9 1570.33 4319.3 c
1570.33 4324.7 1574.71 4329.07 1580.11 4329.07 c
1585.5 4329.07 1589.88 4324.7 1589.88 4319.3 c
f
n
1632.24 4290.79 m
1632.24 4285.39 1627.86 4281.01 1622.46 4281.01 c
1617.07 4281.01 1612.69 4285.39 1612.69 4290.79 c
1612.69 4296.19 1617.07 4300.56 1622.46 4300.56 c
1627.86 4300.56 1632.24 4296.19 1632.24 4290.79 c
f
n
1675.41 4261.46 m
1675.41 4256.06 1671.04 4251.69 1665.64 4251.69 c
1660.24 4251.69 1655.86 4256.06 1655.86 4261.46 c
1655.86 4266.86 1660.24 4271.24 1665.64 4271.24 c
1671.04 4271.24 1675.41 4266.86 1675.41 4261.46 c
f
n
1718.59 4232.95 m
1718.59 4227.55 1714.21 4223.18 1708.81 4223.18 c
1703.41 4223.18 1699.04 4227.55 1699.04 4232.95 c
1699.04 4238.35 1703.41 4242.73 1708.81 4242.73 c
1714.21 4242.73 1718.59 4238.35 1718.59 4232.95 c
f
n
1761.76 4204.44 m
1761.76 4199.04 1757.38 4194.66 1751.98 4194.66 c
1746.59 4194.66 1742.21 4199.04 1742.21 4204.44 c
1742.21 4209.84 1746.59 4214.21 1751.98 4214.21 c
1757.38 4214.21 1761.76 4209.84 1761.76 4204.44 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1847.29 4146.61 m
1847.29 4141.21 1842.91 4136.83 1837.52 4136.83 c
1832.12 4136.83 1827.74 4141.21 1827.74 4146.61 c
1827.74 4152.0 1832.12 4156.38 1837.52 4156.38 c
1842.91 4156.38 1847.29 4152.0 1847.29 4146.61 c
f
n
1890.46 4118.09 m
1890.46 4112.7 1886.09 4108.32 1880.69 4108.32 c
1875.29 4108.32 1870.91 4112.7 1870.91 4118.09 c
1870.91 4123.49 1875.29 4127.87 1880.69 4127.87 c
1886.09 4127.87 1890.46 4123.49 1890.46 4118.09 c
f
n
1933.64 4089.58 m
1933.64 4084.18 1929.26 4079.81 1923.86 4079.81 c
1918.46 4079.81 1914.09 4084.18 1914.09 4089.58 c
1914.09 4094.98 1918.46 4099.36 1923.86 4099.36 c
1929.26 4099.36 1933.64 4094.98 1933.64 4089.58 c
f
n
1976.81 4060.26 m
1976.81 4054.86 1972.43 4050.48 1967.04 4050.48 c
1961.64 4050.48 1957.26 4054.86 1957.26 4060.26 c
1957.26 4065.66 1961.64 4070.04 1967.04 4070.04 c
1972.43 4070.04 1976.81 4065.66 1976.81 4060.26 c
f
n
2019.17 4031.75 m
2019.17 4026.35 2014.79 4021.97 2009.39 4021.97 c
2004.0 4021.97 1999.62 4026.35 1999.62 4031.75 c
1999.62 4037.14 2004.0 4041.52 2009.39 4041.52 c
2014.79 4041.52 2019.17 4037.14 2019.17 4031.75 c
f
n
2062.34 4003.24 m
2062.34 3997.84 2057.96 3993.46 2052.57 3993.46 c
2047.17 3993.46 2042.79 3997.84 2042.79 4003.24 c
2042.79 4008.64 2047.17 4013.01 2052.57 4013.01 c
2057.96 4013.01 2062.34 4008.64 2062.34 4003.24 c
f
n
2105.52 3974.73 m
2105.52 3969.33 2101.14 3964.95 2095.74 3964.95 c
2090.34 3964.95 2085.96 3969.33 2085.96 3974.73 c
2085.96 3980.12 2090.34 3984.5 2095.74 3984.5 c
2101.14 3984.5 2105.52 3980.12 2105.52 3974.73 c
f
n
1439.18 4370.62 m
1439.18 4365.22 1434.8 4360.84 1429.41 4360.84 c
1424.01 4360.84 1419.63 4365.22 1419.63 4370.62 c
1419.63 4376.02 1424.01 4380.39 1429.41 4380.39 c
1434.8 4380.39 1439.18 4376.02 1439.18 4370.62 c
f
n
1484.8 4346.18 m
1484.8 4340.78 1480.42 4336.41 1475.02 4336.41 c
1469.62 4336.41 1465.25 4340.78 1465.25 4346.18 c
1465.25 4351.58 1469.62 4355.95 1475.02 4355.95 c
1480.42 4355.95 1484.8 4351.58 1484.8 4346.18 c
f
n
1530.41 4321.74 m
1530.41 4316.34 1526.04 4311.97 1520.64 4311.97 c
1515.24 4311.97 1510.86 4316.34 1510.86 4321.74 c
1510.86 4327.14 1515.24 4331.52 1520.64 4331.52 c
1526.04 4331.52 1530.41 4327.14 1530.41 4321.74 c
f
n
1576.03 4297.3 m
1576.03 4291.91 1571.66 4287.53 1566.26 4287.53 c
1560.86 4287.53 1556.48 4291.91 1556.48 4297.3 c
1556.48 4302.7 1560.86 4307.08 1566.26 4307.08 c
1571.66 4307.08 1576.03 4302.7 1576.03 4297.3 c
f
n
1621.65 4272.87 m
1621.65 4267.47 1617.27 4263.09 1611.88 4263.09 c
1606.48 4263.09 1602.1 4267.47 1602.1 4272.87 c
1602.1 4278.27 1606.48 4282.64 1611.88 4282.64 c
1617.27 4282.64 1621.65 4278.27 1621.65 4272.87 c
f
n
1667.27 4248.43 m
1667.27 4243.03 1662.89 4238.65 1657.49 4238.65 c
1652.09 4238.65 1647.71 4243.03 1647.71 4248.43 c
1647.71 4253.83 1652.09 4258.2 1657.49 4258.2 c
1662.89 4258.2 1667.27 4253.83 1667.27 4248.43 c
f
n
1712.88 4223.99 m
1712.88 4218.59 1708.51 4214.21 1703.11 4214.21 c
1697.71 4214.21 1693.33 4218.59 1693.33 4223.99 c
1693.33 4229.39 1697.71 4233.77 1703.11 4233.77 c
1708.51 4233.77 1712.88 4229.39 1712.88 4223.99 c
f
n
1758.5 4199.55 m
1758.5 4194.16 1754.12 4189.78 1748.73 4189.78 c
1743.33 4189.78 1738.95 4194.16 1738.95 4199.55 c
1738.95 4204.95 1743.33 4209.33 1748.73 4209.33 c
1754.12 4209.33 1758.5 4204.95 1758.5 4199.55 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1850.55 4151.49 m
1850.55 4146.09 1846.17 4141.72 1840.77 4141.72 c
1835.38 4141.72 1831.0 4146.09 1831.0 4151.49 c
1831.0 4156.89 1835.38 4161.27 1840.77 4161.27 c
1846.17 4161.27 1850.55 4156.89 1850.55 4151.49 c
f
n
1896.17 4127.05 m
1896.17 4121.66 1891.79 4117.28 1886.39 4117.28 c
1880.99 4117.28 1876.62 4121.66 1876.62 4127.05 c
1876.62 4132.45 1880.99 4136.83 1886.39 4136.83 c
1891.79 4136.83 1896.17 4132.45 1896.17 4127.05 c
f
n
1941.79 4102.62 m
1941.79 4097.22 1937.41 4092.84 1932.01 4092.84 c
1926.61 4092.84 1922.23 4097.22 1922.23 4102.62 c
1922.23 4108.02 1926.61 4112.39 1932.01 4112.39 c
1937.41 4112.39 1941.79 4108.02 1941.79 4102.62 c
f
n
1987.4 4078.18 m
1987.4 4072.78 1983.02 4068.4 1977.62 4068.4 c
1972.23 4068.4 1967.85 4072.78 1967.85 4078.18 c
1967.85 4083.58 1972.23 4087.95 1977.62 4087.95 c
1983.02 4087.95 1987.4 4083.58 1987.4 4078.18 c
f
n
2033.02 4053.74 m
2033.02 4048.34 2028.64 4043.96 2023.24 4043.96 c
2017.84 4043.96 2013.47 4048.34 2013.47 4053.74 c
2013.47 4059.14 2017.84 4063.52 2023.24 4063.52 c
2028.64 4063.52 2033.02 4059.14 2033.02 4053.74 c
f
n
2078.64 4029.3 m
2078.64 4023.91 2074.26 4019.53 2068.86 4019.53 c
2063.46 4019.53 2059.09 4023.91 2059.09 4029.3 c
2059.09 4034.7 2063.46 4039.08 2068.86 4039.08 c
2074.26 4039.08 2078.64 4034.7 2078.64 4029.3 c
f
n
2124.25 4004.87 m
2124.25 3999.47 2119.88 3995.09 2114.48 3995.09 c
2109.08 3995.09 2104.7 3999.47 2104.7 4004.87 c
2104.7 4010.27 2109.08 4014.64 2114.48 4014.64 c
2119.88 4014.64 2124.25 4010.27 2124.25 4004.87 c
f
n
1422.07 4333.96 m
1422.07 4328.56 1417.7 4324.19 1412.3 4324.19 c
1406.9 4324.19 1402.52 4328.56 1402.52 4333.96 c
1402.52 4339.36 1406.9 4343.73 1412.3 4343.73 c
1417.7 4343.73 1422.07 4339.36 1422.07 4333.96 c
f
n
1470.14 4314.41 m
1470.14 4309.01 1465.76 4304.64 1460.36 4304.64 c
1454.96 4304.64 1450.59 4309.01 1450.59 4314.41 c
1450.59 4319.81 1454.96 4324.19 1460.36 4324.19 c
1465.76 4324.19 1470.14 4319.81 1470.14 4314.41 c
f
n
1518.2 4294.05 m
1518.2 4288.65 1513.82 4284.27 1508.42 4284.27 c
1503.02 4284.27 1498.64 4288.65 1498.64 4294.05 c
1498.64 4299.45 1503.02 4303.82 1508.42 4303.82 c
1513.82 4303.82 1518.2 4299.45 1518.2 4294.05 c
f
n
1565.44 4274.5 m
1565.44 4269.1 1561.07 4264.72 1555.67 4264.72 c
1550.27 4264.72 1545.89 4269.1 1545.89 4274.5 c
1545.89 4279.89 1550.27 4284.27 1555.67 4284.27 c
1561.07 4284.27 1565.44 4279.89 1565.44 4274.5 c
f
n
1613.5 4254.95 m
1613.5 4249.55 1609.12 4245.17 1603.73 4245.17 c
1598.33 4245.17 1593.95 4249.55 1593.95 4254.95 c
1593.95 4260.34 1598.33 4264.72 1603.73 4264.72 c
1609.12 4264.72 1613.5 4260.34 1613.5 4254.95 c
f
n
1661.56 4234.58 m
1661.56 4229.18 1657.19 4224.8 1651.79 4224.8 c
1646.39 4224.8 1642.02 4229.18 1642.02 4234.58 c
1642.02 4239.98 1646.39 4244.36 1651.79 4244.36 c
1657.19 4244.36 1661.56 4239.98 1661.56 4234.58 c
f
n
1708.81 4215.03 m
1708.81 4209.63 1704.43 4205.25 1699.04 4205.25 c
1693.64 4205.25 1689.26 4209.63 1689.26 4215.03 c
1689.26 4220.43 1693.64 4224.8 1699.04 4224.8 c
1704.43 4224.8 1708.81 4220.43 1708.81 4215.03 c
f
n
1756.87 4195.48 m
1756.87 4190.08 1752.5 4185.71 1747.1 4185.71 c
1741.7 4185.71 1737.32 4190.08 1737.32 4195.48 c
1737.32 4200.88 1741.7 4205.25 1747.1 4205.25 c
1752.5 4205.25 1756.87 4200.88 1756.87 4195.48 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1852.18 4155.57 m
1852.18 4150.17 1847.8 4145.79 1842.4 4145.79 c
1837.0 4145.79 1832.63 4150.17 1832.63 4155.57 c
1832.63 4160.96 1837.0 4165.34 1842.4 4165.34 c
1847.8 4165.34 1852.18 4160.96 1852.18 4155.57 c
f
n
1900.24 4136.02 m
1900.24 4130.62 1895.86 4126.24 1890.46 4126.24 c
1885.07 4126.24 1880.69 4130.62 1880.69 4136.02 c
1880.69 4141.41 1885.07 4145.79 1890.46 4145.79 c
1895.86 4145.79 1900.24 4141.41 1900.24 4136.02 c
f
n
1947.48 4116.46 m
1947.48 4111.07 1943.11 4106.69 1937.71 4106.69 c
1932.31 4106.69 1927.94 4111.07 1927.94 4116.46 c
1927.94 4121.86 1932.31 4126.24 1937.71 4126.24 c
1943.11 4126.24 1947.48 4121.86 1947.48 4116.46 c
f
n
1995.55 4096.1 m
1995.55 4090.7 1991.17 4086.32 1985.77 4086.32 c
1980.38 4086.32 1976.0 4090.7 1976.0 4096.1 c
1976.0 4101.5 1980.38 4105.88 1985.77 4105.88 c
1991.17 4105.88 1995.55 4101.5 1995.55 4096.1 c
f
n
2043.61 4076.55 m
2043.61 4071.15 2039.23 4066.77 2033.83 4066.77 c
2028.43 4066.77 2024.06 4071.15 2024.06 4076.55 c
2024.06 4081.95 2028.43 4086.32 2033.83 4086.32 c
2039.23 4086.32 2043.61 4081.95 2043.61 4076.55 c
f
n
2090.86 4057.0 m
2090.86 4051.6 2086.48 4047.23 2081.08 4047.23 c
2075.68 4047.23 2071.3 4051.6 2071.3 4057.0 c
2071.3 4062.4 2075.68 4066.77 2081.08 4066.77 c
2086.48 4066.77 2090.86 4062.4 2090.86 4057.0 c
f
n
2138.91 4036.64 m
2138.91 4031.24 2134.54 4026.86 2129.14 4026.86 c
2123.74 4026.86 2119.36 4031.24 2119.36 4036.64 c
2119.36 4042.04 2123.74 4046.41 2129.14 4046.41 c
2134.54 4046.41 2138.91 4042.04 2138.91 4036.64 c
f
n
1408.23 4295.68 m
1408.23 4290.28 1403.85 4285.9 1398.45 4285.9 c
1393.05 4285.9 1388.68 4290.28 1388.68 4295.68 c
1388.68 4301.07 1393.05 4305.45 1398.45 4305.45 c
1403.85 4305.45 1408.23 4301.07 1408.23 4295.68 c
f
n
1457.92 4281.01 m
1457.92 4275.61 1453.54 4271.24 1448.14 4271.24 c
1442.74 4271.24 1438.37 4275.61 1438.37 4281.01 c
1438.37 4286.41 1442.74 4290.79 1448.14 4290.79 c
1453.54 4290.79 1457.92 4286.41 1457.92 4281.01 c
f
n
1507.61 4265.54 m
1507.61 4260.14 1503.23 4255.76 1497.83 4255.76 c
1492.43 4255.76 1488.05 4260.14 1488.05 4265.54 c
1488.05 4270.93 1492.43 4275.31 1497.83 4275.31 c
1503.23 4275.31 1507.61 4270.93 1507.61 4265.54 c
f
n
1557.3 4250.87 m
1557.3 4245.47 1552.92 4241.1 1547.52 4241.1 c
1542.12 4241.1 1537.75 4245.47 1537.75 4250.87 c
1537.75 4256.27 1542.12 4260.65 1547.52 4260.65 c
1552.92 4260.65 1557.3 4256.27 1557.3 4250.87 c
f
n
1606.17 4235.39 m
1606.17 4230.0 1601.8 4225.62 1596.4 4225.62 c
1591.0 4225.62 1586.62 4230.0 1586.62 4235.39 c
1586.62 4240.79 1591.0 4245.17 1596.4 4245.17 c
1601.8 4245.17 1606.17 4240.79 1606.17 4235.39 c
f
n
1655.86 4220.73 m
1655.86 4215.34 1651.48 4210.96 1646.09 4210.96 c
1640.69 4210.96 1636.31 4215.34 1636.31 4220.73 c
1636.31 4226.13 1640.69 4230.51 1646.09 4230.51 c
1651.48 4230.51 1655.86 4226.13 1655.86 4220.73 c
f
n
1705.55 4205.25 m
1705.55 4199.86 1701.18 4195.48 1695.78 4195.48 c
1690.38 4195.48 1686.0 4199.86 1686.0 4205.25 c
1686.0 4210.65 1690.38 4215.03 1695.78 4215.03 c
1701.18 4215.03 1705.55 4210.65 1705.55 4205.25 c
f
n
1755.24 4190.59 m
1755.24 4185.2 1750.87 4180.82 1745.47 4180.82 c
1740.07 4180.82 1735.69 4185.2 1735.69 4190.59 c
1735.69 4195.99 1740.07 4200.37 1745.47 4200.37 c
1750.87 4200.37 1755.24 4195.99 1755.24 4190.59 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1853.81 4160.45 m
1853.81 4155.05 1849.43 4150.68 1844.03 4150.68 c
1838.63 4150.68 1834.26 4155.05 1834.26 4160.45 c
1834.26 4165.85 1838.63 4170.23 1844.03 4170.23 c
1849.43 4170.23 1853.81 4165.85 1853.81 4160.45 c
f
n
1903.5 4145.79 m
1903.5 4140.39 1899.12 4136.02 1893.72 4136.02 c
1888.32 4136.02 1883.95 4140.39 1883.95 4145.79 c
1883.95 4151.19 1888.32 4155.57 1893.72 4155.57 c
1899.12 4155.57 1903.5 4151.19 1903.5 4145.79 c
f
n
1953.19 4130.31 m
1953.19 4124.91 1948.81 4120.54 1943.41 4120.54 c
1938.02 4120.54 1933.64 4124.91 1933.64 4130.31 c
1933.64 4135.71 1938.02 4140.09 1943.41 4140.09 c
1948.81 4140.09 1953.19 4135.71 1953.19 4130.31 c
f
n
2002.88 4115.65 m
2002.88 4110.25 1998.5 4105.88 1993.1 4105.88 c
1987.7 4105.88 1983.33 4110.25 1983.33 4115.65 c
1983.33 4121.05 1987.7 4125.43 1993.1 4125.43 c
1998.5 4125.43 2002.88 4121.05 2002.88 4115.65 c
f
n
2051.75 4100.17 m
2051.75 4094.77 2047.38 4090.4 2041.98 4090.4 c
2036.58 4090.4 2032.2 4094.77 2032.2 4100.17 c
2032.2 4105.57 2036.58 4109.95 2041.98 4109.95 c
2047.38 4109.95 2051.75 4105.57 2051.75 4100.17 c
f
n
2101.45 4085.51 m
2101.45 4080.11 2097.07 4075.73 2091.67 4075.73 c
2086.27 4075.73 2081.89 4080.11 2081.89 4085.51 c
2081.89 4090.91 2086.27 4095.29 2091.67 4095.29 c
2097.07 4095.29 2101.45 4090.91 2101.45 4085.51 c
f
n
2151.13 4070.04 m
2151.13 4064.64 2146.76 4060.26 2141.36 4060.26 c
2135.96 4060.26 2131.58 4064.64 2131.58 4070.04 c
2131.58 4075.43 2135.96 4079.81 2141.36 4079.81 c
2146.76 4079.81 2151.13 4075.43 2151.13 4070.04 c
f
n
1398.45 4256.57 m
1398.45 4251.18 1394.07 4246.8 1388.68 4246.8 c
1383.28 4246.8 1378.9 4251.18 1378.9 4256.57 c
1378.9 4261.97 1383.28 4266.35 1388.68 4266.35 c
1394.07 4266.35 1398.45 4261.97 1398.45 4256.57 c
f
n
1449.77 4245.98 m
1449.77 4240.59 1445.39 4236.21 1440.0 4236.21 c
1434.6 4236.21 1430.22 4240.59 1430.22 4245.98 c
1430.22 4251.38 1434.6 4255.76 1440.0 4255.76 c
1445.39 4255.76 1449.77 4251.38 1449.77 4245.98 c
f
n
1500.27 4236.21 m
1500.27 4230.81 1495.9 4226.43 1490.5 4226.43 c
1485.1 4226.43 1480.73 4230.81 1480.73 4236.21 c
1480.73 4241.61 1485.1 4245.98 1490.5 4245.98 c
1495.9 4245.98 1500.27 4241.61 1500.27 4236.21 c
f
n
1550.78 4225.62 m
1550.78 4220.22 1546.4 4215.84 1541.0 4215.84 c
1535.61 4215.84 1531.23 4220.22 1531.23 4225.62 c
1531.23 4231.02 1535.61 4235.39 1541.0 4235.39 c
1546.4 4235.39 1550.78 4231.02 1550.78 4225.62 c
f
n
1601.29 4215.84 m
1601.29 4210.45 1596.91 4206.07 1591.51 4206.07 c
1586.11 4206.07 1581.73 4210.45 1581.73 4215.84 c
1581.73 4221.24 1586.11 4225.62 1591.51 4225.62 c
1596.91 4225.62 1601.29 4221.24 1601.29 4215.84 c
f
n
1652.61 4206.07 m
1652.61 4200.67 1648.23 4196.3 1642.83 4196.3 c
1637.43 4196.3 1633.05 4200.67 1633.05 4206.07 c
1633.05 4211.47 1637.43 4215.84 1642.83 4215.84 c
1648.23 4215.84 1652.61 4211.47 1652.61 4206.07 c
f
n
1703.11 4195.48 m
1703.11 4190.08 1698.73 4185.71 1693.33 4185.71 c
1687.93 4185.71 1683.56 4190.08 1683.56 4195.48 c
1683.56 4200.88 1687.93 4205.25 1693.33 4205.25 c
1698.73 4205.25 1703.11 4200.88 1703.11 4195.48 c
f
n
1753.61 4185.71 m
1753.61 4180.31 1749.24 4175.93 1743.84 4175.93 c
1738.44 4175.93 1734.06 4180.31 1734.06 4185.71 c
1734.06 4191.11 1738.44 4195.48 1743.84 4195.48 c
1749.24 4195.48 1753.61 4191.11 1753.61 4185.71 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1855.44 4165.34 m
1855.44 4159.94 1851.06 4155.57 1845.66 4155.57 c
1840.26 4155.57 1835.89 4159.94 1835.89 4165.34 c
1835.89 4170.74 1840.26 4175.12 1845.66 4175.12 c
1851.06 4175.12 1855.44 4170.74 1855.44 4165.34 c
f
n
1905.94 4155.57 m
1905.94 4150.17 1901.57 4145.79 1896.17 4145.79 c
1890.77 4145.79 1886.39 4150.17 1886.39 4155.57 c
1886.39 4160.96 1890.77 4165.34 1896.17 4165.34 c
1901.57 4165.34 1905.94 4160.96 1905.94 4155.57 c
f
n
1956.45 4144.98 m
1956.45 4139.58 1952.07 4135.2 1946.67 4135.2 c
1941.27 4135.2 1936.89 4139.58 1936.89 4144.98 c
1936.89 4150.38 1941.27 4154.75 1946.67 4154.75 c
1952.07 4154.75 1956.45 4150.38 1956.45 4144.98 c
f
n
2007.77 4135.2 m
2007.77 4129.8 2003.39 4125.43 1997.99 4125.43 c
1992.59 4125.43 1988.21 4129.8 1988.21 4135.2 c
1988.21 4140.6 1992.59 4144.98 1997.99 4144.98 c
2003.39 4144.98 2007.77 4140.6 2007.77 4135.2 c
f
n
2058.27 4125.43 m
2058.27 4120.03 2053.89 4115.65 2048.5 4115.65 c
2043.1 4115.65 2038.72 4120.03 2038.72 4125.43 c
2038.72 4130.82 2043.1 4135.2 2048.5 4135.2 c
2053.89 4135.2 2058.27 4130.82 2058.27 4125.43 c
f
n
2108.77 4114.84 m
2108.77 4109.44 2104.4 4105.06 2099.0 4105.06 c
2093.6 4105.06 2089.23 4109.44 2089.23 4114.84 c
2089.23 4120.23 2093.6 4124.61 2099.0 4124.61 c
2104.4 4124.61 2108.77 4120.23 2108.77 4114.84 c
f
n
2159.28 4105.06 m
2159.28 4099.66 2154.9 4095.29 2149.5 4095.29 c
2144.11 4095.29 2139.73 4099.66 2139.73 4105.06 c
2139.73 4110.46 2144.11 4114.84 2149.5 4114.84 c
2154.9 4114.84 2159.28 4110.46 2159.28 4105.06 c
f
n
1392.75 4215.84 m
1392.75 4210.45 1388.37 4206.07 1382.97 4206.07 c
1377.57 4206.07 1373.2 4210.45 1373.2 4215.84 c
1373.2 4221.24 1377.57 4225.62 1382.97 4225.62 c
1388.37 4225.62 1392.75 4221.24 1392.75 4215.84 c
f
n
1444.07 4210.96 m
1444.07 4205.56 1439.69 4201.18 1434.29 4201.18 c
1428.89 4201.18 1424.52 4205.56 1424.52 4210.96 c
1424.52 4216.36 1428.89 4220.73 1434.29 4220.73 c
1439.69 4220.73 1444.07 4216.36 1444.07 4210.96 c
f
n
1495.39 4206.07 m
1495.39 4200.67 1491.01 4196.3 1485.61 4196.3 c
1480.21 4196.3 1475.84 4200.67 1475.84 4206.07 c
1475.84 4211.47 1480.21 4215.84 1485.61 4215.84 c
1491.01 4215.84 1495.39 4211.47 1495.39 4206.07 c
f
n
1547.52 4201.18 m
1547.52 4195.79 1543.14 4191.41 1537.75 4191.41 c
1532.35 4191.41 1527.97 4195.79 1527.97 4201.18 c
1527.97 4206.58 1532.35 4210.96 1537.75 4210.96 c
1543.14 4210.96 1547.52 4206.58 1547.52 4201.18 c
f
n
1598.84 4195.48 m
1598.84 4190.08 1594.46 4185.71 1589.07 4185.71 c
1583.67 4185.71 1579.29 4190.08 1579.29 4195.48 c
1579.29 4200.88 1583.67 4205.25 1589.07 4205.25 c
1594.46 4205.25 1598.84 4200.88 1598.84 4195.48 c
f
n
1650.16 4190.59 m
1650.16 4185.2 1645.79 4180.82 1640.39 4180.82 c
1634.99 4180.82 1630.61 4185.2 1630.61 4190.59 c
1630.61 4195.99 1634.99 4200.37 1640.39 4200.37 c
1645.79 4200.37 1650.16 4195.99 1650.16 4190.59 c
f
n
1701.48 4185.71 m
1701.48 4180.31 1697.1 4175.93 1691.7 4175.93 c
1686.3 4175.93 1681.93 4180.31 1681.93 4185.71 c
1681.93 4191.11 1686.3 4195.48 1691.7 4195.48 c
1697.1 4195.48 1701.48 4191.11 1701.48 4185.71 c
f
n
1752.8 4180.82 m
1752.8 4175.42 1748.42 4171.04 1743.02 4171.04 c
1737.62 4171.04 1733.25 4175.42 1733.25 4180.82 c
1733.25 4186.21 1737.62 4190.59 1743.02 4190.59 c
1748.42 4190.59 1752.8 4186.21 1752.8 4180.82 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1856.25 4170.23 m
1856.25 4164.83 1851.88 4160.45 1846.48 4160.45 c
1841.08 4160.45 1836.7 4164.83 1836.7 4170.23 c
1836.7 4175.62 1841.08 4180.0 1846.48 4180.0 c
1851.88 4180.0 1856.25 4175.62 1856.25 4170.23 c
f
n
1907.57 4165.34 m
1907.57 4159.94 1903.2 4155.57 1897.8 4155.57 c
1892.4 4155.57 1888.02 4159.94 1888.02 4165.34 c
1888.02 4170.74 1892.4 4175.12 1897.8 4175.12 c
1903.2 4175.12 1907.57 4170.74 1907.57 4165.34 c
f
n
1958.89 4160.45 m
1958.89 4155.05 1954.51 4150.68 1949.11 4150.68 c
1943.71 4150.68 1939.34 4155.05 1939.34 4160.45 c
1939.34 4165.85 1943.71 4170.23 1949.11 4170.23 c
1954.51 4170.23 1958.89 4165.85 1958.89 4160.45 c
f
n
2010.21 4155.57 m
2010.21 4150.17 2005.83 4145.79 2000.43 4145.79 c
1995.04 4145.79 1990.66 4150.17 1990.66 4155.57 c
1990.66 4160.96 1995.04 4165.34 2000.43 4165.34 c
2005.83 4165.34 2010.21 4160.96 2010.21 4155.57 c
f
n
2061.53 4149.86 m
2061.53 4144.46 2057.15 4140.09 2051.75 4140.09 c
2046.36 4140.09 2041.98 4144.46 2041.98 4149.86 c
2041.98 4155.26 2046.36 4159.64 2051.75 4159.64 c
2057.15 4159.64 2061.53 4155.26 2061.53 4149.86 c
f
n
2113.66 4144.98 m
2113.66 4139.58 2109.29 4135.2 2103.89 4135.2 c
2098.49 4135.2 2094.11 4139.58 2094.11 4144.98 c
2094.11 4150.38 2098.49 4154.75 2103.89 4154.75 c
2109.29 4154.75 2113.66 4150.38 2113.66 4144.98 c
f
n
2164.98 4140.09 m
2164.98 4134.69 2160.61 4130.31 2155.21 4130.31 c
2149.81 4130.31 2145.43 4134.69 2145.43 4140.09 c
2145.43 4145.49 2149.81 4149.86 2155.21 4149.86 c
2160.61 4149.86 2164.98 4145.49 2164.98 4140.09 c
f
n
1390.3 4175.93 m
1390.3 4170.53 1385.93 4166.16 1380.53 4166.16 c
1375.13 4166.16 1370.75 4170.53 1370.75 4175.93 c
1370.75 4181.33 1375.13 4185.71 1380.53 4185.71 c
1385.93 4185.71 1390.3 4181.33 1390.3 4175.93 c
f
n
1442.44 4175.93 m
1442.44 4170.53 1438.06 4166.16 1432.66 4166.16 c
1427.27 4166.16 1422.89 4170.53 1422.89 4175.93 c
1422.89 4181.33 1427.27 4185.71 1432.66 4185.71 c
1438.06 4185.71 1442.44 4181.33 1442.44 4175.93 c
f
n
1493.76 4175.93 m
1493.76 4170.53 1489.38 4166.16 1483.98 4166.16 c
1478.59 4166.16 1474.21 4170.53 1474.21 4175.93 c
1474.21 4181.33 1478.59 4185.71 1483.98 4185.71 c
1489.38 4185.71 1493.76 4181.33 1493.76 4175.93 c
f
n
1545.89 4175.93 m
1545.89 4170.53 1541.52 4166.16 1536.12 4166.16 c
1530.72 4166.16 1526.34 4170.53 1526.34 4175.93 c
1526.34 4181.33 1530.72 4185.71 1536.12 4185.71 c
1541.52 4185.71 1545.89 4181.33 1545.89 4175.93 c
f
n
1598.03 4175.93 m
1598.03 4170.53 1593.65 4166.16 1588.25 4166.16 c
1582.85 4166.16 1578.48 4170.53 1578.48 4175.93 c
1578.48 4181.33 1582.85 4185.71 1588.25 4185.71 c
1593.65 4185.71 1598.03 4181.33 1598.03 4175.93 c
f
n
1649.34 4175.93 m
1649.34 4170.53 1644.97 4166.16 1639.57 4166.16 c
1634.17 4166.16 1629.8 4170.53 1629.8 4175.93 c
1629.8 4181.33 1634.17 4185.71 1639.57 4185.71 c
1644.97 4185.71 1649.34 4181.33 1649.34 4175.93 c
f
n
1701.48 4175.93 m
1701.48 4170.53 1697.1 4166.16 1691.7 4166.16 c
1686.3 4166.16 1681.93 4170.53 1681.93 4175.93 c
1681.93 4181.33 1686.3 4185.71 1691.7 4185.71 c
1697.1 4185.71 1701.48 4181.33 1701.48 4175.93 c
f
n
1752.8 4175.93 m
1752.8 4170.53 1748.42 4166.16 1743.02 4166.16 c
1737.62 4166.16 1733.25 4170.53 1733.25 4175.93 c
1733.25 4181.33 1737.62 4185.71 1743.02 4185.71 c
1748.42 4185.71 1752.8 4181.33 1752.8 4175.93 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1856.25 4175.93 m
1856.25 4170.53 1851.88 4166.16 1846.48 4166.16 c
1841.08 4166.16 1836.7 4170.53 1836.7 4175.93 c
1836.7 4181.33 1841.08 4185.71 1846.48 4185.71 c
1851.88 4185.71 1856.25 4181.33 1856.25 4175.93 c
f
n
1908.39 4175.93 m
1908.39 4170.53 1904.01 4166.16 1898.61 4166.16 c
1893.21 4166.16 1888.84 4170.53 1888.84 4175.93 c
1888.84 4181.33 1893.21 4185.71 1898.61 4185.71 c
1904.01 4185.71 1908.39 4181.33 1908.39 4175.93 c
f
n
1959.7 4175.93 m
1959.7 4170.53 1955.33 4166.16 1949.93 4166.16 c
1944.53 4166.16 1940.16 4170.53 1940.16 4175.93 c
1940.16 4181.33 1944.53 4185.71 1949.93 4185.71 c
1955.33 4185.71 1959.7 4181.33 1959.7 4175.93 c
f
n
2011.84 4175.93 m
2011.84 4170.53 2007.46 4166.16 2002.06 4166.16 c
1996.66 4166.16 1992.29 4170.53 1992.29 4175.93 c
1992.29 4181.33 1996.66 4185.71 2002.06 4185.71 c
2007.46 4185.71 2011.84 4181.33 2011.84 4175.93 c
f
n
2063.16 4175.93 m
2063.16 4170.53 2058.78 4166.16 2053.38 4166.16 c
2047.98 4166.16 2043.61 4170.53 2043.61 4175.93 c
2043.61 4181.33 2047.98 4185.71 2053.38 4185.71 c
2058.78 4185.71 2063.16 4181.33 2063.16 4175.93 c
f
n
2115.29 4175.93 m
2115.29 4170.53 2110.91 4166.16 2105.52 4166.16 c
2100.12 4166.16 2095.74 4170.53 2095.74 4175.93 c
2095.74 4181.33 2100.12 4185.71 2105.52 4185.71 c
2110.91 4185.71 2115.29 4181.33 2115.29 4175.93 c
f
n
2166.61 4175.93 m
2166.61 4170.53 2162.23 4166.16 2156.84 4166.16 c
2151.44 4166.16 2147.06 4170.53 2147.06 4175.93 c
2147.06 4181.33 2151.44 4185.71 2156.84 4185.71 c
2162.23 4185.71 2166.61 4181.33 2166.61 4175.93 c
f
n
1392.75 4135.2 m
1392.75 4129.8 1388.37 4125.43 1382.97 4125.43 c
1377.57 4125.43 1373.2 4129.8 1373.2 4135.2 c
1373.2 4140.6 1377.57 4144.98 1382.97 4144.98 c
1388.37 4144.98 1392.75 4140.6 1392.75 4135.2 c
f
n
1444.07 4140.09 m
1444.07 4134.69 1439.69 4130.31 1434.29 4130.31 c
1428.89 4130.31 1424.52 4134.69 1424.52 4140.09 c
1424.52 4145.49 1428.89 4149.86 1434.29 4149.86 c
1439.69 4149.86 1444.07 4145.49 1444.07 4140.09 c
f
n
1495.39 4144.98 m
1495.39 4139.58 1491.01 4135.2 1485.61 4135.2 c
1480.21 4135.2 1475.84 4139.58 1475.84 4144.98 c
1475.84 4150.38 1480.21 4154.75 1485.61 4154.75 c
1491.01 4154.75 1495.39 4150.38 1495.39 4144.98 c
f
n
1547.52 4149.86 m
1547.52 4144.46 1543.14 4140.09 1537.75 4140.09 c
1532.35 4140.09 1527.97 4144.46 1527.97 4149.86 c
1527.97 4155.26 1532.35 4159.64 1537.75 4159.64 c
1543.14 4159.64 1547.52 4155.26 1547.52 4149.86 c
f
n
1598.84 4155.57 m
1598.84 4150.17 1594.46 4145.79 1589.07 4145.79 c
1583.67 4145.79 1579.29 4150.17 1579.29 4155.57 c
1579.29 4160.96 1583.67 4165.34 1589.07 4165.34 c
1594.46 4165.34 1598.84 4160.96 1598.84 4155.57 c
f
n
1650.16 4160.45 m
1650.16 4155.05 1645.79 4150.68 1640.39 4150.68 c
1634.99 4150.68 1630.61 4155.05 1630.61 4160.45 c
1630.61 4165.85 1634.99 4170.23 1640.39 4170.23 c
1645.79 4170.23 1650.16 4165.85 1650.16 4160.45 c
f
n
1701.48 4165.34 m
1701.48 4159.94 1697.1 4155.57 1691.7 4155.57 c
1686.3 4155.57 1681.93 4159.94 1681.93 4165.34 c
1681.93 4170.74 1686.3 4175.12 1691.7 4175.12 c
1697.1 4175.12 1701.48 4170.74 1701.48 4165.34 c
f
n
1752.8 4170.23 m
1752.8 4164.83 1748.42 4160.45 1743.02 4160.45 c
1737.62 4160.45 1733.25 4164.83 1733.25 4170.23 c
1733.25 4175.62 1737.62 4180.0 1743.02 4180.0 c
1748.42 4180.0 1752.8 4175.62 1752.8 4170.23 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1856.25 4180.82 m
1856.25 4175.42 1851.88 4171.04 1846.48 4171.04 c
1841.08 4171.04 1836.7 4175.42 1836.7 4180.82 c
1836.7 4186.21 1841.08 4190.59 1846.48 4190.59 c
1851.88 4190.59 1856.25 4186.21 1856.25 4180.82 c
f
n
1907.57 4185.71 m
1907.57 4180.31 1903.2 4175.93 1897.8 4175.93 c
1892.4 4175.93 1888.02 4180.31 1888.02 4185.71 c
1888.02 4191.11 1892.4 4195.48 1897.8 4195.48 c
1903.2 4195.48 1907.57 4191.11 1907.57 4185.71 c
f
n
1958.89 4190.59 m
1958.89 4185.2 1954.51 4180.82 1949.11 4180.82 c
1943.71 4180.82 1939.34 4185.2 1939.34 4190.59 c
1939.34 4195.99 1943.71 4200.37 1949.11 4200.37 c
1954.51 4200.37 1958.89 4195.99 1958.89 4190.59 c
f
n
2010.21 4195.48 m
2010.21 4190.08 2005.83 4185.71 2000.43 4185.71 c
1995.04 4185.71 1990.66 4190.08 1990.66 4195.48 c
1990.66 4200.88 1995.04 4205.25 2000.43 4205.25 c
2005.83 4205.25 2010.21 4200.88 2010.21 4195.48 c
f
n
2061.53 4201.18 m
2061.53 4195.79 2057.15 4191.41 2051.75 4191.41 c
2046.36 4191.41 2041.98 4195.79 2041.98 4201.18 c
2041.98 4206.58 2046.36 4210.96 2051.75 4210.96 c
2057.15 4210.96 2061.53 4206.58 2061.53 4201.18 c
f
n
2113.66 4206.07 m
2113.66 4200.67 2109.29 4196.3 2103.89 4196.3 c
2098.49 4196.3 2094.11 4200.67 2094.11 4206.07 c
2094.11 4211.47 2098.49 4215.84 2103.89 4215.84 c
2109.29 4215.84 2113.66 4211.47 2113.66 4206.07 c
f
n
2164.98 4210.96 m
2164.98 4205.56 2160.61 4201.18 2155.21 4201.18 c
2149.81 4201.18 2145.43 4205.56 2145.43 4210.96 c
2145.43 4216.36 2149.81 4220.73 2155.21 4220.73 c
2160.61 4220.73 2164.98 4216.36 2164.98 4210.96 c
f
n
1398.45 4094.47 m
1398.45 4089.07 1394.07 4084.7 1388.68 4084.7 c
1383.28 4084.7 1378.9 4089.07 1378.9 4094.47 c
1378.9 4099.87 1383.28 4104.25 1388.68 4104.25 c
1394.07 4104.25 1398.45 4099.87 1398.45 4094.47 c
f
n
1449.77 4105.06 m
1449.77 4099.66 1445.39 4095.29 1440.0 4095.29 c
1434.6 4095.29 1430.22 4099.66 1430.22 4105.06 c
1430.22 4110.46 1434.6 4114.84 1440.0 4114.84 c
1445.39 4114.84 1449.77 4110.46 1449.77 4105.06 c
f
n
1500.27 4114.84 m
1500.27 4109.44 1495.9 4105.06 1490.5 4105.06 c
1485.1 4105.06 1480.73 4109.44 1480.73 4114.84 c
1480.73 4120.23 1485.1 4124.61 1490.5 4124.61 c
1495.9 4124.61 1500.27 4120.23 1500.27 4114.84 c
f
n
1550.78 4125.43 m
1550.78 4120.03 1546.4 4115.65 1541.0 4115.65 c
1535.61 4115.65 1531.23 4120.03 1531.23 4125.43 c
1531.23 4130.82 1535.61 4135.2 1541.0 4135.2 c
1546.4 4135.2 1550.78 4130.82 1550.78 4125.43 c
f
n
1601.29 4135.2 m
1601.29 4129.8 1596.91 4125.43 1591.51 4125.43 c
1586.11 4125.43 1581.73 4129.8 1581.73 4135.2 c
1581.73 4140.6 1586.11 4144.98 1591.51 4144.98 c
1596.91 4144.98 1601.29 4140.6 1601.29 4135.2 c
f
n
1652.61 4144.98 m
1652.61 4139.58 1648.23 4135.2 1642.83 4135.2 c
1637.43 4135.2 1633.05 4139.58 1633.05 4144.98 c
1633.05 4150.38 1637.43 4154.75 1642.83 4154.75 c
1648.23 4154.75 1652.61 4150.38 1652.61 4144.98 c
f
n
1703.11 4155.57 m
1703.11 4150.17 1698.73 4145.79 1693.33 4145.79 c
1687.93 4145.79 1683.56 4150.17 1683.56 4155.57 c
1683.56 4160.96 1687.93 4165.34 1693.33 4165.34 c
1698.73 4165.34 1703.11 4160.96 1703.11 4155.57 c
f
n
1753.61 4165.34 m
1753.61 4159.94 1749.24 4155.57 1743.84 4155.57 c
1738.44 4155.57 1734.06 4159.94 1734.06 4165.34 c
1734.06 4170.74 1738.44 4175.12 1743.84 4175.12 c
1749.24 4175.12 1753.61 4170.74 1753.61 4165.34 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1855.44 4185.71 m
1855.44 4180.31 1851.06 4175.93 1845.66 4175.93 c
1840.26 4175.93 1835.89 4180.31 1835.89 4185.71 c
1835.89 4191.11 1840.26 4195.48 1845.66 4195.48 c
1851.06 4195.48 1855.44 4191.11 1855.44 4185.71 c
f
n
1905.94 4195.48 m
1905.94 4190.08 1901.57 4185.71 1896.17 4185.71 c
1890.77 4185.71 1886.39 4190.08 1886.39 4195.48 c
1886.39 4200.88 1890.77 4205.25 1896.17 4205.25 c
1901.57 4205.25 1905.94 4200.88 1905.94 4195.48 c
f
n
1956.45 4206.07 m
1956.45 4200.67 1952.07 4196.3 1946.67 4196.3 c
1941.27 4196.3 1936.89 4200.67 1936.89 4206.07 c
1936.89 4211.47 1941.27 4215.84 1946.67 4215.84 c
1952.07 4215.84 1956.45 4211.47 1956.45 4206.07 c
f
n
2007.77 4215.84 m
2007.77 4210.45 2003.39 4206.07 1997.99 4206.07 c
1992.59 4206.07 1988.21 4210.45 1988.21 4215.84 c
1988.21 4221.24 1992.59 4225.62 1997.99 4225.62 c
2003.39 4225.62 2007.77 4221.24 2007.77 4215.84 c
f
n
2058.27 4225.62 m
2058.27 4220.22 2053.89 4215.84 2048.5 4215.84 c
2043.1 4215.84 2038.72 4220.22 2038.72 4225.62 c
2038.72 4231.02 2043.1 4235.39 2048.5 4235.39 c
2053.89 4235.39 2058.27 4231.02 2058.27 4225.62 c
f
n
2108.77 4236.21 m
2108.77 4230.81 2104.4 4226.43 2099.0 4226.43 c
2093.6 4226.43 2089.23 4230.81 2089.23 4236.21 c
2089.23 4241.61 2093.6 4245.98 2099.0 4245.98 c
2104.4 4245.98 2108.77 4241.61 2108.77 4236.21 c
f
n
2159.28 4245.98 m
2159.28 4240.59 2154.9 4236.21 2149.5 4236.21 c
2144.11 4236.21 2139.73 4240.59 2139.73 4245.98 c
2139.73 4251.38 2144.11 4255.76 2149.5 4255.76 c
2154.9 4255.76 2159.28 4251.38 2159.28 4245.98 c
f
n
1408.23 4055.37 m
1408.23 4049.97 1403.85 4045.59 1398.45 4045.59 c
1393.05 4045.59 1388.68 4049.97 1388.68 4055.37 c
1388.68 4060.77 1393.05 4065.14 1398.45 4065.14 c
1403.85 4065.14 1408.23 4060.77 1408.23 4055.37 c
f
n
1457.92 4070.04 m
1457.92 4064.64 1453.54 4060.26 1448.14 4060.26 c
1442.74 4060.26 1438.37 4064.64 1438.37 4070.04 c
1438.37 4075.43 1442.74 4079.81 1448.14 4079.81 c
1453.54 4079.81 1457.92 4075.43 1457.92 4070.04 c
f
n
1507.61 4085.51 m
1507.61 4080.11 1503.23 4075.73 1497.83 4075.73 c
1492.43 4075.73 1488.05 4080.11 1488.05 4085.51 c
1488.05 4090.91 1492.43 4095.29 1497.83 4095.29 c
1503.23 4095.29 1507.61 4090.91 1507.61 4085.51 c
f
n
1557.3 4100.17 m
1557.3 4094.77 1552.92 4090.4 1547.52 4090.4 c
1542.12 4090.4 1537.75 4094.77 1537.75 4100.17 c
1537.75 4105.57 1542.12 4109.95 1547.52 4109.95 c
1552.92 4109.95 1557.3 4105.57 1557.3 4100.17 c
f
n
1606.17 4115.65 m
1606.17 4110.25 1601.8 4105.88 1596.4 4105.88 c
1591.0 4105.88 1586.62 4110.25 1586.62 4115.65 c
1586.62 4121.05 1591.0 4125.43 1596.4 4125.43 c
1601.8 4125.43 1606.17 4121.05 1606.17 4115.65 c
f
n
1655.86 4130.31 m
1655.86 4124.91 1651.48 4120.54 1646.09 4120.54 c
1640.69 4120.54 1636.31 4124.91 1636.31 4130.31 c
1636.31 4135.71 1640.69 4140.09 1646.09 4140.09 c
1651.48 4140.09 1655.86 4135.71 1655.86 4130.31 c
f
n
1705.55 4145.79 m
1705.55 4140.39 1701.18 4136.02 1695.78 4136.02 c
1690.38 4136.02 1686.0 4140.39 1686.0 4145.79 c
1686.0 4151.19 1690.38 4155.57 1695.78 4155.57 c
1701.18 4155.57 1705.55 4151.19 1705.55 4145.79 c
f
n
1755.24 4160.45 m
1755.24 4155.05 1750.87 4150.68 1745.47 4150.68 c
1740.07 4150.68 1735.69 4155.05 1735.69 4160.45 c
1735.69 4165.85 1740.07 4170.23 1745.47 4170.23 c
1750.87 4170.23 1755.24 4165.85 1755.24 4160.45 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1853.81 4190.59 m
1853.81 4185.2 1849.43 4180.82 1844.03 4180.82 c
1838.63 4180.82 1834.26 4185.2 1834.26 4190.59 c
1834.26 4195.99 1838.63 4200.37 1844.03 4200.37 c
1849.43 4200.37 1853.81 4195.99 1853.81 4190.59 c
f
n
1903.5 4205.25 m
1903.5 4199.86 1899.12 4195.48 1893.72 4195.48 c
1888.32 4195.48 1883.95 4199.86 1883.95 4205.25 c
1883.95 4210.65 1888.32 4215.03 1893.72 4215.03 c
1899.12 4215.03 1903.5 4210.65 1903.5 4205.25 c
f
n
1953.19 4220.73 m
1953.19 4215.34 1948.81 4210.96 1943.41 4210.96 c
1938.02 4210.96 1933.64 4215.34 1933.64 4220.73 c
1933.64 4226.13 1938.02 4230.51 1943.41 4230.51 c
1948.81 4230.51 1953.19 4226.13 1953.19 4220.73 c
f
n
2002.88 4235.39 m
2002.88 4230.0 1998.5 4225.62 1993.1 4225.62 c
1987.7 4225.62 1983.33 4230.0 1983.33 4235.39 c
1983.33 4240.79 1987.7 4245.17 1993.1 4245.17 c
1998.5 4245.17 2002.88 4240.79 2002.88 4235.39 c
f
n
2051.75 4250.87 m
2051.75 4245.47 2047.38 4241.1 2041.98 4241.1 c
2036.58 4241.1 2032.2 4245.47 2032.2 4250.87 c
2032.2 4256.27 2036.58 4260.65 2041.98 4260.65 c
2047.38 4260.65 2051.75 4256.27 2051.75 4250.87 c
f
n
2101.45 4265.54 m
2101.45 4260.14 2097.07 4255.76 2091.67 4255.76 c
2086.27 4255.76 2081.89 4260.14 2081.89 4265.54 c
2081.89 4270.93 2086.27 4275.31 2091.67 4275.31 c
2097.07 4275.31 2101.45 4270.93 2101.45 4265.54 c
f
n
2151.13 4281.01 m
2151.13 4275.61 2146.76 4271.24 2141.36 4271.24 c
2135.96 4271.24 2131.58 4275.61 2131.58 4281.01 c
2131.58 4286.41 2135.96 4290.79 2141.36 4290.79 c
2146.76 4290.79 2151.13 4286.41 2151.13 4281.01 c
f
n
1422.07 4017.09 m
1422.07 4011.69 1417.7 4007.31 1412.3 4007.31 c
1406.9 4007.31 1402.52 4011.69 1402.52 4017.09 c
1402.52 4022.48 1406.9 4026.86 1412.3 4026.86 c
1417.7 4026.86 1422.07 4022.48 1422.07 4017.09 c
f
n
1470.14 4036.64 m
1470.14 4031.24 1465.76 4026.86 1460.36 4026.86 c
1454.96 4026.86 1450.59 4031.24 1450.59 4036.64 c
1450.59 4042.04 1454.96 4046.41 1460.36 4046.41 c
1465.76 4046.41 1470.14 4042.04 1470.14 4036.64 c
f
n
1518.2 4057.0 m
1518.2 4051.6 1513.82 4047.23 1508.42 4047.23 c
1503.02 4047.23 1498.64 4051.6 1498.64 4057.0 c
1498.64 4062.4 1503.02 4066.77 1508.42 4066.77 c
1513.82 4066.77 1518.2 4062.4 1518.2 4057.0 c
f
n
1565.44 4076.55 m
1565.44 4071.15 1561.07 4066.77 1555.67 4066.77 c
1550.27 4066.77 1545.89 4071.15 1545.89 4076.55 c
1545.89 4081.95 1550.27 4086.32 1555.67 4086.32 c
1561.07 4086.32 1565.44 4081.95 1565.44 4076.55 c
f
n
1613.5 4096.1 m
1613.5 4090.7 1609.12 4086.32 1603.73 4086.32 c
1598.33 4086.32 1593.95 4090.7 1593.95 4096.1 c
1593.95 4101.5 1598.33 4105.88 1603.73 4105.88 c
1609.12 4105.88 1613.5 4101.5 1613.5 4096.1 c
f
n
1661.56 4116.46 m
1661.56 4111.07 1657.19 4106.69 1651.79 4106.69 c
1646.39 4106.69 1642.02 4111.07 1642.02 4116.46 c
1642.02 4121.86 1646.39 4126.24 1651.79 4126.24 c
1657.19 4126.24 1661.56 4121.86 1661.56 4116.46 c
f
n
1708.81 4136.02 m
1708.81 4130.62 1704.43 4126.24 1699.04 4126.24 c
1693.64 4126.24 1689.26 4130.62 1689.26 4136.02 c
1689.26 4141.41 1693.64 4145.79 1699.04 4145.79 c
1704.43 4145.79 1708.81 4141.41 1708.81 4136.02 c
f
n
1756.87 4155.57 m
1756.87 4150.17 1752.5 4145.79 1747.1 4145.79 c
1741.7 4145.79 1737.32 4150.17 1737.32 4155.57 c
1737.32 4160.96 1741.7 4165.34 1747.1 4165.34 c
1752.5 4165.34 1756.87 4160.96 1756.87 4155.57 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1852.18 4195.48 m
1852.18 4190.08 1847.8 4185.71 1842.4 4185.71 c
1837.0 4185.71 1832.63 4190.08 1832.63 4195.48 c
1832.63 4200.88 1837.0 4205.25 1842.4 4205.25 c
1847.8 4205.25 1852.18 4200.88 1852.18 4195.48 c
f
n
1900.24 4215.03 m
1900.24 4209.63 1895.86 4205.25 1890.46 4205.25 c
1885.07 4205.25 1880.69 4209.63 1880.69 4215.03 c
1880.69 4220.43 1885.07 4224.8 1890.46 4224.8 c
1895.86 4224.8 1900.24 4220.43 1900.24 4215.03 c
f
n
1947.48 4234.58 m
1947.48 4229.18 1943.11 4224.8 1937.71 4224.8 c
1932.31 4224.8 1927.94 4229.18 1927.94 4234.58 c
1927.94 4239.98 1932.31 4244.36 1937.71 4244.36 c
1943.11 4244.36 1947.48 4239.98 1947.48 4234.58 c
f
n
1995.55 4254.95 m
1995.55 4249.55 1991.17 4245.17 1985.77 4245.17 c
1980.38 4245.17 1976.0 4249.55 1976.0 4254.95 c
1976.0 4260.34 1980.38 4264.72 1985.77 4264.72 c
1991.17 4264.72 1995.55 4260.34 1995.55 4254.95 c
f
n
2043.61 4274.5 m
2043.61 4269.1 2039.23 4264.72 2033.83 4264.72 c
2028.43 4264.72 2024.06 4269.1 2024.06 4274.5 c
2024.06 4279.89 2028.43 4284.27 2033.83 4284.27 c
2039.23 4284.27 2043.61 4279.89 2043.61 4274.5 c
f
n
2090.86 4294.05 m
2090.86 4288.65 2086.48 4284.27 2081.08 4284.27 c
2075.68 4284.27 2071.3 4288.65 2071.3 4294.05 c
2071.3 4299.45 2075.68 4303.82 2081.08 4303.82 c
2086.48 4303.82 2090.86 4299.45 2090.86 4294.05 c
f
n
2138.91 4314.41 m
2138.91 4309.01 2134.54 4304.64 2129.14 4304.64 c
2123.74 4304.64 2119.36 4309.01 2119.36 4314.41 c
2119.36 4319.81 2123.74 4324.19 2129.14 4324.19 c
2134.54 4324.19 2138.91 4319.81 2138.91 4314.41 c
f
n
1439.18 3980.43 m
1439.18 3975.03 1434.8 3970.65 1429.41 3970.65 c
1424.01 3970.65 1419.63 3975.03 1419.63 3980.43 c
1419.63 3985.83 1424.01 3990.2 1429.41 3990.2 c
1434.8 3990.2 1439.18 3985.83 1439.18 3980.43 c
f
n
1484.8 4004.87 m
1484.8 3999.47 1480.42 3995.09 1475.02 3995.09 c
1469.62 3995.09 1465.25 3999.47 1465.25 4004.87 c
1465.25 4010.27 1469.62 4014.64 1475.02 4014.64 c
1480.42 4014.64 1484.8 4010.27 1484.8 4004.87 c
f
n
1530.41 4029.3 m
1530.41 4023.91 1526.04 4019.53 1520.64 4019.53 c
1515.24 4019.53 1510.86 4023.91 1510.86 4029.3 c
1510.86 4034.7 1515.24 4039.08 1520.64 4039.08 c
1526.04 4039.08 1530.41 4034.7 1530.41 4029.3 c
f
n
1576.03 4053.74 m
1576.03 4048.34 1571.66 4043.96 1566.26 4043.96 c
1560.86 4043.96 1556.48 4048.34 1556.48 4053.74 c
1556.48 4059.14 1560.86 4063.52 1566.26 4063.52 c
1571.66 4063.52 1576.03 4059.14 1576.03 4053.74 c
f
n
1621.65 4078.18 m
1621.65 4072.78 1617.27 4068.4 1611.88 4068.4 c
1606.48 4068.4 1602.1 4072.78 1602.1 4078.18 c
1602.1 4083.58 1606.48 4087.95 1611.88 4087.95 c
1617.27 4087.95 1621.65 4083.58 1621.65 4078.18 c
f
n
1667.27 4102.62 m
1667.27 4097.22 1662.89 4092.84 1657.49 4092.84 c
1652.09 4092.84 1647.71 4097.22 1647.71 4102.62 c
1647.71 4108.02 1652.09 4112.39 1657.49 4112.39 c
1662.89 4112.39 1667.27 4108.02 1667.27 4102.62 c
f
n
1712.88 4127.05 m
1712.88 4121.66 1708.51 4117.28 1703.11 4117.28 c
1697.71 4117.28 1693.33 4121.66 1693.33 4127.05 c
1693.33 4132.45 1697.71 4136.83 1703.11 4136.83 c
1708.51 4136.83 1712.88 4132.45 1712.88 4127.05 c
f
n
1758.5 4151.49 m
1758.5 4146.09 1754.12 4141.72 1748.73 4141.72 c
1743.33 4141.72 1738.95 4146.09 1738.95 4151.49 c
1738.95 4156.89 1743.33 4161.27 1748.73 4161.27 c
1754.12 4161.27 1758.5 4156.89 1758.5 4151.49 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1850.55 4199.55 m
1850.55 4194.16 1846.17 4189.78 1840.77 4189.78 c
1835.38 4189.78 1831.0 4194.16 1831.0 4199.55 c
1831.0 4204.95 1835.38 4209.33 1840.77 4209.33 c
1846.17 4209.33 1850.55 4204.95 1850.55 4199.55 c
f
n
1896.17 4223.99 m
1896.17 4218.59 1891.79 4214.21 1886.39 4214.21 c
1880.99 4214.21 1876.62 4218.59 1876.62 4223.99 c
1876.62 4229.39 1880.99 4233.77 1886.39 4233.77 c
1891.79 4233.77 1896.17 4229.39 1896.17 4223.99 c
f
n
1941.79 4248.43 m
1941.79 4243.03 1937.41 4238.65 1932.01 4238.65 c
1926.61 4238.65 1922.23 4243.03 1922.23 4248.43 c
1922.23 4253.83 1926.61 4258.2 1932.01 4258.2 c
1937.41 4258.2 1941.79 4253.83 1941.79 4248.43 c
f
n
1987.4 4272.87 m
1987.4 4267.47 1983.02 4263.09 1977.62 4263.09 c
1972.23 4263.09 1967.85 4267.47 1967.85 4272.87 c
1967.85 4278.27 1972.23 4282.64 1977.62 4282.64 c
1983.02 4282.64 1987.4 4278.27 1987.4 4272.87 c
f
n
2033.02 4297.3 m
2033.02 4291.91 2028.64 4287.53 2023.24 4287.53 c
2017.84 4287.53 2013.47 4291.91 2013.47 4297.3 c
2013.47 4302.7 2017.84 4307.08 2023.24 4307.08 c
2028.64 4307.08 2033.02 4302.7 2033.02 4297.3 c
f
n
2078.64 4321.74 m
2078.64 4316.34 2074.26 4311.97 2068.86 4311.97 c
2063.46 4311.97 2059.09 4316.34 2059.09 4321.74 c
2059.09 4327.14 2063.46 4331.52 2068.86 4331.52 c
2074.26 4331.52 2078.64 4327.14 2078.64 4321.74 c
f
n
2124.25 4346.18 m
2124.25 4340.78 2119.88 4336.41 2114.48 4336.41 c
2109.08 4336.41 2104.7 4340.78 2104.7 4346.18 c
2104.7 4351.58 2109.08 4355.95 2114.48 4355.95 c
2119.88 4355.95 2124.25 4351.58 2124.25 4346.18 c
f
n
1460.36 3945.4 m
1460.36 3940.0 1455.98 3935.62 1450.59 3935.62 c
1445.19 3935.62 1440.81 3940.0 1440.81 3945.4 c
1440.81 3950.8 1445.19 3955.18 1450.59 3955.18 c
1455.98 3955.18 1460.36 3950.8 1460.36 3945.4 c
f
n
1503.54 3974.73 m
1503.54 3969.33 1499.16 3964.95 1493.76 3964.95 c
1488.36 3964.95 1483.98 3969.33 1483.98 3974.73 c
1483.98 3980.12 1488.36 3984.5 1493.76 3984.5 c
1499.16 3984.5 1503.54 3980.12 1503.54 3974.73 c
f
n
1546.71 4003.24 m
1546.71 3997.84 1542.33 3993.46 1536.93 3993.46 c
1531.54 3993.46 1527.16 3997.84 1527.16 4003.24 c
1527.16 4008.64 1531.54 4013.01 1536.93 4013.01 c
1542.33 4013.01 1546.71 4008.64 1546.71 4003.24 c
f
n
1589.88 4031.75 m
1589.88 4026.35 1585.5 4021.97 1580.11 4021.97 c
1574.71 4021.97 1570.33 4026.35 1570.33 4031.75 c
1570.33 4037.14 1574.71 4041.52 1580.11 4041.52 c
1585.5 4041.52 1589.88 4037.14 1589.88 4031.75 c
f
n
1632.24 4060.26 m
1632.24 4054.86 1627.86 4050.48 1622.46 4050.48 c
1617.07 4050.48 1612.69 4054.86 1612.69 4060.26 c
1612.69 4065.66 1617.07 4070.04 1622.46 4070.04 c
1627.86 4070.04 1632.24 4065.66 1632.24 4060.26 c
f
n
1675.41 4089.58 m
1675.41 4084.18 1671.04 4079.81 1665.64 4079.81 c
1660.24 4079.81 1655.86 4084.18 1655.86 4089.58 c
1655.86 4094.98 1660.24 4099.36 1665.64 4099.36 c
1671.04 4099.36 1675.41 4094.98 1675.41 4089.58 c
f
n
1718.59 4118.09 m
1718.59 4112.7 1714.21 4108.32 1708.81 4108.32 c
1703.41 4108.32 1699.04 4112.7 1699.04 4118.09 c
1699.04 4123.49 1703.41 4127.87 1708.81 4127.87 c
1714.21 4127.87 1718.59 4123.49 1718.59 4118.09 c
f
n
1761.76 4146.61 m
1761.76 4141.21 1757.38 4136.83 1751.98 4136.83 c
1746.59 4136.83 1742.21 4141.21 1742.21 4146.61 c
1742.21 4152.0 1746.59 4156.38 1751.98 4156.38 c
1757.38 4156.38 1761.76 4152.0 1761.76 4146.61 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1847.29 4204.44 m
1847.29 4199.04 1842.91 4194.66 1837.52 4194.66 c
1832.12 4194.66 1827.74 4199.04 1827.74 4204.44 c
1827.74 4209.84 1832.12 4214.21 1837.52 4214.21 c
1842.91 4214.21 1847.29 4209.84 1847.29 4204.44 c
f
n
1890.46 4232.95 m
1890.46 4227.55 1886.09 4223.18 1880.69 4223.18 c
1875.29 4223.18 1870.91 4227.55 1870.91 4232.95 c
1870.91 4238.35 1875.29 4242.73 1880.69 4242.73 c
1886.09 4242.73 1890.46 4238.35 1890.46 4232.95 c
f
n
1933.64 4261.46 m
1933.64 4256.06 1929.26 4251.69 1923.86 4251.69 c
1918.46 4251.69 1914.09 4256.06 1914.09 4261.46 c
1914.09 4266.86 1918.46 4271.24 1923.86 4271.24 c
1929.26 4271.24 1933.64 4266.86 1933.64 4261.46 c
f
n
1976.81 4290.79 m
1976.81 4285.39 1972.43 4281.01 1967.04 4281.01 c
1961.64 4281.01 1957.26 4285.39 1957.26 4290.79 c
1957.26 4296.19 1961.64 4300.56 1967.04 4300.56 c
1972.43 4300.56 1976.81 4296.19 1976.81 4290.79 c
f
n
2019.17 4319.3 m
2019.17 4313.9 2014.79 4309.52 2009.39 4309.52 c
2004.0 4309.52 1999.62 4313.9 1999.62 4319.3 c
1999.62 4324.7 2004.0 4329.07 2009.39 4329.07 c
2014.79 4329.07 2019.17 4324.7 2019.17 4319.3 c
f
n
2062.34 4347.81 m
2062.34 4342.41 2057.96 4338.04 2052.57 4338.04 c
2047.17 4338.04 2042.79 4342.41 2042.79 4347.81 c
2042.79 4353.21 2047.17 4357.59 2052.57 4357.59 c
2057.96 4357.59 2062.34 4353.21 2062.34 4347.81 c
f
n
2105.52 4376.32 m
2105.52 4370.92 2101.14 4366.54 2095.74 4366.54 c
2090.34 4366.54 2085.96 4370.92 2085.96 4376.32 c
2085.96 4381.72 2090.34 4386.09 2095.74 4386.09 c
2101.14 4386.09 2105.52 4381.72 2105.52 4376.32 c
f
n
1484.8 3912.82 m
1484.8 3907.42 1480.42 3903.04 1475.02 3903.04 c
1469.62 3903.04 1465.25 3907.42 1465.25 3912.82 c
1465.25 3918.21 1469.62 3922.59 1475.02 3922.59 c
1480.42 3922.59 1484.8 3918.21 1484.8 3912.82 c
f
n
1524.71 3946.21 m
1524.71 3940.82 1520.34 3936.44 1514.94 3936.44 c
1509.54 3936.44 1505.16 3940.82 1505.16 3946.21 c
1505.16 3951.61 1509.54 3955.99 1514.94 3955.99 c
1520.34 3955.99 1524.71 3951.61 1524.71 3946.21 c
f
n
1564.63 3978.8 m
1564.63 3973.4 1560.25 3969.02 1554.85 3969.02 c
1549.45 3969.02 1545.08 3973.4 1545.08 3978.8 c
1545.08 3984.2 1549.45 3988.57 1554.85 3988.57 c
1560.25 3988.57 1564.63 3984.2 1564.63 3978.8 c
f
n
1604.54 4011.38 m
1604.54 4005.98 1600.17 4001.61 1594.77 4001.61 c
1589.37 4001.61 1584.99 4005.98 1584.99 4011.38 c
1584.99 4016.78 1589.37 4021.16 1594.77 4021.16 c
1600.17 4021.16 1604.54 4016.78 1604.54 4011.38 c
f
n
1644.46 4043.96 m
1644.46 4038.57 1640.08 4034.19 1634.68 4034.19 c
1629.29 4034.19 1624.91 4038.57 1624.91 4043.96 c
1624.91 4049.36 1629.29 4053.74 1634.68 4053.74 c
1640.08 4053.74 1644.46 4049.36 1644.46 4043.96 c
f
n
1684.37 4077.36 m
1684.37 4071.96 1680.0 4067.59 1674.6 4067.59 c
1669.2 4067.59 1664.82 4071.96 1664.82 4077.36 c
1664.82 4082.76 1669.2 4087.14 1674.6 4087.14 c
1680.0 4087.14 1684.37 4082.76 1684.37 4077.36 c
f
n
1724.29 4109.95 m
1724.29 4104.55 1719.91 4100.17 1714.51 4100.17 c
1709.11 4100.17 1704.74 4104.55 1704.74 4109.95 c
1704.74 4115.35 1709.11 4119.72 1714.51 4119.72 c
1719.91 4119.72 1724.29 4115.35 1724.29 4109.95 c
f
n
1764.2 4142.53 m
1764.2 4137.13 1759.82 4132.76 1754.43 4132.76 c
1749.03 4132.76 1744.65 4137.13 1744.65 4142.53 c
1744.65 4147.93 1749.03 4152.31 1754.43 4152.31 c
1759.82 4152.31 1764.2 4147.93 1764.2 4142.53 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1844.85 4208.52 m
1844.85 4203.12 1840.47 4198.74 1835.07 4198.74 c
1829.68 4198.74 1825.3 4203.12 1825.3 4208.52 c
1825.3 4213.91 1829.68 4218.29 1835.07 4218.29 c
1840.47 4218.29 1844.85 4213.91 1844.85 4208.52 c
f
n
1884.76 4241.1 m
1884.76 4235.7 1880.39 4231.32 1874.99 4231.32 c
1869.59 4231.32 1865.21 4235.7 1865.21 4241.1 c
1865.21 4246.5 1869.59 4250.87 1874.99 4250.87 c
1880.39 4250.87 1884.76 4246.5 1884.76 4241.1 c
f
n
1924.68 4273.68 m
1924.68 4268.28 1920.3 4263.91 1914.9 4263.91 c
1909.5 4263.91 1905.13 4268.28 1905.13 4273.68 c
1905.13 4279.08 1909.5 4283.46 1914.9 4283.46 c
1920.3 4283.46 1924.68 4279.08 1924.68 4273.68 c
f
n
1964.59 4307.08 m
1964.59 4301.68 1960.21 4297.3 1954.82 4297.3 c
1949.42 4297.3 1945.04 4301.68 1945.04 4307.08 c
1945.04 4312.48 1949.42 4316.86 1954.82 4316.86 c
1960.21 4316.86 1964.59 4312.48 1964.59 4307.08 c
f
n
2004.51 4339.66 m
2004.51 4334.27 2000.13 4329.89 1994.73 4329.89 c
1989.33 4329.89 1984.96 4334.27 1984.96 4339.66 c
1984.96 4345.06 1989.33 4349.44 1994.73 4349.44 c
2000.13 4349.44 2004.51 4345.06 2004.51 4339.66 c
f
n
2044.42 4372.25 m
2044.42 4366.85 2040.05 4362.47 2034.65 4362.47 c
2029.25 4362.47 2024.87 4366.85 2024.87 4372.25 c
2024.87 4377.64 2029.25 4382.02 2034.65 4382.02 c
2040.05 4382.02 2044.42 4377.64 2044.42 4372.25 c
f
n
2084.34 4404.83 m
2084.34 4399.43 2079.96 4395.05 2074.56 4395.05 c
2069.16 4395.05 2064.79 4399.43 2064.79 4404.83 c
2064.79 4410.23 2069.16 4414.61 2074.56 4414.61 c
2079.96 4414.61 2084.34 4410.23 2084.34 4404.83 c
f
n
1511.68 3882.68 m
1511.68 3877.28 1507.3 3872.9 1501.91 3872.9 c
1496.51 3872.9 1492.13 3877.28 1492.13 3882.68 c
1492.13 3888.07 1496.51 3892.45 1501.91 3892.45 c
1507.3 3892.45 1511.68 3888.07 1511.68 3882.68 c
f
n
1548.34 3919.33 m
1548.34 3913.93 1543.96 3909.56 1538.56 3909.56 c
1533.16 3909.56 1528.79 3913.93 1528.79 3919.33 c
1528.79 3924.73 1533.16 3929.11 1538.56 3929.11 c
1543.96 3929.11 1548.34 3924.73 1548.34 3919.33 c
f
n
1584.99 3955.99 m
1584.99 3950.59 1580.62 3946.21 1575.22 3946.21 c
1569.82 3946.21 1565.44 3950.59 1565.44 3955.99 c
1565.44 3961.39 1569.82 3965.77 1575.22 3965.77 c
1580.62 3965.77 1584.99 3961.39 1584.99 3955.99 c
f
n
1621.65 3992.65 m
1621.65 3987.25 1617.27 3982.87 1611.88 3982.87 c
1606.48 3982.87 1602.1 3987.25 1602.1 3992.65 c
1602.1 3998.05 1606.48 4002.42 1611.88 4002.42 c
1617.27 4002.42 1621.65 3998.05 1621.65 3992.65 c
f
n
1658.3 4029.3 m
1658.3 4023.91 1653.93 4019.53 1648.53 4019.53 c
1643.13 4019.53 1638.75 4023.91 1638.75 4029.3 c
1638.75 4034.7 1643.13 4039.08 1648.53 4039.08 c
1653.93 4039.08 1658.3 4034.7 1658.3 4029.3 c
f
n
1694.96 4065.96 m
1694.96 4060.56 1690.59 4056.18 1685.19 4056.18 c
1679.79 4056.18 1675.41 4060.56 1675.41 4065.96 c
1675.41 4071.36 1679.79 4075.73 1685.19 4075.73 c
1690.59 4075.73 1694.96 4071.36 1694.96 4065.96 c
f
n
1731.62 4102.62 m
1731.62 4097.22 1727.24 4092.84 1721.84 4092.84 c
1716.45 4092.84 1712.07 4097.22 1712.07 4102.62 c
1712.07 4108.02 1716.45 4112.39 1721.84 4112.39 c
1727.24 4112.39 1731.62 4108.02 1731.62 4102.62 c
f
n
1768.28 4139.27 m
1768.28 4133.88 1763.9 4129.5 1758.5 4129.5 c
1753.1 4129.5 1748.73 4133.88 1748.73 4139.27 c
1748.73 4144.67 1753.1 4149.05 1758.5 4149.05 c
1763.9 4149.05 1768.28 4144.67 1768.28 4139.27 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1840.77 4211.77 m
1840.77 4206.38 1836.4 4202.0 1831.0 4202.0 c
1825.6 4202.0 1821.22 4206.38 1821.22 4211.77 c
1821.22 4217.17 1825.6 4221.55 1831.0 4221.55 c
1836.4 4221.55 1840.77 4217.17 1840.77 4211.77 c
f
n
1877.43 4248.43 m
1877.43 4243.03 1873.05 4238.65 1867.66 4238.65 c
1862.26 4238.65 1857.88 4243.03 1857.88 4248.43 c
1857.88 4253.83 1862.26 4258.2 1867.66 4258.2 c
1873.05 4258.2 1877.43 4253.83 1877.43 4248.43 c
f
n
1914.09 4285.09 m
1914.09 4279.69 1909.71 4275.31 1904.31 4275.31 c
1898.91 4275.31 1894.54 4279.69 1894.54 4285.09 c
1894.54 4290.48 1898.91 4294.86 1904.31 4294.86 c
1909.71 4294.86 1914.09 4290.48 1914.09 4285.09 c
f
n
1950.75 4321.74 m
1950.75 4316.34 1946.37 4311.97 1940.97 4311.97 c
1935.57 4311.97 1931.2 4316.34 1931.2 4321.74 c
1931.2 4327.14 1935.57 4331.52 1940.97 4331.52 c
1946.37 4331.52 1950.75 4327.14 1950.75 4321.74 c
f
n
1987.4 4358.4 m
1987.4 4353.0 1983.02 4348.62 1977.62 4348.62 c
1972.23 4348.62 1967.85 4353.0 1967.85 4358.4 c
1967.85 4363.8 1972.23 4368.17 1977.62 4368.17 c
1983.02 4368.17 1987.4 4363.8 1987.4 4358.4 c
f
n
2024.06 4395.05 m
2024.06 4389.66 2019.68 4385.28 2014.28 4385.28 c
2008.88 4385.28 2004.51 4389.66 2004.51 4395.05 c
2004.51 4400.45 2008.88 4404.83 2014.28 4404.83 c
2019.68 4404.83 2024.06 4400.45 2024.06 4395.05 c
f
n
2060.71 4431.71 m
2060.71 4426.31 2056.34 4421.94 2050.94 4421.94 c
2045.54 4421.94 2041.16 4426.31 2041.16 4431.71 c
2041.16 4437.11 2045.54 4441.49 2050.94 4441.49 c
2056.34 4441.49 2060.71 4437.11 2060.71 4431.71 c
f
n
1541.82 3855.8 m
1541.82 3850.4 1537.44 3846.02 1532.04 3846.02 c
1526.64 3846.02 1522.27 3850.4 1522.27 3855.8 c
1522.27 3861.2 1526.64 3865.57 1532.04 3865.57 c
1537.44 3865.57 1541.82 3861.2 1541.82 3855.8 c
f
n
1575.22 3895.71 m
1575.22 3890.31 1570.84 3885.94 1565.44 3885.94 c
1560.04 3885.94 1555.67 3890.31 1555.67 3895.71 c
1555.67 3901.11 1560.04 3905.48 1565.44 3905.48 c
1570.84 3905.48 1575.22 3901.11 1575.22 3895.71 c
f
n
1607.8 3935.62 m
1607.8 3930.23 1603.43 3925.85 1598.03 3925.85 c
1592.63 3925.85 1588.25 3930.23 1588.25 3935.62 c
1588.25 3941.02 1592.63 3945.4 1598.03 3945.4 c
1603.43 3945.4 1607.8 3941.02 1607.8 3935.62 c
f
n
1640.39 3975.54 m
1640.39 3970.14 1636.01 3965.77 1630.61 3965.77 c
1625.21 3965.77 1620.84 3970.14 1620.84 3975.54 c
1620.84 3980.94 1625.21 3985.32 1630.61 3985.32 c
1636.01 3985.32 1640.39 3980.94 1640.39 3975.54 c
f
n
1672.97 4015.46 m
1672.97 4010.06 1668.59 4005.68 1663.2 4005.68 c
1657.8 4005.68 1653.42 4010.06 1653.42 4015.46 c
1653.42 4020.86 1657.8 4025.23 1663.2 4025.23 c
1668.59 4025.23 1672.97 4020.86 1672.97 4015.46 c
f
n
1706.37 4055.37 m
1706.37 4049.97 1701.99 4045.59 1696.59 4045.59 c
1691.19 4045.59 1686.82 4049.97 1686.82 4055.37 c
1686.82 4060.77 1691.19 4065.14 1696.59 4065.14 c
1701.99 4065.14 1706.37 4060.77 1706.37 4055.37 c
f
n
1738.95 4095.29 m
1738.95 4089.89 1734.57 4085.51 1729.18 4085.51 c
1723.78 4085.51 1719.4 4089.89 1719.4 4095.29 c
1719.4 4100.68 1723.78 4105.06 1729.18 4105.06 c
1734.57 4105.06 1738.95 4100.68 1738.95 4095.29 c
f
n
1771.54 4135.2 m
1771.54 4129.8 1767.16 4125.43 1761.76 4125.43 c
1756.36 4125.43 1751.98 4129.8 1751.98 4135.2 c
1751.98 4140.6 1756.36 4144.98 1761.76 4144.98 c
1767.16 4144.98 1771.54 4140.6 1771.54 4135.2 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1837.52 4215.84 m
1837.52 4210.45 1833.14 4206.07 1827.74 4206.07 c
1822.34 4206.07 1817.96 4210.45 1817.96 4215.84 c
1817.96 4221.24 1822.34 4225.62 1827.74 4225.62 c
1833.14 4225.62 1837.52 4221.24 1837.52 4215.84 c
f
n
1870.1 4255.76 m
1870.1 4250.36 1865.72 4245.98 1860.32 4245.98 c
1854.93 4245.98 1850.55 4250.36 1850.55 4255.76 c
1850.55 4261.16 1854.93 4265.54 1860.32 4265.54 c
1865.72 4265.54 1870.1 4261.16 1870.1 4255.76 c
f
n
1902.68 4295.68 m
1902.68 4290.28 1898.31 4285.9 1892.91 4285.9 c
1887.51 4285.9 1883.13 4290.28 1883.13 4295.68 c
1883.13 4301.07 1887.51 4305.45 1892.91 4305.45 c
1898.31 4305.45 1902.68 4301.07 1902.68 4295.68 c
f
n
1936.08 4335.59 m
1936.08 4330.19 1931.7 4325.82 1926.3 4325.82 c
1920.91 4325.82 1916.53 4330.19 1916.53 4335.59 c
1916.53 4340.99 1920.91 4345.36 1926.3 4345.36 c
1931.7 4345.36 1936.08 4340.99 1936.08 4335.59 c
f
n
1968.66 4375.5 m
1968.66 4370.11 1964.29 4365.73 1958.89 4365.73 c
1953.49 4365.73 1949.11 4370.11 1949.11 4375.5 c
1949.11 4380.9 1953.49 4385.28 1958.89 4385.28 c
1964.29 4385.28 1968.66 4380.9 1968.66 4375.5 c
f
n
2001.25 4415.42 m
2001.25 4410.02 1996.87 4405.64 1991.47 4405.64 c
1986.07 4405.64 1981.7 4410.02 1981.7 4415.42 c
1981.7 4420.82 1986.07 4425.2 1991.47 4425.2 c
1996.87 4425.2 2001.25 4420.82 2001.25 4415.42 c
f
n
2033.83 4455.34 m
2033.83 4449.94 2029.46 4445.56 2024.06 4445.56 c
2018.66 4445.56 2014.28 4449.94 2014.28 4455.34 c
2014.28 4460.73 2018.66 4465.11 2024.06 4465.11 c
2029.46 4465.11 2033.83 4460.73 2033.83 4455.34 c
f
n
1574.4 3831.36 m
1574.4 3825.96 1570.03 3821.58 1564.63 3821.58 c
1559.23 3821.58 1554.85 3825.96 1554.85 3831.36 c
1554.85 3836.76 1559.23 3841.13 1564.63 3841.13 c
1570.03 3841.13 1574.4 3836.76 1574.4 3831.36 c
f
n
1603.73 3874.53 m
1603.73 3869.13 1599.35 3864.76 1593.95 3864.76 c
1588.55 3864.76 1584.18 3869.13 1584.18 3874.53 c
1584.18 3879.93 1588.55 3884.3 1593.95 3884.3 c
1599.35 3884.3 1603.73 3879.93 1603.73 3874.53 c
f
n
1632.24 3917.7 m
1632.24 3912.3 1627.86 3907.93 1622.46 3907.93 c
1617.07 3907.93 1612.69 3912.3 1612.69 3917.7 c
1612.69 3923.1 1617.07 3927.48 1622.46 3927.48 c
1627.86 3927.48 1632.24 3923.1 1632.24 3917.7 c
f
n
1660.75 3960.88 m
1660.75 3955.48 1656.37 3951.1 1650.97 3951.1 c
1645.57 3951.1 1641.2 3955.48 1641.2 3960.88 c
1641.2 3966.28 1645.57 3970.65 1650.97 3970.65 c
1656.37 3970.65 1660.75 3966.28 1660.75 3960.88 c
f
n
1689.26 4003.24 m
1689.26 3997.84 1684.88 3993.46 1679.48 3993.46 c
1674.09 3993.46 1669.71 3997.84 1669.71 4003.24 c
1669.71 4008.64 1674.09 4013.01 1679.48 4013.01 c
1684.88 4013.01 1689.26 4008.64 1689.26 4003.24 c
f
n
1718.59 4046.41 m
1718.59 4041.01 1714.21 4036.64 1708.81 4036.64 c
1703.41 4036.64 1699.04 4041.01 1699.04 4046.41 c
1699.04 4051.81 1703.41 4056.18 1708.81 4056.18 c
1714.21 4056.18 1718.59 4051.81 1718.59 4046.41 c
f
n
1747.1 4089.58 m
1747.1 4084.18 1742.72 4079.81 1737.32 4079.81 c
1731.92 4079.81 1727.55 4084.18 1727.55 4089.58 c
1727.55 4094.98 1731.92 4099.36 1737.32 4099.36 c
1742.72 4099.36 1747.1 4094.98 1747.1 4089.58 c
f
n
1775.61 4132.76 m
1775.61 4127.36 1771.23 4122.98 1765.83 4122.98 c
1760.43 4122.98 1756.06 4127.36 1756.06 4132.76 c
1756.06 4138.16 1760.43 4142.53 1765.83 4142.53 c
1771.23 4142.53 1775.61 4138.16 1775.61 4132.76 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1833.44 4218.29 m
1833.44 4212.89 1829.07 4208.52 1823.67 4208.52 c
1818.27 4208.52 1813.89 4212.89 1813.89 4218.29 c
1813.89 4223.69 1818.27 4228.06 1823.67 4228.06 c
1829.07 4228.06 1833.44 4223.69 1833.44 4218.29 c
f
n
1861.95 4261.46 m
1861.95 4256.06 1857.58 4251.69 1852.18 4251.69 c
1846.78 4251.69 1842.4 4256.06 1842.4 4261.46 c
1842.4 4266.86 1846.78 4271.24 1852.18 4271.24 c
1857.58 4271.24 1861.95 4266.86 1861.95 4261.46 c
f
n
1890.46 4304.64 m
1890.46 4299.24 1886.09 4294.86 1880.69 4294.86 c
1875.29 4294.86 1870.91 4299.24 1870.91 4304.64 c
1870.91 4310.04 1875.29 4314.41 1880.69 4314.41 c
1886.09 4314.41 1890.46 4310.04 1890.46 4304.64 c
f
n
1919.79 4347.81 m
1919.79 4342.41 1915.41 4338.04 1910.02 4338.04 c
1904.62 4338.04 1900.24 4342.41 1900.24 4347.81 c
1900.24 4353.21 1904.62 4357.59 1910.02 4357.59 c
1915.41 4357.59 1919.79 4353.21 1919.79 4347.81 c
f
n
1948.3 4390.17 m
1948.3 4384.77 1943.93 4380.39 1938.53 4380.39 c
1933.13 4380.39 1928.75 4384.77 1928.75 4390.17 c
1928.75 4395.57 1933.13 4399.94 1938.53 4399.94 c
1943.93 4399.94 1948.3 4395.57 1948.3 4390.17 c
f
n
1976.81 4433.34 m
1976.81 4427.94 1972.43 4423.57 1967.04 4423.57 c
1961.64 4423.57 1957.26 4427.94 1957.26 4433.34 c
1957.26 4438.74 1961.64 4443.12 1967.04 4443.12 c
1972.43 4443.12 1976.81 4438.74 1976.81 4433.34 c
f
n
2005.32 4476.52 m
2005.32 4471.12 2000.95 4466.74 1995.55 4466.74 c
1990.15 4466.74 1985.77 4471.12 1985.77 4476.52 c
1985.77 4481.91 1990.15 4486.29 1995.55 4486.29 c
2000.95 4486.29 2005.32 4481.91 2005.32 4476.52 c
f
n
1609.43 3810.18 m
1609.43 3804.78 1605.05 3800.4 1599.66 3800.4 c
1594.26 3800.4 1589.88 3804.78 1589.88 3810.18 c
1589.88 3815.58 1594.26 3819.95 1599.66 3819.95 c
1605.05 3819.95 1609.43 3815.58 1609.43 3810.18 c
f
n
1633.87 3855.8 m
1633.87 3850.4 1629.49 3846.02 1624.09 3846.02 c
1618.7 3846.02 1614.32 3850.4 1614.32 3855.8 c
1614.32 3861.2 1618.7 3865.57 1624.09 3865.57 c
1629.49 3865.57 1633.87 3861.2 1633.87 3855.8 c
f
n
1658.3 3901.41 m
1658.3 3896.02 1653.93 3891.64 1648.53 3891.64 c
1643.13 3891.64 1638.75 3896.02 1638.75 3901.41 c
1638.75 3906.81 1643.13 3911.19 1648.53 3911.19 c
1653.93 3911.19 1658.3 3906.81 1658.3 3901.41 c
f
n
1682.74 3947.03 m
1682.74 3941.63 1678.37 3937.25 1672.97 3937.25 c
1667.57 3937.25 1663.2 3941.63 1663.2 3947.03 c
1663.2 3952.43 1667.57 3956.8 1672.97 3956.8 c
1678.37 3956.8 1682.74 3952.43 1682.74 3947.03 c
f
n
1707.18 3992.65 m
1707.18 3987.25 1702.8 3982.87 1697.41 3982.87 c
1692.01 3982.87 1687.63 3987.25 1687.63 3992.65 c
1687.63 3998.05 1692.01 4002.42 1697.41 4002.42 c
1702.8 4002.42 1707.18 3998.05 1707.18 3992.65 c
f
n
1731.62 4038.27 m
1731.62 4032.87 1727.24 4028.49 1721.84 4028.49 c
1716.45 4028.49 1712.07 4032.87 1712.07 4038.27 c
1712.07 4043.66 1716.45 4048.04 1721.84 4048.04 c
1727.24 4048.04 1731.62 4043.66 1731.62 4038.27 c
f
n
1756.06 4083.88 m
1756.06 4078.48 1751.68 4074.11 1746.28 4074.11 c
1740.88 4074.11 1736.51 4078.48 1736.51 4083.88 c
1736.51 4089.28 1740.88 4093.66 1746.28 4093.66 c
1751.68 4093.66 1756.06 4089.28 1756.06 4083.88 c
f
n
1780.5 4129.5 m
1780.5 4124.1 1776.12 4119.72 1770.72 4119.72 c
1765.32 4119.72 1760.95 4124.1 1760.95 4129.5 c
1760.95 4134.9 1765.32 4139.27 1770.72 4139.27 c
1776.12 4139.27 1780.5 4134.9 1780.5 4129.5 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1828.55 4221.55 m
1828.55 4216.15 1824.18 4211.77 1818.78 4211.77 c
1813.38 4211.77 1809.0 4216.15 1809.0 4221.55 c
1809.0 4226.95 1813.38 4231.32 1818.78 4231.32 c
1824.18 4231.32 1828.55 4226.95 1828.55 4221.55 c
f
n
1852.99 4267.16 m
1852.99 4261.77 1848.62 4257.39 1843.22 4257.39 c
1837.82 4257.39 1833.44 4261.77 1833.44 4267.16 c
1833.44 4272.56 1837.82 4276.94 1843.22 4276.94 c
1848.62 4276.94 1852.99 4272.56 1852.99 4267.16 c
f
n
1877.43 4312.78 m
1877.43 4307.38 1873.05 4303.01 1867.66 4303.01 c
1862.26 4303.01 1857.88 4307.38 1857.88 4312.78 c
1857.88 4318.18 1862.26 4322.56 1867.66 4322.56 c
1873.05 4322.56 1877.43 4318.18 1877.43 4312.78 c
f
n
1901.87 4358.4 m
1901.87 4353.0 1897.49 4348.62 1892.09 4348.62 c
1886.7 4348.62 1882.32 4353.0 1882.32 4358.4 c
1882.32 4363.8 1886.7 4368.17 1892.09 4368.17 c
1897.49 4368.17 1901.87 4363.8 1901.87 4358.4 c
f
n
1926.3 4404.02 m
1926.3 4398.62 1921.93 4394.24 1916.53 4394.24 c
1911.13 4394.24 1906.76 4398.62 1906.76 4404.02 c
1906.76 4409.41 1911.13 4413.79 1916.53 4413.79 c
1921.93 4413.79 1926.3 4409.41 1926.3 4404.02 c
f
n
1950.75 4449.63 m
1950.75 4444.23 1946.37 4439.86 1940.97 4439.86 c
1935.57 4439.86 1931.2 4444.23 1931.2 4449.63 c
1931.2 4455.03 1935.57 4459.41 1940.97 4459.41 c
1946.37 4459.41 1950.75 4455.03 1950.75 4449.63 c
f
n
1975.18 4495.25 m
1975.18 4489.85 1970.8 4485.48 1965.41 4485.48 c
1960.01 4485.48 1955.63 4489.85 1955.63 4495.25 c
1955.63 4500.65 1960.01 4505.02 1965.41 4505.02 c
1970.8 4505.02 1975.18 4500.65 1975.18 4495.25 c
f
n
1646.09 3793.07 m
1646.09 3787.67 1641.71 3783.3 1636.31 3783.3 c
1630.91 3783.3 1626.54 3787.67 1626.54 3793.07 c
1626.54 3798.47 1630.91 3802.85 1636.31 3802.85 c
1641.71 3802.85 1646.09 3798.47 1646.09 3793.07 c
f
n
1665.64 3841.13 m
1665.64 3835.73 1661.26 3831.36 1655.86 3831.36 c
1650.46 3831.36 1646.09 3835.73 1646.09 3841.13 c
1646.09 3846.53 1650.46 3850.91 1655.86 3850.91 c
1661.26 3850.91 1665.64 3846.53 1665.64 3841.13 c
f
n
1686.0 3889.2 m
1686.0 3883.8 1681.62 3879.42 1676.23 3879.42 c
1670.83 3879.42 1666.45 3883.8 1666.45 3889.2 c
1666.45 3894.59 1670.83 3898.97 1676.23 3898.97 c
1681.62 3898.97 1686.0 3894.59 1686.0 3889.2 c
f
n
1705.55 3936.44 m
1705.55 3931.04 1701.18 3926.66 1695.78 3926.66 c
1690.38 3926.66 1686.0 3931.04 1686.0 3936.44 c
1686.0 3941.84 1690.38 3946.21 1695.78 3946.21 c
1701.18 3946.21 1705.55 3941.84 1705.55 3936.44 c
f
n
1725.1 3984.5 m
1725.1 3979.1 1720.73 3974.73 1715.33 3974.73 c
1709.93 3974.73 1705.55 3979.1 1705.55 3984.5 c
1705.55 3989.9 1709.93 3994.28 1715.33 3994.28 c
1720.73 3994.28 1725.1 3989.9 1725.1 3984.5 c
f
n
1745.47 4032.56 m
1745.47 4027.16 1741.09 4022.79 1735.69 4022.79 c
1730.29 4022.79 1725.92 4027.16 1725.92 4032.56 c
1725.92 4037.96 1730.29 4042.34 1735.69 4042.34 c
1741.09 4042.34 1745.47 4037.96 1745.47 4032.56 c
f
n
1765.02 4079.81 m
1765.02 4074.41 1760.64 4070.04 1755.24 4070.04 c
1749.84 4070.04 1745.47 4074.41 1745.47 4079.81 c
1745.47 4085.21 1749.84 4089.58 1755.24 4089.58 c
1760.64 4089.58 1765.02 4085.21 1765.02 4079.81 c
f
n
1784.57 4127.87 m
1784.57 4122.47 1780.19 4118.09 1774.79 4118.09 c
1769.39 4118.09 1765.02 4122.47 1765.02 4127.87 c
1765.02 4133.27 1769.39 4137.64 1774.79 4137.64 c
1780.19 4137.64 1784.57 4133.27 1784.57 4127.87 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1824.48 4223.18 m
1824.48 4217.78 1820.11 4213.4 1814.71 4213.4 c
1809.31 4213.4 1804.93 4217.78 1804.93 4223.18 c
1804.93 4228.57 1809.31 4232.95 1814.71 4232.95 c
1820.11 4232.95 1824.48 4228.57 1824.48 4223.18 c
f
n
1844.03 4271.24 m
1844.03 4265.84 1839.66 4261.46 1834.26 4261.46 c
1828.86 4261.46 1824.48 4265.84 1824.48 4271.24 c
1824.48 4276.64 1828.86 4281.01 1834.26 4281.01 c
1839.66 4281.01 1844.03 4276.64 1844.03 4271.24 c
f
n
1863.58 4318.48 m
1863.58 4313.09 1859.21 4308.71 1853.81 4308.71 c
1848.41 4308.71 1844.03 4313.09 1844.03 4318.48 c
1844.03 4323.88 1848.41 4328.26 1853.81 4328.26 c
1859.21 4328.26 1863.58 4323.88 1863.58 4318.48 c
f
n
1883.95 4366.54 m
1883.95 4361.14 1879.57 4356.77 1874.17 4356.77 c
1868.77 4356.77 1864.4 4361.14 1864.4 4366.54 c
1864.4 4371.94 1868.77 4376.32 1874.17 4376.32 c
1879.57 4376.32 1883.95 4371.94 1883.95 4366.54 c
f
n
1903.5 4414.61 m
1903.5 4409.21 1899.12 4404.83 1893.72 4404.83 c
1888.32 4404.83 1883.95 4409.21 1883.95 4414.61 c
1883.95 4420.0 1888.32 4424.38 1893.72 4424.38 c
1899.12 4424.38 1903.5 4420.0 1903.5 4414.61 c
f
n
1923.05 4461.85 m
1923.05 4456.45 1918.67 4452.08 1913.27 4452.08 c
1907.88 4452.08 1903.5 4456.45 1903.5 4461.85 c
1903.5 4467.25 1907.88 4471.62 1913.27 4471.62 c
1918.67 4471.62 1923.05 4467.25 1923.05 4461.85 c
f
n
1943.41 4509.91 m
1943.41 4504.52 1939.04 4500.14 1933.64 4500.14 c
1928.24 4500.14 1923.86 4504.52 1923.86 4509.91 c
1923.86 4515.31 1928.24 4519.69 1933.64 4519.69 c
1939.04 4519.69 1943.41 4515.31 1943.41 4509.91 c
f
n
1684.37 3779.22 m
1684.37 3773.82 1680.0 3769.45 1674.6 3769.45 c
1669.2 3769.45 1664.82 3773.82 1664.82 3779.22 c
1664.82 3784.62 1669.2 3789.0 1674.6 3789.0 c
1680.0 3789.0 1684.37 3784.62 1684.37 3779.22 c
f
n
1699.04 3828.91 m
1699.04 3823.52 1694.66 3819.14 1689.26 3819.14 c
1683.86 3819.14 1679.48 3823.52 1679.48 3828.91 c
1679.48 3834.31 1683.86 3838.69 1689.26 3838.69 c
1694.66 3838.69 1699.04 3834.31 1699.04 3828.91 c
f
n
1714.51 3878.61 m
1714.51 3873.21 1710.14 3868.83 1704.74 3868.83 c
1699.34 3868.83 1694.96 3873.21 1694.96 3878.61 c
1694.96 3884.0 1699.34 3888.38 1704.74 3888.38 c
1710.14 3888.38 1714.51 3884.0 1714.51 3878.61 c
f
n
1729.18 3928.29 m
1729.18 3922.89 1724.8 3918.52 1719.4 3918.52 c
1714.0 3918.52 1709.62 3922.89 1709.62 3928.29 c
1709.62 3933.69 1714.0 3938.07 1719.4 3938.07 c
1724.8 3938.07 1729.18 3933.69 1729.18 3928.29 c
f
n
1744.65 3977.17 m
1744.65 3971.77 1740.28 3967.39 1734.88 3967.39 c
1729.48 3967.39 1725.1 3971.77 1725.1 3977.17 c
1725.1 3982.57 1729.48 3986.95 1734.88 3986.95 c
1740.28 3986.95 1744.65 3982.57 1744.65 3977.17 c
f
n
1759.32 4026.86 m
1759.32 4021.46 1754.94 4017.09 1749.54 4017.09 c
1744.14 4017.09 1739.77 4021.46 1739.77 4026.86 c
1739.77 4032.26 1744.14 4036.64 1749.54 4036.64 c
1754.94 4036.64 1759.32 4032.26 1759.32 4026.86 c
f
n
1774.79 4076.55 m
1774.79 4071.15 1770.41 4066.77 1765.02 4066.77 c
1759.62 4066.77 1755.24 4071.15 1755.24 4076.55 c
1755.24 4081.95 1759.62 4086.32 1765.02 4086.32 c
1770.41 4086.32 1774.79 4081.95 1774.79 4076.55 c
f
n
1789.46 4126.24 m
1789.46 4120.84 1785.08 4116.46 1779.68 4116.46 c
1774.28 4116.46 1769.91 4120.84 1769.91 4126.24 c
1769.91 4131.64 1774.28 4136.02 1779.68 4136.02 c
1785.08 4136.02 1789.46 4131.64 1789.46 4126.24 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1819.59 4224.8 m
1819.59 4219.41 1815.22 4215.03 1809.82 4215.03 c
1804.42 4215.03 1800.04 4219.41 1800.04 4224.8 c
1800.04 4230.2 1804.42 4234.58 1809.82 4234.58 c
1815.22 4234.58 1819.59 4230.2 1819.59 4224.8 c
f
n
1834.26 4274.5 m
1834.26 4269.1 1829.88 4264.72 1824.48 4264.72 c
1819.09 4264.72 1814.71 4269.1 1814.71 4274.5 c
1814.71 4279.89 1819.09 4284.27 1824.48 4284.27 c
1829.88 4284.27 1834.26 4279.89 1834.26 4274.5 c
f
n
1849.73 4324.19 m
1849.73 4318.79 1845.36 4314.41 1839.96 4314.41 c
1834.56 4314.41 1830.18 4318.79 1830.18 4324.19 c
1830.18 4329.59 1834.56 4333.96 1839.96 4333.96 c
1845.36 4333.96 1849.73 4329.59 1849.73 4324.19 c
f
n
1864.4 4373.88 m
1864.4 4368.48 1860.02 4364.1 1854.62 4364.1 c
1849.22 4364.1 1844.85 4368.48 1844.85 4373.88 c
1844.85 4379.27 1849.22 4383.65 1854.62 4383.65 c
1860.02 4383.65 1864.4 4379.27 1864.4 4373.88 c
f
n
1879.88 4422.75 m
1879.88 4417.35 1875.5 4412.98 1870.1 4412.98 c
1864.7 4412.98 1860.32 4417.35 1860.32 4422.75 c
1860.32 4428.15 1864.7 4432.53 1870.1 4432.53 c
1875.5 4432.53 1879.88 4428.15 1879.88 4422.75 c
f
n
1894.54 4472.44 m
1894.54 4467.04 1890.16 4462.67 1884.76 4462.67 c
1879.36 4462.67 1874.99 4467.04 1874.99 4472.44 c
1874.99 4477.84 1879.36 4482.21 1884.76 4482.21 c
1890.16 4482.21 1894.54 4477.84 1894.54 4472.44 c
f
n
1910.02 4522.13 m
1910.02 4516.73 1905.64 4512.36 1900.24 4512.36 c
1894.84 4512.36 1890.46 4516.73 1890.46 4522.13 c
1890.46 4527.53 1894.84 4531.91 1900.24 4531.91 c
1905.64 4531.91 1910.02 4527.53 1910.02 4522.13 c
f
n
1723.47 3769.45 m
1723.47 3764.05 1719.1 3759.68 1713.7 3759.68 c
1708.3 3759.68 1703.92 3764.05 1703.92 3769.45 c
1703.92 3774.85 1708.3 3779.22 1713.7 3779.22 c
1719.1 3779.22 1723.47 3774.85 1723.47 3769.45 c
f
n
1734.06 3820.77 m
1734.06 3815.37 1729.69 3810.99 1724.29 3810.99 c
1718.89 3810.99 1714.51 3815.37 1714.51 3820.77 c
1714.51 3826.17 1718.89 3830.54 1724.29 3830.54 c
1729.69 3830.54 1734.06 3826.17 1734.06 3820.77 c
f
n
1743.84 3871.27 m
1743.84 3865.88 1739.46 3861.5 1734.06 3861.5 c
1728.66 3861.5 1724.29 3865.88 1724.29 3871.27 c
1724.29 3876.67 1728.66 3881.05 1734.06 3881.05 c
1739.46 3881.05 1743.84 3876.67 1743.84 3871.27 c
f
n
1754.43 3921.78 m
1754.43 3916.38 1750.05 3912.0 1744.65 3912.0 c
1739.25 3912.0 1734.88 3916.38 1734.88 3921.78 c
1734.88 3927.18 1739.25 3931.55 1744.65 3931.55 c
1750.05 3931.55 1754.43 3927.18 1754.43 3921.78 c
f
n
1764.2 3972.28 m
1764.2 3966.88 1759.82 3962.51 1754.43 3962.51 c
1749.03 3962.51 1744.65 3966.88 1744.65 3972.28 c
1744.65 3977.68 1749.03 3982.06 1754.43 3982.06 c
1759.82 3982.06 1764.2 3977.68 1764.2 3972.28 c
f
n
1773.98 4023.6 m
1773.98 4018.2 1769.6 4013.83 1764.2 4013.83 c
1758.8 4013.83 1754.43 4018.2 1754.43 4023.6 c
1754.43 4029.0 1758.8 4033.38 1764.2 4033.38 c
1769.6 4033.38 1773.98 4029.0 1773.98 4023.6 c
f
n
1784.57 4074.11 m
1784.57 4068.71 1780.19 4064.33 1774.79 4064.33 c
1769.39 4064.33 1765.02 4068.71 1765.02 4074.11 c
1765.02 4079.5 1769.39 4083.88 1774.79 4083.88 c
1780.19 4083.88 1784.57 4079.5 1784.57 4074.11 c
f
n
1794.34 4124.61 m
1794.34 4119.21 1789.96 4114.84 1784.57 4114.84 c
1779.17 4114.84 1774.79 4119.21 1774.79 4124.61 c
1774.79 4130.01 1779.17 4134.39 1784.57 4134.39 c
1789.96 4134.39 1794.34 4130.01 1794.34 4124.61 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1814.71 4226.43 m
1814.71 4221.04 1810.33 4216.66 1804.93 4216.66 c
1799.54 4216.66 1795.16 4221.04 1795.16 4226.43 c
1795.16 4231.83 1799.54 4236.21 1804.93 4236.21 c
1810.33 4236.21 1814.71 4231.83 1814.71 4226.43 c
f
n
1824.48 4276.94 m
1824.48 4271.54 1820.11 4267.16 1814.71 4267.16 c
1809.31 4267.16 1804.93 4271.54 1804.93 4276.94 c
1804.93 4282.34 1809.31 4286.71 1814.71 4286.71 c
1820.11 4286.71 1824.48 4282.34 1824.48 4276.94 c
f
n
1835.07 4327.45 m
1835.07 4322.05 1830.7 4317.67 1825.3 4317.67 c
1819.9 4317.67 1815.52 4322.05 1815.52 4327.45 c
1815.52 4332.84 1819.9 4337.22 1825.3 4337.22 c
1830.7 4337.22 1835.07 4332.84 1835.07 4327.45 c
f
n
1844.85 4378.76 m
1844.85 4373.36 1840.47 4368.99 1835.07 4368.99 c
1829.68 4368.99 1825.3 4373.36 1825.3 4378.76 c
1825.3 4384.16 1829.68 4388.54 1835.07 4388.54 c
1840.47 4388.54 1844.85 4384.16 1844.85 4378.76 c
f
n
1854.62 4429.27 m
1854.62 4423.87 1850.25 4419.49 1844.85 4419.49 c
1839.45 4419.49 1835.07 4423.87 1835.07 4429.27 c
1835.07 4434.67 1839.45 4439.04 1844.85 4439.04 c
1850.25 4439.04 1854.62 4434.67 1854.62 4429.27 c
f
n
1865.21 4479.77 m
1865.21 4474.38 1860.84 4470.0 1855.44 4470.0 c
1850.04 4470.0 1845.66 4474.38 1845.66 4479.77 c
1845.66 4485.17 1850.04 4489.55 1855.44 4489.55 c
1860.84 4489.55 1865.21 4485.17 1865.21 4479.77 c
f
n
1874.99 4530.28 m
1874.99 4524.88 1870.61 4520.5 1865.21 4520.5 c
1859.81 4520.5 1855.44 4524.88 1855.44 4530.28 c
1855.44 4535.68 1859.81 4540.05 1865.21 4540.05 c
1870.61 4540.05 1874.99 4535.68 1874.99 4530.28 c
f
n
1764.2 3763.75 m
1764.2 3758.35 1759.82 3753.97 1754.43 3753.97 c
1749.03 3753.97 1744.65 3758.35 1744.65 3763.75 c
1744.65 3769.14 1749.03 3773.52 1754.43 3773.52 c
1759.82 3773.52 1764.2 3769.14 1764.2 3763.75 c
f
n
1769.09 3815.07 m
1769.09 3809.67 1764.71 3805.29 1759.32 3805.29 c
1753.92 3805.29 1749.54 3809.67 1749.54 3815.07 c
1749.54 3820.46 1753.92 3824.84 1759.32 3824.84 c
1764.71 3824.84 1769.09 3820.46 1769.09 3815.07 c
f
n
1773.98 3866.39 m
1773.98 3860.99 1769.6 3856.61 1764.2 3856.61 c
1758.8 3856.61 1754.43 3860.99 1754.43 3866.39 c
1754.43 3871.79 1758.8 3876.16 1764.2 3876.16 c
1769.6 3876.16 1773.98 3871.79 1773.98 3866.39 c
f
n
1778.87 3918.52 m
1778.87 3913.12 1774.49 3908.74 1769.09 3908.74 c
1763.69 3908.74 1759.32 3913.12 1759.32 3918.52 c
1759.32 3923.92 1763.69 3928.29 1769.09 3928.29 c
1774.49 3928.29 1778.87 3923.92 1778.87 3918.52 c
f
n
1784.57 3969.84 m
1784.57 3964.44 1780.19 3960.06 1774.79 3960.06 c
1769.39 3960.06 1765.02 3964.44 1765.02 3969.84 c
1765.02 3975.24 1769.39 3979.61 1774.79 3979.61 c
1780.19 3979.61 1784.57 3975.24 1784.57 3969.84 c
f
n
1789.46 4021.16 m
1789.46 4015.76 1785.08 4011.38 1779.68 4011.38 c
1774.28 4011.38 1769.91 4015.76 1769.91 4021.16 c
1769.91 4026.55 1774.28 4030.93 1779.68 4030.93 c
1785.08 4030.93 1789.46 4026.55 1789.46 4021.16 c
f
n
1794.34 4072.48 m
1794.34 4067.08 1789.96 4062.7 1784.57 4062.7 c
1779.17 4062.7 1774.79 4067.08 1774.79 4072.48 c
1774.79 4077.88 1779.17 4082.25 1784.57 4082.25 c
1789.96 4082.25 1794.34 4077.88 1794.34 4072.48 c
f
n
1799.23 4123.8 m
1799.23 4118.4 1794.86 4114.02 1789.46 4114.02 c
1784.06 4114.02 1779.68 4118.4 1779.68 4123.8 c
1779.68 4129.2 1784.06 4133.57 1789.46 4133.57 c
1794.86 4133.57 1799.23 4129.2 1799.23 4123.8 c
f
n
1804.93 4175.93 m
1804.93 4170.53 1800.55 4166.16 1795.16 4166.16 c
1789.76 4166.16 1785.38 4170.53 1785.38 4175.93 c
1785.38 4181.33 1789.76 4185.71 1795.16 4185.71 c
1800.55 4185.71 1804.93 4181.33 1804.93 4175.93 c
f
n
1809.82 4227.25 m
1809.82 4221.85 1805.44 4217.47 1800.04 4217.47 c
1794.64 4217.47 1790.27 4221.85 1790.27 4227.25 c
1790.27 4232.65 1794.64 4237.02 1800.04 4237.02 c
1805.44 4237.02 1809.82 4232.65 1809.82 4227.25 c
f
n
1814.71 4278.57 m
1814.71 4273.17 1810.33 4268.79 1804.93 4268.79 c
1799.54 4268.79 1795.16 4273.17 1795.16 4278.57 c
1795.16 4283.97 1799.54 4288.34 1804.93 4288.34 c
1810.33 4288.34 1814.71 4283.97 1814.71 4278.57 c
f
n
1819.59 4329.89 m
1819.59 4324.49 1815.22 4320.11 1809.82 4320.11 c
1804.42 4320.11 1800.04 4324.49 1800.04 4329.89 c
1800.04 4335.29 1804.42 4339.66 1809.82 4339.66 c
1815.22 4339.66 1819.59 4335.29 1819.59 4329.89 c
f
n
1824.48 4381.21 m
1824.48 4375.81 1820.11 4371.43 1814.71 4371.43 c
1809.31 4371.43 1804.93 4375.81 1804.93 4381.21 c
1804.93 4386.61 1809.31 4390.98 1814.71 4390.98 c
1820.11 4390.98 1824.48 4386.61 1824.48 4381.21 c
f
n
1830.18 4432.53 m
1830.18 4427.13 1825.81 4422.75 1820.41 4422.75 c
1815.01 4422.75 1810.63 4427.13 1810.63 4432.53 c
1810.63 4437.93 1815.01 4442.3 1820.41 4442.3 c
1825.81 4442.3 1830.18 4437.93 1830.18 4432.53 c
f
n
1835.07 4484.66 m
1835.07 4479.26 1830.7 4474.89 1825.3 4474.89 c
1819.9 4474.89 1815.52 4479.26 1815.52 4484.66 c
1815.52 4490.06 1819.9 4494.43 1825.3 4494.43 c
1830.7 4494.43 1835.07 4490.06 1835.07 4484.66 c
f
n
1839.96 4535.98 m
1839.96 4530.58 1835.58 4526.2 1830.18 4526.2 c
1824.79 4526.2 1820.41 4530.58 1820.41 4535.98 c
1820.41 4541.38 1824.79 4545.75 1830.18 4545.75 c
1835.58 4545.75 1839.96 4541.38 1839.96 4535.98 c
f
Q
q
n
0.0 0.0 m
W
n
q
951.313 0.0 0.0 -4.69205 243.734 4059.78 cm
Q
Q
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
[/DeviceCMYK] cs 0.0 0.0 0.0 1.0 sc
%ADOBeginSubsetFont: XUVAAA+CMSY10 Initial
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
12 dict dup begin
/FontType 1 def
/FontName /XUVAAA+CMSY10 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/ItalicAngle 0 def
/WasEmbedded true def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
def
/FontBBox {-0 -960 943 750} def
end
systemdict begin
dup /Private
12 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-22 -0 683 705] def
/OtherBlues [-124 -119] def
/BlueScale 0.04379 def
/StdHW [40] def
/StdVW [85] def
/StemSnapH [40 55] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs [{ct_CffDict/F0Subr get exec} {ct_CffDict/F1Subr get exec}
{ct_CffDict/F2Subr get exec} {ct_CffDict/HSSubr get exec}] def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
1 dict dup begin
/.notdef <1C60D8A8C9C4A637> |-
end put
end
dup /FontName get exch definefont pop
end
end
-%ADOEndSubsetFont
-[ 0 /minus/periodcentered/multiply/asteriskmath 12 /circledot 15 /bullet
20 /lessequal/greaterequal 24 /similar/approxequal 28 /lessmuch 32 /space
/arrowright/quotedbl/numbersign/dollar/percent/ampersand
/quotesingle/parenleft/parenright/asterisk/plus/comma
/hyphen/period/slash/zero/one/element
/three/four/five/six/seven/eight
/nine/colon/semicolon/less/equal/greater
/question/at/A/B/C/D
/E/F/G/H/I/J
/K/L/M/N/O/P
/Q/R/S/T/U/V
/W/X/Y/Z/bracketleft/backslash
/bracketright/asciicircum/underscore/grave/a/b
/c/d/e/braceleft/braceright/angbracketleft
/angbracketright/bar/bardbl/l/m/backslash
/o/radical/q/r/s/t
/u/v/w/x/dagger/daggerdbl
/braceleft/bar/braceright/asciitilde/bullet/Euro
/bullet/quotesinglbase/florin/quotedblbase/ellipsis/dagger
/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft/OE
/bullet/Zcaron/bullet/bullet/quoteleft/quoteright
/quotedblleft/quotedblright/bullet/endash/emdash/tilde
/trademark/scaron/guilsinglright/oe/bullet/zcaron
/Ydieresis/space/exclamdown/cent/sterling/currency
/yen/brokenbar/section/dieresis/copyright/ordfeminine
/guillemotleft/logicalnot/hyphen/registered/macron/degree
/plusminus/twosuperior/threesuperior/acute/mu/paragraph
/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright/onequarter
/onehalf/threequarters/questiondown/Agrave/Aacute/Acircumflex
/Atilde/Adieresis/Aring/AE/Ccedilla/Egrave
/Eacute/Ecircumflex/Edieresis/Igrave/Iacute/Icircumflex
/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex
/Otilde/Odieresis/multiply/Oslash/Ugrave/Uacute
/Ucircumflex/Udieresis/Yacute/Thorn/germandbls/agrave
/aacute/acircumflex/atilde/adieresis/aring/ae
/ccedilla/egrave/eacute/ecircumflex/edieresis/igrave
/iacute/icircumflex/idieresis/eth/ntilde/ograve
/oacute/ocircumflex/otilde/odieresis/divide/oslash
/ugrave/uacute/ucircumflex/udieresis/yacute/thorn
/ydieresis
/N33 (XUVAAA+CMSY10) -1 TZ
126.263 364.328 m
%ADOBeginSubsetFont: XUVAAA+CMSY10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/XUVAAA+CMSY10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/minus <1C60D8A8C9B08A946182837629008DF7702985522C1BEB432204C2EF
9CAB07AB654895DD8804EF7ED97DE3E2616CBB2FB21BE3D9> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/XUVAAA+CMSY10 findfont /Encoding get
dup 0 /minus put
pop
end
-%ADOEndSubsetFont
-/N33 10.6637 Tf
(\000) show
%ADOBeginSubsetFont: EWLBAA+CMR10 Initial
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
12 dict dup begin
/FontType 1 def
/FontName /EWLBAA+CMR10 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/ItalicAngle 0 def
/WasEmbedded true def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
def
/FontBBox {-40 -250 1009 750} def
end
systemdict begin
dup /Private
13 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-22 -0 683 705 431 448 666 677] def
/OtherBlues [-206 -194] def
/BlueScale 0.04379 def
/StdHW [31] def
/StdVW [69] def
/StemSnapH [22 31] def
/StemSnapV [69 89] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs [{ct_CffDict/F0Subr get exec} {ct_CffDict/F1Subr get exec}
{ct_CffDict/F2Subr get exec} {ct_CffDict/HSSubr get exec}] def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
1 dict dup begin
/.notdef <1C60D8A8C9B08A959E2F69652E8B8F> |-
end put
end
dup /FontName get exch definefont pop
end
end
-%ADOEndSubsetFont
-[ 1 /dotlessi/caron 11 /ff/fi/fl/ffi
32 /space/exclam/quotedbl/numbersign/dollar/percent
/ampersand/quoteright/parenleft/parenright/asterisk/plus
/comma/hyphen/period/slash/zero/one
/two/three/four/five/six/seven
/eight/nine/colon/semicolon/less/equal
/greater/question/at/A/B/C
/D/E/F/G/H/I
/J/K/L/M/N/O
/P/Q/R/S/T/U
/V/W/X/Y/Z/bracketleft
/backslash/bracketright/circumflex/underscore/quoteleft/a
/b/c/d/e/f/g
/h/i/j/k/l/m
/n/o/p/q/r/s
/t/u/v/w/x/y
/z/endash/bar/braceright/tilde/bullet
/Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis
/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft
/OE/bullet/Zcaron/bullet/bullet/quoteleft
/quoteright/quotedblleft/quotedblright/bullet/endash/emdash
/tilde/trademark/scaron/guilsinglright/oe/bullet
/zcaron/Ydieresis/space/exclamdown/cent/sterling
/currency/yen/brokenbar/section/dieresis/copyright
/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron
/degree/plusminus/twosuperior/threesuperior/acute/mu
/paragraph/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright
/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute
/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute
/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute
/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave
/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls
/agrave/aacute/acircumflex/atilde/adieresis/aring
/ae/ccedilla/egrave/eacute/ecircumflex/edieresis
/igrave/iacute/icircumflex/idieresis/eth/ntilde
/ograve/oacute/ocircumflex/otilde/odieresis/divide
/oslash/ugrave/uacute/ucircumflex/udieresis/yacute
/thorn/ydieresis
/N41 (EWLBAA+CMR10) -1 TZ
134.592 364.328 m
%ADOBeginSubsetFont: EWLBAA+CMR10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/EWLBAA+CMR10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/zero <1C60D8A8C9B7A73D3B2D32309B1F5D5A32FC3614834F8BC61B6EB92C1
2484BD76628737DA40CF9DA1C97CCDAFB1D1B732C642F74A7C41B7D3AC6DAF8D
1E760692B6EBD2417EF1893A4AA0B1CF049D4C54D830CEC073A9153D451FAD42
892B0930AEE4FE18588336BFDAD60D8A4F4CFFED76F103FB9BBD8A33EFBA3F18
232B88D88FE54E17260FA3E2CC29DEC0CB72B88DC816FF5> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/EWLBAA+CMR10 findfont /Encoding get
dup 48 /zero put
pop
end
-%ADOEndSubsetFont
-/N41 10.6637 Tf
(0) show
%ADOBeginSubsetFont: REAAAA+CMMI10 Initial
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
12 dict dup begin
/FontType 1 def
/FontName /REAAAA+CMMI10 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/ItalicAngle 0 def
/WasEmbedded true def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
def
/FontBBox {-13 -250 1044 750} def
end
systemdict begin
dup /Private
12 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-22 -0 683 705 431 442 453 466] def
/OtherBlues [-205 -194] def
/BlueScale 0.04379 def
/StdHW [31] def
/StdVW [72] def
/StemSnapH [25 31] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs [{ct_CffDict/F0Subr get exec} {ct_CffDict/F1Subr get exec}
{ct_CffDict/F2Subr get exec} {ct_CffDict/HSSubr get exec}] def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
1 dict dup begin
/.notdef <1C60D8A8C9B08A959E2F69652E8B8F> |-
end put
end
dup /FontName get exch definefont pop
end
end
-%ADOEndSubsetFont
-[ 1 /dotlessi/caron 11 /alpha/beta 14 /delta 21 /lambda
/mu 24 /xi/pi 27 /sigma 30 /phi/chi
/psi/exclam/epsilon/theta1/dollar/percent
/ampersand/phi1/parenleft/parenright/asterisk/plus
/comma/hyphen/period/slash/zero/one
/two/three/four/five/six/seven
/eight/nine/period/comma/less/slash
/greater/question/at/A/B/C
/D/E/F/G/H/I
/J/K/L/M/N/O
/P/Q/R/S/T/U
/V/W/X/Y/Z/bracketleft
/backslash/bracketright/asciicircum/underscore/grave/a
/b/c/d/e/f/g
/h/i/j/k/l/m
/n/o/p/q/r/s
/t/u/v/w/x/y
/z/braceleft/bar/braceright/asciitilde/bullet
/Euro/bullet/quotesinglbase/florin/quotedblbase/ellipsis
/dagger/daggerdbl/circumflex/perthousand/Scaron/guilsinglleft
/OE/bullet/Zcaron/bullet/bullet/quoteleft
/quoteright/quotedblleft/quotedblright/bullet/endash/emdash
/tilde/trademark/scaron/guilsinglright/oe/bullet
/zcaron/Ydieresis/space/exclamdown/cent/sterling
/currency/yen/brokenbar/section/dieresis/copyright
/ordfeminine/guillemotleft/logicalnot/hyphen/registered/macron
/degree/plusminus/twosuperior/threesuperior/acute/mu
/paragraph/periodcentered/cedilla/onesuperior/ordmasculine/guillemotright
/onequarter/onehalf/threequarters/questiondown/Agrave/Aacute
/Acircumflex/Atilde/Adieresis/Aring/AE/Ccedilla
/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute
/Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute
/Ocircumflex/Otilde/Odieresis/multiply/Oslash/Ugrave
/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls
/agrave/aacute/acircumflex/atilde/adieresis/aring
/ae/ccedilla/egrave/eacute/ecircumflex/edieresis
/igrave/iacute/icircumflex/idieresis/eth/ntilde
/ograve/oacute/ocircumflex/otilde/odieresis/divide
/oslash/ugrave/uacute/ucircumflex/udieresis/yacute
/thorn/ydieresis
/N21 (REAAAA+CMMI10) -1 TZ
139.87 364.328 m
%ADOBeginSubsetFont: REAAAA+CMMI10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/REAAAA+CMMI10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/period <1C60D8A8C9B08A9570810981675968F2C907C696DFE9BE69433F613
9DF6C45B8165ACC43B6E0B309859F778ABCF0> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/REAAAA+CMMI10 findfont /Encoding get
dup 58 /period put
pop
end
-%ADOEndSubsetFont
-/N21 10.6637 Tf
(:) show
142.802 364.328 m
%ADOBeginSubsetFont: EWLBAA+CMR10 AddGlyphs
-ct_CffDict begin
-%ADOt1write: (1.0.24)
%%Copyright: Copyright 2006 Adobe System Incorporated. All rights reserved.
systemdict begin
/EWLBAA+CMR10 findfont dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/five <1C60D8A8C9B7A73D3B2B97F19D54A2E00E7DDA8E72064220CB7581D13
CEDF071F346430E40993A6297E3A2A6D6093205222D977AC7F7B65CC82B221D9
B18ADEA5D4AF0261ABF060D3E283C7B3B5EB39FF499721FD51203AE59E3BEA25
7DFD3E472FEF67221488EC8D1F355E2FAD057CA44A8B4BAD6C6C719C164907CB
F9A6CC770DB0C7E58A37D2385E23F576BCFF94FFBFD8ADD4C5E6C32CD83ACEB7
7472D00FE1A4DC66393A99AC6BBD252B04C98B710149EA42B66ACE89D4FC4393
F3A09165DF477ABCB0E8A8DB21E4278CA219EBCC9B067F92619913BDBD1EF3C9
A> |-
systemdict /gcheck known {setglobal} if end {end} if
end
/EWLBAA+CMR10 findfont /Encoding get
dup 53 /five put
pop
end
-%ADOEndSubsetFont
-/N41 10.6637 Tf
(500)
[33.946 37.2557 5.27853 ] pdfxs
219.283 364.328 m
/N21 10.6637 Tf
(:) show
222.215 364.328 m
/N41 10.6637 Tf
(5) show
111.456 372.966 m
/N33 10.6637 Tf
(\000) show
119.785 372.966 m
/N41 10.6637 Tf
(0) show
125.063 372.966 m
/N21 10.6637 Tf
(:) show
127.996 372.966 m
/N41 10.6637 Tf
(5) show
129.618 413.96 m
(0) show
121.251 455.341 m
(0) show
126.529 455.341 m
/N21 10.6637 Tf
(:) show
129.462 455.341 m
/N41 10.6637 Tf
(5) show
Q
q
n
2449.61 4685.86 m
3581.89 4685.86 l
3581.89 3620.37 l
2449.61 3620.37 l
h
W
n
4.88755 w
1 j
[4.88755 39.1004 ] 0.0 d
3.25837 w
[] 0.0 d
4.88755 w
Q
q
n
2575.06 4646.76 m
3520.8 4646.76 l
3520.8 3701.02 l
2575.06 3701.02 l
h
W
n
Q
q
n
0.0 0.0 m
W
n
q
951.313 0.0 0.0 -4.69205 1497.72 4059.77 cm
Q
Q
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
Q
q
n
3703.6 4688.29 m
4835.88 4688.29 l
4835.88 3620.36 l
3703.6 3620.36 l
h
W
n
4.88755 w
1 j
[4.88755 39.1004 ] 0.0 d
3.25837 w
[] 0.0 d
4.88755 w
Q
q
n
3829.05 4649.19 m
4725.1 4649.19 l
4725.1 3701.01 l
3829.05 3701.01 l
h
W
n
Q
q
n
0.0 0.0 m
W
n
q
951.313 0.0 0.0 -4.69205 2750.54 4059.77 cm
Q
Q
q
10.0 0.0 0.0 10.0 0.0 0.0 cm
Q
Q
Q
/EWLBAA+CMR10 /Font _pdfUndefineResource
/N41 /Font _pdfUndefineResource
/REAAAA+CMMI10 /Font _pdfUndefineResource
/N21 /Font _pdfUndefineResource
/XUVAAA+CMSY10 /Font _pdfUndefineResource
/N33 /Font _pdfUndefineResource
[/EMC PDFMark5
PDFVars/TermAll get exec end end
%%PageTrailer
%%Trailer
%%EOF
\ No newline at end of file
diff --git a/doc/tutorial/images/polar_grid.pdf b/doc/tutorial/images/polar_grid.pdf
deleted file mode 100644
index 5a9bb2d..0000000
Binary files a/doc/tutorial/images/polar_grid.pdf and /dev/null differ
diff --git a/doc/tutorial/images/sparse2D_0.eps b/doc/tutorial/images/sparse2D_0.eps
deleted file mode 100755
index 5abf7c1..0000000
--- a/doc/tutorial/images/sparse2D_0.eps
+++ /dev/null
@@ -1,111 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Title: sparse2D_0.eps
-%%Creator: fig2dev Version 3.2 Patchlevel 3d
-%%CreationDate: Mon Jun 21 17:56:59 2004
-%%For: mfenn at malleefowl (Markus Fenn)
-%%BoundingBox: 0 0 35 35
-%%Magnification: 0.5000
-%%EndComments
-/$F2psDict 200 dict def
-$F2psDict begin
-$F2psDict /mtrx matrix put
-/col-1 {0 setgray} bind def
-/col0 {0.000 0.000 0.000 srgb} bind def
-/col1 {0.000 0.000 1.000 srgb} bind def
-/col2 {0.000 1.000 0.000 srgb} bind def
-/col3 {0.000 1.000 1.000 srgb} bind def
-/col4 {1.000 0.000 0.000 srgb} bind def
-/col5 {1.000 0.000 1.000 srgb} bind def
-/col6 {1.000 1.000 0.000 srgb} bind def
-/col7 {1.000 1.000 1.000 srgb} bind def
-/col8 {0.000 0.000 0.560 srgb} bind def
-/col9 {0.000 0.000 0.690 srgb} bind def
-/col10 {0.000 0.000 0.820 srgb} bind def
-/col11 {0.530 0.810 1.000 srgb} bind def
-/col12 {0.000 0.560 0.000 srgb} bind def
-/col13 {0.000 0.690 0.000 srgb} bind def
-/col14 {0.000 0.820 0.000 srgb} bind def
-/col15 {0.000 0.560 0.560 srgb} bind def
-/col16 {0.000 0.690 0.690 srgb} bind def
-/col17 {0.000 0.820 0.820 srgb} bind def
-/col18 {0.560 0.000 0.000 srgb} bind def
-/col19 {0.690 0.000 0.000 srgb} bind def
-/col20 {0.820 0.000 0.000 srgb} bind def
-/col21 {0.560 0.000 0.560 srgb} bind def
-/col22 {0.690 0.000 0.690 srgb} bind def
-/col23 {0.820 0.000 0.820 srgb} bind def
-/col24 {0.500 0.190 0.000 srgb} bind def
-/col25 {0.630 0.250 0.000 srgb} bind def
-/col26 {0.750 0.380 0.000 srgb} bind def
-/col27 {1.000 0.500 0.500 srgb} bind def
-/col28 {1.000 0.630 0.630 srgb} bind def
-/col29 {1.000 0.750 0.750 srgb} bind def
-/col30 {1.000 0.880 0.880 srgb} bind def
-/col31 {1.000 0.840 0.000 srgb} bind def
-/col32 {0.557 0.557 0.557 srgb} bind def
-
-end
-save
-newpath 0 35 moveto 0 0 lineto 35 0 lineto 35 35 lineto closepath clip newpath
--11.0 54.2 translate
-1 -1 scale
-
-/cp {closepath} bind def
-/ef {eofill} bind def
-/gr {grestore} bind def
-/gs {gsave} bind def
-/sa {save} bind def
-/rs {restore} bind def
-/l {lineto} bind def
-/m {moveto} bind def
-/rm {rmoveto} bind def
-/n {newpath} bind def
-/s {stroke} bind def
-/sh {show} bind def
-/slc {setlinecap} bind def
-/slj {setlinejoin} bind def
-/slw {setlinewidth} bind def
-/srgb {setrgbcolor} bind def
-/rot {rotate} bind def
-/sc {scale} bind def
-/sd {setdash} bind def
-/ff {findfont} bind def
-/sf {setfont} bind def
-/scf {scalefont} bind def
-/sw {stringwidth} bind def
-/tr {translate} bind def
-/tnt {dup dup currentrgbcolor
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
- bind def
-/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
- 4 -2 roll mul srgb} bind def
-/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
-/$F2psEnd {$F2psEnteredState restore end} def
-
-$F2psBegin
-10 setmiterlimit
- 0.03150 0.03150 sc
-%
-% Fig objects follow
-%
-% Polyline
-1 slj
-7.500 slw
-n 720 990 m 1080 990 l 1080 1350 l 720 1350 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 360 990 m 540 990 l 540 1170 l 360 1170 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 900 630 m 1080 630 l 1080 810 l 900 810 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 1260 990 m 1440 990 l 1440 1170 l 1260 1170 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 900 1530 m 1080 1530 l 1080 1710 l 900 1710 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-$F2psEnd
-rs
diff --git a/doc/tutorial/images/sparse2D_0.pdf b/doc/tutorial/images/sparse2D_0.pdf
deleted file mode 100644
index f37a289..0000000
Binary files a/doc/tutorial/images/sparse2D_0.pdf and /dev/null differ
diff --git a/doc/tutorial/images/sparse2D_1.eps b/doc/tutorial/images/sparse2D_1.eps
deleted file mode 100755
index fe61390..0000000
--- a/doc/tutorial/images/sparse2D_1.eps
+++ /dev/null
@@ -1,123 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Title: sparse2D_1.eps
-%%Creator: fig2dev Version 3.2 Patchlevel 3d
-%%CreationDate: Mon Jun 21 18:37:45 2004
-%%For: mfenn at malleefowl (Markus Fenn)
-%%BoundingBox: 0 0 69 69
-%%Magnification: 0.5000
-%%EndComments
-/$F2psDict 200 dict def
-$F2psDict begin
-$F2psDict /mtrx matrix put
-/col-1 {0 setgray} bind def
-/col0 {0.000 0.000 0.000 srgb} bind def
-/col1 {0.000 0.000 1.000 srgb} bind def
-/col2 {0.000 1.000 0.000 srgb} bind def
-/col3 {0.000 1.000 1.000 srgb} bind def
-/col4 {1.000 0.000 0.000 srgb} bind def
-/col5 {1.000 0.000 1.000 srgb} bind def
-/col6 {1.000 1.000 0.000 srgb} bind def
-/col7 {1.000 1.000 1.000 srgb} bind def
-/col8 {0.000 0.000 0.560 srgb} bind def
-/col9 {0.000 0.000 0.690 srgb} bind def
-/col10 {0.000 0.000 0.820 srgb} bind def
-/col11 {0.530 0.810 1.000 srgb} bind def
-/col12 {0.000 0.560 0.000 srgb} bind def
-/col13 {0.000 0.690 0.000 srgb} bind def
-/col14 {0.000 0.820 0.000 srgb} bind def
-/col15 {0.000 0.560 0.560 srgb} bind def
-/col16 {0.000 0.690 0.690 srgb} bind def
-/col17 {0.000 0.820 0.820 srgb} bind def
-/col18 {0.560 0.000 0.000 srgb} bind def
-/col19 {0.690 0.000 0.000 srgb} bind def
-/col20 {0.820 0.000 0.000 srgb} bind def
-/col21 {0.560 0.000 0.560 srgb} bind def
-/col22 {0.690 0.000 0.690 srgb} bind def
-/col23 {0.820 0.000 0.820 srgb} bind def
-/col24 {0.500 0.190 0.000 srgb} bind def
-/col25 {0.630 0.250 0.000 srgb} bind def
-/col26 {0.750 0.380 0.000 srgb} bind def
-/col27 {1.000 0.500 0.500 srgb} bind def
-/col28 {1.000 0.630 0.630 srgb} bind def
-/col29 {1.000 0.750 0.750 srgb} bind def
-/col30 {1.000 0.880 0.880 srgb} bind def
-/col31 {1.000 0.840 0.000 srgb} bind def
-/col32 {0.557 0.557 0.557 srgb} bind def
-
-end
-save
-newpath 0 69 moveto 0 0 lineto 69 0 lineto 69 69 lineto closepath clip newpath
--76.2 79.7 translate
-1 -1 scale
-
-/cp {closepath} bind def
-/ef {eofill} bind def
-/gr {grestore} bind def
-/gs {gsave} bind def
-/sa {save} bind def
-/rs {restore} bind def
-/l {lineto} bind def
-/m {moveto} bind def
-/rm {rmoveto} bind def
-/n {newpath} bind def
-/s {stroke} bind def
-/sh {show} bind def
-/slc {setlinecap} bind def
-/slj {setlinejoin} bind def
-/slw {setlinewidth} bind def
-/srgb {setrgbcolor} bind def
-/rot {rotate} bind def
-/sc {scale} bind def
-/sd {setdash} bind def
-/ff {findfont} bind def
-/sf {setfont} bind def
-/scf {scalefont} bind def
-/sw {stringwidth} bind def
-/tr {translate} bind def
-/tnt {dup dup currentrgbcolor
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
- bind def
-/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
- 4 -2 roll mul srgb} bind def
-/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
-/$F2psEnd {$F2psEnteredState restore end} def
-
-$F2psBegin
-10 setmiterlimit
- 0.03150 0.03150 sc
-%
-% Fig objects follow
-%
-% Polyline
-1 slj
-7.500 slw
-n 3510 360 m 3690 360 l 3690 720 l 3510 720 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 3330 900 m 3690 900 l 3690 1080 l 3330 1080 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 2970 1260 m 3150 1260 l 3150 1620 l 2970 1620 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 3330 1800 m 3690 1800 l 3690 1980 l 3330 1980 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 3330 1260 m 3690 1260 l 3690 1620 l 3330 1620 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 3870 1260 m 4050 1260 l 4050 1620 l 3870 1620 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 3510 2160 m 3690 2160 l 3690 2520 l 3510 2520 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 2430 1260 m 2790 1260 l 2790 1440 l 2430 1440 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 4230 1260 m 4590 1260 l 4590 1440 l 4230 1440 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-$F2psEnd
-rs
diff --git a/doc/tutorial/images/sparse2D_1.pdf b/doc/tutorial/images/sparse2D_1.pdf
deleted file mode 100644
index c456d8f..0000000
Binary files a/doc/tutorial/images/sparse2D_1.pdf and /dev/null differ
diff --git a/doc/tutorial/images/sparse2D_2.eps b/doc/tutorial/images/sparse2D_2.eps
deleted file mode 100755
index f219b45..0000000
--- a/doc/tutorial/images/sparse2D_2.eps
+++ /dev/null
@@ -1,123 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Title: sparse2D_2.eps
-%%Creator: fig2dev Version 3.2 Patchlevel 3d
-%%CreationDate: Mon Jun 21 18:45:03 2004
-%%For: mfenn at malleefowl (Markus Fenn)
-%%BoundingBox: 0 0 115 115
-%%Magnification: 0.5000
-%%EndComments
-/$F2psDict 200 dict def
-$F2psDict begin
-$F2psDict /mtrx matrix put
-/col-1 {0 setgray} bind def
-/col0 {0.000 0.000 0.000 srgb} bind def
-/col1 {0.000 0.000 1.000 srgb} bind def
-/col2 {0.000 1.000 0.000 srgb} bind def
-/col3 {0.000 1.000 1.000 srgb} bind def
-/col4 {1.000 0.000 0.000 srgb} bind def
-/col5 {1.000 0.000 1.000 srgb} bind def
-/col6 {1.000 1.000 0.000 srgb} bind def
-/col7 {1.000 1.000 1.000 srgb} bind def
-/col8 {0.000 0.000 0.560 srgb} bind def
-/col9 {0.000 0.000 0.690 srgb} bind def
-/col10 {0.000 0.000 0.820 srgb} bind def
-/col11 {0.530 0.810 1.000 srgb} bind def
-/col12 {0.000 0.560 0.000 srgb} bind def
-/col13 {0.000 0.690 0.000 srgb} bind def
-/col14 {0.000 0.820 0.000 srgb} bind def
-/col15 {0.000 0.560 0.560 srgb} bind def
-/col16 {0.000 0.690 0.690 srgb} bind def
-/col17 {0.000 0.820 0.820 srgb} bind def
-/col18 {0.560 0.000 0.000 srgb} bind def
-/col19 {0.690 0.000 0.000 srgb} bind def
-/col20 {0.820 0.000 0.000 srgb} bind def
-/col21 {0.560 0.000 0.560 srgb} bind def
-/col22 {0.690 0.000 0.690 srgb} bind def
-/col23 {0.820 0.000 0.820 srgb} bind def
-/col24 {0.500 0.190 0.000 srgb} bind def
-/col25 {0.630 0.250 0.000 srgb} bind def
-/col26 {0.750 0.380 0.000 srgb} bind def
-/col27 {1.000 0.500 0.500 srgb} bind def
-/col28 {1.000 0.630 0.630 srgb} bind def
-/col29 {1.000 0.750 0.750 srgb} bind def
-/col30 {1.000 0.880 0.880 srgb} bind def
-/col31 {1.000 0.840 0.000 srgb} bind def
-/col32 {0.557 0.557 0.557 srgb} bind def
-
-end
-save
-newpath 0 115 moveto 0 0 lineto 115 0 lineto 115 115 lineto closepath clip newpath
--5.3 241.3 translate
-1 -1 scale
-
-/cp {closepath} bind def
-/ef {eofill} bind def
-/gr {grestore} bind def
-/gs {gsave} bind def
-/sa {save} bind def
-/rs {restore} bind def
-/l {lineto} bind def
-/m {moveto} bind def
-/rm {rmoveto} bind def
-/n {newpath} bind def
-/s {stroke} bind def
-/sh {show} bind def
-/slc {setlinecap} bind def
-/slj {setlinejoin} bind def
-/slw {setlinewidth} bind def
-/srgb {setrgbcolor} bind def
-/rot {rotate} bind def
-/sc {scale} bind def
-/sd {setdash} bind def
-/ff {findfont} bind def
-/sf {setfont} bind def
-/scf {scalefont} bind def
-/sw {stringwidth} bind def
-/tr {translate} bind def
-/tnt {dup dup currentrgbcolor
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
- bind def
-/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
- 4 -2 roll mul srgb} bind def
-/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
-/$F2psEnd {$F2psEnteredState restore end} def
-
-$F2psBegin
-10 setmiterlimit
- 0.03150 0.03150 sc
-%
-% Fig objects follow
-%
-% Polyline
-1 slj
-7.500 slw
-n 2340 5490 m 1620 5490 l 1620 6210 l 2340 6210 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 1080 5670 m 1440 5670 l 1440 6030 l 1080 6030 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 180 5850 m 180 5670 l 900 5670 l 900 5850 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 2520 5670 m 2880 5670 l 2880 6030 l 2520 6030 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 3060 5850 m 3060 5670 l 3780 5670 l 3780 5850 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 1800 4950 m 2160 4950 l 2160 5310 l 1800 5310 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 1980 4050 m 2160 4050 l 2160 4770 l 1980 4770 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 1800 6390 m 2160 6390 l 2160 6750 l 1800 6750 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 1980 6930 m 2160 6930 l 2160 7650 l 1980 7650 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-$F2psEnd
-rs
diff --git a/doc/tutorial/images/sparse2D_2.pdf b/doc/tutorial/images/sparse2D_2.pdf
deleted file mode 100644
index 3d0f243..0000000
Binary files a/doc/tutorial/images/sparse2D_2.pdf and /dev/null differ
diff --git a/doc/tutorial/images/sparse2D_3.eps b/doc/tutorial/images/sparse2D_3.eps
deleted file mode 100755
index 0df3b19..0000000
--- a/doc/tutorial/images/sparse2D_3.eps
+++ /dev/null
@@ -1,135 +0,0 @@
-%!PS-Adobe-2.0 EPSF-2.0
-%%Title: sparse2D_3.eps
-%%Creator: fig2dev Version 3.2 Patchlevel 3d
-%%CreationDate: Mon Jun 21 18:45:32 2004
-%%For: mfenn at malleefowl (Markus Fenn)
-%%BoundingBox: 0 0 217 217
-%%Magnification: 0.5000
-%%EndComments
-/$F2psDict 200 dict def
-$F2psDict begin
-$F2psDict /mtrx matrix put
-/col-1 {0 setgray} bind def
-/col0 {0.000 0.000 0.000 srgb} bind def
-/col1 {0.000 0.000 1.000 srgb} bind def
-/col2 {0.000 1.000 0.000 srgb} bind def
-/col3 {0.000 1.000 1.000 srgb} bind def
-/col4 {1.000 0.000 0.000 srgb} bind def
-/col5 {1.000 0.000 1.000 srgb} bind def
-/col6 {1.000 1.000 0.000 srgb} bind def
-/col7 {1.000 1.000 1.000 srgb} bind def
-/col8 {0.000 0.000 0.560 srgb} bind def
-/col9 {0.000 0.000 0.690 srgb} bind def
-/col10 {0.000 0.000 0.820 srgb} bind def
-/col11 {0.530 0.810 1.000 srgb} bind def
-/col12 {0.000 0.560 0.000 srgb} bind def
-/col13 {0.000 0.690 0.000 srgb} bind def
-/col14 {0.000 0.820 0.000 srgb} bind def
-/col15 {0.000 0.560 0.560 srgb} bind def
-/col16 {0.000 0.690 0.690 srgb} bind def
-/col17 {0.000 0.820 0.820 srgb} bind def
-/col18 {0.560 0.000 0.000 srgb} bind def
-/col19 {0.690 0.000 0.000 srgb} bind def
-/col20 {0.820 0.000 0.000 srgb} bind def
-/col21 {0.560 0.000 0.560 srgb} bind def
-/col22 {0.690 0.000 0.690 srgb} bind def
-/col23 {0.820 0.000 0.820 srgb} bind def
-/col24 {0.500 0.190 0.000 srgb} bind def
-/col25 {0.630 0.250 0.000 srgb} bind def
-/col26 {0.750 0.380 0.000 srgb} bind def
-/col27 {1.000 0.500 0.500 srgb} bind def
-/col28 {1.000 0.630 0.630 srgb} bind def
-/col29 {1.000 0.750 0.750 srgb} bind def
-/col30 {1.000 0.880 0.880 srgb} bind def
-/col31 {1.000 0.840 0.000 srgb} bind def
-/col32 {0.557 0.557 0.557 srgb} bind def
-
-end
-save
-newpath 0 217 moveto 0 0 lineto 217 0 lineto 217 217 lineto closepath clip newpath
--59.1 222.9 translate
-1 -1 scale
-
-/cp {closepath} bind def
-/ef {eofill} bind def
-/gr {grestore} bind def
-/gs {gsave} bind def
-/sa {save} bind def
-/rs {restore} bind def
-/l {lineto} bind def
-/m {moveto} bind def
-/rm {rmoveto} bind def
-/n {newpath} bind def
-/s {stroke} bind def
-/sh {show} bind def
-/slc {setlinecap} bind def
-/slj {setlinejoin} bind def
-/slw {setlinewidth} bind def
-/srgb {setrgbcolor} bind def
-/rot {rotate} bind def
-/sc {scale} bind def
-/sd {setdash} bind def
-/ff {findfont} bind def
-/sf {setfont} bind def
-/scf {scalefont} bind def
-/sw {stringwidth} bind def
-/tr {translate} bind def
-/tnt {dup dup currentrgbcolor
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add
- 4 -2 roll dup 1 exch sub 3 -1 roll mul add srgb}
- bind def
-/shd {dup dup currentrgbcolor 4 -2 roll mul 4 -2 roll mul
- 4 -2 roll mul srgb} bind def
-/$F2psBegin {$F2psDict begin /$F2psEnteredState save def} def
-/$F2psEnd {$F2psEnteredState restore end} def
-
-$F2psBegin
-10 setmiterlimit
- 0.03150 0.03150 sc
-%
-% Fig objects follow
-%
-% Polyline
-1 slj
-7.500 slw
-n 4770 3285 m 4410 3285 l 4410 4005 l 4770 4005 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 4950 4185 m 4950 4545 l 5670 4545 l 5670 4185 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 6210 3285 m 5850 3285 l 5850 4005 l 6210 4005 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 4950 2745 m 4950 3105 l 5670 3105 l 5670 2745 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 3510 3465 m 3510 3825 l 4230 3825 l 4230 3465 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 3330 3465 m 3330 3645 l 1890 3645 l 1890 3465 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 6390 3465 m 6390 3825 l 7110 3825 l 7110 3465 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 7290 3645 m 7290 3465 l 8730 3465 l 8730 3645 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 5490 1845 m 5130 1845 l 5130 2565 l 5490 2565 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 5310 225 m 5490 225 l 5490 1665 l 5310 1665 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 5490 4725 m 5130 4725 l 5130 5445 l 5490 5445 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 5310 5625 m 5490 5625 l 5490 7065 l 5310 7065 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-% Polyline
-n 5670 3285 m 4950 3285 l 4950 4005 l 5670 4005 l
- cp gs col7 1.00 shd ef gr gs col0 s gr
-$F2psEnd
-rs
diff --git a/doc/tutorial/images/sparse2D_3.pdf b/doc/tutorial/images/sparse2D_3.pdf
deleted file mode 100644
index 9ecaa27..0000000
Binary files a/doc/tutorial/images/sparse2D_3.pdf and /dev/null differ
diff --git a/doc/tutorial/images/sphere.eps b/doc/tutorial/images/sphere.eps
deleted file mode 100644
index 02701e9..0000000
--- a/doc/tutorial/images/sphere.eps
+++ /dev/null
@@ -1,48 +0,0 @@
-%!PS-Adobe-3.1 EPSF-3.0
%%Title: sphere.pdf
%%Creator: Adobe Illustrator(R) 11
%%AI8_CreatorVersion: 11.0.0
%AI9_PrintingDataBegin
%%For: Holden Caulfield
%%CreationDate: 7/12/05
%%BoundingBox: 0 0 344 325
%%HiResBoundingBox: 0 0 344 325
%%CropBox: 0 0 344 325
%%LanguageLevel: 2
%%DocumentData: Clean7Bit
%%Pages: 1
%%DocumentNeededResources:
%%DocumentSuppliedResources: procset Adobe_AGM_Image (1.0 0)
%%+ procset Adobe_CoolType_Utility_T42 (1.0 0)
%%+ procset Adobe_CoolType_Utility_MAKEOCF (1.19 0)
%%+ procset Adobe_CoolType_Core (2.23 0)
%%+ procset Adobe_AGM_Core (2.0 0)
%%+ procset Adobe_AGM_Utils (1.0 0)
%%DocumentFonts:
%%DocumentNeededFonts:
%%DocumentNeededFeatures:
%%DocumentSuppliedFeatures:
%%DocumentCustomColors:
%%CMYKCustomColor:
%%RGBCustomColor:
%ADO_ContainsXMP: MainFirst
%AI7_Thumbnail: 128 124 8
%%BeginData: 5318 Hex Bytes
%0000330000660000990000CC0033000033330033660033990033CC0033FF
%0066000066330066660066990066CC0066FF009900009933009966009999
%0099CC0099FF00CC0000CC3300CC6600CC9900CCCC00CCFF00FF3300FF66
%00FF9900FFCC3300003300333300663300993300CC3300FF333300333333
%3333663333993333CC3333FF3366003366333366663366993366CC3366FF
%3399003399333399663399993399CC3399FF33CC0033CC3333CC6633CC99
%33CCCC33CCFF33FF0033FF3333FF6633FF9933FFCC33FFFF660000660033
%6600666600996600CC6600FF6633006633336633666633996633CC6633FF
%6666006666336666666666996666CC6666FF669900669933669966669999
%6699CC6699FF66CC0066CC3366CC6666CC9966CCCC66CCFF66FF0066FF33
%66FF6666FF9966FFCC66FFFF9900009900339900669900999900CC9900FF
%9933009933339933669933999933CC9933FF996600996633996666996699
%9966CC9966FF9999009999339999669999999999CC9999FF99CC0099CC33
%99CC6699CC9999CCCC99CCFF99FF0099FF3399FF6699FF9999FFCC99FFFF
%CC0000CC0033CC0066CC0099CC00CCCC00FFCC3300CC3333CC3366CC3399
%CC33CCCC33FFCC6600CC6633CC6666CC6699CC66CCCC66FFCC9900CC9933
%CC9966CC9999CC99CCCC99FFCCCC00CCCC33CCCC66CCCC99CCCCCCCCCCFF
%CCFF00CCFF33CCFF66CCFF99CCFFCCCCFFFFFF0033FF0066FF0099FF00CC
%FF3300FF3333FF3366FF3399FF33CCFF33FFFF6600FF6633FF6666FF6699
%FF66CCFF66FFFF9900FF9933FF9966FF9999FF99CCFF99FFFFCC00FFCC33
%FFCC66FFCC99FFCCCCFFCCFFFFFF33FFFF66FFFF99FFFFCC110000001100
%000011111111220000002200000022222222440000004400000044444444
%550000005500000055555555770000007700000077777777880000008800
%000088888888AA000000AA000000AAAAAAAABB000000BB000000BBBBBBBB
%DD000000DD000000DDDDDDDDEE000000EE000000EEEEEEEE0000000000FF
%00FF0000FFFFFF0000FF00FFFFFF00FFFFFF
%524C45FD3FFF527D7DA8FD7BFFA8527D5252FD7CFFA8FF7DA8FD7DFFA8FD
%7EFF5252FD7DFFA8F8F8FD7EFF7DA8FD7FFFA8FDFCFFFFFFFFA8FDFCFFFF
%FFFFA8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FDFCFFFFFFFF
%A8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FD
%7EFFA8A8FD79FFA8FFFD04A87DA87DA8A8FFA8FD70FFA8FFFFFFA8FD07FF
%A8FFA8FFA8FFA8FD68FFA8A8A8FFA8FD0FFFA8FFFFFFA8A8A8FD64FFA8FD
%15FFA8FD05FFA8FD61FFA8A8FD0FFFA8FD07FFA8FD07FFA8FD5CFFA8FD1B
%FFA8FD07FFA8FD5AFFA8FD09FFA8FD09FFA8FD08FFA8A8FD07FFA8FD58FF
%A8FD7EFFA8FD09FFA8FD15FFA8FD0BFFA8FD52FFA8FD21FFA8FFFFFFA87D
%FD06FFA8FD50FFA8FD0BFFA8FD0BFFA8FD0BFFA8FFFF7D52FD07FFA8FD4E
%FFA8FD0BFFA8FD1BFF7D7DFD55FFA8FD25FFA8FFFF7D7DFD54FFA8FD27FF
%7DFFA852FD53FFA8FD0DFFA8FD0DFFA8FD0BFFA8277DFD0BFFA8FD72FFA8
%FD72FFA8FFA8FD09FFA8FFA8FD0DFFA8FD46FFA8FD0DFFA8FD11FFA8FD07
%FFA8FD11FFA8FD28FFA8FFA8FD19FFA8FD0DFFA8FD0FFFA8FFFFFFA8FD05
%FFA8FFFFFFA8FD29FFA8FFA8FD0CFFA8FFA8FFA8FD15FFA8FD2DFFA8FD25
%FFA8FFA8FD12FFA8FFA8FFA8FD21FFA8FD0FFFA8FFA87DA8FD06FF7D52FF
%FFA8FD0EFFA8FD11FFA8FFA8FFA8FD1AFFA8FFA8FD0FFFA8FD20FFA827FD
%07FF52FFFFFFA8FD0FFFA8FD0DFFA8FFA8FFA8FD20FFA8FFA8FFA8FD09FF
%A8FD20FF7D2752A8FFA8FFA8FFA8A8FD04FFA8FD0DFFA8FD09FFA8FFA8FF
%A8FFA8FD28FFA8FFA8FD28FF7DA8FFFFFFA8FD07FFA8FD0FFFA8FD07FFA8
%FFA8FD30FFA8FFA8FFA8FFA8FD0FFFA8FD0FFFA8FD05FFA8FD09FFA8FD0F
%FFA8FFA8FFA8FFA8FD36FFA8FFA8FD1BFFA8FFFFFFA8FFA8FFFFFFA8FD19
%FFA8A8A8FD3DFFA8A8FFA8A8FD0AFFA8FFA8A8A8FFA8FFFFFFA8FFA8FFA8
%FFFFFFA8FFFFFFA8A8FFFFA8FFFFFFA8FFA8A8A8FFA8FD07FFA8FFA8FFFF
%FFA8FD3EFFA8FD0BFFA8FFFFFFA8FD25FFA8FFFFFFA8FD44FFA8FD09FFA8
%FFA8FFA8FD13FFA8FFFFFFA8FD0BFFA8FD05FFA8FFA8FD07FFA8FD44FFA8
%FD09FFA8FD13FFA8FD0CFFA8FFFFA8FD07FFA8FD05FFA8FD3CFFA8FFFFA8
%A8FD0BFFA8A8A8FFA8FD0DFFA8FFA8FD09FFA8FFFFFFA8FD0BFFA8FFA8FF
%A8A8FD4DFFA8FD05FFA8FD0BFFA8FD07FFA8FD17FFA8FD3CFFA8FD17FFA8
%FFA8A8A8FD0BFFA8FFFFFFA8FD05FFA8FD0FFFA8A8FD3DFFA8FD1FFFA8A8
%FFFFA8FD1DFFA8FD3CFFA8FD0FFFA8A8FD0FFFA87DFFA8FD0DFFA8FD0FFF
%A8A8FD3CFFA8A8FD1DFFA8A8A8FFFFA8A8FD1DFFA8FD3CFFA8A8A8FD15FF
%A8FD05FF7D7D527DFD04FFA8A8A8FFA8FD07FFA8FD0FFFA8FD40FFA8FD0D
%FFA8FFFFFFA8A8A8FD07FF277DFD08FFA8FD17FFA8FFA8FD3CFFA8FFFFFF
%A8FFA8FD09FFA8FFA8FFA8FFA8FFA8FFA8A8A8FFA87DA8FFA8FFA8FFA8FF
%A8A8A8FFA8FFA8FFA8FFA8FFA8FD09FFA8A8A8FFA8A8FD43FFA8FD07FFA8
%FD1DFFA8FD0DFFA8FFA8FD05FFA8FD3CFFA8FD07FFFD05A8FD15FFA8FD0B
%FFA8FFA8FFA8FFFFFFA8A87DA8A8FD07FFA8FD3EFFA8FFFFFFA8FFA8FFA8
%FFFFFFA8FFA8FFA8FFA8FD1CFFA87DA8A8FFA8FD05FFA8FFA8FD42FFA8A8
%A8FFA8FFA8FD0BFFA8FFA8A8A8FFA8A8A8FFA8FFA8FFA8FFA8FFA8FFA8FF
%A8A8A8FFA8A8A8FFA8FFA8FD0BFFA8FFA8FFA8FD3CFFA8A8A8FD1FFFA8FD
%1FFFFD05A8FD34FFA8FFA8A8A8FFFFFFA8FD0FFFA8FD0FFFA8FD0FFFA8FD
%0FFFA8FFA8A8A8FFA8FD2EFFA8FFA8FFA8FD35FFA8FD0FFFA8FD09FFA8FD
%26FFA8FFA8A8A8FFA8FD09FFA8FD1FFFA8FD0FFFA8FD0DFFA8FD0BFFA8FF
%A8FFA8FD1EFFA8FFA8FFA8FD0FFFA8FD2DFFA8FD1FFFA8FFA8FD14FFA8A8
%FFFFA8FFA8FFA8FD12FFA8FD0EFFA8FD1DFFA8FD0FFFA8FD13FFA8FFA8FF
%A8FFA8FD0CFFA82727FFA8FD45FFA8FD27FFA827F8FD06FF7D52A8FFFFA8
%2752A8FD19FFA8FD0DFFA8FD0FFFA8FD0DFFA8FD29FF27527DFF7D52A8FF
%7D52A87DFD1FFFA8FD0DFFA8FD4AFF7D52A87D7DA87D52FD1FFFA8A8FD29
%FFA8FD0DFFA8FD1FFF7DA87D27FFFFFFA8FD49FFA8FD0DFFA8FD23FF7DFD
%24FFA8FD0DFFA8FD0DFFA8FD0CFFA8FD0CFFA8FD4AFFA8FD27FFA8FD58FF
%A8FD19FFA8FD0BFFA8FD0CFFA8FD4DFFA8FD0BFFA8FD74FFA8FD17FFA8FD
%0BFFA8FD0BFFA8FD50FFA8FD21FFA8FD5EFFA8FD09FFA8FD0BFFA8FD09FF
%A8FD09FFA8FD56FFA8FD1DFFA8FD62FFA8A8A8FD07FFA8FD12FFA8FD08FF
%A8FD64FFA8FD19FFA8FD5EFFA8FD0FFFA8FD07FFA8FD05FFA8FFA8FD60FF
%A8FFA8FD05FFA8FD13FFA8FD66FFA8FFA8FD09FFA8FFFFFFA8FFFFFFA8FF
%A8A8A8FD6AFFA8FFA8FFA8FFFFFFA8FFFFFFA8FFA8FFA8FD74FFA8FFA8A8
%7DFD04A8FFA8FDF9FFA8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FDFCFFFFFFFF
%A8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FD
%FCFFFFFFFFA8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FDFCFFFFFFFFA8FDFCFF
%FD42FFFF
%%EndData
%%EndComments
%%BeginDefaults
%%ViewingOrientation: 1 0 0 1
%%EndDefaults
%%BeginProlog
%%BeginResource: procset Adobe_AGM_Utils 1.0 0
%%Version: 1.0 0
%%Copyright: Copyright (C) 2000-2003 Adobe Systems, Inc. All Rights Reserved.
systemdict /setpacking known
{
currentpacking
true setpacking
} if
userdict /Adobe_AGM_Utils 68 dict dup begin put
/bdf
{
bind def
} bind def
/nd{
null def
}bdf
/xdf
{
exch def
}bdf
/ldf
{
load def
}bdf
/ddf
{
put
}bdf
/xddf
{
3 -1 roll put
}bdf
/xpt
{
exch put
}bdf
/ndf
{
exch dup where{
pop pop pop
}{
xdf
}ifelse
}def
/cdndf
{
exch dup currentdict exch known{
pop pop
}{
exch def
}ifelse
}def
/bdict
{
mark
}bdf
/edict
{
counttomark 2 idiv dup dict begin {def} repeat pop currentdict end
}def
/ps_level
/languagelevel where{
pop systemdict /languagelevel get exec
}{
1
}ifelse
def
/level2
ps_level 2 ge
def
/level3
ps_level 3 ge
def
/ps_version
{version cvr} stopped {
-1
}if
def
/makereadonlyarray
{
/packedarray where{
pop packedarray
}{
array astore readonly
}ifelse
}bdf
/map_reserved_ink_name
{
dup type /stringtype eq{
dup /Red eq{
pop (_Red_)
}{
dup /Green eq{
pop (_Green_)
}{
dup /Blue eq{
pop (_Blue_)
}{
dup () cvn eq{
pop (Process)
}if
}ifelse
}ifelse
}ifelse
}if
}bdf
/AGMUTIL_GSTATE 22 dict def
/get_gstate
{
AGMUTIL_GSTATE begin
/AGMUTIL_GSTATE_clr_spc currentcolorspace def
/AGMUTIL_GSTATE_clr_indx 0 def
/AGMUTIL_GSTATE_clr_comps 12 array def
mark currentcolor counttomark
{AGMUTIL_GSTATE_clr_comps AGMUTIL_GSTATE_clr_indx 3 -1 roll put
/AGMUTIL_GSTATE_clr_indx AGMUTIL_GSTATE_clr_indx 1 add def} repeat pop
/AGMUTIL_GSTATE_fnt rootfont def
/AGMUTIL_GSTATE_lw currentlinewidth def
/AGMUTIL_GSTATE_lc currentlinecap def
/AGMUTIL_GSTATE_lj currentlinejoin def
/AGMUTIL_GSTATE_ml currentmiterlimit def
currentdash /AGMUTIL_GSTATE_do xdf /AGMUTIL_GSTATE_da xdf
/AGMUTIL_GSTATE_sa currentstrokeadjust def
/AGMUTIL_GSTATE_clr_rnd currentcolorrendering def
/AGMUTIL_GSTATE_op currentoverprint def
/AGMUTIL_GSTATE_bg currentblackgeneration cvlit def
/AGMUTIL_GSTATE_ucr currentundercolorremoval cvlit def
currentcolortransfer cvlit /AGMUTIL_GSTATE_gy_xfer xdf cvlit /AGMUTIL_GSTATE_b_xfer xdf
cvlit /AGMUTIL_GSTATE_g_xfer xdf cvlit /AGMUTIL_GSTATE_r_xfer xdf
/AGMUTIL_GSTATE_ht currenthalftone def
/AGMUTIL_GSTATE_flt currentflat def
end
}def
/set_gstate
{
AGMUTIL_GSTATE begin
AGMUTIL_GSTATE_clr_spc setcolorspace
AGMUTIL_GSTATE_clr_indx {AGMUTIL_GSTATE_clr_comps AGMUTIL_GSTATE_clr_indx 1 sub get
/AGMUTIL_GSTATE_clr_indx AGMUTIL_GSTATE_clr_indx 1 sub def} repeat setcolor
AGMUTIL_GSTATE_fnt setfont
AGMUTIL_GSTATE_lw setlinewidth
AGMUTIL_GSTATE_lc setlinecap
AGMUTIL_GSTATE_lj setlinejoin
AGMUTIL_GSTATE_ml setmiterlimit
AGMUTIL_GSTATE_da AGMUTIL_GSTATE_do setdash
AGMUTIL_GSTATE_sa setstrokeadjust
AGMUTIL_GSTATE_clr_rnd setcolorrendering
AGMUTIL_GSTATE_op setoverprint
AGMUTIL_GSTATE_bg cvx setblackgeneration
AGMUTIL_GSTATE_ucr cvx setundercolorremoval
AGMUTIL_GSTATE_r_xfer cvx AGMUTIL_GSTATE_g_xfer cvx AGMUTIL_GSTATE_b_xfer cvx
AGMUTIL_GSTATE_gy_xfer cvx setcolortransfer
AGMUTIL_GSTATE_ht /HalftoneType get dup 9 eq exch 100 eq or
{
currenthalftone /HalftoneType get AGMUTIL_GSTATE_ht /HalftoneType get ne
{
mark AGMUTIL_GSTATE_ht {sethalftone} stopped cleartomark
} if
}{
AGMUTIL_GSTATE_ht sethalftone
} ifelse
AGMUTIL_GSTATE_flt setflat
end
}def
/get_gstate_and_matrix
{
AGMUTIL_GSTATE begin
/AGMUTIL_GSTATE_ctm matrix currentmatrix def
end
get_gstate
}def
/set_gstate_and_matrix
{
set_gstate
AGMUTIL_GSTATE begin
AGMUTIL_GSTATE_ctm setmatrix
end
}def
/AGMUTIL_str256 256 string def
/AGMUTIL_src256 256 string def
/AGMUTIL_dst64 64 string def
/AGMUTIL_srcLen nd
/AGMUTIL_ndx nd
/agm_sethalftone
{
dup
begin
/_Data load
/Thresholds xdf
end
level3
{ sethalftone }{
dup /HalftoneType get 3 eq {
sethalftone
} {pop} ifelse
}ifelse
} def
/rdcmntline
{
currentfile AGMUTIL_str256 readline pop
(%) anchorsearch {pop} if
} bdf
/filter_cmyk
{
dup type /filetype ne{
exch () /SubFileDecode filter
}
{
exch pop
}
ifelse
[
exch
{
AGMUTIL_src256 readstring pop
dup length /AGMUTIL_srcLen exch def
/AGMUTIL_ndx 0 def
AGMCORE_plate_ndx 4 AGMUTIL_srcLen 1 sub{
1 index exch get
AGMUTIL_dst64 AGMUTIL_ndx 3 -1 roll put
/AGMUTIL_ndx AGMUTIL_ndx 1 add def
}for
pop
AGMUTIL_dst64 0 AGMUTIL_ndx getinterval
}
bind
/exec cvx
] cvx
} bdf
/filter_indexed_devn
{
cvi Names length mul names_index add Lookup exch get
} bdf
/filter_devn
{
4 dict begin
/srcStr xdf
/dstStr xdf
dup type /filetype ne{
0 () /SubFileDecode filter
}if
[
exch
[
/devicen_colorspace_dict /AGMCORE_gget cvx /begin cvx
currentdict /srcStr get /readstring cvx /pop cvx
/dup cvx /length cvx 0 /gt cvx [
Adobe_AGM_Utils /AGMUTIL_ndx 0 /ddf cvx
names_index Names length currentdict /srcStr get length 1 sub {
1 /index cvx /exch cvx /get cvx
currentdict /dstStr get /AGMUTIL_ndx /load cvx 3 -1 /roll cvx /put cvx
Adobe_AGM_Utils /AGMUTIL_ndx /AGMUTIL_ndx /load cvx 1 /add cvx /ddf cvx
} for
currentdict /dstStr get 0 /AGMUTIL_ndx /load cvx /getinterval cvx
] cvx /if cvx
/end cvx
] cvx
bind
/exec cvx
] cvx
end
} bdf
/AGMUTIL_imagefile nd
/read_image_file
{
AGMUTIL_imagefile 0 setfileposition
10 dict begin
/imageDict xdf
/imbufLen Width BitsPerComponent mul 7 add 8 idiv def
/imbufIdx 0 def
/origDataSource imageDict /DataSource get def
/origMultipleDataSources imageDict /MultipleDataSources get def
/origDecode imageDict /Decode get def
/dstDataStr imageDict /Width get colorSpaceElemCnt mul string def
/srcDataStrs [ imageDict begin
currentdict /MultipleDataSources known {MultipleDataSources {DataSource length}{1}ifelse}{1} ifelse
{
Width Decode length 2 div mul cvi string
} repeat
end ] def
imageDict /MultipleDataSources known {MultipleDataSources}{false} ifelse
{
/imbufCnt imageDict /DataSource get length def
/imbufs imbufCnt array def
0 1 imbufCnt 1 sub {
/imbufIdx xdf
imbufs imbufIdx imbufLen string put
imageDict /DataSource get imbufIdx [ AGMUTIL_imagefile imbufs imbufIdx get /readstring cvx /pop cvx ] cvx put
} for
DeviceN_PS2 {
imageDict begin
/DataSource [ DataSource /devn_sep_datasource cvx ] cvx def
/MultipleDataSources false def
/Decode [0 1] def
end
} if
}{
/imbuf imbufLen string def
Indexed_DeviceN level3 not and DeviceN_NoneName or {
imageDict begin
/DataSource [AGMUTIL_imagefile Decode BitsPerComponent false 1 /filter_indexed_devn load dstDataStr srcDataStrs devn_alt_datasource /exec cvx] cvx def
/Decode [0 1] def
end
}{
imageDict /DataSource {AGMUTIL_imagefile imbuf readstring pop} put
} ifelse
} ifelse
imageDict exch
load exec
imageDict /DataSource origDataSource put
imageDict /MultipleDataSources origMultipleDataSources put
imageDict /Decode origDecode put
end
} bdf
/write_image_file
{
begin
{ (AGMUTIL_imagefile) (w+) file } stopped{
false
}{
Adobe_AGM_Utils/AGMUTIL_imagefile xddf
2 dict begin
/imbufLen Width BitsPerComponent mul 7 add 8 idiv def
MultipleDataSources {DataSource 0 get}{DataSource}ifelse type /filetype eq {
/imbuf imbufLen string def
}if
1 1 Height {
pop
MultipleDataSources {
0 1 DataSource length 1 sub {
DataSource type dup
/arraytype eq {
pop DataSource exch get exec
}{
/filetype eq {
DataSource exch get imbuf readstring pop
}{
DataSource exch get
} ifelse
} ifelse
AGMUTIL_imagefile exch writestring
} for
}{
DataSource type dup
/arraytype eq {
pop DataSource exec
}{
/filetype eq {
DataSource imbuf readstring pop
}{
DataSource
} ifelse
} ifelse
AGMUTIL_imagefile exch writestring
} ifelse
}for
end
true
}ifelse
end
} bdf
/close_image_file
{
AGMUTIL_imagefile closefile (AGMUTIL_imagefile) deletefile
}def
statusdict /product known userdict /AGMP_current_show known not and{
/pstr statusdict /product get def
pstr (HP LaserJet 2200) eq
pstr (HP LaserJet 4000 Series) eq or
pstr (HP LaserJet 4050 Series ) eq or
pstr (HP LaserJet 8000 Series) eq or
pstr (HP LaserJet 8100 Series) eq or
pstr (HP LaserJet 8150 Series) eq or
pstr (HP LaserJet 5000 Series) eq or
pstr (HP LaserJet 5100 Series) eq or
pstr (HP Color LaserJet 4500) eq or
pstr (HP Color LaserJet 4600) eq or
pstr (HP LaserJet 5Si) eq or
pstr (HP LaserJet 1200 Series) eq or
pstr (HP LaserJet 1300 Series) eq or
pstr (HP LaserJet 4100 Series) eq or
{
userdict /AGMP_current_show /show load put
userdict /show {
currentcolorspace 0 get
/Pattern eq
{false charpath f}
{AGMP_current_show} ifelse
} put
}if
currentdict /pstr undef
} if
/consumeimagedata
{
begin
currentdict /MultipleDataSources known not
{/MultipleDataSources false def} if
MultipleDataSources
{
1 dict begin
/flushbuffer Width cvi string def
1 1 Height cvi
{
pop
0 1 DataSource length 1 sub
{
DataSource exch get
dup type dup
/filetype eq
{
exch flushbuffer readstring pop pop
}if
/arraytype eq
{
exec pop
}if
}for
}for
end
}
{
/DataSource load type dup
/filetype eq
{
1 dict begin
/flushbuffer Width Decode length 2 div mul cvi string def
1 1 Height { pop DataSource flushbuffer readstring pop pop} for
end
}if
/arraytype eq
{
1 1 Height { pop DataSource pop } for
}if
}ifelse
end
}bdf
/addprocs
{
2{/exec load}repeat
3 1 roll
[ 5 1 roll ] bind cvx
}def
/modify_halftone_xfer
{
currenthalftone dup length dict copy begin
currentdict 2 index known{
1 index load dup length dict copy begin
currentdict/TransferFunction known{
/TransferFunction load
}{
currenttransfer
}ifelse
addprocs /TransferFunction xdf
currentdict end def
currentdict end sethalftone
}{
currentdict/TransferFunction known{
/TransferFunction load
}{
currenttransfer
}ifelse
addprocs /TransferFunction xdf
currentdict end sethalftone
pop
}ifelse
}def
/clonearray
{
dup xcheck exch
dup length array exch
Adobe_AGM_Core/AGMCORE_tmp -1 ddf
{
Adobe_AGM_Core/AGMCORE_tmp AGMCORE_tmp 1 add ddf
dup type /dicttype eq
{
AGMCORE_tmp
exch
clonedict
Adobe_AGM_Core/AGMCORE_tmp 4 -1 roll ddf
} if
dup type /arraytype eq
{
AGMCORE_tmp exch
clonearray
Adobe_AGM_Core/AGMCORE_tmp 4 -1 roll ddf
} if
exch dup
AGMCORE_tmp 4 -1 roll put
}forall
exch {cvx} if
}bdf
/clonedict
{
dup length dict
begin
{
dup type /dicttype eq
{
clonedict
} if
dup type /arraytype eq
{
clonearray
} if
def
}forall
currentdict
end
}bdf
/DeviceN_PS2
{
/currentcolorspace AGMCORE_gget 0 get /DeviceN eq level3 not and
} bdf
/Indexed_DeviceN
{
/indexed_colorspace_dict AGMCORE_gget dup null ne {
/CSD known
}{
pop false
} ifelse
} bdf
/DeviceN_NoneName
{
/Names where {
pop
false Names
{
(None) eq or
} forall
}{
false
}ifelse
} bdf
/DeviceN_PS2_inRip_seps
{
/AGMCORE_in_rip_sep where
{
pop dup type dup /arraytype eq exch /packedarraytype eq or
{
dup 0 get /DeviceN eq level3 not and AGMCORE_in_rip_sep and
{
/currentcolorspace exch AGMCORE_gput
false
}
{
true
}ifelse
}
{
true
} ifelse
}
{
true
} ifelse
} bdf
/base_colorspace_type
{
dup type /arraytype eq {0 get} if
} bdf
/doc_setup{
Adobe_AGM_Utils begin
}bdf
/doc_trailer{
currentdict Adobe_AGM_Utils eq{
end
}if
}bdf
systemdict /setpacking known
{
setpacking
} if
%%EndResource
%%BeginResource: procset Adobe_AGM_Core 2.0 0
%%Version: 2.0 0
%%Copyright: Copyright (C) 1997-2003 Adobe Systems, Inc. All Rights Reserved.
systemdict /setpacking known
{
currentpacking
true setpacking
} if
userdict /Adobe_AGM_Core 216 dict dup begin put
/nd{
null def
}bind def
/Adobe_AGM_Core_Id /Adobe_AGM_Core_2.0_0 def
/AGMCORE_str256 256 string def
/AGMCORE_save nd
/AGMCORE_graphicsave nd
/AGMCORE_c 0 def
/AGMCORE_m 0 def
/AGMCORE_y 0 def
/AGMCORE_k 0 def
/AGMCORE_cmykbuf 4 array def
/AGMCORE_screen [currentscreen] cvx def
/AGMCORE_tmp 0 def
/AGMCORE_&setgray nd
/AGMCORE_&setcolor nd
/AGMCORE_&setcolorspace nd
/AGMCORE_&setcmykcolor nd
/AGMCORE_cyan_plate nd
/AGMCORE_magenta_plate nd
/AGMCORE_yellow_plate nd
/AGMCORE_black_plate nd
/AGMCORE_plate_ndx nd
/AGMCORE_get_ink_data nd
/AGMCORE_is_cmyk_sep nd
/AGMCORE_host_sep nd
/AGMCORE_avoid_L2_sep_space nd
/AGMCORE_distilling nd
/AGMCORE_composite_job nd
/AGMCORE_producing_seps nd
/AGMCORE_ps_level -1 def
/AGMCORE_ps_version -1 def
/AGMCORE_environ_ok nd
/AGMCORE_CSA_cache 0 dict def
/AGMCORE_CSD_cache 0 dict def
/AGMCORE_pattern_cache 0 dict def
/AGMCORE_currentoverprint false def
/AGMCORE_deltaX nd
/AGMCORE_deltaY nd
/AGMCORE_name nd
/AGMCORE_sep_special nd
/AGMCORE_err_strings 4 dict def
/AGMCORE_cur_err nd
/AGMCORE_ovp nd
/AGMCORE_current_spot_alias false def
/AGMCORE_inverting false def
/AGMCORE_feature_dictCount nd
/AGMCORE_feature_opCount nd
/AGMCORE_feature_ctm nd
/AGMCORE_ConvertToProcess false def
/AGMCORE_Default_CTM matrix def
/AGMCORE_Default_PageSize nd
/AGMCORE_currentbg nd
/AGMCORE_currentucr nd
/AGMCORE_gradientcache 32 dict def
/AGMCORE_in_pattern false def
/knockout_unitsq nd
/AGMCORE_CRD_cache where{
pop
}{
/AGMCORE_CRD_cache 0 dict def
}ifelse
/AGMCORE_key_known
{
where{
/Adobe_AGM_Core_Id known
}{
false
}ifelse
}ndf
/flushinput
{
save
2 dict begin
/CompareBuffer 3 -1 roll def
/readbuffer 256 string def
mark
{
currentfile readbuffer {readline} stopped
{cleartomark mark}
{
not
{pop exit}
if
CompareBuffer eq
{exit}
if
}ifelse
}loop
cleartomark
end
restore
}bdf
/getspotfunction
{
AGMCORE_screen exch pop exch pop
dup type /dicttype eq{
dup /HalftoneType get 1 eq{
/SpotFunction get
}{
dup /HalftoneType get 2 eq{
/GraySpotFunction get
}{
pop
{
abs exch abs 2 copy add 1 gt{
1 sub dup mul exch 1 sub dup mul add 1 sub
}{
dup mul exch dup mul add 1 exch sub
}ifelse
}bind
}ifelse
}ifelse
}if
} def
/clp_npth
{
clip newpath
} def
/eoclp_npth
{
eoclip newpath
} def
/npth_clp
{
newpath clip
} def
/add_grad
{
AGMCORE_gradientcache 3 1 roll put
}bdf
/exec_grad
{
AGMCORE_gradientcache exch get exec
}bdf
/graphic_setup
{
/AGMCORE_graphicsave save def
concat
0 setgray
0 setlinecap
0 setlinejoin
1 setlinewidth
[] 0 setdash
10 setmiterlimit
newpath
false setoverprint
false setstrokeadjust
Adobe_AGM_Core/spot_alias get exec
/Adobe_AGM_Image where {
pop
Adobe_AGM_Image/spot_alias 2 copy known{
get exec
}{
pop pop
}ifelse
} if
100 dict begin
/dictstackcount countdictstack def
/showpage {} def
mark
} def
/graphic_cleanup
{
cleartomark
dictstackcount 1 countdictstack 1 sub {end}for
end
AGMCORE_graphicsave restore
} def
/compose_error_msg
{
grestoreall initgraphics
/Helvetica findfont 10 scalefont setfont
/AGMCORE_deltaY 100 def
/AGMCORE_deltaX 310 def
clippath pathbbox newpath pop pop 36 add exch 36 add exch moveto
0 AGMCORE_deltaY rlineto AGMCORE_deltaX 0 rlineto
0 AGMCORE_deltaY neg rlineto AGMCORE_deltaX neg 0 rlineto closepath
0 AGMCORE_&setgray
gsave 1 AGMCORE_&setgray fill grestore
1 setlinewidth gsave stroke grestore
currentpoint AGMCORE_deltaY 15 sub add exch 8 add exch moveto
/AGMCORE_deltaY 12 def
/AGMCORE_tmp 0 def
AGMCORE_err_strings exch get
{
dup 32 eq
{
pop
AGMCORE_str256 0 AGMCORE_tmp getinterval
stringwidth pop currentpoint pop add AGMCORE_deltaX 28 add gt
{
currentpoint AGMCORE_deltaY sub exch pop
clippath pathbbox pop pop pop 44 add exch moveto
} if
AGMCORE_str256 0 AGMCORE_tmp getinterval show ( ) show
0 1 AGMCORE_str256 length 1 sub
{
AGMCORE_str256 exch 0 put
}for
/AGMCORE_tmp 0 def
}
{
AGMCORE_str256 exch AGMCORE_tmp xpt
/AGMCORE_tmp AGMCORE_tmp 1 add def
} ifelse
} forall
} bdf
/doc_setup{
Adobe_AGM_Core begin
/AGMCORE_ps_version xdf
/AGMCORE_ps_level xdf
errordict /AGM_handleerror known not{
errordict /AGM_handleerror errordict /handleerror get put
errordict /handleerror {
Adobe_AGM_Core begin
$error /newerror get AGMCORE_cur_err null ne and{
$error /newerror false put
AGMCORE_cur_err compose_error_msg
}if
$error /newerror true put
end
errordict /AGM_handleerror get exec
} bind put
}if
/AGMCORE_environ_ok
ps_level AGMCORE_ps_level ge
ps_version AGMCORE_ps_version ge and
AGMCORE_ps_level -1 eq or
def
AGMCORE_environ_ok not
{/AGMCORE_cur_err /AGMCORE_bad_environ def} if
/AGMCORE_&setgray systemdict/setgray get def
level2{
/AGMCORE_&setcolor systemdict/setcolor get def
/AGMCORE_&setcolorspace systemdict/setcolorspace get def
}if
/AGMCORE_currentbg currentblackgeneration def
/AGMCORE_currentucr currentundercolorremoval def
/AGMCORE_distilling
/product where{
pop systemdict/setdistillerparams known product (Adobe PostScript Parser) ne and
}{
false
}ifelse
def
level2 not{
/xput{
dup load dup length exch maxlength eq{
dup dup load dup
length dup 0 eq {pop 1} if 2 mul dict copy def
}if
load begin
def
end
}def
}{
/xput{
load 3 1 roll put
}def
}ifelse
/AGMCORE_GSTATE AGMCORE_key_known not{
/AGMCORE_GSTATE 21 dict def
/AGMCORE_tmpmatrix matrix def
/AGMCORE_gstack 32 array def
/AGMCORE_gstackptr 0 def
/AGMCORE_gstacksaveptr 0 def
/AGMCORE_gstackframekeys 10 def
/AGMCORE_&gsave /gsave ldf
/AGMCORE_&grestore /grestore ldf
/AGMCORE_&grestoreall /grestoreall ldf
/AGMCORE_&save /save ldf
/AGMCORE_gdictcopy {
begin
{ def } forall
end
}def
/AGMCORE_gput {
AGMCORE_gstack AGMCORE_gstackptr get
3 1 roll
put
}def
/AGMCORE_gget {
AGMCORE_gstack AGMCORE_gstackptr get
exch
get
}def
/gsave {
AGMCORE_&gsave
AGMCORE_gstack AGMCORE_gstackptr get
AGMCORE_gstackptr 1 add
dup 32 ge {limitcheck} if
Adobe_AGM_Core exch
/AGMCORE_gstackptr xpt
AGMCORE_gstack AGMCORE_gstackptr get
AGMCORE_gdictcopy
}def
/grestore {
AGMCORE_&grestore
AGMCORE_gstackptr 1 sub
dup AGMCORE_gstacksaveptr lt {1 add} if
Adobe_AGM_Core exch
/AGMCORE_gstackptr xpt
}def
/grestoreall {
AGMCORE_&grestoreall
Adobe_AGM_Core
/AGMCORE_gstackptr AGMCORE_gstacksaveptr put
}def
/save {
AGMCORE_&save
AGMCORE_gstack AGMCORE_gstackptr get
AGMCORE_gstackptr 1 add
dup 32 ge {limitcheck} if
Adobe_AGM_Core begin
/AGMCORE_gstackptr exch def
/AGMCORE_gstacksaveptr AGMCORE_gstackptr def
end
AGMCORE_gstack AGMCORE_gstackptr get
AGMCORE_gdictcopy
}def
0 1 AGMCORE_gstack length 1 sub {
AGMCORE_gstack exch AGMCORE_gstackframekeys dict put
} for
}if
level3 /AGMCORE_&sysshfill AGMCORE_key_known not and
{
/AGMCORE_&sysshfill systemdict/shfill get def
/AGMCORE_&usrshfill /shfill load def
/AGMCORE_&sysmakepattern systemdict/makepattern get def
/AGMCORE_&usrmakepattern /makepattern load def
}if
/currentcmykcolor [0 0 0 0] AGMCORE_gput
/currentstrokeadjust false AGMCORE_gput
/currentcolorspace [/DeviceGray] AGMCORE_gput
/sep_tint 0 AGMCORE_gput
/devicen_tints [0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0] AGMCORE_gput
/sep_colorspace_dict null AGMCORE_gput
/devicen_colorspace_dict null AGMCORE_gput
/indexed_colorspace_dict null AGMCORE_gput
/currentcolor_intent () AGMCORE_gput
/customcolor_tint 1 AGMCORE_gput
<<
/MaxPatternItem currentsystemparams /MaxPatternCache get
>>
setuserparams
end
}def
/page_setup
{
/setcmykcolor where{
pop
Adobe_AGM_Core/AGMCORE_&setcmykcolor /setcmykcolor load put
}if
Adobe_AGM_Core begin
/setcmykcolor
{
4 copy AGMCORE_cmykbuf astore /currentcmykcolor exch AGMCORE_gput
1 sub 4 1 roll
3 {
3 index add neg dup 0 lt {
pop 0
} if
3 1 roll
} repeat
setrgbcolor pop
}ndf
/currentcmykcolor
{
/currentcmykcolor AGMCORE_gget aload pop
}ndf
/setoverprint
{
pop
}ndf
/currentoverprint
{
false
}ndf
/AGMCORE_deviceDPI 72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt def
/AGMCORE_cyan_plate 1 0 0 0 test_cmyk_color_plate def
/AGMCORE_magenta_plate 0 1 0 0 test_cmyk_color_plate def
/AGMCORE_yellow_plate 0 0 1 0 test_cmyk_color_plate def
/AGMCORE_black_plate 0 0 0 1 test_cmyk_color_plate def
/AGMCORE_plate_ndx
AGMCORE_cyan_plate{
0
}{
AGMCORE_magenta_plate{
1
}{
AGMCORE_yellow_plate{
2
}{
AGMCORE_black_plate{
3
}{
4
}ifelse
}ifelse
}ifelse
}ifelse
def
/AGMCORE_have_reported_unsupported_color_space false def
/AGMCORE_report_unsupported_color_space
{
AGMCORE_have_reported_unsupported_color_space false eq
{
(Warning: Job contains content that cannot be separated with on-host methods. This content appears on the black plate, and knocks out all other plates.) ==
Adobe_AGM_Core /AGMCORE_have_reported_unsupported_color_space true ddf
} if
}def
/AGMCORE_composite_job
AGMCORE_cyan_plate AGMCORE_magenta_plate and AGMCORE_yellow_plate and AGMCORE_black_plate and def
/AGMCORE_in_rip_sep
/AGMCORE_in_rip_sep where{
pop AGMCORE_in_rip_sep
}{
AGMCORE_distilling
{
false
}{
userdict/Adobe_AGM_OnHost_Seps known{
false
}{
level2{
currentpagedevice/Separations 2 copy known{
get
}{
pop pop false
}ifelse
}{
false
}ifelse
}ifelse
}ifelse
}ifelse
def
/AGMCORE_producing_seps AGMCORE_composite_job not AGMCORE_in_rip_sep or def
/AGMCORE_host_sep AGMCORE_producing_seps AGMCORE_in_rip_sep not and def
/AGM_preserve_spots
/AGM_preserve_spots where{
pop AGM_preserve_spots
}{
AGMCORE_distilling AGMCORE_producing_seps or
}ifelse
def
/AGM_is_distiller_preserving_spotimages
{
currentdistillerparams/PreserveOverprintSettings known
{
currentdistillerparams/PreserveOverprintSettings get
{
currentdistillerparams/ColorConversionStrategy known
{
currentdistillerparams/ColorConversionStrategy get
/LeaveColorUnchanged eq
}{
true
}ifelse
}{
false
}ifelse
}{
false
}ifelse
}def
/convert_spot_to_process where {pop}{
/convert_spot_to_process
{
dup map_alias {
/Name get exch pop
} if
dup dup (None) eq exch (All) eq or
{
pop false
}{
AGMCORE_host_sep
{
gsave
1 0 0 0 setcmykcolor currentgray 1 exch sub
0 1 0 0 setcmykcolor currentgray 1 exch sub
0 0 1 0 setcmykcolor currentgray 1 exch sub
0 0 0 1 setcmykcolor currentgray 1 exch sub
add add add 0 eq
{
pop false
}{
false setoverprint
1 1 1 1 5 -1 roll findcmykcustomcolor 1 setcustomcolor
currentgray 0 eq
}ifelse
grestore
}{
AGMCORE_distilling
{
pop AGM_is_distiller_preserving_spotimages not
}{
Adobe_AGM_Core/AGMCORE_name xddf
false
Adobe_AGM_Core/AGMCORE_in_pattern known {Adobe_AGM_Core/AGMCORE_in_pattern get}{false} ifelse
not currentpagedevice/OverrideSeparations known and
{
currentpagedevice/OverrideSeparations get
{
/HqnSpots /ProcSet resourcestatus
{
pop pop pop true
}if
}if
}if
{
AGMCORE_name /HqnSpots /ProcSet findresource /TestSpot get exec not
}{
gsave
[/Separation AGMCORE_name /DeviceGray {}]setcolorspace
false
currentpagedevice/SeparationColorNames 2 copy known
{
get
{ AGMCORE_name eq or}forall
not
}{
pop pop pop true
}ifelse
grestore
}ifelse
}ifelse
}ifelse
}ifelse
}def
}ifelse
/convert_to_process where {pop}{
/convert_to_process
{
dup length 0 eq
{
pop false
}{
AGMCORE_host_sep
{
dup true exch
{
dup (Cyan) eq exch
dup (Magenta) eq 3 -1 roll or exch
dup (Yellow) eq 3 -1 roll or exch
dup (Black) eq 3 -1 roll or
{pop}
{convert_spot_to_process and}ifelse
}
forall
{
true exch
{
dup (Cyan) eq exch
dup (Magenta) eq 3 -1 roll or exch
dup (Yellow) eq 3 -1 roll or exch
(Black) eq or and
}forall
not
}{pop false}ifelse
}{
false exch
{
dup (Cyan) eq exch
dup (Magenta) eq 3 -1 roll or exch
dup (Yellow) eq 3 -1 roll or exch
dup (Black) eq 3 -1 roll or
{pop}
{convert_spot_to_process or}ifelse
}
forall
}ifelse
}ifelse
}def
}ifelse
/AGMCORE_avoid_L2_sep_space
version cvr 2012 lt
level2 and
AGMCORE_producing_seps not and
def
/AGMCORE_is_cmyk_sep
AGMCORE_cyan_plate AGMCORE_magenta_plate or AGMCORE_yellow_plate or AGMCORE_black_plate or
def
/AGM_avoid_0_cmyk where{
pop AGM_avoid_0_cmyk
}{
AGM_preserve_spots
userdict/Adobe_AGM_OnHost_Seps known
userdict/Adobe_AGM_InRip_Seps known or
not and
}ifelse
{
/setcmykcolor[
{
4 copy add add add 0 eq currentoverprint and{
pop 0.0005
}if
}/exec cvx
/AGMCORE_&setcmykcolor load dup type/operatortype ne{
/exec cvx
}if
]cvx def
}if
AGMCORE_host_sep{
/setcolortransfer
{
AGMCORE_cyan_plate{
pop pop pop
}{
AGMCORE_magenta_plate{
4 3 roll pop pop pop
}{
AGMCORE_yellow_plate{
4 2 roll pop pop pop
}{
4 1 roll pop pop pop
}ifelse
}ifelse
}ifelse
settransfer
}
def
/AGMCORE_get_ink_data
AGMCORE_cyan_plate{
{pop pop pop}
}{
AGMCORE_magenta_plate{
{4 3 roll pop pop pop}
}{
AGMCORE_yellow_plate{
{4 2 roll pop pop pop}
}{
{4 1 roll pop pop pop}
}ifelse
}ifelse
}ifelse
def
/AGMCORE_RemoveProcessColorNames
{
1 dict begin
/filtername
{
dup /Cyan eq 1 index (Cyan) eq or
{pop (_cyan_)}if
dup /Magenta eq 1 index (Magenta) eq or
{pop (_magenta_)}if
dup /Yellow eq 1 index (Yellow) eq or
{pop (_yellow_)}if
dup /Black eq 1 index (Black) eq or
{pop (_black_)}if
}def
dup type /arraytype eq
{[exch {filtername}forall]}
{filtername}ifelse
end
}def
/AGMCORE_IsSeparationAProcessColor
{
dup (Cyan) eq exch dup (Magenta) eq exch dup (Yellow) eq exch (Black) eq or or or
}def
level3 {
/AGMCORE_IsCurrentColor
{
gsave
false setoverprint
1 1 1 1 5 -1 roll findcmykcustomcolor 1 setcustomcolor
currentgray 0 eq
grestore
}def
/AGMCORE_filter_functiondatasource
{
5 dict begin
/data_in xdf
data_in type /stringtype eq
{
/ncomp xdf
/comp xdf
/string_out data_in length ncomp idiv string def
0 ncomp data_in length 1 sub
{
string_out exch dup ncomp idiv exch data_in exch ncomp getinterval comp get 255 exch sub put
}for
string_out
}{
string /string_in xdf
/string_out 1 string def
/component xdf
[
data_in string_in /readstring cvx
[component /get cvx 255 /exch cvx /sub cvx string_out /exch cvx 0 /exch cvx /put cvx string_out]cvx
[/pop cvx ()]cvx /ifelse cvx
]cvx /ReusableStreamDecode filter
}ifelse
end
}def
/AGMCORE_separateShadingFunction
{
2 dict begin
/paint? xdf
/channel xdf
begin
FunctionType 0 eq
{
/DataSource channel Range length 2 idiv DataSource AGMCORE_filter_functiondatasource def
currentdict /Decode known
{/Decode Decode channel 2 mul 2 getinterval def}if
paint? not
{/Decode [1 1]def}if
}if
FunctionType 2 eq
{
paint?
{
/C0 [C0 channel get 1 exch sub] def
/C1 [C1 channel get 1 exch sub] def
}{
/C0 [1] def
/C1 [1] def
}ifelse
}if
FunctionType 3 eq
{
/Functions [Functions {channel paint? AGMCORE_separateShadingFunction} forall] def
}if
currentdict /Range known
{/Range [0 1] def}if
currentdict
end
end
}def
/AGMCORE_separateShading
{
3 -1 roll begin
currentdict /Function known
{
currentdict /Background known
{[1 index{Background 3 index get 1 exch sub}{1}ifelse]/Background xdf}if
Function 3 1 roll AGMCORE_separateShadingFunction /Function xdf
/ColorSpace [/DeviceGray] def
}{
ColorSpace dup type /arraytype eq {0 get}if /DeviceCMYK eq
{
/ColorSpace [/DeviceN [/_cyan_ /_magenta_ /_yellow_ /_black_] /DeviceCMYK {}] def
}{
ColorSpace dup 1 get AGMCORE_RemoveProcessColorNames 1 exch put
}ifelse
ColorSpace 0 get /Separation eq
{
{
[1 /exch cvx /sub cvx]cvx
}{
[/pop cvx 1]cvx
}ifelse
ColorSpace 3 3 -1 roll put
pop
}{
{
[exch ColorSpace 1 get length 1 sub exch sub /index cvx 1 /exch cvx /sub cvx ColorSpace 1 get length 1 add 1 /roll cvx ColorSpace 1 get length{/pop cvx} repeat]cvx
}{
pop [ColorSpace 1 get length {/pop cvx} repeat cvx 1]cvx
}ifelse
ColorSpace 3 3 -1 roll bind put
}ifelse
ColorSpace 2 /DeviceGray put
}ifelse
end
}def
/AGMCORE_separateShadingDict
{
dup /ColorSpace get
dup type /arraytype ne
{[exch]}if
dup 0 get /DeviceCMYK eq
{
exch begin
currentdict
AGMCORE_cyan_plate
{0 true}if
AGMCORE_magenta_plate
{1 true}if
AGMCORE_yellow_plate
{2 true}if
AGMCORE_black_plate
{3 true}if
AGMCORE_plate_ndx 4 eq
{0 false}if
dup not currentoverprint and
{/AGMCORE_ignoreshade true def}if
AGMCORE_separateShading
currentdict
end exch
}if
dup 0 get /Separation eq
{
exch begin
ColorSpace 1 get dup /None ne exch /All ne and
{
ColorSpace 1 get AGMCORE_IsCurrentColor AGMCORE_plate_ndx 4 lt and ColorSpace 1 get AGMCORE_IsSeparationAProcessColor not and
{
ColorSpace 2 get dup type /arraytype eq {0 get}if /DeviceCMYK eq
{
/ColorSpace
[
/Separation
ColorSpace 1 get
/DeviceGray
[
ColorSpace 3 get /exec cvx
4 AGMCORE_plate_ndx sub -1 /roll cvx
4 1 /roll cvx
3 [/pop cvx]cvx /repeat cvx
1 /exch cvx /sub cvx
]cvx
]def
}{
AGMCORE_report_unsupported_color_space
AGMCORE_black_plate not
{
currentdict 0 false AGMCORE_separateShading
}if
}ifelse
}{
currentdict ColorSpace 1 get AGMCORE_IsCurrentColor
0 exch
dup not currentoverprint and
{/AGMCORE_ignoreshade true def}if
AGMCORE_separateShading
}ifelse
}if
currentdict
end exch
}if
dup 0 get /DeviceN eq
{
exch begin
ColorSpace 1 get convert_to_process
{
ColorSpace 2 get dup type /arraytype eq {0 get}if /DeviceCMYK eq
{
/ColorSpace
[
/DeviceN
ColorSpace 1 get
/DeviceGray
[
ColorSpace 3 get /exec cvx
4 AGMCORE_plate_ndx sub -1 /roll cvx
4 1 /roll cvx
3 [/pop cvx]cvx /repeat cvx
1 /exch cvx /sub cvx
]cvx
]def
}{
AGMCORE_report_unsupported_color_space
AGMCORE_black_plate not
{
currentdict 0 false AGMCORE_separateShading
/ColorSpace [/DeviceGray] def
}if
}ifelse
}{
currentdict
false -1 ColorSpace 1 get
{
AGMCORE_IsCurrentColor
{
1 add
exch pop true exch exit
}if
1 add
}forall
exch
dup not currentoverprint and
{/AGMCORE_ignoreshade true def}if
AGMCORE_separateShading
}ifelse
currentdict
end exch
}if
dup 0 get dup /DeviceCMYK eq exch dup /Separation eq exch /DeviceN eq or or not
{
exch begin
ColorSpace dup type /arraytype eq
{0 get}if
/DeviceGray ne
{
AGMCORE_report_unsupported_color_space
AGMCORE_black_plate not
{
ColorSpace 0 get /CIEBasedA eq
{
/ColorSpace [/Separation /_ciebaseda_ /DeviceGray {}] def
}if
ColorSpace 0 get dup /CIEBasedABC eq exch dup /CIEBasedDEF eq exch /DeviceRGB eq or or
{
/ColorSpace [/DeviceN [/_red_ /_green_ /_blue_] /DeviceRGB {}] def
}if
ColorSpace 0 get /CIEBasedDEFG eq
{
/ColorSpace [/DeviceN [/_cyan_ /_magenta_ /_yellow_ /_black_] /DeviceCMYK {}]
}if
currentdict 0 false AGMCORE_separateShading
}if
}if
currentdict
end exch
}if
pop
dup /AGMCORE_ignoreshade known
{
begin
/ColorSpace [/Separation (None) /DeviceGray {}] def
currentdict end
}if
}def
/shfill
{
clonedict
AGMCORE_separateShadingDict
dup /AGMCORE_ignoreshade known
{pop}
{AGMCORE_&sysshfill}ifelse
}def
/makepattern
{
exch
dup /PatternType get 2 eq
{
clonedict
begin
/Shading Shading AGMCORE_separateShadingDict def
currentdict end
exch AGMCORE_&sysmakepattern
}{
exch AGMCORE_&usrmakepattern
}ifelse
}def
}if
}if
AGMCORE_in_rip_sep{
/setcustomcolor
{
exch aload pop
dup 7 1 roll inRip_spot_has_ink not {
4 {4 index mul 4 1 roll}
repeat
/DeviceCMYK setcolorspace
6 -2 roll pop pop
}{
Adobe_AGM_Core begin
/AGMCORE_k xdf /AGMCORE_y xdf /AGMCORE_m xdf /AGMCORE_c xdf
end
[/Separation 4 -1 roll /DeviceCMYK
{dup AGMCORE_c mul exch dup AGMCORE_m mul exch dup AGMCORE_y mul exch AGMCORE_k mul}
]
setcolorspace
}ifelse
setcolor
}ndf
/setseparationgray
{
[/Separation (All) /DeviceGray {}] setcolorspace_opt
1 exch sub setcolor
}ndf
}{
/setseparationgray
{
AGMCORE_&setgray
}ndf
}ifelse
/findcmykcustomcolor
{
5 makereadonlyarray
}ndf
/setcustomcolor
{
exch aload pop pop
4 {4 index mul 4 1 roll} repeat
setcmykcolor pop
}ndf
/has_color
/colorimage where{
AGMCORE_producing_seps{
pop true
}{
systemdict eq
}ifelse
}{
false
}ifelse
def
/map_index
{
1 index mul exch getinterval {255 div} forall
} bdf
/map_indexed_devn
{
Lookup Names length 3 -1 roll cvi map_index
} bdf
/n_color_components
{
base_colorspace_type
dup /DeviceGray eq{
pop 1
}{
/DeviceCMYK eq{
4
}{
3
}ifelse
}ifelse
}bdf
level2{
/mo /moveto ldf
/li /lineto ldf
/cv /curveto ldf
/knockout_unitsq
{
1 setgray
0 0 1 1 rectfill
}def
/level2ScreenFreq{
begin
60
HalftoneType 1 eq{
pop Frequency
}if
HalftoneType 2 eq{
pop GrayFrequency
}if
HalftoneType 5 eq{
pop Default level2ScreenFreq
}if
end
}def
/currentScreenFreq{
currenthalftone level2ScreenFreq
}def
level2 /setcolorspace AGMCORE_key_known not and{
/AGMCORE_&&&setcolorspace /setcolorspace ldf
/AGMCORE_ReplaceMappedColor
{
dup type dup /arraytype eq exch /packedarraytype eq or
{
dup 0 get dup /Separation eq
{
pop
dup length array copy
dup dup 1 get
current_spot_alias
{
dup map_alias
{
begin
/sep_colorspace_dict currentdict AGMCORE_gput
pop pop pop
[
/Separation Name
CSA map_csa
dup /MappedCSA xdf
/sep_colorspace_proc load
]
dup Name
end
}if
}if
map_reserved_ink_name 1 xpt
}{
/DeviceN eq
{
dup length array copy
dup dup 1 get [
exch {
current_spot_alias{
dup map_alias{
/Name get exch pop
}if
}if
map_reserved_ink_name
} forall
] 1 xpt
}if
}ifelse
}if
}def
/setcolorspace
{
dup type dup /arraytype eq exch /packedarraytype eq or
{
dup 0 get /Indexed eq
{
AGMCORE_distilling
{
/PhotoshopDuotoneList where
{
pop false
}{
true
}ifelse
}{
true
}ifelse
{
aload pop 3 -1 roll
AGMCORE_ReplaceMappedColor
3 1 roll 4 array astore
}if
}{
AGMCORE_ReplaceMappedColor
}ifelse
}if
DeviceN_PS2_inRip_seps {AGMCORE_&&&setcolorspace} if
}def
}if
}{
/adj
{
currentstrokeadjust{
transform
0.25 sub round 0.25 add exch
0.25 sub round 0.25 add exch
itransform
}if
}def
/mo{
adj moveto
}def
/li{
adj lineto
}def
/cv{
6 2 roll adj
6 2 roll adj
6 2 roll adj curveto
}def
/knockout_unitsq
{
1 setgray
8 8 1 [8 0 0 8 0 0] {<ffffffffffffffff>} image
}def
/currentstrokeadjust{
/currentstrokeadjust AGMCORE_gget
}def
/setstrokeadjust{
/currentstrokeadjust exch AGMCORE_gput
}def
/currentScreenFreq{
currentscreen pop pop
}def
/setcolorspace
{
/currentcolorspace exch AGMCORE_gput
} def
/currentcolorspace
{
/currentcolorspace AGMCORE_gget
} def
/setcolor_devicecolor
{
base_colorspace_type
dup /DeviceGray eq{
pop setgray
}{
/DeviceCMYK eq{
setcmykcolor
}{
setrgbcolor
}ifelse
}ifelse
}def
/setcolor
{
currentcolorspace 0 get
dup /DeviceGray ne{
dup /DeviceCMYK ne{
dup /DeviceRGB ne{
dup /Separation eq{
pop
currentcolorspace 3 get exec
currentcolorspace 2 get
}{
dup /Indexed eq{
pop
currentcolorspace 3 get dup type /stringtype eq{
currentcolorspace 1 get n_color_components
3 -1 roll map_index
}{
exec
}ifelse
currentcolorspace 1 get
}{
/AGMCORE_cur_err /AGMCORE_invalid_color_space def
AGMCORE_invalid_color_space
}ifelse
}ifelse
}if
}if
}if
setcolor_devicecolor
} def
}ifelse
/sop /setoverprint ldf
/lw /setlinewidth ldf
/lc /setlinecap ldf
/lj /setlinejoin ldf
/ml /setmiterlimit ldf
/dsh /setdash ldf
/sadj /setstrokeadjust ldf
/gry /setgray ldf
/rgb /setrgbcolor ldf
/cmyk /setcmykcolor ldf
/sep /setsepcolor ldf
/devn /setdevicencolor ldf
/idx /setindexedcolor ldf
/colr /setcolor ldf
/csacrd /set_csa_crd ldf
/sepcs /setsepcolorspace ldf
/devncs /setdevicencolorspace ldf
/idxcs /setindexedcolorspace ldf
/cp /closepath ldf
/clp /clp_npth ldf
/eclp /eoclp_npth ldf
/f /fill ldf
/ef /eofill ldf
/@ /stroke ldf
/nclp /npth_clp ldf
/gset /graphic_setup ldf
/gcln /graphic_cleanup ldf
currentdict{
dup xcheck 1 index type dup /arraytype eq exch /packedarraytype eq or and {
bind
}if
def
}forall
/currentpagedevice currentpagedevice def
/getrampcolor {
/indx exch def
0 1 NumComp 1 sub {
dup
Samples exch get
dup type /stringtype eq { indx get } if
exch
Scaling exch get aload pop
3 1 roll
mul add
} for
ColorSpaceFamily /Separation eq
{
sep
}
{
ColorSpaceFamily /DeviceN eq
{
devn
}
{
setcolor
}ifelse
}ifelse
} bind def
/sssetbackground { aload pop setcolor } bind def
/RadialShade {
40 dict begin
/ColorSpaceFamily exch def
/background exch def
/ext1 exch def
/ext0 exch def
/BBox exch def
/r2 exch def
/c2y exch def
/c2x exch def
/r1 exch def
/c1y exch def
/c1x exch def
/rampdict exch def
/setinkoverprint where {pop /setinkoverprint{pop}def}if
gsave
BBox length 0 gt {
newpath
BBox 0 get BBox 1 get moveto
BBox 2 get BBox 0 get sub 0 rlineto
0 BBox 3 get BBox 1 get sub rlineto
BBox 2 get BBox 0 get sub neg 0 rlineto
closepath
clip
newpath
} if
c1x c2x eq
{
c1y c2y lt {/theta 90 def}{/theta 270 def} ifelse
}
{
/slope c2y c1y sub c2x c1x sub div def
/theta slope 1 atan def
c2x c1x lt c2y c1y ge and { /theta theta 180 sub def} if
c2x c1x lt c2y c1y lt and { /theta theta 180 add def} if
}
ifelse
gsave
clippath
c1x c1y translate
theta rotate
-90 rotate
{ pathbbox } stopped
{ 0 0 0 0 } if
/yMax exch def
/xMax exch def
/yMin exch def
/xMin exch def
grestore
xMax xMin eq yMax yMin eq or
{
grestore
end
}
{
/max { 2 copy gt { pop } {exch pop} ifelse } bind def
/min { 2 copy lt { pop } {exch pop} ifelse } bind def
rampdict begin
40 dict begin
background length 0 gt { background sssetbackground gsave clippath fill grestore } if
gsave
c1x c1y translate
theta rotate
-90 rotate
/c2y c1x c2x sub dup mul c1y c2y sub dup mul add sqrt def
/c1y 0 def
/c1x 0 def
/c2x 0 def
ext0 {
0 getrampcolor
c2y r2 add r1 sub 0.0001 lt
{
c1x c1y r1 360 0 arcn
pathbbox
/aymax exch def
/axmax exch def
/aymin exch def
/axmin exch def
/bxMin xMin axmin min def
/byMin yMin aymin min def
/bxMax xMax axmax max def
/byMax yMax aymax max def
bxMin byMin moveto
bxMax byMin lineto
bxMax byMax lineto
bxMin byMax lineto
bxMin byMin lineto
eofill
}
{
c2y r1 add r2 le
{
c1x c1y r1 0 360 arc
fill
}
{
c2x c2y r2 0 360 arc fill
r1 r2 eq
{
/p1x r1 neg def
/p1y c1y def
/p2x r1 def
/p2y c1y def
p1x p1y moveto p2x p2y lineto p2x yMin lineto p1x yMin lineto
fill
}
{
/AA r2 r1 sub c2y div def
/theta AA 1 AA dup mul sub sqrt div 1 atan def
/SS1 90 theta add dup sin exch cos div def
/p1x r1 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
/p1y p1x SS1 div neg def
/SS2 90 theta sub dup sin exch cos div def
/p2x r1 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
/p2y p2x SS2 div neg def
r1 r2 gt
{
/L1maxX p1x yMin p1y sub SS1 div add def
/L2maxX p2x yMin p2y sub SS2 div add def
}
{
/L1maxX 0 def
/L2maxX 0 def
}ifelse
p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
L1maxX L1maxX p1x sub SS1 mul p1y add lineto
fill
}
ifelse
}
ifelse
} ifelse
} if
c1x c2x sub dup mul
c1y c2y sub dup mul
add 0.5 exp
0 dtransform
dup mul exch dup mul add 0.5 exp 72 div
0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
1 index 1 index lt { exch } if pop
/hires exch def
hires mul
/numpix exch def
/numsteps NumSamples def
/rampIndxInc 1 def
/subsampling false def
numpix 0 ne
{
NumSamples numpix div 0.5 gt
{
/numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
/rampIndxInc NumSamples 1 sub numsteps div def
/subsampling true def
} if
} if
/xInc c2x c1x sub numsteps div def
/yInc c2y c1y sub numsteps div def
/rInc r2 r1 sub numsteps div def
/cx c1x def
/cy c1y def
/radius r1 def
newpath
xInc 0 eq yInc 0 eq rInc 0 eq and and
{
0 getrampcolor
cx cy radius 0 360 arc
stroke
NumSamples 1 sub getrampcolor
cx cy radius 72 hires div add 0 360 arc
0 setlinewidth
stroke
}
{
0
numsteps
{
dup
subsampling { round cvi } if
getrampcolor
cx cy radius 0 360 arc
/cx cx xInc add def
/cy cy yInc add def
/radius radius rInc add def
cx cy radius 360 0 arcn
eofill
rampIndxInc add
}
repeat
pop
} ifelse
ext1 {
c2y r2 add r1 lt
{
c2x c2y r2 0 360 arc
fill
}
{
c2y r1 add r2 sub 0.0001 le
{
c2x c2y r2 360 0 arcn
pathbbox
/aymax exch def
/axmax exch def
/aymin exch def
/axmin exch def
/bxMin xMin axmin min def
/byMin yMin aymin min def
/bxMax xMax axmax max def
/byMax yMax aymax max def
bxMin byMin moveto
bxMax byMin lineto
bxMax byMax lineto
bxMin byMax lineto
bxMin byMin lineto
eofill
}
{
c2x c2y r2 0 360 arc fill
r1 r2 eq
{
/p1x r2 neg def
/p1y c2y def
/p2x r2 def
/p2y c2y def
p1x p1y moveto p2x p2y lineto p2x yMax lineto p1x yMax lineto
fill
}
{
/AA r2 r1 sub c2y div def
/theta AA 1 AA dup mul sub sqrt div 1 atan def
/SS1 90 theta add dup sin exch cos div def
/p1x r2 SS1 SS1 mul SS1 SS1 mul 1 add div sqrt mul neg def
/p1y c2y p1x SS1 div sub def
/SS2 90 theta sub dup sin exch cos div def
/p2x r2 SS2 SS2 mul SS2 SS2 mul 1 add div sqrt mul def
/p2y c2y p2x SS2 div sub def
r1 r2 lt
{
/L1maxX p1x yMax p1y sub SS1 div add def
/L2maxX p2x yMax p2y sub SS2 div add def
}
{
/L1maxX 0 def
/L2maxX 0 def
}ifelse
p1x p1y moveto p2x p2y lineto L2maxX L2maxX p2x sub SS2 mul p2y add lineto
L1maxX L1maxX p1x sub SS1 mul p1y add lineto
fill
}
ifelse
}
ifelse
} ifelse
} if
grestore
grestore
end
end
end
} ifelse
} bind def
/GenStrips {
40 dict begin
/ColorSpaceFamily exch def
/background exch def
/ext1 exch def
/ext0 exch def
/BBox exch def
/y2 exch def
/x2 exch def
/y1 exch def
/x1 exch def
/rampdict exch def
/setinkoverprint where {pop /setinkoverprint{pop}def}if
gsave
BBox length 0 gt {
newpath
BBox 0 get BBox 1 get moveto
BBox 2 get BBox 0 get sub 0 rlineto
0 BBox 3 get BBox 1 get sub rlineto
BBox 2 get BBox 0 get sub neg 0 rlineto
closepath
clip
newpath
} if
x1 x2 eq
{
y1 y2 lt {/theta 90 def}{/theta 270 def} ifelse
}
{
/slope y2 y1 sub x2 x1 sub div def
/theta slope 1 atan def
x2 x1 lt y2 y1 ge and { /theta theta 180 sub def} if
x2 x1 lt y2 y1 lt and { /theta theta 180 add def} if
}
ifelse
gsave
clippath
x1 y1 translate
theta rotate
{ pathbbox } stopped
{ 0 0 0 0 } if
/yMax exch def
/xMax exch def
/yMin exch def
/xMin exch def
grestore
xMax xMin eq yMax yMin eq or
{
grestore
end
}
{
rampdict begin
20 dict begin
background length 0 gt { background sssetbackground gsave clippath fill grestore } if
gsave
x1 y1 translate
theta rotate
/xStart 0 def
/xEnd x2 x1 sub dup mul y2 y1 sub dup mul add 0.5 exp def
/ySpan yMax yMin sub def
/numsteps NumSamples def
/rampIndxInc 1 def
/subsampling false def
xStart 0 transform
xEnd 0 transform
3 -1 roll
sub dup mul
3 1 roll
sub dup mul
add 0.5 exp 72 div
0 72 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
72 0 matrix defaultmatrix dtransform dup mul exch dup mul add sqrt
1 index 1 index lt { exch } if pop
mul
/numpix exch def
numpix 0 ne
{
NumSamples numpix div 0.5 gt
{
/numsteps numpix 2 div round cvi dup 1 le { pop 2 } if def
/rampIndxInc NumSamples 1 sub numsteps div def
/subsampling true def
} if
} if
ext0 {
0 getrampcolor
xMin xStart lt
{ xMin yMin xMin neg ySpan rectfill } if
} if
/xInc xEnd xStart sub numsteps div def
/x xStart def
0
numsteps
{
dup
subsampling { round cvi } if
getrampcolor
x yMin xInc ySpan rectfill
/x x xInc add def
rampIndxInc add
}
repeat
pop
ext1 {
xMax xEnd gt
{ xEnd yMin xMax xEnd sub ySpan rectfill } if
} if
grestore
grestore
end
end
end
} ifelse
} bind def
}def
/page_trailer
{
end
}def
/doc_trailer{
}def
systemdict /findcolorrendering known{
/findcolorrendering systemdict /findcolorrendering get def
}if
systemdict /setcolorrendering known{
/setcolorrendering systemdict /setcolorrendering get def
}if
/test_cmyk_color_plate
{
gsave
setcmykcolor currentgray 1 ne
grestore
}def
/inRip_spot_has_ink
{
dup Adobe_AGM_Core/AGMCORE_name xddf
convert_spot_to_process not
}def
/map255_to_range
{
1 index sub
3 -1 roll 255 div mul add
}def
/set_csa_crd
{
/sep_colorspace_dict null AGMCORE_gput
begin
CSA map_csa setcolorspace_opt
set_crd
end
}
def
/setsepcolor
{
/sep_colorspace_dict AGMCORE_gget begin
dup /sep_tint exch AGMCORE_gput
TintProc
end
} def
/setdevicencolor
{
/devicen_colorspace_dict AGMCORE_gget begin
Names length copy
Names length 1 sub -1 0
{
/devicen_tints AGMCORE_gget 3 1 roll xpt
} for
TintProc
end
} def
/sep_colorspace_proc
{
Adobe_AGM_Core/AGMCORE_tmp xddf
/sep_colorspace_dict AGMCORE_gget begin
currentdict/Components known{
Components aload pop
TintMethod/Lab eq{
2 {AGMCORE_tmp mul NComponents 1 roll} repeat
LMax sub AGMCORE_tmp mul LMax add NComponents 1 roll
}{
TintMethod/Subtractive eq{
NComponents{
AGMCORE_tmp mul NComponents 1 roll
}repeat
}{
NComponents{
1 sub AGMCORE_tmp mul 1 add NComponents 1 roll
} repeat
}ifelse
}ifelse
}{
ColorLookup AGMCORE_tmp ColorLookup length 1 sub mul round cvi get
aload pop
}ifelse
end
} def
/sep_colorspace_gray_proc
{
Adobe_AGM_Core/AGMCORE_tmp xddf
/sep_colorspace_dict AGMCORE_gget begin
GrayLookup AGMCORE_tmp GrayLookup length 1 sub mul round cvi get
end
} def
/sep_proc_name
{
dup 0 get
dup /DeviceRGB eq exch /DeviceCMYK eq or level2 not and has_color not and{
pop [/DeviceGray]
/sep_colorspace_gray_proc
}{
/sep_colorspace_proc
}ifelse
} def
/setsepcolorspace
{
current_spot_alias{
dup begin
Name map_alias{
exch pop
}if
end
}if
dup /sep_colorspace_dict exch AGMCORE_gput
begin
/MappedCSA CSA map_csa def
Adobe_AGM_Core/AGMCORE_sep_special Name dup () eq exch (All) eq or ddf
AGMCORE_avoid_L2_sep_space{
[/Indexed MappedCSA sep_proc_name 255 exch
{ 255 div } /exec cvx 3 -1 roll [ 4 1 roll load /exec cvx ] cvx
] setcolorspace_opt
/TintProc {
255 mul round cvi setcolor
}bdf
}{
MappedCSA 0 get /DeviceCMYK eq
currentdict/Components known and
AGMCORE_sep_special not and{
/TintProc [
Components aload pop Name findcmykcustomcolor
/exch cvx /setcustomcolor cvx
] cvx bdf
}{
AGMCORE_host_sep Name (All) eq and{
/TintProc {
1 exch sub setseparationgray
}bdf
}{
AGMCORE_in_rip_sep MappedCSA 0 get /DeviceCMYK eq and
AGMCORE_host_sep or
Name () eq and{
/TintProc [
MappedCSA sep_proc_name exch 0 get /DeviceCMYK eq{
cvx /setcmykcolor cvx
}{
cvx /setgray cvx
}ifelse
] cvx bdf
}{
AGMCORE_producing_seps MappedCSA 0 get dup /DeviceCMYK eq exch /DeviceGray eq or and AGMCORE_sep_special not and{
/TintProc [
/dup cvx
MappedCSA sep_proc_name cvx exch
0 get /DeviceGray eq{
1 /exch cvx /sub cvx 0 0 0 4 -1 /roll cvx
}if
/Name cvx /findcmykcustomcolor cvx /exch cvx
AGMCORE_host_sep{
AGMCORE_is_cmyk_sep
/Name cvx
/AGMCORE_IsSeparationAProcessColor load /exec cvx
/not cvx /and cvx
}{
Name inRip_spot_has_ink not
}ifelse
[
/pop cvx 1
] cvx /if cvx
/setcustomcolor cvx
] cvx bdf
}{
/TintProc /setcolor ldf
[/Separation Name MappedCSA sep_proc_name load ] setcolorspace_opt
}ifelse
}ifelse
}ifelse
}ifelse
}ifelse
set_crd
setsepcolor
end
} def
/additive_blend
{
3 dict begin
/numarrays xdf
/numcolors xdf
0 1 numcolors 1 sub
{
/c1 xdf
1
0 1 numarrays 1 sub
{
1 exch add /index cvx
c1 /get cvx /mul cvx
}for
numarrays 1 add 1 /roll cvx
}for
numarrays [/pop cvx] cvx /repeat cvx
end
}def
/subtractive_blend
{
3 dict begin
/numarrays xdf
/numcolors xdf
0 1 numcolors 1 sub
{
/c1 xdf
1 1
0 1 numarrays 1 sub
{
1 3 3 -1 roll add /index cvx
c1 /get cvx /sub cvx /mul cvx
}for
/sub cvx
numarrays 1 add 1 /roll cvx
}for
numarrays [/pop cvx] cvx /repeat cvx
end
}def
/exec_tint_transform
{
/TintProc [
/TintTransform cvx /setcolor cvx
] cvx bdf
MappedCSA setcolorspace_opt
} bdf
/devn_makecustomcolor
{
2 dict begin
/names_index xdf
/Names xdf
1 1 1 1 Names names_index get findcmykcustomcolor
/devicen_tints AGMCORE_gget names_index get setcustomcolor
Names length {pop} repeat
end
} bdf
/setdevicencolorspace
{
dup /AliasedColorants known {false}{true}ifelse
current_spot_alias and {
6 dict begin
/names_index 0 def
dup /names_len exch /Names get length def
/new_names names_len array def
/new_LookupTables names_len array def
/alias_cnt 0 def
dup /Names get
{
dup map_alias {
exch pop
dup /ColorLookup known {
dup begin
new_LookupTables names_index ColorLookup put
end
}{
dup /Components known {
dup begin
new_LookupTables names_index Components put
end
}{
dup begin
new_LookupTables names_index [null null null null] put
end
} ifelse
} ifelse
new_names names_index 3 -1 roll /Name get put
/alias_cnt alias_cnt 1 add def
}{
/name xdf
new_names names_index name put
dup /LookupTables known {
dup begin
new_LookupTables names_index LookupTables names_index get put
end
}{
dup begin
new_LookupTables names_index [null null null null] put
end
} ifelse
} ifelse
/names_index names_index 1 add def
} forall
alias_cnt 0 gt {
/AliasedColorants true def
0 1 names_len 1 sub {
/names_index xdf
new_LookupTables names_index get 0 get null eq {
dup /Names get names_index get /name xdf
name (Cyan) eq name (Magenta) eq name (Yellow) eq name (Black) eq
or or or not {
/AliasedColorants false def
exit
} if
} if
} for
AliasedColorants {
dup begin
/Names new_names def
/AliasedColorants true def
/LookupTables new_LookupTables def
currentdict /TTTablesIdx known not {
/TTTablesIdx -1 def
} if
currentdict /NComponents known not {
/NComponents TintMethod /Subtractive eq {4}{3}ifelse def
} if
end
} if
}if
end
} if
dup /devicen_colorspace_dict exch AGMCORE_gput
begin
/MappedCSA CSA map_csa def
currentdict /AliasedColorants known {
AliasedColorants
}{
false
} ifelse
/TintTransform load type /nulltype eq or {
/TintTransform [
0 1 Names length 1 sub
{
/TTTablesIdx TTTablesIdx 1 add def
dup LookupTables exch get dup 0 get null eq
{
1 index
Names exch get
dup (Cyan) eq
{
pop exch
LookupTables length exch sub
/index cvx
0 0 0
}
{
dup (Magenta) eq
{
pop exch
LookupTables length exch sub
/index cvx
0 /exch cvx 0 0
}
{
(Yellow) eq
{
exch
LookupTables length exch sub
/index cvx
0 0 3 -1 /roll cvx 0
}
{
exch
LookupTables length exch sub
/index cvx
0 0 0 4 -1 /roll cvx
} ifelse
} ifelse
} ifelse
5 -1 /roll cvx /astore cvx
}
{
dup length 1 sub
LookupTables length 4 -1 roll sub 1 add
/index cvx /mul cvx /round cvx /cvi cvx /get cvx
} ifelse
Names length TTTablesIdx add 1 add 1 /roll cvx
} for
Names length [/pop cvx] cvx /repeat cvx
NComponents Names length
TintMethod /Subtractive eq
{
subtractive_blend
}
{
additive_blend
} ifelse
] cvx bdf
} if
AGMCORE_host_sep {
Names convert_to_process {
exec_tint_transform
}
{
currentdict /AliasedColorants known {
AliasedColorants not
}{
false
} ifelse
5 dict begin
/AvoidAliasedColorants xdf
/painted? false def
/names_index 0 def
/names_len Names length def
Names {
AvoidAliasedColorants {
/currentspotalias current_spot_alias def
false set_spot_alias
} if
AGMCORE_is_cmyk_sep {
dup (Cyan) eq AGMCORE_cyan_plate and exch
dup (Magenta) eq AGMCORE_magenta_plate and exch
dup (Yellow) eq AGMCORE_yellow_plate and exch
(Black) eq AGMCORE_black_plate and or or or {
/devicen_colorspace_dict AGMCORE_gget /TintProc [
Names names_index /devn_makecustomcolor cvx
] cvx ddf
/painted? true def
} if
painted? {exit} if
}{
0 0 0 0 5 -1 roll findcmykcustomcolor 1 setcustomcolor currentgray 0 eq {
/devicen_colorspace_dict AGMCORE_gget /TintProc [
Names names_index /devn_makecustomcolor cvx
] cvx ddf
/painted? true def
exit
} if
} ifelse
AvoidAliasedColorants {
currentspotalias set_spot_alias
} if
/names_index names_index 1 add def
} forall
painted? {
/devicen_colorspace_dict AGMCORE_gget /names_index names_index put
}{
/devicen_colorspace_dict AGMCORE_gget /TintProc [
names_len [/pop cvx] cvx /repeat cvx 1 /setseparationgray cvx
0 0 0 0 () /findcmykcustomcolor cvx 0 /setcustomcolor cvx
] cvx ddf
} ifelse
end
} ifelse
}
{
AGMCORE_in_rip_sep {
Names convert_to_process not
}{
level3
} ifelse
{
[/DeviceN Names MappedCSA /TintTransform load] setcolorspace_opt
/TintProc level3 not AGMCORE_in_rip_sep and {
[
Names /length cvx [/pop cvx] cvx /repeat cvx
] cvx bdf
}{
/setcolor ldf
} ifelse
}{
exec_tint_transform
} ifelse
} ifelse
set_crd
/AliasedColorants false def
end
} def
/setindexedcolorspace
{
dup /indexed_colorspace_dict exch AGMCORE_gput
begin
currentdict /CSD known {
CSD get_csd /Names known {
CSD get_csd begin
currentdict devncs
AGMCORE_host_sep{
4 dict begin
/devnCompCnt Names length def
/NewLookup HiVal 1 add string def
0 1 HiVal {
/tableIndex xdf
Lookup dup type /stringtype eq {
devnCompCnt tableIndex map_index
}{
exec
} ifelse
setdevicencolor
currentgray
tableIndex exch
HiVal mul cvi
NewLookup 3 1 roll put
} for
[/Indexed currentcolorspace HiVal NewLookup] setcolorspace_opt
end
}{
level3
{
[/Indexed [/DeviceN Names MappedCSA /TintTransform load] HiVal Lookup] setcolorspace_opt
}{
[/Indexed MappedCSA HiVal
[
Lookup dup type /stringtype eq
{/exch cvx CSD get_csd /Names get length dup /mul cvx exch /getinterval cvx {255 div} /forall cvx}
{/exec cvx}ifelse
/TintTransform load /exec cvx
]cvx
]setcolorspace_opt
}ifelse
} ifelse
end
}{
} ifelse
set_crd
}
{
/MappedCSA CSA map_csa def
AGMCORE_host_sep level2 not and{
0 0 0 0 setcmykcolor
}{
[/Indexed MappedCSA
level2 not has_color not and{
dup 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or{
pop [/DeviceGray]
}if
HiVal GrayLookup
}{
HiVal
currentdict/RangeArray known{
{
/indexed_colorspace_dict AGMCORE_gget begin
Lookup exch
dup HiVal gt{
pop HiVal
}if
NComponents mul NComponents getinterval {} forall
NComponents 1 sub -1 0{
RangeArray exch 2 mul 2 getinterval aload pop map255_to_range
NComponents 1 roll
}for
end
} bind
}{
Lookup
}ifelse
}ifelse
] setcolorspace_opt
set_crd
}ifelse
}ifelse
end
}def
/setindexedcolor
{
AGMCORE_host_sep {
/indexed_colorspace_dict AGMCORE_gget dup /CSD known {
begin
CSD get_csd begin
map_indexed_devn
devn
end
end
}{
AGMCORE_gget/Lookup get 4 3 -1 roll map_index
pop setcmykcolor
} ifelse
}{
level3 not AGMCORE_in_rip_sep and /indexed_colorspace_dict AGMCORE_gget /CSD known and {
/indexed_colorspace_dict AGMCORE_gget /CSD get get_csd begin
map_indexed_devn
devn
end
}
{
setcolor
} ifelse
}ifelse
} def
/ignoreimagedata
{
currentoverprint not{
gsave
dup clonedict begin
1 setgray
/Decode [0 1] def
/DataSource <FF> def
/MultipleDataSources false def
/BitsPerComponent 8 def
currentdict end
systemdict /image get exec
grestore
}if
consumeimagedata
}def
/add_csa
{
Adobe_AGM_Core begin
/AGMCORE_CSA_cache xput
end
}def
/get_csa_by_name
{
dup type dup /nametype eq exch /stringtype eq or{
Adobe_AGM_Core begin
1 dict begin
/name xdf
AGMCORE_CSA_cache
{
0 get name eq {
exit
}{
pop
} ifelse
}forall
end
end
}{
pop
} ifelse
}def
/map_csa
{
dup type /nametype eq{
Adobe_AGM_Core/AGMCORE_CSA_cache get exch get
}if
}def
/add_csd
{
Adobe_AGM_Core begin
/AGMCORE_CSD_cache xput
end
}def
/get_csd
{
dup type /nametype eq{
Adobe_AGM_Core/AGMCORE_CSD_cache get exch get
}if
}def
/pattern_buf_init
{
/count get 0 0 put
} def
/pattern_buf_next
{
dup /count get dup 0 get
dup 3 1 roll
1 add 0 xpt
get
} def
/cachepattern_compress
{
5 dict begin
currentfile exch 0 exch /SubFileDecode filter /ReadFilter exch def
/patarray 20 dict def
/string_size 16000 def
/readbuffer string_size string def
currentglobal true setglobal
patarray 1 array dup 0 1 put /count xpt
setglobal
/LZWFilter
{
exch
dup length 0 eq {
pop
}{
patarray dup length 1 sub 3 -1 roll put
} ifelse
{string_size}{0}ifelse string
} /LZWEncode filter def
{
ReadFilter readbuffer readstring
exch LZWFilter exch writestring
not {exit} if
} loop
LZWFilter closefile
patarray
end
}def
/cachepattern
{
2 dict begin
currentfile exch 0 exch /SubFileDecode filter /ReadFilter exch def
/patarray 20 dict def
currentglobal true setglobal
patarray 1 array dup 0 1 put /count xpt
setglobal
{
ReadFilter 16000 string readstring exch
patarray dup length 1 sub 3 -1 roll put
not {exit} if
} loop
patarray dup dup length 1 sub () put
end
}def
/add_pattern
{
Adobe_AGM_Core begin
/AGMCORE_pattern_cache xput
end
}def
/get_pattern
{
dup type /nametype eq{
Adobe_AGM_Core/AGMCORE_pattern_cache get exch get
dup wrap_paintproc
}if
}def
/wrap_paintproc
{
statusdict /currentfilenameextend known{
begin
/OldPaintProc /PaintProc load def
/PaintProc
{
mark exch
dup /OldPaintProc get stopped
{closefile restore end} if
cleartomark
} def
end
} {pop} ifelse
} def
/make_pattern
{
dup matrix currentmatrix matrix concatmatrix 0 0 3 2 roll itransform
exch 3 index /XStep get 1 index exch 2 copy div cvi mul sub sub
exch 3 index /YStep get 1 index exch 2 copy div cvi mul sub sub
matrix translate exch matrix concatmatrix
1 index begin
BBox 0 get XStep div cvi XStep mul /xshift exch neg def
BBox 1 get YStep div cvi YStep mul /yshift exch neg def
BBox 0 get xshift add
BBox 1 get yshift add
BBox 2 get xshift add
BBox 3 get yshift add
4 array astore
/BBox exch def
[ xshift yshift /translate load null /exec load ] dup
3 /PaintProc load put cvx /PaintProc exch def
end
gsave 0 setgray
makepattern
grestore
}def
/set_pattern
{
dup /PatternType get 1 eq{
dup /PaintType get 1 eq{
currentoverprint sop [/DeviceGray] setcolorspace 0 setgray
}if
}if
setpattern
}def
/setcolorspace_opt
{
dup currentcolorspace eq{
pop
}{
setcolorspace
}ifelse
}def
/updatecolorrendering
{
currentcolorrendering/Intent known{
currentcolorrendering/Intent get
}{
null
}ifelse
Intent ne{
false
Intent
AGMCORE_CRD_cache {
exch pop
begin
dup Intent eq{
currentdict setcolorrendering_opt
end
exch pop true exch
exit
}if
end
} forall
pop
not{
systemdict /findcolorrendering known{
Intent findcolorrendering pop
/ColorRendering findresource
dup length dict copy
setcolorrendering_opt
}if
}if
}if
} def
/add_crd
{
AGMCORE_CRD_cache 3 1 roll put
}def
/set_crd
{
AGMCORE_host_sep not level2 and{
currentdict/CRD known{
AGMCORE_CRD_cache CRD get dup null ne{
setcolorrendering_opt
}{
pop
}ifelse
}{
currentdict/Intent known{
updatecolorrendering
}if
}ifelse
currentcolorspace dup type /arraytype eq
{0 get}if
/DeviceRGB eq
{
currentdict/UCR known
{/UCR}{/AGMCORE_currentucr}ifelse
load setundercolorremoval
currentdict/BG known
{/BG}{/AGMCORE_currentbg}ifelse
load setblackgeneration
}if
}if
}def
/setcolorrendering_opt
{
dup currentcolorrendering eq{
pop
}{
begin
/Intent Intent def
currentdict
end
setcolorrendering
}ifelse
}def
/cpaint_gcomp
{
convert_to_process Adobe_AGM_Core/AGMCORE_ConvertToProcess xddf
Adobe_AGM_Core/AGMCORE_ConvertToProcess get not
{
(%end_cpaint_gcomp) flushinput
}if
}def
/cpaint_gsep
{
Adobe_AGM_Core/AGMCORE_ConvertToProcess get
{
(%end_cpaint_gsep) flushinput
}if
}def
/cpaint_gend
{
newpath
}def
/path_rez
{
dup 0 ne{
AGMCORE_deviceDPI exch div
dup 1 lt{
pop 1
}if
setflat
}{
pop
}ifelse
}def
/set_spot_alias_ary
{
/AGMCORE_SpotAliasAry where{
pop pop
}{
Adobe_AGM_Core/AGMCORE_SpotAliasAry xddf
true set_spot_alias
}ifelse
}def
/set_spot_alias
{
/AGMCORE_SpotAliasAry where{
/AGMCORE_current_spot_alias 3 -1 roll put
}{
pop
}ifelse
}def
/current_spot_alias
{
/AGMCORE_SpotAliasAry where{
/AGMCORE_current_spot_alias get
}{
false
}ifelse
}def
/map_alias
{
/AGMCORE_SpotAliasAry where{
begin
/AGMCORE_name xdf
false
AGMCORE_SpotAliasAry{
dup/Name get AGMCORE_name eq{
save exch
/Adobe_AGM_Core currentdict def
/CSD get get_csd
exch restore
exch pop true
exit
}{
pop
}ifelse
}forall
end
}{
pop false
}ifelse
}bdf
/spot_alias
{
true set_spot_alias
/AGMCORE_&setcustomcolor AGMCORE_key_known not {
Adobe_AGM_Core/AGMCORE_&setcustomcolor /setcustomcolor load put
} if
/customcolor_tint 1 AGMCORE_gput
Adobe_AGM_Core begin
/setcustomcolor
{
dup /customcolor_tint exch AGMCORE_gput
current_spot_alias{
1 index 4 get map_alias{
mark 3 1 roll
setsepcolorspace
counttomark 0 ne{
setsepcolor
}if
pop
pop
}{
AGMCORE_&setcustomcolor
}ifelse
}{
AGMCORE_&setcustomcolor
}ifelse
}bdf
end
}def
/begin_feature
{
Adobe_AGM_Core/AGMCORE_feature_dictCount countdictstack put
count Adobe_AGM_Core/AGMCORE_feature_opCount 3 -1 roll put
{Adobe_AGM_Core/AGMCORE_feature_ctm matrix currentmatrix put}if
}def
/end_feature
{
2 dict begin
/spd /setpagedevice load def
/setpagedevice { get_gstate spd set_gstate } def
stopped{$error/newerror false put}if
end
count Adobe_AGM_Core/AGMCORE_feature_opCount get sub dup 0 gt{{pop}repeat}{pop}ifelse
countdictstack Adobe_AGM_Core/AGMCORE_feature_dictCount get sub dup 0 gt{{end}repeat}{pop}ifelse
{Adobe_AGM_Core/AGMCORE_feature_ctm get setmatrix}if
}def
/set_negative
{
Adobe_AGM_Core begin
/AGMCORE_inverting exch def
level2{
currentpagedevice/NegativePrint known{
currentpagedevice/NegativePrint get Adobe_AGM_Core/AGMCORE_inverting get ne{
true begin_feature true{
bdict /NegativePrint Adobe_AGM_Core/AGMCORE_inverting get edict setpagedevice
}end_feature
}if
/AGMCORE_inverting false def
}if
}if
AGMCORE_inverting{
[{1 exch sub}/exec load dup currenttransfer exch]cvx bind settransfer
gsave newpath clippath 1 /setseparationgray where{pop setseparationgray}{setgray}ifelse
/AGMIRS_&fill where {pop AGMIRS_&fill}{fill} ifelse grestore
}if
end
}def
/lw_save_restore_override {
/md where {
pop
md begin
initializepage
/initializepage{}def
/pmSVsetup{} def
/endp{}def
/pse{}def
/psb{}def
/orig_showpage where
{pop}
{/orig_showpage /showpage load def}
ifelse
/showpage {orig_showpage gR} def
end
}if
}def
/pscript_showpage_override {
/NTPSOct95 where
{
begin
showpage
save
/showpage /restore load def
/restore {exch pop}def
end
}if
}def
/driver_media_override
{
/md where {
pop
md /initializepage known {
md /initializepage {} put
} if
md /rC known {
md /rC {4{pop}repeat} put
} if
}if
/mysetup where {
/mysetup [1 0 0 1 0 0] put
}if
Adobe_AGM_Core /AGMCORE_Default_CTM matrix currentmatrix put
level2
{Adobe_AGM_Core /AGMCORE_Default_PageSize currentpagedevice/PageSize get put}if
}def
/driver_check_media_override
{
/PrepsDict where
{pop}
{
Adobe_AGM_Core /AGMCORE_Default_CTM get matrix currentmatrix ne
Adobe_AGM_Core /AGMCORE_Default_PageSize get type /arraytype eq
{
Adobe_AGM_Core /AGMCORE_Default_PageSize get 0 get currentpagedevice/PageSize get 0 get eq and
Adobe_AGM_Core /AGMCORE_Default_PageSize get 1 get currentpagedevice/PageSize get 1 get eq and
}if
{
Adobe_AGM_Core /AGMCORE_Default_CTM get setmatrix
}if
}ifelse
}def
AGMCORE_err_strings begin
/AGMCORE_bad_environ (Environment not satisfactory for this job. Ensure that the PPD is correct or that the PostScript level requested is supported by this printer. ) def
/AGMCORE_color_space_onhost_seps (This job contains colors that will not separate with on-host methods. ) def
/AGMCORE_invalid_color_space (This job contains an invalid color space. ) def
end
end
systemdict /setpacking known
{
setpacking
} if
%%EndResource
%%BeginResource: procset Adobe_CoolType_Core 2.23 0
%%Copyright: Copyright 1997-2003 Adobe Systems Incorporated. All Rights Reserved.
%%Version: 2.23 0
10 dict begin
/Adobe_CoolType_Passthru currentdict def
/Adobe_CoolType_Core_Defined userdict /Adobe_CoolType_Core known def
Adobe_CoolType_Core_Defined
{ /Adobe_CoolType_Core userdict /Adobe_CoolType_Core get def }
if
userdict /Adobe_CoolType_Core 60 dict dup begin put
/Adobe_CoolType_Version 2.23 def
/Level2?
systemdict /languagelevel known dup
{ pop systemdict /languagelevel get 2 ge }
if def
Level2? not
{
/currentglobal false def
/setglobal /pop load def
/gcheck { pop false } bind def
/currentpacking false def
/setpacking /pop load def
/SharedFontDirectory 0 dict def
}
if
currentpacking
true setpacking
/@_SaveStackLevels
{
Adobe_CoolType_Data
begin
@opStackCountByLevel @opStackLevel
2 copy known not
{ 2 copy 3 dict dup /args 7 index 5 add array put put get }
{
get dup /args get dup length 3 index lt
{
dup length 5 add array exch
1 index exch 0 exch putinterval
1 index exch /args exch put
}
{ pop }
ifelse
}
ifelse
begin
count 2 sub 1 index lt
{ pop count 1 sub }
if
dup /argCount exch def
dup 0 gt
{
exch 1 index 2 add 1 roll
args exch 0 exch getinterval
astore pop
}
{ pop }
ifelse
count 1 sub /restCount exch def
end
/@opStackLevel @opStackLevel 1 add def
countdictstack 1 sub
@dictStackCountByLevel exch @dictStackLevel exch put
/@dictStackLevel @dictStackLevel 1 add def
end
} bind def
/@_RestoreStackLevels
{
Adobe_CoolType_Data
begin
/@opStackLevel @opStackLevel 1 sub def
@opStackCountByLevel @opStackLevel get
begin
count restCount sub dup 0 gt
{ { pop } repeat }
{ pop }
ifelse
args 0 argCount getinterval {} forall
end
/@dictStackLevel @dictStackLevel 1 sub def
@dictStackCountByLevel @dictStackLevel get
end
countdictstack exch sub dup 0 gt
{ { end } repeat }
{ pop }
ifelse
} bind def
/@_PopStackLevels
{
Adobe_CoolType_Data
begin
/@opStackLevel @opStackLevel 1 sub def
/@dictStackLevel @dictStackLevel 1 sub def
end
} bind def
/@Raise
{
exch cvx exch errordict exch get exec
stop
} bind def
/@ReRaise
{
cvx $error /errorname get errordict exch get exec
stop
} bind def
/@Stopped
{
0 @#Stopped
} bind def
/@#Stopped
{
@_SaveStackLevels
stopped
{ @_RestoreStackLevels true }
{ @_PopStackLevels false }
ifelse
} bind def
/@Arg
{
Adobe_CoolType_Data
begin
@opStackCountByLevel @opStackLevel 1 sub get /args get exch get
end
} bind def
currentglobal true setglobal
/CTHasResourceForAllBug
Level2?
{
1 dict dup begin
mark
{
(*) { pop stop } 128 string /Category
resourceforall
}
stopped
cleartomark
currentdict eq dup
{ end }
if
not
}
{ false }
ifelse
def
/CTHasResourceStatusBug
Level2?
{
mark
{ /steveamerige /Category resourcestatus }
stopped
{ cleartomark true }
{ cleartomark currentglobal not }
ifelse
}
{ false }
ifelse
def
setglobal
/CTResourceStatus
{
mark 3 1 roll
/Category findresource
begin
({ResourceStatus} stopped) 0 () /SubFileDecode filter cvx exec
{ cleartomark false }
{ { 3 2 roll pop true } { cleartomark false } ifelse }
ifelse
end
} bind def
/CTWorkAroundBugs
{
Level2?
{
/cid_PreLoad /ProcSet resourcestatus
{
pop pop
currentglobal
mark
{
(*)
{
dup /CMap CTHasResourceStatusBug
{ CTResourceStatus }
{ resourcestatus }
ifelse
{
pop dup 0 eq exch 1 eq or
{
dup /CMap findresource gcheck setglobal
/CMap undefineresource
}
{
pop CTHasResourceForAllBug
{ exit }
{ stop }
ifelse
}
ifelse
}
{ pop }
ifelse
}
128 string /CMap resourceforall
}
stopped
{ cleartomark }
stopped pop
setglobal
}
if
}
if
} bind def
/doc_setup
{
Adobe_CoolType_Core
begin
CTWorkAroundBugs
/mov /moveto load def
/nfnt /newencodedfont load def
/mfnt /makefont load def
/sfnt /setfont load def
/ufnt /undefinefont load def
/chp /charpath load def
/awsh /awidthshow load def
/wsh /widthshow load def
/ash /ashow load def
/sh /show load def
end
userdict /Adobe_CoolType_Data 10 dict dup
begin
/AddWidths? false def
/CC 0 def
/charcode 2 string def
/@opStackCountByLevel 32 dict def
/@opStackLevel 0 def
/@dictStackCountByLevel 32 dict def
/@dictStackLevel 0 def
/InVMFontsByCMap 10 dict def
/InVMDeepCopiedFonts 10 dict def
end put
} bind def
/doc_trailer
{
currentdict Adobe_CoolType_Core eq
{ end }
if
} bind def
/page_setup
{
Adobe_CoolType_Core begin
} bind def
/page_trailer
{
end
} bind def
/unload
{
systemdict /languagelevel known
{
systemdict/languagelevel get 2 ge
{
userdict/Adobe_CoolType_Core 2 copy known
{ undef }
{ pop pop }
ifelse
}
if
}
if
} bind def
/ndf
{
1 index where
{ pop pop pop }
{ dup xcheck { bind } if def }
ifelse
} def
/findfont systemdict
begin
userdict
begin
/globaldict where { /globaldict get begin } if
dup where pop exch get
/globaldict where { pop end } if
end
end
Adobe_CoolType_Core_Defined
{ /systemfindfont exch def }
{
/findfont 1 index def
/systemfindfont exch def
}
ifelse
/undefinefont
{ pop } ndf
/copyfont
{
currentglobal 3 1 roll
1 index gcheck setglobal
dup null eq { 0 } { dup length } ifelse
2 index length add 1 add dict
begin
exch
{
1 index /FID eq
{ pop pop }
{ def }
ifelse
}
forall
dup null eq
{ pop }
{ { def } forall }
ifelse
currentdict
end
exch setglobal
} bind def
/copyarray
{
currentglobal exch
dup gcheck setglobal
dup length array copy
exch setglobal
} bind def
/newencodedfont
{
currentglobal
{
SharedFontDirectory 3 index known
{ SharedFontDirectory 3 index get /FontReferenced known }
{ false }
ifelse
}
{
FontDirectory 3 index known
{ FontDirectory 3 index get /FontReferenced known }
{
SharedFontDirectory 3 index known
{ SharedFontDirectory 3 index get /FontReferenced known }
{ false }
ifelse
}
ifelse
}
ifelse
dup
{
3 index findfont /FontReferenced get
2 index dup type /nametype eq
{findfont}
if ne
{ pop false }
if
}
if
{
pop
1 index findfont
/Encoding get exch
0 1 255
{ 2 copy get 3 index 3 1 roll put }
for
pop pop pop
}
{
dup type /nametype eq
{ findfont }
if
dup dup maxlength 2 add dict
begin
exch
{
1 index /FID ne
{def}
{pop pop}
ifelse
}
forall
/FontReferenced exch def
/Encoding exch dup length array copy def
/FontName 1 index dup type /stringtype eq { cvn } if def dup
currentdict
end
definefont def
}
ifelse
} bind def
/SetSubstituteStrategy
{
$SubstituteFont
begin
dup type /dicttype ne
{ 0 dict }
if
currentdict /$Strategies known
{
exch $Strategies exch
2 copy known
{
get
2 copy maxlength exch maxlength add dict
begin
{ def } forall
{ def } forall
currentdict
dup /$Init known
{ dup /$Init get exec }
if
end
/$Strategy exch def
}
{ pop pop pop }
ifelse
}
{ pop pop }
ifelse
end
} bind def
/scff
{
$SubstituteFont
begin
dup type /stringtype eq
{ dup length exch }
{ null }
ifelse
/$sname exch def
/$slen exch def
/$inVMIndex
$sname null eq
{
1 index $str cvs
dup length $slen sub $slen getinterval cvn
}
{ $sname }
ifelse def
end
{ findfont }
@Stopped
{
dup length 8 add string exch
1 index 0 (BadFont:) putinterval
1 index exch 8 exch dup length string cvs putinterval cvn
{ findfont }
@Stopped
{ pop /Courier findfont }
if
}
if
$SubstituteFont
begin
/$sname null def
/$slen 0 def
/$inVMIndex null def
end
} bind def
/isWidthsOnlyFont
{
dup /WidthsOnly known
{ pop pop true }
{
dup /FDepVector known
{ /FDepVector get { isWidthsOnlyFont dup { exit } if } forall }
{
dup /FDArray known
{ /FDArray get { isWidthsOnlyFont dup { exit } if } forall }
{ pop }
ifelse
}
ifelse
}
ifelse
} bind def
/?str1 256 string def
/?set
{
$SubstituteFont
begin
/$substituteFound false def
/$fontname 4 index def
/$doSmartSub false def
end
3 index
currentglobal false setglobal exch
/CompatibleFonts /ProcSet resourcestatus
{
pop pop
/CompatibleFonts /ProcSet findresource
begin
dup /CompatibleFont currentexception
1 index /CompatibleFont true setexception
1 index /Font resourcestatus
{
pop pop
3 2 roll setglobal
end
exch
dup findfont
/CompatibleFonts /ProcSet findresource
begin
3 1 roll exch /CompatibleFont exch setexception
end
}
{
3 2 roll setglobal
1 index exch /CompatibleFont exch setexception
end
findfont
$SubstituteFont /$substituteFound true put
}
ifelse
}
{ exch setglobal findfont }
ifelse
$SubstituteFont
begin
$substituteFound
{
false
(%%[Using embedded font ) print
5 index ?str1 cvs print
( to avoid the font substitution problem noted earlier.]%%\n) print
}
{
dup /FontName known
{
dup /FontName get $fontname eq
1 index /DistillerFauxFont known not and
/currentdistillerparams where
{ pop false 2 index isWidthsOnlyFont not and }
if
}
{ false }
ifelse
}
ifelse
exch pop
/$doSmartSub true def
end
{
exch pop exch pop exch
2 dict dup /Found 3 index put
exch findfont exch
}
{
exch exec
exch dup findfont
dup /FontType get 3 eq
{
exch ?str1 cvs
dup length 1 sub
-1 0
{
exch dup 2 index get 42 eq
{
exch 0 exch getinterval cvn 4 1 roll 3 2 roll pop
exit
}
{exch pop} ifelse
}for
}
{
exch pop
} ifelse
2 dict dup /Downloaded 6 5 roll put
}
ifelse
dup /FontName 4 index put copyfont definefont pop
} bind def
/?str2 256 string def
/?add
{
1 index type /integertype eq
{ exch true 4 2 }
{ false 3 1 }
ifelse
roll
1 index findfont
dup /Widths known
{
Adobe_CoolType_Data /AddWidths? true put
gsave dup 1000 scalefont setfont
}
if
/Downloaded known
{
exec
exch
{
exch ?str2 cvs exch
findfont /Downloaded get 1 dict begin /Downloaded 1 index def ?str1 cvs length
?str1 1 index 1 add 3 index putinterval
exch length 1 add 1 index add
?str1 2 index (*) putinterval
?str1 0 2 index getinterval cvn findfont
?str1 3 index (+) putinterval
2 dict dup /FontName ?str1 0 6 index getinterval cvn put
dup /Downloaded Downloaded put end copyfont
dup /FontName get exch definefont pop pop pop
}
{
pop
}
ifelse
}
{
pop
exch
{
findfont
dup /Found get
dup length exch ?str1 cvs pop
?str1 1 index (+) putinterval
?str1 1 index 1 add 4 index ?str2 cvs putinterval
?str1 exch 0 exch 5 4 roll ?str2 cvs length 1 add add getinterval cvn
1 dict exch 1 index exch /FontName exch put copyfont
dup /FontName get exch definefont pop
}
{
pop
}
ifelse
}
ifelse
Adobe_CoolType_Data /AddWidths? get
{ grestore Adobe_CoolType_Data /AddWidths? false put }
if
} bind def
/?sh
{
currentfont /Downloaded known { exch } if pop
} bind def
/?chp
{
currentfont /Downloaded known { pop } { false chp } ifelse
} bind def
/?mv
{
currentfont /Downloaded known { moveto pop pop } { pop pop moveto } ifelse
} bind def
setpacking
userdict /$SubstituteFont 25 dict put
1 dict
begin
/SubstituteFont
dup $error exch 2 copy known
{ get }
{ pop pop { pop /Courier } bind }
ifelse def
/currentdistillerparams where dup
{
pop pop
currentdistillerparams /CannotEmbedFontPolicy 2 copy known
{ get /Error eq }
{ pop pop false }
ifelse
}
if not
{
countdictstack array dictstack 0 get
begin
userdict
begin
$SubstituteFont
begin
/$str 128 string def
/$fontpat 128 string def
/$slen 0 def
/$sname null def
/$match false def
/$fontname null def
/$substituteFound false def
/$inVMIndex null def
/$doSmartSub true def
/$depth 0 def
/$fontname null def
/$italicangle 26.5 def
/$dstack null def
/$Strategies 10 dict dup
begin
/$Type3Underprint
{
currentglobal exch false setglobal
11 dict
begin
/UseFont exch
$WMode 0 ne
{
dup length dict copy
dup /WMode $WMode put
/UseFont exch definefont
}
if def
/FontName $fontname dup type /stringtype eq { cvn } if def
/FontType 3 def
/FontMatrix [ .001 0 0 .001 0 0 ] def
/Encoding 256 array dup 0 1 255 { /.notdef put dup } for pop def
/FontBBox [ 0 0 0 0 ] def
/CCInfo 7 dict dup
begin
/cc null def
/x 0 def
/y 0 def
end def
/BuildChar
{
exch
begin
CCInfo
begin
1 string dup 0 3 index put exch pop
/cc exch def
UseFont 1000 scalefont setfont
cc stringwidth /y exch def /x exch def
x y setcharwidth
$SubstituteFont /$Strategy get /$Underprint get exec
0 0 moveto cc show
x y moveto
end
end
} bind def
currentdict
end
exch setglobal
} bind def
/$GetaTint
2 dict dup
begin
/$BuildFont
{
dup /WMode known
{ dup /WMode get }
{ 0 }
ifelse
/$WMode exch def
$fontname exch
dup /FontName known
{
dup /FontName get
dup type /stringtype eq { cvn } if
}
{ /unnamedfont }
ifelse
exch
Adobe_CoolType_Data /InVMDeepCopiedFonts get
1 index /FontName get known
{
pop
Adobe_CoolType_Data /InVMDeepCopiedFonts get
1 index get
null copyfont
}
{ $deepcopyfont }
ifelse
exch 1 index exch /FontBasedOn exch put
dup /FontName $fontname dup type /stringtype eq { cvn } if put
definefont
Adobe_CoolType_Data /InVMDeepCopiedFonts get
begin
dup /FontBasedOn get 1 index def
end
} bind def
/$Underprint
{
gsave
x abs y abs gt
{ /y 1000 def }
{ /x -1000 def 500 120 translate }
ifelse
Level2?
{
[ /Separation (All) /DeviceCMYK { 0 0 0 1 pop } ]
setcolorspace
}
{ 0 setgray }
ifelse
10 setlinewidth
x .8 mul
[ 7 3 ]
{
y mul 8 div 120 sub x 10 div exch moveto
0 y 4 div neg rlineto
dup 0 rlineto
0 y 4 div rlineto
closepath
gsave
Level2?
{ .2 setcolor }
{ .8 setgray }
ifelse
fill grestore
stroke
}
forall
pop
grestore
} bind def
end def
/$Oblique
1 dict dup
begin
/$BuildFont
{
currentglobal exch dup gcheck setglobal
null copyfont
begin
/FontBasedOn
currentdict /FontName known
{
FontName
dup type /stringtype eq { cvn } if
}
{ /unnamedfont }
ifelse
def
/FontName $fontname dup type /stringtype eq { cvn } if def
/currentdistillerparams where
{ pop }
{
/FontInfo currentdict /FontInfo known
{ FontInfo null copyfont }
{ 2 dict }
ifelse
dup
begin
/ItalicAngle $italicangle def
/FontMatrix FontMatrix
[ 1 0 ItalicAngle dup sin exch cos div 1 0 0 ]
matrix concatmatrix readonly
end
4 2 roll def
def
}
ifelse
FontName currentdict
end
definefont
exch setglobal
} bind def
end def
/$None
1 dict dup
begin
/$BuildFont {} bind def
end def
end def
/$Oblique SetSubstituteStrategy
/$findfontByEnum
{
dup type /stringtype eq { cvn } if
dup /$fontname exch def
$sname null eq
{ $str cvs dup length $slen sub $slen getinterval }
{ pop $sname }
ifelse
$fontpat dup 0 (fonts/*) putinterval exch 7 exch putinterval
/$match false def
$SubstituteFont /$dstack countdictstack array dictstack put
mark
{
$fontpat 0 $slen 7 add getinterval
{ /$match exch def exit }
$str filenameforall
}
stopped
{
cleardictstack
currentdict
true
$SubstituteFont /$dstack get
{
exch
{
1 index eq
{ pop false }
{ true }
ifelse
}
{ begin false }
ifelse
}
forall
pop
}
if
cleartomark
/$slen 0 def
$match false ne
{ $match (fonts/) anchorsearch pop pop cvn }
{ /Courier }
ifelse
} bind def
/$ROS 1 dict dup
begin
/Adobe 4 dict dup
begin
/Japan1 [ /Ryumin-Light /HeiseiMin-W3
/GothicBBB-Medium /HeiseiKakuGo-W5
/HeiseiMaruGo-W4 /Jun101-Light ] def
/Korea1 [ /HYSMyeongJo-Medium /HYGoThic-Medium ] def
/GB1 [ /STSong-Light /STHeiti-Regular ] def
/CNS1 [ /MKai-Medium /MHei-Medium ] def
end def
end def
/$cmapname null def
/$deepcopyfont
{
dup /FontType get 0 eq
{
1 dict dup /FontName /copied put copyfont
begin
/FDepVector FDepVector copyarray
0 1 2 index length 1 sub
{
2 copy get $deepcopyfont
dup /FontName /copied put
/copied exch definefont
3 copy put pop pop
}
for
def
currentdict
end
}
{ $Strategies /$Type3Underprint get exec }
ifelse
} bind def
/$buildfontname
{
dup /CIDFont findresource /CIDSystemInfo get
begin
Registry length Ordering length Supplement 8 string cvs
3 copy length 2 add add add string
dup 5 1 roll dup 0 Registry putinterval
dup 4 index (-) putinterval
dup 4 index 1 add Ordering putinterval
4 2 roll add 1 add 2 copy (-) putinterval
end
1 add 2 copy 0 exch getinterval $cmapname $fontpat cvs exch
anchorsearch
{ pop pop 3 2 roll putinterval cvn /$cmapname exch def }
{ pop pop pop pop pop }
ifelse
length
$str 1 index (-) putinterval 1 add
$str 1 index $cmapname $fontpat cvs putinterval
$cmapname length add
$str exch 0 exch getinterval cvn
} bind def
/$findfontByROS
{
/$fontname exch def
$ROS Registry 2 copy known
{
get Ordering 2 copy known
{ get }
{ pop pop [] }
ifelse
}
{ pop pop [] }
ifelse
false exch
{
dup /CIDFont resourcestatus
{
pop pop
save
1 index /CIDFont findresource
dup /WidthsOnly known
{ dup /WidthsOnly get }
{ false }
ifelse
exch pop
exch restore
{ pop }
{ exch pop true exit }
ifelse
}
{ pop }
ifelse
}
forall
{ $str cvs $buildfontname }
{
false (*)
{
save exch
dup /CIDFont findresource
dup /WidthsOnly known
{ dup /WidthsOnly get not }
{ true }
ifelse
exch /CIDSystemInfo get
dup /Registry get Registry eq
exch /Ordering get Ordering eq and and
{ exch restore exch pop true exit }
{ pop restore }
ifelse
}
$str /CIDFont resourceforall
{ $buildfontname }
{ $fontname $findfontByEnum }
ifelse
}
ifelse
} bind def
end
end
currentdict /$error known currentdict /languagelevel known and dup
{ pop $error /SubstituteFont known }
if
dup
{ $error }
{ Adobe_CoolType_Core }
ifelse
begin
{
/SubstituteFont
/CMap /Category resourcestatus
{
pop pop
{
$SubstituteFont
begin
/$substituteFound true def
dup length $slen gt
$sname null ne or
$slen 0 gt and
{
$sname null eq
{ dup $str cvs dup length $slen sub $slen getinterval cvn }
{ $sname }
ifelse
Adobe_CoolType_Data /InVMFontsByCMap get
1 index 2 copy known
{
get
false exch
{
pop
currentglobal
{
GlobalFontDirectory 1 index known
{ exch pop true exit }
{ pop }
ifelse
}
{
FontDirectory 1 index known
{ exch pop true exit }
{
GlobalFontDirectory 1 index known
{ exch pop true exit }
{ pop }
ifelse
}
ifelse
}
ifelse
}
forall
}
{ pop pop false }
ifelse
{
exch pop exch pop
}
{
dup /CMap resourcestatus
{
pop pop
dup /$cmapname exch def
/CMap findresource /CIDSystemInfo get { def } forall
$findfontByROS
}
{
128 string cvs
dup (-) search
{
3 1 roll search
{
3 1 roll pop
{ dup cvi }
stopped
{ pop pop pop pop pop $findfontByEnum }
{
4 2 roll pop pop
exch length
exch
2 index length
2 index
sub
exch 1 sub -1 0
{
$str cvs dup length
4 index
0
4 index
4 3 roll add
getinterval
exch 1 index exch 3 index exch
putinterval
dup /CMap resourcestatus
{
pop pop
4 1 roll pop pop pop
dup /$cmapname exch def
/CMap findresource /CIDSystemInfo get { def } forall
$findfontByROS
true exit
}
{ pop }
ifelse
}
for
dup type /booleantype eq
{ pop }
{ pop pop pop $findfontByEnum }
ifelse
}
ifelse
}
{ pop pop pop $findfontByEnum }
ifelse
}
{ pop pop $findfontByEnum }
ifelse
}
ifelse
}
ifelse
}
{ //SubstituteFont exec }
ifelse
/$slen 0 def
end
}
}
{
{
$SubstituteFont
begin
/$substituteFound true def
dup length $slen gt
$sname null ne or
$slen 0 gt and
{ $findfontByEnum }
{ //SubstituteFont exec }
ifelse
end
}
}
ifelse
bind readonly def
Adobe_CoolType_Core /scfindfont /systemfindfont load put
}
{
/scfindfont
{
$SubstituteFont
begin
dup systemfindfont
dup /FontName known
{ dup /FontName get dup 3 index ne }
{ /noname true }
ifelse
dup
{
/$origfontnamefound 2 index def
/$origfontname 4 index def /$substituteFound true def
}
if
exch pop
{
$slen 0 gt
$sname null ne
3 index length $slen gt or and
{
pop dup $findfontByEnum findfont
dup maxlength 1 add dict
begin
{ 1 index /FID eq { pop pop } { def } ifelse }
forall
currentdict
end
definefont
dup /FontName known { dup /FontName get } { null } ifelse
$origfontnamefound ne
{
$origfontname $str cvs print
( substitution revised, using ) print
dup /FontName known
{ dup /FontName get } { (unspecified font) }
ifelse
$str cvs print (.\n) print
}
if
}
{ exch pop }
ifelse
}
{ exch pop }
ifelse
end
} bind def
}
ifelse
end
end
Adobe_CoolType_Core_Defined not
{
Adobe_CoolType_Core /findfont
{
$SubstituteFont
begin
$depth 0 eq
{
/$fontname 1 index dup type /stringtype ne { $str cvs } if def
/$substituteFound false def
}
if
/$depth $depth 1 add def
end
scfindfont
$SubstituteFont
begin
/$depth $depth 1 sub def
$substituteFound $depth 0 eq and
{
$inVMIndex null ne
{ dup $inVMIndex $AddInVMFont }
if
$doSmartSub
{
currentdict /$Strategy known
{ $Strategy /$BuildFont get exec }
if
}
if
}
if
end
} bind put
}
if
}
if
end
/$AddInVMFont
{
exch /FontName 2 copy known
{
get
1 dict dup begin exch 1 index gcheck def end exch
Adobe_CoolType_Data /InVMFontsByCMap get exch
$DictAdd
}
{ pop pop pop }
ifelse
} bind def
/$DictAdd
{
2 copy known not
{ 2 copy 4 index length dict put }
if
Level2? not
{
2 copy get dup maxlength exch length 4 index length add lt
2 copy get dup length 4 index length add exch maxlength 1 index lt
{
2 mul dict
begin
2 copy get { forall } def
2 copy currentdict put
end
}
{ pop }
ifelse
}
if
get
begin
{ def }
forall
end
} bind def
end
end
%%EndResource
%%BeginResource: procset Adobe_CoolType_Utility_MAKEOCF 1.19 0
%%Copyright: Copyright 1987-2003 Adobe Systems Incorporated.
%%Version: 1.19 0
systemdict /languagelevel known dup
{ currentglobal false setglobal }
{ false }
ifelse
exch
userdict /Adobe_CoolType_Utility 2 copy known
{ 2 copy get dup maxlength 25 add dict copy }
{ 25 dict }
ifelse put
Adobe_CoolType_Utility
begin
/ct_Level2? exch def
/ct_Clone? 1183615869 internaldict dup
/CCRun known not
exch /eCCRun known not
ct_Level2? and or def
ct_Level2?
{ globaldict begin currentglobal true setglobal }
if
/ct_AddStdCIDMap
ct_Level2?
{ {
((Hex) 57 StartData
0615 1e27 2c39 1c60 d8a8 cc31 fe2b f6e0
7aa3 e541 e21c 60d8 a8c9 c3d0 6d9e 1c60
d8a8 c9c2 02d7 9a1c 60d8 a849 1c60 d8a8
cc36 74f4 1144 b13b 77) 0 () /SubFileDecode filter cvx exec
} }
{ {
<BAB431EA07F209EB8C4348311481D9D3F76E3D15246555577D87BC510ED54E
118C39697FA9F6DB58128E60EB8A12FA24D7CDD2FA94D221FA9EC8DA3E5E6A1C
4ACECC8C2D39C54E7C946031DD156C3A6B4A09AD29E1867A> eexec
} }
ifelse bind def
userdict /cid_extensions known
dup { cid_extensions /cid_UpdateDB known and } if
{
cid_extensions
begin
/cid_GetCIDSystemInfo
{
1 index type /stringtype eq
{ exch cvn exch }
if
cid_extensions
begin
dup load 2 index known
{
2 copy
cid_GetStatusInfo
dup null ne
{
1 index load
3 index get
dup null eq
{ pop pop cid_UpdateDB }
{
exch
1 index /Created get eq
{ exch pop exch pop }
{ pop cid_UpdateDB }
ifelse
}
ifelse
}
{ pop cid_UpdateDB }
ifelse
}
{ cid_UpdateDB }
ifelse
end
} bind def
end
}
if
ct_Level2?
{ end setglobal }
if
/ct_UseNativeCapability? systemdict /composefont known def
/ct_MakeOCF 35 dict def
/ct_Vars 25 dict def
/ct_GlyphDirProcs 6 dict def
/ct_BuildCharDict 15 dict dup
begin
/charcode 2 string def
/dst_string 1500 string def
/nullstring () def
/usewidths? true def
end def
ct_Level2? { setglobal } { pop } ifelse
ct_GlyphDirProcs
begin
/GetGlyphDirectory
{
systemdict /languagelevel known
{ pop /CIDFont findresource /GlyphDirectory get }
{
1 index /CIDFont findresource /GlyphDirectory
get dup type /dicttype eq
{
dup dup maxlength exch length sub 2 index lt
{
dup length 2 index add dict copy 2 index
/CIDFont findresource/GlyphDirectory 2 index put
}
if
}
if
exch pop exch pop
}
ifelse
+
} def
/+
{
systemdict /languagelevel known
{
currentglobal false setglobal
3 dict begin
/vm exch def
}
{ 1 dict begin }
ifelse
/$ exch def
systemdict /languagelevel known
{
vm setglobal
/gvm currentglobal def
$ gcheck setglobal
}
if
? { $ begin } if
} def
/? { $ type /dicttype eq } def
/| {
userdict /Adobe_CoolType_Data known
{
Adobe_CoolType_Data /AddWidths? known
{
currentdict Adobe_CoolType_Data
begin
begin
AddWidths?
{
Adobe_CoolType_Data /CC 3 index put
? { def } { $ 3 1 roll put } ifelse
CC charcode exch 1 index 0 2 index 256 idiv put
1 index exch 1 exch 256 mod put
stringwidth 2 array astore
currentfont /Widths get exch CC exch put
}
{ ? { def } { $ 3 1 roll put } ifelse }
ifelse
end
end
}
{ ? { def } { $ 3 1 roll put } ifelse } ifelse
}
{ ? { def } { $ 3 1 roll put } ifelse }
ifelse
} def
/!
{
? { end } if
systemdict /languagelevel known
{ gvm setglobal }
if
end
} def
/: { string currentfile exch readstring pop } executeonly def
end
ct_MakeOCF
begin
/ct_cHexEncoding
[/c00/c01/c02/c03/c04/c05/c06/c07/c08/c09/c0A/c0B/c0C/c0D/c0E/c0F/c10/c11/c12
/c13/c14/c15/c16/c17/c18/c19/c1A/c1B/c1C/c1D/c1E/c1F/c20/c21/c22/c23/c24/c25
/c26/c27/c28/c29/c2A/c2B/c2C/c2D/c2E/c2F/c30/c31/c32/c33/c34/c35/c36/c37/c38
/c39/c3A/c3B/c3C/c3D/c3E/c3F/c40/c41/c42/c43/c44/c45/c46/c47/c48/c49/c4A/c4B
/c4C/c4D/c4E/c4F/c50/c51/c52/c53/c54/c55/c56/c57/c58/c59/c5A/c5B/c5C/c5D/c5E
/c5F/c60/c61/c62/c63/c64/c65/c66/c67/c68/c69/c6A/c6B/c6C/c6D/c6E/c6F/c70/c71
/c72/c73/c74/c75/c76/c77/c78/c79/c7A/c7B/c7C/c7D/c7E/c7F/c80/c81/c82/c83/c84
/c85/c86/c87/c88/c89/c8A/c8B/c8C/c8D/c8E/c8F/c90/c91/c92/c93/c94/c95/c96/c97
/c98/c99/c9A/c9B/c9C/c9D/c9E/c9F/cA0/cA1/cA2/cA3/cA4/cA5/cA6/cA7/cA8/cA9/cAA
/cAB/cAC/cAD/cAE/cAF/cB0/cB1/cB2/cB3/cB4/cB5/cB6/cB7/cB8/cB9/cBA/cBB/cBC/cBD
/cBE/cBF/cC0/cC1/cC2/cC3/cC4/cC5/cC6/cC7/cC8/cC9/cCA/cCB/cCC/cCD/cCE/cCF/cD0
/cD1/cD2/cD3/cD4/cD5/cD6/cD7/cD8/cD9/cDA/cDB/cDC/cDD/cDE/cDF/cE0/cE1/cE2/cE3
/cE4/cE5/cE6/cE7/cE8/cE9/cEA/cEB/cEC/cED/cEE/cEF/cF0/cF1/cF2/cF3/cF4/cF5/cF6
/cF7/cF8/cF9/cFA/cFB/cFC/cFD/cFE/cFF] def
/ct_CID_STR_SIZE 8000 def
/ct_mkocfStr100 100 string def
/ct_defaultFontMtx [.001 0 0 .001 0 0] def
/ct_1000Mtx [1000 0 0 1000 0 0] def
/ct_raise {exch cvx exch errordict exch get exec stop} bind def
/ct_reraise
{ cvx $error /errorname get (Error: ) print dup ( ) cvs print
errordict exch get exec stop
} bind def
/ct_cvnsi
{
1 index add 1 sub 1 exch 0 4 1 roll
{
2 index exch get
exch 8 bitshift
add
}
for
exch pop
} bind def
/ct_GetInterval
{
Adobe_CoolType_Utility /ct_BuildCharDict get
begin
/dst_index 0 def
dup dst_string length gt
{ dup string /dst_string exch def }
if
1 index ct_CID_STR_SIZE idiv
/arrayIndex exch def
2 index arrayIndex get
2 index
arrayIndex ct_CID_STR_SIZE mul
sub
{
dup 3 index add 2 index length le
{
2 index getinterval
dst_string dst_index 2 index putinterval
length dst_index add /dst_index exch def
exit
}
{
1 index length 1 index sub
dup 4 1 roll
getinterval
dst_string dst_index 2 index putinterval
pop dup dst_index add /dst_index exch def
sub
/arrayIndex arrayIndex 1 add def
2 index dup length arrayIndex gt
{ arrayIndex get }
{
pop
exit
}
ifelse
0
}
ifelse
}
loop
pop pop pop
dst_string 0 dst_index getinterval
end
} bind def
ct_Level2?
{
/ct_resourcestatus
currentglobal mark true setglobal
{ /unknowninstancename /Category resourcestatus }
stopped
{ cleartomark setglobal true }
{ cleartomark currentglobal not exch setglobal }
ifelse
{
{
mark 3 1 roll /Category findresource
begin
ct_Vars /vm currentglobal put
({ResourceStatus} stopped) 0 () /SubFileDecode filter cvx exec
{ cleartomark false }
{ { 3 2 roll pop true } { cleartomark false } ifelse }
ifelse
ct_Vars /vm get setglobal
end
}
}
{ { resourcestatus } }
ifelse bind def
/CIDFont /Category ct_resourcestatus
{ pop pop }
{
currentglobal true setglobal
/Generic /Category findresource
dup length dict copy
dup /InstanceType /dicttype put
/CIDFont exch /Category defineresource pop
setglobal
}
ifelse
ct_UseNativeCapability?
{
/CIDInit /ProcSet findresource begin
12 dict begin
begincmap
/CIDSystemInfo 3 dict dup begin
/Registry (Adobe) def
/Ordering (Identity) def
/Supplement 0 def
end def
/CMapName /Identity-H def
/CMapVersion 1.000 def
/CMapType 1 def
1 begincodespacerange
<0000> <FFFF>
endcodespacerange
1 begincidrange
<0000> <FFFF> 0
endcidrange
endcmap
CMapName currentdict /CMap defineresource pop
end
end
}
if
}
{
/ct_Category 2 dict begin
/CIDFont 10 dict def
/ProcSet 2 dict def
currentdict
end
def
/defineresource
{
ct_Category 1 index 2 copy known
{
get
dup dup maxlength exch length eq
{
dup length 10 add dict copy
ct_Category 2 index 2 index put
}
if
3 index 3 index put
pop exch pop
}
{ pop pop /defineresource /undefined ct_raise }
ifelse
} bind def
/findresource
{
ct_Category 1 index 2 copy known
{
get
2 index 2 copy known
{ get 3 1 roll pop pop}
{ pop pop /findresource /undefinedresource ct_raise }
ifelse
}
{ pop pop /findresource /undefined ct_raise }
ifelse
} bind def
/resourcestatus
{
ct_Category 1 index 2 copy known
{
get
2 index known
exch pop exch pop
{
0 -1 true
}
{
false
}
ifelse
}
{ pop pop /findresource /undefined ct_raise }
ifelse
} bind def
/ct_resourcestatus /resourcestatus load def
}
ifelse
/ct_CIDInit 2 dict
begin
/ct_cidfont_stream_init
{
{
dup (Binary) eq
{
pop
null
currentfile
ct_Level2?
{
{ cid_BYTE_COUNT () /SubFileDecode filter }
stopped
{ pop pop pop }
if
}
if
/readstring load
exit
}
if
dup (Hex) eq
{
pop
currentfile
ct_Level2?
{
{ null exch /ASCIIHexDecode filter /readstring }
stopped
{ pop exch pop (>) exch /readhexstring }
if
}
{ (>) exch /readhexstring }
ifelse
load
exit
}
if
/StartData /typecheck ct_raise
}
loop
cid_BYTE_COUNT ct_CID_STR_SIZE le
{
2 copy cid_BYTE_COUNT string exch exec
pop
1 array dup
3 -1 roll
0 exch put
}
{
cid_BYTE_COUNT ct_CID_STR_SIZE div ceiling cvi
dup array exch 2 sub 0 exch 1 exch
{
2 copy
5 index
ct_CID_STR_SIZE
string
6 index exec
pop
put
pop
}
for
2 index
cid_BYTE_COUNT ct_CID_STR_SIZE mod string
3 index exec
pop
1 index exch
1 index length 1 sub
exch put
}
ifelse
cid_CIDFONT exch /GlyphData exch put
2 index null eq
{
pop pop pop
}
{
pop /readstring load
1 string exch
{
3 copy exec
pop
dup length 0 eq
{
pop pop pop pop pop
true exit
}
if
4 index
eq
{
pop pop pop pop
false exit
}
if
}
loop
pop
}
ifelse
} bind def
/StartData
{
mark
{
currentdict
dup /FDArray get 0 get /FontMatrix get
0 get 0.001 eq
{
dup /CDevProc known not
{
/CDevProc 1183615869 internaldict /stdCDevProc 2 copy known
{ get }
{
pop pop
{ pop pop pop pop pop 0 -1000 7 index 2 div 880 }
}
ifelse
def
}
if
}
{
/CDevProc
{
pop pop pop pop pop
0
1 cid_temp /cid_CIDFONT get
/FDArray get 0 get
/FontMatrix get 0 get div
7 index 2 div
1 index 0.88 mul
} def
}
ifelse
/cid_temp 15 dict def
cid_temp
begin
/cid_CIDFONT exch def
3 copy pop
dup /cid_BYTE_COUNT exch def 0 gt
{
ct_cidfont_stream_init
FDArray
{
/Private get
dup /SubrMapOffset known
{
begin
/Subrs SubrCount array def
Subrs
SubrMapOffset
SubrCount
SDBytes
ct_Level2?
{
currentdict dup /SubrMapOffset undef
dup /SubrCount undef
/SDBytes undef
}
if
end
/cid_SD_BYTES exch def
/cid_SUBR_COUNT exch def
/cid_SUBR_MAP_OFFSET exch def
/cid_SUBRS exch def
cid_SUBR_COUNT 0 gt
{
GlyphData cid_SUBR_MAP_OFFSET cid_SD_BYTES ct_GetInterval
0 cid_SD_BYTES ct_cvnsi
0 1 cid_SUBR_COUNT 1 sub
{
exch 1 index
1 add
cid_SD_BYTES mul cid_SUBR_MAP_OFFSET add
GlyphData exch cid_SD_BYTES ct_GetInterval
0 cid_SD_BYTES ct_cvnsi
cid_SUBRS 4 2 roll
GlyphData exch
4 index
1 index
sub
ct_GetInterval
dup length string copy put
}
for
pop
}
if
}
{ pop }
ifelse
}
forall
}
if
cleartomark pop pop
end
CIDFontName currentdict /CIDFont defineresource pop
end end
}
stopped
{ cleartomark /StartData ct_reraise }
if
} bind def
currentdict
end def
/ct_saveCIDInit
{
/CIDInit /ProcSet ct_resourcestatus
{ true }
{ /CIDInitC /ProcSet ct_resourcestatus }
ifelse
{
pop pop
/CIDInit /ProcSet findresource
ct_UseNativeCapability?
{ pop null }
{ /CIDInit ct_CIDInit /ProcSet defineresource pop }
ifelse
}
{ /CIDInit ct_CIDInit /ProcSet defineresource pop null }
ifelse
ct_Vars exch /ct_oldCIDInit exch put
} bind def
/ct_restoreCIDInit
{
ct_Vars /ct_oldCIDInit get dup null ne
{ /CIDInit exch /ProcSet defineresource pop }
{ pop }
ifelse
} bind def
/ct_BuildCharSetUp
{
1 index
begin
CIDFont
begin
Adobe_CoolType_Utility /ct_BuildCharDict get
begin
/ct_dfCharCode exch def
/ct_dfDict exch def
CIDFirstByte ct_dfCharCode add
dup CIDCount ge
{ pop 0 }
if
/cid exch def
{
GlyphDirectory cid 2 copy known
{ get }
{ pop pop nullstring }
ifelse
dup length FDBytes sub 0 gt
{
dup
FDBytes 0 ne
{ 0 FDBytes ct_cvnsi }
{ pop 0 }
ifelse
/fdIndex exch def
dup length FDBytes sub FDBytes exch getinterval
/charstring exch def
exit
}
{
pop
cid 0 eq
{ /charstring nullstring def exit }
if
/cid 0 def
}
ifelse
}
loop
} def
/ct_SetCacheDevice
{
0 0 moveto
dup stringwidth
3 -1 roll
true charpath
pathbbox
0 -1000
7 index 2 div 880
setcachedevice2
0 0 moveto
} def
/ct_CloneSetCacheProc
{
1 eq
{
stringwidth
pop -2 div -880
0 -1000 setcharwidth
moveto
}
{
usewidths?
{
currentfont /Widths get cid
2 copy known
{ get exch pop aload pop }
{ pop pop stringwidth }
ifelse
}
{ stringwidth }
ifelse
setcharwidth
0 0 moveto
}
ifelse
} def
/ct_Type3ShowCharString
{
ct_FDDict fdIndex 2 copy known
{ get }
{
currentglobal 3 1 roll
1 index gcheck setglobal
ct_Type1FontTemplate dup maxlength dict copy
begin
FDArray fdIndex get
dup /FontMatrix 2 copy known
{ get }
{ pop pop ct_defaultFontMtx }
ifelse
/FontMatrix exch dup length array copy def
/Private get
/Private exch def
/Widths rootfont /Widths get def
/CharStrings 1 dict dup /.notdef
<d841272cf18f54fc13> dup length string copy put def
currentdict
end
/ct_Type1Font exch definefont
dup 5 1 roll put
setglobal
}
ifelse
dup /CharStrings get 1 index /Encoding get
ct_dfCharCode get charstring put
rootfont /WMode 2 copy known
{ get }
{ pop pop 0 }
ifelse
exch
1000 scalefont setfont
ct_str1 0 ct_dfCharCode put
ct_str1 exch ct_dfSetCacheProc
ct_SyntheticBold
{
currentpoint
ct_str1 show
newpath
moveto
ct_str1 true charpath
ct_StrokeWidth setlinewidth
stroke
}
{ ct_str1 show }
ifelse
} def
/ct_Type4ShowCharString
{
ct_dfDict ct_dfCharCode charstring
FDArray fdIndex get
dup /FontMatrix get dup ct_defaultFontMtx ct_matrixeq not
{ ct_1000Mtx matrix concatmatrix concat }
{ pop }
ifelse
/Private get
Adobe_CoolType_Utility /ct_Level2? get not
{
ct_dfDict /Private
3 -1 roll
{ put }
1183615869 internaldict /superexec get exec
}
if
1183615869 internaldict
Adobe_CoolType_Utility /ct_Level2? get
{ 1 index }
{ 3 index /Private get mark 6 1 roll }
ifelse
dup /RunInt known
{ /RunInt get }
{ pop /CCRun }
ifelse
get exec
Adobe_CoolType_Utility /ct_Level2? get not
{ cleartomark }
if
} bind def
/ct_BuildCharIncremental
{
{
Adobe_CoolType_Utility /ct_MakeOCF get begin
ct_BuildCharSetUp
ct_ShowCharString
}
stopped
{ stop }
if
end
end
end
end
} bind def
/BaseFontNameStr (BF00) def
/ct_Type1FontTemplate 14 dict
begin
/FontType 1 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/FontBBox [-250 -250 1250 1250] def
/Encoding ct_cHexEncoding def
/PaintType 0 def
currentdict
end def
/BaseFontTemplate 11 dict
begin
/FontMatrix [0.001 0 0 0.001 0 0] def
/FontBBox [-250 -250 1250 1250] def
/Encoding ct_cHexEncoding def
/BuildChar /ct_BuildCharIncremental load def
ct_Clone?
{
/FontType 3 def
/ct_ShowCharString /ct_Type3ShowCharString load def
/ct_dfSetCacheProc /ct_CloneSetCacheProc load def
/ct_SyntheticBold false def
/ct_StrokeWidth 1 def
}
{
/FontType 4 def
/Private 1 dict dup /lenIV 4 put def
/CharStrings 1 dict dup /.notdef <d841272cf18f54fc13> put def
/PaintType 0 def
/ct_ShowCharString /ct_Type4ShowCharString load def
}
ifelse
/ct_str1 1 string def
currentdict
end def
/BaseFontDictSize BaseFontTemplate length 5 add def
/ct_matrixeq
{
true 0 1 5
{
dup 4 index exch get exch 3 index exch get eq and
dup not
{ exit }
if
}
for
exch pop exch pop
} bind def
/ct_makeocf
{
15 dict
begin
exch /WMode exch def
exch /FontName exch def
/FontType 0 def
/FMapType 2 def
dup /FontMatrix known
{ dup /FontMatrix get /FontMatrix exch def }
{ /FontMatrix matrix def }
ifelse
/bfCount 1 index /CIDCount get 256 idiv 1 add
dup 256 gt { pop 256} if def
/Encoding
256 array 0 1 bfCount 1 sub { 2 copy dup put pop } for
bfCount 1 255 { 2 copy bfCount put pop } for
def
/FDepVector bfCount dup 256 lt { 1 add } if array def
BaseFontTemplate BaseFontDictSize dict copy
begin
/CIDFont exch def
CIDFont /FontBBox known
{ CIDFont /FontBBox get /FontBBox exch def }
if
CIDFont /CDevProc known
{ CIDFont /CDevProc get /CDevProc exch def }
if
currentdict
end
BaseFontNameStr 3 (0) putinterval
0 1 bfCount dup 256 eq { 1 sub } if
{
FDepVector exch
2 index BaseFontDictSize dict copy
begin
dup /CIDFirstByte exch 256 mul def
FontType 3 eq
{ /ct_FDDict 2 dict def }
if
currentdict
end
1 index 16
BaseFontNameStr 2 2 getinterval cvrs pop
BaseFontNameStr exch definefont
put
}
for
ct_Clone?
{ /Widths 1 index /CIDFont get /GlyphDirectory get length dict def }
if
FontName
currentdict
end
definefont
ct_Clone?
{
gsave
dup 1000 scalefont setfont
ct_BuildCharDict
begin
/usewidths? false def
currentfont /Widths get
begin
exch /CIDFont get /GlyphDirectory get
{
pop
dup charcode exch 1 index 0 2 index 256 idiv put
1 index exch 1 exch 256 mod put
stringwidth 2 array astore def
}
forall
end
/usewidths? true def
end
grestore
}
{ exch pop }
ifelse
} bind def
/ct_ComposeFont
{
ct_UseNativeCapability?
{
2 index /CMap ct_resourcestatus
{ pop pop exch pop }
{
/CIDInit /ProcSet findresource
begin
12 dict
begin
begincmap
/CMapName 3 index def
/CMapVersion 1.000 def
/CMapType 1 def
exch /WMode exch def
/CIDSystemInfo 3 dict dup
begin
/Registry (Adobe) def
/Ordering
CMapName ct_mkocfStr100 cvs
(Adobe-) search
{
pop pop
(-) search
{
dup length string copy
exch pop exch pop
}
{ pop (Identity)}
ifelse
}
{ pop (Identity) }
ifelse
def
/Supplement 0 def
end def
1 begincodespacerange
<0000> <FFFF>
endcodespacerange
1 begincidrange
<0000> <FFFF> 0
endcidrange
endcmap
CMapName currentdict /CMap defineresource pop
end
end
}
ifelse
composefont
}
{
3 2 roll pop
0 get /CIDFont findresource
ct_makeocf
}
ifelse
} bind def
/ct_MakeIdentity
{
ct_UseNativeCapability?
{
1 index /CMap ct_resourcestatus
{ pop pop }
{
/CIDInit /ProcSet findresource begin
12 dict begin
begincmap
/CMapName 2 index def
/CMapVersion 1.000 def
/CMapType 1 def
/CIDSystemInfo 3 dict dup
begin
/Registry (Adobe) def
/Ordering
CMapName ct_mkocfStr100 cvs
(Adobe-) search
{
pop pop
(-) search
{ dup length string copy exch pop exch pop }
{ pop (Identity) }
ifelse
}
{ pop (Identity) }
ifelse
def
/Supplement 0 def
end def
1 begincodespacerange
<0000> <FFFF>
endcodespacerange
1 begincidrange
<0000> <FFFF> 0
endcidrange
endcmap
CMapName currentdict /CMap defineresource pop
end
end
}
ifelse
composefont
}
{
exch pop
0 get /CIDFont findresource
ct_makeocf
}
ifelse
} bind def
currentdict readonly pop
end
end
%%EndResource
%%BeginResource: procset Adobe_CoolType_Utility_T42 1.0 0
%%Copyright: Copyright 1987-2003 Adobe Systems Incorporated.
%%Version: 1.0 0
userdict /ct_T42Dict 15 dict put
ct_T42Dict begin
/Is2015?
{
version
cvi
2015
ge
} bind def
/AllocGlyphStorage
{
Is2015?
{
pop
}
{
{string} forall
} ifelse
} bind def
/Type42DictBegin
{
25 dict begin
/FontName exch def
/CharStrings 256 dict
begin
/.notdef 0 def
currentdict
end def
/Encoding exch def
/PaintType 0 def
/FontType 42 def
/FontMatrix [1 0 0 1 0 0] def
4 array astore cvx /FontBBox exch def
/sfnts
} bind def
/Type42DictEnd
{
currentdict dup /FontName get exch definefont end
ct_T42Dict exch
dup /FontName get exch put
} bind def
/RD {string currentfile exch readstring pop} executeonly def
/PrepFor2015
{
Is2015?
{
/GlyphDirectory
16
dict def
sfnts 0 get
dup
2 index
(glyx)
putinterval
2 index
(locx)
putinterval
pop
pop
}
{
pop
pop
} ifelse
} bind def
/AddT42Char
{
Is2015?
{
/GlyphDirectory get
begin
def
end
pop
pop
}
{
/sfnts get
4 index
get
3 index
2 index
putinterval
pop
pop
pop
pop
} ifelse
} bind def
end
%%EndResource
Adobe_CoolType_Core begin /$Oblique SetSubstituteStrategy end
%%BeginResource: procset Adobe_AGM_Image 1.0 0
%%Version: 1.0 0
%%Copyright: Copyright (C) 2000-2003 Adobe Systems, Inc. All Rights Reserved.
systemdict /setpacking known
{
currentpacking
true setpacking
} if
userdict /Adobe_AGM_Image 75 dict dup begin put
/Adobe_AGM_Image_Id /Adobe_AGM_Image_1.0_0 def
/nd{
null def
}bind def
/AGMIMG_&image nd
/AGMIMG_&colorimage nd
/AGMIMG_&imagemask nd
/AGMIMG_mbuf () def
/AGMIMG_ybuf () def
/AGMIMG_kbuf () def
/AGMIMG_c 0 def
/AGMIMG_m 0 def
/AGMIMG_y 0 def
/AGMIMG_k 0 def
/AGMIMG_tmp nd
/AGMIMG_imagestring0 nd
/AGMIMG_imagestring1 nd
/AGMIMG_imagestring2 nd
/AGMIMG_imagestring3 nd
/AGMIMG_imagestring4 nd
/AGMIMG_imagestring5 nd
/AGMIMG_cnt nd
/AGMIMG_fsave nd
/AGMIMG_colorAry nd
/AGMIMG_override nd
/AGMIMG_name nd
/AGMIMG_maskSource nd
/invert_image_samples nd
/knockout_image_samples nd
/img nd
/sepimg nd
/devnimg nd
/idximg nd
/doc_setup
{
Adobe_AGM_Core begin
Adobe_AGM_Image begin
/AGMIMG_&image systemdict/image get def
/AGMIMG_&imagemask systemdict/imagemask get def
/colorimage where{
pop
/AGMIMG_&colorimage /colorimage ldf
}if
end
end
}def
/page_setup
{
Adobe_AGM_Image begin
/AGMIMG_ccimage_exists {/customcolorimage where
{
pop
/Adobe_AGM_OnHost_Seps where
{
pop false
}{
/Adobe_AGM_InRip_Seps where
{
pop false
}{
true
}ifelse
}ifelse
}{
false
}ifelse
}bdf
level2{
/invert_image_samples
{
Adobe_AGM_Image/AGMIMG_tmp Decode length ddf
/Decode [ Decode 1 get Decode 0 get] def
}def
/knockout_image_samples
{
Operator/imagemask ne{
/Decode [1 1] def
}if
}def
}{
/invert_image_samples
{
{1 exch sub} currenttransfer addprocs settransfer
}def
/knockout_image_samples
{
{ pop 1 } currenttransfer addprocs settransfer
}def
}ifelse
/img /imageormask ldf
/sepimg /sep_imageormask ldf
/devnimg /devn_imageormask ldf
/idximg /indexed_imageormask ldf
/_ctype 7 def
currentdict{
dup xcheck 1 index type dup /arraytype eq exch /packedarraytype eq or and{
bind
}if
def
}forall
}def
/page_trailer
{
end
}def
/doc_trailer
{
}def
/imageormask_sys
{
begin
save mark
level2{
currentdict
Operator /imagemask eq{
AGMIMG_&imagemask
}{
use_mask {
level3 {process_mask_L3 AGMIMG_&image}{masked_image_simulation}ifelse
}{
AGMIMG_&image
}ifelse
}ifelse
}{
Width Height
Operator /imagemask eq{
Decode 0 get 1 eq Decode 1 get 0 eq and
ImageMatrix /DataSource load
AGMIMG_&imagemask
}{
BitsPerComponent ImageMatrix /DataSource load
AGMIMG_&image
}ifelse
}ifelse
cleartomark restore
end
}def
/overprint_plate
{
currentoverprint {
0 get dup type /nametype eq {
dup /DeviceGray eq{
pop AGMCORE_black_plate not
}{
/DeviceCMYK eq{
AGMCORE_is_cmyk_sep not
}if
}ifelse
}{
false exch
{
AGMOHS_sepink eq or
} forall
not
} ifelse
}{
pop false
}ifelse
}def
/process_mask_L3
{
dup begin
/ImageType 1 def
end
4 dict begin
/DataDict exch def
/ImageType 3 def
/InterleaveType 3 def
/MaskDict 9 dict begin
/ImageType 1 def
/Width DataDict dup /MaskWidth known {/MaskWidth}{/Width} ifelse get def
/Height DataDict dup /MaskHeight known {/MaskHeight}{/Height} ifelse get def
/ImageMatrix [Width 0 0 Height neg 0 Height] def
/NComponents 1 def
/BitsPerComponent 1 def
/Decode [0 1] def
/DataSource AGMIMG_maskSource def
currentdict end def
currentdict end
}def
/use_mask
{
dup type /dicttype eq
{
dup /Mask known {
dup /Mask get {
level3
{true}
{
dup /MaskWidth known {dup /MaskWidth get 1 index /Width get eq}{true}ifelse exch
dup /MaskHeight known {dup /MaskHeight get 1 index /Height get eq}{true}ifelse
3 -1 roll and
} ifelse
}
{false} ifelse
}
{false} ifelse
}
{false} ifelse
}def
/make_line_source
{
begin
MultipleDataSources {
[
Decode length 2 div cvi {Width string} repeat
]
}{
Width Decode length 2 div mul cvi string
}ifelse
end
}def
/datasource_to_str
{
exch dup type
dup /filetype eq {
pop exch readstring
}{
/arraytype eq {
exec exch copy
}{
pop
}ifelse
}ifelse
pop
}def
/masked_image_simulation
{
3 dict begin
dup make_line_source /line_source xdf
/mask_source AGMIMG_maskSource /LZWDecode filter def
dup /Width get 8 div ceiling cvi string /mask_str xdf
begin
gsave
0 1 translate 1 -1 Height div scale
1 1 Height {
pop
gsave
MultipleDataSources {
0 1 DataSource length 1 sub {
dup DataSource exch get
exch line_source exch get
datasource_to_str
} for
}{
DataSource line_source datasource_to_str
} ifelse
<<
/PatternType 1
/PaintProc [
/pop cvx
<<
/ImageType 1
/Width Width
/Height 1
/ImageMatrix Width 1.0 sub 1 matrix scale 0.5 0 matrix translate matrix concatmatrix
/MultipleDataSources MultipleDataSources
/DataSource line_source
/BitsPerComponent BitsPerComponent
/Decode Decode
>>
/image cvx
] cvx
/BBox [0 0 Width 1]
/XStep Width
/YStep 1
/PaintType 1
/TilingType 2
>>
matrix makepattern set_pattern
<<
/ImageType 1
/Width Width
/Height 1
/ImageMatrix Width 1 matrix scale
/MultipleDataSources false
/DataSource mask_source mask_str readstring pop
/BitsPerComponent 1
/Decode [0 1]
>>
imagemask
grestore
0 1 translate
} for
grestore
end
end
}def
/imageormask
{
begin
SkipImageProc {
currentdict consumeimagedata
}
{
save mark
level2 AGMCORE_host_sep not and{
currentdict
Operator /imagemask eq DeviceN_PS2 not and {
imagemask
}{
AGMCORE_in_rip_sep currentoverprint and currentcolorspace 0 get /DeviceGray eq and{
[/Separation /Black /DeviceGray {}] setcolorspace
/Decode [ Decode 1 get Decode 0 get ] def
}if
use_mask {
level3 {process_mask_L3 image}{masked_image_simulation}ifelse
}{
DeviceN_NoneName DeviceN_PS2 Indexed_DeviceN level3 not and or or AGMCORE_in_rip_sep and
{
Names convert_to_process not {
2 dict begin
/imageDict xdf
/names_index 0 def
gsave
imageDict write_image_file {
Names {
dup (None) ne {
[/Separation 3 -1 roll /DeviceGray {1 exch sub}] setcolorspace
Operator imageDict read_image_file
names_index 0 eq {true setoverprint} if
/names_index names_index 1 add def
}{
pop
} ifelse
} forall
close_image_file
} if
grestore
end
}{
Operator /imagemask eq {
imagemask
}{
image
} ifelse
} ifelse
}{
Operator /imagemask eq {
imagemask
}{
image
} ifelse
} ifelse
}ifelse
}ifelse
}{
Width Height
Operator /imagemask eq{
Decode 0 get 1 eq Decode 1 get 0 eq and
ImageMatrix /DataSource load
/Adobe_AGM_OnHost_Seps where {
pop imagemask
}{
currentgray 1 ne{
currentdict imageormask_sys
}{
currentoverprint not{
1 AGMCORE_&setgray
currentdict imageormask_sys
}{
currentdict ignoreimagedata
}ifelse
}ifelse
}ifelse
}{
BitsPerComponent ImageMatrix
MultipleDataSources{
0 1 NComponents 1 sub{
DataSource exch get
}for
}{
/DataSource load
}ifelse
Operator /colorimage eq{
AGMCORE_host_sep{
MultipleDataSources level2 or NComponents 4 eq and{
AGMCORE_is_cmyk_sep{
MultipleDataSources{
/DataSource [
DataSource 0 get /exec cvx
DataSource 1 get /exec cvx
DataSource 2 get /exec cvx
DataSource 3 get /exec cvx
/AGMCORE_get_ink_data cvx
] cvx def
}{
/DataSource
Width BitsPerComponent mul 7 add 8 idiv Height mul 4 mul
/DataSource load
filter_cmyk 0 () /SubFileDecode filter def
}ifelse
/Decode [ Decode 0 get Decode 1 get ] def
/MultipleDataSources false def
/NComponents 1 def
/Operator /image def
invert_image_samples
1 AGMCORE_&setgray
currentdict imageormask_sys
}{
currentoverprint not Operator/imagemask eq and{
1 AGMCORE_&setgray
currentdict imageormask_sys
}{
currentdict ignoreimagedata
}ifelse
}ifelse
}{
MultipleDataSources NComponents AGMIMG_&colorimage
}ifelse
}{
true NComponents colorimage
}ifelse
}{
Operator /image eq{
AGMCORE_host_sep{
/DoImage true def
HostSepColorImage{
invert_image_samples
}{
AGMCORE_black_plate not Operator/imagemask ne and{
/DoImage false def
currentdict ignoreimagedata
}if
}ifelse
1 AGMCORE_&setgray
DoImage
{currentdict imageormask_sys} if
}{
use_mask {
level3 {process_mask_L3 image}{masked_image_simulation}ifelse
}{
image
}ifelse
}ifelse
}{
Operator/knockout eq{
pop pop pop pop pop
currentcolorspace overprint_plate not{
knockout_unitsq
}if
}if
}ifelse
}ifelse
}ifelse
}ifelse
cleartomark restore
}ifelse
end
}def
/sep_imageormask
{
/sep_colorspace_dict AGMCORE_gget begin
/MappedCSA CSA map_csa def
begin
SkipImageProc {
currentdict consumeimagedata
}
{
save mark
AGMCORE_avoid_L2_sep_space{
/Decode [ Decode 0 get 255 mul Decode 1 get 255 mul ] def
}if
AGMIMG_ccimage_exists
MappedCSA 0 get /DeviceCMYK eq and
currentdict/Components known and
Name () ne and
Name (All) ne and
Operator /image eq and
AGMCORE_producing_seps not and
level2 not and
{
Width Height BitsPerComponent ImageMatrix
[
/DataSource load /exec cvx
{
0 1 2 index length 1 sub{
1 index exch
2 copy get 255 xor put
}for
} /exec cvx
] cvx bind
MappedCSA 0 get /DeviceCMYK eq{
Components aload pop
}{
0 0 0 Components aload pop 1 exch sub
}ifelse
Name findcmykcustomcolor
customcolorimage
}{
AGMCORE_producing_seps not{
level2{
AGMCORE_avoid_L2_sep_space not currentcolorspace 0 get /Separation ne and{
[/Separation Name MappedCSA sep_proc_name exch 0 get exch load ] setcolorspace_opt
/sep_tint AGMCORE_gget setcolor
}if
currentdict imageormask
}{
currentdict
Operator /imagemask eq{
imageormask
}{
sep_imageormask_lev1
}ifelse
}ifelse
}{
AGMCORE_host_sep{
Operator/knockout eq{
currentdict/ImageMatrix get concat
knockout_unitsq
}{
currentgray 1 ne{
AGMCORE_is_cmyk_sep Name (All) ne and{
level2{
[ /Separation Name [/DeviceGray]
{
sep_colorspace_proc AGMCORE_get_ink_data
1 exch sub
} bind
] AGMCORE_&setcolorspace
/sep_tint AGMCORE_gget AGMCORE_&setcolor
currentdict imageormask_sys
}{
currentdict
Operator /imagemask eq{
imageormask_sys
}{
sep_image_lev1_sep
}ifelse
}ifelse
}{
Operator/imagemask ne{
invert_image_samples
}if
currentdict imageormask_sys
}ifelse
}{
currentoverprint not Name (All) eq or Operator/imagemask eq and{
currentdict imageormask_sys
}{
currentoverprint not
{
gsave
knockout_unitsq
grestore
}if
currentdict consumeimagedata
}ifelse
}ifelse
}ifelse
}{
currentcolorspace 0 get /Separation ne{
[/Separation Name MappedCSA sep_proc_name exch 0 get exch load ] setcolorspace_opt
/sep_tint AGMCORE_gget setcolor
}if
currentoverprint
MappedCSA 0 get /DeviceCMYK eq and
Name inRip_spot_has_ink not and
Name (All) ne and {
imageormask_l2_overprint
}{
currentdict imageormask
}ifelse
}ifelse
}ifelse
}ifelse
cleartomark restore
}ifelse
end
end
}def
/decode_image_sample
{
4 1 roll exch dup 5 1 roll
sub 2 4 -1 roll exp 1 sub div mul add
} bdf
/colorSpaceElemCnt
{
currentcolorspace 0 get dup /DeviceCMYK eq {
pop 4
}
{
/DeviceRGB eq {
pop 3
}{
1
} ifelse
} ifelse
} bdf
/devn_sep_datasource
{
1 dict begin
/dataSource xdf
[
0 1 dataSource length 1 sub {
dup currentdict /dataSource get /exch cvx /get cvx /exec cvx
/exch cvx names_index /ne cvx [ /pop cvx ] cvx /if cvx
} for
] cvx bind
end
} bdf
/devn_alt_datasource
{
11 dict begin
/srcDataStrs xdf
/dstDataStr xdf
/convProc xdf
/origcolorSpaceElemCnt xdf
/origMultipleDataSources xdf
/origBitsPerComponent xdf
/origDecode xdf
/origDataSource xdf
/dsCnt origMultipleDataSources {origDataSource length}{1}ifelse def
/samplesNeedDecoding
0 0 1 origDecode length 1 sub {
origDecode exch get add
} for
origDecode length 2 div div
dup 1 eq {
/decodeDivisor 2 origBitsPerComponent exp 1 sub def
} if
2 origBitsPerComponent exp 1 sub ne
def
[
0 1 dsCnt 1 sub [
currentdict /origMultipleDataSources get {
dup currentdict /origDataSource get exch get dup type
}{
currentdict /origDataSource get dup type
} ifelse
dup /filetype eq {
pop currentdict /srcDataStrs get 3 -1 /roll cvx /get cvx /readstring cvx /pop cvx
}{
/stringtype ne {
/exec cvx
} if
currentdict /srcDataStrs get /exch cvx 3 -1 /roll cvx /xpt cvx
} ifelse
] cvx /for cvx
currentdict /srcDataStrs get 0 /get cvx /length cvx 0 /ne cvx [
0 1 Width 1 sub [
Adobe_AGM_Utils /AGMUTIL_ndx /xddf cvx
currentdict /origMultipleDataSources get {
0 1 dsCnt 1 sub [
Adobe_AGM_Utils /AGMUTIL_ndx1 /xddf cvx
currentdict /srcDataStrs get /AGMUTIL_ndx1 /load cvx /get cvx /AGMUTIL_ndx /load cvx /get cvx
samplesNeedDecoding {
currentdict /decodeDivisor known {
currentdict /decodeDivisor get /div cvx
}{
currentdict /origDecode get /AGMUTIL_ndx1 /load cvx 2 /mul cvx 2 /getinterval cvx /aload cvx /pop cvxs
BitsPerComponent /decode_image_sample load /exec cvx
} ifelse
} if
] cvx /for cvx
}{
Adobe_AGM_Utils /AGMUTIL_ndx1 0 /ddf cvx
currentdict /srcDataStrs get 0 /get cvx /AGMUTIL_ndx /load cvx
currentdict /origDecode get length 2 idiv dup 3 1 /roll cvx /mul cvx /exch cvx /getinterval cvx
[
samplesNeedDecoding {
currentdict /decodeDivisor known {
currentdict /decodeDivisor get /div cvx
}{
currentdict /origDecode get /AGMUTIL_ndx1 /load cvx 2 /mul cvx 2 /getinterval cvx /aload cvx /pop cvx
BitsPerComponent /decode_image_sample load /exec cvx
Adobe_AGM_Utils /AGMUTIL_ndx1 /AGMUTIL_ndx1 /load cvx 1 /add cvx /ddf cvx
} ifelse
} if
] cvx /forall cvx
} ifelse
currentdict /convProc get /exec cvx
currentdict /origcolorSpaceElemCnt get 1 sub -1 0 [
currentdict /dstDataStr get 3 1 /roll cvx /AGMUTIL_ndx /load cvx currentdict /origcolorSpaceElemCnt get /mul cvx /add cvx /exch cvx
currentdict /convProc get /filter_indexed_devn load ne {
255 /mul cvx /cvi cvx
} if
/put cvx
] cvx /for cvx
] cvx /for cvx
currentdict /dstDataStr get
] cvx /if cvx
] cvx bind
end
} bdf
/devn_imageormask
{
/devicen_colorspace_dict AGMCORE_gget begin
/MappedCSA CSA map_csa def
2 dict begin
dup dup
/dstDataStr exch /Width get colorSpaceElemCnt mul string def
/srcDataStrs [ 3 -1 roll begin
currentdict /MultipleDataSources known {MultipleDataSources {DataSource length}{1}ifelse}{1} ifelse
{
Width Decode length 2 div mul cvi string
} repeat
end ] def
begin
SkipImageProc {
currentdict consumeimagedata
}
{
save mark
AGMCORE_producing_seps not {
level3 not {
Operator /imagemask ne {
/DataSource [
DataSource Decode BitsPerComponent currentdict /MultipleDataSources known {MultipleDataSources}{false} ifelse
colorSpaceElemCnt /devicen_colorspace_dict AGMCORE_gget /TintTransform get
dstDataStr srcDataStrs devn_alt_datasource /exec cvx
] cvx 0 () /SubFileDecode filter def
/MultipleDataSources false def
/Decode colorSpaceElemCnt [ exch {0 1} repeat ] def
} if
}if
currentdict imageormask
}{
AGMCORE_host_sep{
Names convert_to_process {
CSA map_csa 0 get /DeviceCMYK eq {
/DataSource
Width BitsPerComponent mul 7 add 8 idiv Height mul 4 mul
[
DataSource Decode BitsPerComponent currentdict /MultipleDataSources known {MultipleDataSources}{false} ifelse
4 /devicen_colorspace_dict AGMCORE_gget /TintTransform get
dstDataStr srcDataStrs devn_alt_datasource /exec cvx
] cvx
filter_cmyk 0 () /SubFileDecode filter def
/MultipleDataSources false def
/Decode [1 0] def
/DeviceGray setcolorspace
currentdict imageormask_sys
}{
AGMCORE_report_unsupported_color_space
AGMCORE_black_plate {
/DataSource [
DataSource Decode BitsPerComponent currentdict /MultipleDataSources known {MultipleDataSources}{false} ifelse
CSA map_csa 0 get /DeviceRGB eq{3}{1}ifelse /devicen_colorspace_dict AGMCORE_gget /TintTransform get
dstDataStr srcDataStrs devn_alt_datasource /exec cvx
] cvx 0 () /SubFileDecode filter def
/MultipleDataSources false def
/Decode colorSpaceElemCnt [ exch {0 1} repeat ] def
currentdict imageormask_sys
}
{
gsave
knockout_unitsq
grestore
currentdict consumeimagedata
} ifelse
} ifelse
}
{
/devicen_colorspace_dict AGMCORE_gget /names_index known {
Operator/imagemask ne{
MultipleDataSources {
/DataSource [ DataSource devn_sep_datasource /exec cvx ] cvx def
/MultipleDataSources false def
}{
/DataSource /DataSource load dstDataStr srcDataStrs 0 get filter_devn def
} ifelse
invert_image_samples
} if
currentdict imageormask_sys
}{
currentoverprint not Operator/imagemask eq and{
currentdict imageormask_sys
}{
currentoverprint not
{
gsave
knockout_unitsq
grestore
}if
currentdict consumeimagedata
}ifelse
}ifelse
}ifelse
}{
currentdict imageormask
}ifelse
}ifelse
cleartomark restore
}ifelse
end
end
end
}def
/imageormask_l2_overprint
{
currentdict
currentcmykcolor add add add 0 eq{
currentdict consumeimagedata
}{
level3{
currentcmykcolor
/AGMIMG_k xdf
/AGMIMG_y xdf
/AGMIMG_m xdf
/AGMIMG_c xdf
Operator/imagemask eq{
[/DeviceN [
AGMIMG_c 0 ne {/Cyan} if
AGMIMG_m 0 ne {/Magenta} if
AGMIMG_y 0 ne {/Yellow} if
AGMIMG_k 0 ne {/Black} if
] /DeviceCMYK {}] setcolorspace
AGMIMG_c 0 ne {AGMIMG_c} if
AGMIMG_m 0 ne {AGMIMG_m} if
AGMIMG_y 0 ne {AGMIMG_y} if
AGMIMG_k 0 ne {AGMIMG_k} if
setcolor
}{
/Decode [ Decode 0 get 255 mul Decode 1 get 255 mul ] def
[/Indexed
[
/DeviceN [
AGMIMG_c 0 ne {/Cyan} if
AGMIMG_m 0 ne {/Magenta} if
AGMIMG_y 0 ne {/Yellow} if
AGMIMG_k 0 ne {/Black} if
]
/DeviceCMYK {
AGMIMG_k 0 eq {0} if
AGMIMG_y 0 eq {0 exch} if
AGMIMG_m 0 eq {0 3 1 roll} if
AGMIMG_c 0 eq {0 4 1 roll} if
}
]
255
{
255 div
mark exch
dup dup dup
AGMIMG_k 0 ne{
/sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 1 roll pop pop pop
counttomark 1 roll
}{
pop
}ifelse
AGMIMG_y 0 ne{
/sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 2 roll pop pop pop
counttomark 1 roll
}{
pop
}ifelse
AGMIMG_m 0 ne{
/sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec 4 3 roll pop pop pop
counttomark 1 roll
}{
pop
}ifelse
AGMIMG_c 0 ne{
/sep_tint AGMCORE_gget mul MappedCSA sep_proc_name exch pop load exec pop pop pop
counttomark 1 roll
}{
pop
}ifelse
counttomark 1 add -1 roll pop
}
] setcolorspace
}ifelse
imageormask_sys
}{
write_image_file{
currentcmykcolor
0 ne{
[/Separation /Black /DeviceGray {}] setcolorspace
gsave
/Black
[{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {4 1 roll pop pop pop 1 exch sub} /exec cvx]
cvx modify_halftone_xfer
Operator currentdict read_image_file
grestore
}if
0 ne{
[/Separation /Yellow /DeviceGray {}] setcolorspace
gsave
/Yellow
[{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {4 2 roll pop pop pop 1 exch sub} /exec cvx]
cvx modify_halftone_xfer
Operator currentdict read_image_file
grestore
}if
0 ne{
[/Separation /Magenta /DeviceGray {}] setcolorspace
gsave
/Magenta
[{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {4 3 roll pop pop pop 1 exch sub} /exec cvx]
cvx modify_halftone_xfer
Operator currentdict read_image_file
grestore
}if
0 ne{
[/Separation /Cyan /DeviceGray {}] setcolorspace
gsave
/Cyan
[{1 exch sub /sep_tint AGMCORE_gget mul} /exec cvx MappedCSA sep_proc_name cvx exch pop {pop pop pop 1 exch sub} /exec cvx]
cvx modify_halftone_xfer
Operator currentdict read_image_file
grestore
} if
close_image_file
}{
imageormask
}ifelse
}ifelse
}ifelse
} def
/indexed_imageormask
{
begin
save mark
currentdict
AGMCORE_host_sep{
Operator/knockout eq{
/indexed_colorspace_dict AGMCORE_gget dup /CSA known {
/CSA get map_csa
}{
/CSD get get_csd /Names get
} ifelse
overprint_plate not{
knockout_unitsq
}if
}{
Indexed_DeviceN {
/devicen_colorspace_dict AGMCORE_gget /names_index known {
indexed_image_lev2_sep
}{
currentoverprint not{
knockout_unitsq
}if
currentdict consumeimagedata
} ifelse
}{
AGMCORE_is_cmyk_sep{
Operator /imagemask eq{
imageormask_sys
}{
level2{
indexed_image_lev2_sep
}{
indexed_image_lev1_sep
}ifelse
}ifelse
}{
currentoverprint not{
knockout_unitsq
}if
currentdict consumeimagedata
}ifelse
}ifelse
}ifelse
}{
level2{
Indexed_DeviceN {
/indexed_colorspace_dict AGMCORE_gget begin
CSD get_csd begin
}{
/indexed_colorspace_dict AGMCORE_gget begin
CSA map_csa 0 get /DeviceCMYK eq ps_level 3 ge and ps_version 3015.007 lt and {
[/Indexed [/DeviceN [/Cyan /Magenta /Yellow /Black] /DeviceCMYK {}] HiVal Lookup]
setcolorspace
} if
end
} ifelse
imageormask
Indexed_DeviceN {
end
end
} if
}{
Operator /imagemask eq{
imageormask
}{
indexed_imageormask_lev1
}ifelse
}ifelse
}ifelse
cleartomark restore
end
}def
/indexed_image_lev2_sep
{
/indexed_colorspace_dict AGMCORE_gget begin
begin
Indexed_DeviceN not {
currentcolorspace
dup 1 /DeviceGray put
dup 3
currentcolorspace 2 get 1 add string
0 1 2 3 AGMCORE_get_ink_data 4 currentcolorspace 3 get length 1 sub
{
dup 4 idiv exch currentcolorspace 3 get exch get 255 exch sub 2 index 3 1 roll put
}for
put setcolorspace
} if
currentdict
Operator /imagemask eq{
AGMIMG_&imagemask
}{
use_mask {
level3 {process_mask_L3 AGMIMG_&image}{masked_image_simulation}ifelse
}{
AGMIMG_&image
}ifelse
}ifelse
end end
}def
/OPIimage
{
dup type /dicttype ne{
10 dict begin
/DataSource xdf
/ImageMatrix xdf
/BitsPerComponent xdf
/Height xdf
/Width xdf
/ImageType 1 def
/Decode [0 1 def]
currentdict
end
}if
dup begin
/NComponents 1 cdndf
/MultipleDataSources false cdndf
/SkipImageProc {false} cdndf
/HostSepColorImage false cdndf
/Decode [
0
currentcolorspace 0 get /Indexed eq{
2 BitsPerComponent exp 1 sub
}{
1
}ifelse
] cdndf
/Operator /image cdndf
end
/sep_colorspace_dict AGMCORE_gget null eq{
imageormask
}{
gsave
dup begin invert_image_samples end
sep_imageormask
grestore
}ifelse
}def
/cachemask_level2
{
3 dict begin
/LZWEncode filter /WriteFilter xdf
/readBuffer 256 string def
/ReadFilter
currentfile
0 (%EndMask) /SubFileDecode filter
/ASCII85Decode filter
/RunLengthDecode filter
def
{
ReadFilter readBuffer readstring exch
WriteFilter exch writestring
not {exit} if
}loop
WriteFilter closefile
end
}def
/cachemask_level3
{
currentfile
<<
/Filter [ /SubFileDecode /ASCII85Decode /RunLengthDecode ]
/DecodeParms [ << /EODCount 0 /EODString (%EndMask) >> null null ]
/Intent 1
>>
/ReusableStreamDecode filter
}def
/spot_alias
{
/mapto_sep_imageormask
{
dup type /dicttype ne{
12 dict begin
/ImageType 1 def
/DataSource xdf
/ImageMatrix xdf
/BitsPerComponent xdf
/Height xdf
/Width xdf
/MultipleDataSources false def
}{
begin
}ifelse
/Decode [/customcolor_tint AGMCORE_gget 0] def
/Operator /image def
/HostSepColorImage false def
/SkipImageProc {false} def
currentdict
end
sep_imageormask
}bdf
/customcolorimage
{
Adobe_AGM_Image/AGMIMG_colorAry xddf
/customcolor_tint AGMCORE_gget
bdict
/Name AGMIMG_colorAry 4 get
/CSA [ /DeviceCMYK ]
/TintMethod /Subtractive
/TintProc null
/MappedCSA null
/NComponents 4
/Components [ AGMIMG_colorAry aload pop pop ]
edict
setsepcolorspace
mapto_sep_imageormask
}ndf
Adobe_AGM_Image/AGMIMG_&customcolorimage /customcolorimage load put
/customcolorimage
{
Adobe_AGM_Image/AGMIMG_override false put
dup 4 get map_alias{
/customcolor_tint AGMCORE_gget exch setsepcolorspace
pop
mapto_sep_imageormask
}{
AGMIMG_&customcolorimage
}ifelse
}bdf
}def
/snap_to_device
{
6 dict begin
matrix currentmatrix
dup 0 get 0 eq 1 index 3 get 0 eq and
1 index 1 get 0 eq 2 index 2 get 0 eq and or exch pop
{
1 1 dtransform 0 gt exch 0 gt /AGMIMG_xSign? exch def /AGMIMG_ySign? exch def
0 0 transform
AGMIMG_ySign? {floor 0.1 sub}{ceiling 0.1 add} ifelse exch
AGMIMG_xSign? {floor 0.1 sub}{ceiling 0.1 add} ifelse exch
itransform /AGMIMG_llY exch def /AGMIMG_llX exch def
1 1 transform
AGMIMG_ySign? {ceiling 0.1 add}{floor 0.1 sub} ifelse exch
AGMIMG_xSign? {ceiling 0.1 add}{floor 0.1 sub} ifelse exch
itransform /AGMIMG_urY exch def /AGMIMG_urX exch def
[AGMIMG_urX AGMIMG_llX sub 0 0 AGMIMG_urY AGMIMG_llY sub AGMIMG_llX AGMIMG_llY] concat
}{
}ifelse
end
} def
level2 not{
/colorbuf
{
0 1 2 index length 1 sub{
dup 2 index exch get
255 exch sub
2 index
3 1 roll
put
}for
}def
/tint_image_to_color
{
begin
Width Height BitsPerComponent ImageMatrix
/DataSource load
end
Adobe_AGM_Image begin
/AGMIMG_mbuf 0 string def
/AGMIMG_ybuf 0 string def
/AGMIMG_kbuf 0 string def
{
colorbuf dup length AGMIMG_mbuf length ne
{
dup length dup dup
/AGMIMG_mbuf exch string def
/AGMIMG_ybuf exch string def
/AGMIMG_kbuf exch string def
} if
dup AGMIMG_mbuf copy AGMIMG_ybuf copy AGMIMG_kbuf copy pop
}
addprocs
{AGMIMG_mbuf}{AGMIMG_ybuf}{AGMIMG_kbuf} true 4 colorimage
end
} def
/sep_imageormask_lev1
{
begin
MappedCSA 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or has_color not and{
{
255 mul round cvi GrayLookup exch get
} currenttransfer addprocs settransfer
currentdict imageormask
}{
/sep_colorspace_dict AGMCORE_gget/Components known{
MappedCSA 0 get /DeviceCMYK eq{
Components aload pop
}{
0 0 0 Components aload pop 1 exch sub
}ifelse
Adobe_AGM_Image/AGMIMG_k xddf
Adobe_AGM_Image/AGMIMG_y xddf
Adobe_AGM_Image/AGMIMG_m xddf
Adobe_AGM_Image/AGMIMG_c xddf
AGMIMG_y 0.0 eq AGMIMG_m 0.0 eq and AGMIMG_c 0.0 eq and{
{AGMIMG_k mul 1 exch sub} currenttransfer addprocs settransfer
currentdict imageormask
}{
currentcolortransfer
{AGMIMG_k mul 1 exch sub} exch addprocs 4 1 roll
{AGMIMG_y mul 1 exch sub} exch addprocs 4 1 roll
{AGMIMG_m mul 1 exch sub} exch addprocs 4 1 roll
{AGMIMG_c mul 1 exch sub} exch addprocs 4 1 roll
setcolortransfer
currentdict tint_image_to_color
}ifelse
}{
MappedCSA 0 get /DeviceGray eq {
{255 mul round cvi ColorLookup exch get 0 get} currenttransfer addprocs settransfer
currentdict imageormask
}{
MappedCSA 0 get /DeviceCMYK eq {
currentcolortransfer
{255 mul round cvi ColorLookup exch get 3 get 1 exch sub} exch addprocs 4 1 roll
{255 mul round cvi ColorLookup exch get 2 get 1 exch sub} exch addprocs 4 1 roll
{255 mul round cvi ColorLookup exch get 1 get 1 exch sub} exch addprocs 4 1 roll
{255 mul round cvi ColorLookup exch get 0 get 1 exch sub} exch addprocs 4 1 roll
setcolortransfer
currentdict tint_image_to_color
}{
currentcolortransfer
{pop 1} exch addprocs 4 1 roll
{255 mul round cvi ColorLookup exch get 2 get} exch addprocs 4 1 roll
{255 mul round cvi ColorLookup exch get 1 get} exch addprocs 4 1 roll
{255 mul round cvi ColorLookup exch get 0 get} exch addprocs 4 1 roll
setcolortransfer
currentdict tint_image_to_color
}ifelse
}ifelse
}ifelse
}ifelse
end
}def
/sep_image_lev1_sep
{
begin
/sep_colorspace_dict AGMCORE_gget/Components known{
Components aload pop
Adobe_AGM_Image/AGMIMG_k xddf
Adobe_AGM_Image/AGMIMG_y xddf
Adobe_AGM_Image/AGMIMG_m xddf
Adobe_AGM_Image/AGMIMG_c xddf
{AGMIMG_c mul 1 exch sub}
{AGMIMG_m mul 1 exch sub}
{AGMIMG_y mul 1 exch sub}
{AGMIMG_k mul 1 exch sub}
}{
{255 mul round cvi ColorLookup exch get 0 get 1 exch sub}
{255 mul round cvi ColorLookup exch get 1 get 1 exch sub}
{255 mul round cvi ColorLookup exch get 2 get 1 exch sub}
{255 mul round cvi ColorLookup exch get 3 get 1 exch sub}
}ifelse
AGMCORE_get_ink_data currenttransfer addprocs settransfer
currentdict imageormask_sys
end
}def
/indexed_imageormask_lev1
{
/indexed_colorspace_dict AGMCORE_gget begin
begin
currentdict
MappedCSA 0 get dup /DeviceRGB eq exch /DeviceCMYK eq or has_color not and{
{HiVal mul round cvi GrayLookup exch get HiVal div} currenttransfer addprocs settransfer
imageormask
}{
MappedCSA 0 get /DeviceGray eq {
{HiVal mul round cvi Lookup exch get HiVal div} currenttransfer addprocs settransfer
imageormask
}{
MappedCSA 0 get /DeviceCMYK eq {
currentcolortransfer
{4 mul HiVal mul round cvi 3 add Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll
{4 mul HiVal mul round cvi 2 add Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll
{4 mul HiVal mul round cvi 1 add Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll
{4 mul HiVal mul round cvi Lookup exch get HiVal div 1 exch sub} exch addprocs 4 1 roll
setcolortransfer
tint_image_to_color
}{
currentcolortransfer
{pop 1} exch addprocs 4 1 roll
{3 mul HiVal mul round cvi 2 add Lookup exch get HiVal div} exch addprocs 4 1 roll
{3 mul HiVal mul round cvi 1 add Lookup exch get HiVal div} exch addprocs 4 1 roll
{3 mul HiVal mul round cvi Lookup exch get HiVal div} exch addprocs 4 1 roll
setcolortransfer
tint_image_to_color
}ifelse
}ifelse
}ifelse
end end
}def
/indexed_image_lev1_sep
{
/indexed_colorspace_dict AGMCORE_gget begin
begin
{4 mul HiVal mul round cvi Lookup exch get HiVal div 1 exch sub}
{4 mul HiVal mul round cvi 1 add Lookup exch get HiVal div 1 exch sub}
{4 mul HiVal mul round cvi 2 add Lookup exch get HiVal div 1 exch sub}
{4 mul HiVal mul round cvi 3 add Lookup exch get HiVal div 1 exch sub}
AGMCORE_get_ink_data currenttransfer addprocs settransfer
currentdict imageormask_sys
end end
}def
}if
end
systemdict /setpacking known
{
setpacking
} if
%%EndResource
currentdict Adobe_AGM_Utils eq {end} if
%%EndProlog
%%BeginSetup
Adobe_AGM_Utils begin
2 2010 Adobe_AGM_Core/doc_setup get exec
Adobe_CoolType_Core/doc_setup get exec
Adobe_AGM_Image/doc_setup get exec
currentdict Adobe_AGM_Utils eq {end} if
%%EndSetup
%%Page: sphere.pdf 1
%%EndPageComments
%%BeginPageSetup
/currentdistillerparams where
{pop currentdistillerparams /CoreDistVersion get 5000 lt} {true} ifelse
{ userdict /AI11_PDFMark5 /cleartomark load put
userdict /AI11_ReadMetadata_PDFMark5 {flushfile cleartomark } bind put}
{ userdict /AI11_PDFMark5 /pdfmark load put
userdict /AI11_ReadMetadata_PDFMark5 {/PUT pdfmark} bind put } ifelse
[/NamespacePush AI11_PDFMark5
[/_objdef {ai_metadata_stream_123} /type /stream /OBJ AI11_PDFMark5
[{ai_metadata_stream_123}
currentfile 0 (% &&end XMP packet marker&&)
/SubFileDecode filter AI11_ReadMetadata_PDFMark5
<?xpacket begin='' id='W5M0MpCehiHzreSzNTczkc9d'?><x:xmpmeta xmlns:x='adobe:ns:meta/' x:xmptk='XMP toolkit 3.0-29, framework 1.6'>
-<rdf:RDF xmlns:rdf='http://www.w3.org/1999/02/22-rdf-syntax-ns#' xmlns:iX='http://ns.adobe.com/iX/1.0/'>
-
- <rdf:Description rdf:about='uuid:78e3abec-6724-11da-aded-000a95cd9010'
- xmlns:pdf='http://ns.adobe.com/pdf/1.3/'>
- <pdf:Producer>pdfeTeX-1.21a</pdf:Producer>
- </rdf:Description>
-
- <rdf:Description rdf:about='uuid:78e3abec-6724-11da-aded-000a95cd9010'
- xmlns:pdfx='http://ns.adobe.com/pdfx/1.3/'>
- <pdfx:PTEX.Fullbanner>This is pdfeTeX, Version 3.141592-1.21a-2.2 (Web2C 7.5.4) kpathsea version 3.5.4</pdfx:PTEX.Fullbanner>
- </rdf:Description>
-
- <rdf:Description rdf:about='uuid:78e3abec-6724-11da-aded-000a95cd9010'
- xmlns:tiff='http://ns.adobe.com/tiff/1.0/'>
- </rdf:Description>
-
- <rdf:Description rdf:about='uuid:78e3abec-6724-11da-aded-000a95cd9010'
- xmlns:xap='http://ns.adobe.com/xap/1.0/'
- xmlns:xapGImg='http://ns.adobe.com/xap/1.0/g/img/'>
- <xap:CreateDate>2005-12-07T14:03:19+01:00</xap:CreateDate>
- <xap:CreatorTool>TeX</xap:CreatorTool>
- <xap:ModifyDate>2005-12-07T14:29:58Z</xap:ModifyDate>
- <xap:Thumbnails>
- <rdf:Alt>
- <rdf:li rdf:parseType='Resource'>
- <xapGImg:format>JPEG</xapGImg:format>
- <xapGImg:width>256</xapGImg:width>
- <xapGImg:height>244</xapGImg:height>
- <xapGImg:image>/9j/4AAQSkZJRgABAgEASABIAAD/7QAsUGhvdG9zaG9wIDMuMAA4QklNA+0AAAAAABAASAAAAAEA
AQBIAAAAAQAB/+4ADkFkb2JlAGTAAAAAAf/bAIQABgQEBAUEBgUFBgkGBQYJCwgGBggLDAoKCwoK
DBAMDAwMDAwQDA4PEA8ODBMTFBQTExwbGxscHx8fHx8fHx8fHwEHBwcNDA0YEBAYGhURFRofHx8f
Hx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8fHx8f/8AAEQgA9AEAAwER
AAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAA
AQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpG [...]
- </rdf:li>
- </rdf:Alt>
- </xap:Thumbnails>
- </rdf:Description>
-
- <rdf:Description rdf:about='uuid:78e3abec-6724-11da-aded-000a95cd9010'
- xmlns:xapMM='http://ns.adobe.com/xap/1.0/mm/'>
- <xapMM:DocumentID>uuid:78e3a3e0-6724-11da-aded-000a95cd9010</xapMM:DocumentID>
- </rdf:Description>
-
- <rdf:Description rdf:about='uuid:78e3abec-6724-11da-aded-000a95cd9010'
- xmlns:dc='http://purl.org/dc/elements/1.1/'>
- <dc:format>application/postscript</dc:format>
- </rdf:Description>
-
-</rdf:RDF>
-</x:xmpmeta>
- [...]
% &&end XMP packet marker&&
[{ai_metadata_stream_123}
<</Type /Metadata /Subtype /XML>>
/PUT AI11_PDFMark5
[/Document
1 dict begin /Metadata {ai_metadata_stream_123} def
currentdict end /BDC AI11_PDFMark5
Adobe_AGM_Utils begin
Adobe_AGM_Core/page_setup get exec
Adobe_CoolType_Core/page_setup get exec
Adobe_AGM_Image/page_setup get exec
%%EndPageSetup
Adobe_AGM_Core/AGMCORE_save save ddf
1 -1 scale 0 -325 translate
[1 0 0 1 0 0 ] concat
% page clip
gsave
newpath
gsave % PSGState
0 0 mo
0 325 li
344 325 li
344 0 li
clp
[1 0 0 1 0 0 ] concat
gsave % PSGState
0 325 mo
344 325 li
344 0 li
0 0 li
0 325 li
clp
gsave % PSGState
-12.2452 351.722 mo
356.255 351.722 li
356.255 -16.7779 li
-12.2452 -16.7779 li
-12.2452 351.722 li
clp
0.216 lw
0 lc
0 lj
2.6131 ml
[] 0 dsh
true sadj
329.505 209.672 mo
14.5088 125.27 li
14.5079 209.672 mo
329.506 125.27 li
172.007 324.969 mo
172.007 9.97217 li
false sop
/0
[/DeviceRGB] add_csa
0 0 0 rgb
@
171.664 77.0962 mo
221.234 77.0962 261.663 117.526 261.663 167.096 cv
261.663 216.667 221.234 257.094 171.664 257.094 cv
122.094 257.094 81.6641 216.667 81.6641 167.096 cv
81.6641 117.526 122.094 77.0962 171.664 77.0962 cv
1 1 1 rgb
ef
172.007 77.4712 mo
221.578 77.4712 262.006 117.901 262.006 167.471 cv
262.006 217.042 221.578 257.469 172.007 257.469 cv
122.438 257.469 82.0079 217.042 82.0079 167.471 cv
82.0079 117.901 122.438 77.4712 172.007 77.4712 cv
cp
0 0 0 rgb
@
0.5 lw
191.078 139.833 mo
186.748 127.856 179.469 120.302 172.007 120.302 cv
@
0.216 lw
[4.53601 4.32001 ] 0 dsh
172.007 257.469 mo
147.222 257.469 127.008 217.042 127.008 167.471 cv
127.008 117.901 147.222 77.4712 172.007 77.4712 cv
@
[] 0 dsh
262.006 167.471 mo
262.006 179.864 221.578 189.971 172.007 189.971 cv
122.438 189.971 82.0079 179.864 82.0079 167.471 cv
@
[4.53601 4.32001 ] 0 dsh
233.469 183.86 mo
85.125 144.188 li
262.006 167.471 mo
262.006 155.079 221.578 144.971 172.007 144.971 cv
122.438 144.971 82.0079 155.079 82.0079 167.471 cv
@
329.505 209.672 mo
322.747 211.055 li
324.343 205.094 li
329.505 209.672 li
ef
110.657 183.922 mo
259 144.334 li
@
14.5088 209.672 mo
19.6709 205.096 li
21.2686 211.057 li
14.5088 209.672 li
ef
0.5 lw
[] 0 dsh
172.007 167.471 mo
208.536 114.972 li
@
206.956 113.872 mo
207.561 113.002 208.763 112.784 209.635 113.391 cv
210.507 113.998 210.721 115.201 210.117 116.071 cv
209.511 116.941 208.308 117.159 207.436 116.552 cv
206.564 115.945 206.35 114.742 206.956 113.872 cv
ef
195.218 177.954 mo
188.292 178.889 180.056 179.452 172.007 179.452 cv
160.027 179.452 147.86 178.235 139.25 176.221 cv
215.912 187.11 mo
172.007 167.471 li
@
0.216 lw
172.007 257.469 mo
196.792 257.469 217.007 217.042 217.007 167.471 cv
217.007 117.901 196.792 77.4712 172.007 77.4712 cv
@
[4.53601 4.32001 ] 0 dsh
172.007 257.469 mo
172.007 77.4712 li
@
172.007 9.97217 mo
168.923 16.1431 li
175.094 16.1431 li
172.007 9.97217 li
ef
grestore % PSGState
false sop
0 0 0 rgb
%ADOBeginSubsetFont: CMMI12 Initial
%ADOt1write: (1.0.21)
%%Copyright: Copyright 2005 Adobe System Incorporated. All rights reserved.
13 dict dup begin
/FontType 1 def
/FontName /CMMI12 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/Weight (Roman) def
/ItalicAngle -14.04 def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 114 /r put
dup 120 /x put
def
/UniqueID 5087386 def
/FontBBox {-31 -250 1026 750} def
end
systemdict begin
dup /Private
12 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-21 0 431 441 452 463 683 704] def
/OtherBlues [-204 -194] def
/BlueScale 0.04379 def
/StdHW [22] def
/StdVW [65] def
/StemSnapH [22 29] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs[{}{}{}{systemdict/internaldict known not{pop 3}{1183615869
systemdict/internaldict get exec dup/startlock known{/startlock get exec}{dup
/strtlck known{/strtlck get exec}{pop 3}ifelse}ifelse}ifelse}executeonly]def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
3 dict dup begin
/r <1C60D8A8C9B7628037FFC34225CDB51C16B6280E0517770F69131E099966
F689816DBB94E394FAC1DD9A7C1A14C9636A7D2A8B72705C22612EFEFFA6E526
4FF4EBF61CD9C4DD8B27578E011E8DDEBF419CAC1F6A2F1FE994DF5C901FD0BE
A9E7C62177556CCE084E3BECB95D975A4D2F2A65A78E12C3AB4ACCE568AEB738
452E5B0C6CD2019C0B9AA154E192BB18B0CE92FA48AF13577432A54DCB74656A
4A13E51A965BFC9D023FADEC3106AF414E85A814E3E3249DD8D208FADB8DC3FB
27> |-
/x <1C60D8A8C9B7EF325DF88715F012E085EB64F0A4FE8713D04CDEA9CB20E9
B15249D56AC8A0C2E0E12761B3B972D802D5F8B18F4F576C2666702361F5C2B4
8D78C52532223071C01FA681430DA735F1A7AE51C80B9138D3695956A62D9B46
0B17A4E36DAB726D8A63568FAB7BE160BEDB176EF49099F6F41A5863B069F194
EE62B71BD3B36F4A3FC9946AAB077F14F50A9438F7F58BFD49954B5720AE57E1
71B43DB3AF9DBD54119DEA2A7A1C00079C808029D90A7EF0A91CB3EF0628D6A4
2D1F0CCEC95B876569E8B0C44DA543AE071E278458104AF4D774998DBD764C7F
96602C> |-
/.notdef <1C60D8A8C9B81F2CC3> |-
end put
end
dup /FontName get exch definefont pop
end
%ADOEndSubsetFont
/JPGFDA+CMMI12 /CMMI12 findfont def
/JPGFDA+CMMI12*1
[
114{/.notdef}repeat /r 5{/.notdef}repeat /x 135{/.notdef}repeat
] JPGFDA+CMMI12 nfnt
JPGFDA+CMMI12*1 [11.955 -1.46406e-15 -1.46406e-15 -11.955 0 0 ]mfnt sfnt
201.887 135.73 mov
(r) sh
333.424 215.398 mov
(x) sh
%ADOBeginSubsetFont: CMR8 Initial
%ADOt1write: (1.0.21)
%%Copyright: Copyright 2005 Adobe System Incorporated. All rights reserved.
13 dict dup begin
/FontType 1 def
/FontName /CMR8 def
/FontInfo 6 dict dup begin
/Notice (Copyright (C) 1997 American Mathematical Society. All Rights Reserved) def
/Weight (Roman) def
/ItalicAngle 0 def
end def
/PaintType 0 def
/FontMatrix [0.001 0 0 0.001 0 0] def
/Encoding 256 array
0 1 255 {1 index exch /.notdef put} for
dup 50 /two put
def
/UniqueID 5000791 def
/FontBBox {-36 -250 1070 750} def
end
systemdict begin
dup /Private
13 dict dup begin
/|- {def} def
/| {put} def
/BlueValues [-21 0 431 446 665 675 683 704] def
/OtherBlues [-205 -194] def
/BlueScale 0.04379 def
/StdHW [28] def
/StdVW [76] def
/StemSnapH [28 33] def
/StemSnapV [76 92] def
/password 5839 def
/MinFeature {16 16} def
/OtherSubrs[{}{}{}{systemdict/internaldict known not{pop 3}{1183615869
systemdict/internaldict get exec dup/startlock known{/startlock get exec}{dup
/strtlck known{/strtlck get exec}{pop 3}ifelse}ifelse}ifelse}executeonly]def
/Subrs 5 array
dup 0 <1C60D8A8CC31FE2BF6E07AA3E541E2> |
dup 1 <1C60D8A8C9C3D06D9E> |
dup 2 <1C60D8A8C9C202D79A> |
dup 3 <1C60D8A849> |
dup 4 <1C60D8A8CC3674F41144B13B77> |
def
put
dup /CharStrings
2 dict dup begin
/two <1C60D8A8C9B7883C479819BD474E9964F6BF369AAF487ABFE629F8A563
37D176F7C9556B1CAAE607CA6285C927013D8BDE6137B6739AFDAF8D7D8B1E86
BAFBB9D834592D58F996DFF88B929F1FABA7347C2BBDB5519BE210DDE834DD1D
CB9A84AA77E585DFD5A86708901622F6AC3CFFFF626D8C5FD08A157C4A8F19F7
F5FA2E61175441FDD6> |-
/.notdef <1C60D8A8C9B808980A> |-
end put
end
dup /FontName get exch definefont pop
end
%ADOEndSubsetFont
/GPGFDA+CMR8 /CMR8 findfont def
/GPGFDA+CMR8*1
[
50{/.notdef}repeat /two 205{/.notdef}repeat
] GPGFDA+CMR8 nfnt
GPGFDA+CMR8*1 [7.96999 -9.76042e-16 -9.76042e-16 -7.96999 0 0 ]mfnt sfnt
340.076 217.191 mov
(2) sh
JPGFDA+CMMI12*1 [11.955 -1.46406e-15 -1.46406e-15 -11.955 0 0 ]mfnt sfnt
0.416016 215.398 mov
(x) sh
%ADOBeginSubsetFont: CMR8 AddGlyphs
%ADOt1write: (1.0.21)
%%Copyright: Copyright 2005 Adobe System Incorporated. All rights reserved.
systemdict begin
GPGFDA+CMR8 dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/one <1C60D8A8C9B7883C47E9695A643EC7CDC9D492AB150D29B838BCDE5298
51B4F36139BB3C5556B7F7E4934494C8CA669B61323ACA68A6240E429D123FC3
10871A43C3C2B8652E724507A70C99EC1FF6EE1EA351C2BAEF> |-
systemdict /gcheck known {setglobal} if end {end} if
end
GPGFDA+CMR8 /Encoding get
dup 49 /one put
pop
%ADOEndSubsetFont
/GPGFDA+CMR8*2
[
49{/.notdef}repeat /one 206{/.notdef}repeat
] GPGFDA+CMR8 nfnt
GPGFDA+CMR8*2 [7.96999 -9.76042e-16 -9.76042e-16 -7.96999 0 0 ]mfnt sfnt
7.06787 217.191 mov
(1) sh
JPGFDA+CMMI12*1 [11.955 -1.46406e-15 -1.46406e-15 -11.955 0 0 ]mfnt sfnt
168.42 5.39307 mov
(x) sh
%ADOBeginSubsetFont: CMR8 AddGlyphs
%ADOt1write: (1.0.21)
%%Copyright: Copyright 2005 Adobe System Incorporated. All rights reserved.
systemdict begin
GPGFDA+CMR8 dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/three <1C60D8A8C9B7883CBAA92B92A60ED97CC7706D34A36348BC2B93805C
7C1833580FAA27E95855649C4EE0492E1681D62AEDB7EC0D4D44FE91FF7AD466
5FD8D6994E56FB00B47353D8538086D2C46021ADFB3F80264F6C2EF23799D21E
81ACDE63FE62C97F7BE27D7DCE3B9BAF5B096FE9F9E10574C4FE3C149B03DD0A
59DE10D784DCCBFDFC6D3C5399775DC28DB91A04691B5B8F3D1C009DFAB49BB8
18D90EA7C1> |-
systemdict /gcheck known {setglobal} if end {end} if
end
GPGFDA+CMR8 /Encoding get
dup 51 /three put
pop
%ADOEndSubsetFont
/GPGFDA+CMR8*3
[
51{/.notdef}repeat /three 204{/.notdef}repeat
] GPGFDA+CMR8 nfnt
GPGFDA+CMR8*3 [7.96999 -9.76042e-16 -9.76042e-16 -7.96999 0 0 ]mfnt sfnt
175.072 7.18604 mov
(3) sh
grestore % PSGState
0.216 lw
0 lc
0 lj
2.6131 ml
[] 0 dsh
true sadj
72.0171 194.273 mo
110.657 183.922 li
false sop
0 0 0 rgb
@
4 ml
270.647 193.896 mo
232.847 183.767 li
@
%ADOBeginSubsetFont: CMMI12 AddGlyphs
%ADOt1write: (1.0.21)
%%Copyright: Copyright 2005 Adobe System Incorporated. All rights reserved.
systemdict begin
JPGFDA+CMMI12 dup
/Private get dup rcheck
{begin true}{pop false}ifelse exch
/CharStrings get begin
systemdict /gcheck known {currentglobal currentdict gcheck setglobal} if
/theta1 <1C60D8A8C9B7FA1301BE6180781D244B43F2F97D795A8C67AF29757
0B25D011F7553AE87DA67246C75A123D38A7E2A9E73C089D0155659C213520B6
BF3708CF9E463A551165DF528979C5D29939E4C663B7CB9ACD2D34590AACA015
370E594274B63269C8F1CFCDE8C91D720B13F6B93C2E0C4CB325FAAA90199F59
0A1AC543010663224FE9AA5C2BA7CFE5A136E95946849176A836312B7F034FCF
4D6AC1AC7238CDCD1DE8CE95FDACABE12915BD7468460A9C53C13689C62E4957
EFA9AD8D18B2997483879F7A346270DF44C1AE41B892E443E6FAAAFC0E03E340
2ECABE2B7246DA1D5670AD7110BF40E94066EA9490675CB0A81BEFFC608EFE8E
B9C> |-
/phi1 <1C60D8A8C9B6747BB73B43E39C205190D75AB2FA80068C30CFF75B781
B8EF25B40D3CE1F8BF1235B5920904D98C1751ACD1ECE66AA5D36E6C1B0A8270
63C26C16EF05F21A86369CC9EEB5C4FBFDD1B1033971034EB6BB92D726AF889E
8FAEBC642112085AE58F32148895EE95BF45DBD1651424FB17E02ED87E805BC1
2A8D7FC6BBCEE3EDEE61F46B81CD695594BD8913AA6E31AFF96FA2BC0EB51123
4DC983CFE742ECE43A47058200D1BD7CA0237343381C2D71B3385B4C3D1> |-
/xi <1C60D8A8C9B71063258B553F1B532EC10F40E30216C77B3F0B5660F2681
931B66B80D025CB05EB0F48CA6066E901D78AA8BDBA0138C54FFF8BC2753E842
2BAE3AE8CA07E859A4B65B4D5BD4727F3F9107AA32A4A57EB21B5630206288DD
3BEEDDAA3A69061629F0A34376B6E16CE06067FD5361A33C8D6231C3893FBC27
DA84816540B60AC54A3B46F95C2017D13E3D6A05441ECC1CCFCC0E271B2EB892
AA15AB9593923D3AFC1719CB0C359E9F3496DECE857F42C607298AB3F002EE31
0452C9265BCFBD8D84E2C48799C08153602DF1797D52F8C67BDFAEBA64E17B0D
D653E1C5FDC09B8B1BE444DD31C2CCE33B522DE3589EF9276F4E8BDDA185B4DF
FD3F802509F0BBF017DBB660603BE2B25606F1B38D53804373299EC38C0556EC
A9B2D754890C919EA4C2FFA9F42AAF4905ECF7BF321854AD8259B94818A6467E
BBE549BDD6FDF0210134D> |-
systemdict /gcheck known {setglobal} if end {end} if
end
JPGFDA+CMMI12 /Encoding get
dup 35 /theta1 put
dup 39 /phi1 put
dup 187 /xi put
pop
%ADOEndSubsetFont
/JPGFDA+CMMI12*1
[
35{/.notdef}repeat /theta1 3{/.notdef}repeat /phi1 74{/.notdef}repeat /r 5{/.notdef}repeat /x
66{/.notdef}repeat /xi 68{/.notdef}repeat
] JPGFDA+CMMI12 nfnt
JPGFDA+CMMI12*1 [11.955 -1.46406e-15 -1.46406e-15 -11.955 0 0 ]mfnt sfnt
176.416 140.398 mov
(#) sh
162.916 175.898 mov
(') sh
212.916 110.398 mov
(\273) sh
%ADOBeginClientInjection: EndPageContent "AI11EPS"
userdict /annotatepage 2 copy known {get exec}{pop pop} ifelse
%ADOEndClientInjection: EndPageContent "AI11EPS"
% page clip
grestore
grestore % PSGState
/JPGFDA+CMMI12*1 ufnt
/GPGFDA+CMR8*1 ufnt
/GPGFDA+CMR8*2 ufnt
/GPGFDA+CMR8*3 ufnt
Adobe_AGM_Core/AGMCORE_save get restore
%%PageTrailer
[/EMC AI11_PDFMark5
[/NamespacePop AI11_PDFMark5
Adobe_AGM_Image/page_trailer get exec
Adobe_CoolType_Core/page_trailer get exec
Adobe_AGM_Core/page_trailer get exec
currentdict Adobe_AGM_Utils eq {end} if
%%Trailer
Adobe_AGM_Image/doc_trailer get exec
Adobe_CoolType_Core/doc_trailer get exec
Adobe_AGM_Core/doc_trailer get exec
%%EOF
%AI9_PrintingDataEnd
userdict /AI9_read_buffer 256 string put
userdict begin
/ai9_skip_data
{
mark
{
currentfile AI9_read_buffer { readline } stopped
{
}
{
not
{
exit
} if
(%AI9_PrivateDataEnd) eq
{
exit
} if
} ifelse
} loop
cleartomark
} def
end
userdict /ai9_skip_data get exec
%AI9_PrivateDataBegin
%!PS-Adobe-3.0 EPSF-3.0
%%Creator: Adobe Illustrator(R) 11.0
%%AI8_CreatorVersion: 11.0.0
%%For: (Holden Caulfield) (Damage Inc.)
%%Title: (sphere.eps)
%%CreationDate: 7/12/05 15:30
%AI9_DataStream
%Gb",KLKZH)e*+=CmQjfK5_L"1(^S$0L]W/g&;Qo(#M at l,]DC",4dekaIfH#2r9lh-0[l`,]"1d at Fh:o3fkT4[9aBA)5KUS]qC`Nm
%mtKt]_rWA.m^RtmHY1i79t9Gnb0RZS at Zd.>BD`saQQ<QI?]*J%Cq<#qF#Q$Z'TJ^]d+>n>U-O,aT8uKIc_t76.ahit at ud,MPP0#M
%FrH$HTdK3sIaK3UW"OJ*O0>G:nZ'W0&K"dAC4]bFi'j`(^Xp$X&e,*=6_Q.#$<\\IA;%e4j4?A10Np%'p2W!Z^3`Dg%;mpC\!J((
%"Vme.,C<B(J'-Z&OpG5rb"kscBfq\Pm.mUlFW,jMO[sRI*/TPaALqkONOZ`eHT1?[BY']cL1Ghb;4!pu__:>Ns.HVh1B:5><b%0)
%T8inm;0\<JeS\t^DN"fLe7H[;(c<0R-2^43OTLM#5N%i@^1ZI at N&eEb%goLX=-I\%&'$>Vee66MS=;EK%iAJ7'o'P[64*9Umnn0`
%^)%.^pZO#C*Y"AMHDGM`!^P*81a'4H6^(A9do53qK@)MI5tbb>$N-hM:Ki_6Mj"Z6K[[Hjs+L/3JJ&E:\`BUhe?NUq\=.N:m1E`[
%7eQ$8*`-8\c1I670AFU^8;N/l'tJhfZ at A0*1dUae'S=YE'L!0:prqj<VkF\"%>E^l69kT9a]k'bg8%b+$DjIop_AcTWFuu<7ADCa
%[[BZOR7%,!,g\cSSOc#F6ious2u&&(\K$jVje-3<#B+WC.)W@[Q=ZggW6MX;Sn1J6!\o7m^dEDnDkX''4qr%Ii"J`!R,AWM_3i0'
%P'8T(pk1CV,5?h2MjPW0 at 8-.s^L0J!#qZ`OOd9EDn-S-0^[MrW"FUo!P5_-hN!hhC%*QLDEIIn.Jn'C$JgL1;29EoGoE9==)sJ at c
%(["=?62j/!(a",l94S7KW6%+VA+1:,_>(qd-<MF6@=7PN^L2.oro'&+%Su!r9#:;\PKY5E&qX355P-AP!'i0bO#UbT5([o*7IVY`
%KoDNe&!.I78ACs3EP=sMnK4!Hd>=(oUP%92eDr3?%mH[$Tl1bi_$R(KT25_]kAZ9B/Zp+G3RS#'DNTZB=qR_C+=EC?BL,l>ig^Xo
%'Bf_Q8\YCH!4b'6in+P':eL)FZqfnMpZ*EIS?,CNc",*+DFb-dr^Z0R?L=PK_^2HdH"DhWP%gOb[n-6KrBY:gL;]?0ca&@<Gocr0
%&X-$q`eFc"#d;l6Bp[>FW$)'EIgK2PKRYgQhT12g^MoS<QN*+t%TaoBT#cE'^K?HmQN*+tnMp=bO,JG,Kn#L!GpE>8s0>eu>Q.:p
%3Eut[T#cE'^O2XNQN*+t60TKMk:h,L8`l<9(4VI]BRFn](QP^.TJ8dRQl)$DZV2pnZC*]MNmJ at VrQ`5tQ5/73p_Vt0`UZh5QQXW4
%56d\d-!=-/'kU,7$g-"7Xjo'M,Iaa'6_9-E(_^Fr//&G)iW(q8%o;]LT^Z!\)2nlMZ\ndNBUlFVrXQ6V>,7d(=R;N7#c33h;+cKf
%W9?\G2a[#[:g(T&l:jbCS^@:o95TP4j!*'qf]BCO4B\@':&`S*EYL523 at Y[Waop7;1k/Z$!2'_)pMaGj4=cEqarn9(,!u<O7';H?
%$Q,Wnc3]1jRurfZ&u58\>Gbn,=6q5f`r_?dDlSr#C58SLh\7AG>(g..67ZZ>8n_U/brj4T:g864/,RVkkt%<NRLq7uf#DWBF_R:B
%pIQd"bRqiY/)`Uo)M-[Q7KJDQ?]\Y--l$>)g6"kBW^\L+&lel8r"<1c2_d.A&R)k[E2g&GG;<dk25\5K/b1%7H<af;ij_?j\C;h$
%):GT+<e5=k<[au`RRH1V)%do>6#)SqL)=@#ieSn.9>!UA$@uH0,'"4eDcLXor5*epgu8ZB6`O6s!mQWZOAK>EN$G-l at rZoe'UXh.
%>J])<TrK]l[q;cGN/&*c$+5k$'Vf.P]d7bDP,JOO_PhgCTGDjN@]H#RhoZhc at SCN.S-rb#;-i.;/B9/.h7?i=-u_ul]sBKTUlO5f
%4R_Sf$dU$V)?Uh- at tM?/=4J4C8G!r=3B*_q9X;#:3+uQN1X1k-=/^/qC0,[Mk"D^uADI$h`"nUg-QH$E#&&uo at oJGoE+sPHieu$b
%G(#;/(Z`;`0jtfbXAC4e<)+F4"r`)9>,2qa3$fK/a(g-g26<cLW`I"UV+=c#HkZ#^$EO&1j7/SQ8/g^]+$-Ui2km:B&8TbBp"C%n
%d$HE6W+9),2#U!D9=67'mpXHJQ/;icN[,FkdTb^[lFmQ`ULU[PpI&^9,L8[M'kOSYHI96Zlnd'(Uu.g]5[!"X at LJk%^c,AVPbrgf
%,F0QX441N*Xp",`dU.PE;A(+<A:Ok:3Wu;KN+qB0UVqf_2k3b)6)eQjA'Sh(W99M(#sF.C):=mBY8$Y(;<NdLFBGNTUj7c7,#S"Q
%7qm6[89."l#75EJ>8KdPoqsId8BX:6[7"!$`'b=YKLV8!J#2h_6tOV:\"qYS9X0J[Nf:(Wnr=Gms6j&hgX]o?GCjd)pu]^pHf3d,
%hf?%0GafMDkHi=W`j5\k-[j$RlJ-D;GJ#t'M88k#[cA4!l!Va&-),qkhu8N9-YadQ)f[udZNt)doK&*"EkTkFg^`E"h:7Yrgb)+W
%*Z(c2`>jGUWCE?kC#dbGmI#f!XsX*%pJ7G6QQc%V\FH`S3/;91!Z\2^.B7DdeIcME7*:H&AO]Rc.;muSR$"[1;Keoc4-Rh4#Uh3$
%F at D(ijJ%[M8h/S2%gF!qkTKpd0$m&^%P3nc5DE#d\1Tbn".dtebUiqg2 at gXl%g/cMUcn*f`X#4"hL7_lo`Et&r!u"1%$uMkhsPKJ
%2ZFL70M(#j:1q`kf+2E_J]_HW?47k&U\T/BR#Imm\WHU\%lXqk<nbTS[;t9a);jb$W2\1/KC>#tU:V>]&$\A=4VrGE??$>iA8h29
%1r0(=*OdEk/#'1D[lm1qUg!`e$r-.N(kWQlC2Pe2Nk,-er^ANWNQ7eSN-m?uGI]tn9L_Jo2W7Fq0EW5]p(0aqDM%mr6:NBCNJ]qk
%S+r?JS36.trYbfg84\q`r[`K`o5-7Xq%Z-3OQ)NL_2Ws'jrAsO#RslY&(GZ.Nr#1:J3`U/bNl7Y?>pO-p]i:[*6qRm6m at XV7R<bo
%`V0e7N4]9uStP5'4MOdWl]kH5MA3(P65;q9ij^M7`'#PhYAE?m]^!=,/Jb+3U,JEq8\<.J^%33mf'_N$6'a?1d>l"]2''("eR[HA
%/^ZVL9t at Gm[uKZ5)L8u*'IbmYMq*JRmbOV(AEsZ1WVj+bK+5ua?Ba^qMAqATCGc")?OXZm-JSSq!f, at V(nj'r*-04\jTs(#k^su&
%d-"jpR,CJ%Gh2$Qg##'RbLq9q*qpCF3jY[B$)W&l+oFl:C,h]26!_H*@DST?hZg?\q+1qnLZ<$REGr,[1Bo0ijl at N,^D1[Q6c=`@
%TD]X2W:I.>?]'&cd6EL1Lgm:Q:C^coIf_!^J!$#_5jWeP6)]IEJ/TQs&4qF2>2\W=ZAh$[b?p:`j5-_q`h.5RZAq2q&RZT0]Hb3Q
%!X2)eLfUDu:iZ]A*J(L at E8q5Z3W^$dT]ug4*.^1AT^E(Bd*ct<*ZT`$8)VK$G]j3rcsXk1KU6D"\`2 at ReDILTcN/t>hr2S]^WG)N
%BD*-nGeE82UH.8f&a1 at Q*<?:,+9V_((8N0/EWeQHJM1!N&X]4l&W.1iLq=n#5V4.l,+7U"r8e3WL(Pg.K4`%F0`pSYC?'4BYo;7i
%#Gh9O"Q57=T-jC6LV at .>LZkIl.?!0)8=']@@#6)mBMUZPo_/[N]8HTk__OZF+g0nk&73.gXLDCWX1g_dWtUTqDJqd$l&e^DL-WRQ
%_nY/?8U;H&i:F!4T*)V3?q_+p9[Wn?N.?1]hBB*5<3M9fX at 0kd!*C%$joF4X`;NK,q1$0W$bls&4WoQ('!p#2+n?_C/>DdobOfBe
%Y46/MD4iK9`CYa1s(VnL^CXu5U"5cCbtgBV_iG"#@/EKij0:uT71V,?$2R9d<`uiM at Z[&l6&r\eO5"(:N#"tNJF+NeeD[%qOIOC5
%<Y2C+!asE:7D9o0M23OR*K,#*PRA\*Li-lDF.riDC4rdrWIhj6Y<[aj9c<aC!ctnfg"er;`##m.(f;2$dOP>c9'oj2V]E&DZYPCm
%9IP[(6`G3N7mJc%s!@=5n,Mt%dN!AOrWk>Hp^UZhS"<N4m5 at I"n>-\+Mca['_.Iar,L%B9BhB11)cU_M?W`.&ZiV`H^[QTTRa68\
%"j>2`J&rE&n!AOM(G(:C=;KX'm]TTS')ZKk<%J_Kc!X##IRF:5Bn%r[/cR63?9mhdJ7sTJ[SFdjE.05e0gr3Y6"3((S=fITh'Gs,
%;2\(d18<pk$*qGA*)n*pi7gD6AF36N=9*'Nr9PL+MF<sckrkIB$f7YoGkN4s3oK_qE"EA/[FhS\R<3'$Aq9eZ%6[$7PpXpaWbD>s
%i2bm]%WC at Ol?J"h(&6HsIPpN=*6/mPHW>lDjen at mqD-jLnuK`KYCR*ic^q^un;=RS0DVHMZtUV\XE",X6X-shCQHL\lieDPopXKX
%0D/gSf<dm\BdfM,#6$(M26C$M at T;VYWI?-NY#E6N#>>c*`C+TGnO3 at o71j4-`^k2)Uh7\D)6bkoO2NfNNA4[f`_R:IMkB.0IrXN%
%>_,B/$'GmIO)9>`e1<k?Q>-q=V7mj"3I.?3P;sm.m+$mY3BUUu8QH++%a+J'pR<h+"F1(]o\ci;P3 at 4LoJuhZ08YEDSK[b1\*XL2
%G625tJl\lG2Rlh.W2&LIg())_5NkTDIJH9lrn\%Oh<_hh#PWQ.l-gY*pOooXC)[2\QZDF9p<Z<Z2#t:`VsW#Zq/-9A0pWkJEMisl
%@iI8I!&TWfKO>[%Q7/rF`uLgn$qn"'!D/bSJR:S=a0G?Ng3$B$;J0I.RnRW925`k)g/r<FD((2IP#l2i5r8O2G`3Qh4>^_VJ5shf
%+Brm2JG:).1&MsK]nA<DL\uV4.GrEs*<'r*ckFPG.]G'e2qpFnB/6'Q!e0p3,0KEudW%/;huD4JYClt6]tbBJ;tYJ4B.gh+A9bhj
%#JgPBWBCCZcN0]I"5p@@5AGD^ON+X%2ZWA4%`<c0$RrV[GDOI,A@)_U1h<X8Lh%Sll6$aM6&MO1"nbu\M`1&c=;(YqM7#Jl28i>3
%)U)^cFOBHX(<bAVAPcJ01]?4%#&t(;dt(jOs0=RG7#-\Mlel.Z-[*RN9.E2:8*"uS&RpHpc3U=F;ZAp[.7^X<%-(LbMsFN,%r"j0
%=SNsXRgAt2;S`RMi8;1LCa)G6p-o#Ms"Ohi(lu9.?\gp/OSWe4G<)11rN at 3))WX,K+St?dBoJouH\"8]4oX&pqB'!oB0@/j5,H./
%l<cH<J+Q2d`1%a46OH9BVr:#fnh1rF#lXV0rZ:`u6X.J)[uEt0I!nPVfb3P(AZicnH1.&o6NidIc2KjN>9CYq7+*9qo`)Foh4:q+
%&b$.r"$?ks\BA,Se=Pa>^d5kbjn<f#C(Ihfl>42'CIf7CW:J_qj8\-4)VdR#]mOb*Cj/A/d8JoKd7>MsOZH&"[J=BHf&h=+YYiU4
%;1#sSeQJ2kXb*OsZ5ncW,'934)],>^!%^bm!3e$/=d.e0`RL[kn!AEK]"i[Vh*7jM;/^A-q@=rJPDJqNhRl#7Gk?$^)Io\7^bUO.
%O^USMb%`qD/be\S7f7aT_*.U)&-9G"Wm2'_(g>DpWodZaV7dHjeR!90j;^(>9FH>EOZkus^^\)G/1gPI)m2,'9b\V^.osA*GmYpO
%+B2`(>ja&"+3frS$YW"s(D%Z%1#JI]:,UD,a.n at NdA4JN&g``tZ$Er/gE`2f^!(4OPHZF[Io*DcJpVnPA0.*/P:4#U:4(cfG1Yn\
%<<Ze>,.702BW]r<\QJF/06-AX#)0\Ld2\8oG]*N6K8B3Re=srf>kPG<3.;@o;2Mt/e9#>NO6`oD_d;8E[T'q@/e6.]cJ)98]H)d5
%kZ"FYJBT#9I#hX)&g*082d\)dSk`ok#t'@]ed at 8d=tJ0u=>.1QFtJRoWJK,*cdkE[<rQ`\.a(c(ekq"O]XP0pYcql94&[ps9`Z at j
%o)c6I,,?NY<n"d9P4Asq$r!iM at b5A7'abkDjL$:D&cI<]7B/H at F#*4HZ]5A9Au.,Xi8*+]_fcRM/kk"=;m:`*9 at H35G>%;Y0eG2t
%d2ko'Y?,Va%?Pi0bIk+*#hGY&5Qeg4^U20h=e\,dSh='7Kuq-'88gWRq_O':ktr<I2F0BdTL7q;HSG7VL!6(+XPZ5g9!RdC]PR)i
%.(u.qD3ora0F7aaKb8gmH<R7a'N[P:UU103NNt%4fB43t at Qg[=k08]$b41>u7Z4!^,Rd/krlhBT?83)k,'Y4sR8Z.U38bk0#?e)]
%%eZ5E0)R`q/4[nRRf@"@5V.fhUTrJbK7Z($_4ll\Id!'^o"EN6BIrCbH7K9D/@sZ:fjZ4<k2YkOL%_j52c?_?k"br^=`.n>G#2qn
%&&bnMb6[M!0mG*%T.NOp6jBL7I*[R(r]bu=+#>B*j$uX=Z(Th=Qp6kcW",?.BO4`(Q1N\WAD'4>RG$iR)59P-o`.U+7a"AMXqd'g
%V=>tf$W>)9d@!"K9BA3d6e/8GO+Y5Z.s0,#r$aP2bbt[P%1s7XE+Z`p(]2rn0r7+YUbPLhJdTV@(5jJ6j)JAMKZ];4S4o21La9(F
%.g,oBRhq?cJQ5!='Z:W=7?n^I)RlY1OWKj@,!?Pt at _rgV+_tA5YoF.Jk4>0aO&/O6;(?56+=[HYEic_VYZ;MfTArph6dtHpH-o;^
%`$4I=J;!BYj=nbhF%UK=5V,c%/A)3'PqD%=BPg(KmA7coLR;Y%_*MkLnUR=oibLA@]Q3j[`SWp$5`:&`420.E"*&.7dE)SA.[7-f
%pF7'`=63p(b*9`jL+l1)Qc"8+;_O&*WrTE&@)tYdicd+46_lc][h*d,5(fr!cThJ9n,Y at V>KO*Ch8iAWMWMW at O:s_ZG=iBs*NopZ
%@,e2[Pb,#A9_Kq%NMb>[!A[g(X^dFg!/)i>MT<dr'L"Eb)A=Vme$!oVkS:6F6\WFu,i=.aZ>Mf5)CD1"=lQWk4B:(9Q#<cTh(Vj[
%<CQ at -KTd<`M4<hb/e[TV>\*Z`"KdZuBDbi^b+:Aife>:L%'/2e=Cd.$jUiDFraOC^5FU at M47,lsh at 6Bq8m!oLBh00WVA0XE]/$d,
%`00o*kcCa<,o/pB(a-%[;B2<cAM*XP>R(OiUi=t^nBGc1lOFNH\X`#+\/n?Jq&.cVl6n/=ZbNC`g'f&.Sq1-[1I'33a)VQ'm!?SG
%1>HssC/PkQr',.rG[9kMdh\bpaJl;qML?6:ob>3hH=i5DRP at _5h/)q12aO at QVHlT!;R_]Y>^RJiC+J#W-*F^/1,Y=U_5=*0%'E_Z
%(+BuZ>R+#D\)mol$N4O1XYsm66/Wui:HGc:"r at k1'X,O:'mBDsGh?"ag-i),-[Uar;,K'?F7=sFPadfU3C2c9XU^g0/jJT>]rPD@
%b$uCA"tp^HQKdtH:4#QmbdX`%-nYd5U,iTARnBg;ZuTI2C#>^I."[$l8CTnaVJ<"<U:mRk=+u*>VhLVf<4aUgr9&ed[/\O^Yedc*
%;6)0.$5F+k-4uR=DG>&7P;Uim"jdk'2LsHrh`3 at jasWhiBBm%.X*B:`mIh[k`9"Ueq at D$_cdP(!?0_,d:Q<Yq^U#$&iQFjZ,5)i\
%p/5/D28qdY=,U4RD3\0mXOHn^e3*>.5'-ilHG#2ImM]mdSXdGBU+ap9Mo0]"Dm;+R)!Wc^aOF;ca-gXSYRp))HquNLO8/mL^W?'\
%Xh+B[jGGLLE&HOlq:l]kKFVe3bMb3efI9.?]%[ZU]c6_+`T.b,q9CX`L-7V'2?pf[cQ<h/EA=S+>;n3/3l(KUq8_hral-\]IIpO:
%>]2J&:^Tt,%4#`mLr6%jjh-d;RGX=Yf87I8]Qj-pb0F>1%se0A--3a'cOKS1F5GG7bf/@Y2Fec%rAj`D]Z$DDdeB0^>OslO4K#1h
%([J4eN<L02))p$:H`0W5Zs7=;>sEV#W1D at o3NW_9GWs?1Jol*aSpiZ!+-OK?YhE\P96WIInpVP!7Si5rBe6AhRcdV-#(lX2.S0A"
%P6ti3mrI2-c7U4&O4fj]>3!90Lbn4nK[4DTL@>$m3oo1NMmLl/3C+&*VAD/sRYUZP?kG&Fj56h3]O!^l@*eeq#f$h=^@CYND`.Jg
%$aGa`o'577\'pDUgTm\Tgl'NrFECeBkk*)EbV(@\YMX&ZH402j8ZuHuMkcIT^VaV:f#[?jIIs&]mkjBVo:=82rK6NS+5qkLq7%u"
%l>Xl$#2/?cg7ZpY_;UXQS/ZSHr"3K:[rqXE$dLP`b>"7j%DB"N$UqX8332\p7AGPuV7`3k?9P3Ir7gM2%%X87Ve at X(=Zq3D]oFNP
%lI:<h7S;cM<p6o:FJS.X&t(T>7\)FX0)g8YD91P53_d)Y1%p^WmI]GEF_B3<nM#'THBUEZ1o;InpVjt1]@65UQLe@/+&9t)Sbc7E
%jFomtOeK\S]mNCQoZ%l!IL`Z?i2pmpqs5GKGW2<HHCY8npNK[+'[;Q)P[%SES"*?Rm9nnKoq:2V+db:LNapC]SYCC4*h6IBh*1^s
%2$gq/%A+"6cG+e4W_QpHK&rAlJkjYC3\>BYkZuq=UJ?GT<GKQXIXPoLF;d;uIJ)5'UJ at 68NV>T0f;ZZqfY at 8XVEan245?sHdsC:-
%AD$-(<t>HD3dpZ+lV5\hmM'>.1Y1k9GPh6r3S*TiiFk8+m'JsX[5rW)U3T&\(4m(Ko.tdtQU at p&2LTbOhs%e\DqO;AZ`q3_SN:":
%A$#kU0<Z8l:2_cUc&^TU]5FP8Q*2^O:(^9VDEja<4k9VLDt2c_ at dM_8o_*>iW?gIHh+jG at r[I7LjNIC%Gurhb2!FT-5+!Ed9"LS5
%DuKRYoXd>K3XqY&SYBFE='@Ik9jt,oO at QWj4>5g)(O&In>oX[2,:s.)hIHgO^!LkY)ZBTR/DoDQh*qKM<k+O-c\5,\QTiYbST!ms
%&*YqJ9O4V8i<d9/^MlN;BpI6sE2>)"37]m#N>36'USQ at 3lIrFMKdZK]/Whl`_dr1=h<?*/[l[Na_k:nRg9L2dDC3eM2P_)LOjBgG
%BeGUW;[n'IB3_K'A1H2K7Q&mgUj2A-QmFWYjgWPnC at Yd)Fr2d=>V!_$BYAXHN8*8RRKL#P-g3GC-Pt7ENQ.rp#l!=/Y'iAPmQV#Y
%;X]%8HBik6X<"4PG:hja_tM-5k,jTIkWsrH^N9p#Q[R=UgA#N_dSCapFgrpuh+lAUID"brT%u'@g]#TE6<!d<2bJK*DlN]2p2-^,
%T8FK7H2k\T^3IQLO026nC&I[a8Y0_S.P]LpIDcU)CO[t;o:k3uY6R*m1OSM-9to8<k)L0?'9ppNSG0:iU0G,LmWfbe4:Vu,c(
%CK0&ZceNV%_m^rgEh>,,=N3oSHBJK?,K4'igaeCFH(<<qoegKB9AsaUoM"l-iG,_,hMh#RpuDoe8r]3Z3PRKh?-Y[kF+[m'2KCS9
%(Q%,p:tF[3i#K8n-4S25`DcW,IpY^3Gba5D`(VZ0\ES_=D>r)IbK^m4Wb3tTR*-eT\FUIl1T0t.76+/2]1;&+_aiO.dd/i]a02'L
%I&eG(r5q%uf?FRZ$6:aa=nk,#e3`gfJii-_p?CooH5K<Ichq,'.GC'UEONE*CSt*PC7csN%O0oZglos at q*7>oOP$IlcDq`ikKUX.
%WcP\cTQq:BBMoJEXb;[S(WkIuZ_e_d^:#:B_`EQs?^<95L0iK"F(SPber.5H+BpC?kBXO8DAl,)D2\XtjH\+egI@)De at W0/Ecfhl
%*Jc!P->]hlM?e#k>R^T'*b8_5it.#I%hap$1I<D("[1-f1/g)5MM/ZrBYaFpXQ9^>Mr!UrF8.*^df&Sq>_1:J`tNlXQA^@V*-:_7
%#gR!nhtJ2*.IeBb^5f=G$[^_bE2"pr#i7c"51Ka2"'gr$5-#S'kAVk^,CI\A/AZ[Ng;2Toi at q:]P`3F/e.,e9E>L:.84=U[XRe[6
%fp^XLlN]M]bNJ=s#rj815P[X1N1-\.#=\s?'3,:O1Gt.<'nB+NOUn>H?pXj6(l!2\O-D]9Vu1S5r$mp=.P*d3XfY?\G.^\MBO7KP
%IEC.t&"V!#@Y45%4j4AQ9ah,%1b[ub^0>GB7CV8aQ1$nX:ZRqb`NP]1hDs#Kf[VsIW`?(W>6N,9I")CYO:hJW\3b/,I'L6*A0"IY
%V"u9Pjs#;.TWNPA``#"^Mtq at 2TlG8h8OGs.E/i8Xg`N&=?4bo<eAk=Uc,]8S6F4/WDr4"64VL6:0i\c7*qgGF2C#`;JK`(Da9SGl
%8(:Kq.[WAt5DA8-%tamA"03IIUE5._nGtd#>Mmu,6EmJ?qj)dHfD`eJ.=pf<MWV]7AFR7_i%=<R%auf&8tiprS5?LtM_!PgJNiMC
%E/EaiICOe^lFOX7ff7^;"&AJmDD<)al3)of!"8%AE1LYKX0E3*MaZO<MC^-a$\(- at o[.7>$:).b)QS_-Y8TjK?PtPZ*e#kLak%oC
%%Eb1=A:mi*nsKua?U0Bf*t&9c,M5Ail>h_'@BZmXZ,8i7s,_'eM[l2QPTP+,36Vn6RgO^bhhDDY\25V at K0Z4[^XtrI<u?k[!h%Hh
%QUL'c#fI]W>5O,R!CsaXiFpObF"Ndak8u]'3#9/GC+SNKSq8D$(3*6^G!jT"]!J#YX"<dG+`1JQXiNVdW+sE0SAD70HuNh4?Z'e!
%p4L?X'*BX4)U/1N5'31'0!"."i(/'p\E^%tRMR!'>pa>G]>,9D>@0#fF6P%LctI+N-?q?Pa^H!a;k)jE$PKmS7A,aeqRdJ("Z7F=
%Xiq]VB"i=hM3(h*aV\O/k^>;lcL"HTWcJ&IkG<`!!ireJZ?eV)\+Nkio17G9Xhm%]!r4$R=0K,&@;AT8`QR<>[B3S1#aq.b`j*Fh
%`Zrl]a_[?G]ApE8lDHtU9G(rEgA<h9'q)'M668+d].?JTT?D)l)t'Jj6K at I>(Sn?TLlX9gGP<J*HirdU20R=#&F+GL*1iLpKmAS+
%10!OAqI8\>^0IQjS!ogDMg"_Na!NAbS at 3O_o8ZmY"dinEH#`quq^#1_DTBE:bffK`\+>bBh"A<*>e?So3):g!PtD-J-q:5PBa]fD
%;=iLJ_5?(h?)`-$MV+2-\dK%T*A0_/o0^lr/[bs8WV5:Jd1DQQQQ\,D;/&gY<M36Oa@?(K:t`,35;l>poW`O)G]+c3QP[)h9=5V$
%p0Q@*;:JHQbuK*rAV88l%@o0gHWD)W0`B[3?Kt^Xo(X3-%I%SPWF[/0N+]g#VJA at 32_goK0_W0Jh@7IW(?V\g?8%I)Kh5%#(^fs#
%Q6</DA-CD:2R5&.cZ9sL+bFB#4IPdU)'jtp:ea%*N7u"s.b1iM5:GfqeJ8oYUA0%,^%$1l1;1$S9^KZB9#!#?BYEJ]Z/V:a^AcE8
%gGQLic`:IBW1Dhm#fe)\\oRh!1"G!Kei5Ci3^9h?k":LQgCuaQgsSM<OdWU"pFRZJqpK&&p$*FJEm0e&i,pi&le+P=q2X%=$9spf
%Ld8I/UecchJ3jG:7_9EhO.#+l/i;e2G^bE`L5cWYRLYB+RaRJ3'5\*[WYH*)*OT55-4%!;6??7*N/m>rBWQPc;Pc6l#)pT>4h[\O
%>\FV6Te$Wn-BAZH?!\Ia[G\M>/V5LrZ:0*mZq3iq[P?sSEh_f-C_IVR.E3"X>3F750!n3,6kEK\d;8TY!2P]"87Y`S#&6dIRPN_t
%!\1L0gK<Pf;,KG2)V28Z6d!hY*JAs,MII7h10Io*Rtu:s;6g"A%@!Hnl'o!4hEhp$Y\ruJ6TamT9+R at sjZ-T>lo`eWq^Qr0a&`]l
%)O at lsqj7'!@s`:YEFUV/KJCfU0W$(MF_B-2[G!8%?,iqi/kC4G!<L_8qL89$"$e!nXu0M\@YL_&Hf'G7nW&l,UK5X4F'[Q>;O30[
%>J"AK"E]_\d*SEM>:s0UIH3_;6KR)@KoJ!3FSJrJ5oos5`Q.=kP(9b=)e^%RgY;ehq9n]rFh!C^0;'n=q9ZYI1"mVWZf><s?;);R
%^-"MA+VN3]ItI3-^4[N\`'.lR4mT!"Q8Iao44YCZgIko/U@'Y)V$:_Cp[Rcjij()aVc[tjf at j-Pfb8I'%E%Q[P/h4?iNu>]p$!eS
%e)bQ53[(j^>4!'i5cAKpdU6'm%F@$s)Jr!9AAf"A]$%re_#fQ57mB,lmq/JikfLCeDJN<6 at K7=#a3:j9;0g_nn)DN2Ius#U=RrBe
%+)gl][MT#+>PE)S_bqW.k/?sWZISa"T#mVGQ\X73pA>5Vq:=)2NFtMiEGW`U!Gs`<H#/-Hka3uQ7D*WAfesUY*sj:]Pl5"M5DNQM
%nSA-b/[ThSHe7u7e&.3@#S;ra8+.:fmHq\iS<=>gfe?lO7GVA*=SF&o+.pD>cM]_U7koj8hr2mpb\ld<_dm[NgZ%pR%3gerM.OWB
%I)]X+]jK at e;[p^ONMt.#`ug4NM8N0ee8E7rgUA`"d<aKu'<t$ie:-$i6AN`2EBa at i/.7[n!Ti4$=DmTbS?C&%XVTfh?*Wb#?@6\K
%58MEL)Y<E&/5+AqVNJdNMWH1g&^0Im:EJ9PQ?L2%!q+T"%[L>U#B[$mUM.WE-_8?X2(Qdc&<:;B6(@etjo3`3jaNE&/bb8&<U.\d
%maMl)\0:mLQFQH1)`U0C.*$, at H:?>%\b=kAENXmX=_Er#8nXcf1Ib]ckDd-'%a,!76>'`kos4uO?1X&.'![p&;O)_?+m*QiQYo4p
%VUh__(--3u<^[KOm5R9M(==4]l*`1+NV,%!FPGUt0Fq"^g]ap.D=4sg:i%9X2K^H=^%UiO/Qo!m-:].*:RV($dk#Q!m9F<&nQA;e
%."Ln.SsMl!##>3*eqEDS][NJZI5q2%6s`ES/g[*[-c=77I%8&0(/h8U38YWLO>tG5^F&o,p[PO^`fc+Ib\*eY^F6E0^'G5"_]tKC
%o'\peFVnVN,Zn-+NG@=Z#e=LK3-tSW\]T-oBq:4,b<)OaAl>oQ#g0Jg;Qc=e)O?$/(JF>"eu at OrMl9mDZIAD/qr,"CQ at 61XYh.m4
%ER2e4TT\o.XVM;iLqRj.KPE&-\[),Wl!$^%_DmZ:r%ortk7apCniC#brp9WhNC7)0-'XrGB\us-,--?0<>pB(4ZN4sY267DTO2O9
%#NmP@'AXAn[2eR:ULB"kk^g at i%=9#OOHm0_*bR,4](TY>\GY`06'74E4LM3-Iq.9a%!.YQUqLJW[.dfheRsNQkVHjDmM+6q#5QpH
%]V3S3`S'IH.d9uQ/X2mU8_2E-L(;WZ3h=mOB;=Q%[!eS at H$cHW$?c0#Suq]D$C9Ol%.Wq=6cM!%Tt/7aJ?f*VB/EWE'8OcP#K#]g
%FaB&aYDk4E*"1q9b at n8F'l9Bt\fM-[39+m4n,TsU*#g3(3:%s!XsIn$Q4'BgPsUDp-C8jUYgNGQouLi#LKC%7 at m&OhSPVQ-ddCqq
%m%pU&VPf<\1eCmEm=tC,A/A`71I\DUR\_R92RJJ(/Su`Z7e!oTMaC>FY3cDHU_hi\0#hcmM?s>a*6mFTGhVc2e;0m]D-EsZ3*'Z$
%4J,_1At+(Z)@)8\Y,L1TG1<7/@%"p at 6PiJWZQ1PtcU4\JR/^PQ(t4k2AA)fIG-(#_d0%MLZ2eVeJRph<M6XJ[D?E[(;%eU)74[gF
%!,&kB+BlYmf7n1u%QuUO]r^2Xe]*^'j,k?c2a#l7)b'I*)/Z0k6>O\N)gcH:H[Mo$hTcX[b\\,6VdU'Ff2HA at A(Ji]6/$Kcp(Kd*
%V8?0`/(i&'Z(EABkO$[(-oGTe/\YV[?`9g+%9g,$X[d8iS4-i=U+P2!]aBu\X6.N2$&]Ke>NUWS?Ej(TmCX9I0lB3/VCLnTo4%/6
%+ at Bf2Rb&JO*S.[$I[[AI\Y=7fR5W/f?B]a4[b(eB`a1]iA#%Ol>:EVmS9'CGC%#FP>D>/sr1Y<=?@3[u_W"?"Eubeho"rst?*\4K
%:BuNHCi[To"K#4h at D8`n#'V8+(G5KYAP,b;T,>n#(q[.r+G1,^a`6$!`L&g>UX[?VBc>F+D+SFTOGJm$gtY at W"DN9O:d;SC#+fZ$
%'cA9l[?#jD%$4S4;4*kr"5?Lb5r1DMCo^D$H!_&>E4E9qgq59Eg7/7\,MXON)Q(V]md&fL3(`gJCN\p7$YL8<HP<8ef#.f/,l(8p
%CM("`<j7FC/O\FAn&o3X(?\J*6^%Y)FoJ#W`mB_NaK\4.#!::8gUY[g$Ld2)ddjsj at OW*f;O68E.Q]"3fLDP%!ah!3Z&_0I/i8>L
%f!et/-<44dkoM-l(YYaX?DQ-+2452>%_^PfPjCk"g!a[Z;tq`nR@;e>*@@b\?"?/CN,=]=V2mA.E>MZDcoQ/pgSJQ;E1tsB[0E9T
%@SlH`E!S^GR[n/URn8lGZI*&)g=GtCKMQo`LuRhAUkIImG1kU<\^h.#f!Y:SPA$r?dP;gqF#so?(t2c(lc[N5-j4hhkLVf;8@[6/
%RbABa/mI;l&n)`NfEUTn4#mWKJJ>O5DeYUGD&1-i5.SW>W9BNjTXm3cf6ZHM-V#=N4'%HhWfp:*-`I#TiG/+L+fk7bB#:6A(9T3.
%c2!ao1srm[>d="X*pYZ1l=<D_!<_'(X50EXMd6]$]WHQ*S at i[,:S^$Ebqa]mD2[33'%WQ^KlarZbj92/--9J(^&D.1Oqu<jHk"DV
%ZJ,2+dk?ako8/&^pURt"55Q]=Hu^!8i[D*KCn3i<F49iH,a;pP)J64K(@?!M.O!;]C'YZ?1>$k>D20C8Y5,<oQMk"RK@)+KM_EhS
%`)^$N?\p9pCYu:q*3rkn\r95,ZES?F'4aG5mBpbQC(m9-kD-KRORW'"CECd'=:1c3,HXK!/-9nl]D1r6IR&b(I";Qmh;iY6j)&;L
%dn\CA-C0#mEk^/s0XVh#SPTC$";@T7>[/*lQos<[s&n9?C+R\P]id-NXjJWE\74XJ(Ame5(r1=?1p at uhOS_WANWs?H*lT_[ZPhN?
%L3_8X:1(HRVm7?cVD1V"hF.\\an4.E<b=uC>Itchgl`8N=5utJ]au5(a%r_SZ?!EX'$Ep(Z2F=/\QCbHl3(%*-XfnK(h<8W=KjBC
%g\X_4W^F5IeqZ"I-F>q at Ciu$^TZumJJJMmtiUl6fLh/sn3b!@R%gc!;hFK1jVjcpHj3:=oSg6/$@6Bma=GE>aPuuUs*8X^ICZ;m8
%YtSd0Bt%Q^a_PK_:VLXiM$TK0(@Er>0:QR&U2h:7>DoqRqoN?[%VpE3+2R_`kEoDAH(Rm<#BMhiG`t)DJ'bUA%9 at lIpsekB(&bd@
%'C-B"L29AkR`Drg]Pu;M"eC at Pf+1b^2u!.dhjXUKX?A*.Q-E-'ff'D?hZa<$Ck#\UB<h'WkFQmGqHR[<d;]?<g,EP?\^T2lO"4&/
%rTmI(_t,JhEMlj@%6R]2MCh6n2Z3LH`Kn^c/u#aMk&-K&B?.:CadFg'I-<*gE[A-2V0aZan_IU^Ei//a1L52#j8PqD7Fg6a-E;8e
%[H<omL[/"oWn(GB%!f%kE)F$?SE"fGWjY!TT3YEu2jW9,<3<^.)J%q_>Z at gsjE7t]je?K!E+6Q6N\@E`>Z36C-LCB!C(5.)qiQ)I
%;75PTC,iic(G;`=j=$ernf&BFCHAkK48,Nf<GSb:-CWB.0<3T>a4RZk\%&A?F%nMqqcdB+D)^htY,U"?-LBrjC(5-^)\$V9B.NXD
%@3/V-_n5;)eXH3-bkg.%<3:/er&BI5s.X8OGfu^c<3;L,Wu""/K8Z`e/&Q7:MX?Yi[7r_enWqp8<,EUnq;[C5mH,YJ^8TaD!i\mi
%#r%Dk2,2BQnLfkgEq\Y)1T[EcgFu.Bj2Pr4BA8Idhphpl6#uZW(u%0Y<.F(ZU\&@Aak8b3]!7BfD>/-NPOrZ1Y$5CpmDs"<PEiRV
%HM2MbBq(u4gITWHi(Q[7BlBN3XbsaC/j7qn7HiS$]4$#oNT=ohrQ5SuZY^rggV1)N3'H$9/tLCLdMnupgON,PZIg]k>=l4,ak8/8
%]NojWDWf!q-*s)bb9lK,2Ws1Wl.OdD*hDBYTARH0gJEGA5>TV6JP+G8:XcZ;hdH5CoP?lolK)/bSXuqtK*KHNEo-,bc:ub\c8ME%
%%FVS"fET?BijR=BD'WbP(u+0*B'[Rl>@VLJ)Qdj2[]/M.6jsH*Ps7sg[ZR)^T3Z4<P[8[E%?Rs-$!X3<)hOlPS$7$][Z0?aLJ-6c
%@'I*K,NUi,]N4:=HHI8`T)HR=ZPA^@OihG)mVMJ_AU,A#s7YgHo5'\9B:I\lDHkIlhjs.RD%Oj$p[7CUiTaWpo'P,B8K3FhRETQp
%2 at s78hOSM0H@o3=[675MHWI%9*qb7m7t\Ub]@"+YlWN&7]u+n+L232s<doL=KkTM*na0+eh'?Lc4E>[J)<8k5iSVfqhu6ZR9es_j
%0XdI0EJI34)?7C/nI;fb[`fRIaK49=`]0J!Z]"^.eQ\<mN,dBc_QRO0>=T4l,%KF-a^@?T(tY8Uh.M]H(h:!0`bjLo\V#i\_;<3m
%j1gp8^27K\Af9VEGnrKa(tXZdh0m;Q8aPXN1WIC>d at Gu7l=Ptoc2MT:`Z<VJeN:hh(]9T2&\Ni9j4iW at D4WJ"GS7tj1WIhTlqmNs
%AW.SWfIeu"GC4&:6,r]nGLg\q1%%lHphLc-b4r7!b8?R.,Y"bI438<e=Z6"9:JFc#N14#e]?1u"G=1do1WC0?$2;3$0u!<po,D8"
%>KN5fA;j/<[_A65on!#`@pG_DmO0qe04S6Aq[^H.0lD8Kf1n*@mFs9YaVZrrMdXRCj#1q'G*"FrqbH)lAW3Z7mX?Zrr5UY&Sh[Ai
%4)13]Ui(2,N,]#\l&"LBAW/]MSr_dO(ft[Da5>&W[rH'Z%Pl&kT;D7FN,e7<:qr2Kr\G(Ah2H?/Xi:%`N,^_7m9D1M)<2K8"$=XB
%fA$As9,ZcZh"SC.`jj-=Y<0rFhaHmNT/!K%pNN/_:<jm9p9%f8)<2Kupl7,L*HoB^O#+d%J$SJWpUeQb[r[2\cSNT6I,hib(ruW\
%Nm:f*43\U$[J4p21%)9u_V%Z'\A?nVEQ7dVcQCW^(uP>j1%U?D^!(ec1Tm3%re'QV3B%p+q7!ZIj`9E'hVZEbQZL&UX`*seiJ(jq
%Bm."V)fB.:>A&`7.E#=1qk`Xu3B(4$A&"0I/d$kbKmtO5gcDcj(YRcibkg5?%QDS4hd(E8S>NEbZ!CssbFNBghKPD//isXf]&U9*
%_e%$JfWP-tG.>glhnP6nY16s0-Tc^fI,n#._bKaAG*X.$kD$2'MsW,Y>TW<V\!Pgl%[Z?FN)fY4lu5,F`U:(MATM^PM!e!D__!+E
%GENt!,LCC*HjA?`C+JPXZGXrX/4A:l4?Hek**N(5IZtkeq/4&-g#97$WFmIE.Q^n\%C['@Y[r"Q2Al<_0T3/>r@?R[44rNJkj!'O
%qo#ti%QDD[0!iIWeI*AZ\$Eno:2]l]lu9KudAuaUg#5,+cH*2#LW]ddD_9jpG.>b[AC&foZbp>b]:`I-8p7_qg[dM[iOY>ocEkDg
%4SdU7_`*sL+(U-Gbfc$Q_e&4:\bE]$lu8^NS)%\3X7Q(8.m%!*V)F6QQeC><DR_i6CqK''?(H0Om$GV.VPmJN-8,j7\W<g*+>Mg`
%2gsoVdtdGsTZ/qO)BD at +-uPWtX1Oitgt9'e<Mn.<^=FMQFH*:9r=KBqW_\i_.:o-c[6'oT(pb#g0dpq,b%ZehHQ:9KA&9kDG%Yut
%L1\>RGM!)A:,nC[8?u:t!O_/4^P3kFA*13`-"%rZh*<&\YU2nIhni,IeG3OSCXG4.Z-t at e)'8,>%[W3QJ$mhs(P^&8H)FB^DthOf
%"3+m>KeipObpYIb9ChEg#U\'\c^g(':$KftmU^UP8*a4(O(Q;Xl0**N#Vb<"Fe/Fe42[?]0KR>ARu'NhB+3QD]bmmU\GltgCM"pQ
%r'/:%f=U-;%tPqf[un=@APWTAdlFU"pPtrd^ec0]*@Bol;QfB_?mheqYBSH`VUEb.r@@:/7K^RRNpO8SX>@C6V=cWc[_is-jSHFE
%'!eEZF at U'Pa*[8!DB&bTF$8/VG\YsE=4CR'*i,rC\X;G_Sdgk=6C3ZXA)LX]?gC.+>FuI9YVd$(]_<H!SL0-8KQ`M9>:2no5B.UL
%BQp0'n1n>9SiFDhMYO_p7i6:[UZn]0ml7Ig#P\('O:8\0_mNW>rcVGElat[IPeDJi>N(*o\fTVaFAnqbrH-IDk!"tb,&hShFuSe,
%V'l/kXk0\X>H?LLcZ!]dTRg]4BfhkmFrcr]4`>AiY%^oqAUF,&d:S]9U%+4HhfQT_Bb<t>:Q`-#$WRUJXe4s?`pE'_C_/@/ht"ho
%23$i)O4U9V7n.lHG%,soc5\`_YbM-*gr;7`KDUl(DSS#5(3aZ4mMiNHs&^<?(3O[s]pZr%eo_rbSbnB7GFJ^;Z.?Ni)[L?4R.un]
%hu8`?M_@/)cc?HS(oLndj8aL'[?F*jj&D"nfhQ>uS;?R?IBJ1pjkUkj4U/V.P(:60gf2?uLO0YX@'F$LXT_7smu,kT6-u?CNGf^^
%auM at 9>l]dh_dH=ks-D+k$<?9)gY[[8o]3DsCu\YCEo/RKfN'?Y"ukZe"*fUK8H<14h4qKF0Rg6qCM%uZo$R3RO,XuCagmsr.,h9#
%2=H1VNRCjQq<$9^DFS+`lXF#C7;?DU#Ub7e(2[o=Cj+N<'cB)e98C^+$%\:WG9rP0NP0c/81_7ET6.c8CE1?Cl6s&YpRDuk\NP[V
%\\6n*m;pZ"9pro3IIB]X\+af9f(\sJ]=`J8Z#&PG+UQf5&Bf%<($)Lc7P#cpkoT>%P4`WCQ65LOA]9W5)i3V:nVNrA7M+F[mu5oO
%$nrUCPI4N$Gr(AA(n/,!r9<CJj*45W%!Gh[_JCFjS,?%CIe#I->OL7i]Ui<n(2RT>5Ab at 7L!ZDgAdZgf[rR/SM<%[?IE5gRN-9#a
%rL-LJon33kh.'SKM]I-B?nAk;c(^Bg*4V)Y)Cc.a482c[8)Q^SZ^G#pYqokDXf*&"AF<JDX4$LmQY6257C13RH0oek[O&5meFe?n
%?<a"CA9Nl":,fONLN8WN?<`V0mH<*C?cTXB>)TM'ps`D^]e9R*a+HB?M5>7uL2MM8aadfLL-+Nih9r;f_;>N#/3!-j5^/BZG5\a@
%AA#M$a8k!qG0EC-l*IS9S&<3kh%c'_F>Ig35PJ!Blc5?t1t.>pHXR at t$b($H$Bn/cS8bq[?*7_YE at 7$`IB7GT=oRe&NUQD)p!i2!
%qE+Ro//eW=Zcas//QU?"7Vr=^dD`WQl!EHnZ]@lSii4ciA at q#Djh%XBQ07C#`p"N5[=I/"FGCoU,+2!O[hrETAukW&Oc(U"Q`l/t
%qp)7=a-gB)!rL:cdH"a7nUPV-:$^mcDE.A\lfISIm&O2/Uq^*B_eZEH8DLoo^E4Gu3]4\?f8$c]pq@<L=ZnSLT&XE=kOX'b7m8Ge
%W\;npqd.]DhGld(iq^rpF+;3S!j:J?0]dR/G9;2=hp(]1pYhp<Ug&'+RGccO50mR_X%r,1iPnH%.q:F5WGX[9A:p3b6+6=)"q([B
%gL-^q4664bV4V*(09-f<-b#Yq:cXZ^e.2aR3.W'/mk+!hQ//)&fOaJ34-%j=3-cI&[*_,mE'9h8i.Aim+1\&^*_d,Ln;P?nVf*QX
%62)OjFH^hDW0TX=(W.Mhr@%Q&AmZY'@k(_*hB.4<l"Te at q078RZTup<FaE7o]:Q$Xn^KPaWn%QSUK7?Y4IgBJ7.GTF3\ua\k7U\R
%)ntoort3&)V,Qh)A#=?q$nn2f_>H[%aY*jpK-4HH435 at sdi<Ed\U7!skO3%%5<e(h2rFFppu4,-/_*>/X)P+F(<'<3\%XEMDe/AZ
%UrUZbgb;oW7WZ!4aIp(g<42:sBGp4O2a$BbSR"6OL7_7\e4&5>EqB(e4SH8YiKT65I&*;39W77K#M^CT9c$S)[.`YSF\`[$N(E*6
%nTL/c"B.$@,0(`l_&d,7:@P_,pJDqTrqgr!7Wi[94tH?a)33lU16YjdJO]>-%F9?:0'h:gIi`.?\PYFR"bV`!S*<n@\!d$5I-/U:
%4;C`P-dZ;i)SQu[s,(\0HRD,Ej1pqN<8QYO0!f;jk6n:W%'>G$pE\Y`*dH/5dMH*\f at NZ31^3-onfZ1!o_>LP5/%J(8"N#DhE>%R
%C>S_QAi;_&'-$a$qKtH>:+%R&c[<o#=JjCs__*9?Id"XN at Vi)JR:dG^$]Tu at jIGH>TA`V-"GK>Q5?mBYW0<!*iK9^+c91?34Zf5V
%q&QuMH^MuIp?Og)b18>'d;4'lHY&7N/W/fi?Roe,XY:s!h at eOfB):tWZ0XG5%RH"t2oqC+^33T")dheDkhmA3Nl]CN at e2P:k@^>5
%G:_M@]O"*po8bAiXih@\MY"?^CsG+U<);IHUU9Tg;e7>HWp;fUY-3a<<;YTQD?mRiHmDGs_o'8+Cl\,%B#Bb1#B<BZ!c_85>e-R.
%W`M;BFiEF0cF7"ZqZus'j^V%j/,$JtFd9VaY$RNsX0c)[Q5\,r?eOH;oUGJCYFb]+O?L,D;^rK0M130NmeR$Wkm%]fq<l)NV:<26
%c%!JS=g.#,(Hk;QeaqU\1V[[d[l!A,42m4))8bal%IAor8pKCT/:nl(DG3:l(h]8X$]R^A\]j2MO&plBqOmYL%V5a7j<lg at bn.7m
%"3#en?OARmki_;V&Nj-.hU%M"f$aJR4[R*Vr"'8spZ'J3A]WeD9_Bd4_bA>N4@$f?Q'bHbiC;8`r&mTCE8takrV-hlTo$Rtps/cL
%O5K<oe^GP.lX*S(@ZPErH at Zgr:P5)T4A7,*=8VpJJ's3<QQ$qO at t)@.O36/0X0]oQNN#"Jj[h53o2SZ$3%sD)rPQZ`-rkJ(#;<K?
%<. at om&^F`m!`-4k.#e%pI-5BFBAZ)P0qtE/I>U+D<^@OHToUgdMom6)M*<`b?+67$N5*0P6\Ot./Dn-c5@@UfaV1CZ/Pn+l&PVb0
%p?VKkMO+M%RoPA1:@b=1eQmcbm^(.V.MAYHlRQTMFo(f\rcXbmB/A at 02d<=_DKDNC`Wb3h`<Z)r>`#Irn.\$YJrbJPqH!reLm)Y"
%Q*'.ccDN\>6`A[^Om+g)0j'/=dk6pRe#CO@;C!oAPoHm/*cn+JM^6]&q\.R_3`TNf&_HjN!QIk>hFt?30*>a-7*`K4r(F5HTSU<h
%jF-,g5Z.882d2_K=Lh at KX_EqmZd?N<=.Xh?jA$^J9t.b&1jX-`^-sjo4BisB+o2gAlJ`1I1]T"EYW271Vg)GP=P, at 2'76[k2I[3W
%E^=1#BXuQjGc(%OS^7.rgg!rPf?`J^O$@mjV6UC'f[k>!4QU26DSA."IA10:7ms/Jm^j'!,.E3S-oq-[pXukSFY#(As7%jCa\Gr#
%ad=42ZVpd.rcrt*U,b%``Q#_!b\AalT$1!WX32kYe%#cIb6"6l+L^]db"R`MDtG53;SOVO#F*G#Up_YpeSF1a[&7Q4IblZ4gn0ub
%#KEcp?l"tGl*HT1&967r6&KHbmb#an4cpHa,[[e at cmUJIC[)$_MlO,c??:jcgnici3P,_F6%AM,Eh@=m1@[.l%Ch'--0NDE]E0`=
%5qD.BFl<YOMpqQO^nZ1cGo$U;\*cb'?NrA\'?e2XpaqURkQgPZ?BkSm)]&]pHB<SCL.rmdX at 4Vn)<,\@o.H@\"r`n%@W at 58Ris*:
%I$jPMRQn[poa%r=,A7!hlE2:lW)p)rJWtgt"D3*ISU<I>Aa.OiDg^!\93EZgE]V<C<_"Amf<$D(iqpglKkK0JZ)^?K6b:<,"<"Ag
%ja?6ua5q`E_#\.Va\e($`"TIB5?$_e$A)[1At?`XRMY3^jkJ6QN?,Vc%:6R1acZ&OH$0O>\gSWT'i'mIH<`n2g>=3X*u3*d*eJ()
%gr*'"#o\"VP`in)\s&Og3bO8qU'F!C"PqGXEB"Wr(%0Q.rP;H(%=)-K&dS6r,j>F.D3elu*d[F[ke*rE[hcFi4[^Et+Cq4=TRQFj
%?4p,D"P7f,.=<Kb82G\]jZBVO8'@G8Set=Up)Jtup[EuM^.o$uO8W<%M:8YWhXf,9A/Yu<7K/!FU0[t_E7B*.cQ\u+@/o[$T(<X=
%.jLL7q'fo3p_hhtTgS'T]0+=J>;pKR;<G!Gn'mq)`D3aqUp@*6qq/JnAB4RdC/\TcG2Eq[Ju=N/(`$.J%"8pQH]0jK>oI9(\SNjI
%dc^oiA>4[=*[:IZ?4bi2)EO/)+T8L24,'P0fe<3WM.[Y%/J!r&Fcr?Y7\ds9.nROZDe-JKB_oe"?*Ko5*\1u(p5JB97$_(0Apq*f
%?6(33RCa`&4cA!1m."[oa#ZoP6bD\Z=Fkfs]^YO"n?u@^'_^#`PBXV6o#ZR?O70Ql92?g!q7b!Bhat=6%Tg`"G't)B4V+^[k-uD+
%>M_c6DGIK]E8OgHYbF^se9.18(?I/Ea;Ia7V2>"mp%8B-M%s(6nFFDjc;]^]7_[@8UquLu;u52:5#mejd at S6'7/*6L5U>\d\o;!A
%/VWf:"O7U,T!?PjILiR1AeI[+f0JJ)=FDF:Ro1]Q>#4>^be=ef<]h!hKdtXtpK>L[F=ZO2%k?oE.]p%/akXpt>bZbO"VI:I at aS(?
%_s!XgSbZo\b.g(bW0?;m=X`UumsUOE,j]In<9MQ+ at Or@i>IV!Q>3t?[-o7BcRo_GHee)V"p)(Lgm/dt+?u1*I;@W*Lfrl*4/6PR=
%80f`NRF<($!ugd-N]M`8l1Tc.j:eV)g5ifmGB^0N3qtmKo8G%Dq-Xg36u#:<**WPXhf'Rg'p]%pSX?e;oF^[cN495V04lF>[3Z*;
%(1=D7)[mKW0[e<WNjs&9O<?b at K=;2;Z=X:*\h0Z>?WW<8rB5>91#.tZ`W:<-pMKUN0^OS$i"M'(gnD&ZYl?F26&\`!Gb&UpN7"c6
%C`+gZGb"&`b;o3:6JJH;=,hH%<M$5rbRt5;_&CE/=q"^r&fq at _BMF4DTRn:djg&o3BRGIW7%mV!/-]u1^*MXY!sFc0SGi;g;jQ#;
%kp=/bMctdBhhGL\j`CCEZehJ.,C=eYF<TB-h&so+quBB5i[2J;*us%$pu4no>R`@`jBu/=;6G>D)dDqs.i9D^ffY/]M"o9n`4[nJ
%\\#^2#ORA&11#HjAhGG3bu+i at RDV/;),.>L]m)=lEReO&<DcspeBEfU&*qHs at V:j8Jb5PpD(b=4R-Rm?er#P!fB3g>]YC#.,Wd&5
%VQ)S80+Q:?(f+i<%aKcYjDIo.*ZQfZl<?s?k-KgZOLT]%<PJ?N5*UF--,dYMqo%tI=M4(oOHhN#"R5.7MGthGVOGPn/Jf)0AF7R<
%"K6K/m0f.[7*^VGkIllOg/@EH_G[&4+a8!I%e<'!(hgMrQ.<14X at Ajr`!MTl^EHE1iWO9#h[h1SEM>IEb.^-7$6P0WeJUDdJYo2.
%%[jVrbi<7@/VQHCDAME':c:L0!@KA4T(kmF$!pQEkXH;`C9Mpb73bQh/bU+b73bPIY$Vbh)KDK2<FZ,^EgA;.>e$G%#3R_0\N3Ch
%q[Z1J7-?t;Y((DNF=.#&=pf?SQ3-&ULg;U2bq%dgL&sdg:-aU1"bEB[-Ye'GB*(LH:;j6@*=ER@>_%Wd?P"V(E<8>#N<ICEjen0b
%hh'LCDSAa(2'Vh8Iq=ndCLh;._ISpVcROKC,af..SiZ(J.%6iel"hBC5D[\^ZYVAKc[DUG_!lcKF*-`QFbZpt+5=/sh,PZ&&\OH@
%CR"nk4@`H3.P+&5kfXT%8HQ65>?R[J8K9?%ZG`-#ImkI.2,7tT-4ZBM/30FBs/V21$kIE6)OJ"K"_ZZX6K;8(VC./Tq[_-`&+#3/
%f;4g7Nk1i66jK7O$GGX6&7go*2L7\Q_:4aU?W=Xqf^-j*mi-_g88C,M)gt0Xf^0C56cDp2r%\BCBDNhi8du:c:VI:9PIFnUCo'07
%V>4->NS'3]'lOP>S*p4tpeLeG/*\WCd9aChOQXpl:ul"-D,QVZVM$b:SaOQm4pLmE>@m6r=jM/3RAo9F(O-l*d%>m6GsCX_#%b<r
%qr<+1j`#Z2:5og#)*!211C%W5U%\!H_D)&rhpKu6@`rGu^T-;/CVYcJ7`Ynf\\lTQ?Mc'ZFh1rDP0K+1(lf;5ikef1?G3VHO#21@
%FCbt#dui3<,LrE715sT1lU89:fGi<sR&/H5![YIYP&r'*Jt:RQpqK#!Q">:c=@qMQc8C4:r\0n39qLJ at WI`OkRI<>Kkj5enQsfY=
%3'=NdKcj8 at P-ZihS;;L^Ic"ron"YKHo)eUk''[H*CEL'_:@4*khM&K6FUXeL6bsVLa<Tg*j7FVI5N,si]naWI at 9<=M&"KhgaOIj+
%KZ-^UOQlLT+aI8o36^X;8Leu<G at H&lS>hjR4:E_+a4lQ/o&OY,gl/E(6BAZcoW!]#WCE[f'jB#Jq<LPJ;D,\Z+8Y^h[RFgQKZ;;8
%P<4Te.TTSD at 2\+2&]XjDGb=8%DNMr<cIh/TU<Sq8h$&?6:8R,T/P:#W^Chff7qk5?h#n%_=$G+g!K(%09gBWSh\q+-E1$\0:3CtI
%Oh2fT%7*nL8T9U=Id4V'UuB0TK8D8DICHNee">G?,BHa)Yds1-%\c$k@*-g,d<X<@gZdOIrX^A$ZX?Bhmm/l087u@`3=,/@MeO1D
%<FDXiH5cJk4Y*E0?@#fDeFTP>GKOdZ;2l]`bqNFKI#,\]81/)aC-ShER\]S<]"Ier-9c.8d9(L'RNBsh[)tpn?.cF`;XsPSOm3Kq
%&kP<6gDD>Y2aI`agdq!*B"I,!^$1ZG*_<!B`7GG&#q1'.W"65&(,0/&'&9h`XoSiPH)uS.Cb0Lan72bL`%<nKap(BJg[$Y!qpl0i
%96OjWp*%OLL\gDc5$i3;_+]:!^7hgqEC"S1%ZhlU\$)BZB7gB`hA2Pc?fcM`BZZ[EF1?B>E<3E'e`l]tSpdBe*QrZ[.%&=,SGZUF
%I.8(,4lu$K\bI:>fPf&I*3NW\-lS7h\5YjR>]!89kHof)HCKg*H(/E*piNq>X_CbR at CCoV>8Y3qA@'YjS>0cElscS-":^fj3B'9U
%_ki&f>-L(mY,q`U`q:/7 at _Ya`RP!.SWBmlHVP[5P=:g?R9tA(2]+K+02dh=3WT$lBeJ]rnch7'!kjlGmej7?3_:1Wo$oFfEZ7i''
%6(6(_;cc"#E)MYiB>,&C6Ngod6\q(Z)TY\J(>`DeaF4^0=%PIpZaIDMlYGPs$9c!C^a,m at pN)aNA0)gG&P2Z6]PljQ1YE^+6ukE0
%):k?nV9_W3I;r'BRo8Vu.k:g.&3K1kI3<gFN:"\2"LsA%MB%/EB^t$8=YIu0c_A@%Gl at 3P.^RQV3o9Y&'UL=?SUY-n9>2)3;e2BV
%_7tK;[VjkTd3\:iKW(VHnguYhmNY]Vg7\p>IKFYc_"8SR1Z6Bk(N6I+5-.)D+pf&JlU4ZMLplN*_05:Ni#F3i6`N,b-Fu*WQ#&ds
%)E!7R>_[quNgC=0b9BXe*(GeKrHU/b\TasKku at 02&BMBrYFb8#L!7U!+kU_8keoQ0jS=`*%Wgm82jdk?mG2Z%RDU5_CcBaQTY]p3
%QgHbq9\ACCZ".I/A.[ZN%Pgn(Hg<6CkuAJ/c4GDqn+sUg4mJ>.D,Scj=^qdT`,4ou]8?U=mS!2A;r=V*?s?-\HW@/!_#hGE+tqWQ
%e28h2J&AFWDOAQ+peD65Gs')tbF,skSPkuJ&)CQ9oBg]H+f0+M;5\%9dBA>=GsZI"8MMo%\?8u;r*9]iVD.17&J0,jh7?8*&49^I
%GGC`;V<b((&4;B<o)u5q'>/I0n\LcUGbRB5&sn[sN%"ARfg[fa#^e53V_q(:2Fa=^e4h91Q0P0[ZV at piY"rT/9O`mH_?he(>YXQq
%hs786mki<"A:JW:"T_V'1I*>VQMWg8qeYT.7I0)m9As6LDo<sI*mh2 at 3a'eO*G)P<[mq^_)(mj1XW]I54n\&-\pBcqYK#]#(G)3W
%qG+Q*!u3d_=Lr,J/Xs)1("6TP)j`C&7.Ec,5!/Xaj'Sg;\e at 3>7u_pr]2,VAdn(p0&\.c'-GqjmBYCXjZPnPR)Is<jSsWG#pNneo
%nV>=[qtiZu\bhR2JUjU.);(i:1*#b!OpimmTrt*EiA.<kc"R8HSPpH\d%OuX82]kj(I>9qcN(6$GZR5SRA^<Z(R85R)t:mWn`X*p
%iRiA<]0)\$IRb2%Z/9-XKc]L_E at Q-(HS-+KYU=<Ep!142*FdF6_o`^=N,(91T4dE$o/;:j#.kM"nP9sDp,LoMU'?dQYk;3&e,/R2
%(d#5kVOOdg&o)7Ja4p(0G1ChCp"UodN'!Q!@'HpJgiFY44'GbK:Yp!l=apM4?4k.L*m@\?0HE+]>qV81(7AA`WRDZjp?rN=m1bn#
%4Hg%O,<FLibfP8o==R,ZLMNZYS$8-skSTPW0kMjWTO[69LEELpNOP-shY:q?n,[l[9/Wj2*D%#cEf*jT]J1/24UGI"YE&q?^5L:K
%O"-AAA_:W(KJL$U(fg^Ci5%9aO$=VIcFLfb$nEVa&msG2+Id2[,i7ZO,S\*+0A1#TE([9J'1$q0GX!06`aVLD%`]ut\&6Zb=fQh6
%Y9:eDRA.9:?7&eNH7`S!LhQW0(NR!"!&Abc*HQLEY'92LM@<"u:r<k(:dD^)>-2l0l8C=WU!DkLC3!'*=5IbtIrf]^,ZkT4Li$K`
%%>:9#`%oSgUHQSAL+;9,=UZ;:mjl4qAh-l)<4Ee$#BI`79:'M+ce?1^Ld!:`]U1`0jrdsF\,:Pc(tLZ1?".'2W4]<q=<=rVOMr'%
%6>D1Xp#)Q$7E0^=Ll"p[HGKAQIJ#5Y3m*AL;)Jsu0jf8rQg8qs8cLc at .Ra^8-GPY at ne=1t(/d!fSZ0(jfM$Pjjn&Um1DFSDb!gDg
%fK902AN"gs&7_hO#Sg at O%We.[$5p=NDPYgnCRRpZaQ88E3P1$%3d]2NaiOVibp?g^o7^i_#_DZ1a[MLaa:8(A?MIRdIhg;e6?b_u
%HGr_:f at p$rP2[$K`bBE<#+g8B&3!9+)<:8JOm1I5c#p"B/:q%L?=5RsgagJu5t45).4n^p at LlHL&ibfU(`@ODOIPaV^)RL]#%G<(
%&DDZ1oNAf`kD11Y%:,'`&D7),04ENUY3R.(3MNciooMO!Apcjg_b70O'[q-k*g(U:i?=?^@.Q)-BQf0+().Wpa>S>t\-d/qKPfcp
%MOZ;^D_k14+BBY0hp7>C#B;2bC*,?]bN[O;+t)ZXlnaZS&:[GYR7->o0;(NJE2-I:SsdC.-\c`M/!"/W(R/1o>HY$;M/^Z<DF9c"
%f&X/^0+bF*n8 at 0Wp9Ba"D/=UX<>)$QX$S#B:LVcg<b:</TpO_)El2j at d++l`J;i"$M/q][g>CQ^MS@$A*N[.(hos:g&;`sUac6V6
%nd5s2_0;XMV!lbW[Zu)eQhNB-U4Jm0D#Q9K=j>i4/2bpdn,W''jnU?;Wj\aurG[h2E9=1oBRtebAA+8\@V"@%!GVle&j_jq#_^<N
%'YF03cqJG!5o%jG(*=1\?dN0aS)=?W0kaZQa2DfPi\q<+m&QjX:i*'XGaCq"T]dA0e&ROn"2E>T'KA;X6!+lb!!Ei40\<g&YX:gc
%#VKb_>8$m+0H7qd='hBY8Df4]*'Z@!%Y5Y6M<KAX-o-uXqUEW2(\'4'1$[Rf'aBROkj>q!0Koh1qI;5#I3m at LkN_D/[M.!pX*dip
%=7c\(fCZ.t+P-oiOhj$X7ekuZ-an;%5TPmkl'E&3oFMj^-F\)Tq$d;I'Q!=WW=T/=.`BEd.,WW^&a<!XW?9BqXOu!aY?B_k#e?cn
%;hE6*&3H"9I1W_a4*`7^BI(Vk&- at .NoI?8TjRZ#<9/WD\a1C?\;87&7h]\eEhk-[81FLgW5e>Rh&Mj&\O2@$..\g*U&qfYifI.N@
%^SLPeh9rNi`c?%\JoL)k`81Y!UI$7Kb4*]d5R6pO9C0$)7SYd%3>r+gg'bd1ChYWFr(u=+Q]lKjn1dHY];cDdg4.tI`@$4h`Gdqa
%bm4+VcEORm;"W(T_1"1D`YJXZ';?7`'hS;#1/qoE$R'lU-pn_ZhJ;'u-tFu]XOLD^-K'HoE'^t'Tn3bn`qG"',FbsWJ4rSdcsj4p
%00!3$Yo)i]$htbnq\DQ'p$`r!/,j_Y"o4shD(Gn'p4DAih9'2'gC"Iu^$p^+g>F<BNJEU,&W_ujS&L<B>>ArNK]m%ZiolN(G-:r:
%l,VRRqULEcGgXE2U5u]Z at 9]N#g/)Vd]Ym*:Y5@[OKB^cHJidum=]R^GB&Gm[_W_NWGbst7L/";Ko;(&T3)A7j;]P`c=Wg&d/L&H/
%FK0_q'^U6bA?@Cn"d)[I0j!bGWj*/"52mL56S6e1M<L(Bet5P\nOXWEZQA])QPC&BF&h6"jAX)C&<bhLYGJ`$%0tnFB#rp<,fe:s
%DFc..?k;.3r;eb-$9@&)MgIt]Pc8hLr,l!UJucjUC67V"`:*Og,)=+5;LqQ7Sqai(]GTA?ArYo[_4imdo$^E07i5/Rl8OG*KVYns
%?;?77Q5Fk]n%,mOR8+PRf>4O.doa(1Rferl;=YK,C4_3OT<N(9E:H4GLPg/"e-(F,W>f]UiPbN=m:ZE3R_"[!.Z55p2k]b\lKK(;
%3\3fP5<"Ei7i%_m'n0Wp!akkB$>:m@^N&CtZLM(phj:KelD/fW(<W-^Y79"qLL'Sb[ZUEg;8*Vaq[N4&UO7]RXAH[(++Cj1U:1 at o
%@MO's$R3qeeNK%/_iU$96Y[-""M7/jk0<(5?8u?6op!?Ub+XbQG_N6<Hn%Zu)EuP".*n_ACLgMdA)2/S>H=XeJ^FXJ&M,N"5,;&"
%+3;hgXS^ue$Z2^V)&WfCVSYJ/>Os at +:Cjh0_T!F.o%q0\HBj3(,/U#Zd'fpZ$unlT/*k0<NSK1p)a?Ze;fc[q[U(Ykaiei-G#@2(
%I)LGKaJT>&D_SZ95,Im%BOQrq at Hi-$&#f<'JL$::NiaQVAp<I)"4t!pcrbIq!TKiPPM?h0bfoNSH2E4"Sm!:kG=B-86^i;2HC$m2
%B&_4j.Eah4OS0TrEE_80V956,GbL?`]U,uQ#,ra`\olag7j#4L80tJ#WFE6)%/0-S09B%Y8[;=3B?sD.mpOql5gUdp`Z-V`<%(XM
%QPX at PhJ=o#3af-&&l(*YPE5D at 1'-rVr.s7D^ZL9Sq#Le&fAY#kIeb3%Ep*&'!&[$j6WSRk)8Y"6=_&Q.08egY:jQB7AE)F3:TT)O
%mOQ&VNDFS117a-a>Zo!Uj_ts%=A9,S<X0Wt0k!d9W<+RTJj8\!H%s?=b/iicbXRXBI:cu@`C!U8A0GAoWL27<doZ__Q_C[7+KG]c
%:lI.S8dsmE6CfS7kKSJa7(Tu"UJ^F-4J,A&Y4+#A6Y^?Ofe;$WMqp<nF>Wtf>`i!tFk?*P&T+C[eK[UqK`2Fn]!)U:#!N/\8G84,
%p'EN"*;:^q8tOud_1WKVP_\t+-*B;9YAk9!N#qHKW2%UINpt.u)b(ib*cm#,jGfpp2NKj"I;C9D>+*AM5t(J at k?$>r3J'5e9r!_,
%O#b&p6Q8K8D'!cZE1'-8FXqc88"7O=$)c*d'Qpd.bRrK:5D^5]kEQk/marrQ8<,]^N0tX6R%m`Q4c<);2p at oME[t\Ffe$fTs&@nT
%2-XmLQm:TjfIZ<$F4tSLZ"LCgb`Un\efrWnhkb%joC6's+s\O,l0K.h$S)"DRiLC(L6/IJ.+6>8QrHKhI=<:EX8<7Mnb'-pl'=pl
%,3++d$<:lXOF&gqhgF<Pc``@@?gt/;O#D$YDe(00%e$9<_WFmNF=3EgN>0$b!YHj&NV678m[KX66uTh'g7J`<F":a+0p[6%S*A at F
%YoHV?2gnhokb,(5(>qSiYO>r.^QJ\_PXgF6IqQm&"+h%aQpE!]aMATE?ams at 6lN*IZ%>U"brA!>Qt/P,d%`qB=.LZL_]&TsB]req
%kLRFO2eX5-O\1)E:rQP26E[j/dG-2Jna<A*pEqdF*dE<O3/+1;+[ZQF8hbIG)DOE`!ruI>L`N.NNa]En^$*Re;,9!\fIaq_h?%pq
%aA(R4[D3[5$c">G/;E5TTuCEk?4_"rgsTZ9CG3K'grNqakN]@l at +S]rp0Y88)!oraMHK0r/;?$/!M>N#faC[l.JCY)Nm[\DS\`,f
%7r#r7N(ecD$,e)h<Im_t:F@[5*:Q3Q\,jm.r9Uo`?*EkFVfSN6k%rf">R^;iHt'iPf$tFr\!Ji/N6gqI0M;.3Y56QDh at 4+h2fL7:
%_?(=0KmLL"X00*GRjS_<HqU@!i$X5?`Mt>U)of%'\X[3KZu?Ur!C$nlUom/h7iL at H4N3*^d/Sq;+b^eBb<k)1&0dEHoqIX@'[0L&
%rZE4S;Fctq4aBBBK9gI),sd%N#\$t`g%"<t%jEtrW\Zo!4Q6TQ$`<E95F8A(iA.frNSXT6ir^(Ci4bTum_`Ilg"`PL&QIRoVD4"B
%i0.lZT3Dp"UGu%J<9Gtd7lh&jk2G628Mg[RKDVmLQHMIU(d3e297(@AouX(hMLb3T7=p9#%)4$VB"t6'H=7KKL>85k<Gu]"jXW7%
%o('>dP#dAJLrtge!#/2"$t[)s4O%.,n]@!V^i5URK`1;8SpKC8D<^KF.-)K$b:fgO)W_oHD"HlXN<?&dM<NfD`s-_D%B+n!!A>Tu
%5,Lk5/k8$Zfq4otg at H5reO1M,bq&7*.%:4o7?EC6AkDF-`E+u`'p*^7hCiPu.0uhMak[ug2\el>qK6r$1%<%7>B9MNY-O#^fJ]En
%)[.9+m:*]SUQ*8%@sNOt,)a8RYq^>^/4ITOpee]c^7;K\CspHpYi#Anc!C-KinC\fK"M2AfROB%#_;s_#r at 0hU7e/7,:]>pGG"KQ
%H1kIM1(o<G`,kCV^YR]s_Fgr0<rHe*$g9O?<@`DF5"Dp&T7Jd=U(,bKi1ZA!k/3rB(LL at rN>MVhi\kPFg_nTj.HKSnVu8G<?SS>*
%Wn'?F?ntD.i]k&(7_-/?,5L:dA=\WrS(qgo(GkRu(sXm(`N6C=p'K=7)-m<@"6^c;&&rcH.;U at A?KFdWG%(PY-1Aqb#<QCY]tc.P
%QKD(]%.;Kb\sAZ;<=lJh-18Ve?BdIUNj2<Z/%*XB9?ENci,+2&8'Q7W/n\COjW?AGekXd!FW%AsfdWefr%+gmmo3Sq*`fs<N-V!;
%@EbTnjP>6dpBkDrj"(ZGADShqRBg`:A-SQ:$tOg9d8`C-q]&K,rOn6bpGnu7qg0 at NmrJVZCi?MPrI']^GK6:]8,N0';>.,$mTQfh
%rI']:$$JP:U]#V$1nWVV?:PTkf?sR]7rlS=rOe0apGkQNZ*2d,&#*k6n2abC3Pq/UXZf7>I<4]Ms,$rkdHbIqT-NX!!?jQ#*!(gT
%Z5$p+hOol6_m]=[.9U;+Y9UX)'J>bJ:r('AeMR<#Otd;=6O>JZ!Rg2=H++)+%/$QMKP*Y/o>QKdp;[M=5CnENao1$e&reMh^)srK
%kF,ch86jKa.I49^9B/[Eh'ZVIg.d4QPrl0QBN'h*OANofMlK5RFR`Jhh'Du2GOaFdUt;<WP*19H^%/'Ec%e[q/]C]M4`%DC]j[a@
%gLE)?OI*[OYdA04IL!MnerB-R(lW]JM&VVjlV,k[gaX%(M#:'3gZ`bnac!m,4.!rr/'f.H_c$#clPsN\Pl,/m='V$ilQRlI1'g^U
%*[=Zj./OduY_B`?$r1- at 1q-*4$=9Cl4!KFVFbjI-]Kk/"Jf&[M$^CTD`,Mt_iZgi,LEhOZnUfGhHU#HQ.pg"2h1m50?1 at u-rs</e
%'e`rGcf'[g=1j%qgkR,/?1A!aZ,70kY'<7XEcrj?fG-&9p7EI^^Z1$PVH#Sq1$jc6E*WrD%(kL&l56,VJ&MeMbk\;qiGZSK*j-G4
%gf)+>"gc;UiA.E+Z<-HL?GO2\LEhOZnUbS^qSaRcZ66_Bq%1KK.pbKZpKM</`sXtRg@$)ZYRrOMGd2l5_le7CVga'+iIq at X;[eIj
%=1gfOItAM\h;'iA3>=47MAItuc/FIe)d^Uq)>@Mcq+l^T%t/fU,DHQS3b`QRYqYBFL%U8<bRZN([rHNB-tB)#!M^>s^R2SFfOh.2
%m2Omr;X3s2iWVIH_C*-t04a5ips!s<2pC(?d:aJR=8>d:5<R+sciT_!IY:S>Y/3Z@?m:W:09[2Ang"2Mn+8)TLKYP_[>:N/&AtYq
%61q]L$o.++(W]]8`8Cllq1DYG)t<u at rs</e'edXRi"&6b]Aa"(`JtS_]H&Y5%\dIO2/gMC`'=&'ER!8._V.[R#K/K<`s]\HNtU'W
%*A:7_j2<fn`s]m<BDWeUEA%]PNfni,f=W+W.%+:g*7qi/-DZY9f5/G70h68aP=aHZa#3n!%blFJ##`G,#]\,Dn\T`9fL%5!s6nu!
%p9677=dome%(kL&\K9Y%LgaAtT\/uL6k$]e"k6ctNYlrY$cnN]L50uh$S&;AEmiGZB5Pf$JbZSTKEN86n3Xg#$<htbC^OB+ at aG1u
%FCYkc\3b1"Ki'hb&V:d'Sht%<mCG(=_A;hT=t'0#QO1c`p+VAmLa2c$"2gXQ%pDddnAc#[hNC8!B49(=h9s<9"kB&\j=k4Fd"6(.
%3-psu.;/`XjY)9IRt at 1#hZ&9`B2anuDR2<;R'S6_=n[D2HC2#fU]G#Lh["9]74.==P,!alRt at 0lSUC&`B2amJ3L+oXo<`P.0P==G
%oD5Pp57V`m#reYdddb5F9gR&AbHj^+o>[m)VD)X]O>D4;r^*!Y8baW8RZB+NrufVHnBq[D7r]<b$$/!.3Q(.^7[UM2EWKt-r^*!Y
%.EHd;CONQDB2anu&t<k,0PAl&<]sEC*9M(So8;r.fO<&PFG"ThigZ<F_Qq;[BlZk6o97FB?q)E#:"V$FP*Q\o\O*dQK8Aq3:QtDc
%CX&<DHX[ZGO:u>4bVTMMF"*;7dRN6uAtiDUln#[l3CE.K[[Ufu3TBl,2g;'W`W`FDE\r!9NQ).o;EL=/dRN8KU?u+PNoYEHO(2FV
%X`(sQLJ9][TJV*SGGL5<"d5eXpdnCYE]I_2Q)(B+ir\m88Q/@'"l]u6r1p;=irWD0IN`F*8X+s.q&;n(9u[?OF&q7JN!kL0`e@][
%ps4p-HMkr`PG\=EJj%o!JC6m]B)]98WBW3l:qr2NeRVq[Dq)+<I+Y-a`=^H+A_)8,MK(r>a[^;?g1X_VO7&dR,AfhN,i?SGglXK5
%(F].mh2sT6(GHftdG0jB)Ac5FGVjW?j&T\p%UT3%HrA]7^@:]HA(`F]dSGf0A<6[H-dpAd7Bn,V`IZ#4oH5pO6qYjT`uojGirW8+
%$\h56<d;eCr.stpQ""dlp=Q]0n!P?XiR5)eYB1PW-f;kmD.(@'T;K=8;>03PG$/K',4a=\<q1i[Oj).O/f=`4a_`6j$^?=I%8tM-
%5g]'NX^DA_I*EplR'#NaOB(O5`ntO:R@<,tVXT\n7'AOu97";L'+mf1Ou;bN,dR*^o<N328pFn9r[$BPKrJDuP2K_PW7$d-d`5L(
%Y0)5>7F898jGd!49Yt>*]VCF40E;.8kLkYJ<rUdP9-;9WQIXcXJYCrLMdqjR)!-+plG2"Th\CRuNJT@=[dY$lo>/DpA4Td*]d0[Y
%Q#o4qd]]!H/(oET#.8kGp61d6'-8K`Dn:'@ReaUD9XQ6NO*L7Q.DdboJl;3\itqeNX`7er^C\b9'FUTh6Ld-$m<ArtR]!aUbE9^H
%`_Ku6dH[Hcd73-?4?"8=7.9R+?L-cZ>o\K#r(d):]MHWbJ?`dg)D8J at 0sX4V.pX`UjTtBjX5!/70a_G5XK\5"De%PCnL*_f1q`,N
%T"XCLc'+2*+]N4Y!2&^jDKKlM at sJ2HqCF04E/UCK6"8iKdT9Sn4Oc"k)YbG_d*?/l9OgDd64MR*rILlpCCfFsVr=YFKWq[%&#+L=
%?E?95h!sX5j&F,6Vo`3?ksYIeojUpf^2ZE/Di@#-nL136W^a'o?/WoKI4d%ASjVboH%T%];(F#W5'*#i0Q0C*`)m0aeX]T#19$6u
%CeS+P?jN?"eFjUD!feQ.Xk%^3:6C8fGUbrA6bdSbgeG<8mKKBX&#.JB(H6*Z]0:&"gX0='fq8*d[N!F"Ppj<iGtk$KLdsUX$<"F[
%:ZHYUX':,?c5`S?KPu+_%cO6b=!*R]d:?HSqJ,,bbWPfc]/)bsnBGK.*bgG+LsIBXOUX\^d@^,!*4K-HKcd$>d%=HZOE-jR%$G=O
%5HhZR.V2i[lGtst-XU4teCBio3\sp!E.>X=N5]Cg#F'pYpmWfHeT`$#=5i0;^ksnP;gr`PWfpp0At->(ON(e:jk><U9nSSbMmH2/
%9;Y?S7^J_a+])*lPtWhW\N5_R4m#BpeUd(`p)BT[[h[,0PLafSrMDo4W"[[*jAgoNWLS9OmdM"0`H-O"=Mdd>kU7O\T-lUtKj^]t
%InL-QOhs:S/K7Dk-_m,T,i>PtJBOH$m-TM)ZFEm%-Ura0k4YOWHE>p6;,Xc'[\tD0,:QZXX;[6#B4d6c&)n&o#`rV.V"U;Ba[eY^
%X,&'1('@m3oW.n&Y_^2^&X@,Ub.e[G<^?1fAKZi/P?O\'o=%Arf4p/Q/'#2lo8.niIM6k&;K^LV*D**HT4'e.\I0q>dYm<dg3O.:
%r$l/O)O2oW=9-$rC4!QUOIZV7jm;"J3"$$+?Q\el?JmFMr$?-iq0Enp9Ae#)FQPP-8+Z<</j'8fIR:,3Q^Ifn9/n/&eTn[QXXDe[
%QNrsq0,,a8U:2,pA?Bb31#<\d1$^*QX7J4d5Ned>;$SHQ\s`HjGCM<4!Q;3#pF;FDgu3==4==U7HKn*[q6,h;\M[CePe%4$Eu4k:
%'$4+8;RAZ!an*LM!XH3k9ssBE[V6--4=0$MkEf!._!037.+F<+\2+rOINjfpl$geNdMfn)<gfeUHLirc3pPJ[dD5Vjg$uBuNS6c[
%>ZN1k>tp<8QN1`PRtUIT_l^dXH>=98dSOa:dGqD-W*Rse.N+]SFL?BsOZlR\C#Ll(BaB++f`<cp`3WX1HkD<<q:EjgokT at Dou\_-
%V=-4e`@g.gY^=,tAFF;7*^OV^UY1;:4,YLjEb0[:igi.p:(2oC3Ouj=Y?b9;3;_#J"Y<HRK_tkrik&KDp84\NE%i89gf/stM)g=$
%+*T*sBs1V&rG/!pF;CY.G]!glI,\EUQO<hDm7b)SGT?O at k;5ADekVB0q+b9o^I^'gh&Rfi$er_!*/&,!'!?9rH/_=i8p(:@6h$3U
%8h1C]lNT0,2j`DHR*Ck43k]nYV(7nmP12$H-0)^RGFkg,`I'FacK<'^?*g:#0G/H!WYAGjJq#.Z%mho&UAO7;+28G#Q_A6&l:k'G
%3/h142P0-n;u3b^^(;qY7\;/q*kcSEY227>\$jm>U5_nq,o6Cl5+Abrbf'6Cgc'F'cNUK=P>Z3T:1bm1^TUn#=h]00/d*e9C#S]m
%Rs<65ZBsIHUV[59!V'^u2/K$4S)\$_?&riEA4+$/IgOlna9MIeDdaS*fq>bK\$1k+VNh&RY`4ZZi(!Z&Cni3o&l\QufLA at hZ;pK]
%CkE#n&oYhUGM81[h.hjH<*TDdENH`G at l=%#g>5_i6)C\XLI[%9elUZ:$6`>^l&1J$//r?N,LTrSi.8P`X2(Oi-)Ybeql!$Vkt*LI
%D0Vj+oTOq!X4A1S'hrg'T5?9.GKiMgAXCP8?UOEBO4ml)0.AP>&#!XchoQc/)UB4Zlbl4qljPpQ\Ql_sMl8*hG4n3r7ko&6ZC at M[
%7.F`VOG/*pnstIdG=/f01>0h5n)KP_ at _O+Q)m_Dk[(OhbGMj*P3rOYnX6.H&>?#k:;;1eCe-R_?p/al*TS7R>Mt0[db3mdXP]iU_
%Z3gt<r at 0NkC,aJ]TD2DqPo,-dV49HT(m"6jRQ/U(^@A3B/q9#8b_?dR;HkB-N%<e1D*;WVh^<_rBsfEAo&l6!2"SRWbJSJAiACce
%d<AYghu<m^e<`mQ#o5a0,BEmQ%K;MJkM58`bg+P9cKI,up%\MKJ?8O.[%8U3;>aK:s+oVMH)pi>X+Xiq8($5%\r3tteb*dKl4mAT
%QbYm0CbH'K3h_0kfNo*tcHBW=CbH'K*9J at T[MK'F.n/e6_Y/Rh=H2Aa&@NAX_cd'GJZug1)!nNF5hKBS9[TOdJM>o;iLZm:O&H:t
%H(9nl]?EmYFuA,CF-t6"He'i/StSpWTos1'-T>3"Ph*Pei0o!YI]s":8<4=/T,-nX-[3)A>uL2r2VQg#[6'V;4CW#$IS$*F]f`9s
%?%!W:U^)*3T,8qQ\j5lJCM!Jrk at dn!fV<PP]KLhNggF`=c_]dY+JPo3*:"0_\jG!3/)BI;e*0<ab_X4j*1r?:0ZAT#r[lj`Raj2^
%b#so^%O9d[msBTZoqSNekj9(5Hd0OIf,oU9=rtrsWKgk^4(_-Bq$1K[qrh;&m=gt#("^]e at 2Oprc*qD_(l;fFlboW\Fo+^*:+g%E
%XWtM,,?6OGDAk#C. at l?^;L]Qumj-iG3)Xnlj^C]oi\F9MS).d at bFW:)DDJK@\Sa3%6X3I>XF*kk[iNR8U>C+bpS/B%-cpQ at BtOd&
%0eJ_ at QiAU7B-IGYrB8\VCpMK%hY1p'<V_/(Jq^iEl'HkAr*-62M8'8Rp)WX#pae"_7l0CNr5XH4cjlA2Vr>pHRA-(890)H^1Kh'g
%nae[+a9t.=;;#9eabg,7!Olc3L$P<gdpelQ_YkXk?uF]FX\ZL4h7ZU at O&qT>Ls;5$ag at Fg6eoF0PCCT[SO_@!):6^S"=3qH%>aa1
%,'9o)Q1=dHH,1-^7QAWV7PaGtb^_&[^\?aDls.>"j9Hfign'<\UUpQ^EOUehP]K#,cA%IWkMd8?P-[5Z$/A'Ngi"BOl!)0>.nM!u
%>plXt]oa^(/b,Zs,gB*4"58i)U@^,fV-b,SO:!&bA#qpdJ%bu7n5nQub5jiohZVjCn@$g(Xn/!2r2RL3FNZkM]_!\"UICVW_aX<7
%Mhbr:$.CrWjAP0mP6sRFCDRj1etQ#2pd,=mJD;cJYJ)j_k- at LZ'D:,u?sc6geCjV7_j!5!Lb#+h2>sr:9,egNqX\n-9!=^`E`\FU
%L7,HuMAE*!P:DWs\T(NnUQL[4&r\+m&,)eaddplA511kp'r(7cC[Lh!9+mG\XWpE_^%(6b:]9Z47,^h$H!3khkPb'sOq^XX$;ocO
%q;utVRj>@UmQoA!'9RR-ChH8mci+8=3fkAMcMhm+LY]^ZmumitM$L=rH7 at u?QX?d586)<?/qh[cX+.94OKirkI-JEqS\i(TDLLPF
%=,X0Z\sGJ3Vmd+\oujL/A)3G,Yo^Q?Jbd[kYf$G"_mf1"Brf#+VJ=HN at PalclrY(Hns8R_q2c*A<6lMpD45\6]!6)>Fq^Kc[^OX7
%B>WDqg<R]UiR[Al9Uu7J2g5(#hpcNC-Sl,mH..?C_/YHE`:LBc>g6arD7c*Z)m\Mm2;O,qnPU=9^gf_QbN<[S^GH[Zd(OiOhE>$)
%'&+tOPIjuf7O)6$_:Wt!D>T&)IaLJ!q5d)6/,k]I$e8NpWWXP:!MB(XPJ-51XnuX:>F29-ipSeq;[0`YeVU<84#,5Ec!_$CRq>uC
%G%jp%%]'iuU:"NSl*sTGmP8FL6D)d&eCL0_T$ZZ.5rW+nKc\1S`*6&c%1H(4ko%^QOJ7cG\9 at VjI=Vs<'p!_K$lLLC"?=\2Vl6P8
%C2K`E1L at R9Jj#sM-Ro&kG,[$ane*lGY:l;ZRN*dpk1J#?Ain7pkCY.cl,Qa_^sBc%DIBk]DBQnj:k!cAeq.)#X)&>rD=d&k(lSh,
%bguC8M*4A.D6=g>&oX at HQY7<0PpT<>L`\>UQaCOB;$UbQ5;Uqi#41B*PeA/gX4iS(%h,aj at e=6lTD8/lihPTsI8+j#+#0P:a`etg
%\tF*H>W!#^RY@)#A)_$7n.5 at DhYQ;jC/a+,Ku"E$A7)?kL`$N-dUN;F&R7e0Ms^0^m[&=iMUlGPS,fr'RpeQ`:RR&jFL9JiT+S.D
%/4mN+a-dR$D85`hKIYEGU3fjlY`("XckX`WhO)FF-X=Kq\QE<'G:K9b.\l,5f2mDlCA75[X""mN`sf(FLM@]@A.(Q&Phs=#(BZ]o
%cF.=:M5O^,ViPL-q`MWZXXOVJ2k+S$b0^?r/)tR8&_)Fl1XRjGCXiXMqFI.fTB=(K%HA^-7.K(nX at qmoqTb)j]KF7>QfkE6%n!_X
%.t2%#Le%q,OhB2CVIQsVc*AQ4<`-U&S/)R2(Ud80U#G-?lAQN4A6hO^6,T=0QYX[!YIo7AY at S?G>Ae=8,ZNT"c&Km\To3R at f8?0a
%;.\L?@fF%dAlZ*L,buCXV24l4?@1b"b&o[DD9lXU37#(biKU+#UR=/DmQq\4`9NlYC3*;Hc.+fhD`'/4G4]7iioI6&dRrc'?Zb2k
%8t9(FS]I!ubW^EmVjYqF1 at KT>P6`o8a+s+B>cmBD@$LD`n]56?0P+2iIC\%!oTB(CAr(AjUG3b6+jc=L_Hl\Fe#H`ignJ-=)(pg1
%<&5RaP.AlWKDm,[7s&hrn]q)QWl<]TA7aN;,?IQ%FmT:*8qs_l.i05]H[*<@7JNuTjnjc[2eST6`2fal-Pto92`%D!H?H*oM7gSX
%'E_WaT]cR%%3)QcaAl]rVGX5>Y!:BhDYCl(TEuFNLJo+^T0:>f?,aN3E+]g':nTA/o[M3H[Zp2&T/rU at c4Y%)^K[Ke(I>@;.(`qP
%R=C?,T2#_oA:ah-$cS-REH=d30Li+]A]gcN-(IZoH'SL!4LO2Bq,i)`[2Q[jY($*7W0osbZF*+!j&S at R#WXN-eaqbb(3ln/b]E:`
%,6=Z2NsO_uJmPpf*7o.B)q:(b<:(2iJmT>07d4MniWnCbng4gLi\O"DG^;,<4)]j^]V)=8qN'!hnUdFn)5J;OcqC[r>dVm*DZ=_p
%%U-Xq[$/2tI$>,JY@;a<4:1`RU7(X+Ai7)H.LYnWg+??'B1'YEq+oS6G$Km8#iUYr;a0-4;EH5KQ6aph<jcI;g[WF'Lh)8i/*j5S
%5ic.5=<.!k\s*/!;A%PN3JMfRNOqYe1<OKiQFl"$JU)ohJQJg0(lf!+J+ofSA!-ediBR5r-s.<EA75Q at p^k6l6CW"WB.](k;A`@+
%=._IC-\n8gE&)<*s(r'P;ls03cQt/OMu;ol4<(ObJ/\8!SqaG=keQm!'Y[JP7>1\Vs%qSeXh5Q9rYn&^i?.O8oT+^4'J8ujg=!qf
%D^g'C7/8hQ#pOlrf`:r.-@^N.mgIVa<Md^^X+t,s//M\F*gZO)=XJs>%Id[^^^5<k6#Z at 9N&MR^L7h9<mCG3nDrl2R(@Z(,4Mt!'
%G[?]p at 2Q)4BDd^b823E]9 at J:06 at 3E2is11C(-`K%dO][k*NVbo at Q8:VL<g9UiFbLd;U5]s(4a at 9"E+it`+S1$+Q)Z2q/%OeoUP4g
%#Y`,8-�!=nGmU;W\nsL08,?N0i_d="G0[$FE##*O76VAc7'QDe"'?MM7tlTU-%,N8DDSn/9Miktl[F*V,BNWu^a*%.CZ=Dc7T9
%'Z7eX#k/>3.>3b$H7.EZrC(Ib7ZGuU7e,cR&o5KjT_^`&-7r#ZZ@:FlJ.8KA'aP!]]oD.D.9JPTNtqjfDo".2=@&N0[1/]?n7f9T
%R"tb1([Z'SK03;,58_b96MLiS)l458Zi2/V8Y\c at 7&,!L>_t=J/Pn6jQ[n0>M at g[YNMJ>'J=#5g/(fP!3%#]S#sg3HVj.Pq?B3)%
%TK+YYKS"s1W%A>.Wp3R8 at 2o)h$O>G?6FahRpi3>>]dt3oD3!9,nc\.cq@%%Sq at on,Cn6/>8nLSob;V2`EA.QF5,bY,j2]%h(`#q`
%0s%&!VCe4idE3 at O-,=Yb:TR7<G1q2W/$KFpTIiRl>7KWC>)]hfD&Oj<7r)gk,;-/V"8nAABHCj&NPWb#Kc%\9f.\N<^hHJ6\GunN
%>0#t,5[oi8 at 3CNd.rYMRZ?-kZK4C$h$8Mu<XSM8[[N1G/lK4?,!CM50!:huW%g8Sf`Hd59o/n[eHIq+jCtuhZ"YUsn"_D']%Lb?I
%+6&RU"+)T#rbu`'`fUH`ZT7';!cB"I#?VAWi8+`nr]2r_<%Q;3\V,<oARKG\+cc0uh=>Z<ZjB&)rW0\;Gnpl%?FpWi-qhJ1rEP.@
%_o&0:Q3j`)O>@5\1sL&oQlpK@*Y/TC.CLo=c]Tma<abHAn7 at +n:PHH#/f=-i598ek7gO*n?bT/1!LXX^"5_NN[);/58FLX##7iD8
%:>j60fKdMr=WLjYc'WMIPnUh%.^6.#!lH-F!?),^W`E1j?3Ll_KE+[c at 3`SJ3*m^Y3TS-s?oT4i"M#hMlTcR`GYN]EZ9>;nfDps_
%b]AN:T[-G"i(-X0f^V4j!9+T25?PFgb+nCTK<pkf$h.An7Vr0 at Puk"&T[mM\-.OoEFXu;GNH=Q/S#j0[p,K6+_Ar3hj/-<P\qF?'
%$G\.,=UYLFfjq(!<=iEeeu-ZT?u\.X[Ak3*JhfM\hmC at Xd3BJs!\u\0e/J"#j)4<mn<pc\mcK_t^X^XB8scJl?2/a'%Kl#X4KpL,
%Ljf)[fGAnQ^6g/=7K9bKI>_q#0.(ZSpDQD0'kEuC!4R!:iFtPHc3E5HN^oK at p_h?8e#]/F`lSJ-dmV3rVfs5KYW=<p at u!iYk_N.Y
%r+fXC8Oh6\YmL-sGQ;^?Zj+4dZo.aaN'3Q9rhjCCNQ76.CYnr?D_-NTD[*oK/@2h-5M-$%;'-%M?:n/r$gs.C-i~>
%AI9_PrivateDataEnd
\ No newline at end of file
diff --git a/doc/tutorial/images/sphere.pdf b/doc/tutorial/images/sphere.pdf
deleted file mode 100755
index ee88c7d..0000000
Binary files a/doc/tutorial/images/sphere.pdf and /dev/null differ
diff --git a/doc/tutorial/images/temperaturemap_filled.pdf b/doc/tutorial/images/temperaturemap_filled.pdf
deleted file mode 100644
index ed2a859..0000000
Binary files a/doc/tutorial/images/temperaturemap_filled.pdf and /dev/null differ
diff --git a/doc/tutorial/images/temperaturemap_gaps.pdf b/doc/tutorial/images/temperaturemap_gaps.pdf
deleted file mode 100644
index 97ed010..0000000
Binary files a/doc/tutorial/images/temperaturemap_gaps.pdf and /dev/null differ
diff --git a/doc/tutorial/images/window_fct1.eps b/doc/tutorial/images/window_fct1.eps
deleted file mode 100755
index bdcf9f6..0000000
--- a/doc/tutorial/images/window_fct1.eps
+++ /dev/null
@@ -1,501 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: window_fct1.eps
-%%CreationDate: 07/29/2004 11:42:09
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 40 199 558 583
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 40 199 558 583
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 273 341 6214 4613 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 562 4894 mt
-(-0.5) s
-3577 4615 mt 3577 4561 L
-3577 389 mt 3577 442 L
-3504 4894 mt
-(0) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6072 4894 mt
-(0.5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 952 4615 L
-6255 4615 mt 6201 4615 L
- 273 4713 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 4550 mt
-(-20) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 3542 mt 952 3542 L
-6255 3542 mt 6201 3542 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 3640 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 3477 mt
-(-15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 2469 mt 952 2469 L
-6255 2469 mt 6201 2469 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 2567 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 2404 mt
-(-10) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 1397 mt 952 1397 L
-6255 1397 mt 6201 1397 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 1495 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 1332 mt
-(-5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 389 5357 4227 MR c np
-24 w
-1 3 6 15 5 16 6 15 5 16 5 15 6 16 5 15
-5 16 6 15 5 15 5 16 6 15 5 15 5 15 6 15
-5 16 6 15 5 15 5 15 6 15 5 15 5 15 6 15
-5 14 5 15 6 15 5 15 5 15 6 14 5 15 6 15
-5 14 5 15 6 14 5 15 5 15 6 14 5 14 5 15
-6 14 5 15 5 14 6 14 5 14 6 15 5 14 5 14
-6 14 5 14 5 14 6 14 5 14 5 14 6 14 5 14
-5 14 6 14 5 14 6 13 5 14 5 14 6 14 5 13
-5 14 6 14 5 13 5 14 6 13 5 14 5 13 6 13
-5 14 5 13 6 13 5 14 6 13 5 13 5 13 6 14
-5 13 5 13 6 13 5 13 5 13 6 13 5 13 5 13
-6 13 5 12 6 13 5 13 5 13 6 13 5 12 5 13
-6 13 5 12 5 13 5730 2984 100 MP stroke
-6 12 5 13 5 12 6 13 5 12 6 12 5 13 5 12
-6 12 5 13 5 12 6 12 5 12 5 12 6 12 5 13
-5 12 6 12 5 12 6 11 5 12 5 12 6 12 5 12
-5 12 6 11 5 12 5 12 6 12 5 11 5 12 6 11
-5 12 5 11 6 12 5 11 6 12 5 11 5 11 6 12
-5 11 5 11 6 12 5 11 5 11 6 11 5 11 5 11
-6 11 5 11 6 11 5 11 5 11 6 11 5 11 5 11
-6 10 5 11 5 11 6 11 5 10 5 11 6 10 5 11
-6 11 5 10 5 11 6 10 5 10 5 11 6 10 5 10
-5 11 6 10 5 10 5 10 6 11 5 10 6 10 5 10
-5 10 6 10 5 10 5 10 6 10 5 10 5 9 6 10
-5 10 5 10 6 10 5 9 5 10 6 10 5 9 6 10
-5 9 5 10 6 9 5199 1895 100 MP stroke
-5 10 5 9 6 9 5 10 5 9 6 9 5 10 5 9
-6 9 5 9 6 9 5 10 5 9 6 9 5 9 5 9
-6 9 5 8 5 9 6 9 5 9 5 9 6 9 5 8
-6 9 5 9 5 8 6 9 5 8 5 9 6 8 5 9
-5 8 6 9 5 8 5 9 6 8 5 8 6 8 5 9
-5 8 6 8 5 8 5 8 6 8 5 8 5 8 6 8
-5 8 5 8 6 8 5 8 5 8 6 8 5 7 6 8
-5 8 5 7 6 8 5 8 5 7 6 8 5 7 5 8
-6 7 5 8 5 7 6 7 5 8 6 7 5 7 5 7
-6 8 5 7 5 7 6 7 5 7 5 7 6 7 5 7
-5 7 6 7 5 7 6 7 5 7 5 6 6 7 5 7
-5 7 6 6 5 7 5 6 6 7 5 7 5 6 6 7
-5 6 6 6 5 7 4669 1111 100 MP stroke
-5 6 6 6 5 7 5 6 6 6 5 6 5 7 6 6
-5 6 5 6 6 6 5 6 6 6 5 6 5 6 6 6
-5 6 5 5 6 6 5 6 5 6 6 5 5 6 5 6
-6 5 5 6 5 5 6 6 5 5 6 6 5 5 5 6
-6 5 5 5 5 6 6 5 5 5 5 5 6 5 5 6
-5 5 6 5 5 5 6 5 5 5 5 5 6 5 5 5
-5 4 6 5 5 5 5 5 6 4 5 5 5 5 6 4
-5 5 6 5 5 4 5 5 6 4 5 5 5 4 6 4
-5 5 5 4 6 4 5 5 5 4 6 4 5 4 6 4
-5 5 5 4 6 4 5 4 5 4 6 4 5 4 5 3
-6 4 5 4 5 4 6 4 5 3 5 4 6 4 5 3
-6 4 5 4 5 3 6 4 5 3 5 4 6 3 5 3
-5 4 6 3 5 3 4139 634 100 MP stroke
-5 4 6 3 5 3 6 3 5 3 5 3 6 4 5 3
-5 3 6 3 5 2 5 3 6 3 5 3 5 3 6 3
-5 3 6 2 5 3 5 3 6 2 5 3 5 2 6 3
-5 3 5 2 6 2 5 3 5 2 6 3 5 2 6 2
-5 3 5 2 6 2 5 2 5 2 6 2 5 2 5 2
-6 2 5 2 5 2 6 2 5 2 5 2 6 2 5 2
-6 1 5 2 5 2 6 2 5 1 5 2 6 1 5 2
-5 1 6 2 5 1 5 2 6 1 5 2 6 1 5 1
-5 1 6 2 5 1 5 1 6 1 5 1 5 1 6 1
-5 1 5 1 6 1 5 1 6 1 5 1 5 1 6 1
-5 0 5 1 6 1 5 1 5 0 6 1 5 0 5 1
-6 0 5 1 6 0 5 1 5 0 6 1 5 0 5 0
-6 0 5 1 5 0 3609 462 100 MP stroke
-6 0 5 0 5 0 6 0 5 0 5 0 6 0 5 0
-6 0 5 0 5 0 6 0 5 0 5 -1 6 0 5 0
-5 0 6 -1 5 0 5 -1 6 0 5 -1 6 0 5 -1
-5 0 6 -1 5 0 5 -1 6 -1 5 -1 5 0 6 -1
-5 -1 5 -1 6 -1 5 -1 6 -1 5 -1 5 -1 6 -1
-5 -1 5 -1 6 -1 5 -1 5 -1 6 -2 5 -1 5 -1
-6 -1 5 -2 6 -1 5 -2 5 -1 6 -2 5 -1 5 -2
-6 -1 5 -2 5 -1 6 -2 5 -2 5 -2 6 -1 5 -2
-6 -2 5 -2 5 -2 6 -2 5 -2 5 -2 6 -2 5 -2
-5 -2 6 -2 5 -2 5 -2 6 -2 5 -2 5 -3 6 -2
-5 -2 6 -3 5 -2 5 -3 6 -2 5 -2 5 -3 6 -3
-5 -2 5 -3 6 -2 5 -3 5 -3 6 -2 5 -3 6 -3
-5 -3 5 -3 6 -3 3078 597 100 MP stroke
-5 -3 5 -2 6 -3 5 -3 5 -3 6 -4 5 -3 5 -3
-6 -3 5 -3 6 -3 5 -4 5 -3 6 -3 5 -4 5 -3
-6 -3 5 -4 5 -3 6 -4 5 -3 5 -4 6 -4 5 -3
-6 -4 5 -4 5 -3 6 -4 5 -4 5 -4 6 -4 5 -3
-5 -4 6 -4 5 -4 5 -4 6 -4 5 -4 5 -5 6 -4
-5 -4 6 -4 5 -4 5 -5 6 -4 5 -4 5 -5 6 -4
-5 -4 5 -5 6 -4 5 -5 5 -4 6 -5 5 -5 6 -4
-5 -5 5 -5 6 -4 5 -5 5 -5 6 -5 5 -4 5 -5
-6 -5 5 -5 5 -5 6 -5 5 -5 6 -5 5 -5 5 -6
-6 -5 5 -5 5 -5 6 -5 5 -6 5 -5 6 -5 5 -6
-5 -5 6 -6 5 -5 6 -6 5 -5 5 -6 6 -5 5 -6
-5 -6 6 -5 5 -6 5 -6 6 -6 5 -5 5 -6 6 -6
-5 -6 5 -6 6 -6 2548 1037 100 MP stroke
-5 -6 6 -6 5 -6 5 -6 6 -6 5 -7 5 -6 6 -6
-5 -6 5 -7 6 -6 5 -6 5 -7 6 -6 5 -6 6 -7
-5 -6 5 -7 6 -7 5 -6 5 -7 6 -6 5 -7 5 -7
-6 -7 5 -6 5 -7 6 -7 5 -7 6 -7 5 -7 5 -7
-6 -7 5 -7 5 -7 6 -7 5 -7 5 -7 6 -8 5 -7
-5 -7 6 -7 5 -8 6 -7 5 -7 5 -8 6 -7 5 -8
-5 -7 6 -8 5 -7 5 -8 6 -8 5 -7 5 -8 6 -8
-5 -7 5 -8 6 -8 5 -8 6 -8 5 -8 5 -8 6 -8
-5 -8 5 -8 6 -8 5 -8 5 -8 6 -8 5 -8 5 -9
-6 -8 5 -8 6 -8 5 -9 5 -8 6 -9 5 -8 5 -9
-6 -8 5 -9 5 -8 6 -9 5 -8 5 -9 6 -9 5 -8
-6 -9 5 -9 5 -9 6 -9 5 -9 5 -8 6 -9 5 -9
-5 -9 6 -9 5 -9 2018 1783 100 MP stroke
-5 -10 6 -9 5 -9 6 -9 5 -9 5 -10 6 -9 5 -9
-5 -10 6 -9 5 -9 5 -10 6 -9 5 -10 5 -9 6 -10
-5 -9 6 -10 5 -10 5 -9 6 -10 5 -10 5 -10 6 -10
-5 -9 5 -10 6 -10 5 -10 5 -10 6 -10 5 -10 5 -10
-6 -10 5 -10 6 -11 5 -10 5 -10 6 -10 5 -11 5 -10
-6 -10 5 -11 5 -10 6 -10 5 -11 5 -10 6 -11 5 -11
-6 -10 5 -11 5 -10 6 -11 5 -11 5 -11 6 -10 5 -11
-5 -11 6 -11 5 -11 5 -11 6 -11 5 -11 6 -11 5 -11
-5 -11 6 -11 5 -11 5 -11 6 -12 5 -11 5 -11 6 -12
-5 -11 5 -11 6 -12 5 -11 6 -12 5 -11 5 -12 6 -11
-5 -12 5 -11 6 -12 5 -12 5 -12 6 -11 5 -12 5 -12
-6 -12 5 -12 5 -12 6 -11 5 -12 6 -12 5 -12 5 -13
-6 -12 5 -12 5 -12 1488 2836 100 MP stroke
-6 -12 5 -12 5 -13 6 -12 5 -12 5 -13 6 -12 5 -12
-6 -13 5 -12 5 -13 6 -12 5 -13 5 -12 6 -13 5 -13
-5 -12 6 -13 5 -13 5 -13 6 -13 5 -12 6 -13 5 -13
-5 -13 6 -13 5 -13 5 -13 6 -13 5 -13 5 -13 6 -14
-5 -13 5 -13 6 -13 5 -14 6 -13 5 -13 5 -14 6 -13
-5 -13 5 -14 6 -13 5 -14 5 -13 6 -14 5 -14 5 -13
-6 -14 5 -14 5 -14 6 -13 5 -14 6 -14 5 -14 5 -14
-6 -14 5 -14 5 -14 6 -14 5 -14 5 -14 6 -14 5 -14
-5 -14 6 -15 5 -14 6 -14 5 -14 5 -15 6 -14 5 -15
-5 -14 6 -14 5 -15 5 -15 6 -14 5 -15 5 -14 6 -15
-5 -15 6 -14 5 -15 5 -15 6 -15 5 -15 5 -14 6 -15
-5 -15 5 -15 6 -15 5 -15 5 -15 6 -15 5 -16 6 -15
-5 -15 5 -15 6 -15 957 4194 100 MP stroke
-5 -16 5 -15 6 -15 5 -16 5 -15 6 -16 5 -15 5 -16
-6 -15 5 -16 5 -15 899 4364 12 MP stroke
-6 w
-gr
-
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/window_fct1.pdf b/doc/tutorial/images/window_fct1.pdf
deleted file mode 100644
index ecd329d..0000000
Binary files a/doc/tutorial/images/window_fct1.pdf and /dev/null differ
diff --git a/doc/tutorial/images/window_fct2.eps b/doc/tutorial/images/window_fct2.eps
deleted file mode 100755
index 94c63d8..0000000
--- a/doc/tutorial/images/window_fct2.eps
+++ /dev/null
@@ -1,501 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: window_fct2.eps
-%%CreationDate: 07/29/2004 11:42:09
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 40 199 558 583
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 40 199 558 583
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 273 341 6214 4613 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 562 4894 mt
-(-0.5) s
-3577 4615 mt 3577 4561 L
-3577 389 mt 3577 442 L
-3504 4894 mt
-(0) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6072 4894 mt
-(0.5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 952 4615 L
-6255 4615 mt 6201 4615 L
- 273 4713 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 4550 mt
-(-20) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 3542 mt 952 3542 L
-6255 3542 mt 6201 3542 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 3640 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 3477 mt
-(-15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 2469 mt 952 2469 L
-6255 2469 mt 6201 2469 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 2567 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 2404 mt
-(-10) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 1397 mt 952 1397 L
-6255 1397 mt 6201 1397 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 1495 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 1332 mt
-(-5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 389 5357 4227 MR c np
-24 w
-5 3 6 7 5 8 5 9 6 12 5 12 5 13 6 13
-5 15 5 14 6 15 5 14 5 15 6 15 5 15 6 15
-5 15 5 15 6 15 5 15 5 15 6 15 5 14 5 15
-6 15 5 15 5 15 6 14 5 15 6 15 5 14 5 15
-6 14 5 15 5 15 6 14 5 14 5 15 6 14 5 15
-5 14 6 14 5 14 6 15 5 14 5 14 6 14 5 14
-5 14 6 14 5 14 5 14 6 14 5 14 5 14 6 14
-5 14 6 13 5 14 5 14 6 14 5 13 5 14 6 14
-5 13 5 14 6 13 5 14 5 13 6 13 5 14 5 13
-6 13 5 14 6 13 5 13 5 13 6 14 5 13 5 13
-6 13 5 13 5 13 6 13 5 13 5 13 6 13 5 12
-6 13 5 13 5 13 6 13 5 12 5 13 6 13 5 12
-5 13 6 12 5 13 5719 2959 100 MP stroke
-5 12 6 13 5 12 6 12 5 13 5 12 6 12 5 13
-5 12 6 12 5 12 5 12 6 12 5 13 5 12 6 12
-5 12 6 11 5 12 5 12 6 12 5 12 5 12 6 11
-5 12 5 12 6 12 5 11 5 12 6 11 5 12 5 11
-6 12 5 11 6 12 5 11 5 11 6 12 5 11 5 11
-6 12 5 11 5 11 6 11 5 11 5 11 6 11 5 11
-6 11 5 11 5 11 6 11 5 11 5 11 6 10 5 11
-5 11 6 11 5 10 5 11 6 10 5 11 6 11 5 10
-5 11 6 10 5 10 5 11 6 10 5 10 5 11 6 10
-5 10 5 10 6 11 5 10 6 10 5 10 5 10 6 10
-5 10 5 10 6 10 5 10 5 9 6 10 5 10 5 10
-6 10 5 9 5 10 6 10 5 9 6 10 5 9 5 10
-6 9 5 10 5 9 5189 1876 100 MP stroke
-6 9 5 10 5 9 6 9 5 10 5 9 6 9 5 9
-6 9 5 10 5 9 6 9 5 9 5 9 6 9 5 8
-5 9 6 9 5 9 5 9 6 9 5 8 6 9 5 9
-5 8 6 9 5 8 5 9 6 8 5 9 5 8 6 9
-5 8 5 9 6 8 5 8 6 8 5 9 5 8 6 8
-5 8 5 8 6 8 5 8 5 8 6 8 5 8 5 8
-6 8 5 8 5 8 6 8 5 7 6 8 5 8 5 7
-6 8 5 8 5 7 6 8 5 7 5 8 6 7 5 8
-5 7 6 7 5 8 6 7 5 7 5 7 6 8 5 7
-5 7 6 7 5 7 5 7 6 7 5 7 5 7 6 7
-5 7 6 7 5 7 5 6 6 7 5 7 5 7 6 6
-5 7 5 6 6 7 5 7 5 6 6 7 5 6 6 6
-5 7 5 6 6 6 4658 1099 100 MP stroke
-5 7 5 6 6 6 5 6 5 7 6 6 5 6 5 6
-6 6 5 6 6 6 5 6 5 6 6 6 5 6 5 5
-6 6 5 6 5 6 6 5 5 6 5 6 6 5 5 6
-5 5 6 6 5 5 6 6 5 5 5 6 6 5 5 5
-5 6 6 5 5 5 5 5 6 5 5 6 5 5 6 5
-5 5 6 5 5 5 5 5 6 5 5 5 5 4 6 5
-5 5 5 5 6 4 5 5 5 5 6 4 5 5 6 5
-5 4 5 5 6 4 5 5 5 4 6 4 5 5 5 4
-6 4 5 5 5 4 6 4 5 4 6 4 5 5 5 4
-6 4 5 4 5 4 6 4 5 4 5 3 6 4 5 4
-5 4 6 4 5 3 5 4 6 4 5 3 6 4 5 4
-5 3 6 4 5 3 5 4 6 3 5 3 5 4 6 3
-5 3 5 4 6 3 4128 627 100 MP stroke
-5 3 6 3 5 3 5 3 6 4 5 3 5 3 6 3
-5 2 5 3 6 3 5 3 5 3 6 3 5 3 6 2
-5 3 5 3 6 2 5 3 5 2 6 3 5 3 5 2
-6 2 5 3 5 2 6 3 5 2 6 2 5 3 5 2
-6 2 5 2 5 2 6 2 5 2 5 2 6 2 5 2
-5 2 6 2 5 2 5 2 6 2 5 2 6 1 5 2
-5 2 6 2 5 1 5 2 6 1 5 2 5 1 6 2
-5 1 5 2 6 1 5 2 6 1 5 1 5 1 6 2
-5 1 5 1 6 1 5 1 5 1 6 1 5 1 5 1
-6 1 5 1 6 1 5 1 5 1 6 1 5 0 5 1
-6 1 5 1 5 0 6 1 5 0 5 1 6 0 5 1
-6 0 5 1 5 0 6 1 5 0 5 0 6 0 5 1
-5 0 6 0 5 0 3598 462 100 MP stroke
-5 0 6 0 5 0 5 0 6 0 5 0 6 0 5 0
-5 0 6 0 5 0 5 -1 6 0 5 0 5 0 6 -1
-5 0 5 -1 6 0 5 -1 6 0 5 -1 5 0 6 -1
-5 0 5 -1 6 -1 5 -1 5 0 6 -1 5 -1 5 -1
-6 -1 5 -1 6 -1 5 -1 5 -1 6 -1 5 -1 5 -1
-6 -1 5 -1 5 -1 6 -2 5 -1 5 -1 6 -1 5 -2
-6 -1 5 -2 5 -1 6 -2 5 -1 5 -2 6 -1 5 -2
-5 -1 6 -2 5 -2 5 -2 6 -1 5 -2 6 -2 5 -2
-5 -2 6 -2 5 -2 5 -2 6 -2 5 -2 5 -2 6 -2
-5 -2 5 -2 6 -2 5 -2 5 -3 6 -2 5 -2 6 -3
-5 -2 5 -3 6 -2 5 -2 5 -3 6 -3 5 -2 5 -3
-6 -2 5 -3 5 -3 6 -2 5 -3 6 -3 5 -3 5 -3
-6 -3 5 -3 5 -2 3068 602 100 MP stroke
-6 -3 5 -3 5 -3 6 -4 5 -3 5 -3 6 -3 5 -3
-6 -3 5 -4 5 -3 6 -3 5 -4 5 -3 6 -3 5 -4
-5 -3 6 -4 5 -3 5 -4 6 -4 5 -3 6 -4 5 -4
-5 -3 6 -4 5 -4 5 -4 6 -4 5 -3 5 -4 6 -4
-5 -4 5 -4 6 -4 5 -4 5 -5 6 -4 5 -4 6 -4
-5 -4 5 -5 6 -4 5 -4 5 -5 6 -4 5 -4 5 -5
-6 -4 5 -5 5 -4 6 -5 5 -5 6 -4 5 -5 5 -5
-6 -4 5 -5 5 -5 6 -5 5 -4 5 -5 6 -5 5 -5
-5 -5 6 -5 5 -5 6 -5 5 -5 5 -6 6 -5 5 -5
-5 -5 6 -5 5 -6 5 -5 6 -5 5 -6 5 -5 6 -6
-5 -5 6 -6 5 -5 5 -6 6 -5 5 -6 5 -6 6 -5
-5 -6 5 -6 6 -6 5 -5 5 -6 6 -6 5 -6 5 -6
-6 -6 5 -6 6 -6 2537 1049 100 MP stroke
-5 -6 5 -6 6 -6 5 -7 5 -6 6 -6 5 -6 5 -7
-6 -6 5 -6 5 -7 6 -6 5 -6 6 -7 5 -6 5 -7
-6 -7 5 -6 5 -7 6 -6 5 -7 5 -7 6 -7 5 -6
-5 -7 6 -7 5 -7 6 -7 5 -7 5 -7 6 -7 5 -7
-5 -7 6 -7 5 -7 5 -7 6 -8 5 -7 5 -7 6 -7
-5 -8 6 -7 5 -7 5 -8 6 -7 5 -8 5 -7 6 -8
-5 -7 5 -8 6 -8 5 -7 5 -8 6 -8 5 -7 5 -8
-6 -8 5 -8 6 -8 5 -8 5 -8 6 -8 5 -8 5 -8
-6 -8 5 -8 5 -8 6 -8 5 -8 5 -9 6 -8 5 -8
-6 -8 5 -9 5 -8 6 -9 5 -8 5 -9 6 -8 5 -9
-5 -8 6 -9 5 -8 5 -9 6 -9 5 -8 6 -9 5 -9
-5 -9 6 -9 5 -9 5 -8 6 -9 5 -9 5 -9 6 -9
-5 -9 5 -10 6 -9 2007 1802 100 MP stroke
-5 -9 6 -9 5 -9 5 -10 6 -9 5 -9 5 -10 6 -9
-5 -9 5 -10 6 -9 5 -10 5 -9 6 -10 5 -9 6 -10
-5 -10 5 -9 6 -10 5 -10 5 -10 6 -10 5 -9 5 -10
-6 -10 5 -10 5 -10 6 -10 5 -10 5 -10 6 -10 5 -10
-6 -11 5 -10 5 -10 6 -10 5 -11 5 -10 6 -10 5 -11
-5 -10 6 -10 5 -11 5 -10 6 -11 5 -11 6 -10 5 -11
-5 -10 6 -11 5 -11 5 -11 6 -10 5 -11 5 -11 6 -11
-5 -11 5 -11 6 -11 5 -11 6 -11 5 -11 5 -11 6 -11
-5 -11 5 -11 6 -12 5 -11 5 -11 6 -12 5 -11 5 -11
-6 -12 5 -11 6 -12 5 -11 5 -12 6 -11 5 -12 5 -11
-6 -12 5 -12 5 -12 6 -11 5 -12 5 -12 6 -12 5 -12
-5 -12 6 -11 5 -12 6 -12 5 -12 5 -13 6 -12 5 -12
-5 -12 6 -12 5 -12 1477 2860 100 MP stroke
-5 -13 6 -12 5 -12 5 -13 6 -12 5 -12 6 -13 5 -12
-5 -13 6 -12 5 -13 5 -12 6 -13 5 -13 5 -12 6 -13
-5 -13 5 -13 6 -13 5 -12 6 -13 5 -13 5 -13 6 -13
-5 -13 5 -13 6 -13 5 -13 5 -13 6 -14 5 -13 5 -13
-6 -13 5 -14 6 -13 5 -13 5 -14 6 -13 5 -13 5 -14
-6 -13 5 -14 5 -13 6 -14 5 -14 5 -13 6 -14 5 -14
-5 -14 6 -13 5 -14 6 -14 5 -14 5 -14 6 -14 5 -14
-5 -14 6 -14 5 -14 5 -14 6 -14 5 -14 5 -14 6 -15
-5 -14 6 -14 5 -14 5 -15 6 -14 5 -15 5 -14 6 -14
-5 -15 5 -15 6 -14 5 -15 5 -14 6 -15 5 -15 6 -14
-5 -15 5 -15 6 -15 5 -15 5 -14 6 -15 5 -15 5 -15
-6 -15 5 -15 5 -15 6 -15 5 -15 6 -15 5 -15 5 -14
-6 -15 5 -14 5 -15 947 4221 100 MP stroke
-6 -13 5 -13 5 -12 6 -12 5 -9 5 -8 6 -7 5 -3
-5 -2 899 4300 10 MP stroke
-6 w
-gr
-
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/window_fct2.pdf b/doc/tutorial/images/window_fct2.pdf
deleted file mode 100644
index eb3d9fc..0000000
Binary files a/doc/tutorial/images/window_fct2.pdf and /dev/null differ
diff --git a/doc/tutorial/images/window_fct3.eps b/doc/tutorial/images/window_fct3.eps
deleted file mode 100755
index d7a0692..0000000
--- a/doc/tutorial/images/window_fct3.eps
+++ /dev/null
@@ -1,484 +0,0 @@
-%!PS-Adobe-2.0 EPSF-1.2
-%%Creator: MATLAB, The Mathworks, Inc.
-%%Title: window_fct3.eps
-%%CreationDate: 07/29/2004 11:42:09
-%%DocumentNeededFonts: Helvetica
-%%DocumentProcessColors: Cyan Magenta Yellow Black
-%%Pages: 1
-%%BoundingBox: 40 199 555 602
-%%EndComments
-
-%%BeginProlog
-% MathWorks dictionary
-/MathWorks 160 dict begin
-% definition operators
-/bdef {bind def} bind def
-/ldef {load def} bind def
-/xdef {exch def} bdef
-/xstore {exch store} bdef
-% operator abbreviations
-/c /clip ldef
-/cc /concat ldef
-/cp /closepath ldef
-/gr /grestore ldef
-/gs /gsave ldef
-/mt /moveto ldef
-/np /newpath ldef
-/cm /currentmatrix ldef
-/sm /setmatrix ldef
-/rm /rmoveto ldef
-/rl /rlineto ldef
-/s {show newpath} bdef
-/sc {setcmykcolor} bdef
-/sr /setrgbcolor ldef
-/sg /setgray ldef
-/w /setlinewidth ldef
-/j /setlinejoin ldef
-/cap /setlinecap ldef
-/rc {rectclip} bdef
-/rf {rectfill} bdef
-% page state control
-/pgsv () def
-/bpage {/pgsv save def} bdef
-/epage {pgsv restore} bdef
-/bplot /gsave ldef
-/eplot {stroke grestore} bdef
-% orientation switch
-/portraitMode 0 def /landscapeMode 1 def /rotateMode 2 def
-% coordinate system mappings
-/dpi2point 0 def
-% font control
-/FontSize 0 def
-/FMS {/FontSize xstore findfont [FontSize 0 0 FontSize neg 0 0]
- makefont setfont} bdef
-/reencode {exch dup where {pop load} {pop StandardEncoding} ifelse
- exch dup 3 1 roll findfont dup length dict begin
- { 1 index /FID ne {def}{pop pop} ifelse } forall
- /Encoding exch def currentdict end definefont pop} bdef
-/isroman {findfont /CharStrings get /Agrave known} bdef
-/FMSR {3 1 roll 1 index dup isroman {reencode} {pop pop} ifelse
- exch FMS} bdef
-/csm {1 dpi2point div -1 dpi2point div scale neg translate
- dup landscapeMode eq {pop -90 rotate}
- {rotateMode eq {90 rotate} if} ifelse} bdef
-% line types: solid, dotted, dashed, dotdash
-/SO { [] 0 setdash } bdef
-/DO { [.5 dpi2point mul 4 dpi2point mul] 0 setdash } bdef
-/DA { [6 dpi2point mul] 0 setdash } bdef
-/DD { [.5 dpi2point mul 4 dpi2point mul 6 dpi2point mul 4
- dpi2point mul] 0 setdash } bdef
-% macros for lines and objects
-/L {lineto stroke} bdef
-/MP {3 1 roll moveto 1 sub {rlineto} repeat} bdef
-/AP {{rlineto} repeat} bdef
-/PDlw -1 def
-/W {/PDlw currentlinewidth def setlinewidth} def
-/PP {closepath eofill} bdef
-/DP {closepath stroke} bdef
-/MR {4 -2 roll moveto dup 0 exch rlineto exch 0 rlineto
- neg 0 exch rlineto closepath} bdef
-/FR {MR stroke} bdef
-/PR {MR fill} bdef
-/L1i {{currentfile picstr readhexstring pop} image} bdef
-/tMatrix matrix def
-/MakeOval {newpath tMatrix currentmatrix pop translate scale
-0 0 1 0 360 arc tMatrix setmatrix} bdef
-/FO {MakeOval stroke} bdef
-/PO {MakeOval fill} bdef
-/PD {currentlinewidth 2 div 0 360 arc fill
- PDlw -1 eq not {PDlw w /PDlw -1 def} if} def
-/FA {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arc tMatrix setmatrix stroke} bdef
-/PA {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arc closepath tMatrix setmatrix fill} bdef
-/FAn {newpath tMatrix currentmatrix pop translate scale
- 0 0 1 5 -2 roll arcn tMatrix setmatrix stroke} bdef
-/PAn {newpath tMatrix currentmatrix pop translate 0 0 moveto scale
- 0 0 1 5 -2 roll arcn closepath tMatrix setmatrix fill} bdef
-/vradius 0 def /hradius 0 def /lry 0 def
-/lrx 0 def /uly 0 def /ulx 0 def /rad 0 def
-/MRR {/vradius xdef /hradius xdef /lry xdef /lrx xdef /uly xdef
- /ulx xdef newpath tMatrix currentmatrix pop ulx hradius add uly
- vradius add translate hradius vradius scale 0 0 1 180 270 arc
- tMatrix setmatrix lrx hradius sub uly vradius add translate
- hradius vradius scale 0 0 1 270 360 arc tMatrix setmatrix
- lrx hradius sub lry vradius sub translate hradius vradius scale
- 0 0 1 0 90 arc tMatrix setmatrix ulx hradius add lry vradius sub
- translate hradius vradius scale 0 0 1 90 180 arc tMatrix setmatrix
- closepath} bdef
-/FRR {MRR stroke } bdef
-/PRR {MRR fill } bdef
-/MlrRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lry uly sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 90 270 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 270 90 arc tMatrix setmatrix
- closepath} bdef
-/FlrRR {MlrRR stroke } bdef
-/PlrRR {MlrRR fill } bdef
-/MtbRR {/lry xdef /lrx xdef /uly xdef /ulx xdef /rad lrx ulx sub 2 div def
- newpath tMatrix currentmatrix pop ulx rad add uly rad add translate
- rad rad scale 0 0 1 180 360 arc tMatrix setmatrix lrx rad sub lry rad
- sub translate rad rad scale 0 0 1 0 180 arc tMatrix setmatrix
- closepath} bdef
-/FtbRR {MtbRR stroke } bdef
-/PtbRR {MtbRR fill } bdef
-/stri 6 array def /dtri 6 array def
-/smat 6 array def /dmat 6 array def
-/tmat1 6 array def /tmat2 6 array def /dif 3 array def
-/asub {/ind2 exch def /ind1 exch def dup dup
- ind1 get exch ind2 get sub exch } bdef
-/tri_to_matrix {
- 2 0 asub 3 1 asub 4 0 asub 5 1 asub
- dup 0 get exch 1 get 7 -1 roll astore } bdef
-/compute_transform {
- dmat dtri tri_to_matrix tmat1 invertmatrix
- smat stri tri_to_matrix tmat2 concatmatrix } bdef
-/ds {stri astore pop} bdef
-/dt {dtri astore pop} bdef
-/db {2 copy /cols xdef /rows xdef mul dup string
- currentfile exch readhexstring pop
- /bmap xdef pop pop} bdef
-/it {gs np dtri aload pop moveto lineto lineto cp c
- cols rows 8 compute_transform
- {bmap} image gr}bdef
-/il {newpath moveto lineto stroke}bdef
-currentdict end def
-%%EndProlog
-
-%%BeginSetup
-MathWorks begin
-
-0 cap
-
-end
-%%EndSetup
-
-%%Page: 1 1
-%%BeginPageSetup
-%%PageBoundingBox: 40 199 555 602
-MathWorks begin
-bpage
-%%EndPageSetup
-
-%%BeginObject: obj1
-bplot
-
-/dpi2point 12 def
-portraitMode 0216 7344 csm
-
- 273 113 6178 4841 MR c np
-92 dict begin %Colortable dictionary
-/c0 { 0 0 0 sr} bdef
-/c1 { 1 1 1 sr} bdef
-/c2 { 1 0 0 sr} bdef
-/c3 { 0 1 0 sr} bdef
-/c4 { 0 0 1 sr} bdef
-/c5 { 1 1 0 sr} bdef
-/c6 { 1 0 1 sr} bdef
-/c7 { 0 1 1 sr} bdef
-c0
-1 j
-1 sg
- 0 0 6913 5186 PR
-6 w
-0 4226 5356 0 0 -4226 899 4615 4 MP
-PP
--5356 0 0 4226 5356 0 0 -4226 899 4615 5 MP stroke
-4 w
-DO
-SO
-6 w
-0 sg
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
- 899 4615 mt 6255 4615 L
- 899 4615 mt 899 389 L
- 899 4615 mt 899 4561 L
- 899 389 mt 899 442 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 599 4894 mt
-(-32) s
-1903 4615 mt 1903 4561 L
-1903 389 mt 1903 442 L
-1603 4894 mt
-(-20) s
-2572 4615 mt 2572 4561 L
-2572 389 mt 2572 442 L
-2272 4894 mt
-(-12) s
-3577 4615 mt 3577 4561 L
-3577 389 mt 3577 442 L
-3504 4894 mt
-(0) s
-4497 4615 mt 4497 4561 L
-4497 389 mt 4497 442 L
-4351 4894 mt
-(11) s
-5167 4615 mt 5167 4561 L
-5167 389 mt 5167 442 L
-5021 4894 mt
-(19) s
-6255 4615 mt 6255 4561 L
-6255 389 mt 6255 442 L
-6109 4894 mt
-(32) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 952 4615 L
-6255 4615 mt 6201 4615 L
- 273 4713 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 4550 mt
-(-20) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 3558 mt 952 3558 L
-6255 3558 mt 6201 3558 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 3656 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 3493 mt
-(-15) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 2502 mt 952 2502 L
-6255 2502 mt 6201 2502 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 2600 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 2437 mt
-(-10) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 1445 mt 952 1445 L
-6255 1445 mt 6201 1445 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 1543 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 1380 mt
-(-5) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 389 mt 952 389 L
-6255 389 mt 6201 389 L
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 264 FMSR
-
- 273 487 mt
-(10) s
-%%IncludeResource: font Helvetica
-/Helvetica /ISOLatin1Encoding 176 FMSR
-
- 566 324 mt
-(0) s
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 899 4615 L
- 899 4615 mt 6255 4615 L
- 899 389 mt 6255 389 L
- 899 4615 mt 899 389 L
-6255 4615 mt 6255 389 L
-gs 899 389 5357 4227 MR c np
-24 w
-75 255 83 276 84 265 84 254 83 243 84 233 84 221 83 211
-84 200 84 189 83 179 84 167 84 157 84 146 83 135 84 124
-84 114 83 103 84 92 84 81 83 70 84 59 84 49 83 38
-84 27 84 16 83 5 84 -5 84 -16 84 -27 83 -38 84 -49
-84 -59 83 -70 84 -81 84 -92 83 -103 84 -114 84 -124 83 -135
-84 -146 84 -157 83 -167 84 -179 84 -189 84 -200 83 -211 84 -221
-84 -233 83 -243 84 -254 84 -265 83 -276 75 -255 1326 4616 55 MP stroke
-gr
-
-24 w
- 60 60 1401 4361 FO
- 60 60 1484 4085 FO
- 60 60 1568 3820 FO
- 60 60 1652 3566 FO
- 60 60 1735 3323 FO
- 60 60 1819 3090 FO
- 60 60 1903 2869 FO
- 60 60 1986 2658 FO
- 60 60 2070 2458 FO
- 60 60 2154 2269 FO
- 60 60 2238 2090 FO
- 60 60 2321 1923 FO
- 60 60 2405 1766 FO
- 60 60 2489 1620 FO
- 60 60 2572 1485 FO
- 60 60 2656 1361 FO
- 60 60 2740 1247 FO
- 60 60 2823 1144 FO
- 60 60 2907 1052 FO
- 60 60 2991 971 FO
- 60 60 3074 901 FO
- 60 60 3158 842 FO
- 60 60 3242 793 FO
- 60 60 3325 755 FO
- 60 60 3409 728 FO
- 60 60 3493 712 FO
- 60 60 3577 707 FO
- 60 60 3660 712 FO
- 60 60 3744 728 FO
- 60 60 3828 755 FO
- 60 60 3911 793 FO
- 60 60 3995 842 FO
- 60 60 4079 901 FO
- 60 60 4162 971 FO
- 60 60 4246 1052 FO
- 60 60 4330 1144 FO
- 60 60 4413 1247 FO
- 60 60 4497 1361 FO
- 60 60 4581 1485 FO
- 60 60 4664 1620 FO
- 60 60 4748 1766 FO
- 60 60 4832 1923 FO
- 60 60 4916 2090 FO
- 60 60 4999 2269 FO
- 60 60 5083 2458 FO
- 60 60 5167 2658 FO
- 60 60 5250 2869 FO
- 60 60 5334 3090 FO
- 60 60 5418 3323 FO
- 60 60 5501 3566 FO
- 60 60 5585 3820 FO
- 60 60 5669 4085 FO
- 60 60 5752 4361 FO
-gs 899 389 5357 4227 MR c np
-0 -4226 2572 4615 2 MP stroke
-0 -4226 4497 4615 2 MP stroke
-0 -4226 5167 4615 2 MP stroke
-0 -4226 1903 4615 2 MP stroke
-6 w
-gr
-
-6 w
-
-end
-
-eplot
-%%EndObject
-
-epage
-end
-
-showpage
-
-%%Trailer
-%%EOF
diff --git a/doc/tutorial/images/window_fct3.pdf b/doc/tutorial/images/window_fct3.pdf
deleted file mode 100644
index e8a6582..0000000
Binary files a/doc/tutorial/images/window_fct3.pdf and /dev/null differ
diff --git a/doc/tutorial/paper.tex b/doc/tutorial/paper.tex
deleted file mode 100755
index 2cc8e47..0000000
--- a/doc/tutorial/paper.tex
+++ /dev/null
@@ -1,2229 +0,0 @@
-%==============================================================================
-\documentclass[11pt,a4paper,twoside,bibtotoc]{scrartcl}
-%==============================================================================
-
-% LaTeX packages
-\usepackage{a4wide}
-\usepackage{amsfonts}
-\usepackage{amsmath}
-\usepackage{theorem}
-\usepackage{color}
-\usepackage{graphicx}
-\usepackage{subfigure}
-\usepackage[boxed,Algorithm]{algorithm}
-\usepackage{algorithmic}
-
-% Allow for more figures on each side
-\renewcommand{\topfraction}{1}
-\renewcommand{\textfraction}{0}
-\setcounter{totalnumber}{4}
-
-% Shortcuts for maths symbols.
-\newcommand{\N}{\ensuremath{\mathbb{N}}}
-\newcommand{\T}{\ensuremath{\mathbb{T}}}
-\renewcommand{\S}{\ensuremath{\mathbb{S}}}
-\newcommand{\NZ}{\ensuremath{\mathbb{N}_{0}}}
-\newcommand{\Z}{\ensuremath{\mathbb{Z}}}
-\newcommand{\R}{\ensuremath{\mathbb{R}}}
-\newcommand{\Rp}{\ensuremath{\mathbb{R}^{+}}}
-\newcommand{\Rn}{\ensuremath{\mathbb{R}^n}}
-\newcommand{\Rnn}{\ensuremath{\mathbb{R}^{n \times n}}}
-\newcommand{\C}{\ensuremath{\mathbb{C}}}
-\newcommand{\nfft}{\textsf{NFFT}}
-\newcommand{\nfftversion}{3.0}
-\newcommand{\cO}{\ensuremath{\mathcal{O}}}
-\newcommand{\tT}{\ensuremath{\text{\tiny{T}}}}
-\newcommand{\ti}{\ensuremath{\text{\scriptsize{i}}}}
-\newcommand{\e}{{\ensuremath{\mathrm{e}}}}
-\newcommand{\eim}[1]{\ensuremath{\mathrm{e}^{-2\pi{\ti} #1}}}
-\newcommand{\eip}[1]{\ensuremath{\mathrm{e}^{ 2\pi{\ti} #1}}}
-\renewcommand{\mathbf}[1]{\ensuremath{\boldsymbol{#1}}}
-\newcommand{\ds}{\displaystyle}
-\newcommand{\sinc}{{\rm sinc}}
-\newcommand{\dist}{{\rm dist}}
-\newcommand{\adj}{{\vdash \hspace*{-1.72mm} \dashv}}
-\DeclareMathOperator{\diag}{diag}
-\DeclareMathOperator{\dd}{d}
-\newcommand{\bend}
-{
- \hspace*{0ex} \hfill
- \hbox{\vrule height 1.5ex \vbox{\hrule width 1.4ex \vskip
- 1.4ex\hrule width 1.4ex} \vrule height 1.5ex}
-}
-
-\def\invisible#1{\textcolor{white}{#1}}
-
-% Environment Numbering
-\numberwithin{equation}{section}
-\numberwithin{table}{section}
-\numberwithin{figure}{section}
-
-%==============================================================================
-% Title Page
-%==============================================================================
-\begin{document}
-
-\title{NFFT \nfftversion\ - Tutorial}
-\author{Jens Keiner\thanks{keiner at math.uni-luebeck.de,University of
- L\"ubeck, Institute of Mathematics, 23560 L\"ubeck} \and
- Stefan Kunis\thanks{kunis at mathematik.tu-chemnitz.de, Chemnitz University of
- Technology, Department of Mathematics, 09107 Chemnitz, Germany} \and
- Daniel Potts\thanks{potts at mathematik.tu-chemnitz.de, Chemnitz University of
- Technology, Department of Mathematics, 09107 Chemnitz, Germany}}
-\date{}
-\maketitle
-
-\begin{center}
- \vspace{-8ex}
- {\large {\tt http://www.tu-chemnitz.de/$\sim$potts/nfft}}
- \vspace{8ex}
-\end{center}
-
-%\begin{abstract}
-%\noindent {\it Key words and phrases}: \\
-%\noindent {\it Last revision}: \today \\
-%\noindent {\it 2000 AMS Mathematics Subject Classification}: 65T50, 65T40
-%\end{abstract}
-
-
-\begin{center}
- \begin{tabular}{cc}
- \includegraphics[width=7.5cm]{images/front_pic1} &
- \includegraphics[width=7.5cm]{images/front_pic2}
- \end{tabular}
-\end{center}
-
-\clearpage
-\tableofcontents
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\clearpage
-\section{Introduction}\label{sect:1}
-\setcounter{equation}{0}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-This tutorial surveys the fast Fourier transform at nonequispaced nodes (NFFT),
-its generalisations, its inversion, and the related C library NFFT \nfftversion.
-The goal of this manuscript is twofold -- to shed some light on the
-mathematical background, as well as to provide an overview over the C library
-to allow the user to use it effectively. Following this, this document splits
-into two parts:
-
-In Sections \ref{sect:nfft}, \ref{sect:gen} and \ref{sect:inv}, we
-introduce the NFFT which, as a starting point, leads to several concepts for
-further generalisation and inversion. We focus on a mathematical
-description of the related algorithms. However, we complement the necessarily
-incomplete quick glance at the ideas by references to related mathematical
-literature.
-In Section \ref{sect:nfft}, we introduce the problem of computing the discrete
-Fourier transform at nonequispaced nodes (NDFT), along with the notation
-used and related works in the literature. The algorithms (NFFT) are developed
-in pseudo code.
-Furthermore, we turn for recent generalisations, including in particular NFFTs
-on the sphere and iterative schemes for inversion of the nonequispaced FFTs,
-in Section \ref{sect:gen} and \ref{sect:inv}, respectively.
-
-Having laid the theoretical foundations, Section \ref{sect:lib} provides an
-overview over the NFFT \nfftversion\ C library and the general principles for using the
-available algorithms in your own code. Rather than describing the library
-interface in every detail, we restrict to simple recipes in order to
-familiarise with the very general concepts sufficient for most everyday tasks.
-For the experienced user, we provide full interface documentation
-(see \verb+doc/html/index.html+ in the package directory) which gives
-detailed information on more advanced options and parameter settings for
-each routine. Figure \ref{nfft:fig:svn} gives an overview over the directory
-structure of the NFFT \nfftversion\ package.
-Finally, Section \ref{sect:ex} gives some simple examples for using the
-library and some more advanced applications are given in Section
-\ref{sec:appl}
-along with numerical results.
-
-\begin{figure}[p]
- \centering
- \input{tree}
- \caption{Directory structure of the NFFT \nfftversion\ package
- \label{nfft:fig:svn}}
-\end{figure}
-
-%The computational complexity of the proposed algorithms is $\cO(|I_{\mathbf{N}}|
-%\log |I_{\mathbf{N}}| + M)$ for $|I_{\mathbf{N}}|$ equispaced frequencies and $M$
-%nonequispaced samples.
-%Besides the core module for the nonequispaced FFT, the following tree
-%structure shows various generalisations, a module for inverse transforms, some
-%examples, and recent applications.
-
-%The remainder of this tutorial is organised as follows:
-%The implementation and usage of the library is described in Section
-%\ref{sect:library}.
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\clearpage
-\section{Notation, the NDFT, and the NFFT}\label{sect:nfft}
-\setcounter{equation}{0}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-This section summarises the mathematical theory and ideas behind the NFFT.
-Let the torus
-\begin{equation*}
- \T^d
- := \left\{ \mathbf{x}=\left(x_t\right)_{t=0,\hdots,d-1} \in \R^d: - \frac{1}{2}
- \le x_t < \frac{1}{2},\; t=0,\hdots,d-1 \right\}
-\end{equation*}
-of dimension $d\in\N$ be given.
-It will serve as domain from which the nonequispaced nodes $\mathbf{x}$ are taken.
-Thus, the sampling set is given by ${\cal X}:=\{\mathbf{x}_j \in
-\T^d:\,j=0,\hdots,M-1\}$.
-
-Possible frequencies $\mathbf{k}\in\Z^d$ are collected in the multi-index set
-\begin{equation*}
- I_{\mathbf{N}} := \left\{ \mathbf{k}=\left(k_t\right)_{t=0,\hdots,d-1} \in \Z^d: -
- \frac{N_t}{2} \le k_t < \frac{N_t}{2} ,\;t=0,\hdots,d-1\right\},
-\end{equation*}
-where $\mathbf{N}=\left(N_t\right)_{t=0,\hdots,d-1}$ is the {\bf EVEN}
-multibandlimit, i.e., $N_t\in 2\N$.
-To keep notation simple, the multi-index $\mathbf{k}$ addresses elements of
-vectors and matrices as well, i.e., the plain index $\tilde
-k:=\sum_{t=0}^{d-1} (k_t+\frac{N_t}{2}) \prod_{t'=t+1}^{d-1} N_{t'}$
-is not used here.
-The inner product between the frequency index $\mathbf{k}$ and the time/spatial
-node $\mathbf{x}$ is defined in the usual way by $\mathbf{k} \mathbf{x}:=k_0 x_0 + k_1 x_1
-+\hdots+ k_{d-1} x_{d-1}$.
-Furthermore, two vectors may be combined by the component-wise product $\mathbf{\sigma}
-\odot \mathbf{N}:=\left(\sigma_0 N_0, \sigma_1 N_1, \hdots, \sigma_{d-1} N_{d-1},
-\right)^{\top}$ with its inverse $\mathbf{N}^{-1}:=\left(\frac{1}{N_0},
- \frac{1}{N_1}, \hdots, \frac{1}{N_{d-1}} \right)^{\top}$.
-
-The space of all $d$-variate, one-periodic functions $f: \T^d \rightarrow \C$
-is restricted to the space of $d$-variate trigonometric polynomials
-\begin{equation*}
- T_{\mathbf{N}}:={\rm span}\left(\eim{\mathbf{k}\mathbf{\cdot}}:\,\mathbf{k} \in I_{\mathbf{N}}\right)
-\end{equation*}
-with degree $N_t\; (t=0,\hdots,d-1)$ in the $t$-th dimension.
-The dimension $\dim T_{N}$ of the space of $d$-variate trigonometric
-polynomials $T_{N}$ is given by $\dim T_{N} = |I_{\mathbf{N}}| =
-\prod\limits_{t=0}^{d-1} N_t$.
-
-%------------------------------------------------------------------------------
-\subsection{NDFT - nonequispaced discrete Fourier transform}
-%------------------------------------------------------------------------------
-The first problem to be addressed can be regarded as a matrix vector
-multiplication. For a finite number of given Fourier coefficients
-$\hat f_{\mathbf{k}} \in \C$, $\mathbf{k}\in I_{\mathbf{N}}$, we consider the evaluation of the
-trigonometric polynomial
-\begin{equation} \label{trigPoly}
- f\left(\mathbf{x}\right) := \sum_{\mathbf{k}\in I_{\mathbf{N}}} \hat{f}_{\mathbf{k}}
- \eim{\mathbf{k}\mathbf{x}}
-\end{equation}
-at given nonequispaced nodes $\mathbf{x}_j \in \T^d$.
-Thus, our concern is the evaluation of
-\begin{equation}\label{eq:nfft}
- f_j = f\left(\mathbf{x}_j\right) := \sum_{\mathbf{k}\in I_{\mathbf{N}}} \hat{f}_{\mathbf{k}}
- \eim{\mathbf{k}\mathbf{x}_j},
-\end{equation}
-$j=0,\hdots,M-1$.
-In matrix vector notation this reads
-\begin{equation} \label{ndft}
- \mathbf{f}=\mathbf{A} \mathbf{\hat{f}}
-\end{equation}
-where
-\begin{equation*}
- \mathbf{f}:=\left(f_j\right)_{j=0,\hdots,M-1},\quad
- \mathbf{A}:=\left(\eim{\mathbf{k}\mathbf{x}_j}\right)_{j=0,\hdots,M-1;\;\mathbf{k}\in I_{\mathbf{N}}},
- \quad
- \mathbf{\hat{f}}:=\left(\hat{f}_{\mathbf{k}}\right)_{\mathbf{k}\in I_{\mathbf{N}}}.
-\end{equation*}
-The straightforward algorithm for computing this matrix vector product,
-which is called NDFT, takes $\cO(M |I_{\mathbf{N}}|)$ arithmetical operations.
-
-A closely related matrix vector product is the adjoint NDFT
-\begin{equation*}
- \mathbf{\hat{h}}=\mathbf{A}^{\adj} \mathbf{f}, \qquad \hat h_{\mathbf{k}}=\sum_{j=0}^{M-1}
- \hat{f}_{ j} \eip{\mathbf{k}\mathbf{x}_j},
-\end{equation*}
-where $\mathbf{A}^{\adj}=\overline {\mathbf{A}}^{\top}$ denotes the conjugate transpose
-of the nonequispaced Fourier matrix $\mathbf{A}$.
-
-\subsubsection*{Equispaced nodes}
-For $d\in\N,\;N_t=N\in 2\N$, $t=0,\hdots,d-1$ and $M=N^d$ equispaced nodes
-$\mathbf{x}_{\mathbf{j}}={1 \over N}\mathbf{j}$, $\mathbf{j} \in I_{\mathbf{N}}$ the computation of
-\eqref{ndft} is known as multivariate discrete Fourier transform (DFT).
-In this special case, the input data $\hat{f}_{\mathbf{k}}$ are called discrete
-Fourier coefficients and the samples $f_{\mathbf{j}}$ can be computed by the well
-known fast Fourier transform (FFT) with only $\cO(|I_{\mathbf{N}}| \log |
- I_{\mathbf{N}}|)$ arithmetic operations.
-Furthermore, one has the inversion formula
-\begin{equation*}
- \mathbf{A} \mathbf{A}^{\adj}=\mathbf{A}^{\adj} \mathbf{A}= |I_{\mathbf{N}}| \mathbf{I},
-\end{equation*}
-which does {\bf NOT} hold true for the nonequispaced case in general.
-
-%------------------------------------------------------------------------------
-\subsection{NFFT - nonequispaced fast Fourier transform}
-\label{sec.nfft}
-%------------------------------------------------------------------------------
-For the sake of simplicity, we explain the ideas behind the NFFT for the
-one-dimensional case $d=1$ and the algorithm NFFT.
-The generalisation of the FFT is an approximative algorithm and has
-computational complexity ${\cal O}\left(N \log N + \log
- \left(1/\varepsilon\right) M\right)$, where $\varepsilon$ denotes the
-desired accuracy.
-The main idea is to use standard FFTs and a window function $\varphi$ which is
-well localised in the time/spatial domain $\mathbb{R}$ and in the frequency
-domain $\mathbb{R}$.
-Several window functions were proposed in \cite{duro93,bey95,st97,four,fesu02}.
-
-The considered problem is the fast evaluation of
-\begin{equation} \label{trigPoly1d}
- f\left(x\right) = \sum_{k\in I_N} \hat{f}_k \eim{k x}
-\end{equation}
-at arbitrary nodes $x_j \in \T,\;j=0,\hdots,M-1$.
-
-\subsubsection*{The ansatz}
-One wants to approximate the trigonometric polynomial $f$ in
-(\ref{trigPoly1d}) by a linear combination of shifted 1-periodic window
-functions $\tilde \varphi$ as
-\begin{equation}\label{s1}
- s_1\left(x\right) := \sum_{l \in I_n} g_{l} \; \tilde \varphi\left(x -
- \frac{l}{n}\right) \, .
-\end{equation}
-With the help of an oversampling factor $\sigma >1$, the FFT length is given by
-$n:=\sigma N$.
-
-\subsubsection*{The window function}
-Starting with a reasonable window function $\varphi:\R\rightarrow\R$, one
-assumes that its 1-periodic version $\tilde\varphi$, i.e.
-\begin{equation*}
- \tilde \varphi\left(x\right):=\sum_{r \in \Z} \varphi\left(x+r\right)
-\end{equation*}
-has an uniformly convergent Fourier series and is well localised in the
-time/spatial domain $\T$ and in the frequency domain $\mathbb{Z}$.
-The periodic window function $\tilde \varphi$ may be represented by its
-Fourier series
-\begin{equation*}
- \tilde \varphi\left(x\right)=
- \sum_{k\in \Z} c_k\left(\tilde\varphi\right) \eim{k x}
-\end{equation*}
-with the Fourier coefficients
-\begin{equation*}
- c_k\left( \tilde \varphi \right)
- :=\int\limits_{\T} \tilde \varphi \left(x\right) \eip{k x} \, {\rm d} x
- = \int\limits_{\mathbb{R}} \varphi \left(x\right) \eip{k x} \, {\rm d} x
- = \hat \varphi \left(k\right),\quad k\in\Z.
-\end{equation*}
-\begin{figure}[ht!]
- \begin{center}
- \begin{tabular}{ccc}
- \includegraphics[width=4.8cm,height=3.8cm]{images/window_fct1} &
- \includegraphics[width=4.8cm,height=3.8cm]{images/window_fct2} &
- \includegraphics[width=4.8cm,height=3.8cm]{images/window_fct3}
- \end{tabular}
- \end{center}
- \caption{From left to right: Gaussian window function $\varphi$, its
- 1-periodic version $\tilde \varphi$, and the integral Fourier-transform
- $\hat \varphi$ (with pass, transition, and stop band) for
- $N=24,\,\sigma=\frac{4}{3},\,n=32$.}
- \label{fig:window_fun}
- \end{figure}
-
-\subsubsection*{The first approximation - cut-off in frequency domain}
-Switching from the definition (\ref{s1}) to the frequency domain, one obtains
-\begin{equation*}
- s_1\left(x\right)
- =\sum_{k \in I_n} \hat g_k \, c_k\left(\tilde \varphi\right) \, \eim{k x}
- +\sum_{r \in \Z \backslash \left\{0\right\}} \sum_{k \in I_n} \hat g_k \,
- c_{k + n r} \left(\tilde \varphi\right) \, \eim{(k + n r)x }
-\end{equation*}
-with the discrete Fourier coefficients
-\begin{equation} \label{coeff}
- \hat g_k := \sum_{l \in I_n} g_l \, \eip{\frac{k l}{n}}.
-\end{equation}
-Comparing (\ref{trigPoly1d}) to (\ref{s1}) and assuming
-$c_k\left(\tilde\varphi\right)$ small for $|k|\ge n-\frac{N}{2}$ suggests to
-set
-\begin{equation} \label{coeff2}
- \hat g_k := \left\{
- \begin{array}{ll}
- \frac{\hat f_k}{c_k \left(\tilde \varphi\right)} & \text{for } k \in I_N
- , \\[1ex]
- 0 & \text{for } k \in I_n \backslash I_N . \\
- \end{array}
- \right.
-\end{equation}
-Then the values $g_l$ can be obtained from (\ref{coeff}) by
-\begin{equation*}
- g_l = \frac{1}{n}\sum\limits_{k \in I_N} \hat g_k \, \eim{\frac{k l}{n}}
- \qquad (l \in I_n),
-\end{equation*}
-a FFT of size $n$.
-
-This approximation causes an aliasing error.
-
-\subsubsection*{The second approximation - cut-off in time/spatial domain}
-If $\varphi$ is well localised in time/space domain $\mathbb{R}$ it can be
-approximated by a function
-\begin{equation*}
- \psi\left(x\right)=\varphi\left(x\right) \chi_{[-{m \over n},{m \over
- n}]}\left(x\right)
-\end{equation*}
-with ${\rm supp} \, \psi \, \left[-{m \over n},{m \over n}\right], \;m \ll
-n,\; m\in \N$.
-Again, one defines its one periodic version $\tilde \psi$ with compact support
-in $\T$ as
-\begin{equation*}
- \tilde \psi\left(x\right)=\sum_{r \in \Z} \psi\left(x+r\right).
-\end{equation*}
-With the help of the index set
-\begin{equation*}
- I_{n,m} \left(x_j\right) := \left\{ l \in I_n : n x_j - m \le l \le n x_j +
- m \right\}
-\end{equation*}
-an approximation to $s_1$ is defined by
-\begin{equation} \label{approx}
- s\left(x_j\right) := \sum_{l \in I_{n,m}\left(x_j\right) } g_l \,
- \tilde\psi\left(x_j - {l \over n}\right) \, .
-\end{equation}
-Note, that for fixed $x_j\in \T$, the above sum contains at most
-$(2m+1)$ nonzero summands.
-
-This approximation causes a truncation error.
-
-\subsubsection*{The case $d>1$}
-Starting with the original problem of evaluating the multivariate
-trigonometric polynomial in (\ref{trigPoly}) one has to do a few
-generalisations.
-The window function is given by
-\begin{equation*}
- \varphi\left(\mathbf{x}\right):=\varphi_0\left(x_0\right)
- \varphi_1\left(x_1\right) \hdots \varphi_{d-1}\left(x_{d-1}\right)
-\end{equation*}
-where $\varphi_t$ is an univariate window function.
-Thus, a simple consequence is
-\begin{equation*}
- c_{\mathbf{k}}\left(\tilde \varphi\right)
- = c_{k_0}\left(\tilde \varphi_0\right) c_{k_1}\left(\tilde \varphi_1\right)
- \hdots c_{k_{d-1}}\left(\tilde \varphi_{d-1}\right).
-\end{equation*}
-The ansatz is generalised to
-\begin{equation*}
- s_1\left(\mathbf{x}\right) := \sum_{\mathbf{l} \in I_{\mathbf{n}}} g_{\mathbf{l}} \; \tilde
- \varphi\left(\mathbf{x} - \mathbf{n}^{-1}\odot\mathbf{l}\right),
-\end{equation*}
-where the FFT size is given by $\mathbf{n}:=\mathbf{\sigma} \odot \mathbf{N}$ and the
-oversampling factors by
-$\mathbf{\sigma}=\left(\sigma_0,\hdots,\sigma_{d-1}\right)^{\top}$.
-Along the lines of (\ref{coeff2}) one defines
-\begin{equation*}
- \hat g_{\mathbf{k}} := \left\{
- \begin{array}{ll}
- \frac{\hat f_{\mathbf{k}}}{c_{\mathbf{k}} \left(\tilde \varphi\right)} & \text{for
- } \mathbf{k} \in I_{\mathbf{N}} , \\[1ex]
- 0 & \text{for } \mathbf{k} \in I_{\mathbf{n}} \backslash I_{\mathbf{N}} . \\
- \end{array}
- \right.
-\end{equation*}
-The values $g_{\mathbf{l}}$ can be obtained by a (multivariate) FFT of size $n_0
-\times n_1 \times \hdots \times n_{d-1}$ as
-\begin{equation*}
- g_{\mathbf{l}} = \frac{1}{\left|I_{\mathbf{n}}\right|}\sum\limits_{\mathbf{k} \in
- I_{\mathbf{N}}} \hat g_{\mathbf{k}} \, \eim{\mathbf{k} \left(\mathbf{n}^{-1}\odot \mathbf{l}\right)},
- \quad \mathbf{l} \in I_{\mathbf{n}}.
-\end{equation*}
-Using the compactly supported function $\psi\left(\mathbf{x}\right)=\varphi\left(\mathbf{x}\right)\chi_{[-{m \over n},{m \over
- n}]^d}\left(\mathbf{x}\right)$,
-one obtains
-\begin{equation*}
- s\left(\mathbf{x}_j\right) := \sum_{\mathbf{l} \in I_{\mathbf{n},m}\left(\mathbf{x}_j\right) }
- g_{\mathbf{l}} \, \tilde\psi\left(\mathbf{x}_j - \mathbf{n}^{-1}\odot\mathbf{l}\right) \, ,
-\end{equation*}
-where $\tilde \psi$ again denotes the one periodic version of $\psi$ and the
-multi-index set is given by
-\begin{equation*}
- I_{\mathbf{n},m} \left(\mathbf{x}_j\right) := \left\{ \mathbf{l} \in I_{\mathbf{n}} : \mathbf{n}
- \odot \mathbf{x}_j - m \mathbf{1} \le \mathbf{l} \le \mathbf{n} \odot \mathbf{x}_j + m
- \mathbf{1}\right\}\,.
-\end{equation*}
-
-\subsubsection*{The algorithm}
-In summary, the following Algorithm~\ref{algo:nfft} is obtained for the fast
-computation of \eqref{ndft} with ${\cal O} \left(\left|I_{\mathbf{n}}\right| \log
- \left|I_{\mathbf{n}}\right| + m M\right)$ arithmetic operations.
-\begin{algorithm}[ht]
- \caption{\tt NFFT\label{algo:nfft}}
- Input: $d,M \in \N$, $\mathbf{N}\in 2\N^d$\\
- {\invisible{Input:}} ${\mathbf{x}}_j\in [-\frac{1}{2},\frac{1}{2}]^d,\;
- j=0,\hdots,M-1$, and $\hat f_{\mathbf{k}}\in \C,\; \mathbf{k} \in I_{\mathbf{N}}$,\\[1ex]
- %{\invisible{Input:}} ($\mathbf{\sigma} \in \mathbb{R}^d ,\;\sigma_t > 1,\;t=0,\hdots,d-1$, $m \in \N$, flags)\\[1ex]
- %Precomputation: $\mathbf{n} := \sigma \odot \mathbf{N}$,\\
- %{\invisible{Precomputation:}} $c_{\mathbf{k}}\left(\tilde \varphi\right), \; \mathbf{k} \in I_{\mathbf{N}}$
- %if the flag (see Section \ref{sect:parameters}) {\tt PRE\_PHI\_HUT} is set,\\
- %{\invisible{Precomputation:}} $\tilde\psi\left({\mathbf{x}}_j - \mathbf{n}^{-1}\odot \mathbf{l}\right),
- %\, j=0,\hdots,M-1 , \, \mathbf{l} \in I_{\mathbf{n},\mathbf{m}} \left({\mathbf{x}}_j\right)$ if {\tt PRE\_PSI} is set.
- \begin{algorithmic}[1]
- \topsep=1.5ex
- \itemsep=1.5ex
-
- \STATE For $\mathbf{k} \in I_{\mathbf{N}}$ compute
- \begin{equation*}
- \hat g_{\mathbf{k}} :=\frac{\hat f_{\mathbf{k}}}{ \left|I_{\mathbf{n}}\right| c_{\mathbf{k}}
- \left(\tilde \varphi\right)}.
- \end{equation*}
-
- \STATE For $\mathbf{l} \in I_{\mathbf{n}}$ compute by $d$-variate {\rm FFT}
- \begin{equation*}
- g_{\mathbf{l}} := \sum\limits_{\mathbf{k} \in I_{\mathbf{N}} } \hat g_{\mathbf{k}} \,
- \eim{\mathbf{k} \left(\mathbf{n}^{-1}\odot \mathbf{l}\right)}.
- \end{equation*}
-
- \STATE For $j=0,\hdots,M-1$ compute
- \begin{equation*}
- f_j := \sum\limits_{\mathbf{l} \in I_{\mathbf{n},m} \left({\mathbf{x}}_j\right)
- } g_{\mathbf{l}} \, \tilde\psi\left({\mathbf{x}}_j - \mathbf{n}^{-1}\odot \mathbf{l}\right).
- \end{equation*}
- \end{algorithmic}
- Output: approximate values $f_j,\;j=0,\hdots,M-1$.\\
- Complexity: ${\cal O} (|\mathbf{N}| \log |\mathbf{N}|+M)$.
-\end{algorithm}
-
-Algorithm~\ref{algo:nfft} reads in matrix vector notation as
-\begin{equation*}
- \mathbf{A} \mathbf{\hat{f}} \approx \mathbf{B} \mathbf{B} \mathbf{B} \mathbf{\hat{f}},
-\end{equation*}
-where $\mathbf{B}$ denotes the real $M \times \left|I_{\mathbf{n}}\right|$ sparse matrix
-\begin{equation*} \label{spB}
- \mathbf{B} := \left( \tilde\psi\left(\mathbf{x}_j - \mathbf{n}^{-1}\odot\mathbf{l}\right)
- \right)_{j=0,\hdots,M-1;\, \mathbf{l}\in I_{\mathbf{n}}},
-\end{equation*}
-where $\mathbf{B}$ is the Fourier matrix of size $\left|I_{\mathbf{n}}\right| \times
-\left|I_{\mathbf{n}}\right|$, and where $\mathbf{B}$ is the real $\left|I_{\mathbf{n}}\right|
-\times |I_{\mathbf{N}}|$ 'diagonal' matrix
-\begin{equation*}
- \mathbf{B} := \bigotimes_{t=0}^{d-1} \left(\mathbf{O}_t \, | \, \mbox{diag}\left(1/\,
- c_{k_t}\left(\tilde \varphi_t\right)\right)_{k_t\in I_{N_t}} \, | \,
- \mathbf{O}_t \right)^{\rm {T}}
-\end{equation*}
-with zero matrices $\mathbf{O}_t$ of size $N_t \times \frac{n_t-N_t}{2}$.
-
-The corresponding computation of the adjoint matrix vector product reads as
-\begin{equation*}
- \mathbf{A}^{\adj} \mathbf{\hat{f}} \approx \mathbf{B}^{\top} \mathbf{B}^{\adj} \mathbf{B}^{\top}
- \mathbf{\hat{f}} \, .
-\end{equation*}
-With the help of the transposed index set
-\begin{equation*}
- I_{\mathbf{n},m}^{\top}\left(\mathbf{l}\right) := \left\{j=0,\hdots,M-1 : \mathbf{l}-m
- \mathbf{1} \le \mathbf{n} \odot \mathbf{x}_j \le \mathbf{l}+m \mathbf{1}\right\},
-\end{equation*}
-one obtains Algorithm~\ref{algo:nfftH} for the adjoint NFFT.
-\begin{algorithm}[htbp]
- \caption{\tt NFFT$^{\adj}$\label{algo:nfftH}}
- Input: $d,M \in \N$, $\mathbf{N}\in 2\N^d$\\
- {\invisible{Input:}} ${\mathbf{x}}_j\in [-\frac{1}{2},\frac{1}{2}]^d,\; j=0,\hdots,M-1$, and $f_j\in \C,\; j=0,\hdots,M-1$,\\[1ex]
- %Input: $\mathbf{N}\in \N^d$, $\mathbf{\sigma} \in \mathbb{R}^d ,\;\sigma_t > 1,\;t=0,\hdots,d-1$, $M \in \N$, $\mathbf{m} \in \N^d$\\
- %{\invisible{Input:}} ${\mathbf{x}}_j\in {\T}^d,\; j=0,\hdots,M-1$, and $f_j \in \C,\; j=0,\hdots,M-1$\\[1ex]
- %Precomputation: $\mathbf{n} := \sigma \odot \mathbf{N}$,\\
- %{\invisible{Precomputation:}} $c_{\mathbf{k}}\left(\tilde \varphi\right), \; \mathbf{k} \in I_{\mathbf{N}}$
- %if the flag (see Section \ref{sect:parameters}) {\tt PRE\_PHI\_HUT} is set,\\
- %{\invisible{Precomputation:}} $\tilde\psi\left({\mathbf{x}}_j - \mathbf{n}^{-1}\odot \mathbf{l}\right),
- %\, j=0,\hdots,M-1 , \, \mathbf{l} \in I_{\mathbf{n},\mathbf{m}} \left({\mathbf{x}}_j\right)$ if {\tt PRE\_PSI} is set.
- \begin{algorithmic}[1]
- \topsep=1.5ex
- \itemsep=1.5ex
-
- \STATE For $\mathbf{l} \in I_{\mathbf{n}}$ compute
- \begin{equation*}
- g_{\mathbf{l}} := \sum\limits_{j \in I_{\mathbf{n},m}^{\top} (\mathbf{l}) } f_j \,
- \tilde\psi\left({\mathbf{x}}_j - \mathbf{n}^{-1}\odot \mathbf{l}\right)\, .
- \end{equation*}
-
- \STATE For $\mathbf{k} \in I_{\mathbf{N}}$ compute by $d$-variate (backward) {\rm FFT}
- \begin{equation*}
- \hat g_{\mathbf{k}} := \sum\limits_{\mathbf{l} \in I_{\mathbf{n}}}
- g_{\mathbf{l}} \, {\rm e}^{+2 \pi {\rm i} \mathbf{k} \left(\mathbf{n}^{-1} \odot
- \mathbf{l}\right)}.
- \end{equation*}
-
- \STATE For $\mathbf{k} \in I_{\mathbf{N}}$ compute
- \begin{equation*}
- \hat h_{\mathbf{k}} := \frac{\hat g_{\mathbf{k}}}{\left|I_{\mathbf{n}}\right|
- c_{\mathbf{k}}(\tilde \varphi)}.
- \end{equation*}
- \end{algorithmic}
- Output: approximate values $\hat h_{\mathbf{k}},\;\mathbf{k} \in I_{\mathbf{N}}$.\\
- Complexity: ${\cal O} (|\mathbf{N}| \log |\mathbf{N}|+M)$.
-\end{algorithm}
-Due to the characterisation of the nonzero elements of the matrix $\mathbf{B}$,
-i.e.,
-\begin{equation*}
- \bigcup\limits_{j=0}^{M-1} j \times I_{\mathbf{n},m} \left({\mathbf{x}}_j\right)=
- \bigcup\limits_{\mathbf{l} \in I_{\mathbf{n}}} I_{\mathbf{n},m}^{\top}\left(\mathbf{l}\right)
- \times \mathbf{l}.
-\end{equation*}
-the multiplication with the sparse matrix $\mathbf{B}^{\top}$ is implemented in a
-'transposed' way in the library, summation as outer loop and only using the
-multi-index sets $I_{\mathbf{n},m} \left({\mathbf{x}}_j\right)$.
-
-%------------------------------------------------------------------------------
-\subsection{Available window functions and evaluation techniques}
-\label{sect:windows}
-%------------------------------------------------------------------------------
-Again, only the case $d=1$ is presented.
-To keep the aliasing error and the truncation error small, several functions
-$\varphi$ with good localisation in time and frequency domain were proposed,
-e.g. the (dilated) {\it Gaussian} \cite{duro93, st97, DuSc}
-\begin{eqnarray} \label{gaussian}
-\varphi\left(x\right)
-&=&
-\left(\pi b\right)^{-1/2} \,
-{\rm e}^{-\frac{\left(nx\right)^2}{b}}
-\qquad
-\left(b := \frac{2\sigma}{2 \sigma -1} \frac{m}{\pi} \right),\\
-\hat \varphi \left(k\right)
-&=&
-\frac{1}{n} \, {\rm e}^{-b\left(\frac{\pi k}{n}\right)^2} , \nonumber
-\end{eqnarray}
-(dilated) {\it cardinal central $B$--splines} \cite{bey95, st97}
-\begin{eqnarray} \label{bspline}
-\varphi\left(x\right)
-&=&
-M_{2m}\left(n x\right),\\ \nonumber
-\hat \varphi \left(k\right)
-&=&
-\frac{1}{n} \sinc^{2m} \left( k \pi/n\right),
-\end{eqnarray}
-where $M_{2m}$ denotes the centred cardinal $B$--Spline of order $2m$,\\
-(dilated) {\it Sinc functions} \cite{pottshabil}
-\begin{eqnarray} \label{sinc}
-\varphi\left(x\right)
-&=&
-\frac{N\left(2\sigma-1\right)}{2m} \sinc^{2m} \left(\frac{\left(\pi N x \left(2\sigma-1\right)\right)}{2m} \right),\\
-\hat \varphi \left(k\right)
-&=&
-M_{2m}\left(\frac{2mk}{\left(2\sigma-1\right)N}\right)
-\nonumber
-\end{eqnarray}
-and
-(dilated) {\it Kaiser--Bessel functions} \cite{Ja, four}
-\begin{eqnarray} \label{kaiser}
-\varphi\left(x\right)
-&=& \frac{1}{\pi} \left\{
-\ds \begin{array}{ll}
-\ds \frac{\sinh\left(b
-\sqrt{m^2 - n^2 x^2}\right)}{\sqrt{m^2 - n^2 x^2}}
-& \mbox{for } |x| \le \frac{m}{n}
-\qquad
-\left(b := \pi \left(2 - \frac{1}{\sigma} \right) \right) ,\\[4ex]
-\ds \frac{\sin\left(b
-\sqrt{n^2 x^2 - m^2}\right)}{\sqrt{n^2 x^2-m^2}}
-& \mbox{otherwise},
- \end{array}
-\right.
-\\[1ex]
-\hat \varphi \left(k\right)
-&=& \frac{1}{n} \left\{
-\ds \begin{array}{cl}
- \, I_0 \left(m \sqrt{b^2 - \left(2 \pi k/n \right)^2} \right)
-&
-{\rm for} \; \; k= -n \left(1-\frac{1}{2\sigma} \right), \ldots,
-n \left(1-\frac{1}{2\sigma}\right),\\
-0&{\rm otherwise},
- \end{array}
-\right.
-\nonumber
-\end{eqnarray}
-where $I_0$ denotes the {\it modified zero--order Bessel function}.
-For these functions $\varphi$ it has been proven that
-$$
-|f\left(\mathbf{x}_j\right) - s\left(\mathbf{x}_j\right)| \le C\left(\sigma,m\right) \|\mathbf{\hat{f}}\|_1
-$$
-where
-$$
-C\left(\sigma,m\right) :=
-\left\{
-\begin{array}{ll}
-4 \, \e^{-m \pi \left(1-1/\left(2\sigma-1\right)\right)}& {\rm for} \; \left(\ref{gaussian}\right) ,\\
-4 \, \left(\frac{1}{2\sigma -1} \right)^{2m}& {\rm for} \; \left(\ref{bspline}\right), \\[1ex]
-\frac{1}{m-1}\left(\frac{2}{\sigma^{2m}}+\left(\frac{\sigma}{2\sigma-1}\right)^{2m}\right)&
-{\rm for} \; \left(\ref{sinc}\right), \\[1ex]
-4\pi\left(\sqrt{m}+m\right)\sqrt[4]{1-\frac{1}{\sigma}} \, \e^{-2 \pi m \sqrt{1-1/\sigma}} & {\rm for} \; \left(\ref{kaiser}\right).
-\end{array}
-\right.
-$$
-Thus, for fixed $\sigma >1$, the approximation error introduced by the NFFT
-decays exponentially with the number $m$ of summands in (\ref{approx}).
-Using the tensor product approach the above error estimates can be generalised
-for the multivariate setting \cite{elst}.
-On the other hand, the complexity of the NFFT increases with $m$.
-
-In the following, we suggest different methods for the compressed storage and
-application of the matrix $\mathbf{B}$ which are all available within our NFFT
-library by choosing particular flags in a simple way during the initialisation
-phase.
-These methods do not yield a different asymptotic performance but rather yield
-a lower constant in the amount of computation.
-
-\subsubsection*{Fully precomputed window function}
-One possibility is to precompute all values $\varphi(\mathbf{x}_j -
-\mathbf{n}^{-1}\odot\mathbf{l})$ for $j=0,\hdots,M-1$ and $\mathbf{l}\in I_{\mathbf{n},m} (\mathbf{x}_j)$
-explicitly.
-Thus, one has to store the large amount of $(2m+1)^d M$ real numbers but uses
-no extra floating point operations during the matrix vector multiplication
-beside the necessary $(2m+1)^d M$ flops.
-Furthermore, we store for this method explicitly the row and column for each
-nonzero entry of the matrix $\mathbf{B}$.
-This method, included by the flag {\tt PRE\_FULL\_PSI}, is the fastest procedure
-but can only be used if enough main memory is available.
-
-\subsubsection*{Tensor product based precomputation}
-Using the fact that the window functions are built as tensor products one can
-store $\varphi_t((\mathbf{x}_j)_t - \frac{l_t}{n_t})$ for
-$j=0,\hdots,M-1$, $t=0,\hdots,d-1$, and $l_t\in I_{n_t,m} ((\mathbf{x}_j)_t)$
-where $(\mathbf{x}_j)_t$ denotes the $t$-th component of the $j$-th node.
-This method uses a medium amount of memory to store $d(2m+1)M$ real numbers
-in total.
-However, one has to carry out for each node at most $2(2m+1)^d$ extra
-multiplications to compute from the factors the multivariate window function
-$\varphi(\mathbf{x}_j - \mathbf{n}^{-1}\odot\mathbf{l})$ for $\mathbf{l}\in I_{\mathbf{n},m}(\mathbf{x}_j)$.
-%where a naive version would take $d(2m+1)^d$ multiplications.
-Note, that this technique is available for every window function discussed
-here and can be used by means of the flag {\tt PRE\_PSI} which is also the
-default method within our software library.
-
-\subsubsection*{Linear interpolation from a lookup table}
-For a large number of nodes $M$, the amount of memory can by further reduced
-by the use of lookup table techniques.
-For a recent example within the framework of gridding see \cite{BeNiPa05}.
-We suggest to precompute from the even window function the equidistant samples
-$\varphi_t(\frac{rm}{Kn_t})$ for $t=0,\hdots,d-1$ and $r=0,\hdots,K,\;K\in\N$
-and then compute for the actual node $\mathbf{x}_j$ during the NFFT the values
-$\varphi_t((\mathbf{x}_j)_t - \frac{l_t}{n_t})$ for $t=0,\hdots,d-1$ and $l_t\in
-I_{n_t,m} ((\mathbf{x}_j)_t)$ by means of the linear interpolation from its two
-neighbouring precomputed samples.
-
-This method needs only a storage of $dK$ real numbers in total where $K$
-depends solely on the target accuracy but neither on the number of nodes $M$
-nor on the multidegree $\mathbf{N}$.
-Choosing $K$ to be a multiple of $m$, we further reduce the computational
-costs during the interpolation since the distance from $(\mathbf{x}_j)_t-
-\frac{l_t}{n_t}$ to the two neighbouring interpolation nodes and hence the
-interpolation weights remain the same for all $l_t\in I_{n_t,m}((
-\mathbf{x}_j)_t)$.
-This method requires $2(2m+1)^d$ extra multiplications per node and is
-used within the NFFT by the flag {\tt PRE\_LIN\_PSI}. Error estimates for this approximation are given in \cite{KuPo06}.
-
-\subsubsection*{Fast Gaussian gridding}
-Two useful properties of the Gaussian window function \eqref{gaussian} within
-the present framework were recently reviewed in \cite{GrLe04}.
-Beside its tensor product structure for $d>1$, which also holds for all other
-window functions, it is remarkable that the number of evaluations of the form
-{\tt exp()} can be greatly decreased.
-More precisely, for $d=1$ and a fixed node $x_j$ the evaluations of
-$\varphi(x_j-\frac{l'}{n})$, $l'\in I_{n,m}(x_j)$, can be reduced by the
-splitting
-\begin{equation*}
- \sqrt{\pi b}\varphi\left(x_j-\frac{l'}{n}\right)
- =\e^{-\frac{(nx_j-l')^2}{b}}
- =\e^{-\frac{(nx_j-u)^2}{b}}
- \left(\e^{-\frac{2(nx_j-u)}{b}}\right)^l
- \e^{-\frac{l^2}{b}}\,.
-\end{equation*}
-where $u=\min I_{n,m}(x_j)$ and $l=0,\hdots,2m$.
-Note, that the first factor and the exponential within the brackets are
-constant for each fixed node $x_j$.
-Once, we evaluate the second exponential, its $l$-th power can be computed
-consecutively by multiplications only.
-Furthermore, the last exponential is independent of $x_j$ and these $2m+1$
-values are computed only once within the NFFT and their amount is negligible.
-Thus, it is sufficient to store or evaluate $2M$ exponentials for $d=1$.
-The case $d>1$ uses $2dM$ storages or evaluations by using the general tensor
-product structure.
-This method is employed by the flags {\tt FG\_PSI} and {\tt PRE\_FG\_PSI} for
-the evaluation or storage of $2d$ exponentials per node, respectively.
-
-\subsubsection*{No precomputation of the window function}
-The last considered method uses no precomputation at all, but rather evaluates
-the univariate window function $(2m+1)^d M$ times.
-Thus, the computational time depends on how fast we can evaluate the
-particular window function.
-However, no additional storage is necessary which suits this approach whenever
-the problem size reaches the memory limits of the used computer.
-
-%------------------------------------------------------------------------------
-\subsection{Further NFFT approaches}
-%------------------------------------------------------------------------------
-Several papers have described fast approximations for the NFFT.
-Common names for NFFT are
-{\it non-uniform fast Fourier transform} \cite{fesu02},
-{\it generalised fast Fourier transform} \cite{duro93},
-{\it unequally-spaced fast Fourier transform} \cite{bey95},
-{\it fast approximate Fourier transforms for irregularly spaced data} \cite{ware98},
-{\it non-equispaced fast Fourier transform} \cite{Fou02} or
-{\it gridding} \cite{scsc, Ja, Pe}.
-
-In various papers, different window functions were considered, e.g. Gaussian
-pulse tapered with a Hanning window in \cite{DuSc}, Gaussian kernels combined
-with Sinc kernels in \cite{Pe}, and special optimised windows in
-\cite{Ja,DuSc}.
-
-A simple but nevertheless fast scheme for the computation of \eqref{ndft} in
-the univariate case $d=1$ is presented in \cite{AnDa96}.
-This approach uses for each node $x_j \in [-\frac{1}{2},\frac{1}{2})$ a $m$-th
-order Taylor expansion of the trigonometric polynomial in \eqref{trigPoly}
-about the nearest neighbouring point on the oversampled equispaced lattice
-$\{n^{-1} k - \frac{1}{2}\}_{k=0,\hdots,n-1}$ where again $n=\sigma N,\,
-\sigma\gg 1$.
-Besides its simple structure and only $\cO(N\log N+M)$ arithmetic operations,
-this algorithm utilises $m$ FFTs of size $n$ compared to only one in the NFFT
-approach, uses a medium amount of extra memory, and is not suited for highly
-accurate computations, see \cite{KuPo06}.
-Furthermore, its extension to higher dimensions has not been considered so
-far.
-
-Another approach for the univariate case $d=1$ is considered in \cite{DuRo95}
-and based on a Lagrange interpolation technique.
-After taking a $N$-point FFT of the vector $\mathbf{\hat{f}}$ in \eqref{ndft} one
-uses an exact polynomial interpolation scheme to obtain the values of the
-trigonometric polynomial $f$ at the nonequispaced nodes $x_j$.
-Here, the time consuming part is the exact polynomial interpolation scheme
-which can however be realised fast in an approximate way by means of the fast
-multipole method.
-This approach is appealing since it allows also for the inverse transform.
-Nevertheless, numerical experiments in \cite{DuRo95} showed that this
-approach is far more time consuming than Algorithm \ref{algo:nfft} and the
-inversion can only be computed in a stable way for almost equispaced nodes
-\cite{DuRo95}.
-
-Furthermore, special approaches based on scaling vectors \cite{NgLi99}, based
-on minimising the Frobenius norm of certain error matrices \cite{st01} or
-based on min-max interpolation \cite{fesu02} are proposed.
-While these approaches gain some accuracy for the Gaussian or B-Spline
-windows, no reasonable improvement is obtained for the Kaiser-Bessel window
-function.
-
-For comparison of different approaches, we refer to
-\cite{ware98,st01,fesu02,KuPo06}.
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\clearpage
-\section{Generalisations and inversion} \label{sect:gen}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-We consider generalisations of the NFFT for
-%------------------------------------------------------------------------------
-\subsection{NNFFT - nonequispaced in time and frequency fast Fourier
- transform}
-%------------------------------------------------------------------------------
-
-Now we are interested in the computation of
-\begin{equation*}
- f_j= \sum_{k=0}^{N-1} \hat f_k \eim{\left(\mathbf{v}_k \odot \mathbf{N}\right))\mathbf{x}_j}
-\end{equation*}
-for $j =0,\hdots,M-1$, $\mathbf{v}_k, \mathbf{x}_j \in \T^d$, and $\hat f_k \in \C$, where $\mathbf{N}\in \N^d$
-denotes the "nonharmonic" bandwidth.
-The corresponding fast algorithm is known as {\it fast Fourier transform for
-nonequispaced data in space {\bf and} frequency domain} (NNFFT) \cite{duro93,elst,postta01} or as type 3 nonuniform FFT \cite{LeGr05}.
-
-A straightforward evaluation of this sum with the standard NFFT is not
-possible, since the samples in neither domain are equispaced.
-However, an so-called NNFFT was first suggested in \cite{duro93} and later
-studied in more depth in \cite{elst}, which permits the fast calculation of
-the Fourier transform of a vector of nonequispaced samples at a vector of
-nonequispaced positions.
-It constitutes a combination of the standard NFFT and its adjoint see also
-\cite{postta01}.
-
-%------------------------------------------------------------------------------
-\subsection{NFCT/NFST - nonequispaced fast (co)sine transform}
-%------------------------------------------------------------------------------
-
-Let nonequispaced nodes $\mathbf{x}_j \in [0,\frac{1}{2}]^d$ and frequencies
-$\mathbf{k}$ in the index sets
-\begin{align*}
- I_{\mathbf{N}}^C &:= \left\{ \mathbf{k}=\left(k_t\right)_{t=0,\hdots,d-1} \in \Z^d: 0
- \le k_t < N_t ,\;t=0,\hdots,d-1\right\},\\
- I_{\mathbf{N}}^S &:= \left\{ \mathbf{k}=\left(k_t\right)_{t=0,\hdots,d-1} \in \Z^d: 1
- \le k_t < N_t ,\;t=0,\hdots,d-1\right\}
-\end{align*}
-be given.
-For notational convenience let furthermore $\cos(\mathbf{k} \odot \mathbf{x}) :=
-\cos(k_0 x_0) \cdot \hdots \cdot \cos(k_{d-1} x_{d-1})$ and $\sin(\mathbf{k} \odot
-\mathbf{x}) := \sin(k_0 x_0) \cdot \hdots \cdot \sin(k_{d-1} x_{d-1})$.
-
-The {\it nonequispaced discrete cosine} and {\it sine transforms} are given by
-\begin{align*}
- f\left(\mathbf{x}_j\right) &= \sum_{\mathbf{k}\in I_{\mathbf{N}}^C} \hat{f}_{\mathbf{k}}
- \cos(2\pi(\mathbf{k}\odot\mathbf{x}_j)),\\
- f\left(\mathbf{x}_j\right) &= \sum_{\mathbf{k}\in I_{\mathbf{N}}^S} \hat{f}_{\mathbf{k}}
- \sin(2\pi(\mathbf{k}\odot\mathbf{x}_j)),
-\end{align*}
-for $j=0,\hdots,M-1$ and real coefficients $\hat f_{\mathbf{k}} \in \R$,
-respectively.
-
-The straight forward algorithm of this matrix vector product, which is called
-ndct and ndst, takes $\cO(M |I_{\mathbf{N}}^C|)$ and $\cO(M |I_{\mathbf{N}}^C|)$
-arithmetical operations.
-For these real transforms the adjoint transforms coincide with the ordinary
-transposed matrix vector products.
-Our fast approach is based on the NFFT and seems to be easier than the
-Chebyshev transform based derivation in \cite{po01} and faster than the
-algorithms in \cite{tili00} which still use FFTs.
-Instead of FFTs we use fast algorithms for the discrete cosine transform
-(DCT--I) and for the discrete sine transform (DST--I).
-For details we refer to \cite{fepo02}.
-
-%------------------------------------------------------------------------------
-\subsection{NSFFT - nonequispaced sparse fast Fourier transform}
-%------------------------------------------------------------------------------
-
-We consider the fast evaluation of trigonometric polynomials from so-called
-hyperbolic crosses.
-In multivariate approximation one has to deal with the so called `curse of
-dimensionality', i.e., the number of degrees of freedom for representing an
-approximation of a function with a prescribed accuracy depends exponentially
-on the dimensionality of the considered problem.
-This obstacle can be circumvented to some extend by the interpolation on
-sparse grids and the related approximation on hyperbolic cross points in the
-Fourier domain, see, e.g., \cite{Zeng91,Spr00,BuZe04}.
-
-Instead of approximating a Fourier series on the standard tensor product grid
-$I_{\mathbf{(N,\hdots,N)}}$ with $\cO(N^d)$ degrees of freedom, it can be
-approximated with only $\cO(N \log^{d-1} N)$ degrees of freedom from the
-hyperbolic cross
-\begin{equation*}
- H_N^d := \bigcup_{\mathbf{N}\in\N^d,\, |I_{\mathbf{N}}|=N} I_{\mathbf{N}},
-\end{equation*}
-where $N=2^{J+2},\;J\in\NZ$ and we allow $N_t=1$ in the $t$-th coordinate in
-the definition of $I_{\mathbf{N}}$.
-The approximation error in a suitable norm (dominated mixed smoothness) can be shown to deteriorate only by a factor of $\log^{d-1} N$,
-cf. \cite{Spr00}.
-\begin{figure}[ht]
- \centering
- \begin{tabular}{cccc}
- \includegraphics[scale=0.6]{images/sparse2D_0}&
- \includegraphics[scale=0.6]{images/sparse2D_1}&
- \includegraphics[scale=0.6]{images/sparse2D_2}&
- \includegraphics[scale=0.6]{images/sparse2D_3}
- \end{tabular}
- \caption{Hyperbolic cross points for $d=2$ and $J=0,\ldots,3$.
- \label{sparse_grid}}
-\end{figure}
-
-The {\em nonequispaced sparse discrete Fourier transform} (NSDFT) is the
-evaluation of
-\begin{equation*}
- f\left(\mathbf{x}_j\right) = \sum_{\mathbf{k}\in H_N^d}
- \hat f_{\mathbf{k}} \eim{\mathbf{k} \mathbf{x}_j}
-\end{equation*}
-for given Fourier coefficients $\hat f_{\mathbf{k}}\in\C$ and nodes $\mathbf{x}_j\in
-\T^d$.
-The number of used arithmetical operations is $\cO(M N\log^{d-1}N)$.
-This is reduced by our fast schemes to $\cO(N\log^2 N+M)$ for $d=2$ and
-$\cO(N^{3/2} \log N+M)$ for $d=3$, see \cite{FeKuPo} for details.
-
-%------------------------------------------------------------------------------
-\subsection{FPT - fast polynomial transform} \label{sect:fpt}
-%------------------------------------------------------------------------------
-A \emph{discrete polynomial transform} (DPT) is a generalisation of the DFT
-from the basis of complex exponentials $\mathrm{e}^{\mathrm{i} k x}$ to an
-arbitrary systems of algebraic polynomials satisfying a three-term recurrence
-relation.
-More precisely, let $P_{0},P_{1},\hdots:[-1,1]\rightarrow\R$ be a sequence of
-polynomials that satisfies a three-term recurrence relation
-\begin{equation*}
- P_{k+1}(x) = (\alpha_{k} x + \beta_{k})P_{k}(x) + \gamma_{k} P_{k-1}(x),
-\end{equation*}
-with $\alpha_{k} \neq 0$, $k\ge 0$, $P_{0}(x) := 1$, and $P_{-1}(x) := 0$.
-Clearly, every $P_{k}$ is a polynomial of exact degree $k$ and typical
-examples are the classical orthogonal Jacobi polynomials
-$P_{k}^{(\alpha,\beta)}$.
-
-Now, let $f:[-1,1]\rightarrow\R$ be a polynomial of degree $N\in\N$ given by
-the finite linear combination
-\begin{equation*}
- f(x) = \sum_{k=0}^{N} a_{k} P_{k}(x).
-\end{equation*}
-The discrete polynomial transform (DPT) and its fast version, the \emph{fast
- polynomial transform} (FPT), are the transformation of the coefficients
-$a_{k}$ into coefficients $b_{k}$ from the orthogonal expansion of $f$ into
-the basis of Chebyshev polynomials of the first kind $T_{k}(x) := \cos(k
- \arccos x)$, i.e.,
-\begin{equation*}
- f(x) = \sum_{k=0}^N b_{k} T_{k}(x).
-\end{equation*}
-A direct algorithm for computing this transformation needs $\cO(N^2)$
-arithmetic operations.
-The FPT algorithm implemented in the NFFT library follows the approach in
-\cite{postta98} and is based on the idea of using the three-term-recurrence
-relation repeatedly.
-Together with a method for fast polynomial multiplication in the Chebyshev
-basis and a cascade-like summation process, this yields a method for computing
-the polynomial transform with $\cO(N \log^2 N)$ arithmetic operations.
-For more detailed information, we refer the reader to
-\cite{drhe, drhero, postta98, po01, KePo06} and the references therein.
-
-%------------------------------------------------------------------------------
-\subsection{NFSFT - nonequispaced fast spherical Fourier transform}
-\label{sect:gen:nfsft}
-%------------------------------------------------------------------------------
-Fourier analysis on the sphere has, despite other fields, practical
-relevance in tomography, geophysics, seismology, meteorology and
-crystallography. In analogy to the complex exponentials
-$\mathrm{e}^{\mathrm{i} k x}$ on the torus, the spherical harmonics
-form the orthogonal Fourier basis with respect to the usual inner product on the sphere.
-
-\subsubsection*{Spherical coordinates}
-Every point in $\R^3$ can be described in spherical coordinates by a vector
-$(r,\vartheta,\varphi)^{\top}$ with the radius $r\ge 0$ and two angles
-$\vartheta \in [0,\pi]$, $\varphi \in [0,2\pi)$.
-We denote by $\S^2$ the two-dimensional unit sphere embedded into $\R^3$,
-i.e.
-\begin{equation*}
- \S^2 := \left\{\mathbf{x} \in \R^{3}:\; \|\mathbf{x}\|_2=1\right\}
-\end{equation*}
-and identify a point from $\S^2$ with the corresponding vector
-$(\vartheta,\varphi)^{\top}$.
-The spherical coordinate system is illustrated in Figure \ref{sphere}.
-\begin{figure}[tb]
- \centering
- \includegraphics[width=0.60\textwidth]{images/sphere}
- \caption{The spherical coordinate system in $\R^3$: Every point $\boldsymbol{\xi}$ on a
- sphere with radius $r$ centred at the origin can be described by angles
- $\vartheta \in [0,\pi]$, $\varphi \in [0,2\pi)$ and the radius $r \in \mathbb{R}^+$.
- For $\vartheta = 0$ or $\vartheta = \pi$ the point $\boldsymbol{\xi}$ coincides with the
- North or the South pole, respectively.} \label{sphere}
-\end{figure}
-
-\subsubsection*{Legendre polynomials and associated Legendre functions}
-The Legendre polynomials $P_k : [-1,1]\rightarrow \R$, $k\ge 0$, as
-classical orthogonal polynomials are given by their corresponding Rodrigues
-formula
-\begin{equation*}
- P_k(x) := \frac{1}{2^k k!} \frac{\text{d}^k}{\text{d} x^k}
- \left(x^2-1\right)^k.
-\end{equation*}
-
-The associated Legendre functions $P_k^n : [-1,1] \rightarrow \R$, $k \ge n
-\ge 0$ are defined by
-\begin{equation*}
- P_k^n(x) := \left(\frac{(k-n)!}{(k+n)!}\right)^{1/2}
- \left(1-x^2\right)^{n/2} \frac{\text{d}^n}{\text{d} x^n} P_k(x).
-\end{equation*}
-For $n = 0$, they coincide with the Legendre polynomials $P_k = P_k^0$.
-The associated Legendre functions $P_{k}^n$ obey the three-term recurrence
-relation
-\begin{equation*}
- P_{k+1}^n(x) = \frac{2k+1}{((k-n+1)(k+n+1))^{1/2}} x P_k^n(x) -
- \frac{((k-n)(k+n))^{1/2}}{((k-n+1)(k+n+1))^{1/2}} P_{k-1}^n(x)
-\end{equation*}
-for $k \ge n \ge 0$, $P_{n-1}^n(x) = 0$, $P_{n}^n(x) = \frac{\sqrt{(2n)!}}{2^n
- n!}\left(1-x^2\right)^{n/2}$.
-For fixed $n$, the set $\{P_k^n:\: k \ge n\}$ forms a set of
-orthogonal functions, i.e.,
-\begin{equation*}
- \left\langle P_k^n,P_l^n \right\rangle =
- \int_{-1}^{1} P_k^n(x) P_l^n(x) \text{d} x =
- \frac{2}{2k+1} \delta_{k,l}.
-\end{equation*}
-Again, we denote by $\bar{P}_{k}^n = \sqrt{\frac{2k+1}{2}} P_k^n$ the
-orthonormal associated Legendre functions.
-In the following, we allow also for $n < 0$ and set $P_{k}^n$ := $P_{k}^{-n}$
-in this case.
-
-\subsubsection*{Spherical harmonics}
-The spherical harmonics $Y_k^n : \S^2 \rightarrow \C$, $k \ge |n|$, $n\in\Z$,
-are given by
-\begin{equation*}
- Y_k^n(\vartheta,\varphi) := P_k^{n}(\cos\vartheta)
- \, \mathrm{e}^{\mathrm{i} n \varphi}.
-\end{equation*}
-They form an orthogonal basis for the space of square integrable functions on
-the sphere, i.e.,
-\begin{equation*}
- \left\langle Y_k^n,Y_l^m \right\rangle =
- \int_{0}^{2\pi} \int_{0}^{\pi} Y_k^n(\vartheta,\varphi)
- \overline{Y_l^m(\vartheta,\varphi)} \sin \vartheta \; \mathrm{d} \vartheta
- \; \mathrm{d} \varphi =
- \frac{4\pi}{2k+1} \delta_{k,l}\delta_{n,m}.
-\end{equation*}
-The orthonormal spherical harmonics are denoted by $\bar{Y}_k^n =
-\sqrt{\frac{2k+1}{4\pi}} Y_k^n$.
-
-Hence, any square integrable function $f:\S^2\rightarrow\C$ has the expansion
-\begin{equation*}
- f = \sum_{k=0}^{\infty} \sum_{n=-k}^{k} \hat{f}(k,n) \bar{Y}_k^n,
-\end{equation*}
-with the spherical Fourier coefficients $\hat{f}(k,n) = \left\langle f,
-\bar{Y}_k^n \right\rangle$.
-The function $f$ is called \emph{bandlimited}, if $\hat{f}(k,n)=0$ for $k>N$
-and some $N\in\N$.
-In analogy to the NFFT on the Torus $\mathbb{T}$, we define the sampling set
-\begin{equation*}
- \mathcal{X}: = \left\{\left(\vartheta_{j},\varphi_{j}\right) \in
- \mathbb{S}^2:\,j=0,\hdots,M-1\right\}
-\end{equation*}
-of nodes on the sphere $\S^2$ and the set of possible ''frequencies''
-\begin{equation*}
- \mathcal{I}_{N} := \left\{(k,n):\,k=0,1,\ldots,N;\;
- n=-k,\ldots,k\right\}.
-\end{equation*}
-The \emph{nonequispaced discrete spherical Fourier transform} (NDSFT) is
-defined as the evaluation of the finite spherical Fourier sum
-\begin{equation}
- \label{eq.ndsft}
- f_j=
- f\left(\vartheta_{j},\varphi_{j}\right) =
- \sum_{(k,n) \in \, \mathcal{I}_{N}} \hat{f}_k^n \,
- Y_k^n\left(\vartheta_{j},\varphi_{j}\right) =
- \sum_{k=0}^N \sum_{n=-k}^k \hat{f}_k^n \,
- Y_k^n\left(\vartheta_{j},\varphi_{j}\right)
-\end{equation}
-for $j=0,\hdots,M-1$.
-In matrix vector notation, this reads $\mathbf{f} = \mathbf{Y} \; \mathbf{\hat
- f}$ with
-\begin{equation*}
- \begin{split}
- \mathbf{f} & := \left(f_j\right)_{j=0}^{M-1} \in
- \mathbb{C}^{M},\ f_{j} := f\left(\vartheta_{j},\varphi_{j}\right),\\
- \mathbf{Y} & :=
- \left(Y_k^n\left(\vartheta_j,\varphi_j\right)\right)_{j=0,\ldots,M-1;\;
- (k,n) \in \mathcal{I}_N} \in \mathbb{C}^{M \times (N+1)^2},\\
- \mathbf{\hat f} & := \left(\hat f_k^n\right)_{(k,n) \in \mathcal{I}_N} \in
- \mathbb{C}^{(N+1)^2}.
- \end{split}
-\end{equation*}
-The corresponding \emph{adjoint nonequispaced
- discrete fast spherical Fourier transform} (adjoint NDSFT) is defined as
-the evaluation of
-\begin{equation*}
- \label{eq.adjointndsft}
- \hat h_{k}^n =
- \sum_{j = 0}^{M-1} f\left(\vartheta_{j},\varphi_{j}\right)
- \overline{Y_k^n\left(\vartheta_{j},\varphi_{j}\right)}
-\end{equation*}
-for all $(k,n) \in \mathcal{I}_{N}$.
-Again, in matrix vector notation, this reads $\mathbf{\hat h} =
-\mathbf{Y}^{\adj} \, \mathbf{f}$.
-
-The coefficients $\hat h_{k}^n$ are, in general, not
-identical to the Fourier coefficients $\hat{f}(k,n)$ of the function $f$.
-However, provided that for the sampling set $\mathcal{X}$ a quadrature rule
-with weights $w_{j}$, $j=0,\hdots,M-1$, and sufficient degree of exactness
-is available, one might recover the Fourier coefficients $\hat{f}(k,n)$ by
-evaluating
-\begin{equation*}
- \hat{f}_{k}^n = \int_{0}^{2\pi} \int_{0}^{\pi} f(\vartheta,\varphi)
- \overline{Y_{k}^n(\vartheta,\varphi)} \sin\vartheta \; \mathrm{d} \vartheta
- \; \mathrm{d} \varphi =
- \sum_{j = 0}^{M-1} w_{j} f\left(\vartheta_{j},\varphi_{j}\right)
- \overline{Y_k^n\left(\vartheta_{j},\varphi_{j}\right)}
-\end{equation*}
-for all $(k,n) \in \mathcal{I}_{N}$.
-
-Direct algorithms for computing the NDSFT and adjoint NDSFT transformations
-need $\cO(M N^2)$ arithmetic operations.
-A combination of the fast polynomial transform and the NFFT leads to
-approximate algorithms with $\cO(N^2 \log^2 N + M)$ arithmetic operations.
-These are denoted \emph{NFSFT} and \emph{adjoint NFSFT}, respectively.
-The NFSFT algorithm using the FPT and the NFFT was introduced in
-\cite{kupo02} while the adjoint NFSFT variant was developed in \cite{KePo06}.
-
-\begin{algorithm}[tb]
- \caption[NFSFT]{Nonequispaced fast spherical Fourier transform (NFSFT)}
- \label{NFSFT:Algorithm:NFSFT}
- \begin{algorithmic}
- \STATE Input: $N \in \mathbb{N}_0$, $M \in \mathbb{N}$, spherical Fourier
- coefficients $\mathbf{\hat{f}} = (\hat{f}_{k}^n)_{(k,n) \in
- \mathcal{I}_{N}} \in \mathbb{C}^{(N+1)^2}$,\\
- \STATE \invisible{Input:} a sampling set $\mathcal{X} = \left(\vartheta_{j},
- \varphi_{j}\right)_{j=0}^{M-1} \in ([0,\pi]\times [0,2\pi))^{M}$.
- \STATE
- \FOR {$n=-N,\ldots,N$}
- \STATE Compute the Chebyshev coefficients $\left(b_{k}^n\right)_{k=0}^{N}$
- of $g^{n}$ by a fast polynomial transform.
- \STATE Compute the coefficients $\left(c_{k}^n\right)_{k=-N}^N$
- %as in \eqref{NFSFT:afterChebToExp}
- from the coefficients $\left(b_{k}^n\right)_{k=0}^{M}$.
- \ENDFOR
- \STATE Compute the function values
- $\left(f\left(\vartheta_{j},\varphi_{j}\right)\right)_{j=0}^{M-1}$
- by evaluating the Fourier sum %in \eqref{NFSFT:transformed}
- using a fast two-dimensional NFFT.
- \STATE
- \STATE Output: The function values ${\mathbf{f}} =
- \left(f\left(\vartheta_{j},
- \varphi_{j}\right)\right)_{j=0}^{M-1} \in \mathbb{C}^{M}$.
- \STATE Complexity: $\mathcal{O}\left(N^2 \log^2 N +
- M\right)$.
-\end{algorithmic}
-\end{algorithm}
-
-\begin{algorithm}[tb]
- \caption[Adjoint NFSFT]{Adjoint nonequispaced fast spherical Fourier
- transform (adjoint NFSFT)}
- \label{NFSFT:Algorithm:adjointNFSFT}
- \begin{algorithmic}
- \STATE Input: $N \in \mathbb{N}_0$, $M \in \mathbb{N}$, a sampling set
- $\mathcal{X} = \left(\vartheta_{j}, \varphi_{j}\right)_{j=0}^{M-1}
- \in ([0,\pi]\times [0,2\pi))^{M}$,\\
- \STATE \invisible{Input:} values $\mathbf{\tilde{f}} =
- (\tilde{f}_{j})_{j=0}^{M-1} \in \mathbb{C}^M$.
- \STATE
- \STATE Compute the coefficients $\left(\tilde{c}_{k}^n\right)_{k,n=-N}^N$ from
- the values $\left(f_{j}\right)_{j=0}^{N-1}$.
- %according to the matrix $\mathbf{F}_{\mathcal{X}}^{\h}$ in
- %\eqref{NFSFT:adjointNFSFTmv}
- \FOR {$n=-N,\ldots,N$}
- \STATE Compute the coefficients $\left(\tilde{b}_{k}^n\right)_{k=0}^N$ from the
- coefficients $\left(\tilde{c}_{k}^n\right)_{k=-N}^{N}$.
- % according to the matrix $\mathbf{B}^{\transp}$ in \eqref{NFSFT:adjointNFSFTmv}
- \STATE Compute the coefficients $\left(\tilde{a}_{k}^n\right)_{k=|n|}^{N}$ from
- the coefficients $\left(\tilde{b}_{k}^n\right)_{k=0}^N$
- %according to the matrix $\mathbf{T}^{\transp}$ in \eqref{NFSFT:adjointNFSFTmv}
- by a fast transposed polynomial transform.
- \ENDFOR
- \STATE
- \STATE Output: Coefficients $\mathbf{h} =
- \left(\tilde{h}_{k}^n\right)_{(k,n)
- \in \mathcal{I}_N} \in \mathbb{C}^{(N+1)^2}$.
- \STATE Complexity: $\mathcal{O}\left(N^2 \log^2 N +
- M\right)$.
-\end{algorithmic}
-\end{algorithm}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\subsection{Solver - inverse transforms} \label{sect:inv}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-
-In the following, we describe the inversion of the NFFT, i.e., the computation
-of Fourier coefficients from given samples $(\mathbf{x}_j,y_j) \in \T^d\times \C$,
-$j=0,\ldots,M-1$.
-In matrix vector notation, we aim to solve the linear system of equations
-\begin{equation}\label{eq:infft}
- \mathbf{A} \mathbf{\hat{f}} \approx \mathbf{y}
-\end{equation}
-for the vector $\mathbf{\hat{f}}\in\C^{|I_{\mathbf{N}|}}$.
-Note however that the nonequispaced Fourier matrix $\mathbf{A}$ can be replaced by
-any other Fourier matrix from Section \ref{sect:gen}.
-
-Typically, the number of samples $M$ and the dimension of the space of the
-polynomials $|I_{\mathbf{N}}|$ do not coincide, i.e., the matrix $\mathbf{A}$ is
-rectangular.
-There are no simple inverses to nonequispaced Fourier matrices in general and
-we search for some pseudoinverse solution $\mathbf{\hat{f}}^{\dagger}$, see
-e.g. \cite[p. 15]{Bj96}.
-However, we conclude from eigenvalue estimates in
-\cite{FeGrSt95,BaGr03,KuPo04} that the matrix $\mathbf{A}$ has full rank if
-\begin{equation*}
- \max_{0\le t<d} N_t < c_d \delta^{-1}\,, \qquad \delta:=2\max_{
- \mathbf{x}\in\T^d}\min_{j=0,\hdots,M-1}\dist_{\infty}\left(\mathbf{x}_j,\mathbf{x}_l\right),
-\end{equation*}
-or
-\begin{equation*}
- \min_{0\le t<d} N_t>C_d q^{-1}\,, \qquad q:=\min_{0\le j<l<M}
- \dist_{\infty}\left(\mathbf{x}_j,\mathbf{x}_l\right).
-\end{equation*}
-
-In what follows, we consider a weighted least squares solution for the
-over-determined case and an optimal interpolation for the consistent
-underdetermined case.
-Both cases are solved by means of iterative algorithms where Algorithm
-\ref{algo:nfft} and \ref{algo:nfftH} are used for the matrix vector
-multiplication with $\mathbf{A}$ and $\mathbf{A}^{\adj}$, respectively.
-
-%------------------------------------------------------------------------------
-\subsubsection*{Least squares}
-%------------------------------------------------------------------------------
-
-For a comparative low polynomial degree $|I_{\mathbf{N}}|<M$ the system
-\eqref{eq:infft} is over-determined, so that in general the given data $y_j\in
-\C,\;j=0,\hdots,M-1,$ will be only approximated up to the {\em residual} $
-\mathbf{r}:=\mathbf{f}-\mathbf{A} \mathbf{\hat{f}}$.
-One considers the {\em weighted approximation problem}
-\begin{equation*}
- \|\mathbf{y} - \mathbf{A} \mathbf{\hat{f}}\|_{\mathbf{W}}
- = \left(\sum_{j=0}^{M-1} w_j |y_j-f(x_j)|^2\right)^{1/2}
- \stackrel{\mathbf{\hat{f}}}{\rightarrow} \min,
-\end{equation*}
-which may incorporate weights $w_j> 0$, $\mathbf{W}:=\diag(w_j)_{j=0,\hdots,M-1}$,
-to compensate for clusters in the sampling set ${\cal X}$.
-This least squares problem is equivalent to the
-{\em weighted normal equation of first kind}
-\begin{equation}\label{eq:no1}
- \mathbf{A}^{\adj} \mathbf{W} \mathbf{A} \mathbf{\hat{f}} = \mathbf{A}^{\adj} \mathbf{W} \mathbf{y}.
-\end{equation}
-
-Applying the Landweber (also known as Richardson, ...), the steepest descent,
-or the conjugate gradient scheme to \eqref{eq:no1} yields the following
-Algorithms \ref{algo:landweber}-\ref{algo:wCGNR(E)}.
-\begin{algorithm}[ht!]
- \caption{Landweber}
- \label{algo:landweber}
- Input: $\mathbf{y} \in \mathbb{C}^M,\, {\mathbf{\hat{f}}}_0 \in \mathbb{C}^{|I_{
- \mathbf{N}}|},\, \alpha>0$
- \begin{algorithmic}[1]
- \topsep=1.5ex
- \itemsep=1.5ex
- \STATE $\mathbf{r}_0=\mathbf{y} - \mathbf{A} \mathbf{\hat{f}}_0$
- \STATE $\mathbf{\hat{z}}_0=\mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_0$
-
- \FOR{$l=0,\hdots$}
- \topsep=1.5ex
- \itemsep=1.5ex
- \STATE $\mathbf{\hat{f}}_{l+1}=\mathbf{\hat{f}}_{l}
- +\alpha \mathbf{\hat{W}} \mathbf{\hat{z}}_l$
- \STATE $\mathbf{r}_{l+1}=\mathbf{y} - \mathbf{A} \mathbf{\hat{f}}_{l+1}$
- \STATE $\mathbf{\hat{z}}_{l+1}=\mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_{l+1}$
- \ENDFOR
- \end{algorithmic}
- Output: $\mathbf{\hat{f}}_{l}$
-\end{algorithm}
-
-\begin{algorithm}[ht!]
- \caption{Steepest descent}
- \label{algo:gradient}
- Input: $\mathbf{y} \in \mathbb{C}^M,\, {\mathbf{\hat{f}}}_0 \in \mathbb{C}^{|I_{\mathbf{N}}|}$
- \begin{algorithmic}[1]
- \topsep=1.5ex
- \itemsep=1.5ex
- \STATE $\mathbf{r}_0=\mathbf{y} - \mathbf{A} \mathbf{\hat{f}}_0$
- \STATE $\mathbf{\hat{z}}_0=\mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_0$
-
- \FOR{$l=0,\hdots$}
- \topsep=1.5ex
- \itemsep=1.5ex
- \STATE $\mathbf{v}_l = \mathbf{A} \mathbf{\hat{W}} \mathbf{\hat{z}}_l$
- \STATE $\alpha_l=\frac{\mathbf{\hat{z}}_l^{\adj} \mathbf{\hat{W}} \mathbf{\hat{z}}_l}
- {\mathbf{v}_l^{\adj} \mathbf{W} \mathbf{v}_l}$
- \STATE $\mathbf{\hat{f}}_{l+1}=\mathbf{\hat{f}}_{l}
- +\alpha_l \mathbf{\hat{W}}\mathbf{\hat{z}}_l$
- \STATE $\mathbf{r}_{l+1}=\mathbf{r}_{l+1} - \alpha_l \mathbf{v}_l$
- \STATE $\mathbf{\hat{z}}_{l+1}=\mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_{l+1}$
- \ENDFOR
- \end{algorithmic}
- Output: $\mathbf{\hat{f}}_{l}$
- \end{algorithm}
-
-\begin{algorithm}[ht!]
- \caption{Conjugate gradients for the normal equations, Residual
- minimisation (CGNR)}
- \label{algo:wCGNR(E)}
- Input: $\mathbf{y} \in \mathbb{C}^M,\, {\mathbf{\hat{f}}}_0 \in \mathbb{C}^{|I_{\mathbf{N}}|}$
- \begin{algorithmic}[1]
- \topsep=1.5ex
- \itemsep=1.5ex
- \STATE $\mathbf{r}_0=\mathbf{y} - \mathbf{A} \mathbf{\hat{f}}_0$
- \STATE $\mathbf{\hat{z}}_0=\mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_0$
- \STATE $\mathbf{\hat{p}}_0=\mathbf{\hat{z}}_0$
- \FOR{$l=0,\hdots$}
- \topsep=1.5ex
- \itemsep=1.5ex
- \STATE $\mathbf{v}_l=\mathbf{A} \mathbf{\hat{W}} \mathbf{\hat{p}}_l$
- \STATE $\alpha_l=\frac{\mathbf{\hat{z}}_l^{\adj} \mathbf{\hat{W}} \mathbf{\hat{z}}_l} {\mathbf{v}_l^{\adj} \mathbf{W} \mathbf{v}_l}$
- \STATE $\mathbf{\hat{f}}_{l+1}=\mathbf{\hat{f}}_{l}
- +\alpha_l \mathbf{\hat{W}} \mathbf{\hat{p}}_l$
- \STATE $\mathbf{r}_{l+1}=\mathbf{r}_{l}- \alpha_l \mathbf{v}_l$
- \STATE $\mathbf{\hat{z}}_{l+1}=\mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_{l+1}$
- \STATE $\beta_l=\frac{\mathbf{\hat{z}}_{l+1}^{\adj} \mathbf{\hat{W}}\mathbf{\hat{z}}_{l+1}}
- {\mathbf{\hat{z}}_l^{\adj} \mathbf{\hat{W}}\mathbf{\hat{z}}_l}$
- \STATE $\mathbf{\hat{p}}_{l+1}=\beta_l \mathbf{\hat{p}}_l + \mathbf{\hat{z}}_{l+1}$
- \ENDFOR
- \end{algorithmic}
- Output: $\mathbf{\hat{f}}_{l}$
-\end{algorithm}
-
-%------------------------------------------------------------------------------
-\subsubsection*{Interpolation}
-%------------------------------------------------------------------------------
-
-For a comparative high polynomial degree $|I_{\mathbf{N}}|>M$ one expects to
-interpolate the given data $y_j\in \C,\;j=0,\hdots,M-1,$ exactly.
-The (consistent) linear system \eqref{eq:infft} is under-determined.
-One considers the {\em damped minimisation problem}
-\begin{equation*}
- \label{eq:ip}
- \|\mathbf{\hat{f}}\|_{\mathbf{\hat{W}}}^{-1}
- =\left(\sum_{\mathbf{k}\in I_{\mathbf{N}}} \frac{|\hat f_{\mathbf{k}}|^2}{\hat w_{\mathbf{k}}}
- \right)^{1/2} \stackrel{\mathbf{\hat{f}}}{\rightarrow} \min \quad \text{subject
- to} \quad \mathbf{A} \mathbf{\hat{f}} = \mathbf{y},
-\end{equation*}
-which may incorporate 'damping factors' $\hat w_{\mathbf{k}}> 0$, $\mathbf{\hat{W}}:=
-\diag(\hat w_{\mathbf{k}})_{\mathbf{k}\in I_{\mathbf{N}}}$.
-A smooth solution is favoured, i.e., a decay of the Fourier coefficients $\hat
-f_{\mathbf{k}},\;\mathbf{k}\in I_{\mathbf{N}}$, for decaying damping factors $\hat w_{
-\mathbf{k}}$.
-This interpolation problem is equivalent to the
-{\em damped normal equation of second kind}
-\begin{equation} \label{eq:no2}
- \mathbf{A} \mathbf{\hat{W}} \mathbf{A}^{\adj} \mathbf{\tilde{f}}
- = \mathbf{y}, \qquad \mathbf{\hat{f}} =
- \mathbf{\hat{W}} \mathbf{A}^{\adj} \mathbf{\tilde{f}}.
-\end{equation}
-
-Applying the conjugate gradient scheme to \eqref{eq:no2} yields the following
-Algorithm \ref{algo:wCGNE(R)}.
-\begin{algorithm}[ht!]
- \caption{Conjugate gradients for the normal equations, Error minimisation
- (CGNE)}
- \label{algo:wCGNE(R)}
- Input: $\mathbf{y} \in \mathbb{C}^M,\, {\mathbf{\hat{f}}}_0 \in \mathbb{C}^{|I_{\mathbf{N}}|}$
- \begin{algorithmic}[1]
- \topsep=1.5ex \itemsep=1.5ex
- \STATE $\mathbf{r}_0=\mathbf{y} - \mathbf{A} \mathbf{\hat{f}}_0$
- \STATE $\mathbf{\hat{p}}_0=\mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_0$
- \FOR{$l=0,\hdots$}
- \topsep=1.5ex \itemsep=1.5ex
- \STATE $\alpha_l=\frac{\mathbf{r}_l^{\adj} \mathbf{W} \mathbf{r}_l}
- {\mathbf{\hat{p}}_l^{\adj} \mathbf{\hat{W}} \mathbf{\hat{p}}_l}$
- \STATE $\mathbf{\hat{f}}_{l+1}=\mathbf{\hat{f}}_{l}
- +\alpha_l \mathbf{\hat{W}} \mathbf{\hat{p}}_l$
-
- \STATE $\mathbf{r}_{l+1}=\mathbf{r}_{l}- \alpha_l \mathbf{A} \mathbf{\hat{W}} \mathbf{\hat{p}}_l$
-
- \STATE $\beta_l=\frac{\mathbf{r}_{l+1}^{\adj} \mathbf{W} \mathbf{r}_{l+1}}
- {\mathbf{r}_l^{\adj} \mathbf{W} \mathbf{r}_l}$
-
- \STATE $\mathbf{\hat{p}}_{l+1}=\beta_l \mathbf{\hat{p}}_l + \mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_{l+1}$
- \ENDFOR
- \end{algorithmic}
- Output: $\mathbf{\hat{f}}_{l}$
-\end{algorithm}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\clearpage
-\section{Library}\label{sect:lib}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
- The library is completely written in C and uses the FFTW library \cite{fftw}
- which has to be installed on your system.
- The library has several options (determined at compile time) and parameters
- (determined at run time).
-
-%------------------------------------------------------------------------------
-\subsection{Installation}
-%------------------------------------------------------------------------------
-Download from {\tt www.tu-chemnitz.de/$\sim$potts/nfft} the most recent
-version {\tt nfft3.x.x.tgz}. In the following, we assume that you use a \verb+bash+
-compatible shell.
-Uncompress the archive.
-\begin{itemize}
- \item \verb"tar xfvz nfft3.x.x.tar.gz"
-\end{itemize}
-Change to the newly created directory.
-\begin{itemize}
- \item \verb+cd nfft3.x.x+
-\end{itemize}
-Optional: Set environment variables (see also below).
-Leave this step out, if you are unsure what to do.
-Example:
-\begin{itemize}
- \item \verb+export CPPFLAGS="-I/path/to/include/files"+\\
- \item \verb+export LDFLAGS="-L/path/to/libraries"+
-\end{itemize}
-Run the configure script.
-\begin{itemize}
- \item \verb+./configure+
-\end{itemize}
-Compile the sources.
-\begin{itemize}
- \item \verb+make+
-\end{itemize}
-This builds the NFFT library and all examples and applications. You can run
-\verb"make install" to install the library on your system. If
-for example \verb+/usr+ is your default installation directory, \verb+make install+
-will copy the NFFT 3 library to \verb+/usr/lib+, the C header files to
-\verb+/usr/include/nfft+ and the documentation together with all examples and
-applications to \verb+/usr/share/nfft+.
-
-For more information on fine grained
-control over the installation directories, run the \verb"configure" script
-with the option \verb+--help+, i.e. \verb+./configure --help+.
-For example, to see what gets installed, run
-\verb+./configure --prefix=some/path/to/a/temporary/directory+ in the line of
-commands above. After \verb+make+ and \verb+make install+, you will find all
-installed files in the directory structure created under the temporary directory.
-
-The following options can also be used in conjunction with the configure script:
-By default, NFFT 3 routines use the Kaiser-Bessel window function
-(see Appendix \ref{sec.nfft}). You can
-change the window function with the option \verb"--with-window=ARG",
-where \verb"ARG" is replaced by \verb"kaiserbessel" (Kaiser-Bessel),
-\verb"gaussian" (Gaussian), \verb"bspline" (B-spline),
-\verb"sinc" (sinc power) or \verb"delta" (Dirac delta) to yield the
-window function in parenthesis.
-
-The NFFT transforms can be configured to measure elapsed
-time for each step of Algorithm~\ref{algo:nfft} and \ref{algo:nfftH}.
-This should help customise the library to one's needs.
-You can enable this behaviour with
-the options \verb"--enable-measure-time" and/or
-\verb"--enable-measure-time-fftw".
-
-%------------------------------------------------------------------------------
-\subsection{Procedure for computing an NFFT}\label{sect:general_proc}
-%------------------------------------------------------------------------------
-One has to follow certain steps to write a simple program using the NFFT
-library.
-A complete example is shown in Section \ref{sect:first_trafo}.
-The first argument of each function is a pointer to a application-owned
-variable of type {\tt nfft\_plan}.
-The aim of this structure is to keep interfaces small, it contains all
-parameters and data.
-
-\subsubsection*{Initialisation}
-Initialisation of a plan is done by one of the {\tt nfft\_init}-functions.
-The simplest version for the univariate case $d=1$ just specifies the number
-of Fourier coefficients $N_0$ and the number of nonequispaced nodes $M$.
-For an application-owned variable {\tt nfft\_plan my\_plan} the function call is
-\begin{center}
- {\tt nfft\_init\_1d(\&my\_plan,N0,M);}
-\end{center}
-The first argument should be uninitialised. Memory allocation is completely
-done by the init routine.
-
-\subsubsection*{Setting nodes}
-One has to define the nodes $\mathbf{x}_j \in \T^d$ for the
-transformation in the member variable {\tt my\_plan.x}.
-The $t$-th coordinate of the $j$-th node $\mathbf{x}_j$ is assigned by
-\begin{center}
- {\tt my\_plan.x[d*j+t]= /* your choice in [-0.5,0.5] */;}
-\end{center}
-
-\subsubsection*{Precompute $\tilde\psi$}
-The precomputation of the values $\tilde\psi\left({\mathbf{x}}_j - \mathbf{n}^{-1}\odot
-\mathbf{l}\right)$, i.e. the entries of the matrix $\mathbf{B}$, depends on the choice
-for {\tt my\_plan.x}.
-If one of the proposed precomputation strategies ({\tt PRE\_LIN\_PSI}, {\tt
- PRE\_FG\_PSI}, {\tt PRE\_PSI}, or {\tt PRE\_FULL\_PSI}) is used, one has to call
-the appropriate precomputation routine {\bf AFTER} setting the nodes.
-For simpler usage this has been summarised by
-\begin{center}
- {\tt if(my\_plan.nfft\_flags \& PRE\_ONE\_PSI)
- nfft\_precompute\_one\_psi(\&my\_plan);}
-\end{center}
-Note furthermore, that
-\begin{enumerate}
-\item {\tt FG\_PSI} and {\tt PRE\_FG\_PSI} rely on the Gaussian window
- function,
-\item {\tt PRE\_LIN\_PSI} is actual node independent and in this case the
- precomputation can be done before setting nodes,
-\item {\tt PRE\_FULL\_PSI} asks for quite a bit of memory.
-\end{enumerate}
-
-\subsubsection*{Doing the transform}
-Algorithm \ref{algo:nfft} is implemented as
-\begin{center}
- {\tt nfft\_trafo(\&my\_plan);}
-\end{center}
-takes {\tt my\_plan.f\_hat} as its input and overwrites {\tt my\_plan.f}.
-One only needs one plan for several transforms of the same kind,
-i.e. transforms with equal initialisation parameters.
-For comparison, the direct calculation of \eqref{ndft} is done by
-{\tt ndft\_trafo}.
-The adjoint transforms are given by {\tt nfft\_adjoint} and {\tt
- ndft\_adjoint}, respectively.
-
-All data with multi-indices is stored plain, in particular the Fourier
-coefficient $\hat f_{\mathbf{k}}$ is stored in {\tt my\_plan.f\_hat[k]} with
-${\text{\tt k}}:=\sum_{t=0}^{d-1} (k_t+\frac{N_t}{2}) \prod_{t'=t+1}^{d-1}
-N_{t'}$.
-Data vectors might be exchanged by
-\begin{center}
- {\tt NFFT\_SWAP\_complex(my\_plan.f\_hat,new\_f\_hat);}.
-\end{center}
-
-\subsubsection*{Finalisation}
-All memory allocated by the init routine is deallocated by
-\begin{center}
- {\tt nfft\_finalize(\&my\_plan);}
-\end{center}
-Note, that almost all (de)allocation operations of the library are done by
-{\tt fftw\_malloc} and {\tt fftw\_free}.
-Additional data, declared and allocated by the application, have to be
-deallocated by the user's program as well.
-
-\subsubsection*{Data structure and functions}
- The library defines the structure {\tt nfft\_plan}, the most important
- members are listed in Table \ref{table:nfft_members}.
- Moreover, the user functions for the NFFT are collected in Table
- \ref{table:nfft_user_fun}.
- They all have return type {\tt void} and their first argument is of type {\tt
- nfft\_plan*}.
-
-
- \begin{table}[ht!]
- \begin{center}
- \begin{tabular}{|r l|l|l|}
- \hline Type & Name & Size
- & Description \\
- \hline
- \hline {\tt int} & {\tt d} & 1
- & Spatial dimension $d$ \\
- \hline {\tt int*} & {\tt N} & d
- & Multibandwidth $\mathbf{N}$ \\
- \hline {\tt int} & {\tt N\_total} & 1
- & Number of coefficients $|I_{\mathbf{N}}|$ \\
- \hline {\tt int} & {\tt M\_total} & 1
- & Number of nodes $M$ \\
- \hline {\tt double complex*}& {\tt f\_hat} &
- $|I_{\mathbf{N}}|$ & Fourier coefficients $\mathbf{\hat{f}}$ or \\
- & &
- & adjoint coefficients $\mathbf{\hat{h}}$ \\
- \hline {\tt double complex*}& {\tt f} & $M$
- & Samples $\mathbf{f}$ \\
- \hline {\tt double*} & {\tt x} & $dM$
- & Sampling set ${\cal X}$ \\
- \hline
- \end{tabular}
- \end{center}
- \caption{Interesting members of {\tt nfft\_plan}.}
- \label{table:nfft_members}
- \end{table}
-
- \begin{table}[ht!]
- \begin{center}
- \begin{tabular}{|l l|}
- \hline Name & Additional arguments \\
- \hline
- \hline {\tt ndft\_trafo} & \\
- \hline {\tt ndft\_adjoint} &\\
- \hline {\tt nfft\_trafo} &\\
- \hline {\tt nfft\_adjoint} &\\
- \hline {\tt nfft\_init\_1d} & {\tt int N0, int M}\\
- \hline {\tt nfft\_init\_2d} & {\tt int N0, int N1, int M}\\
- \hline {\tt nfft\_init\_3d} & {\tt int N0, int N1, int N2, int M}\\
- \hline {\tt nfft\_init} & {\tt int d, int* N, int M}\\
- \hline {\tt nfft\_init\_guru} & {\tt int d, int* N, int M, int* n, int m,} \\
- & {\tt unsigned nfft\_flags, unsigned fftw\_flags}\\
- \hline {\tt nfft\_precompute\_one\_psi} &\\
- \hline {\tt nfft\_check} &\\
- \hline {\tt nfft\_finalize} &\\
- \hline
- \end{tabular}
- \end{center}
- \caption{User functions of the NFFT.}
- \label{table:nfft_user_fun}
- \end{table}
-
-
-%------------------------------------------------------------------------------
- \subsection{Generalisations and nomenclature}
-%------------------------------------------------------------------------------
-The generalisations to the nonequispaced FFT in time and frequency domain, the
-nonequispaced fast (co)sine transform, and the nonequispaced sparse FFT are
-based on the same procedure as the NFFT.
-In the following we give some more details for the nonequispaced fast
-spherical Fourier transform.
-
-\subsubsection*{NFSFT}
-Compared to the NFFT routines, the NFSFT module shares a similar basic
-procedure for computing the transformations. It differs, however, slightly
-in data layout and function interfaces.
-
-The NFSFT routines depend on initially precomputed global data that limits the
-maximum degree \verb"N" that can be used for computing transformations. This
-precomputation has to be performed only once at program runtime regardless of
-how many individual transform plans are used throughout the rest. This is done
-by
-\begin{center}
- \verb"nfsft_precompute(N,1000,0U,0U);"
-\end{center}
-Here, \verb"N" is the maximum degree that can be used in all subsequent transformations,
-\verb"1000" is the threshold for the FPTs used internally, and
-\verb"0U" and \verb"0U" are optional flags for the NFSFT and FPT. If you
-are unsure which values to use, leave the threshold at \verb"1000" and
-the flags at \verb"0U".
-
-Initialisation of a plan is done by calling one of the
-\verb"nfsft_init"-functions. We need no dimension parameter here, as in
-the NFFT case. The simplest version is a call to \verb"nfsft_init"
-specifying only the bandwidth $N$ and the number of nonequispaced nodes $M$.
-For an application-owned variable \verb"nfsft_plan my_plan" the function call
-is
-\begin{center}
- \verb"nfsft_init(&my_plan,N,M);"
-\end{center}
-The first argument should be uninitialised. Memory allocation is completely
-done by the init routine.
-
-After initialising a plan, one defines the nodes $(\vartheta_{j},\varphi_{j}) \in
-[0,2\pi) \times [0,\pi]$ in spherical coordinates in the member variable
-\verb"my_plan.x".
-For consistency with the other modules and the conventions used there, we
-use swapped and scaled spherical coordinates
-\begin{align*}
- \tilde{\varphi} & :=
- \left\{
- \begin{array}{ll}
- \frac{\varphi}{2\pi}, & \text{if $0 \le \varphi < \pi$}, \\[1ex]
- \frac{\varphi}{2\pi}-1, & \text{if $\pi \le \varphi < 2\pi$},
- \end{array}
- \right. & \tilde{\vartheta} & := \frac{\vartheta}{2\pi}
-\end{align*}
-and identify a point from $\mathbb{S}^2$ with the vector
-$(\tilde{\varphi}, \tilde{\vartheta}) \in
-[-\frac{1}{2}, \frac{1}{2}) \times [0,\frac{1}{2}]$.
-The angles $\tilde{\varphi}_{j}$ and $\tilde{\vartheta}_{j}$ for
-the $j$-th node are assigned by
-\begin{center}
- \begin{minipage}{10cm}
- \verb"my_plan.x[2*j] = /* your choice in [-0.5,0.5] */;"
- \verb"my_plan.x[2*j+1] = /* your choice in [0,0.5] */;"
- \end{minipage}
-\end{center}
-After setting the nodes, the same node-dependent (see the exception above)
-precomputation as for the NFFT has to be performed.
-This is done by
-\begin{center}
- \verb"nfsft_precompute_x(&my_plan);"
-\end{center}
-which itself calls \verb"nfft_precompute_one_psi(&my_plan)" as explained above. You might modify
-the precomputation strategy by passing the appropriate NFFT flags to one of the
-more advanced \verb"nfsft_init" routines.
-Setting the spherical Fourier coefficients $\hat{f}_{k}^n$ in \verb+my_plan.f_hat+
-should be done using the helper macro \verb+NFSFT_INDEX+. This reads
-\begin{center}
- \begin{minipage}{11cm}
- \verb"for (k = 0; k <= N; k++)" \\
-% \verb"{" \\
- \verb" for (n = -k; n <= k; n++)" \\
-% \verb" {" \\
- \verb" my_plan.f_hat[NFSFT_INDEX(k,n,&plan)] = /* your choice */;" \\
-% \verb" }"\\
-% \verb"}"
- \end{minipage}
-\end{center}
-For the NFSFT, spherical Fourier coefficients are stored in a fashion different from
-the NFFT. You should always use the helper macro \verb+NFSFT_INDEX+ for setting
-the spherical Fourier coefficients. If, in place of a NFSFT transformation, you
-would like to perform an adjoint NFSFT transformation, you set
-the values $f\left(\vartheta_{j}, \varphi_{j}\right)$ in \verb+my_plan.f+ as follows:
-\begin{center}
- \begin{minipage}{11cm}
- \verb"for (j = 0; j < M; j++)" \\
-% \verb"{" \\
- \verb" my_plan.f[j] = /* your choice */;" \\
-% \verb"}"
- \end{minipage}
-\end{center}
-
-The actual transforms are computed by calling either \verb+nfsft_trafo(&my_plan)+
-for the NFSFT (see Algorithm \ref{NFSFT:Algorithm:NFSFT}) or
-\verb+nfsft_adjoint(&my_plan)+ for the adjoint NFSFT (see Algorithm
-\ref{NFSFT:Algorithm:adjointNFSFT}).
-Remember, that you must make sure that \verb+my_plan.x+ and \verb+my_plan.f_hat+
-or \verb+my_plan.f+ have been initialised appropriately prior to calling the
-corresponding transformation routine.
-On execution, \verb+nfsft_trafo+ overwrites \verb+my_plan.f+ while
-\verb+nfsft_adjoint+ overwrites \verb+my_plan.f_hat+.
-One only needs one plan for several transforms of the same kind,
-i.e. transforms with equal initialisation parameters.
-For comparison, the direct calculation of \eqref{eq.ndsft} and \eqref{eq.adjointndsft}
-are done by \verb+ndsft_trafo+ and \verb+ndsft_adjoint+, respectively.
-
-All memory allocated by the init routine is deallocated by
-\begin{center}
- \verb+nfsft_finalize(&my_plan);+
-\end{center}
-while the memory allocated by \verb+nfsft_precompute+ gets
-freed by calling
-\begin{center}
- \verb+nfsft_forget();+
-\end{center}
-Additional data, declared and allocated by the application, has to be
-deallocated by the user's program as well.
-
-The library defines the structure \verb+nfsft_plan+, the most important
-members are listed in Table \ref{table:nfsft_members}.
-The structure contains, public read-only (r) and public read-write (w)
-members.
-The user functions for the NFSFT are collected in Table
-\ref{table:nfsft_user_fun}.
-
-\begin{table}[ht!]
- \begin{center}
- \begin{tabular}{|r l|l|c|l|}
- \hline Type & Name & Size & Type & Description \\
- \hline
- \verb+int+ & \verb+N+ & 1 & r & Bandwidth $N$ \\
- \verb+int+ & \verb+N_total+ & 1 & r & Set to $4|\mathcal{I}_N|=4(N+1)^2$,\\
- & & & & quadruple of the number of Fourier coefficients\\
- \verb+int+ & \verb+M_total+ & 1 & r & Total number of nodes $M$ \\
- \verb+double complex*+ & \verb+f_hat+ & $4|\mathcal{I}_N|$ & w & Fourier coefficients $\hat{\mathbf{f}}$ or\\
- & & & & adjoint coefficients $\hat{\mathbf{h}}$ \\
- \verb+double complex*+ & \verb+f+ & $M$ & w & Samples $\mathbf{f}$ \\
- \verb+double*+ & \verb+x+ & $M$ & w & Sampling set $\mathcal{X}$ \\
- \hline
- \end{tabular}
- \end{center}
- \caption{Interesting members of {\tt nfsft\_plan}.\label{table:nfsft_members}}
- \end{table}
-
- \begin{table}[ht!]
- \begin{center}
- \begin{tabular}{|l l|}
- \hline Name & Additional arguments \\
- \hline
- \hline \verb+nfsft_precompute+ & \verb+int N, double threshold,+\\
- & \verb+unsigned int nfsft_flags, unsigned int fpt_flags+\\
- \hline \verb+nfsft_init+ & \verb+int N, int M+ \\
- \hline \verb+nfsft_init_advanced+ & \verb+int N, int M, unsigned int nfsft_flags+ \\
- \hline \verb+nfsft_init_guru+ & \verb+int N, int M, unsigned int nfsft_flags,+ \\
- & \verb+int nfft_flags, int nfft_cutoff+ \\
- \hline \verb+nfsft_precompute_x+ & \\
- \hline \verb+ndsft_trafo+ & \\
- \hline \verb+ndst_adjoint+ & \\
- \hline \verb+nfsft_trafo+ & \\
- \hline \verb+nfsft_adjoint+ & \\
- \hline \verb+nfsft_finalize+ & \\
- \hline \verb+nfsft_forget+ & \\
- \hline
- \end{tabular}
- \end{center}
- \caption{User functions of the NFSFT.\label{table:nfsft_user_fun}}
- \end{table}
-
-Some more things should be kept in mind when using the NFSFT module:
-\begin{itemize}
-\item The bandwidth $N_{\text{max}}$ up to which global precomputation is
- performed when calling \verb+nfsft_precompute+ is always chosen as the
- next power of two with respect to the specified maximum bandwidth $N$.
-\item By default, the NDSFT and NFSFT transformations,
- \verb+ndsft_trafo+ and \verb+nfsft_trafo+, are allowed to destroy the
- input \verb+f_hat+ while the input \verb+x+ is preserved. On the contrary,
- the adjoint NDSFT and NFSFT transformations, \verb+ndsft_adjoint+ and
- \verb+nfsft_adjoint+, do not destroy the input \verb+f+ and \verb+x+ by
- default. The desired behaviour can be assured by using the
- \verb+NFSFT_PRESERVE_F_HAT+, \verb+NFSFT_PRESERVE_X+, \verb+NFSFT_PRESERVE_F+ and
- \verb+NFSFT_DESTROY_F_HAT+, \verb+NFSFT_DESTROY_X+, \verb+NFSFT_DESTROY_F+
- flags.
-\end{itemize}
-
-%------------------------------------------------------------------------------
- \subsection{Inversion and solver module} \label{sect:general_proc_infft}
-%------------------------------------------------------------------------------
- The flow chart in Figure \ref{fig:struct} shows how to use the inverse
- transforms as implemented in the solver module of the library.
- There is no general stopping rule implemented, since this task is highly
- dependent on the particular application.
- \begin{figure}[ht!]
- \begin{center}
- \input{struct}
- \end{center}
- \caption{Flow chart of the inverse transforms.\label{fig:struct}}
- \end{figure}
-
- Each inverse transform basically wraps an already initialised Fourier
- transform.
- The user specifies one of the Algorithms
- \ref{algo:landweber}-\ref{algo:wCGNE(R)} by setting one of the flags
- ({\tt LANDWEBER}, {\tt STEEPEST\_DESCENT}, {\tt CGNR}, {\tt CGNE}).
- Weights and/or damping factors are used if the flags {\tt
- PRECOMPUTE\_WEIGHT}, {\tt PRECOMPUTE\_DAMP} are set and one has to initialise
- the members {\tt my\_iplan.w}, {\tt my\_iplan.w\_hat} in these cases.
- Default flags are {\tt CGNR}.
-
- In case of the NFFT, the library defines the structure {\tt infft\_plan}.
- The members of this plan are given by Table \ref{table:infft_members}.
- The user functions for the inverse NFFT are collected in Table
- \ref{table:infft_user_fun}.
- They all have return type {\tt void} and their first argument is of type {\tt
- infft\_plan*}.
- Replacing {\tt nfft} by any other Fourier transform gives the appropriate
- inverse to this transform.
-
- \begin{table}[ht!]
- \begin{center}
- \begin{tabular}{|r l|l|l|}
- \hline Type & Name & Size & Description \\
- \hline
- \hline {\tt double*} & {\tt w} & {\tt M\_total} & weights $\mathbf{w}$ \\
- \hline {\tt double*} & {\tt w\_hat} & {\tt N\_total} & damping factors $\mathbf{\hat{w}}$ \\
- \hline {\tt (FLT\_TYPE)*} & {\tt y} & {\tt M\_total} & right hand side $\mathbf{y}$ \\
- \hline {\tt (FLT\_TYPE)*} & {\tt f\_hat\_iter} & {\tt N\_total} & actual solution \\
- \hline {\tt (FLT\_TYPE)*} & {\tt r\_iter} & {\tt M\_total} & residual vector $\mathbf{r}_{l+1}$\\
- \hline {\tt double} & {\tt dot\_r\_iter} & 1 & $\|\mathbf{r}_{l+1}\|_{\mathbf{W}}^2$ \\
- \hline
- \end{tabular}
- \end{center}
- \caption{More important members of each inverse plan, where {\tt
- (FLT\_TYPE)} is {\tt double} for the NFCT and NFST and {\tt double complex}
- in all other cases.}
- \label{table:infft_members}
- \end{table}
-
- \begin{table}[ht!]
- \begin{center}
- \begin{tabular}{|l l|}
- \hline Name & Additional arguments \\
- \hline
- \hline {\tt infft\_init} & {\tt nfft\_plan *mv}\\
- \hline {\tt infft\_init\_advanced} & {\tt nfft\_plan *mv, unsigned infft\_flags}\\
- \hline {\tt infft\_before\_loop} & \\
- \hline {\tt infft\_loop\_one\_step} &\\
- \hline {\tt infft\_finalize} &\\
- \hline
- \end{tabular}
- \end{center}
- \caption{User functions of the inverse NFFT.}
- \label{table:infft_user_fun}
- \end{table}
-
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\clearpage
-\section{Examples}\label{sect:ex}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-The library was tested on a AMD Athlon(tm) XP 2700+, 1GB memory, SuSe-Linux,
-kernel 2.4.20-4GB-athlon, gcc version 3.3.
-In all tests with random input the nodes $\mathbf{x}_j$ and the Fourier
-coefficients $\hat f_{\mathbf{k}}$ are chosen pseudo randomly with $\mathbf{x}_j \in
-[-0.5,0.5]^d$ and $\hat f_{\mathbf{k}} \in [0,1] \times [0,1]{\rm i}$.
-
-%------------------------------------------------------------------------------
-\subsection{Computing your first transform}\label{sect:first_trafo}
-%------------------------------------------------------------------------------
-
-The following code summarises the steps of Section \ref{sect:general_proc} and
-computes a univariate NFFT from 14 Fourier coefficients and 19 nodes.
-Note that this routine is part of {\tt simple\_test.c} in {\tt examples/nfft/}
-and uses additional routines as defined {\tt include/util.h} to set up and
-show vectors.
-\begin{verbatim}
-void simple_test_nfft_1d()
-{
- nfft_plan p;
- int N=14;
- int M=19;
-
- nfft_init_1d(&p,N,M);
-
- nfft_vrand_shifted_unit_double(p.x,p.M_total);
-
- if(p.nfft_flags & PRE_ONE_PSI)
- nfft_precompute_one_psi(&p);
-
- nfft_vrand_unit_complex(p.f_hat,p.N_total);
- nfft_vpr_complex(p.f_hat,p.N_total,"given Fourier coefficients, f_hat");
-
- ndft_trafo(&p);
- nfft_vpr_complex(p.f,p.M_total,"ndft, f");
-
- nfft_trafo(&p);
- nfft_vpr_complex(p.f,p.M_total,"nfft, f");
-
- nfft_finalize(&p);
-}
-\end{verbatim}
-
-%------------------------------------------------------------------------------
-\subsection{Computation time vs. problem size}
-%------------------------------------------------------------------------------
-The program {\tt nfft\_times} in the same directory compares the computation
-time of the FFT (\cite{fftw}, {\tt FFTW\_MEASURE}), the straightforward
-evaluation of \eqref{eq:nfft}, denoted by NDFT, and the NFFT for increasing
-total problem sizes $|I_{\mathbf{N}}|$ and space dimensions $d=1,2,3$, where $
-\mathbf{N}=(N,\hdots,N)^{\top},\;N\in\N$.
-While the nodes for the FFT are restricted to the lattice $\mathbf{N}^{-1}\odot
-I_{\mathbf{N}}$, we choose $M=N^d$ random nodes for the NDFT and the NFFT.
-Within the latter, we use the oversampling factor $\sigma=2$, the cut-off
-$m=4$, and the Kaiser-Bessel window function ({\tt PRE\_PSI}, {\tt
- PRE\_PHI\_HUT}).
-This results in a fixed accuracy of $E_{\infty}:=\|\mathbf{f}-
-\mathbf{s}\|_{\infty}/\|\mathbf{\hat{f}}\|_1\approx 10^{-8}$ for $d=1,2,3$.
-
-\begin{table}[ht!]
- \centering
- \begin{tabular}{|r|r|r|r||r|r|r|r|}
- \hline
- $l_N$ & FFT & NDFT & NFFT &
- $l_N$ & FFT & NDFT & NFFT\\
- \hline
-\multicolumn{4}{|c||}{$d=1$} & \multicolumn{4}{c|}{$d=2$}\\ \hline
-$3$& $1.3e-07$& $8.7e-06$& $4.6e-06$& $6$& $9.9e-07$& $5.7e-04$& $3.2e-04$ \\
-$4$& $2.0e-07$& $3.5e-05$& $8.7e-06$& $8$& $4.4e-06$& $9.2e-03$& $1.3e-03$ \\
-$5$& $4.0e-07$& $1.4e-04$& $1.7e-05$& $10$& $2.1e-05$& $1.5e-01$& $5.2e-03$ \\
-$6$& $8.9e-07$& $5.6e-04$& $3.6e-05$& $12$& $1.2e-04$& $2.4e+00$& $2.3e-02$ \\
-$7$& $2.2e-06$& $2.2e-03$& $7.2e-05$& $14$& $1.7e-03$& $3.8e+01$& $1.5e-01$ \\
-$8$& $4.8e-06$& $9.0e-03$& $1.4e-04$& $16$& $2.1e-02$& *& $6.8e-01$ \\
-$9$& $1.1e-05$& $3.6e-02$& $2.9e-04$& $18$& $8.4e-02$& *& $2.8e+00$ \\
-$10$& $2.4e-05$& $1.4e-01$& $6.0e-04$& $20$& $3.2e-01$& *& $1.2e+01$ \\
-$11$& $5.7e-05$& $5.8e-01$& $1.4e-03$& $22$& $1.4e+00$&
- *& $5.3e+01$ \\ \cline{5-8}
-$12$& $1.5e-04$& $2.3e+00$& $3.2e-03$&
- \multicolumn{4}{c|}{$d=3$}\\ \cline{5-8}
-$13$& $5.5e-04$& $9.4e+00$& $8.2e-03$& $9$& $1.0e-05$& $3.7e-02$& $2.5e-02$ \\
-$14$& $1.7e-03$& $3.8e+01$& $2.0e-02$& $12$& $1.1e-04$& $2.4e+00$& $2.5e-01$ \\
-$15$& $3.8e-03$& $1.5e+02$& $4.9e-02$& $15$& $3.4e-03$& $1.5e+02$& $2.4e+00$ \\
-$16$& $8.2e-03$& *& $1.2e-01$& $18$& $5.2e-02$& *& $2.1e+01$ \\
-$17$& $1.9e-02$& *& $2.4e-01$& $21$& $9.0e-01$& *& $1.8e+02$ \\
-$18$& $4.5e-02$& *& $3.6e-01$& & & & \\
-$19$& $9.2e-02$& *& $9.8e-01$& & & & \\
-$20$& $1.9e-01$& *& $2.1e+00$& & & & \\
-$21$& $4.2e-01$& *& $4.2e+00$& & & & \\
-$22$& $1.0e-00$& *& $9.5e+00$& & & & \\
- %\input{images/nfft/timings_nice_dagobert}
- \hline
- \end{tabular}
- \caption{Computation time in seconds with respect to $l_N=\log_2|I_{
- \mathbf{N}}|$.
- Note that we used accumulated measurements in case of small times and the
- times (*) are not displayed due to the large response time in comparison
- to the FFT time.}
- \label{tab:TimeSpace_1}
-\end{table}
-
-We conclude the following: The FFT and the NFFT show the expected
-$\cO(|I_{\mathbf{N}}|\log|I_{\mathbf{N}}|)$ time complexity, i.e., doubling the total size $|I_{\mathbf{N}}|$
-results in only slightly more than twice the computation time, whereas the
-NDFT behaves as $\cO(|I_{\mathbf{N}}|^2)$.
-Note furthermore, that the constant in the $\cO$-notation is independent of
-the space dimension $d$ for the FFT and the NDFT, whereas the computation time
-of the NFFT increases considerably for larger $d$.
-
-%------------------------------------------------------------------------------
-\subsection{Accuracy vs. window function and cut-off parameter $m$}
-%------------------------------------------------------------------------------
-The accuracy of the Algorithm \ref{algo:nfft}, measured by
-\begin{equation*}
-E_2=\frac{\|\mathbf{f}- \mathbf{s}\|_2}{\|\mathbf{f}\|_2}
-=\left({\sum_{j=0}^{M-1}|f_j-s\left(
-\mathbf{x}_j\right)|^2}/{\sum_{j=0}^{M-1}
- |f_j|^2}\right)^{\frac{1}{2}}
-\end{equation*}
-and
-\begin{equation*}
-E_{\infty}=\frac{\|\mathbf{f}- \mathbf{s}\|_{\infty}}{\|\mathbf{\hat{f}}\|_1}
-={\max_{0\le j<M}|f_j-s\left(
-\mathbf{x}_j\right)|}/{\sum_{\mathbf{k} \in I_{\mathbf{N}}} |\hat
- f_{\mathbf{k}}|}
-\end{equation*}
-is shown in Figure \ref{fig:accuracy}.
-
- \begin{figure}[ht!]
- \begin{center}
- \begin{tabular}{c c c}
- \includegraphics[width=4.8cm]{images/accuracy1} &
- \includegraphics[width=4.8cm]{images/accuracy2} &
- \includegraphics[width=4.8cm]{images/accuracy3} \\
- \includegraphics[width=4.8cm]{images/accuracy4} &
- \includegraphics[width=4.8cm]{images/accuracy5} &
- \includegraphics[width=4.8cm]{images/accuracy6}
- \end{tabular}
- \end{center}
- \caption{The error $E_2$ (top) and $E_{\infty}$ (bottom) with respect to $m$,
- from left to right $d=1,2,3$ ($N=2^{12},2^6,2^4,\, \sigma=2,\,M=10000$),
- for Kaiser Bessel- (circle), Sinc- (x), B-Spline- ($+$), and Gaussian window (triangle).}
- \label{fig:accuracy}
- \end{figure}
-
-%------------------------------------------------------------------------------
-\subsection{Computing an inverse transform}\label{sect:rec_example}
-%------------------------------------------------------------------------------
-The usage of the inverse NFFT is demonstrated by {\tt simple\_test} in {\tt
- examples/solver}.
-Executing the {\sc MatLab} script {\tt glacier.m} in the same directory
-produces the following two plots.
-Note that the corresponding C-file {\tt glacier.c} is called from the {\sc
- MatLab} script.
-\begin{figure}[ht!]
- \begin{center}
- \begin{tabular}{cc}
- \includegraphics[width=6cm]{images/glacier1} &
- \includegraphics[width=6cm]{images/glacier2}
- \end{tabular}
- \end{center}
- \caption{Reconstruction of the glacier from samples at $M=8345$ nodes ({\tt
- vol87.dat} from \cite{Franke.Daten}) with $N_0=N_1=256$ and $40$
- iterations. \label{Fig:glacier}}
-\end{figure}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\clearpage
-\section{Applications}\label{sec:appl}
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-In this section we describe important applications which are based on the NFFT
-kernel.
-One can find these programs in the directory {\tt applications}.
-
-%------------------------------------------------------------------------------
-\subsection{Summation of smooth and singular kernels}
-%------------------------------------------------------------------------------
-
-We are interested in the fast evaluation of linear combinations of radial
-functions, i.e. the computation of
-\begin{equation*}
- g\left(\mathbf{y}_j\right) := \sum_{k=1}^N \alpha_k K\left(\left\|\mathbf{y}_j-
- \mathbf{x}_k\right\|_2\right)
-\end{equation*}
-for $j=1,\hdots,M$ and nodes $\mathbf{x}_k, \mathbf{y}_j \in \R^d$.
-For smooth kernels $K$ with an additional parameter $c>0$, e.g. the Gaussian
-$K(x)=\e^{-x^2/c^2}$, the multiquadric $K(x)=\sqrt{x^2+c^2}$ or the inverse
-multiquadric $K(x)=1/\sqrt{x^2+c^2}$ our algorithm requires $\cO(N+M)$
-arithmetic operations.
-In the case of singular kernels $K$, e.g.,
-\begin{equation*}
- \frac{1}{x^2},\; \frac{1}{|x|}, \; \log |x|, \;
- x^2 \log |x|, \; \frac{1}{x}, \;
- \frac{\sin(c x)}{x},\; \frac{\cos(c x)}{x}, \; \cot(cx)
-\end{equation*}
-an additional regularisation procedure must be incorporated and the algorithm
-has the arithmetic complexity $\cO(N \log N +M)$ or $\cO(M\log M + N)$ if
-either the target nodes $\mathbf{y}_j$ or the source nodes $\mathbf{x}_k$ are
-``reasonably uniformly distributed''.
-
-Note that the proposed fast algorithm \cite{post02,postni04,FeSt03}
-generalises the diagonalisation of convolution matrices by Fourier matrices to
-the setting of arbitrary nodes.
-In particular, this yields nearly the same arithmetic complexity as the FMM
-\cite{beatgreen97} while allowing for an easy change of various kernels.
-A recent application in particle simulation is given in \cite{popori05}.
-The directory {\tt applications/fastsum} contains C and {\sc MatLab} programs
-that show how to use the fast summation method.
-
-%------------------------------------------------------------------------------
-\subsection{Fast Gauss transform}
-%------------------------------------------------------------------------------
-
-This is a special case of the fast summation method, we compute approximations
-of the following sums.
-Given complex coefficients $\alpha_k \in \C$ and source nodes
-$x_k\in[-\frac{1}{4},\frac{1}{4}]$, our goal consists in the fast evaluation
-of the sum
-\begin{equation*}
- g\left(y\right)=\sum_{k=1}^N \alpha_k {\rm e}^{-\sigma|y-x_k|^2}
-\end{equation*}
-at the target nodes $y_j \in [-\frac{1}{4},\frac{1}{4}]$, $j=1,\ldots,M$,
-where $\sigma =a +{\rm i} b$, $a>0$, $b\in\R$, denotes a complex parameter.
-For details see \cite{KuPoSt06} and the related paper \cite{AnBe04} for
-applications.
-All numerical examples of \cite{KuPoSt06} are produced by the programs in {\tt
- applications/fastgauss}.
-
-%------------------------------------------------------------------------------
-\subsection{Summation of zonal functions on the sphere}
-%------------------------------------------------------------------------------
-
-Given $M,N \in \N$, arbitrary source nodes $\mathbf{\eta}_k \in \S^2$ and real
-coefficients $\alpha_k\in\R$, evaluate the sum
-\begin{equation*}
- g\left(\mathbf{\xi}\right) := \sum_{k = 1}^N \alpha_k K\left(\mathbf{\eta}_k \cdot
- \mathbf{\xi}\right)
-\end{equation*}
-at the target nodes $\mathbf{\xi}_j\in\S^2$, $j=1,\hdots,M$.
-The naive approach for evaluating this sum takes $\cO(MN)$ floating point
-operations if we assume that the zonal function $K$ can be evaluated in
-constant time or that all values $K(\mathbf{\eta}_k \cdot \mathbf{\xi}_j)$ can be stored
-in advance.
-
-In contrast, our scheme is based on the nonequispaced fast spherical Fourier
-transform, has arithmetic complexity $\cO(M+N)$, and can be easily adapted to
-such different kernels $K$ as
- \begin{enumerate}
- \item the Poisson kernel
- $Q_{h}:[-1,1] \rightarrow \R$ with $h \in (0,1)$ given by
- \[
- Q_{h}(x) := \frac{1}{4\pi} \frac{1-h^2}{\left(1-2 h x+h^2\right)^{3/2}},
- \]
- \item the singularity kernel
- $S_{h}:[-1,1] \rightarrow \R$ with $h \in (0,1)$ given by
- \[
- S_{h}(x) := \frac{1}{2\pi} \frac{1}{\left(1-2 h x +h^2\right)^{1/2}},
- \]
-\item the locally supported kernel
- $L_{h,\lambda}:[-1,1] \rightarrow \R$ with $h \in (-1,1)$ and
- $\lambda \in \mathbb{N}_0$ given by
- \[
- L_{h,\lambda}(x) :=
- \left\{\begin{array}{l@{\quad \text{if} \quad}rcl}
- 0 & -1 &\le x \le& h, \\
- \frac{\lambda+1}{2\pi(1-h)^{\lambda+1}}\left(x-h\right)^{\lambda} &
- h & < x \le& 1,
- \end{array}\right.
- \]
-or
-\item the spherical Gaussian kernel
- $G_{\sigma}:[-1,1] \rightarrow
- \R$ with $\sigma>0$
- \[
- G_{\sigma}(x) := \e^{2\sigma x-2\sigma}\,.
- \]
- \end{enumerate}
-
-For details see \cite{KeKuPo06}, all corresponding numerical examples can be
-found in {\tt applications\ /fastsumS2}.
-
-%------------------------------------------------------------------------------
-\subsection{Iterative reconstruction in magnetic resonance imaging}
-%------------------------------------------------------------------------------
-
-In magnetic resonance imaging (MRI) the raw data is measured in k-space, the
-domain of spatial frequencies.
-Methods that use a non-Cartesian sampling grid in k-space, e.g. a spiral, are
-becoming increasingly important.
-Reconstruction is usually performed by resampling the data onto a Cartesian
-grid and the usage of the standard FFT - often denoted by gridding.
-Another approach, the inverse model, is based on an implicit discretisation.
-Both discretisations are solved efficiently by means of the NFFT and the
-inverse NFFT, respectively.
-Furthermore, a unified approach to field inhomogeneity correction has been
-included, see \cite{KnKuPo,EgKnPo06} for details.
-
-%------------------------------------------------------------------------------
-\subsection{Computation of the polar FFT}
-%------------------------------------------------------------------------------
-
-The polar FFT is a special case of the NFFT, where one computes the Fourier
-transform on particular grids.
-Of course, the polar as well as a so-called pseudo-polar FFT can be computed
-very accurately and efficiently by the NFFT.
-Furthermore, the reconstruction of a $2d$ signal from its Fourier transform
-samples on a (pseudo-)polar grid by means of the inverse nonequispaced FFT is
-possible under certain density assumptions.
-For details see \cite{FeKuPo06} and for further applications
-\cite{AvCoDoElIs}.
-
-\begin{figure}[ht]
- \centering
- \subfigure
- {\includegraphics[width=0.3\textwidth]{images/polar_grid}}\hfill
- \subfigure
- {\includegraphics[width=0.3\textwidth]{images/modified_polar_grid}}\hfill
- \subfigure
- {\includegraphics[width=0.3\textwidth]{images/linogram_grid}}
- \caption{Left to right: polar, modified polar, and linogram grid of size
- $R=16$, $T=32$. \label{fig:grids}}
-\end{figure}
-
-%------------------------------------------------------------------------------
-\subsection{Radon transform, computer tomography, and ridgelet transform}
-%------------------------------------------------------------------------------
-
-We are interested in efficient and high quality reconstructions of digital $N
-\times N$ medical images from their Radon transform.
-The standard reconstruction algorithm, the filtered backprojection, ensures a
-good quality of the images at the expense of $\cO( N^3 )$ arithmetic
-operations.
-Fourier reconstruction methods reduce the number of arithmetic operations to
-${\cal O}( N^2 \log N )$.
-Unfortunately, the straightforward Fourier reconstruction algorithm suffers
-from unacceptable artifacts so that it is useless in practice.
-A better quality of the reconstructed images can be achieved by our algorithm
-based on NFFTs.
-For details see \cite{PoSt01IMA, PoSt00SPIE, PoSt02JFAA} and the directory
-{\tt applications/radon}.
-
-Another application of the discrete Radon transform is the discrete Ridgelet
-transform, see e.g. \cite{CaDeDoYi}.
-A simple test program for denoising an image by hard thresholding the ridgelet
-coefficients can be found in {\tt applications/radon}.
-It uses the NFFT-based discrete Radon transform and the translation-invariant
-discrete Wavelet transform based on {\sc MatLab} toolbox WaveLab850
-\cite{WaveLab}.
-See \cite{FeMa05} for details.
-
-\bibliographystyle{abbrv}
-%\bibliographystyle{alpha}
-\bibliography{../references/references}
-\end{document}
diff --git a/doc/tutorial/paper_brief.tex b/doc/tutorial/paper_brief.tex
deleted file mode 100755
index cfa40ae..0000000
--- a/doc/tutorial/paper_brief.tex
+++ /dev/null
@@ -1,2001 +0,0 @@
-%==============================================================================
-%\documentclass[11pt,a4paper,twoside,bibtotoc]{scrartcl}
-\documentclass[acmtoms]{acmtrans2m}
-%==============================================================================
-\acmVolume{V}
-\acmNumber{N}
-\acmYear{08}
-\acmMonth{M}
-
-% LaTeX packages
-\usepackage{caption}
-\usepackage{a4wide}
-\usepackage{amsfonts}
-\usepackage{amsmath}
-\usepackage{theorem}
-\usepackage{color}
-\usepackage{graphicx}
-\usepackage{subfigure}
-\usepackage[plain,Alg.]{algorithm}
-\usepackage{algorithmic}
-\usepackage{multicol}
-\usepackage{multirow}
-%\usepackage{showkeys}
-
-% Allow for more figures on each side
-\renewcommand{\topfraction}{1}
-\renewcommand{\textfraction}{0.2}
-\setcounter{totalnumber}{4}
-
-% Shortcuts for maths symbols.
-\newcommand{\N}{\ensuremath{\mathbb{N}}}
-\newcommand{\T}{\ensuremath{\mathbb{T}}}
-\renewcommand{\S}{\ensuremath{\mathbb{S}}}
-\newcommand{\NZ}{\ensuremath{\mathbb{N}_{0}}}
-\newcommand{\Z}{\ensuremath{\mathbb{Z}}}
-\newcommand{\R}{\ensuremath{\mathbb{R}}}
-\newcommand{\Rp}{\ensuremath{\mathbb{R}^{+}}}
-\newcommand{\Rn}{\ensuremath{\mathbb{R}^n}}
-\newcommand{\Rnn}{\ensuremath{\mathbb{R}^{n \times n}}}
-\newcommand{\C}{\ensuremath{\mathbb{C}}}
-\newcommand{\nfft}{\textsf{NFFT}}
-\newcommand{\cO}{\ensuremath{\mathcal{O}}}
-\newcommand{\tT}{\ensuremath{\text{\tiny{T}}}}
-\newcommand{\ti}{\ensuremath{\text{\scriptsize{i}}}}
-\newcommand{\e}{{\ensuremath{\mathrm{e}}}}
-\newcommand{\eim}[1]{\ensuremath{\mathrm{e}^{-2\pi{\ti} #1}}}
-\newcommand{\eip}[1]{\ensuremath{\mathrm{e}^{ 2\pi{\ti} #1}}}
-\renewcommand{\mathbf}[1]{\ensuremath{\boldsymbol{#1}}}
-\newcommand{\ds}{\displaystyle}
-\newcommand{\sinc}{{\rm sinc}}
-\newcommand{\dist}{{\rm dist}}
-\newcommand{\adj}{{\vdash \hspace*{-1.72mm} \dashv}}
-\DeclareMathOperator{\diag}{diag}
-\DeclareMathOperator{\dd}{d}
-\newcommand{\bend}
-{
- \hspace*{0ex} \hfill
- \hbox{\vrule height 1.5ex \vbox{\hrule width 1.4ex \vskip
- 1.4ex\hrule width 1.4ex} \vrule height 1.5ex}
-}
-
-% Environment Numbering
-\numberwithin{equation}{section}
-\numberwithin{table}{section}
-\numberwithin{figure}{section}
-
-\DeclareCaptionLabelSeparator{periodem}{.\hskip 1em}
-\captionsetup{font=footnotesize,labelfont=,labelsep=periodem}
-
-%\captionnamefont{\footnotesize}
-%\captiontitlefont{\footnotesize}
-
-%===============================================================================
-% Title Page
-%===============================================================================
-\markboth{Keiner, Kunis, Potts}{NFFT, nonequispaced fast Fourier transforms}
-
-\title{Using NFFT~3 -- a software library for various nonequispaced fast
- Fourier transforms}
-\author{
- Jens Keiner\\
- University of L\"ubeck\\
- 23560 L\"ubeck, Germany\\
- keiner at math.uni-luebeck.de
- \and
- Stefan Kunis\\
- Chemnitz University of Technology\\
- 09107 Chemnitz, Germany\\
- kunis at mathematik.tu-chemnitz.de
- \and
- Daniel Potts\\
- Chemnitz University of Technology\\
- 09107 Chemnitz, Germany\\
- potts at mathematik.tu-chemnitz.de
- }
-\begin{abstract}
- NFFT~3 is a software library that implements the nonequispaced fast Fourier
- transform (NFFT) and a number of related algorithms, e.g. nonequispaced fast
- Fourier transforms on the sphere and iterative schemes for inversion. This is
- to provide a survey on the mathematical concepts behind the NFFT and its variants,
- as well as a general guideline for using the library. Numerical examples for
- a number of applications are given.
-\end{abstract}
-
-\category{G.1}{F.2.1}{Numerical analysis, Computation of transforms}
-\terms{Algorithms, Documentation, Theory}
-\keywords{fast Fourier transforms, approximative algorithms}
-
-\begin{document}
-\maketitle
-%===============================================================================
-\section{Introduction} \label{sect:1}
-%===============================================================================
-\setcounter{equation}{0}
-
-NFFT~3 \cite{nfft3} is a C software library for computing
-the nonequispaced fast Fourier transform (NFFT); see Appendix \ref{A.4} for
-alternative denominations, further approaches, and references.
-At the heart of the library is a fast algorithm that generalizes the
-ubiquitous FFT \cite{CoTu65} from equally spaced to arbitrary sampling
-points/spatial nodes, hence the name NFFT; see Appendix \ref{appendix.nfft}.
-Our implementation is based on the popular FFTW library \cite{FFTW05}.
-Unlike the FFT, the NFFT is not trivially inverted, which compells one to
-resort to iterative techniques. Our library also implements these iterative
-algorithms for inversion, as well as several other discrete transforms related to
-or based on the NFFT. This paper is to present an overview over NFFT~3, the
-underlying algorithmic concepts, and intents to serve as a general guideline.
-
-We start in Section \ref{sect:nfft} with the definition of the nonequispaced
-discrete Fourier transform (NDFT) as a generalization of the discrete
-Fourier transform (DFT) to arbitrary nodes. The NFFT algorithm, its key properties,
-and differences to the classical FFT are discussed.
-Having settled the relevant definitions, the basic principles
-of using the NFFT~3 software library are described in Section \ref{sect:lib}.
-%shows how to compile and install the software package on
-%your computer system.
-%A small example in one dimension demonstrates the basic principles.
-An overview over the software interface to the NFFT library routines concludes
-this section.
-In Section \ref{sect:gen}, several transforms that derive from the original NFFT
-are described. This includes, among others, the NFFT on the unit sphere and
-iterative schemes for inversion of the NFFT. Section \ref{sect:sum} is to summarize
-the theoretical arithmetic costs of our algorithms and presents actual
-performance measurements for our implementation.
-In the final Section \ref{sect:exap}, a number of elementary numerical examples
-as well as more advanced applications are given.
-
-We have restricted ourselves to describe brief recipes which should be
-sufficient for most users. For the experienced user, a comprehensive software
-interface documentation is provided within the downloadable software package
-\cite[doc/refman.pdf]{nfft3}.
-
-%===============================================================================
-\section{Nonequispaced discrete Fourier transform} \label{sect:nfft}
-%===============================================================================
-\setcounter{equation}{0}
-
-Fast Fourier transforms (FFTs) have recently been generalized to
-arbitrary sampling situations; see
-\cite{duro93,bey95,AnDa96,st97,ware98,postta01} and the references in Appendix
-\ref{A.4}.
-A convenient approach is to define the discrete Fourier transform (DFT) as the
-evaluation of a trigonometric polynomial, given by its Fourier coefficients,
-at equispaced spatial nodes. This can then be generalized to arbitrary nodes.
-
-\subsection{Discrete Fourier transform}
-Following standard conventions \cite{loan,FFTW05} the (forward) discrete Fourier
-transform (DFT) is defined as the calculation of the sums
-\begin{equation} \label{eq.dft}
- f_{j} = \sum_{k = 0}^{N-1} \hat{f}_{k} \mathrm{e}^{-2\pi\mathrm{i}jk/N} \qquad
- (j=0,\ldots,N-1)
-\end{equation}
-for $N \in \mathbb{N}$ and given coefficients $\hat{f}_{k}\in\C$.
-The transform is readily inverted, i.e.,
-\begin{equation}
- \label{eq.idft}
- \hat{f}_{k} = \frac{1}{N} \sum_{j = 0}^{N-1} f_{j} \mathrm{e}^{2\pi\mathrm{i}kj/N}.
-\end{equation}
-Clearly, the computation of these transforms requires $\mathcal{O}(N^{2})$
-arithmetic operations in general. Fast Fourier transforms (FFTs) are
-$\mathcal{O}(N \log N)$ algorithms to compute the same result.
-
-In matrix-vector notation, the DFT can be written as the matrix-vector product
-\begin{align*}
- \mathbf{f} = \mathbf{F} \, \mathbf{\hat{f}}, \quad
-\mathbf{F} =
-(\mathrm{e}^{-2\pi\mathrm{i}jk/N})_{j,k=0,\ldots,N}
-\end{align*}
-with vectors $\mathbf{f} = (f_j)_{j=0,\ldots,N-1}$,
-$\mathbf{\hat{f}} = (\hat{f}_k)_{k=0,\ldots,N-1}$,
-and the Fourier matrix $\mathbf{F}$.
-%= (\mathrm{e}^{-2\pi\mathrm{i}jk/N})_{j,k=0,\ldots,N}$.
-The inverse transform is equivalent to $\mathbf{\hat{f}} = \tfrac{1}{N}
-\mathbf{F}^{\adj} \, \mathbf{f}$.
-It is straightforward to generalize these concepts to multidimensional
-transforms; see Section \ref{subsect.definition} below. But before we
-define the NDFT, some notation is at order.
-
-\subsection{Notation}
-A $d$-dimensional nonequispaced discrete Fourier transform is defined by a set
-of arbitrary spatial nodes $\mathcal{X}$ and a frequency bandwidth vector
-$\mathbf{N}$.
-Each node $\mathbf x_j$ in the sampling set
-${\cal X}:=\{\mathbf{x}_j \in \T^d:\,j=0,\hdots,M-1\}$ is drawn from the
-$d$-dimensional torus $\mathbb{T}^d \cong [-\tfrac{1}{2},\tfrac{1}{2})^d$
-with the number of nodes equal to $|\mathcal{X}| = M$.
-
-For each dimension $t = 0,\ldots,d-1$, the bandwidth $N_{t} \in 2\N$ is
-defined as a fixed even number. These bandwidths are collected in the
-vector $\mathbf{N} := \left({N_0},\ldots,N_{d-1}\right)^{\top}$.
-Let us define the multi-index set
-\begin{equation*}
- I_{\mathbf{N}} :=
- \mathbb{Z}^d \cap \prod_{t=0}^{d-1} \left[-\tfrac{N_t\rule[-0.4ex]{0ex}{1ex}}{2},
-\tfrac{\rule[-0.4ex]{0ex}{1ex}N_t}{2}\right)
-=\left\{ \mathbf{k}=\left(k_t\right)_{t=0,\hdots,d-1} \in
- \Z^d: - \frac{N_t}{2} \le k_t < \frac{N_t}{2} ,\;t=0,\hdots,d-1\right\}.
-\end{equation*}
-Then the set $I_{\mathbf{N}}$ is a representation of all possible frequencies
-in a transform. For simplicity, we use the convention that a multi-index
-$\mathbf{k}$ can also reference elements in vectors or rows and columns of matrices
-as if it were linearized to $k:=\sum_{t=0}^{d-1}
-(k_t+\frac{N_t}{2}) \prod_{t'=t+1}^{d-1} N_{t'}$.
-
-The inner product between a frequency index $\mathbf{k}$ and a node $\mathbf{x}$
-is defined as usual, $\mathbf{k} \mathbf{x}:=k_0 x_0 +\hdots+
-k_{d-1} x_{d-1}$.
-Furthermore, we define the component-wise vector product $\mathbf{\sigma} \odot
-\mathbf{N}:=\left(\sigma_0 N_0, \hdots, \sigma_{d-1} N_{d-1}, \right)^{\top}$,
-and the reciprocal of a vector $\mathbf{N}$ with nonzero components, $\mathbf{N}^{-1}:=
-\left({N_0}^{-1},\ldots,{N_{d-1}^{-1}}\right)^{\top}$.
-
-The class of functions $f: \T^d \rightarrow \C$ that is naturally associated
-with an index set $I_{\mathbf{N}}$ is the space of $d$-variate, one-periodic
-trigonometric polynomials of degree at most $N_t$ along each dimension $t$,
-$
- T_{\mathbf{N}}:={\rm
-span}\left(\eim{\mathbf{k}\,\mathbf{\cdot}\,}:\,\mathbf{k}
- \in I_{\mathbf{N}}\right)
-$.
-This space has dimension $\dim T_{\mathbf{N}} = |I_{\mathbf{N}}| = N_{0} \cdot
-\ldots \cdot N_{d-1}$.
-
-%-------------------------------------------------------------------------------
-\subsection{Definition}
-\label{subsect.definition}
-%-------------------------------------------------------------------------------
-We are now ready to define the \emph{nonequispaced discrete Fourier transform (NDFT)}
-as a generalization of the forward DFT \eqref{eq.dft} to arbitrary nodes.
-Given Fourier coefficients $\hat f_{\mathbf{k}} \in \C$,
-$\mathbf{k}\in I_{\mathbf{N}}$, as input, the NDFT is defined as the evaluation
-of the corresponding trigonometric polynomial $f \in T_{\mathbf{N}}$ at the
-set of $M$ arbitrary nodes $\mathcal{X}$, i.e., the calculation of the sums
-\begin{equation}
- \label{eq:nfft}
- f_j = \sum_{\mathbf{k}\in I_{\mathbf{N}}} \hat{f}_{\mathbf{k}}
- \eim{\mathbf{k}\mathbf{x}_j} \qquad (j=0,\hdots,M-1).
-\end{equation}
-To see how this compares with the definition of the DFT, take
-$\mathbf{N}=(N,\hdots,N)^{\top}$, $N\in 2\N$, and $N^d$
-equispaced nodes $\mathbf{x}_{\mathbf{j}}={\frac{1}{N}}\mathbf{j}$,
-$\mathbf{j} \in I_{\mathbf{N}}$. Then \eqref{eq:nfft}
-reduces (up to an index shift) to a usual multidimensional forward
-DFT.
-
-The NDFT \eqref{eq:nfft} too can be written as a matrix-vector product,
-\begin{equation*}
- \mathbf{f} = \mathbf{A} \mathbf{\hat{f}},
-\end{equation*}
-with the vectors $\mathbf{f} := \left(f_j\right)_{j=0,\hdots,M-1}$,
-$\mathbf{\hat{f}} :=(\hat{f}_{\mathbf{k}})_{\mathbf{k}\in
-I_{\mathbf{N}}}$, and the nonequispaced Fourier matrix $\mathbf{A}
-:= \left(\eim{\mathbf{k}\mathbf{x}_j}\right)_{j=0,\hdots,M-1;\;\mathbf{k}\in
-I_{\mathbf{N}}}$.
-Typically, the matrix $\mathbf{A}$ is not square. Even if this should be the case,
-it is usually neither orthogonal nor has an inverse. Therefore,
-the definition of an inverse NDFT transform is not canonical.
-Instead, it is customary to define the \emph{adjoint NDFT} by
-the matrix-vector product
-\[
- \mathbf{\hat{h}} = \mathbf{A}^{\adj} \mathbf{f}.
-\]
-This is equivalent to the sums
-\begin{equation}
- \label{eq:nfftH}
- \hat{h}_{\mathbf{k}} = \sum_{j=0}^{M-1} \hat{f}_{ j} \eip{\mathbf{k}
- \mathbf{x}_j} \qquad (\mathbf{k}\in I_{\mathbf{N}}).
-\end{equation}
-
-The NFFT algorithm, implemented in our library, is a fast approximate algorithm
-to compute the sums in \eqref{eq:nfft}. It contains also a fast algorithm to
-compute the adjoint transform \eqref{eq:nfftH}.
-
-%-------------------------------------------------------------------------------
-\subsection{Key features}
-%-------------------------------------------------------------------------------
-A $d$-dimensional DFT of degree $N$ along each dimension has $N^d$
-input and output coefficients. This generally requires $\mathcal{O}(N^{d+1})$
-to compute the transform. FFTs reduce this to $\mathcal{O}(N^{d} \log N)$.
-
-The cost for nonequispaced fast transforms is similar. However, it is important
-to note that there the number of nodes as well as their configuration are arbitrary.
-This generally implies $M \neq |I_{\mathbf{N}}|$.
-The direct calculation of the sums in \eqref{eq:nfft}, an algorithm which we
-also denote NDFT, requires $\cO(M |I_{\mathbf{N}}|)$ floating point operations.
-%and uses no additional scratch memory.
-Since the number of nodes $M$ is typically of order $|I_{\mathbf{N}}|$, this cost
-is considered too expensive for most applications.
-The NFFT~3 library implements a fast approximate algorithm, called
-NFFT, which computes the same result using only
-${\cal O}\left(|I_{\mathbf{N}}| \log |I_{\mathbf{N}}| + |\log \varepsilon|^d
-M\right)$ operations.
-Here, $\varepsilon$ is the desired accuracy of the computation. The
-constant contained in this notation depends on the amount of extra
-memory spent for precomputation; see Appendix \ref{sect:windows}.
-
-Let us briefly compare NDFT/NFFT and classical DFT/FFT to observe some
-key features and differences:
-While a multidimensional DFT/FFT is uniquely defined by the bandwidth
-vector $\mathbf{N}$ alone, i.e., the sampling set $\mathcal{X}$ is fixed,
-the NDFT/NFFT also depend on the actual choice of $\mathcal{X}$;
-see Subsection \ref{subsect.definition}.
-FFT algorithms are usually exact algorithms with small errors in the result
-caused only by limitations of floating point arithmetic.
-The NFFT algorithm purposely introduces a systematic error in the computation
-to achieve its favorable arithmetic cost.
-This additional error can be controlled, and, if deemed necessary, can be
-reduced to the order of machine precision.
-To this end, the NFFT uses an \emph{oversampled} FFT internally (in our case
-we use routines from FFTW) together with a pre- and post-processing step.
-%While the pre-processing step is exact, the post-processing step contains a
-%\emph{truncated} approximation scheme.
-This introduces two additional parameters,
-an \emph{oversampling factor} and a \emph{truncation parameter}, that
-control the accuracy of the NFFT. More details are found in Appendix
-\ref{appendix.nfft}.
-
-%\textbf{Dem ersten Referee folgend, koennten hier mehr Details zum Algorithmus
-%stehen, insbesondere welche zusaetzlichen Parameter der Benutzer jetzt
-%einstellen kann. Gut waeren sicher Verweise auf Stellen weiter hinten, die auf
-%einzelne Punkte genauer eingehen. Ich denke, eine gute Erklaerung der
-%zusaetzlichen Freiheitsgrade und Parameter ist sehr wichtig fuer das
-%Verstaendnis.}
-%For now, it suffices to note that the NFFT algorithm has a similar complexity
-%than the classical FFT algorithm but that it is an approximate algorithm whose
-%accuracy is controlled by the user.
-
-%===============================================================================
-\section{Guidelines for using the library} \label{sect:lib}
-%===============================================================================
-NFFT~3 is a free software library completely written in C.
-The downloadable source code comes as a GNU-style package and follows standard
-conventions. Brief installation instructions and a source tree can be found in
-Appendix \ref{sect:inst}.
-To compile and link programmes that use NFFT~3, you also need the FFTW library
-\cite{fftw} in version 3.0.0 or better.
-
-%-------------------------------------------------------------------------------
-\subsection{Interface} \label{sect:general_proc}
-%-------------------------------------------------------------------------------
-The interface of NFFT~3 resembles that of FFTW 3. A transform is
-specified by creating a \emph{plan} -- a data structure that contains the
-information to determine the characteristics of a transform. In contrast to
-FFTW 3, it is also necessary to call a precomputation routine, once the
-nodes $\cal X$ have been provided. After these initial steps, transforms are
-executed on input data by invoking an execution routine.
-At the end of its lifetime, a plan is finalized and all associated data
-structures are destroyed.
-
-%-------------------------------------------------------------------------------
-\subsection{Typical workflow} \label{sect:general_ex}
-%-------------------------------------------------------------------------------
-This brief example is to illustrate the basic principles. It shows how to
-compute a one-dimensional NFFT.
-
-%-------------------------------------------------------------------------------
-\subsubsection*{Creating a plan}
-%-------------------------------------------------------------------------------
-An NFFT plan \verb"p" is declared by
-\begin{verbatim}
- nfft_plan p;
-\end{verbatim}
-The simplest way to initialize the plan for a one-dimensional transform is to
-call
-\begin{verbatim}
- nfft_init_1d(&p,N0,M);
-\end{verbatim}
-The arguments to \verb"nfft_init_1d" are the pointer \verb"&p" to the yet
-uninitialized plan, the number of Fourier
-coefficients \verb"N0", and the number of nodes \verb"M".
-This creates and initializes all data structures inside the
-plan. Memory for Fourier coefficients, nodes, and
-function values is allocated automatically.
-
-%But to completely specify the transform, we also have to provide the
-%nodes.
-
-%-------------------------------------------------------------------------------
-\subsubsection*{Providing the nodes}
-%-------------------------------------------------------------------------------
-The nodes have to be stored in the member array \verb"p.x".
-In one dimension, the coordinate of the $j$th node is a number in
-$[-\tfrac{1}{2},\tfrac{1}{2})$ that is stored at the index $j$, i.e.,\\[2ex]
-%\begin{verbatim}
-\verb" p.x[j] = "\textsl{your choice in [-0.5,0.5)}\verb";"
-%\end{verbatim}
-
-%-------------------------------------------------------------------------------
-\subsubsection*{Precomputation}
-%-------------------------------------------------------------------------------
-The precomputation procedure for the plan is invoked (conditionally) by
-\begin{verbatim}
- if (p.nfft_flags & PRE_ONE_PSI)
- nfft_precompute_one_psi(&p);
-\end{verbatim}
-NFFT~3 uses different strategies here which are free of choice by the user via
-passing the appropriate flag to one of the more advanced plan initialization
-routines. A default strategy is chosen by the simple initialization routines.
-For convenience, the flag \verb+PRE_ONE_PSI+ indicates that precomputation
-is necessary; see Appendix \ref{sect:windows} for details.
-
-%-------------------------------------------------------------------------------
-\subsubsection*{Providing the Fourier coefficients}
-%-------------------------------------------------------------------------------
-Fourier coefficients are stored in the one-dimensional member array
-\verb"p.f_hat". In the one-dimensional case this array contains the Fourier
-coefficients in the order $\hat{f}_{-N/2},\hdots,\hat{f}_{N/2-1}$.
-They are accessed by\\[2ex]
-%\begin{verbatim}
-\verb" p.f_hat[k] = "\textsl{your choice in the complex numbers}\verb";"
-%\end{verbatim}
-
-%-------------------------------------------------------------------------------
-\subsubsection*{Execution}
-%-------------------------------------------------------------------------------
-To compute \eqref{eq:nfft} with the NFFT algorithm, invoke
-\begin{verbatim}
- nfft_trafo(&p);
-\end{verbatim}
-The $M$ output values $f_j$ are stored in the one-dimensional member array
-\verb"p.f". To compute a second NFFT with different input data, simply
-update the Fourier coefficients in \verb"p.f_hat" and invoke \verb"nfft_trafo"
-a second time.
-
-The adjoint transform \eqref{eq:nfftH} is computed by \verb+nfft_adjoint+. Here,
-the input is put in \verb"p.f" and the output is written to \verb"p.f_hat".
-
-%-------------------------------------------------------------------------------
-\subsubsection*{Finalization}
-%-------------------------------------------------------------------------------
-Since the initialization routine for the plan has allocated memory, it is
-essential to finalize the plan, once it is no longer
-needed. This is done by
-\begin{verbatim}
- nfft_finalize(&p);
-\end{verbatim}
-
-%-------------------------------------------------------------------------------
-\subsubsection*{Example}
-%-------------------------------------------------------------------------------
-Here is a brief example that computes a one-dimensional NFFT with 14
-Fourier coefficients and 19 nodes. The routine is part of the example program
-\verb"simple_test.c" which is found under \verb"examples/nfft/" in the
-software package. It uses some auxilliary routines from the NFFT~3 header
-\verb"util.h" to initialize vectors with random entries and to write them
-to the standard output.
-\begin{verbatim}
- void simple_test_nfft_1d()
- {
- nfft_plan p; int N=14; int M=19;
- nfft_init_1d(&p,N,M);
- nfft_vrand_shifted_unit_double(p.x,p.M_total);
- if(p.nfft_flags & PRE_ONE_PSI) nfft_precompute_one_psi(&p);
- nfft_vrand_unit_complex(p.f_hat,p.N_total);
- nfft_vpr_complex(p.f_hat,p.N_total,"given Fourier coefficients, f_hat");
- ndft_trafo(&p);
- nfft_vpr_complex(p.f,p.M_total,"ndft, f");
- nfft_trafo(&p);
- nfft_vpr_complex(p.f,p.M_total,"nfft, f");
- nfft_finalize(&p);
- }
-\end{verbatim}
-
-%-------------------------------------------------------------------------------
-\subsection{Multivariate transforms}
-%-------------------------------------------------------------------------------
-In $d$ dimensions, the nodes $\mathbf{x}_j$ in the sampling set
-$\mathcal{X}$, as well as the frequency indices $\mathbf{k}$ in the set
-$I_{\mathbf{N}}$ are $d$-dimensional vectors. This affects the storage layout of
-the arrays \verb"x" and \verb"f_hat". Generally, both remain
-one-dimensional and all $d$-dimensional quantities are linearized.
-For \verb"x" this means that the $t$th coordinate of the $j$th node
-($t=0,\ldots,d-1$; $j = 0,\ldots,M-1$) is defined via\\[\parskip]
-
-\noindent\verb" p.x[d*j+t] = "\textsl{your choice in [-0.5,0.5)}\verb";"\\[\parskip]
-
-\noindent This linear ordering has been chosen because the node configuration
-may be completely unstructured.
-Analogously, the Fourier coefficient $\hat{f}_{\mathbf{k}}$ is stored in
-\verb"f_hat[k]" at the linearized index \verb"k"$ = \sum_{t=0}^{d-1}
-(k_t+\frac{N_t}{2}) \prod_{t'=t+1}^{d-1} N_{t'}$.
-
-Due to software engineering considerations, we do not offer alternative data
-layouts, even if the nodes belong to a multidimensional structure, e.g. a
-tensor product grid. Moreover, NFFT~3 does currently not offer support for strided
-data or even more general FFTW-style i/o-tensors.
-
-%-------------------------------------------------------------------------------
-\subsection{Programming interface and data structures}
-%-------------------------------------------------------------------------------
-The programming interface for the NFFT module is summarized in
-Table \ref{table:nfft_user_fun}. To allow for a comparison with the NDFT algorithm,
-the routine \verb"ndft_trafo" computes the transform via direct
-evaluation of \eqref{eq:nfft}. The routines \verb"ndft_adjoint"
-and \verb"nfft_adjoint" compute adjoint transforms \eqref{eq:nfftH},
-respectively. The Initialization routines \verb"nfft_init_1d",
-\verb"nfft_init_2d", \verb"nfft_init_3d" allow for convenient initialization
-of plans for one-, two-, and three-dimensional transforms with default
-parameters. Plans for general multivariate transforms are created using
-\verb"nfft_init". For the experienced user, the function \verb"nfft_init_guru"
-allows control over all relevant parameters.
-
-The most important members of the \verb"nfft_plan" data type are listed in Table
-\ref{table:nfft_members}. Only \verb"f_hat", \verb"f", and
-\verb"x" are to be modified by the user.
-
-\begin{acmtable}{0.72\textwidth}
- \centering%
- \vspace{1.3ex}%
- \begin{tabular}{l}
- \verb"void ndft_trafo(nfft_plan* p)" \\
- \verb"void ndft_adjoint(nfft_plan* p)" \\
- \verb"void nfft_trafo(nfft_plan* p)" \\
- \verb"void nfft_adjoint(nfft_plan* p)" \\
- \verb"void nfft_init_1d(nfft_plan* p, int N0, int M)" \\
- \verb"void nfft_init_2d(nfft_plan* p, int N0, int N1, int M)" \\
- \verb"void nfft_init_3d(nfft_plan* p, int N0, int N1, int N2, int M)" \\
- \verb"void nfft_init(nfft_plan* p, int d, int* N, int M)" \\
- \verb"void nfft_init_guru(nfft_plan* p, int d, int* N, int M, int* n," \\
- \verb" int m, unsigned nfft_flags, unsigned fftw_flags)" \\
- \verb"void nfft_precompute_one_psi(nfft_plan* p)" \\
- \verb"void nfft_check(nfft_plan* p)" \\
- \verb"void nfft_finalize(nfft_plan* p)"
- \end{tabular}%
- \vspace{0.5ex}%
- \caption{Interface to NDFT/NFFT transforms in NFFT~3.}%
- \label{table:nfft_user_fun}%
-\end{acmtable}
-
-\begin{acmtable}{0.72\textwidth}
- \centering%
- \vspace{1.3ex}%
- \begin{tabular}{r|l|l|l}%
- Type & Name & Size & Description
- \\
- \hline
- \verb"int" & \verb"d" & 1 & Spatial dimension $d$
- \\
- \verb"int*" & \verb"N" & $d$ & Multibandwidth $\mathbf{N}$
- \\
- \verb"int" & \verb"N_total" & 1 & Number of coefficients $|I_{\mathbf{N}}|$
- \\
- \verb"int" & \verb"M_total" & 1 & Number of nodes $M$
- \\
- \verb"double complex*" & \verb"f_hat" & $|I_{\mathbf{N}}|$ & Fourier coefficients $\mathbf{\hat{f}}$ or
- \\
- & & & adjoint coefficients $\mathbf{\hat{h}}$
- \\
- \verb"double complex*"& \verb"f" & $M$ & Samples $\mathbf{f}$
- \\
- \verb"double*" & \verb"x" & $dM$ & Sampling set ${\cal X}$
- \end{tabular}%
- \vspace{0.5ex}%
- \caption{Most important members of the structure \texttt{nfft\_plan}.}
- \label{table:nfft_members}
-\end{acmtable}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%
-%\pagebreak
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%%%%%%%%%%%%%%%%%%%
-
-%===============================================================================
-\section{Generalizations} \label{sect:gen}
-%===============================================================================
-
-This section surveys further generalizations of the NFFT algorithm that are
-implemented by the NFFT~3 library. The interfaces resemble that of the NFFT
-module described above, with the prefix \verb+nfft_+ replaced by the
-acronym related to the specific transform in all names. Details can be found in
-the API documentation accompanying the library. All algorithms, with exception of
-the discrete polynomial transform, are based on the same computational procedure
-as the NFFT.
-
-%-------------------------------------------------------------------------------
-\subsection{NFST/NFCT - Nonequispaced fast sine/cosine transforms}
-%-------------------------------------------------------------------------------
-Discrete (co)sine transforms (DCT/DST) are closely related real variants of the
-discrete Fourier transform DFT. In the same way, nonequispaced discrete (co)sine
-transforms (NDCT/NDST) are real transforms related to the NDFT. They are
-parameterised by arbitrary nodes $\mathbf{x}_j \in [0,\frac{1}{2}]^d$.
-Frequencies $\mathbf{k}$ are taken from one of the index sets
-\begin{align*}
- I_{\mathbf{N}}^C &:= \left\{ \mathbf{k}=\left(k_t\right)_{t=0,\hdots,d-1}
- \in \Z^d: 0 \le k_t < N_t ,\;t=0,\hdots,d-1\right\}, \\
- I_{\mathbf{N}}^S &:= \left\{ \mathbf{k}=\left(k_t\right)_{t=0,\hdots,d-1} \in
- \Z^d: 1 \le k_t < N_t ,\;t=0,\hdots,d-1\right\},
-\end{align*}
-where $I_{\mathbf{N}}^C$ corresponds to the NDCT and $I_{\mathbf{N}}^S$ to the
-NDST, respectively. For given real Fourier coefficients
-$\hat f_{\mathbf{k}} \in \R$, NDCT and NDST are defined by
-\begin{equation*}
- f_j = \sum_{\mathbf{k}\in I_{\mathbf{N}}^C}
-\hat{f}_{\mathbf{k}}
- \cos(2\pi(\mathbf{k}\odot\mathbf{x}_j))\quad
- (j=0,\hdots,M-1),
- \qquad
- f_j = \sum_{\mathbf{k}\in I_{\mathbf{N}}^S}
-\hat{f}_{\mathbf{k}}
- \sin(2\pi(\mathbf{k}\odot\mathbf{x}_j)),
-\end{equation*}
-respectively. Here, for notational convenience, we have defined
-$\cos(\mathbf{x}) := \cos(x_0) \cdot \hdots \cdot \cos(x_{d-1})$ and
-$\sin(\mathbf{x}) := \sin(x_0) \cdot \hdots \cdot \sin(x_{d-1})$.
-
-Straightforward algorithms for these transforms need $\cO(M
-|I_{\mathbf{N}}^C|)$ and $\cO(M |I_{\mathbf{N}}^S|)$ arithmetic operations.
-The fast algorithms (NFST/NFCT) need $\cO(|I_{\mathbf{N}}^S| \log
-|I_{\mathbf{N}}^S| + |\log \varepsilon|^d M)$ and $\cO(|I_{\mathbf{N}}^C| \log
-|I_{\mathbf{N}}^C| + |\log \varepsilon|^d M)$ operations, respectively.
-Note that for these real transforms, the adjoint variants coincide with the
-transposed versions. Details about the implemented algorithms can be found in
-\cite{tili00,po01,fepo02}.
-
-%-------------------------------------------------------------------------------
-\subsection{NSFFT - Nonequispaced sparse fast Fourier transform}
-%-------------------------------------------------------------------------------
-In higher dimensions, the so-called ``curse of dimensionality''
-\cite{Zeng91,Spr00,BuZe04} often requires the use of Fourier series where
-frequency indices are restricted to the hyperbolic cross
-\begin{equation*}
- H_N^d := \bigcup_{\mathbf{N}\in\N^d,\, |I_{\mathbf{N}}| = N} I_{\mathbf{N}},
- \qquad N=2^{J+2},\;J\in\NZ,
-\end{equation*}
-which has only $\cO(N \log^{d-1} N)$ degrees of freedom compared to
-$\cO(N^d)$ in the plain case. If compared to ordinary Fourier series,
-the approximation error commited, which is typically measured in a norm of
-dominated mixed smoothness, can be shown to get worse by a factor of only
-$\log^{d-1} N$ (see \cite{Spr00}).
-The \emph{nonequispaced sparse discrete Fourier transform (NSDFT)} is defined as
-the evaluation of
-\begin{equation*}
- f_j = \sum_{\mathbf{k}\in H_N^d}
- \hat f_{\mathbf{k}} \eim{\mathbf{k} \mathbf{x}_j} \qquad (j=0,\ldots,M-1)
-\end{equation*}
-with given nodes $\mathbf{x}_j\in \T^d$ and Fourier coefficients
-$\hat f_{\mathbf{k}}\in\C$. The algorithms implemented in NFFT~3 reduce the
-number of arithmetic operations from $\cO(M N\log^{d-1}N)$ to
-$\cO(N\log^2 N+|\log \varepsilon|^2 M)$ in two dimensions ($d = 2$), and to
-$\cO(N^{3/2} \log N+ |\log \varepsilon|^3 M)$ in three dimensions ($d = 3$).
-Details are found in \cite{FeKuPo} for details.
-
-%-------------------------------------------------------------------------------
-\subsection{NNFFT - fast Fourier
-transform for nonequispaced data in space and frequency domain}
-%-------------------------------------------------------------------------------
-The NNFFT is a variant of the NFFT where also frequencies are no
-longer equispaced integer multi-indices.
-The transform is defined by
-\begin{equation*}
- f_j = \sum_{l=0}^{L-1} \hat f_l \eim{\left(\mathbf{v}_l \odot
- \mathbf{N}\right)\mathbf{x}_j} \qquad (j =0,\hdots,M-1)
-\end{equation*}
-with Fourier coefficients $\hat{f}_l \in\C$, and arbitrary frequencies
-$\mathbf{v}_l \in \T^d$ and nodes $\mathbf{x}_j \in \T^d$.
-Here, $\mathbf{N}\in \N^d$ is called the \emph{nonharmonic
-bandwidth}. This transform is known as \textit{fast Fourier
-transform for nonequispaced data in space and frequency domain (NNFFT)}
-\cite{duro93,elst,postta01} or as \emph{type 3 nonuniform FFT} \cite{LeGr05}
-and takes $\cO(|I_{\mathbf{N}}|\log|I_{\mathbf{N}}| + |\log
-\varepsilon|^d(L+M))$ arithmetic operations to compute.
-
-%------------------------------------------------------------------------------
-\subsection{NFSFT - nonequispaced fast spherical Fourier transform}
-\label{sect:gen:nfsft}
-%------------------------------------------------------------------------------
-Denote by $\S^2:= \big\{\mathbf{x} \in \R^{3}:\;\|\mathbf{x}\|_2=
-1\big\}$ the two-dimensional unit sphere.
-In spherical cordinates, any point on $\S^2$ is identified with a pair of
-angles $(\vartheta,\varphi)^{\top}\in [0,\pi]\times [0,2\pi)$.
-Hence, a sampling set on the sphere can be defined by
-$
- \mathcal{X}: = \left\{\left(\vartheta_{j},\varphi_{j}\right)
- %\in \mathbb{S}^2
- :\,j=0,\hdots,M-1\right\}.
-$
-A convenient basis of orthogonal functions on $\S^2$ are spherical harmonics
-$Y_k^n : \S^2 \rightarrow \C$, $k \in \mathbb{N}_{0}$, $|n| \le k$,
-defined by
-\begin{equation*}
- Y_k^n(\vartheta,\varphi) := P_k^{|n|}(\cos\vartheta)
- \, \mathrm{e}^{\mathrm{i} n \varphi}.
-\end{equation*}
-Here, $P_k^{|n|}$ are the associated Legendre
-functions of degree $k$ and order $|n|$ (see \cite[pp. 331]{abst}).
-Frequencies for a finite transform up to bandwidth $N$ are collected in the
-index set
-\[
-J_{N} := \{(k,n)\in\Z^2:\,k=0,\ldots,N;\; n=-k,\ldots,k\}.
-\]
-The \emph{nonequispaced discrete spherical Fourier transform (NDSFT)} is
-defined as the calculation of
-\begin{equation*}
- f_j = \sum_{(k,n) \in \, J_{N}} \hat{f}_k^n \,
- Y_k^n\left(\vartheta_{j},\varphi_{j}\right) \qquad (j=0,\ldots,M-1).
-\end{equation*}
-
-The direct method (NDSFT) clearly needs $\cO(M N^2)$ arithmetic operations.
-The approximate $\cO(N^2 \log^2 N + |\log{\varepsilon}|^2M)$ algorithm
-implemented in the NFFT~3 library (\emph{NFSFT}) is a combination of the
-fast polynomial transform (FPT; see next subsection) and the NFFT.
-%, and are given in Algorithms \ref{alg:NFSFT} and
-%\ref{alg:adjointNFSFT}.
-It was introduced in \cite{kupo02} while the adjoint variant was
-developed in \cite{KePo06}. Other algorithms, mostly for particular
-sampling sets, exist (e.g. \cite{drhe,SuTa01,roty}).
-
-%\begin{algorithm}[tb]
-% \caption[NFSFT]{Nonequispaced fast spherical Fourier transform (NFSFT).}
-% \label{alg:NFSFT}
-% \begin{tabbing}
-% Input: \= \kill
-% Input: \> $M, N \in \mathbb{N}$, $\left(\vartheta_{j},
-% \varphi_{j} \right) \in [0,\pi]\times [0,2\pi)$, $j=0,\ldots,M-1$,
-% $\hat{f}_{k}^n \in \mathbb{C}$, $(k,n) \in J_{N}$.
-% \end{tabbing}
-% \begin{algorithmic}[1]
-% \itemsep=1.1ex
-% \STATE For $n=-N,\hdots,N$ convert $\sum_{k=|n|}^N \hat{f}_k^n
-% P_k^{n}(\cos\vartheta_j)$ into $\sum_{k=-N}^N \hat{g}_k^n \, \mathrm{e}^{k
-% \vartheta_{j}}$ by FPTs.
-% \STATE For $j=0,\hdots,M-1$ compute $f_j=\sum_{n=-N}^N\sum_{k=-N}^N
-% \hat{g}_k^n \, \mathrm{e}^{n\varphi_j+k \vartheta_{j}}$ by an NFFT.\\[2ex]
-% \end{algorithmic}
-% Output: Approximated function values $f_j$, $j=0,\ldots,M-1$.\\
-% Complexity: $\mathcal{O}\left(N^2 \log^2 N + M\right)$.
-%\end{algorithm}
-
-%\begin{algorithm}[tb]
-% \caption[Adjoint NFSFT]{Adjoint nonequispaced fast spherical Fourier
-% transform (adjoint NFSFT).}
-% \label{alg:adjointNFSFT}
-% \begin{tabbing}
-% Input: \= \kill
-% Input: \> $M, N \in \mathbb{N}$, $\left(\vartheta_{j},
-% \varphi_{j} \right) \in [0,\pi]\times [0,2\pi)$, $f_j \in\C$,
-% $j=0,\ldots,M-1$.
-% \end{tabbing}
-% \begin{algorithmic}[1]
-% \itemsep=1.1ex
-% \STATE For $k,n = -N,\hdots,N$ compute $\tilde{h}_{k}^n=\sum_{j=0}^{M-1}
-% f_j \mathrm{e}^{n\varphi_j+k \vartheta_{j}}$ by an adjoint NFFT.
-% \STATE
-% For $n=-N,\hdots,N$ convert $\sum_{k=-N}^N \tilde{h}_{k}^n \,
-% \mathrm{e}^{k \vartheta_{j}}$ into $\sum_{k=|n|}^N \hat{h}_k^n
-% P_k^{n}(\cos\vartheta_j)$ by adjoint FPTs.\\[2ex]
-% \end{algorithmic}
-% Output: Approximated coefficients $\hat{h}_{k}^n$, $(k,n) \in J_N$.\\
-% Complexity: $\mathcal{O}\left(N^2 \log^2 N + M\right)$.
-%\end{algorithm}
-
-%-------------------------------------------------------------------------------
-\subsection{FPT - fast polynomial transform} \label{sect:fpt}
-%-------------------------------------------------------------------------------
-A \emph{discrete polynomial transform} (DPT) is a generalization of the DFT
-from complex exponentials $\mathrm{e}^{\mathrm{i} k x}$ to
-systems of algebraic polynomials that satisfy a three-term recurrence;
-see \cite[pp. 773]{abst}.
-More precisely, let $p_{0},p_{1},\hdots:[-1,1]\rightarrow\R$ be a sequence of
-polynomials satisfying the recurrence
-\begin{align}
- \label{eq.threeterm}
- p_{k+1}(x) & = (\alpha_{k} x + \beta_{k})p_{k}(x) + \gamma_{k} p_{k-1}(x) &
- (k \ge 0),
-\end{align}
-where $p_{-1}(x) := 0$, $p_{0}(x) := 1$, and $\alpha_{k} \neq 0$, $k\ge 0$.
-Then every $p_{k}$ is a degree-$k$ polynomial. Typical examples are the
-Legendre polynomials $P_k(x)$ or the Chebyshev polynomials of first
-kind $T_{k}(x) := \cos(k \arccos x)$. Let a finite linear expansion of the form
-\begin{equation*}
- f(x) = \sum_{k=0}^{N} a_{k} p_{k}(x)
-\end{equation*}
-be given. The DPT in our sense is defined as the
-computation of the coefficients $b_{k}$ in the expansion
-\[
- f(x) = \sum_{k=0}^N b_{k} T_{k}(x).
-\]
-Implemented directly, this computation takes $\cO(N^2)$ arithmetic operations.
-The \emph{fast polynomial transform (FPT)} is an $\cO(N \log^2 N)$
-algorithm to compute the same result. It is implemented in the
-NFFT~3 library following the approach in \cite{postta98}. This is based on using
-the three-term-recurrence relation \eqref{eq.threeterm} repeatedly, together
-with a fast method for polynomial multiplication in the Chebyshev
-basis, and a cascade-like summation process. More details can be found in
-\cite{drhe,drhero,postta98,po01} and references therein.
-
-%------------------------------------------------------------------------------
-\subsection{Inversion and solver module} \label{sect:general_proc_infft}
-%------------------------------------------------------------------------------
-The NDFT differs from the DFT also in that an inversion formula similar to
-\eqref{eq.idft} generally does not exist; see Section \ref{subsect.definition}.
-A more general view is at order to define what should be an inverse NDFT/NFFT
-transform. This section is devoted to explain our approach for the NFFT. But
-everything also applies to the mentioned NFFT variants.
-
-Inversion of the NDFT means the computation of Fourier coefficients
-$\hat{f}_{\mathbf{k}}$, $\mathbf{k} \in I_{\mathbf{N}}$, from given function
-samples $y_{j}$ at nodes $\mathbf{x}_j$, $j = 0,\ldots,M-1$.
-In matrix-vector notation, this is equivalent to solving the linear system
-\begin{equation}\label{eq:infft}
- \mathbf{A} \mathbf{\hat{f}} \approx \mathbf{y}.
-\end{equation}
-%for the vector $\mathbf{\hat{f}}\in\C^{|I_{\mathbf{N}}|}$.
-This can be either and overdetermined system if $|I_{\mathbf{N}}| \le
-M$ (this includes the quadratic case) or an underdetermined system
-if $|I_{\mathbf{N}}| > M$.
-Generally, this compels us to look for a pseudo-inverse solution
-$\mathbf{\hat{f}}^{\dagger}$ (see e.g. \cite[p. 15]{Bj96}).
-For this, we also require that the nonequispaced Fourier matrix $\mathbf{A}$
-have full rank. Eigenvalue estimates in \cite{FeGrSt95,BaGr03,KuPo04} indeed assert that this
-condition is satisfied if the sampling set $\cal X$ is uniformly dense or uniformly
-separated with respect to the inverse bandwidth $\mathbf{N}^{-1}$.
-
-For the overdetermined case, we now consider a weighted least squares problem,
-while for the consistent underdetermined case, we look for a solution of an
-interpolation problem. Both can be solved by iterative algorithms using
-NFFT and adjoint NFFT to realize fast matrix-vector multiplications
-involving $\mathbf{A}$ and $\mathbf{A}^{\adj}$, respectively.
-
-%-------------------------------------------------------------------------------
-\subsubsection*{Weighted least squares problem}
-%-------------------------------------------------------------------------------
-If $|I_{\mathbf{N}}|\le M$, the linear system \eqref{eq:infft} is overdetermined
-which typically implies that the given data $y_j\in \C,\;j=0,\hdots,M-1,$ can
-only be approximated up to a residual $\mathbf{r}:=\mathbf{y}-\mathbf{A}
-\mathbf{\hat{f}}$. Therefore, we consider the \emph{weighted least squares problem}
-\begin{equation*}
-\sum_{j=0}^{M-1} w_j |y_j-f(x_j)|^2
- \stackrel{\mathbf{\hat{f}}}{\rightarrow} \min
-\end{equation*}
-with weights $w_j> 0$, $\mathbf{W}:=\diag(w_j)_{j=0,\hdots,M-1}$. This weights
-might be used to compensate for clusters in the sampling set ${\cal X}$.
-The weighted least squares problem is equivalent to solving
-the \emph{weighted normal equation of first kind},
-$
-\mathbf{A}^{\adj} \mathbf{W} \mathbf{A} \mathbf{\hat{f}} = \mathbf{A}^{\adj}
-\mathbf{W} \mathbf{y}.
-$
-This can be done, e.g., by using the Landweber (or Richardson) iteration,
-the steepest descent method, or the conjugate gradient method for least
-squares problems. The latter method is given in pseudo-code in Algorithm
-\ref{algo:wCGNR(E)} (left). The NFFT~3 library nevertheless implements
-all three algorithms.
-
-\setlength{\columnseprule}{0.5pt}
-
-\begin{algorithm}[tp]
- \hrule
- \footnotesize
- \rule[-1.5ex]{0ex}{5ex}Input: $\mathbf{y} \in \mathbb{C}^M,\, {\mathbf{\hat{f}}}_0 \in
- \mathbb{C}^{|I_{\mathbf{N}}|}$.
- \begin{multicols}{2}
- \begin{algorithmic}%[1]
- \topsep=1.1ex
- \itemsep=1.1ex
- \STATE $\mathbf{r}_0=\mathbf{y} - \mathbf{A} \mathbf{\hat{f}}_0$
- \STATE $\mathbf{\hat{z}}_0=\mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_0$
- \STATE $\mathbf{\hat{p}}_0=\mathbf{\hat{z}}_0$
- \FOR{$l=0,\hdots$}
- \topsep=1.1ex
- \itemsep=1.1ex
- \STATE $\mathbf{v}_l=\mathbf{A} \mathbf{\hat{W}} \mathbf{\hat{p}}_l$
- \STATE $\alpha_l=\frac{\mathbf{\hat{z}}_l^{\adj} \mathbf{\hat{W}}
- \mathbf{\hat{z}}_l} {\mathbf{v}_l^{\adj} \mathbf{W} \mathbf{v}_l}$
- \STATE $\mathbf{\hat{f}}_{l+1}=\mathbf{\hat{f}}_{l} +
- \alpha_l \mathbf{\hat{W}} \mathbf{\hat{p}}_l$
- \STATE $\mathbf{r}_{l+1}=\mathbf{r}_{l}- \alpha_l \mathbf{v}_l$
- \STATE $\mathbf{\hat{z}}_{l+1}=\mathbf{A}^{\adj} \mathbf{W}
- \mathbf{r}_{l+1}$
- \STATE $\beta_l=\frac{\mathbf{\hat{z}}_{l+1}^{\adj}
- \mathbf{\hat{W}}\mathbf{\hat{z}}_{l+1}}
- {\mathbf{\hat{z}}_l^{\adj} \mathbf{\hat{W}}\mathbf{\hat{z}}_l}$
- \STATE $\mathbf{\hat{p}}_{l+1}=\beta_l \mathbf{\hat{p}}_l +
- \mathbf{\hat{z}}_{l+1}$
- \ENDFOR
- \end{algorithmic}
-\columnbreak
- \begin{algorithmic}
- \topsep=1.1ex
- \itemsep=1.1ex
- \STATE $\mathbf{r}_0=\mathbf{y} - \mathbf{A} \mathbf{\hat{f}}_0$
- \STATE $\mathbf{\hat{p}}_0=\mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_0$
- \FOR{$l=0,\hdots$}
- \topsep=1.1ex
- \itemsep=1.1ex
- \STATE $\alpha_l=\frac{\mathbf{r}_l^{\adj} \mathbf{W} \mathbf{r}_l}
- {\mathbf{\hat{p}}_l^{\adj} \mathbf{\hat{W}} \mathbf{\hat{p}}_l}$
- \STATE $\mathbf{\hat{f}}_{l+1}=\mathbf{\hat{f}}_{l}
- +\alpha_l \mathbf{\hat{W}} \mathbf{\hat{p}}_l$
-
- \STATE $\mathbf{r}_{l+1}=\mathbf{r}_{l}- \alpha_l \mathbf{A}
-\mathbf{\hat{W}} \mathbf{\hat{p}}_l$
-
- \STATE $\beta_l=\frac{\mathbf{r}_{l+1}^{\adj} \mathbf{W}
-\mathbf{r}_{l+1}}
- {\mathbf{r}_l^{\adj} \mathbf{W} \mathbf{r}_l}$
-
- \STATE $\mathbf{\hat{p}}_{l+1}=\beta_l \mathbf{\hat{p}}_l +
-\mathbf{A}^{\adj} \mathbf{W} \mathbf{r}_{l+1}$
- \ENDFOR
- \end{algorithmic}
-\end{multicols}
- Output: The $l$th approximation to the solution vector
- $\mathbf{\hat{f}}_{l}\in\mathbb{C}^{|I_{\mathbf{N}}|}$.\rule[-1.5ex]{0ex}{3ex}
- \hrule
- \caption{Variants of the conjugate gradient method for normal equations of first
- (CGNR = residual minimization; left) and second kind (CGNE = error minimization;
- right).}
- \label{algo:wCGNR(E)}
-\end{algorithm}
-
-%-------------------------------------------------------------------------------
-\subsubsection*{Interpolation problem}
-%-------------------------------------------------------------------------------
-If $|I_{\mathbf{N}}|>M$, and if the linear system \eqref{eq:infft} is
-consistent, the data $y_j\in \C,\;j=0,\hdots,M-1,$ can be interpolated exactly.
-But since there exist multiple solutions, we consider the
-\emph{constrained minimization problem}
-\begin{equation*}
- \label{eq:ip}
- \sum_{\mathbf{k}\in I_{\mathbf{N}}} \frac{|\hat f_{\mathbf{k}}|^2}{\hat
- w_{\mathbf{k}}} \stackrel{\mathbf{\hat{f}}}{\rightarrow} \min \quad
- \text{subject to} \quad \mathbf{A} \mathbf{\hat{f}} = \mathbf{y},
-\end{equation*}
-which incorporates ``damping factors'' $\hat w_{\mathbf{k}}> 0$,
-$\mathbf{\hat{W}}:= \diag(\hat w_{\mathbf{k}})_{\mathbf{k}\in
-I_{\mathbf{N}}}$. A smooth solution, i.e., a solution with rapid decay of
-Fourier coefficients $\hat{f}_{\mathbf{k}}$, is favored if the damping
-factors $\hat{w}_{\mathbf{k}}$ are decreasing themselves.
-The interpolation problem is equivalent to the
-\emph{damped normal equation of second kind}
-$
- \mathbf{A} \mathbf{\hat{W}} \mathbf{A}^{\adj} \mathbf{\tilde{f}}
- = \mathbf{y}
-$,
-$\mathbf{\hat{f}} =
- \mathbf{\hat{W}} \mathbf{A}^{\adj} \mathbf{\tilde{f}}
-$.
-The conjugate gradient method applied to this linear system is given in
-Algorithm \ref{algo:wCGNR(E)} (right). Of course, the NFFT~3 library also
-implements this scheme.
-
-%==============================================================================
-\section{Summary and performance analysis}\label{sect:sum}
-%==============================================================================
-
-This section is to provide a performance analysis of the NFFT algorithm.
-The asymptotic bounds on the number of floating point operations for the
-nonequispaced fast Fourier transform (NFFT) and its variant on the sphere
-(NFSFT) are compared to those for the discrete/fast Fourier transform in
-Table \ref{table:bigO}.
-\begin{acmtable}{0.85\textwidth}
- \centering%
- \vspace{1.3ex}%
- \begin{tabular}{r|cc|cc}
- & \multicolumn{2}{c|}{\rule[-1.5ex]{0ex}{4.25ex}$M={\mathcal{O}}\left(N^d\right)$, $\cal X$ grid}
- & \multicolumn{2}{c}{$M$, $\cal X$ arbitrary}
- \\
- \hline
- & DFT & FFT & NDFT & NFFT
- \\
- \hline
- \rule[-1.5ex]{0ex}{4.25ex}%
- Torus $\T^d$ &
- ${\mathcal{O}}\left(N^{d+1}\right)$ &
- ${\mathcal{O}}\left(N^d \log N\right)$ &
- ${\mathcal{O}}\left(M N^d\right)$ &
- ${\mathcal{O}}\left(N^d \log N +|\log \varepsilon|^d M\right)$\\
- \rule[-1.5ex]{0ex}{4.25ex}%
- Sphere $\S^2$ &
- ${\mathcal{O}}\left(N^3\right)$ &
- ${\mathcal{O}}\left(N^2 \log^2 N\right)$ &
- ${\mathcal{O}}\left(M N^2\right)$ &
- ${\mathcal{O}}\left(N^2 \log^2 N +|\log \varepsilon|^2 M\right)$
- \end{tabular}
- \vspace{0.5ex}%
- \caption{Asymptotic number of floating point operations with respect to the
- polynomial degree $N$ (so that $\mathbf{N}=(N,\hdots,N)^{\top}$), the number of nodes
- $M$, spatial dimension $d$, and target accuracy $\varepsilon$ for different transforms.}
- \label{table:bigO}
-\end{acmtable}
-The rest of the section is to provide results of actual performance
-measurements for our implementation of the NFFT in spatial
-dimensions $d=1,2,3$. Computation time measurements and a numerical
-confirmation of the error estimates for the window functions
-(\ref{gaussian}-\ref{kaiser}) with respect to the so-called cut-off
-parameter are given.
-
-For our tests, we used a computer system with an AMD
-$\text{Athlon}^{\text{\texttrademark}}$ XP 2700+ processor, 1GB memory,
-SuSE Linux with kernel 2.4.20-4GB-athlon, and the GCC 3.3 compiler.
-All computations were carried out in double precision using the compiler
-option \verb"-O3". For all tests with random input, the nodes
-$\mathbf{x}_j$ and the Fourier coefficients $\hat f_{\mathbf{k}}$ were
-drawn from a uniform pseudo-random distribution in the respective domains,
-i.e., $\mathbf{x}_j \in \mathbb{T}^d$ and
-$\hat f_{\mathbf{k}} \in [0,1] \times [0,1]{\rm i}$. The code for these
-and more examples and applications can be found in the directories
-\verb"examples/" and \verb"applications/" of the NFFT~3 package.
-
-%------------------------------------------------------------------------------
-\subsection{Computation time with respect to problem size}
-%------------------------------------------------------------------------------
-We compared computation times for ordinary FFTs (using FFTW
-3.0.0 \cite{FFTW05,fftw} in double precision with the flag
-\texttt{FFTW\_MEASURE}),
-direct nonequispaced discrete Fourier transforms (NDFTs), and nonequispaced fast
-Fourier transforms (NFFTs) for different problem sizes
-$|I_{\mathbf{N}}|$ in dimensions $d=1,2,3$.
-The multibandwidth $\mathbf{N}$ was chosen to
-$\mathbf{N}=(N,\hdots,N)^{\top},\;N\in 2\N$.
-The nodes for FFTs are fixed and restricted to the lattice $\mathbf{N}^{-1}\odot
-I_{\mathbf{N}}$.
-For NDFTs and NFFTs, we chose $M = N^d$ random nodes and used an oversampling
-factor $\sigma=2$, cut-off parameters $m = 2$ and $m = 4$, and the
-Kaiser-Bessel window function (precomputation flags \verb"PRE_PSI" and
-\verb"PRE_PHI_HUT").
-With these options, the accuracy measured by
-\begin{equation}\label{Einf}
-E_{\infty}:={\max_{0\le
- j<M}|f_j-s_j|} / {\sum_{\mathbf{k} \in I_{\mathbf{N}}} |\hat
- f_{\mathbf{k}}|}
-\end{equation}
-is approximately $E_{\infty}\approx 10^{-4}$ ($m=2$) and
-$E_{\infty}\approx 10^{-8}$ ($m=4$) for $d=1,2,3$.
-Here, $s_j$ denotes the NFFT-approximation to $f_j$; see the Appendix for
-details. The corresponding example program can be found under
-\verb"examples/nfft/nfft_times".
-As a byproduct of the measurements shown in Table \ref{tab:TimeSpace_1}, we
-also obtain a performance index measured in million floating point operations
-per second (MFLOPS). We assume that the number of floating point operations are
-\begin{equation*}
- 5 |I_{\mathbf{N}}|\log_2|I_{\mathbf{N}}|, \quad \text{and} \quad
- |I_{\mathbf{N}}| + 5\cdot 2^d |I_{\mathbf{N}}|\log(2^d|I_{\mathbf{N}}|) +
- 4(2m+1)^d |I_{\mathbf{N}}|
-\end{equation*}
-for the FFT and the NFFT ($M = |I_{\mathbf{N}}|$ nodes, oversampling factor
-$\sigma=2$, and precomputation flags \verb"PRE_PSI" and \verb"PRE_PHI_HUT"),
-respectively. More details are given in the Appendix.
-
-\begin{acmtable}{0.85\textwidth}
- \centering%
- \vspace{1.3ex}%
- \begin{tabular}{r|r|r|r|r r|r r}
- & & & & \multicolumn{2}{|c|}{$m=4$, $E_{\infty} \approx 10^{-8}$} & \multicolumn{2}{|c}{$m=2$, $E_{\infty}\approx 10^{-4}$}
- \\
- \hline
- & \rule[-1.8ex]{0ex}{4.5ex}
- $l_N$ & FFT & NDFT & NFFT & \parbox[c]{1cm}{\scriptsize\centering penalty\\factor}
- & NFFT & \parbox[c]{1cm}{\scriptsize\centering penalty\\factor}
- \\
- \hline
- \multirow{20}{*}{$d=1$}
-& \verb"3"& \verb"1.3e-07" & \verb"8.6e-06" & \verb"1.3e-06" & \verb"(10.0)" & \verb"1.1e-06" & \verb"(8.6)"\\
-& \verb"4"& \verb"2.1e-07" & \verb"3.5e-05" & \verb"2.7e-06" & \verb"(12.9)" & \verb"2.2e-06" & \verb"(10.5)"\\
-& \verb"5"& \verb"4.2e-07" & \verb"1.4e-04" & \verb"5.2e-06" & \verb"(12.3)" & \verb"4.2e-06" & \verb"(11.4)"\\
-& \verb"6"& \verb"9.2e-07" & \verb"5.7e-04" & \verb"1.1e-05" & \verb"(11.5)" & \verb"9.1e-06" & \verb"(9.8)"\\
-& \verb"7"& \verb"2.2e-06" & \verb"2.3e-03" & \verb"2.1e-05" & \verb"(9.5)" & \verb"1.9e-05" & \verb"(9.0)"\\
-& \verb"8"& \verb"5.3e-06" & \verb"9.2e-03" & \verb"4.4e-05" & \verb"(8.3)" & \verb"3.9e-05" & \verb"(7.7)"\\
-& \verb"9"& \verb"1.1e-05" & \verb"3.7e-02" & \verb"9.8e-05" & \verb"(8.8)" & \verb"8.3e-05" & \verb"(7.4)"\\
-& \verb"10"& \verb"2.5e-05" & \verb"1.5e-01" & \verb"2.0e-04" & \verb"(8.1)" & \verb"1.8e-04" & \verb"(7.1)"\\
-& \verb"11"& \verb"6.0e-05" & \verb"6.0e-01" & \verb"6.5e-04" & \verb"(10.8)" & \verb"5.4e-04" & \verb"(8.9)"\\
-& \verb"12"& \verb"1.5e-04" & \verb"2.4e+00" & \verb"1.5e-03" & \verb"(9.8)" & \verb"1.4e-03" & \verb"(8.9)"\\
-& \verb"13"& \verb"5.5e-04" & \verb"9.6e+00" & \verb"3.5e-03" & \verb"(6.4)" & \verb"3.3e-03" & \verb"(5.6)"\\
-& \verb"14"& \verb"1.7e-03" & \verb"4.0e+01" & \verb"7.8e-03" & \verb"(4.6)" & \verb"7.1e-03" & \verb"(4.3)"\\
-& \verb"15"& \verb"4.0e-03" & \verb"1.6e+02" & \verb"1.6e-02" & \verb"(4.1)" & \verb"1.5e-02" & \verb"(3.7)"\\
-& \verb"16"& \verb"8.4e-03" & \verb"*" & \verb"3.4e-02" & \verb"(4.1)" & \verb"3.2e-02" & \verb"(3.8)"\\
-& \verb"17"& \verb"2.0e-02" & \verb"*" & \verb"7.5e-02" & \verb"(3.8)" & \verb"7.2e-02" & \verb"(3.6)"\\
-& \verb"18"& \verb"4.6e-02" & \verb"*" & \verb"1.6e-01" & \verb"(3.4)" & \verb"1.5e-01" & \verb"(3.2)"\\
-& \verb"19"& \verb"9.5e-02" & \verb"*" & \verb"3.2e-01" & \verb"(3.4)" & \verb"3.0e-01" & \verb"(3.1)"\\
-& \verb"20"& \verb"2.1e-01" & \verb"*" & \verb"6.9e-01" & \verb"(3.3)" & \verb"6.4e-01" & \verb"(3.3)"\\
-& \verb"21"& \verb"4.3e-01" & \verb"*" & \verb"1.5e+00" & \verb"(3.5)" & \verb"1.4e+00" & \verb"(3.2)"\\
-& \verb"22"& \verb"1.0e+00" & \verb"*" & \verb"3.2e+00" & \verb"(3.1)" & \verb"3.0e+00" & \verb"(2.9)"\\
- \hline
-% \hline \multicolumn{3}{|l|}{$d=2$} & \multicolumn{2}{|c|}{$m=4$, $E_{\infty}\approx
-% 10^{-8}$} & \multicolumn{2}{|c|}{$m=2$, $E_{\infty}\approx 10^{-4}$} \\
-% \hline $l_N$ & FFT & NDFT & NFFT & (/FFT) & NFFT & (/FFT)\\
- \multirow{9}{*}{$d=2$}
-& \verb"6"& \verb"9.0e-07" & \verb"6.0e-04" & \verb"6.3e-05" & \verb"(70.4)" & \verb"3.2e-05" & \verb"(33.2)"\\
-& \verb"8"& \verb"4.4e-06" & \verb"9.5e-03" & \verb"2.5e-04" & \verb"(58.0)" & \verb"1.3e-04" & \verb"(29.0)"\\
-& \verb"10"& \verb"2.2e-05" & \verb"1.5e-01" & \verb"1.2e-03" & \verb"(55.0)" & \verb"6.0e-04" & \verb"(27.4)"\\
-& \verb"12"& \verb"1.2e-04" & \verb"2.4e+00" & \verb"6.4e-03" & \verb"(52.5)" & \verb"4.0e-03" & \verb"(32.2)"\\
-& \verb"14"& \verb"1.7e-03" & \verb"4.0e+01" & \verb"4.0e-02" & \verb"(23.4)" & \verb"3.1e-02" & \verb"(18.1)"\\
-& \verb"16"& \verb"2.2e-02" & \verb"*" & \verb"1.7e-01" & \verb"(7.8)" & \verb"1.3e-01" & \verb"(6.1)"\\
-& \verb"18"& \verb"8.7e-02" & \verb"*" & \verb"6.7e-01" & \verb"(7.7)" & \verb"5.0e-01" & \verb"(5.8)"\\
-& \verb"20"& \verb"3.3e-01" & \verb"*" & \verb"3.0e+00" & \verb"(9.1)" & \verb"2.1e+00" & \verb"(6.4)"\\
-& \verb"22"& \verb"1.4e+00" & \verb"*" & \verb"1.4e+01" & \verb"(10.1)" & \verb"1.1e+01" & \verb"(7.9)"\\
- \hline
- % \hline \multicolumn{3}{|l|}{$d=3$} & \multicolumn{2}{|c|}{$m=4$, $E_{\infty}\approx
- % 10^{-8}$} & \multicolumn{2}{|c|}{$m=2$, $E_{\infty}\approx 10^{-4}$} \\
- % \hline $l_N$ & FFT & NDFT & NFFT & (/FFT) & NFFT & (/FFT)\\
- \multirow{5}{*}{$d=3$}
-& \verb"9"& \verb"1.0e-05" & \verb"3.8e-02" & \verb"4.4e-03" & \verb"(423.4)" & \verb"1.1e-03" & \verb"(109.5)"\\
-& \verb"12"& \verb"1.1e-04" & \verb"2.4e+00" & \verb"4.2e-02" & \verb"(369.1)" & \verb"1.4e-02" & \verb"(115.8)"\\
-& \verb"15"& \verb"3.5e-03" & \verb"1.6e+02" & \verb"3.9e-01" & \verb"(110.8)" & \verb"1.5e-01" & \verb"(41.8)"\\
-& \verb"18"& \verb"3.9e-02" & \verb"*" & \verb"3.9e+00" & \verb"(99.3)" & \verb"1.7e+00" & \verb"(42.4)"\\
-& \verb"21"& \verb"9.4e-01" & \verb"*" & \verb"8.4e+01" & \verb"(89.0)" & \verb"1.8e+01" & \verb"(19.6)"\\
- \end{tabular}
- \vspace{0.5ex}%
- \caption{Computation times in seconds with respect to the problem size $l_N=\log_2|I_{\mathbf{N}}|$.
- Numbers in parentheses give the penalty factor, i.e., the quotient of computation times
- for NFFT and FFT.
- Times for small $l_N$ have been averaged over a series of transforms. An
- asterisk (\texttt{*}) indicates values not calculated due to excessive computation
- time.}
- \label{tab:TimeSpace_1}
-\end{acmtable}
-
-Some conclusions can be drawn from Table \ref{tab:TimeSpace_1}:
-Both, FFT and NFFT, require a computation time of order
-$\cO(|I_{\mathbf{N}}|\log|I_{\mathbf{N}}|)$ as expected.
-Doubling $|I_{\mathbf{N}}|$ indeed results in only slightly more
-than twice the computation time. The NDFT also scales as the expected
-$\cO(|I_{\mathbf{N}}|^2)$.
-For FFT and NDFT, the constant in the $\cO$-notation is independent of the
-space dimension $d$, whereas the computation time of the NFFT increases
-considerably with $d$ fixing $|I_{\mathbf{N}}|$.
-Moreover, Figure \ref{fig:flops} shows a relative performance gain of the FFT
-for small and moderate sized problems.
-In contrast, the overhead contained in the approximation scheme of the NFFT algorithm
-seems to attenuate this effect for the NFFT.
-
-\goodbreak
-
-%-------------------------------------------------------------------------------
-\subsection{Accuracy}
-%-------------------------------------------------------------------------------
-The actual choice of the window function and the cut-off parameter $m$ (cf.
-Appendix) have direct influence on the accuracy achieved by the NFFT algorithm.
-To confirm this, we compare values $f_j$ in \eqref{eq:nfft} computed by the
-NDFT with approximations $s_{j}$ computed using an NFFT with different
-choices of the window function and the cut-off parameter $m$.
-The error is measure is again \eqref{Einf}.
-Figure \ref{fig:accuracy} shows results for $1$, $2$, and $3$-dimensional
-transforms with equal total numbers of Fourier coefficients $|I_{\mathbf{N}}|$.
-
-\begin{figure}[tp]
- \centering
- \includegraphics[width=0.9\textwidth]{images/nfft_times_flops}
- \caption{Performance measured in MFLOPS achieved by the NFFT~3 library
- with respect to the logarithm of the total problem size $l_N=\log_2|I_{\mathbf{N}}|$.
- Shown are results for $d=1$ (solid), $d=2$ (dotted), and $d=3$ (dashed).
- The tested algorithms are the FFT ($\circ$), the NFFT with $m=4$ ($\times$),
- and the NFFT with $m=2$ ($+$).}
- \label{fig:flops}
-\end{figure}
-
-\begin{figure}[tp]
- \subfigure[$d = 1$, $N =
-2^{12}$.]{\includegraphics[width=0.3\textwidth]{images/accuracy4}}
- \hfill
- \subfigure[$d = 2$, $N =
-2^{6}$.]{\includegraphics[width=0.3\textwidth]{images/accuracy5}}
- \hfill
- \subfigure[$d = 3$, $N =
-2^{4}$.]{\includegraphics[width=0.3\textwidth]{images/accuracy6}}
- \caption{Error $E_{\infty}$ for increasing cut-off parameter $m=0,\hdots,14$ and
- $d=1,2,3$. In each case, the degree $N$ was chosen to be equal
- along each dimension such that $|I_{\mathbf{N}}| = 2^{12}$. We fixed
- $\sigma = 2$ (cf. Appendix) and $M = 10000$. Shown are results for
- the Kaiser Bessel ($\circ$), the Sinc ($\times$), the B-spline ($+$), and
- the Gaussian window function ($\triangle$). \label{fig:accuracy}}
- \end{figure}
-
-%==============================================================================
-\section{Applications}\label{sect:exap}
-%==============================================================================
-
-The rest of this tutorial is devoted to illustrating the usage of the NFFT~3
-library for more advanced applications.
-We start with two small problems from scattered data approximation which
-use the solver module and the NFFT and NFSFT routines.
-Then we briefly sketch some more important applications - fast
-summation schemes and medical imaging.
-These and more examples and applications can be found in the directories
-\verb"examples/" and \verb"applications/" of the package.
-
-
-%-------------------------------------------------------------------------------
-\subsection{Scattered data approximation - computing an inverse
-transform}\label{sect:rec_example}
-%-------------------------------------------------------------------------------
-
-Our first example demonstrates the reconstruction of the surface of a glacier
-from data available on level sets. %\cite{Franke.Daten}
-This is done by solving a damped optimal interpolation problem.
-Figure \ref{fig:glacier} shows the result using
-the $M = 8345$ available data points and bandwidths $N_0 = N_1 = 256$ for
-the two dimensions after $40$ iterations of the CGNE method.
-The corresponding example program \verb+glacier+ can be found in
-\verb+examples/solver/+. There is also a simple test program called
-\verb"simple_test" to illustrate basic principles.
-\begin{figure}[tp]
- \centering
- \subfigure[Surface plot.]{\includegraphics[width=0.45\textwidth]{images/glacier1}}
- \hfill
- \subfigure[Contour plot.]{\includegraphics[width=0.45\textwidth]{images/glacier2}}
- \caption{Reconstruction of the glacier from data on level sets at $M=8345$%, cf.
-%\cite[\texttt{vol87.dat}]{Franke.Daten},
-with $N_0=N_1=256$ after $40$ iterations. \label{fig:glacier}}
-\end{figure}
-
-The second example uses a map from the NASA AMSU mission \cite{NASA_AIRS}
-containing global atmospheric temperature data of the earth from 5 November 2006.
-The map contains empty strips not covered by the trajectory of the satellite
-used to take the measurements. To fill these gaps, we solve a weighted linear least
-squares problem to obtain a spherical harmonics
-approximation of degree $N = 128$ to the given data (see \cite{KeKuPo06b}).
-We then use the values of the approximation to fill the gaps. Figure
-\ref{fig:temperature} shows the original data and the map with the gaps filled.
-
-\begin{figure}[tp]
- \centering
- \subfigure[Given data.]
- {\includegraphics[width=0.45\textwidth]{images/temperaturemap_gaps} } \hfill
- \subfigure[Approximation.]
- {\includegraphics[width=0.45\textwidth]{images/temperaturemap_filled}}
- \caption{Original atmospheric temperature data in Kelvin (a) and the same
- data with values filled in from the least squares approximation at degree
- $N = 128$.\label{fig:temperature}}
-\end{figure}
-
-The following subsections are devoted to the demonstration of further important
-applications of NFFT~3 routines. The source code is available in
-the directory \verb"applications/" in the package.
-
-%-------------------------------------------------------------------------------
-\subsection{Fast summation}
-%-------------------------------------------------------------------------------
-An important task in many applications is to efficiently evaluate a linear
-combinations of radial functions, i.e.,
-\begin{align*}
- g\left(\mathbf{y}_j\right) & := \sum_{l=0}^{L-1} \alpha_l
-K\left(\left\|\mathbf{y}_j-
- \mathbf{x}_l\right\|_2\right) & (j=0,\ldots,M-1)
-\end{align*}
-with source and target nodes $\mathbf{x}_l, \mathbf{y}_j \in \R^d$,
-and real coefficients $\alpha_l \in \R$.
-
-For kernels $K$ with a certain smoothness, e.g. the Gaussian
-$K(x)=\e^{-x^2/c^2}$, the multiquadric $K(x)=\sqrt{x^2+c^2}$, or the inverse
-multiquadric $K(x)=1/\sqrt{x^2+c^2}$, all with a parameter $c>0$,
-our algorithm requires $\cO(L+M)$ arithmetic operations instead of
-$\mathcal{O}(LM)$ via direct calculation.
-For singular kernels $K$, e.g.
-\begin{equation*}
- \frac{1}{x^2},\; \frac{1}{|x|}, \; \log |x|, \;
- x^2 \log |x|, \; \frac{1}{x}, \;
- \frac{\sin(c x)}{x},\; \frac{\cos(c x)}{x}, \; \cot(cx)
-\end{equation*}
-it is imperative to apply an additional regularization procedure. The cost then
-becomes $\cO(L \log L +M)$ or $\cO(M\log M + L)$ provided that
-either the source nodes $\mathbf{x}_l$ or the target nodes $\mathbf{y}_j$ are
-uniformly distributed to a reasonable degree.
-This fast method, which was proposed in \cite{post02,postni04,FeSt03},
-generalizes the diagonalization of convolution matrices by Fourier matrices to
-settings with arbitrary nodes.
-Also, our method yields nearly the same cost as the FMM \cite{beatgreen97}
-while allowing for an easy exchange of the kernel $K$.
-A recent application in particle simulation is given in \cite{popori05}.
-The directory \texttt{applications/fastsum} contains C and {\sc MatLab} programs
-showing how to use the fast summation method.
-
-%-------------------------------------------------------------------------------
-%\subsection{Fast Gauss transform}
-%-------------------------------------------------------------------------------
-As a special case, let us consider the fast Gauss transform. This is the calculation of sums of the form
-\begin{align*}
- g\left(y_j\right) & :=\sum_{l=0}^{L-1} \alpha_l {\rm e}^{-\sigma|y_j-x_l|^2} &
- (j=0,\ldots,M-1)
-\end{align*}
-for source and target nodes $x_l,y_{j}\in[-\frac{1}{4},\frac{1}{4}]$,
-complex coefficients $\alpha_l \in \C$, and a complex parameter
-$\sigma =a +{\rm i} b$, $a>0$, $b\in\R$ with $\mathcal{O}(L + M)$ operations.
-For details see \cite{AnBe04,KuPoSt06}.
-Numerical examples found in \cite{KuPoSt06} can be reproduced with the programs
-found in the directory \texttt{applications/fastgauss}.
-
-%-------------------------------------------------------------------------------
-%\subsection{Summation of zonal functions on the sphere}
-%-------------------------------------------------------------------------------
-On the sphere $\mathbb{S}^2$, the equivalent of radial functions are \emph{zonal
-functions}. Fast summation of zonal functions on the sphere is the computation
-of
-sums of the form
-\begin{equation*}
- g\left(\mathbf{\xi}_j\right) := \sum_{l = 0}^{L-1} \alpha_l K\left(\mathbf{\eta}_l
- \cdot \mathbf{\xi}_j\right) \qquad (j=0,\ldots,M-1)
-\end{equation*}
-for source and target nodes $\mathbf{\eta}_l,\mathbf{\xi}_j \in \S^2$, and real
-coefficients $\alpha_l \in \R$ with $\cO(L+M)$ operations.
-Our algorithm is based on the nonequispaced fast spherical Fourier
-transform. It and can be easily adapted to different kernels $K$, e.g. the
-Poisson kernel, smooth locally supported kernels, or the spherical Gaussian
-kernel. For details see \cite{KeKuPo06}. Numerical examples
-are found under \verb+applications/fastsumS2/+.
-
-
-%-------------------------------------------------------------------------------
-\subsection{Applications in medical imaging}
-%-------------------------------------------------------------------------------
-%-------------------------------------------------------------------------------
-%\subsection{Iterative reconstruction in magnetic resonance imaging}
-%-------------------------------------------------------------------------------
-In magnetic resonance imaging (MRI), raw data is measured in \emph{k-space}, the
-domain of spatial frequencies. Methods that use non-Cartesian sampling grids
-in k-space, e.g. a spiral, have received increasing attention recently.
-Reconstruction is usually done by resampling the data onto a Cartesian
-grid to use the standard FFT. This is often called \emph{gridding}.
-A so-called inverse model is based on an implicit discretization and both
-methods can be implemented efficiently using the NFFT and the inverse NFFT,
-respectively (see \cite{KnKuPo} and references therein).
-Furthermore, approaches to field inhomogeneity correction have been proposed
-in \cite{SuNoFe03,EgKnPo06}.
-Numerical tests are found in \verb+applications/mri/+.
-
-%-------------------------------------------------------------------------------
-%\subsection{Radon transform, computer tomography, and ridgelet transform}
-%-------------------------------------------------------------------------------
-In computerized tomography (CT) an $N \times N$ (medical) image is to be
-reconstructed from its Radon transform.
-The standard reconstruction algorithm, the filtered backprojection, yields
-reasonably good images at the expense of $\cO( N^3 )$ arithmetic operations.
-Fourier reconstruction methods reduce the number of arithmetic operations to
-${\cal O}( N^2 \log N )$.
-Unfortunately, straightforward Fourier reconstruction algorithms suffer
-from unacceptable artifacts making them useless in practice. Better quality of
-the reconstructed images can be achieved by our algorithm which is based on
-NFFTs. For details see \cite{PoSt01IMA,PoSt00SPIE,PoSt02JFAA} and references
-therein, for examples we refer to \verb+applications/radon/+.
-
-Another application of the discrete Radon transform is the \emph{discrete
-ridgelet transform}, see e.g. \cite{CaDeDoYi} and the references therein.
-A simple test program for denoising images by applying hard thresholding to
-ridgelet coefficients \cite{FeMa05} can be found in \texttt{applications/radon}.
-It uses the NFFT-based discrete Radon transform and the translation-invariant
-discrete Wavelet transform from the \textsc{MatLab} toolbox WaveLab850
-\cite{WaveLab}.
-
-%-------------------------------------------------------------------------------
-%\subsection{Computation of the polar FFT}
-%-------------------------------------------------------------------------------
-Our last example to be mentioned here is the \emph{polar FFT}, which is a special case
-of the NFFT for a particular set of nodes.
-Of course, the polar as well as a so-called pseudo-polar FFT can be calculated
-efficiently accurately with the NFFT.
-Furthermore, the reconstruction of a $2d$ signal from its Fourier transform
-samples on a (pseudo-)polar grid by means of the inverse nonequispaced FFT is
-possible under certain density assumptions.
-For details see \cite{AvCoDoElIs,FeKuPo06,BeKuMo07}. Numerical tests can be
-found in the directory \verb+applications/polarFFT/+.
-
-\appendix
-\section*{APPENDIX}
-
-%-------------------------------------------------------------------------------
-\section{Installation} \label{sect:inst}
-%-------------------------------------------------------------------------------
-
-The installation of the NFFT~3 software library follows the usual GNU
-principles.
-Download the most recent version from
-\verb"http://www.tu-chemnitz.de/~potts/nfft".
-We assume that you use a \verb"bash" compatible shell. Uncompress the archive
-and
-change to the newly created directory:
-\begin{verbatim}
- tar xfvz nfft3.x.x.tar.gz
- cd nfft3.x.x
-\end{verbatim}
-%Before you compile and install the library, you might want to adjust the
-%environment variables \verb"CPPFLAGS" and \verb"LDFLAGS" so that NFFT~3 can find
-%the FFTW library if it has been installed in a non-standard location and/or if
-%the NFFT~3 library shall be compiled with specific compiler flags. Leave this
-%step
-%out, if you are unsure what to do. Return to this step if the configure script,
-%the compiler or the linker complain about missing files or libraries. Here is
-%an example that adds the compiler flag \verb"-O3" for optimisations and
-%adds a path to include files and libraries in a non-standard location:
-%\begin{itemize}
-% \itemsep-1ex
-% \item
-% \verb+export CPPFLAGS="$(CPPFLAGS) -O3 -I/path/to/include/files"+
-% \item \verb+export LDFLAGS="$(LDFLAGS) -L/path/to/libraries"+
-%\end{itemize}
-Figure \ref{nfft:fig:svn} gives an overview over the directory structure of
-the NFFT~3 package.
-\begin{figure}[tp]%tb!]
- \centering
- \input{tree}
- \caption{Directory structure of the NFFT~3 package.
- \label{nfft:fig:svn}}
-\end{figure}
-The package is now ready to be configured. To this end, run the configure script
-\verb"configure" which will adapt the build process to your computer system.
-After that, compile the library by invoking the \verb"make" utility:
-\begin{verbatim}
- ./configure
- make
-\end{verbatim}
-When the build process has finished, you can run \verb"make install" to install the
-library permanently on your system.
-%If for example \verb"/usr" is your default installation directory,
-%\verb"make install"
-%will copy the NFFT~3 library to \verb+/usr/lib+, the C header files to
-%\verb+/usr/include/nfft+ and the documentation together with all examples and
-%applications to \verb+/usr/share/nfft+.
-
-For more information about options offered by the \verb"configure" script,
-run the script with the option \verb+--help+. For example, to change the
-installation location you can use the \verb"--prefix".
-Here is a short list of some important options:
-By default, NFFT~3 uses the Kaiser-Bessel window function
-(see Appendix \ref{appendix.nfft}). This can be changed
-by passing the option \verb"--with-window=ARG",
-where \verb"ARG" is replaced by one of \verb"kaiserbessel" (Kaiser-Bessel),
-\verb"gaussian" (Gaussian), \verb"bspline" (B-spline), or
-\verb"sinc" (sinc power). This makes all routines use the
-respective window function.
-NFFT~3 routines can also be configured to measure the computation time for
-several steps during execution. You can enable this behavior with
-the options
-\verb"--enable-measure-time" and/or \verb"--enable-measure-time-fftw".
-
-%-------------------------------------------------------------------------------
-\section{NFFT - nonequispaced fast Fourier transform}
-\label{appendix.nfft}
-%-------------------------------------------------------------------------------
-In this section, we describe the approximate NFFT algorithm in more detail.
-To illustrate the principles, we restrict ourselves to the one-dimensional
-case, hence the computation of
-\begin{align}
- \label{trigPoly1d}
- f\left(x\right) & = \sum_{k\in I_{N}} \hat{f}_k \eim{k x} &
- (j=0,\hdots,M-1)
-\end{align}
-for nonequispaced nodes $x_j \in \T$.
-In this case, the NFFT has cost
-${\cal O}\left(N \log N + |\log \varepsilon|
-M\right)$, where $\varepsilon$ is the desired accuracy.
-The chief idea of the NFFT algorithm is to use standard FFTs in combination with
-an approximation scheme that is based on a window function $\varphi$. This function needs to
-be mutually well localized in time/spatial and frequency domain.
-%$\mathbb{R}$ and at the same time also in the frequency domain $\mathbb{R}$.
-Several such window functions have been proposed in
-\cite{duro93,bey95,st97,Fou02,fesu02}.
-
-\subsection*{The ansatz}
-The first step is to approximate the trigonometric polynomial $f$ of degree
-$N$ in \eqref{trigPoly1d} by a linear combination $s_{1}$ of shifted
-one-periodic window functions $\tilde \varphi$,
-\begin{equation}\label{s1}
- s_1\left(x\right) := \sum_{l \in I_n} g_{l} \; \tilde \varphi\left(x -
- \frac{l}{n}\right) \,,
-\end{equation}
-where $n:=\sigma N$ for some oversampling factor $\sigma >1$. The value of $n$ determines the
-length of the ordinary FFT used below.
-
-\subsection*{The window function}
-The window function $\varphi:\R\rightarrow\R$ is chosen so that
-the one-periodic version
-$
- \tilde \varphi\left(x\right):=\sum_{r \in \Z} \varphi\left(x+r\right)
-$
-has a uniformly convergent Fourier series
-$
- \tilde \varphi\left(x\right)=
- \sum_{k\in \Z} c_k\left(\tilde\varphi\right) \eim{k x},
-$
-and at the same time is well localized in the time/spatial domain $\T$
-and in the frequency domain $\mathbb{Z}$.
-The Fourier coefficients $c_k\left( \tilde \varphi \right)$ of this one-periodic version are samples
-of the Fourier transform $\hat \varphi$ of the original window function at integers
-points, i.e.,
-\begin{align*}
- c_k\left( \tilde \varphi \right)
- & :=\int\limits_{\T} \tilde \varphi \left(x\right) \eip{k x} \, {\rm d} x
- = \int\limits_{\mathbb{R}} \varphi \left(x\right) \eip{k x} \, {\rm d} x
- =: \hat \varphi \left(k\right) & (k\in\Z).
-\end{align*}
-An example is shown in Figure \ref{fig:window_fun}.
-\begin{figure}[tp]
- \centering
- \subfigure[Window function.]{
- \includegraphics[width=4.8cm,height=3.8cm]{images/window_fct1}}
- \qquad
- %\includegraphics[width=4.8cm,height=3.8cm]{images/window_fct2} &
- \subfigure[Fourier transform.]{
- \includegraphics[width=4.8cm,height=3.8cm]{images/window_fct3}}
- \caption{Example for a suitable window function, in this case the
- Gaussian window function $\varphi$ (left)
- %its one-periodic version $\tilde \varphi$ (center),
- and the sampled integral Fourier-transform $\hat \varphi$ (right) with
- pass, transition, and stop band for $N=24,\,\sigma=\frac{4}{3},\,n=32$.}
- \label{fig:window_fun}
- \end{figure}
-
-\subsection*{The first approximation - cut-off in frequency domain}
-If we take the definition in \eqref{s1} and switch to the frequency domain, we obtain
-\begin{equation*}
- s_1\left(x\right)
- =\sum_{k \in I_n} \hat g_k \, c_k\left(\tilde \varphi\right) \, \eim{k x}
- +\sum_{r \in \Z \backslash \left\{0\right\}} \sum_{k \in I_n} \hat g_k \,
- c_{k + n r} \left(\tilde \varphi\right) \, \eim{(k + n r)x }
-\end{equation*}
-with discrete Fourier coefficients
-\begin{equation} \label{coeff}
- \hat g_k = \sum_{l \in I_n} g_l \, \eip{\frac{k l}{n}}.
-\end{equation}
-A comparison of \eqref{trigPoly1d} and \eqref{s1} suggests to
-define
-\begin{equation} \label{coeff2}
- \hat g_k :=
- \begin{cases}
- \frac{\hat f_k}{c_k \left(\tilde \varphi\right)} & \text{for $k \in I_N$},
- \\[1ex]
- 0 & \text{for $k \in I_n \backslash I_N$},
- \end{cases}
-\end{equation}
-assuming that $c_k\left(\tilde\varphi\right)$ is small for $|k| \ge n-\frac{N}{2}$.
-The values $g_l$ can now be computed by applying the Fourier inversion theorem
-to \eqref{coeff}. This step can be realized by an FFT of length $n$.
-This first approximation causes an aliasing error.
-
-\subsection*{The second approximation - cut-off in time/spatial domain}
-If the window function $\varphi$ is well localized in time/spatial domain then it can be
-approximated by a truncated version
-\begin{equation*}
- \psi\left(x\right):=\varphi\left(x\right) \chi_{[-{\frac{m}{n}},
- {\frac{m}{n}}]}\left(x\right),
-\end{equation*}
-with ${\rm supp} \, \psi = \left[-{\frac{m}{n}},{\frac{m}{n}}\right], \;m \ll
-n,\; m\in \N$.
-Here too, we can define a one periodic version $\tilde \psi$ with compact support
-in $\T$ by
-$
- \tilde \psi\left(x\right)=\sum_{r \in \Z} \psi\left(x+r\right).
-$
-With the help of the index set
-$
- I_{n,m} \left(x_j\right) := \left\{ l \in I_n : n x_j - m \le l \le n x_j +
- m \right\}
-$
-a further approximation to the first approximation $s_1$ at the nodes $x_{j}$ can be defined by
-\begin{equation} \label{approx}
- s\left(x_j\right) :=
- \sum_{l \in I_{n,m}\left(x_j\right) } g_l \,
- \tilde\varphi\left(x_j - {\frac{l}{n}}\right) =
- \sum_{l \in I_n } g_l \,
- \tilde\psi\left(x_j - {\frac{l}{n}}\right) \, .
-\end{equation}
-Note, that for fixed $x_j\in \T$, the above sum contains at most
-$(2m+1)$ nonzero summands.
-This second approximation causes a truncation error.
-
-\subsection*{The case $d>1$}
-The described approximation method can be generalized to arbitrary dimensions.
-But first, a few generalizations have to be introduced.
-A multivariate window function is now defined by
-$\varphi\left(\mathbf{x}\right):=\prod_{t=0}^{d-1} \varphi_t\left(x_t\right)$
-with a univariate window function $\varphi_t$.
-A simple consequence is that the Fourier coefficients have the form $c_{\mathbf{k}}\left(\tilde \varphi\right) =
-\prod_{t=0}^{d-1} c_{k_t}\left(\tilde \varphi_t\right)$.
-The ansatz function $s_{1}$ reads now
-\begin{equation*}
- s_1\left(\mathbf{x}\right) := \sum_{\mathbf{l} \in I_{\mathbf{n}}}
- g_{\mathbf{l}} \; \tilde
- \varphi\left(\mathbf{x} - \mathbf{n}^{-1}\odot\mathbf{l}\right).
-\end{equation*}
-The size of the FFT size is determined to $\mathbf{n}:=\mathbf{\sigma} \odot
-\mathbf{N}$, and the oversampling factor is
-$\mathbf{\sigma}=\left(\sigma_0,\hdots,\sigma_{d-1}\right)^{\top}$.
-Following \eqref{coeff2} we define
-\begin{equation*}
- \hat g_{\mathbf{k}} := \left\{
- \begin{array}{ll}
- \frac{\hat f_{\mathbf{k}}}{c_{\mathbf{k}} \left(\tilde \varphi\right)}
- & \text{for
- } \mathbf{k} \in I_{\mathbf{N}} , \\[1ex]
- 0 & \text{for } \mathbf{k} \in I_{\mathbf{n}} \backslash I_{\mathbf{N}}.
- \\
- \end{array}
- \right.
-\end{equation*}
-The values $g_{\mathbf{l}}$ are obtained by a (multivariate) FFT of size
-$n_0\times n_1 \times \hdots \times n_{d-1}$.
-Using the compactly supported function $\psi\left(\mathbf{x}\right)=\varphi
-\left(\mathbf{x}\right)\chi_{[-{\frac{m}{n}},{\frac{m}{n}}]^d} \left(\mathbf{x}
-\right)$ gives the final form,
-\begin{equation*}
- s\left(\mathbf{x}_j\right) := \sum_{\mathbf{l} \in I_{\mathbf{n},m}
- \left(\mathbf{x}_j\right) }
- g_{\mathbf{l}} \, \tilde\varphi\left(\mathbf{x}_j - \mathbf{n}^{-1}\odot
- \mathbf{l}\right) =
-\sum_{\mathbf{l} \in I_{\mathbf{n}} }
-g_{\mathbf{l}} \, \tilde\psi\left(\mathbf{x}_j - \mathbf{n}^{-1}\odot
- \mathbf{l}\right)\,.
-\end{equation*}
-Again, $\tilde \psi$ denotes the one-periodic version of $\psi$.
-Note that the multi-index set
-$
- I_{\mathbf{n},m} \left(\mathbf{x}_j\right) := \left\{ \mathbf{l} \in
- I_{\mathbf{n}} : \mathbf{n}
- \odot \mathbf{x}_j - m \mathbf{1} \le \mathbf{l} \le \mathbf{n} \odot
- \mathbf{x}_j + m
- \mathbf{1}\right\}
-$
-has at most $(2m+1)^d$ entries for every $\mathbf{x}_j$.
-
-\subsection*{The final algorithm}
-The NFFT algorithm is given in pseudo-code in Algorithm~\ref{algo:nfft}. In
-addition to the evaluation of the window functions, it requires roughly
-$|I_{\mathbf{N}}|+|I_{\mathbf{n}}| \log |I_{\mathbf{n}}| + 2(2m+1)^d M$
-floating point operations.
-In matrix-vector notation, Algorithm~\ref{algo:nfft} can be written as
-$
- \mathbf{A} \mathbf{\hat{f}} \approx \mathbf{D} \mathbf{F} \mathbf{B}
- \mathbf{\hat{f}},
-$
-where $\mathbf{B}$ denotes the sparse real $M \times
-\left|I_{\mathbf{n}}\right|$
-matrix
-\begin{equation*} \label{spB}
- \mathbf{B} := \left( \tilde\psi\left(\mathbf{x}_j - \mathbf{n}^{-1}\odot
- \mathbf{l}\right)
- \right)_{j=0,\hdots,M-1;\, \mathbf{l}\in I_{\mathbf{n}}}.
-\end{equation*}
-The matrix
-$\mathbf{F}:=(\eim{\mathbf{k}(\mathbf{N^{-1}}\odot\mathbf{j})})_{\mathbf{j},
- \mathbf{k}\in I_{\mathbf{n}}}$ is the ordinary Fourier matrix of size
-$\left|I_{\mathbf{n}}
-\right| \times
-\left|I_{\mathbf{n}}\right|$ and $\mathbf{D}$ is a real $\left|I_{\mathbf{n}}
-\right|
-\times |I_{\mathbf{N}}|$ ``diagonal'' matrix defined by
-\begin{equation*}
- \mathbf{D} := \bigotimes_{t=0}^{d-1} \left(\mathbf{O}_t \, | \, \mbox{diag}
- \left(1/\,
- c_{k_t}\left(\tilde \varphi_t\right)\right)_{k_t\in I_{N_t}} \, | \,
- \mathbf{O}_t \right)^{\top}
-\end{equation*}
-with zero matrices $\mathbf{O}_t$ of size $N_t \times \frac{n_t-N_t}{2}$.
-The corresponding adjoint matrix-vector product is given by
-$
- \mathbf{A}^{\adj} \mathbf{\hat{f}} \approx \mathbf{B}^{\top}
-\mathbf{F}^{\adj}
- \mathbf{D}^{\top} \mathbf{\hat{f}}
-$.
-With the help of the transposed index set
-$
- I_{\mathbf{n},m}^{\top}(\mathbf{l}) := \{j=0,\hdots,M-1 :
- \mathbf{l}-m
- \mathbf{1} \le \mathbf{n} \odot \mathbf{x}_j \le \mathbf{l}+m \mathbf{1}
- \}
-$,
-one obtains Algorithm~\ref{algo:nfftH} for the adjoint NFFT.
-\begin{algorithm}[tp]
- \hrule
- \footnotesize
- \rule[-1.5ex]{0ex}{5ex}\raggedright Input: $d$, $M \in \N$, $\mathbf{N} \in 2\N^d$,
- ${\mathbf{x}}_j \in [-\frac{1}{2},\frac{1}{2})^d$, $j=0,\ldots,M-1$, and
- $\hat f_{\mathbf{k}}\in \C$, $\mathbf{k} \in I_{\mathbf{N}}$.
- \begin{algorithmic}[1]
- \itemsep=1.1ex
- \STATE For $\mathbf{k} \in I_{\mathbf{N}}$ compute
- $\hat g_{\mathbf{k}} :=
- |I_{\mathbf{n}}|^{-1} \cdot \hat f_{\mathbf{k}}/
- c_{\mathbf{k}}(\tilde \varphi)$.
-
- \STATE For $\mathbf{l} \in I_{\mathbf{n}}$ compute
- $g_{\mathbf{l}} := \sum_{\mathbf{k} \in I_{\mathbf{N}}} \hat
- g_{\mathbf{k}} \, \eim{\mathbf{k} (\mathbf{n}^{-1} \odot \mathbf{l})}$
- by a $d$-variate FFT.
-
- \STATE For $j=0,\hdots,M-1$ compute
- $f_j := \sum_{\mathbf{l} \in I_{\mathbf{n},m}
- ({\mathbf{x}}_j)} g_{\mathbf{l}} \,
- \tilde\varphi({\mathbf{x}}_j - \mathbf{n}^{-1}\odot
- \mathbf{l})$.\\[2ex]
- \end{algorithmic}
-
- Output: Approximate function values $f_j,\;j=0,\hdots,M-1$.\\
- Arithmetic cost: $|I_{\mathbf{N}}|+|I_{\mathbf{n}}| \log |I_{\mathbf{n}}| +
- 2(2m+1)^d M$ + evaluations of the window function.\rule[-1.5ex]{0ex}{3ex}
- \hrule
- \caption{Nonequispaced fast Fourier transform (NFFT).\label{algo:nfft}}
-\end{algorithm}
-\begin{algorithm}[tp]
- \hrule
- \footnotesize
- \rule[-1.5ex]{0ex}{5ex}\raggedright Input: $d$, $M \in \N$, $\mathbf{N}\in 2\N^d$,
- ${\mathbf{x}}_j\in [-\frac{1}{2},\frac{1}{2})^d$,
- and $f_j\in \C$, $j=0,\hdots,M-1$.\\[\baselineskip]
- \begin{algorithmic}[1]
- \itemsep=1.1ex
- \STATE For $\mathbf{l} \in I_{\mathbf{n}}$ compute
- $g_{\mathbf{l}} := \sum\limits_{j \in
- I_{\mathbf{n},m}^{\top} (\mathbf{l}) } f_j \,
- \tilde\varphi({\mathbf{x}}_j - \mathbf{n}^{-1}\odot \mathbf{l})$.
- \STATE For $\mathbf{k} \in I_{\mathbf{N}}$ compute
- $\hat g_{\mathbf{k}} := \sum\limits_{\mathbf{l} \in
- I_{\mathbf{n}}} g_{\mathbf{l}} \, {\rm e}^{+2 \pi {\rm i} \mathbf{k}
- (\mathbf{n}^{-1} \odot \mathbf{l})}$
- by $d$-variate (backward) FFT.
- \STATE For $\mathbf{k} \in I_{\mathbf{N}}$ compute
- $\hat h_{\mathbf{k}} := |I_{\mathbf{n}}|^{-1} \cdot
- \hat{g}_{\mathbf{k}} / c_{\mathbf{k}}(\tilde \varphi)$.\\[2ex]
- \end{algorithmic}
-
- Output: Approximate coefficients $\hat h_{\mathbf{k}},\;\mathbf{k} \in
- I_{\mathbf{N}}$.\\
- Arithmetic cost: $|I_{\mathbf{N}}|+|I_{\mathbf{n}}| \log |I_{\mathbf{n}}| +
- 2(2m+1)^d M$ + evaluation of the window function.\rule[-1.5ex]{0ex}{3ex}
- \hrule
- \caption{Adjoint nonequispaced fast Fourier transform (adjoint NFFT).}
- \label{algo:nfftH}
-\end{algorithm}
-
-%Owing to the characterization of the nonzero elements in the matrix $\mathbf{B}$
-%by
-%$
-% \bigcup_{j=0}^{M-1} \{j\} \times I_{\mathbf{n},m}({\mathbf{x}}_j)
-% =
-% \bigcup_{\mathbf{l} \in I_{\mathbf{n}}} I_{\mathbf{n},m}^{\top}(\mathbf{l})
-% \times \{\mathbf{l}\},
-%$
-%the multiplication with $\mathbf{B}^{\top}$ is implemented in
-%a ``transposed'' way in the library with summation as outer loop and only using
-%the multi-index sets $I_{\mathbf{n},m} ({\mathbf{x}}_j)$.
-
-%-------------------------------------------------------------------------------
-\section{Available window functions and evaluation techniques}
-\label{sect:windows}
-%-------------------------------------------------------------------------------
-For clarity of the presentation, we restrict ourselves to the case $d=1$, again.
-To keep the aliasing error and the truncation error small, several functions
-$\varphi$ with good localization in time and frequency domain have been
-proposed,
-e.g. the (dilated) \emph{Gaussian} \cite{duro93,st97,DuSc} (with shape
-parameter $b := \frac{2\sigma}{2 \sigma -1} \frac{m}{\pi}$),
-\begin{align}
-\label{gaussian}
-\varphi\left(x\right)
-& =
-\left(\pi b\right)^{-1/2} \,
-{\rm e}^{-\frac{\left(nx\right)^2}{b}}
-, &
-\hat \varphi \left(k\right)
-& =
-\frac{1}{n} \, {\rm e}^{-b\left(\frac{\pi k}{n}\right)^2},
-\intertext{
-(dilated) \emph{cardinal central $B$--splines} \cite{bey95,st97},}
-\label{bspline}
-\varphi\left(x\right)
-& =
-M_{2m}\left(n x\right), &
-\hat \varphi \left(k\right)
-& =
-\frac{1}{n} \sinc^{2m} \left( k \pi/n\right),
-\intertext{where $M_{2m}$ denotes the centered cardinal $B$--Spline of order $2m$,
-(dilated) \emph{Sinc functions} \cite{pottshabil},}
-\label{sinc}
-\varphi\left(x\right)
-& =
-\frac{N\left(2\sigma-1\right)}{2m} \sinc^{2m} \left(\frac{\left(\pi N x
-\left(2\sigma-1\right)\right)}{2m} \right), &
-\hat \varphi \left(k\right)
-& =
-M_{2m}\left(\frac{2mk}{\left(2\sigma-1\right)N}\right),
-\end{align}
-and
-(dilated) \emph{Kaiser--Bessel functions} \cite{Ja,Fou02} (with shape
-parameter $b := \pi \left(2 - \frac{1}{\sigma} \right)$),
-\begin{equation}
- \label{kaiser}
- \begin{aligned}
- \varphi\left(x\right)
- & = \frac{1}{\pi}
- \begin{cases}
- \ds \frac{\sinh\left(b\sqrt{m^2 - n^2 x^2}\right)}{\sqrt{m^2 - n^2 x^2}},
- & \text{for $|x| \le \frac{m}{n}$},
- \\[4ex]
- \ds \frac{\sin\left(b\sqrt{n^2 x^2 - m^2}\right)}{\sqrt{n^2 x^2-m^2}},
- & \text{otherwise},
- \end{cases}
- \\[1ex]
- \hat \varphi \left(k\right)
- & = \frac{1}{n}
- \begin{cases}
- \ds I_0 \left(m \sqrt{b^2 - \left(2 \pi k/n \right)^2} \right),
- & \text{for $k= -n \left(1-\frac{1}{2\sigma} \right), \ldots,n \left(1-\frac{1}{2\sigma}\right)$},
- \\
- 0, & \text{otherwise},
- \end{cases}
- \end{aligned}
-\end{equation}
-where $I_0$ denotes the \emph{modified order-zero Bessel function}.
-For these functions $\varphi$ it has been proved that
-\[
-|f\left(x_j\right) - s\left(x_j\right)| \le
-C\left(\sigma,m\right) \sum_{k\in I_N} |\hat{f}_k|,
-\]
-where
-\[
-C\left(\sigma,m\right) :=
-\begin{cases}
- 4 \, \e^{-m \pi \left(1-1/\left(2\sigma-1\right)\right)}, & \text{for \eqref{gaussian}},
- \\
- 4 \, \left(\frac{1}{2\sigma -1} \right)^{2m}, & \text{for \eqref{bspline}},
- \\[1ex]
- \frac{1}{m-1}\left(\frac{2}{\sigma^{2m}}+\left(\frac{\sigma}{2\sigma-1}\right)^{2m}\right), &
- \text{for \eqref{sinc}},
- \\[1ex]
- 4\pi\left(\sqrt{m}+m\right)\sqrt[4]{1-\frac{1}{\sigma}} \, \e^{-2 \pi m \sqrt{1-1/\sigma}}, &
- \text{for \eqref{kaiser}}.
-\end{cases}
-\]
-Thus, for fixed $\sigma >1$ the approximation error introduced by the NFFT
-decays exponentially with the number of summands $m$ in \eqref{approx}.
-These estimates can of course be generalized to higher dimensions; see \cite{elst}.
-
-It must be noted that the cost of the NFFT also increases with $m$.
-In the following, we will suggest different methods for efficient storage and
-application of the matrix $\mathbf{B}$. These are all available in the
-NFFT~3 library by choosing particular flags during the initialization phase.
-%These methods do not yield a different asymptotic performance but rather yield
-%a lower constant in the amount of computation.
-
-\subsection*{Fully precomputed window function}
-An obvious possibility is to precompute all values $\varphi(\mathbf{x}_j -
-\mathbf{n}^{-1}\odot\mathbf{l})$ for $j=0,\hdots,M-1$ and $\mathbf{l}\in
-I_{\mathbf{n},m} (\mathbf{x}_j)$ which are needed for $\mathbf{B}$.
-This needs to store the possibly large amount of $(2m+1)^d M$ real numbers.
-On the other hand, no additional computation is required during the matrix-vector
-multiplication apart from the inevitable $2(2m+1)^d M$ floating point operations.
-%Furthermore, we store for this method explicitly the row and column index for
-%each nonzero entry of the matrix $\mathbf{B}$.
-This method, indicated by the flag \texttt{PRE\_FULL\_PSI}, is the fastest procedure
-but can only be used if enough memory for storage is available.
-
-\subsection*{Tensor product based precomputation}
-Using the fact that the window functions are represented by tensor products one can
-resort to storing only the values $\varphi_t((\mathbf{x}_j)_t - \frac{l_t}{n_t})$ for
-$j=0,\hdots,M-1$, $t=0,\hdots,d-1$, and $l_t\in I_{n_t,m} ((\mathbf{x}_j)_t)$,
-where $(\mathbf{x}_j)_t$ denotes the $t$th component of the $j$th node.
-This method needs to store $d(2m+1)M$ real numbers which is less than the first method needs.
-However, for each node one possibly needs up to $2(2m+1)^d$ extra multiplications to
-obtain the values of the multivariate window function
-$\varphi(\mathbf{x}_j - \mathbf{n}^{-1}\odot\mathbf{l})$ for $\mathbf{l}\in
-I_{\mathbf{n},m}(\mathbf{x}_j)$.
-This technique is available for every window function discussed
-and can be used by setting the flag \texttt{PRE\_PSI}. This is also the
-default method used in our library.
-
-\subsection*{Linear interpolation from a lookup table}
-For a large number of nodes $M$, the amount of memory can be further reduced
-by using lookup table techniques.
-For a recent example within the framework of gridding see \cite{BeNiPa05}.
-We suggest to precompute from the even window function the equidistant samples
-$\varphi_t(\frac{rm}{Kn_t})$ for $t=0,\hdots,d-1$ and $r=0,\hdots,K$,
-$K\in\N$. Then for the actual node $\mathbf{x}_j$ during the NFFT
-the values $\varphi_t((\mathbf{x}_j)_t - \frac{l_t}{n_t})$ for
-$t=0,\hdots,d-1$ and $l_t\in I_{n_t,m} ((\mathbf{x}_j)_t)$ are computed
-by linear interpolation from its two neighboring values.
-This method needs to store only $dK$ real numbers in total, where $K$
-depends only on the desired accuracy but neither on the number of
-nodes $M$ nor on the multibandwidth $\mathbf{N}$.
-If we choose $K$ to be a multiple of $m$, we can further reduce the computational
-costs during the interpolation step since the distance from $(\mathbf{x}_j)_t-
-\frac{l_t}{n_t}$ to the two neighboring values is the same for all
-$l_t\in I_{n_t,m}((\mathbf{x}_j)_t)$.
-During the actual multiplication with the matrix $\mathbf{B}$, this method requires
-$2(2m+1)^d$ extra multiplications per node. It can be used by setting the flag
-\texttt{PRE\_LIN\_PSI}. Error estimates for this additional
-approximation are given in \cite{KuPo06}.
-
-\subsection*{Fast Gaussian gridding}
-Two useful properties of the Gaussian window function \eqref{gaussian} that can be exploited
-within the presented framework have recently been reviewed in \cite{GrLe04}.
-Beside the tensor product structure for $d>1$, which is also valid for all other
-window functions, it is remarkable that the number of evaluations of the
-exponential function \texttt{exp()} can be reduced by a substantially.
-More precisely, for $d=1$ and a fixed node $x_j$ the evaluation of
-$\varphi(x_j-\frac{l'}{n})$, $l'\in I_{n,m}(x_j)$ can be computed more
-efficiently by writing this as
-\begin{equation*}
- \sqrt{\pi b}\varphi\left(x_j-\frac{l'}{n}\right)
- =\e^{-\frac{(nx_j-l')^2}{b}}
- =\e^{-\frac{(nx_j-u)^2}{b}}
- \left(\e^{-\frac{2(nx_j-u)}{b}}\right)^l
- \e^{-\frac{l^2}{b}}\,,
-\end{equation*}
-where $u=\min I_{n,m}(x_j)$ and $l=0,\hdots,2m$.
-The first factor and the exponential within the brackets are a
-constant for each fixed node $x_j$.
-Once we have evaluated the second exponential, its $l$th power can be computed
-by repeated multiplications only.
-Furthermore, the last exponential is independent of $x_j$ such that these $2m+1$
-different values need to be precomputed only once -- usually a negligible amount.
-Thus, it is sufficient to store or evaluate $2M$ exponentials for $d=1$.
-The case $d>1$ needs to store or evaluate $2dM$ numbers. This follows from the
-tensor product structure.
-The described method is employed when the flags \texttt{FG\_PSI} and possibly
-\texttt{PRE\_FG\_PSI} are used.
-
-\subsection*{No precomputation of the window function}
-The last method considered does not precompute any values of the window function
-at all. Instead, all values are calculated on-line. This needs to be done at most
-$\frac{3}{2}(2m+1)^d M$ times. The computation time strongly depends on how fast
-one can evaluate the particular window function. Since this method does not need
-any additional storage, it is attractive whenever large problems are considered
-that would push the other methods beyond the memory limitations.
-
-%-------------------------------------------------------------------------------
-\section{Further NFFT approaches}\label{A.4}
-%-------------------------------------------------------------------------------
-Besides \cite{nfft3}, the {\sc MatLab} toolbox \cite{fematlab} also implements
-the NFFT.
-In several papers, approximations techniques similar to the NFFT have been
-described.
-Common names for these schemes are
-\emph{non-uniform fast Fourier transform} \cite{fesu02},
-\emph{generalized fast Fourier transform} \cite{duro93},
-\emph{unequally-spaced fast Fourier transform} \cite{bey95},
-\emph{fast approximate Fourier transforms for irregularly spaced data}
-\cite{ware98},
-\emph{non-equispaced fast Fourier transform} \cite{Fou02} or
-\emph{gridding} \cite{scsc,Ja,Pe}.
-
-Also, different window functions have been considered in various papers, e.g. a Gaussian
-pulse tapered with a Hanning window \cite{DuSc}, Gaussian kernels combined
-with Sinc kernels \cite{Pe}, and particular optimized windows \cite{Ja,DuSc}.
-Special approaches based on scaling vectors \cite{NgLi99}, minimizing
-the Frobenius norm of certain error matrices \cite{st01}, or min-max
-interpolation \cite{fesu02} have been proposed.
-While these approaches lead to better accuracy for the Gaussian or B-Spline
-windows, improvements for the Kaiser-Bessel window are marginal.
-Recently, the time consuming multiplication with the matrix $\mathbf{B}$ has
-been accelerated by using commodity graphics hardware \cite{SoScNoHa08}.
-
-The following two approaches have also been considered for the
-univariate case \hbox{$d=1$:}
-The authors of \cite{AnDa96} use for each node $x_j$ an $m$th order Taylor
-expansion of the trigonometric polynomial \eqref{trigPoly1d} around the nearest
-neighboring point on an oversampled equispaced lattice $I_n/n$. Here again we have
-$n=\sigma N,\, \sigma\gg 1$.
-This algorithm utilizes $m$ FFTs of size $n$ (compared to only one in our approach)
-and uses a fair amount of extra memory; see also \cite{KuPo06,Ku08GAMM}.
-Another approach is considered in \cite{DuRo95}. It is based on a Lagrange
-interpolation technique.
-After computing an FFT of the vector $\mathbf{\hat{f}}\in\C^N$ in \eqref{eq:nfft}
-an exact polynomial interpolation scheme is used to obtain the values of the
-trigonometric polynomial $f$ at the nonequispaced nodes $x_j$.
-This is the most time consuming part of this method. In an approximate way,
-it can however be realized with the help of the fast multipole method.
-This approach is appealing since it allows also for computing an
-inverse transform.
-Nevertheless, numerical experiments in \cite{DuRo95} indicate that this
-approach is far more time consuming than Algorithm \ref{algo:nfft}. Also, the
-inversion can only be computed in a stable way for almost equispaced nodes
-\cite{DuRo95}.
-
-For a comparison of different approaches to nonequispaced Fourier transforms, we also
-refer to \cite{ware98,st01,fesu02,KuPo06}.
-
-\begin{acks}
-We thank G.~Steidl for numerous fruitful and enlightning discussions.
-Contributions to the source code made by M. B\"ohme, M. Fenn,
-T. Knopp, and S. Klatt are gratefully acknowledged. For details, see the
-\verb"AUTHORS" file in the package directory. We also thank the anonymous
-referees and the editor for man helpful comments and valuable suggestions.
-\end{acks}
-
-\bibliographystyle{acmtrans}
-%\bibliographystyle{abbrv}
-\bibliography{../references/references}
-\begin{received}
-Received 09/2007; revised 02/2008; accepted Month Year
-\end{received}
-\end{document}
diff --git a/doc/tutorial/struct.tex b/doc/tutorial/struct.tex
deleted file mode 100755
index 53e7a69..0000000
--- a/doc/tutorial/struct.tex
+++ /dev/null
@@ -1,59 +0,0 @@
-% Bild Struktogramm
-\unitlength0.8cm
-
-\newsavebox{\bedzweig}
-\savebox{\bedzweig}(0,0){
-%\thicklines
-\put(0,0.5){\line(-2,-1){1.0}}
-\put(0,0.5){\line(2,-1){1.0}}
-\put(0,-0.5){\line(-2,1){1.0}}
-\put(0,-0.5){\line(2,1){1.0}}
-\put(0,0.5){\makebox(0,0)[b]
- {\put(0,0){\line(0,1){0.5}}}}
-\put(1.0,0){\line(1,0){1.0}}
-\put(-1.0,0){\line(-1,0){1.0}}
-\put(-1.2,0,1) {\makebox(0,0)[br]{no}}
-\put(1.2,0,1) {\makebox(0,0)[bl]{yes}} }
-
-
-
-\begin{picture}(10,13)
-% setze 1 Box
-
-% setze Linien
-%\multiput(1,0)(1,0){15}{\line(0,1){1}}
-% schreibe
-%\put(0,0){\framebox(16,1)[c]}
-
-\multiput(0,0)(0,2){2}{\framebox(10,1)[c]}
-
-\multiput(0,6)(0,2){4}{\framebox(10,1)[c]}
-
-
-\put(0.2,12.2){\makebox[10cm][l]{Initialise the Fourier transform.}}
-\put(0.2,10.2){\makebox[10cm][l]{Initialise the corresponding inverse.}}
-\put(0.2,8.2){\makebox[10cm][l]{Compute residuals.}}
-\put(0.2,6.2){\makebox[10cm][l]{Compute one iteration.}}
-\put(0.2,2.2){\makebox[10cm][l]{Finalise the inverse transform.}}
-\put(0.2,0.2){\makebox[10cm][l]{Finalise the Fourier transform.}}
-
-\multiput(5,2)(0,2){1}{\vector(0,-1){1}}
-\multiput(5,6)(0,2){4}{\vector(0,-1){1}}
-
-\put(5,4.5){\usebox{\bedzweig}\makebox(0,-0.1){Stop?}}
-
-\put(7,4.5){\vector(0,-1){1.5}}
-\put(3,4.5){\line(-1,0){3.5}}
-\put(-0.5,4.5){\line(0,1){3}}
-\put(-0.5,7.5){\vector(1,0){5.5}}
-
-%\put(11.4,1){\line(0,1){0.4}}
-
-
-\end{picture}
-
-
-%%% Local Variables:
-%%% mode: latex
-%%% TeX-master: "main"
-%%% End:
diff --git a/doc/tutorial/summary.tex b/doc/tutorial/summary.tex
deleted file mode 100644
index 86965c4..0000000
--- a/doc/tutorial/summary.tex
+++ /dev/null
@@ -1,227 +0,0 @@
-%==============================================================================
-\documentclass[11pt,a4paper,twoside]{scrartcl}
-%==============================================================================
-\usepackage{a4wide}
-\usepackage{amsfonts}
-\usepackage{amsmath}
-\usepackage{theorem}
-%\usepackage{showkeys}
-%\usepackage{psfig}
-%\usepackage{lscape}
-\usepackage{color}
-%\usepackage{graphics}
-\usepackage{graphicx}
-\usepackage{subfigure}
-\usepackage[boxed,Algorithm]{algorithm}
-\usepackage{algorithmic}
-\usepackage{psfrag}
-
-\renewcommand{\topfraction}{1}
-\renewcommand{\textfraction}{0}
-\setcounter{totalnumber}{4}
-
-\renewcommand{\topfraction}{1}
-\renewcommand{\textfraction}{0}
-\setcounter{totalnumber}{4}
-\newenvironment{tablehere}
- {\def\@captype{table}}
- {}
-
-\newcommand{\N}{\ensuremath{\mathbb{N}}}
-\newcommand{\T}{\ensuremath{\mathbb{T}}}
-\renewcommand{\S}{\ensuremath{\mathbb{S}}}
-\newcommand{\NZ}{\ensuremath{\mathbb{N}_{0}}}
-\newcommand{\Z}{\ensuremath{\mathbb{Z}}}
-\newcommand{\R}{\ensuremath{\mathbb{R}}}
-\newcommand{\Rp}{\ensuremath{\mathbb{R}^{+}}}
-\newcommand{\Rn}{\ensuremath{\mathbb{R}^n}}
-\newcommand{\Rnn}{\ensuremath{\mathbb{R}^{n \times n}}}
-\newcommand{\C}{\ensuremath{\mathbb{C}}}
-\newcommand{\Pol}{\ensuremath{\Pi}}
-\newcommand{\nfft}{\textsf{NFFT}}
-\newcommand{\nfftversion}{3.0}
-
-\def\cO{{\cal O}}
-
-\def\veps{\varepsilon}
-
-\def\tT{{\mbox{\tiny{T}}}}
-\def\ti{\mbox{\scriptsize{i}}}
-\newcommand{\e}{{\,\rm {e}}}
-\newcommand{\eim}[1]{{\rm e}^{-2\pi{\ti} #1}}
-\newcommand{\eip}[1]{{\rm e}^{ 2\pi{\ti} #1}}
-\newcommand{\zb}[1]{\ensuremath{\boldsymbol{#1}}}
-\newcommand{\ds}{\displaystyle}
-\newcommand{\sinc}{{\rm sinc}}
-\newcommand{\dist}{{\rm dist}}
-\newcommand{\adj}{{\vdash \hspace*{-1.72mm} \dashv}}
-
-\newcommand{\diag}{{\, \rm diag}}
-\renewcommand{\d}{\, \mbox{d}}
-\renewcommand{\Box}{\hspace*{0ex} \hfill \rule{1.5ex}{1.5ex} \\}
-\newcommand{\bend}{\hspace*{0ex} \hfill \hbox{\vrule height
- 1.5ex\vbox{\hrule width 1.4ex \vskip 1.4ex\hrule width 1.4ex}\vrule
- height 1.5ex}}
-
-\newtheorem{theorem}{Theorem}[section]
-\newtheorem{lemma}[theorem]{Lemma}
-\newtheorem{remark}[theorem]{Remark}
-%\newtheorem{algorithm}[theorem]{Algorithm}
-\newtheorem{example}[theorem]{Example}
-\newtheorem{corollary}[theorem]{Corollary}
-
-\newenvironment{Theorem}{\begin{theorem}\sl}{\end{theorem}}
-\newenvironment{Lemma}{\begin{lemma}\sl}{\end{lemma}}
-\newenvironment{Remark}{\begin{remark}\rm}{\hfill \bend \end{remark}}
-%\newenvironment{Algorithm}{\begin{algorithm}\sl}{\hfill \end{algorithm}}
-\newenvironment{Example}{\begin{example}\rm}{\hfill \bend \end{example}}
-\newenvironment{Corollary}{\begin{corollary}\rm}{\hfill \bend
- \end{corollary}}
-\def\invisible#1{\textcolor{white}{#1}}
-
-\numberwithin{equation}{section}
-\numberwithin{table}{section}
-\numberwithin{figure}{section}
-
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-% TITLE PAGE
-%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-\begin{document}
-%\title{NFFT\nfftversion\ - Summary}
-%\author{Jens Keiner
-%\thanks{keiner at math.uni-luebeck.de,University of L\"ubeck,
-%Institute of Mathematics, 23560 L\"ubeck}
-%\and
-% Stefan Kunis
-%\thanks{kunis at mathematik.tu-chemnitz.de, Chemnitz University of Technology,
-%Department of Mathematics, 09107 Chemnitz, Germany}
-%\and
-% Daniel Potts
-%\thanks{potts at mathematik.tu-chemnitz.de, Chemnitz University of Technology,
-%Department of Mathematics, 09107 Chemnitz, Germany}
-%}
-%\date{}
-%\maketitle
-%\begin{center}
-% \vspace{-8ex}
-% {\large {\tt http://www.tu-chemnitz.de/$\sim$potts/nfft}}
-% \vspace{8ex}
-%\end{center}
-
-\title{\vspace{-8ex}\Large NFFT\nfftversion\ - Summary}
-\date{}
-\author{\large Jens Keiner \and \large Stefan Kunis \and \large Daniel Potts}
-\maketitle
-\vspace{-8ex}
-
-Fast Fourier transforms (FFTs) belong to the ``10 algorithms with the greatest
-influence on the development and practice of science and engineering in the
-20th century'', cf.~\cite{DoSu00}.
-The classic algorithm in \cite{CoTu65} computes the discrete
-Fourier transform
-\begin{equation*}
- f_j= \sum_{k=-\frac{N}{2}}^{\frac{N}{2}-1} \hat{f}_{k} \eim{\frac{kj}{N}}
-\end{equation*}
-for $j=-\frac{N}{2},\hdots,\frac{N}{2}-1$ and given complex coefficients
-$\hat{f}_{k}\in\C$.
-Using a divide and conquer approach, the number of floating point operations
-is reduced from $\cO(N^2)$ for a straightforward computation to only
-$\cO(N\log N)$.
-In conjunction with publicly available efficient implementations
-\cite{FFTW05}, the fast Fourier transform has become of great importance in
-scientific computing.
-Its applications include for example digital signal and image processing as
-well as the numerical solution of differential and integral equations.
-The author of \cite[p. ix]{loan} summarises ``life as we know it
-would be very different without the FFT''.
-
-However, two shortcomings of traditional schemes are the need for equispaced
-sampling and the restriction to the system of complex exponential functions.
-During the last two decades, both problems have attracted much attention.
-We refer to \cite{maro96} for an introduction to discrete Fourier analysis
-with orthogonal polynomials, spherical harmonics, and more general functions.
-The second branch of generalisations dispenses with the need for equispaced
-sampling and establishes so-called nonequispaced FFTs, see
-e.g. \cite{postta01}.
-The common concept in most generalised fast Fourier transforms - and other
-algorithms for the computation with dense matrices - is the use of
-approximation schemes.
-The functions involved, e.g. the complex exponentials, are replaced by
-approximations with prescribed accuracy that allow for the design of a fast
-algorithm.
-We trade exactness for efficiency; instead of precise computations, the
-proposed methods guarantee a given target accuracy.
-
-The principal contribution of the present software package is a publicly
-available implementation of various fast algorithms for discrete Fourier
-transforms.
-For notational convenience let the multi-index set
-\begin{equation*}
- I_{\zb N} = \left\{ \zb k=\left(k_t\right)_{t=0,\hdots,d-1} \in \Z^d: -
- \frac{N_t}{2} \le k_t < \frac{N_t}{2} ,\;t=0,\hdots,d-1\right\},
-\end{equation*}
-with $\zb N=\left(N_t\right)_{t=0,\hdots,d-1}\in 2\N^d$ be given.
-For given Fourier coefficients $\hat f_{\zb k} \in \C$, $\zb k \in I_{\zb N}$,
-and arbitrary nodes $\zb x_j \in [-1/2,1/2)^d$, $j=0,\hdots,M-1$, we consider
-the computation of
-\begin{equation*}
- f\left(\zb x_j\right) = \sum_{\zb k\in I_{\zb N}} \hat{f}_{\zb k} \eim{\zb
- k\zb x_j},\quad j=0,\hdots,M-1.
-\end{equation*}
-Obviously, the straightforward algorithm for this task takes $\cO(M|I_{\zb
- N}|)$ floating point operations.
-In contrast, the {\em nonequispaced fast Fourier transform} computes the above
-sums up to a user-specified accuracy in $\cO(|I_{\zb N}|\log|I_{\zb N}|+M)$
-operations.
-The implemented routines are state-of-the-art with respect to recently
-suggested improvements, see e.g. \cite{GrLe04}, and use the highly efficient
-FFTW library \cite{FFTW05}.
-
-The generalisations of the NFFT include fast algorithms for several discrete
-Fourier transforms.
-Due to its relevance in tomography, geophysics, and meteorology, we would like
-to highlight the nonequispaced fast spherical Fourier transform (NFSFT).
-In analogy to the complex exponentials $\mathrm{e}^{\mathrm{i} k x}$ on the
-torus, the spherical harmonics $Y_k^n$ form the orthogonal Fourier basis with
-respect to the usual inner product on the sphere.
-For given Fourier coefficients $\hat f_k^n \in \C$ and arbitrary nodes
-with longitude $\vartheta_j\in[0,\pi]$ and latitude $\varphi_j\in [0,2\pi)$,
-we are interested in the evaluation of
-\begin{equation*}
- f\left(\vartheta_j,\varphi_j\right) =
- \sum_{k=0}^N \sum_{n=-k}^k \hat f_k^n
- Y_{k}^n\left(\vartheta_j,\varphi_j\right),\quad j=0,\hdots,M-1.
-\end{equation*}
-Here, our implemented scheme reduces the computational costs from $\cO(MN^2)$
-operations to only $\cO(N^2\log^2 N+M)$.
-Further fast transforms include the Fourier transforms with nonequispaced data
-in time and frequency domain, real trigonometric transforms, and sparse FFTs.
-All these Fourier transforms come along with their adjoint algorithms, used in
-quadrature rules for example, and inverse transforms as used for scattered
-data approximation.
-
-The NFFT and its generalisations have found a lot of applications, where the
-current release of the library includes various fast summation methods,
-reconstruction algorithms in medical imaging, and the polar FFT as part of our
-ridgelet transform.
-We would like to highlight the fast summation method, because this problem
-arises in integral equations or potential theory.
-In particular, our method proves comparable with the celebrated fast multipole
-method \cite{greenrokh87}.
-
-The documentation of our library is split into two parts:
-The tutorial \cite{nfft3_tutorial} surveys the fast Fourier transform at
-nonequispaced nodes, its generalisations, and inversion.
-Moreover it provides an overview over the C library which allows users to
-compute their first transforms by using simple interfaces to the computational
-kernels.
-The detailed documentation (part of the source tree) of all user functions,
-options and parameters is done with Doxygen \cite{doxygen} and allows for
-further optimisation with respect to speed, accuracy, and memory usage.
-
-\begin{footnotesize}
-\bibliographystyle{abbrv}
-\bibliography{../references/references}
-\end{footnotesize}
-
-\end{document}
\ No newline at end of file
diff --git a/doc/tutorial/tree.tex b/doc/tutorial/tree.tex
deleted file mode 100644
index cba8e53..0000000
--- a/doc/tutorial/tree.tex
+++ /dev/null
@@ -1,225 +0,0 @@
-% Tree -- a macro to make aligned (horizontal) trees in TeX
-%
-% Input is of the form
-% \tree
-% item
-% \subtree
-% \leaf{item}
-% .
-% .
-% .
-% \endsubtree
-% \subtree
-% .
-% .
-% .
-% \endsubtree
-% \endsubtree
-% \endtree
-%
-% Nesting is to any level. \leaf is defined as a subtree of one item:
-% \def\leaf#1{\subtree#1\endsubtree}.
-%
-% A structure:
-% \subtree
-% item_part1
-% item_part2
-% .
-% .
-% .
-%
-% will print item_part2 directly below item_part1 as a single item
-% as if they were in a \box.
-%
-% The macro is a 3-pass macro. On the first pass it sets up a data
-% structure from the \subtree ... \endsubtree definitions. On the second pass
-% it recursively calculates the width of each level of the tree. On the third
-% pass it sets up the boxes, glue and rules.
-%
-% By David Eppstein, TUGboat, vol. 6 (1985), no. 1, pp. 31--35.
-% Transcribed by Margaret Kromer (peg), Feb., 1986.
-%
-% Pass 1
-% At the end of pass 1, the tree is coded as a nested collection of \hboxes
-% and \vboxes.
-\newbox\treebox\newcount\treeboxcnt
-\def\tree{\message{Begin tree}\treeboxcnt=1\global\setbox\treebox=\boxtree}
-\def\subtree{\ettext \advance\treeboxcnt by 1 \boxtree}
-\def\leaf#1{\subtree#1\endsubtree}
-\def\endsubtree{\ettext \egroup \advance\treeboxcnt-1{}%
- \ifnum\treeboxcnt=-1 \treeerrora\fi}
-\def\endtree{\endsubtree \ifnum\treeboxcnt>0 \treeerrorb\fi%
- \settreesizes \typesettree \message{-- end tree}}
-% Error messages for unbalanced tree
-\def\treeerrora{\errhelp=\treeerrorahelp%
- \errmessage{Unbalanced tree -- too many endsubtrees}}
-\newhelp\treeerrorahelp{There are more subtrees closed than opened}
-\def\treeerrorb{\errhelp=\treeerrorbhelp%
- \errmessage{Unbalanced tree -- not enough endsubtrees}}
-\newhelp\treeerrorbhelp{Not all the subtrees of the tree are closed.
-If you continue, you'll get some mysterious secondary errors.}
-% Set up \vbox containing root of tree
-\newif\iftreetext\treetextfalse % Whether still aligning text
-\def\boxtree{\hbox\bgroup % Start outer box of tree or subtree
- \baselineskip 2.5ex % Narrow line spacing slightly
- \tabskip 0pt % No spurious glue in alignment
- \vbox\bgroup % Start inner text \vbox
- \treetexttrue % Remember for \ettext
- \let\par\crcr \obeylines % New line breaks without explicit \cr
- \halign\bgroup##\hfil\cr} % Start alignment with simple template
-\def\ettext{\iftreetext % Are we still in inner text \vbox?
- \crcr\egroup \egroup \fi} % Yes, end alignment and box
-% Pass 2
-% Recursively calculate widths of tree with \setsizes; keep results in
-% \treesizes; \treewidth contains total width calculated so far. \treeworkbox
-% is workspace containing subtree being sized.
-\newbox\treeworkbox
-\def\cons#1#2{\edef#2{\xmark #1#2}} % Add something to start of list
-\def\car#1{\expandafter\docar#1\docar} % Take first element of list
-\def\docar\xmark#1\xmark#2\docar{#1} % ..by ignoring rest in expansion
-\def\cdr#1{\expandafter\docdr#1\docdr#1}% Similarly, drop first element
-\def\docdr\xmark#1\xmark#2\docdr#3{\def#3{\xmark #2}}
-\def\xmark{\noexpand\xmark} % List separator expands to self
-\def\nil{\xmark} % Empty list is just separator
-\def\settreesizes{\setbox\treeworkbox=\copy\treebox%
- \global\let\treesizes\nil \setsizes}
-\newdimen\treewidth % Width of this part of the tree
-\def\setsizes{\setbox\treeworkbox=\hbox\bgroup% Get a horiz list as a workspace
- \unhbox\treeworkbox\unskip % Take tree, unpack it into horiz list
- \inittreewidth % Get old width at this level
- \sizesubtrees % Recurse through all subtrees
- \sizelevel % Now set width from remaining \vbox
- \egroup} % All done, finish our \hbox
-\def\inittreewidth{\ifx\treesizes\nil % If this is the first at this level
- \treewidth=0pt % ..then we have no previous max width
- \else \treewidth=\car\treesizes % Otherwise take old max level width
- \global\cdr\treesizes % ..and advance level width storage
- \fi} % ..in preparation for next level.
-\def\sizesubtrees{\loop % For each box in horiz list (subtree)
- \setbox\treeworkbox=\lastbox \unskip % ..pull it off list and flush glue
- \ifhbox\treeworkbox \setsizes % If hbox, it's a subtree - recurse
- \repeat} % ..and loop; end loop on tree text
-\def\sizelevel{%
- \ifdim\treewidth<\wd\treeworkbox % If greater than previous maximum
- \treewidth=\wd\treeworkbox \fi % Then set max to new high
- \global\cons{\the\treewidth}\treesizes}% In either case, put back on list
-% Pass 3
-% Recursively typeset tree with \maketree by adding an \hbox containing
-% a subtree (in \treebox) to the horizontal list.
-\newdimen\treeheight % Height of this part of the tree
-\newif\ifleaf % Tree has no subtrees (is a leaf)
-\newif\ifbotsub % Bottom subtree of parent
-\newif\iftopsub % Top subtree of parent
-\def\typesettree{\medskip\maketree\medskip} % Make whole tree
-\def\maketree{\hbox{\treewidth=\car\treesizes % Get width at this level
- \cdr\treesizes % Set up width list for recursion
- \makesubtreebox\unskip % Set \treebox to text, make subtrees
- \ifleaf \makeleaf % No subtrees, add glue
- \else \makeparent \fi}} % Have subtrees, stick them at right
-{\catcode`@=11 % Be able to use \voidb at x
-\gdef\makesubtreebox{\unhbox\treebox % Open up tree or subtree
- \unskip\global\setbox\treebox\lastbox % Pick up very last box
- \ifvbox\treebox % If we're already at the \vbox
- \global\leaftrue \let\next\relax % ..then this is a leaf
- \else \botsubtrue % Otherwise, we have subtrees
- \setbox\treeworkbox\box\voidb at x % Init stack of processed subs
- \botsubtrue \let\next\makesubtree % ..and call \maketree on them
- \fi \next}} % Finish up for whichever it was
-\def\makesubtree{\setbox1\maketree % Call \maketree on this subtree
- \unskip\global\setbox\treebox\lastbox % Pick up box before it
- \treeheight=\ht1 % Get height of subtree we made
- \advance\treeheight 2ex % Add some room around the edges
- \ifhbox\treebox \topsubfalse % If picked up box is a \vbox,
- \else \topsubtrue \fi % ..this is the top, otherwise not
- \addsubtreebox % Stack subtree with the rest
- \iftopsub \global\leaffalse % If top, remember not a leaf
- \let\next\relax \else % ..(after recursion), set return
- \botsubfalse \let\next\makesubtree % Otherwise, we have more subtrees
- \fi \next} % Do tail recursion or return
-\def\addsubtreebox{\setbox\treeworkbox=\vbox{\subtreebox\unvbox\treeworkbox}}
-\def\subtreebox{\hbox\bgroup % Start \hbox of tree and lines
- \vbox to \treeheight\bgroup % Start \vbox for vertical rules
- \ifbotsub \iftopsub \vfil % If both bottom and top subtree
- \hrule width 0.4pt % ..vertical rule is just a dot
- \else \treehalfrule \fi \vfil % Bottom gets half-height rule
- \else \iftopsub \vfil \treehalfrule % Top gets half-height the other way
- \else \hrule width 0.4pt height \treeheight \fi\fi % Middle, full height
- \egroup % Finish vertical rule \vbox
- \treectrbox{\hrule width 1em}\hskip 0.2em\treectrbox{\box1}\egroup}
-\def\treectrbox#1{\vbox to \treeheight{\vfil #1\vfil}}
-\def\treehalfrule{\dimen\treeworkbox=\treeheight % Get total height
- \divide\dimen\treeworkbox 2%
- \advance\dimen\treeworkbox 0.2pt % Divide by two, add half horiz height
- \hrule width 0.4pt height \dimen\treeworkbox}% Make a vertical rule that high
-\def\makeleaf{\box\treebox} % Add leaf box to horiz list
-\def\makeparent{\ifdim\ht\treebox>%
- \ht\treeworkbox % If text is higher than subtrees
- \treeheight=\ht\treebox % ..use that height
- \else \treeheight=\ht\treeworkbox \fi % Otherwise use height of subtrees
- \advance\treewidth-\wd\treebox % Take remainder of level width
- \advance\treewidth 1em % ..after accounting for text and glue
- \treectrbox{\box\treebox}\hskip 0.2em % Add text, space before connection
-\treectrbox{\hrule width \treewidth}%
- \treectrbox{\box\treeworkbox}} % Add \hrule, subs
-% No idea what \spouse is supposed to do... wasn't included
-\def\spouse{\bf}
-
-{
- \small %\normalsize
- \tree %nfft
- \subtree doc (API docs)
- \endsubtree
- \subtree include (C headers)
- \endsubtree
- \subtree util (utility functions)
- \endsubtree
- \subtree kernel
- \subtree fpt (fast polynomial transform)
- \endsubtree
- \subtree mri (transform in magnetic resonance imaging)
- \endsubtree
- \subtree nfct (nonequispaced fast cosine transform)
- \endsubtree
- \subtree nfft (nonequispaced fast Fourier transform)
- \endsubtree
- \subtree nfsft (nonequispaced fast spherical Fourier transform)
- \endsubtree
- \subtree nfst (nonequispaced fast sine transform)
- \endsubtree
- \subtree nnfft (nonequispaced in space and frequency FFT)
- \endsubtree
- \subtree nsfft (nonequispaced sparse fast Fourier transform)
- \endsubtree
- \subtree solver (inverse transforms)
- \endsubtree
- \endsubtree
-
- \subtree examples
- {(for each in kernel)}
- \endsubtree
-
- \subtree applications
- \subtree fastgauss (fast Gauss transform)
- \endsubtree
- \subtree fastsum (summation schemes)
- \endsubtree
- \subtree fastsumS2 (summation on the sphere)
- \endsubtree
- \subtree mri (reconstruction in mri)
- \endsubtree
- \subtree nfft\_flags (time and memory requirements)
- \endsubtree
- \subtree polarFFT (fast polar Fourier transform)
- \endsubtree
- \subtree radon (radon transform)
- \endsubtree
- \subtree stability (stability inverse nfft)
- \endsubtree
- \endsubtree
- \endtree
-}
-
-%%% Local Variables:
-%%% mode: latex
-%%% TeX-master: "thesis"
-%%% End:
diff --git a/kernel/nfsoft/nfsoft.c b/kernel/nfsoft/nfsoft.c
old mode 100755
new mode 100644
diff --git a/kernel/nfsoft/wigner.c b/kernel/nfsoft/wigner.c
old mode 100755
new mode 100644
diff --git a/kernel/nfsoft/wigner.h b/kernel/nfsoft/wigner.h
old mode 100755
new mode 100644
diff --git a/matlab/nfsft/cc.m b/matlab/nfsft/cc.m
old mode 100755
new mode 100644
diff --git a/support/rem.sed b/support/rem.sed
old mode 100755
new mode 100644
diff --git a/support/toc.sed b/support/toc.sed
old mode 100755
new mode 100644
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/debian-science/packages/nfft.git
More information about the debian-science-commits
mailing list